f0VMRgEBAQAAAAAAAAAAAAEACAABAAAAAAAAAAAAAABwCgAABxAAUDQAAAAAACgABQACAHYxOwpwYWNrYWdlIGF0b21pYzsKcGtncGF0aCBzeW5jL2F0b21pYzsKcHJpb3JpdHkgMTsKaW1wb3J0IHVuc2FmZSB1bnNhZmUgInVuc2FmZSI7CmZ1bmMgQWRkSW50MzIgKGFkZHIgPHR5cGUgMSAqPHR5cGUgLTM+PiwgZGVsdGEgPHR5cGUgLTM+KSAobmV3IDx0eXBlIC0zPik7CmZ1bmMgQWRkSW50NjQgKGFkZHIgPHR5cGUgMiAqPHR5cGUgLTQ+PiwgZGVsdGEgPHR5cGUgLTQ+KSAobmV3IDx0eXBlIC00Pik7CmZ1bmMgQWRkVWludDMyIChhZGRyIDx0eXBlIDMgKjx0eXBlIC03Pj4sIGRlbHRhIDx0eXBlIC03PikgKG5ldyA8dHlwZSAtNz4pOwpmdW5jIEFkZFVpbnQ2NCAoYWRkciA8dHlwZSA0ICo8dHlwZSAtOD4+LCBkZWx0YSA8dHlwZSAtOD4pIChuZXcgPHR5cGUgLTg+KTsKZnVuYyBBZGRVaW50cHRyIChhZGRyIDx0eXBlIDUgKjx0eXBlIC0xMz4+LCBkZWx0YSA8dHlwZSAtMTM+KSAobmV3IDx0eXBlIC0xMz4pOwpmdW5jIENvbXBhcmVBbmRTd2FwSW50MzIgKGFkZHIgPHR5cGUgNiAqPHR5cGUgLTM+Piwgb2xkIDx0eXBlIC0zPiwgbmV3IDx0eXBlIC0zPikgKHN3YXBwZWQgPHR5cGUgLTE1Pik7CmZ1bmMgQ29tcGFyZUFuZFN3YXBJbnQ2NCAoYWRkciA8dHlwZSA3ICo8dHlwZSAtND4+LCBvbGQgPHR5cGUgLTQ+LCBuZXcgPHR5cGUgLTQ+KSAoc3dhcHBlZCA8dHlwZSAtMTU+KTsKZnVuYyBDb21wYXJlQW5kU3dhcFBvaW50ZXIgKGFkZHIgPHR5cGUgOCAqPHR5cGUgOSAidW5zYWZlLlBvaW50ZXIiIDx0eXBlIDEwICphbnk+Pj4sIG9sZCA8dHlwZSA5PiwgbmV3IDx0eXBlIDk+KSAoc3dhcHBlZCA8dHlwZSAtMTU+KTsKZnVuYyBDb21wYXJlQW5kU3dhcFVpbnQzMiAoYWRkciA8dHlwZSAxMSAqPHR5cGUgLTc+Piwgb2xkIDx0eXBlIC03PiwgbmV3IDx0eXBlIC03PikgKHN3YXBwZWQgPHR5cGUgLTE1Pik7CmZ1bmMgQ29tcGFyZUFuZFN3YXBVaW50NjQgKGFkZHIgPHR5cGUgMTIgKjx0eXBlIC04Pj4sIG9sZCA8dHlwZSAtOD4sIG5ldyA8dHlwZSAtOD4pIChzd2FwcGVkIDx0eXBlIC0xNT4pOwpmdW5jIENvbXBhcmVBbmRTd2FwVWludHB0ciAoYWRkciA8dHlwZSAxMyAqPHR5cGUgLTEzPj4sIG9sZCA8dHlwZSAtMTM+LCBuZXcgPHR5cGUgLTEzPikgKHN3YXBwZWQgPHR5cGUgLTE1Pik7CmZ1bmMgTG9hZEludDMyIChhZGRyIDx0eXBlIDE0ICo8dHlwZSAtMz4+KSAodmFsIDx0eXBlIC0zPik7CmZ1bmMgTG9hZEludDY0IChhZGRyIDx0eXBlIDE1ICo8dHlwZSAtND4+KSAodmFsIDx0eXBlIC00Pik7CmZ1bmMgTG9hZFBvaW50ZXIgKGFkZHIgPHR5cGUgOD4pICh2YWwgPHR5cGUgOT4pOwpmdW5jIExvYWRVaW50MzIgKGFkZHIgPHR5cGUgMTYgKjx0eXBlIC03Pj4pICh2YWwgPHR5cGUgLTc+KTsKZnVuYyBMb2FkVWludDY0IChhZGRyIDx0eXBlIDE3ICo8dHlwZSAtOD4+KSAodmFsIDx0eXBlIC04Pik7CmZ1bmMgTG9hZFVpbnRwdHIgKGFkZHIgPHR5cGUgMTggKjx0eXBlIC0xMz4+KSAodmFsIDx0eXBlIC0xMz4pOwpmdW5jIFN0b3JlSW50MzIgKGFkZHIgPHR5cGUgMTkgKjx0eXBlIC0zPj4sIHZhbCA8dHlwZSAtMz4pOwpmdW5jIFN0b3JlSW50NjQgKGFkZHIgPHR5cGUgMjAgKjx0eXBlIC00Pj4sIHZhbCA8dHlwZSAtND4pOwpmdW5jIFN0b3JlUG9pbnRlciAoYWRkciA8dHlwZSA4PiwgdmFsIDx0eXBlIDk+KTsKZnVuYyBTdG9yZVVpbnQzMiAoYWRkciA8dHlwZSAyMSAqPHR5cGUgLTc+PiwgdmFsIDx0eXBlIC03Pik7CmZ1bmMgU3RvcmVVaW50NjQgKGFkZHIgPHR5cGUgMjIgKjx0eXBlIC04Pj4sIHZhbCA8dHlwZSAtOD4pOwpmdW5jIFN0b3JlVWludHB0ciAoYWRkciA8dHlwZSAyMyAqPHR5cGUgLTEzPj4sIHZhbCA8dHlwZSAtMTM+KTsKZnVuYyBTd2FwSW50MzIgKGFkZHIgPHR5cGUgMjQgKjx0eXBlIC0zPj4sIG5ldyA8dHlwZSAtMz4pIChvbGQgPHR5cGUgLTM+KTsKZnVuYyBTd2FwSW50NjQgKGFkZHIgPHR5cGUgMjUgKjx0eXBlIC00Pj4sIG5ldyA8dHlwZSAtND4pIChvbGQgPHR5cGUgLTQ+KTsKZnVuYyBTd2FwUG9pbnRlciAoYWRkciA8dHlwZSA4PiwgbmV3IDx0eXBlIDk+KSAob2xkIDx0eXBlIDk+KTsKZnVuYyBTd2FwVWludDMyIChhZGRyIDx0eXBlIDI2ICo8dHlwZSAtNz4+LCBuZXcgPHR5cGUgLTc+KSAob2xkIDx0eXBlIC03Pik7CmZ1bmMgU3dhcFVpbnQ2NCAoYWRkciA8dHlwZSAyNyAqPHR5cGUgLTg+PiwgbmV3IDx0eXBlIC04PikgKG9sZCA8dHlwZSAtOD4pOwpmdW5jIFN3YXBVaW50cHRyIChhZGRyIDx0eXBlIDI4ICo8dHlwZSAtMTM+PiwgbmV3IDx0eXBlIC0xMz4pIChvbGQgPHR5cGUgLTEzPik7CnR5cGUgPHR5cGUgMjkgIlZhbHVlIiA8dHlwZSAzMCBzdHJ1Y3QgeyAuc3luYy9hdG9taWMudiA8dHlwZSAzMSBpbnRlcmZhY2UgeyB9PjsgfT4KIGZ1bmMgKHYgPHR5cGUgMzIgKjx0eXBlIDI5Pj4pIExvYWQgKCkgKHggPHR5cGUgMzMgaW50ZXJmYWNlIHsgfT4pOwogZnVuYyAodiA8dHlwZSAzMj4pIFN0b3JlICh4IDx0eXBlIDM0IGludGVyZmFjZSB7IH0+KTsKPjsKY2hlY2tzdW0gM0FBRDE2NDA5Q0FEMkI0MUU1MzYwRjFDNzk5RTQ1NTg0MEU4NjFGNDsKAC5zeW10YWIALnN0cnRhYgAuc2hzdHJ0YWIALmdvX2V4cG9ydAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGwAAAAEAAAAAAAAAAAAAADQAAADyCQAAAAAAAAAAAAABAAAAAAAAABEAAAADAAAAAAAAAAAAAAAmCgAAJgAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAgAAAAAAAAAAAAAATAoAACAAAAAEAAAAAgAAAAQAAAAQAAAACQAAAAMAAAAAAAAAAAAAAGwKAAABAAAAAAAAAAAAAAABAAAAAAAAAA==