U:TwitterCldr::Utils::Trieo:#TwitterCldr::Utils::Trie::Node: @value0:@children{(io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{"io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{(io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{"io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{#io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{#io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{!io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{#io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{#io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{"io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{!io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{!io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{!io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{ io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{"io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{&io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{'io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{"io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{ io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{#io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{$io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{"io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{"io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{$io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{ io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{&io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{!io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{!io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{!io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{%io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{ io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{io;;0;{ io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;i;{ io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;i;{io;;i;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{io;;0;{io;;0;{io;;0;{io;;i;{