@delacour/warden-e2e 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{chunk-empqr9n0.mjs → chunk-y0y7frfz.mjs} +2010 -169
- package/index.mjs +214 -13
- package/package.json +2 -2
- package/preload.mjs +3007 -800
- package/types/core/src/a11y/a11y.config.d.ts +47 -0
- package/types/core/src/affected/affected.schema.d.ts +49 -1
- package/types/core/src/android-keyguard.d.ts +2 -0
- package/types/core/src/batch/preset.schema.d.ts +12 -1
- package/types/core/src/builds/app-option.schema.d.ts +1 -1
- package/types/core/src/builds/config.schema.d.ts +93 -2
- package/types/core/src/builds/define-config.d.ts +55 -0
- package/types/core/src/builds/kinds.d.ts +6 -0
- package/types/core/src/camera-mode.d.ts +17 -0
- package/types/core/src/camera-placeholder.d.ts +9 -0
- package/types/core/src/camera-profile.d.ts +12 -0
- package/types/core/src/claim-errors.d.ts +34 -0
- package/types/core/src/conditions/a11y-keys.d.ts +45 -0
- package/types/core/src/conditions/camera-media.d.ts +30 -0
- package/types/core/src/conditions/conditions.config.d.ts +24 -0
- package/types/core/src/conditions/conditions.types.d.ts +30 -0
- package/types/core/src/conditions/inject-state.d.ts +1 -1
- package/types/core/src/ios-runner/build.d.ts +28 -0
- package/types/core/src/ios-runner/cache.d.ts +44 -0
- package/types/core/src/ios-runner/pack.d.ts +17 -0
- package/types/core/src/ios-runner/signing.d.ts +40 -0
- package/types/core/src/ios-runner/sim-build.d.ts +36 -0
- package/types/core/src/ios-runner/stage.d.ts +26 -0
- package/types/core/src/lease-events.d.ts +126 -0
- package/types/core/src/ownership.d.ts +44 -0
- package/types/core/src/providers/android.d.ts +10 -1
- package/types/core/src/providers/provider.types.d.ts +9 -0
- package/types/core/src/queue.d.ts +43 -0
- package/types/core/src/store.d.ts +61 -5
- package/types/core/src/types.d.ts +10 -0
- package/types/core/src/xcode.d.ts +22 -0
- package/types/e2e/src/a11y/a11y-target.d.ts +23 -0
- package/types/e2e/src/a11y/a11y.types.d.ts +81 -0
- package/types/e2e/src/a11y/announcements.d.ts +24 -0
- package/types/e2e/src/a11y/audit.d.ts +22 -0
- package/types/e2e/src/a11y/native/atf.d.ts +51 -0
- package/types/e2e/src/a11y/native/xcuitest.d.ts +60 -0
- package/types/e2e/src/a11y/order.d.ts +5 -0
- package/types/e2e/src/a11y/rules/duplicate-name.d.ts +6 -0
- package/types/e2e/src/a11y/rules/hidden-focusable.d.ts +3 -0
- package/types/e2e/src/a11y/rules/image-no-name.d.ts +6 -0
- package/types/e2e/src/a11y/rules/label-in-name.d.ts +7 -0
- package/types/e2e/src/a11y/rules/missing-name.d.ts +3 -0
- package/types/e2e/src/a11y/rules/role-in-name.d.ts +3 -0
- package/types/e2e/src/a11y/rules/rule.context.d.ts +22 -0
- package/types/e2e/src/a11y/rules/target-size.d.ts +21 -0
- package/types/e2e/src/a11y/rules/text-clipped.d.ts +9 -0
- package/types/e2e/src/a11y/speech.d.ts +26 -0
- package/types/e2e/src/a11y/talkback-log.d.ts +13 -0
- package/types/e2e/src/app.d.ts +0 -1
- package/types/e2e/src/conditions/condition-events.d.ts +6 -1
- package/types/e2e/src/conditions/device-conditions.d.ts +30 -2
- package/types/e2e/src/device-a11y.d.ts +97 -0
- package/types/e2e/src/device.d.ts +11 -2
- package/types/e2e/src/driver/a11y-events.d.ts +30 -0
- package/types/e2e/src/driver/a11y-read.d.ts +12 -0
- package/types/e2e/src/driver/android/android-animations.d.ts +7 -0
- package/types/e2e/src/driver/android/android-argv.d.ts +2 -0
- package/types/e2e/src/driver/android/android-camera-host.d.ts +23 -0
- package/types/e2e/src/driver/android/android-camera.d.ts +28 -0
- package/types/e2e/src/driver/android/android-driver.d.ts +5 -0
- package/types/e2e/src/driver/android/android-screen-reader.d.ts +23 -0
- package/types/e2e/src/driver/android/android-settings.d.ts +9 -2
- package/types/e2e/src/driver/android/android-spoken.d.ts +18 -0
- package/types/e2e/src/driver/android/android-talkback.d.ts +57 -0
- package/types/e2e/src/driver/android/atf-device.d.ts +23 -0
- package/types/e2e/src/driver/android/atf-dex.generated.d.ts +7 -0
- package/types/e2e/src/driver/android/uiad-dex.generated.d.ts +5 -5
- package/types/e2e/src/driver/android/uiad-ops.d.ts +27 -1
- package/types/e2e/src/driver/android/uiad-protocol.d.ts +8 -0
- package/types/e2e/src/driver/android/uiad-screen-reader.d.ts +33 -0
- package/types/e2e/src/driver/driver.types.d.ts +71 -5
- package/types/e2e/src/driver/element-actions.d.ts +16 -0
- package/types/e2e/src/driver/ios/inject.d.ts +16 -2
- package/types/e2e/src/driver/ios/ios-a11y.d.ts +73 -0
- package/types/e2e/src/driver/ios/ios-audit.d.ts +36 -0
- package/types/e2e/src/driver/ios/ios-driver.d.ts +21 -1
- package/types/e2e/src/driver/ios/ios-network.d.ts +7 -2
- package/types/e2e/src/driver/ios/sim-runner.d.ts +41 -0
- package/types/e2e/src/driver/ios/simd-transport.d.ts +11 -2
- package/types/e2e/src/driver/native-audit.d.ts +26 -0
- package/types/e2e/src/driver/physical-conditions.d.ts +1 -1
- package/types/e2e/src/driver/screen-reader.d.ts +26 -0
- package/types/e2e/src/env.d.ts +16 -1
- package/types/e2e/src/expect/a11y-matchers.d.ts +33 -0
- package/types/e2e/src/expect/expect.d.ts +7 -2
- package/types/e2e/src/expect/matchers.d.ts +14 -0
- package/types/e2e/src/index.d.ts +5 -1
- package/types/e2e/src/runner/callsite.d.ts +3 -1
- package/types/e2e/src/screen/render.d.ts +8 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export declare const UIAD_DEX: {
|
|
2
2
|
readonly protocol: 1;
|
|
3
|
-
readonly version: "0.
|
|
4
|
-
readonly bytes:
|
|
5
|
-
readonly dexSha256: "
|
|
6
|
-
readonly sourceSha256: "
|
|
7
|
-
readonly base64: "ZGV4CjAzOAALAG3vu0DO4qAAXoGM16R6HlujKaD7mhyUeQAAcAAAAHhWNBIAAAAAAAAAAMR4AAA8AgAAcAAAAF0AAABgCQAAeQAAANQKAAA+AAAAgBAAAOkAAABwEgAACAAAALgZAADcXgAAuBoAAM5TAADQUwAA01MAAN9TAADqUwAA9lMAAPpTAAD9UwAAAFQAABBUAAAdVAAAKFQAADlUAABIVAAAV1QAAGFUAABzVAAAglQAAJBUAACiVAAAs1QAAL9UAADLVAAA2lQAAOVUAADzVAAAAFUAAAtVAAATVQAAHlUAADRVAABIVQAAX1UAAGpVAABzVQAAfVUAAItVAAChVQAArVUAAMJVAADPVQAA3lUAAAZWAAAUVgAAH1YAACtWAAA2VgAAQFYAAHFWAAB6VgAAhFYAAI1WAACoVgAAtlYAAMNWAADGVgAAzVYAANFWAADYVgAA4lYAAOpWAADvVgAAElcAADdXAABeVwAAjFcAALVXAAC8VwAAz1cAANJXAADWVwAA2VcAAN1XAADiVwAA9FcAAANYAAAKWAAAFlgAABxYAAAqWAAAOVgAADxYAABQWAAAYFgAAGNYAABoWAAAbFgAAHFYAAB0WAAAeFgAAHxYAACBWAAAhVgAAIpYAACVWAAAmFgAAJxYAACgWAAAq1gAALRYAAC4WAAAvVgAAMVYAADJWAAA0FgAANVYAADeWAAA51gAAPhYAAD8WAAAA1kAAAhZAAANWQAAE1kAABdZAABQWQAAiVkAAKVZAADPWQAA6lkAAANaAAAfWgAAM1oAAEhaAABkWgAAeVoAAI9aAACpWgAAwFoAAN9aAAD3WgAAElsAACtbAABVWwAAg1sAAJ9bAADQWwAABFwAADpcAABeXAAAg1wAAKNcAADGXAAA7FwAAAtdAAAnXQAARl0AAGBdAACBXQAAm10AALddAADOXQAA5V0AAAJeAAAaXgAAMV4AAENeAABYXgAAcl4AAIVeAACZXgAAsF4AAMNeAADYXgAA+l4AAAxfAAAvXwAAQ18AAFlfAABtXwAAiF8AAJxfAACwXwAAx18AAOJfAAADYAAAMmAAAE5gAABqYAAAgWAAAJdgAACpYAAAu2AAAN5gAAADYQAAJmEAAEphAAB0YQAApmEAAM1hAADvYQAABWIAAB9iAAA2YgAAPWIAAEhiAABRYgAAVmIAAGBiAABpYgAAcmIAAINiAACJYgAAk2IAAJpiAADZYgAACmMAABRjAAAXYwAAIGMAACRjAAArYwAAL2MAADZjAAA/YwAASWMAAE1jAABSYwAAWmMAAF9jAABlYwAAamMAAG5jAAB0YwAAd2MAAHtjAAB/YwAAhGMAAIhjAACOYwAAlGMAAJljAACeYwAApWMAAKxjAACwYwAAtGMAAN9jAAAOZAAAImQAADdkAABMZAAAUmQAAFZkAABaZAAAXmQAAGJkAABmZAAAamQAAHpkAAB+ZAAAoGQAALtkAADHZAAA02QAAN9kAADrZAAA92QAAARlAAAMZQAAGGUAAB1lAAAiZQAATGUAAGBlAACFZQAAqWUAANhlAADgZQAA7GUAAPhlAAAGZgAADmYAAB1mAAAlZgAAMGYAADlmAABAZgAATGYAAFdmAABeZgAAZGYAAG5mAAB3ZgAAgmYAAJBmAACbZgAAp2YAALdmAADBZgAAyGYAAM9mAADYZgAA3mYAAOdmAADxZgAA/WYAAAZnAAAUZwAAGmcAACZnAAAwZwAAQGcAAEhnAABNZwAAWGcAAGRnAAB1ZwAAgGcAAIxnAACSZwAAmWcAAL1nAADIZwAAzmcAANVnAADcZwAA52cAAPBnAAD+ZwAAB2gAABBoAAAuaAAANWgAADxoAABFaAAAaGgAAIRoAACgaAAArmgAALNoAADGaAAA0GgAANpoAADkaAAA82gAAP1oAAALaQAAImkAADppAABNaQAAWGkAAGlpAAB3aQAAgmkAAI9pAACWaQAAo2kAAKtpAAC5aQAAyGkAANJpAADdaQAA6WkAAPRpAAD9aQAADWoAAB1qAAAtagAANmoAAE1qAABaagAAamoAAHVqAAB+agAAk2oAAKpqAAC0agAAvWoAANRqAADeagAA6moAAPJqAAD7agAABWsAAA1rAAAVawAAI2sAAC1rAAAzawAAO2sAAF5rAABiawAAamsAAG5rAACAawAAjWsAAJVrAACeawAAp2sAALZrAADIawAA42sAAAdsAAAXbAAALmwAADlsAABEbAAAT2wAAFdsAABhbAAAbmwAAHlsAACGbAAAkmwAAJtsAACmbAAAs2wAAL5sAADKbAAA22wAAOJsAADubAAA/GwAAAhtAAAbbQAALG0AADZtAABFbQAASm0AAFNtAABgbQAAbW0AAHNtAAB7bQAAgG0AAI9tAACVbQAAm20AAKBtAACqbQAAtW0AALptAADCbQAAyW0AANBtAADWbQAA3W0AAOptAADwbQAAAm4AACNuAABHbgAAiG4AAKRuAACrbgAAtm4AAL5uAADUbgAA2G4AAORuAADvbgAA924AAABvAAALbwAAEG8AABpvAAAhbwAAMG8AADVvAABMbwAAX28AAGhvAABybwAAg28AAItvAACObwAAl28AAKNvAACqbwAAtG8AAL1vAADGbwAA0W8AAN1vAADobwAA728AAPtvAAACcAAAB3AAAAtwAAAScAAAHnAAACpwAAA2cAAAQXAAAEtwAABRcAAAWHAAAGdwAABycAAAiXAAAKpwAACycAAAwHAAANBwAADbcAAA5HAAAOxwAAD2cAAAA3EAAAlxAAAYcQAAH3EAAClxAAA6cQAAQXEAAExxAABUcQAAW3EAAHhxAAB9cQAAinEAAJFxAACXcQAAp3EAAMVxAADKcQAA0HEAAB9yAAAncgAAL3IAADpyAABBcgAATnIAAFtyAABlcgAAb3IAAHRyAAB6cgAAhXIAAI9yAACTcgAApnIAALRyAADCcgAAyXIAANJyAADhcgAA53IAAPRyAAAEcwAAC3MAABhzAAAhcwAALnMAADVzAAA4cwAAPHMAAEBzAABDcwAAR3MAAEtzAABocwAAcnMAAH5zAACZcwAAvHMAANVzAAD/cwAAC3QAABN0AAAfdAAAKnQAADR0AABBdAAATHQAAFB0AABTdAAAaXQAAHh0AAB9dAAARAAAAEYAAABQAAAAUwAAAFcAAAByAAAAcwAAAHQAAAB1AAAAdgAAAHcAAAB4AAAAeQAAAHoAAAB7AAAAfAAAAH0AAAB+AAAAfwAAAIAAAACBAAAAggAAAIMAAACEAAAAhQAAAIYAAACHAAAAiAAAAIkAAACKAAAAiwAAAIwAAACNAAAAjgAAAI8AAACQAAAAkQAAAJIAAACTAAAAlAAAAJUAAACWAAAAlwAAAJgAAACZAAAAmgAAAJsAAACcAAAAnQAAAJ4AAACfAAAAoAAAAKEAAACiAAAAowAAAKQAAAClAAAApgAAAKcAAACoAAAAqQAAAKoAAACrAAAArAAAAK0AAACuAAAArwAAALAAAACxAAAAsgAAALMAAAC0AAAAtgAAALcAAAC4AAAAuQAAALoAAAC7AAAAvAAAAL0AAAC+AAAAvwAAAMAAAADPAAAA3wAAAOoAAADrAAAA7AAAAO0AAADuAAAA7wAAAPAAAADxAAAARQAAAAAAAAA0UQAARwAAAAEAAAA8UQAASAAAAAEAAABEUQAAUwAAAAMAAAAAAAAAVAAAAAMAAABMUQAAVQAAAAMAAAA8UQAAVgAAAAMAAABUUQAAVwAAAAQAAAAAAAAAWAAAAAQAAABcUQAAWQAAAAQAAABkUQAAWgAAAAQAAABsUQAAXAAAAAQAAAB0UQAAWwAAAAQAAAB8UQAAXAAAAAQAAACEUQAAXgAAAAUAAAAAAAAAXgAAAAkAAAAAAAAAbwAAAAoAAACMUQAAXgAAAA8AAAAAAAAAZwAAABkAAACUUQAAaQAAABkAAACgUQAAawAAABkAAACwUQAAagAAABkAAADQUQAAXgAAABsAAAAAAAAAYwAAABsAAAA0UQAAZgAAABsAAABkUQAAcQAAAC8AAADgUQAAXgAAADAAAAAAAAAAZAAAADAAAABMUQAAbAAAADAAAADoUQAAXgAAADEAAAAAAAAAbAAAADEAAAA8UQAAYwAAADUAAAA0UQAAXgAAADkAAAAAAAAAYwAAADkAAAA0UQAAbwAAADkAAADwUQAAbwAAADkAAAD4UQAAbAAAADkAAAB8UQAAbAAAADkAAAAAUgAAXgAAADsAAAAAAAAAYQAAADsAAAAIUgAAYgAAADsAAAAcUgAAYwAAADsAAAA0UQAAZQAAADsAAAAsUgAAaAAAADsAAABsUQAAbAAAADsAAAA8UgAAbAAAADsAAAA8UQAAbwAAADsAAABEUgAAcAAAADsAAABMUgAAbAAAADsAAABYUgAAbQAAADsAAABgUgAAbgAAADsAAABsUgAAXwAAADwAAAB0UgAAYAAAADwAAAB8UgAAYwAAADwAAAA0UQAAZgAAADwAAABkUQAAbAAAADwAAACEUgAAbAAAADwAAAA8UgAAbAAAADwAAAA8UQAAbAAAADwAAACMUgAAcQAAADwAAADgUQAAXgAAAD8AAAAAAAAAbAAAAEEAAACUUgAAbwAAAEMAAACcUgAAbAAAAEQAAAA8UQAAXgAAAEYAAAAAAAAAXgAAAEcAAAAAAAAAbAAAAEcAAAA8UQAAbAAAAEwAAAA8UQAAbAAAAE0AAACkUgAA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KABIADsBAAAoAGcAIQIAACsAVwA7AAAALwBpAA4BAAAvABkAGAIAADAAAAARAQAAMAADAKcBAAAwABsA/wEAADAAJgANAgAAMQAeAD8BAAAxAD0AUgEAADEAPgBTAQAAMQA+AGEBAAAxACYAYgEAADIAagCYAQAAMgBqAJoBAAAzAFsAOwAAADUAKQAMAgAANQAfABgCAAA3AAQArAEAADcACgCsAQAANwAEAK8BAAA3AAoArwEAADcACADdAQAAOQBIADsAAAA5AB0ATwEAADkASAC9AQAAOQBLABoCAAA7AHEAIAEAADsAcgAuAQAAOwB4AEsBAAA7AAMAdQEAADsAaQCUAQAAOwADAKcBAAA7ACYAEAIAADsALAAYAgAAPABIADsAAAA8AEkAOwAAADwAWwA7AAAAPAAzAAsBAAA8ADQACwEAADwANQALAQAAPAA2AAsBAAA8ADcACwEAADwAOAALAQAAPAA5AAsBAAA8ADsACwEAADwAJgANAgAAPQBJADUBAAA9AFgA7AEAAD4AWgA7AAAAPgBIAPkBAAA/ACYAYAEAAD8AJgANAgAAQAAiALUBAABBACUAtQEAAEEAZgDoAQAAQgA8AEwBAABDACMAjgEAAEMAZgDoAQAARAA/AD8BAABFAEgAOwAAAEYAaQB0AQAARgAgALYBAABHAHIABAEAAEcAIQBJAQAARwBpAJQBAABHAEAAoAEAAEcAAwD0AQAASABIADsAAABIAHQANgEAAEgAdQA5AQAASABiAP4BAABJAEgAOwAAAEkASADeAQAASgBIADoAAABKAEgAOwAAAEoASAD8AAAASgAvAP0AAABKAFsA/gAAAEoALwAwAQAASgB2AHMBAABKAF4AqAEAAEoAaACrAQAASgAtANQBAABKAFsA5gEAAEoASADnAQAASgBEAPgBAABLAGUAOwAAAEsAVAC/AQAATABfADsAAABMACYAYAEAAE0ASAA7AAAATgBhADsAAABPAEgAOwAAAE8AawD8AAAATwAkAP0AAABPAA0A/wAAAE8ADAAAAQAATwAYAAMBAABPAEMADQEAAE8ATAAQAQAATwBIABUBAABPAEgAFwEAAE8ASAAaAQAATwBkACoBAABPAAkAMgEAAE8AFgA+AQAATwAxAEQBAABPABUASAEAAE8AJgB2AQAATwAcAHkBAABPAEgA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ABAsImRpc3BsYXlFcnJvciI6AA0sImVsZW1lbnRzIjpbAAwsImVuY29kZU1zIjoAECwiZmlyc3RFdmVudE1zIjoADywiZm9jdXNlZCI6dHJ1ZQAKLCJncmFiTXMiOgAKLCJoZWlnaHQiOgANLCJsYXN0QWdvTXMiOgAJLCJsYXllciI6AAwsIm1heExhZ01zIjoACywibWVzc2FnZSI6AAksIm1vZGVsIjoABiwibXMiOgAJLCJub2RlcyI6ABQsIm9rIjpmYWxzZSwiZXJyb3IiOgASLCJvayI6dHJ1ZSwiZGF0YSI6ABUsIm9rIjp0cnVlLCJkYXRhIjp7fX0ACSwib3JkZXIiOgAHLCJwaWQiOgAILCJwbmciOiIADCwicG9pbnRlcnMiOgAULCJwcm90b2NvbCI6MSwic2RrIjoACiwicmVhZE1zIjoAEywicmVhc29uIjoidGltZW91dCIACywicmVsZWFzZSI6AA0sInJldHJ5YWJsZSI6ACYsInJldHJ5YWJsZSI6ZmFsc2UsImRldGFpbCI6eyJyZWFzb24iOgAMLCJyb3RhdGlvbiI6AAksInNjYWxlIjoACiwic2NyZWVuIjoACSwidGl0bGUiOgAILCJ0eXBlIjoALywidWlBdXRvbWF0aW9uIjp7InN0YXRlIjoiY29ubmVjdGVkIiwiY29ubmVjdCI6AAcsInVpZCI6AAgsInVwTXMiOgAHLCJ2aWEiOgAZLCJ2aWEiOiJldmVudHMiLCJldmVudHMiOgAMLCJ3YWl0ZWRNcyI6AAssIndpbmRvd3MiOgABLwAFMC4zLjAAAjogAAU6dHJ1ZQAIPGNsaW5pdD4ABjxpbml0PgADPjspACFBQ1RJT05fQVJHVU1FTlRfU0VMRUNUSU9OX0VORF9JTlQAI0FDVElPTl9BUkdVTUVOVF9TRUxFQ1RJT05fU1RBUlRfSU5UACVBQ1RJT05fQVJHVU1FTlRfU0VUX1RFWFRfQ0hBUlNFUVVFTkNFACxBQ1RJT05fU0VUX1NFTEVDVElPTiB3YXMgcmVmdXNlZCBieSB0aGUgbm9kZQAnQUNUSU9OX1NFVF9URVhUIHdhcyByZWZ1c2VkIGJ5IHRoZSBub2RlAAVBU0NJSQARQWxyZWFkeSBjb25uZWN0ZWQAAUMAAkNJAAFEAAJETAADRExEABBFX0FYX1VOQVZBSUxBQkxFAA1FX0JBRF9SRVFVRVNUAAVFX0hJRAAKRV9JTlRFUk5BTAAERV9JTwAMRV9OT19FTEVNRU5UAA1FX1VOU1VQUE9SVEVEAAFGABJHRVNUVVJFX01BWF9GUkFNRVMADkdFU1RVUkVfTUFYX01TAAFJAANJSUkAAklMAANJTEkAAUoAAkpEAAJKSgADSkpKAAJKTAADSkxKAAlKc29uLmphdmEAAUwAAkxDAAJMRgAJTEZGRkZKSUpKAAdMRkZJSkpaAAJMSQADTElJAAZMSUlJSloAAkxKAAVMSklGRgADTEpKAAdMSkpJRkZJAAdMSkpJSUxJAA9MSkpJSUxMSUlGRklJSUkAAkxMAAVMTERKSgADTExJAANMTEwABExMTFoAAkxaADdMYW5kcm9pZC9hY2Nlc3NpYmlsaXR5c2VydmljZS9BY2Nlc3NpYmlsaXR5U2VydmljZUluZm87ADdMYW5kcm9pZC9hcHAvVWlBdXRvbWF0aW9uJE9uQWNjZXNzaWJpbGl0eUV2ZW50TGlzdGVuZXI7ABpMYW5kcm9pZC9hcHAvVWlBdXRvbWF0aW9uOwAoTGFuZHJvaWQvZ3JhcGhpY3MvQml0bWFwJENvbXByZXNzRm9ybWF0OwAZTGFuZHJvaWQvZ3JhcGhpY3MvQml0bWFwOwAXTGFuZHJvaWQvZ3JhcGhpY3MvUmVjdDsAGkxhbmRyb2lkL29zL0J1aWxkJFZFUlNJT047ABJMYW5kcm9pZC9vcy9CdWlsZDsAE0xhbmRyb2lkL29zL0J1bmRsZTsAGkxhbmRyb2lkL29zL0hhbmRsZXJUaHJlYWQ7ABNMYW5kcm9pZC9vcy9Mb29wZXI7ABRMYW5kcm9pZC9vcy9Qcm9jZXNzOwAYTGFuZHJvaWQvb3MvU3lzdGVtQ2xvY2s7ABVMYW5kcm9pZC91dGlsL0Jhc2U2NDsAHUxhbmRyb2lkL3V0aWwvRGlzcGxheU1ldHJpY3M7ABZMYW5kcm9pZC92aWV3L0Rpc3BsYXk7ABlMYW5kcm9pZC92aWV3L0lucHV0RXZlbnQ7ABdMYW5kcm9pZC92aWV3L0tleUV2ZW50OwAoTGFuZHJvaWQvdmlldy9Nb3Rpb25FdmVudCRQb2ludGVyQ29vcmRzOwAsTGFuZHJvaWQvdmlldy9Nb3Rpb25FdmVudCRQb2ludGVyUHJvcGVydGllczsAGkxhbmRyb2lkL3ZpZXcvTW90aW9uRXZlbnQ7AC9MYW5kcm9pZC92aWV3L2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eUV2ZW50OwAyTGFuZHJvaWQvdmlldy9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlOb2RlSW5mbzsANExhbmRyb2lkL3ZpZXcvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5V2luZG93SW5mbzsAIkxkYWx2aWsvYW5ub3RhdGlvbi9FbmNsb3NpbmdDbGFzczsAI0xkYWx2aWsvYW5ub3RhdGlvbi9FbmNsb3NpbmdNZXRob2Q7AB5MZGFsdmlrL2Fubm90YXRpb24vSW5uZXJDbGFzczsAIUxkYWx2aWsvYW5ub3RhdGlvbi9NZW1iZXJDbGFzc2VzOwAkTGRhbHZpay9hbm5vdGF0aW9uL01ldGhvZFBhcmFtZXRlcnM7AB1MZGFsdmlrL2Fubm90YXRpb24vU2lnbmF0dXJlOwAaTGRhbHZpay9hbm5vdGF0aW9uL1Rocm93czsAHUxqYXZhL2lvL0J1ZmZlcmVkSW5wdXRTdHJlYW07ABhMamF2YS9pby9CdWZmZXJlZFJlYWRlcjsAH0xqYXZhL2lvL0J5dGVBcnJheU91dHB1dFN0cmVhbTsAGExqYXZhL2lvL0ZpbGVEZXNjcmlwdG9yOwAaTGphdmEvaW8vRmlsZU91dHB1dFN0cmVhbTsAFUxqYXZhL2lvL0lPRXhjZXB0aW9uOwAVTGphdmEvaW8vSW5wdXRTdHJlYW07ABtMamF2YS9pby9JbnB1dFN0cmVhbVJlYWRlcjsAFkxqYXZhL2lvL091dHB1dFN0cmVhbTsAFUxqYXZhL2lvL1ByaW50U3RyZWFtOwAQTGphdmEvaW8vUmVhZGVyOwATTGphdmEvbGFuZy9Cb29sZWFuOwAYTGphdmEvbGFuZy9DaGFyU2VxdWVuY2U7ABFMamF2YS9sYW5nL0NsYXNzOwASTGphdmEvbGFuZy9Eb3VibGU7ABVMamF2YS9sYW5nL0V4Y2VwdGlvbjsAEUxqYXZhL2xhbmcvRmxvYXQ7ABNMamF2YS9sYW5nL0ludGVnZXI7ACBMamF2YS9sYW5nL0ludGVycnVwdGVkRXhjZXB0aW9uOwAQTGphdmEvbGFuZy9NYXRoOwAhTGphdmEvbGFuZy9Ob1N1Y2hNZXRob2RFeGNlcHRpb247ABJMamF2YS9sYW5nL09iamVjdDsAFExqYXZhL2xhbmcvUnVubmFibGU7ABJMamF2YS9sYW5nL1N0cmluZzsAGUxqYXZhL2xhbmcvU3RyaW5nQnVpbGRlcjsAEkxqYXZhL2xhbmcvU3lzdGVtOwASTGphdmEvbGFuZy9UaHJlYWQ7ABVMamF2YS9sYW5nL1Rocm93YWJsZTsAGUxqYXZhL2xhbmcvcmVmbGVjdC9BcnJheTsAH0xqYXZhL2xhbmcvcmVmbGVjdC9Db25zdHJ1Y3RvcjsALUxqYXZhL2xhbmcvcmVmbGVjdC9JbnZvY2F0aW9uVGFyZ2V0RXhjZXB0aW9uOwAaTGphdmEvbGFuZy9yZWZsZWN0L01ldGhvZDsAGkxqYXZhL25pby9jaGFyc2V0L0NoYXJzZXQ7ABVMamF2YS91dGlsL0FycmF5TGlzdDsAFExqYXZhL3V0aWwvSXRlcmF0b3I7ABBMamF2YS91dGlsL0xpc3Q7ABBMamF2YS91dGlsL0xpc3Q8ACFMbnovY28vZGVsYWNvdXIvd2FyZGVuL3VpYWQvSnNvbjsAI0xuei9jby9kZWxhY291ci93YXJkZW4vdWlhZC9NYWluJDE7ACFMbnovY28vZGVsYWNvdXIvd2FyZGVuL3VpYWQvTWFpbjsAIkxuei9jby9kZWxhY291ci93YXJkZW4vdWlhZC9VaWEkMTsAKExuei9jby9kZWxhY291ci93YXJkZW4vdWlhZC9VaWEkT3BFcnJvcjsAMExuei9jby9kZWxhY291ci93YXJkZW4vdWlhZC9VaWEkU25hcHNob3RPcHRpb25zOwAlTG56L2NvL2RlbGFjb3VyL3dhcmRlbi91aWFkL1VpYSRXYWxrOwAgTG56L2NvL2RlbGFjb3VyL3dhcmRlbi91aWFkL1VpYTsAFExvcmcvanNvbi9KU09OQXJyYXk7ABhMb3JnL2pzb24vSlNPTkV4Y2VwdGlvbjsAFUxvcmcvanNvbi9KU09OT2JqZWN0OwAFTU9ERUwACU1haW4uamF2YQAHT3BFcnJvcgADUE5HAAhQUk9UT0NPTAAHUkVMRUFTRQAHU0RLX0lOVAAPU25hcHNob3RPcHRpb25zAARUWVBFAAhVUy1BU0NJSQAFVVRGLTgAPVVpQXV0b21hdGlvbihMb29wZXIsIElVaUF1dG9tYXRpb25Db25uZWN0aW9uKSBtaXNzaW5nIG9uIEFQSSAAL1VpQXV0b21hdGlvbkNvbm5lY3Rpb24gaXMgbm90IHJlYWNoYWJsZSBvbiBBUEkgAAhVaWEuamF2YQABVgAHVkVSU0lPTgACVkkABVZJSUlJAAJWSgAFVkpJTEkAB1ZKSklJSUkACFZKSklJTElaAAJWTAADVkxJAAZWTElJSVoAA1ZMTAAEVkxMWgADVkxaAAJWWgAEV2FsawABWgACWkQAAlpJAANaSUwAAlpMAARaTElJAARaTElMAANaTEwAA1pMWgAFWkxaTEwABVpMWkxaAAJbQgACW0kAKVtMYW5kcm9pZC92aWV3L01vdGlvbkV2ZW50JFBvaW50ZXJDb29yZHM7AC1bTGFuZHJvaWQvdmlldy9Nb3Rpb25FdmVudCRQb2ludGVyUHJvcGVydGllczsAEltMamF2YS9sYW5nL0NsYXNzOwATW0xqYXZhL2xhbmcvT2JqZWN0OwATW0xqYXZhL2xhbmcvU3RyaW5nOwAEW1tbRgACXCIAAlxcAAJcbgACXHIAAlx0AAJcdQAOXSwidHJ1bmNhdGVkIjoAAl19ACBhIGdlc3R1cmUgbGFzdHMgYXQgbW9zdCA2MDAwMCBtcwAZYSBwYXRoIGhhcyAxLi4xMDAwIHBvaW50cwAKYWNjZXNzJDAwMAAKYWNjZXNzJDEwMAAKYWNjZXNzJDIwMAAKYWNjZXNzJDIwMgAKYWNjZXNzJDMwOAALYWNjZXNzRmxhZ3MABmFjdGl2ZQAKYWN0aXZlUm9vdAADYWRkAANhbGwAKGFsbCBwYXRocyBuZWVkIHRoZSBzYW1lIG51bWJlciBvZiBwb2ludHMAEmFscmVhZHkgcmVnaXN0ZXJlZAAjYW5kcm9pZC5hcHAuSVVpQXV0b21hdGlvbkNvbm5lY3Rpb24AImFuZHJvaWQuYXBwLlVpQXV0b21hdGlvbkNvbm5lY3Rpb24ALWFuZHJvaWQuaGFyZHdhcmUuZGlzcGxheS5EaXNwbGF5TWFuYWdlckdsb2JhbAAGYXBwZW5kAApiYWQgcGF0aDogAApiYWRHZXN0dXJlAAxib29sZWFuVmFsdWUABmJvdHRvbQANY2FuY2VsR2VzdHVyZQAGY2hhckF0AAljaGVja2FibGUAB2NoZWNrZWQABWNsYXNzAApjbGVhckNhY2hlAAljbGlja2FibGUABWNsb3NlAARjb2RlAAhjb21wcmVzcwAHY29ubmVjdAAJY29ubmVjdCgpAAxjb25uZWN0KGludCkACWNvbm5lY3RNcwAKY29ubmVjdFZpYQAOY29ubmVjdF9mYWlsZWQACGNvbnRhaW5zAAVjb3VudAAFZGVidWcAB2RlbnNpdHkABGRlc2MAB2Rlc3Ryb3kACGRpc2FibGVkAApkaXNjb25uZWN0AAdkaXNwbGF5AAxkaXNwbGF5RXJyb3IABGR1bXAACmR1cmF0aW9uTXMACGVkaXRhYmxlAA5lbmNvZGVUb1N0cmluZwAGZXF1YWxzAANlcnIACWVycm9ySnNvbgAKZXZlbnRDb3VudAAPZXZlbnRDb3VudFNpbmNlAAlldmVudExvY2sACmV2ZW50VHlwZXMABGV4aXQABWZpZWxkACJmaW5kQWNjZXNzaWJpbGl0eU5vZGVJbmZvc0J5Vmlld0lkAAlmaW5kRm9jdXMABGZsYWcABWZsYWdzAAVmbHVzaAAJZm9jdXNhYmxlAAdmb2N1c2VkAAxmb2N1c2VkSW5wdXQAB2Zvck5hbWUAB2ZyYW1lTXMAHGZyYW1lTXMgbXVzdCBiZSBpbiAoMCwgMTAwMF0ABWZyZXNoAAVnYXBNcwAHZ2VzdHVyZQAhZ2VzdHVyZSBmYWlsZWQgYmVmb3JlIGFueSBpbnB1dDogABpnZXN0dXJlIGludGVycnVwdGVkIGFmdGVyIAAaZ2VzdHVyZSB0YWtlcyAxIG9yIDIgcGF0aHMADGdlc3R1cmVFdmVudAADZ2V0ABFnZXRCb3VuZHNJblNjcmVlbgAIZ2V0Qnl0ZXMACGdldENhdXNlAAhnZXRDaGlsZAANZ2V0Q2hpbGRDb3VudAAIZ2V0Q2xhc3MADGdldENsYXNzTmFtZQAVZ2V0Q29udGVudERlc2NyaXB0aW9uABZnZXREZWNsYXJlZENvbnN0cnVjdG9yABFnZXREZWNsYXJlZE1ldGhvZAAJZ2V0RG91YmxlAA9nZXREcmF3aW5nT3JkZXIADGdldEV2ZW50VHlwZQAJZ2V0SGVpZ2h0AAtnZXRIaW50VGV4dAAFZ2V0SWQAC2dldEluc3RhbmNlAAZnZXRJbnQADGdldEpTT05BcnJheQANZ2V0SlNPTk9iamVjdAAIZ2V0TGF5ZXIACWdldExvb3BlcgAKZ2V0TWVzc2FnZQAJZ2V0TWV0aG9kAAdnZXROYW1lAA5nZXRQYWNrYWdlTmFtZQAOZ2V0UmVhbERpc3BsYXkADmdldFJlYWxNZXRyaWNzAAdnZXRSb290ABVnZXRSb290SW5BY3RpdmVXaW5kb3cAC2dldFJvdGF0aW9uAA5nZXRTZXJ2aWNlSW5mbwAJZ2V0U3RyaW5nAAdnZXRUZXh0ABNnZXRUZXh0U2VsZWN0aW9uRW5kABVnZXRUZXh0U2VsZWN0aW9uU3RhcnQACGdldFRpdGxlAAdnZXRUeXBlABVnZXRWaWV3SWRSZXNvdXJjZU5hbWUACGdldFdpZHRoAApnZXRXaW5kb3dzAAZoYW5kbGUAB2hhc05leHQACGhhc2hDb2RlAAZoZWFsdGgABmhlaWdodAAMaGVpZ2h0UGl4ZWxzAAhoZWxkVGV4dAAEaGludAAGaG9sZE1zACFob2xkTXMgYW5kIHJlbGVhc2VNcyBtdXN0IGJlID49IDAAAmlkAAZpZGxlTXMAAmluABBpbmNsdWRlSW52aXNpYmxlAAtpbml0RGlzcGxheQAGaW5qZWN0AAdpbmplY3QyAAdpbmplY3QzAA1pbmplY3RHZXN0dXJlABBpbmplY3RJbnB1dEV2ZW50ABlpbmplY3RJbnB1dEV2ZW50IGZhaWxlZDogACJpbmplY3RJbnB1dEV2ZW50IHJlZnVzZWQgdGhlIGV2ZW50AA5pbmplY3RMb29rZWRVcAAVaW5qZWN0Tm9BbmltYXRpb25XYWl0AAlpbmplY3RPbmUACWludGVyc2VjdAAJaW52aXNpYmxlAAZpbnZva2UACGlzQWN0aXZlAAtpc0NoZWNrYWJsZQAJaXNDaGVja2VkAAtpc0NsaWNrYWJsZQAKaXNFZGl0YWJsZQAHaXNFbXB0eQAJaXNFbmFibGVkAAtpc0ZvY3VzYWJsZQAJaXNGb2N1c2VkAAppc0luZmluaXRlAA9pc0xvbmdDbGlja2FibGUABWlzTmFOAAppc1Bhc3N3b3JkAAxpc1Njcm9sbGFibGUACmlzU2VsZWN0ZWQAEWlzU2hvd2luZ0hpbnRUZXh0AA9pc1Zpc2libGVUb1VzZXIACGl0ZXJhdG9yAA1rZWVwSW52aXNpYmxlAANrZXkAB2tleUNvZGUAC2xhc3RFdmVudE1zAAtsYXN0SW5wdXRNcwAEbGVmdAAGbGVuZ3RoAANsb2cADWxvbmdDbGlja2FibGUABGxvb3AABG1haW4AA21heAAIbWF4Tm9kZXMACW1ldGFTdGF0ZQADbWluAAZtb3Rpb24ABW15UGlkAAVteVVpZAAEbmFtZQAFbmFtZXMAC25ld0luc3RhbmNlAARuZXh0ABBubyBmb2N1c2VkIGlucHV0AB9ubyBmb2N1c2VkIGlucHV0IHRvIHNldCB0ZXh0IG9uACJubyByb290IG5vZGUgZm9yIHRoZSBhY3RpdmUgd2luZG93AD9ubyByb290IG5vZGUgZm9yIHRoZSBhY3RpdmUgd2luZG93IChVaUF1dG9tYXRpb24gcmV0dXJuZWQgbnVsbCkAGm5vIHdpbmRvdyB3aXRoIGEgcm9vdCBub2RlAAVub2RlcwAJbm90aWZ5QWxsAAZvYnRhaW4AFG9uQWNjZXNzaWJpbGl0eUV2ZW50AAJvcAAKb3B0Qm9vbGVhbgAJb3B0RG91YmxlAAZvcHRJbnQAB29wdExvbmcACW9wdFN0cmluZwADb3V0AAhwYXNzd29yZAAFcGF0aHMADXBlcmZvcm1BY3Rpb24AA3BrZwAVcG9pbnRzIG11c3QgYmUgZmluaXRlABFwcmVwYXJlTWFpbkxvb3BlcgAHcHJlc3NNcwAIcHJlc3N1cmUAD3B1dENoYXJTZXF1ZW5jZQAGcHV0SW50AAFxAAdxdWlldE1zAApxdWl0U2FmZWx5AAVxdW90ZQAIcmVhZExpbmUAB3JlY3ljbGUAB3JlZnJlc2gACXJlbGVhc2VNcwAKcmVzb3VyY2VJZAAJcmV0cnlhYmxlAAVyaWdodAAKcm9vdFdhaXRNcwAFcm91bmQAA3J1bgACc2IABXNjb3BlAApzY3JlZW5Kc29uAApzY3JlZW5zaG90AApzY3JvbGxhYmxlAAlzZWxlY3RBbGwACHNlbGVjdGVkAARzZW5kAAVzZXJ2ZQANc2V0QWNjZXNzaWJsZQAJc2V0RGFlbW9uABVzZXRJbnRlcmFjdGl2ZVdpbmRvd3MAH3NldE9uQWNjZXNzaWJpbGl0eUV2ZW50TGlzdGVuZXIABnNldE91dAAMc2V0U2VsZWN0aW9uAA5zZXRTZXJ2aWNlSW5mbwAJc2V0U291cmNlAAdzZXRUZXh0AAZzZXR0bGUACHNodXRkb3duAAtzaWduaWZpY2FudAAEc2l6ZQANc2tpcEludmlzaWJsZQAFc2xlZXAACHNuYXBzaG90AA9zbmFwc2hvdE9wdGlvbnMABXN0YXJ0AAlzdGFydGVkTXMABnN0ZG91dAAFc3RlcHMAG3N0b2NrIHNlcnZpY2UgaW5mbyBmbGFncz0weAADc3RyAAtzdWJTZXF1ZW5jZQAFc3dpcGUABHN5bmMADnRha2VTY3JlZW5zaG90ABx0YWtlU2NyZWVuc2hvdCByZXR1cm5lZCBudWxsAAN0YXAABHRleHQATXRoZSB0ZXh0IG9mIGEgcGFzc3dvcmQgZmllbGQgaXMgbm90IHJlYWRhYmxlLCBzbyBpdCBjYW5ub3QgYmUgZWRpdGVkIGluIHBsYWNlAAZ0aGlzJDAABnRocmVhZAAJdGltZW91dE1zAAV0aW1lcwALdG9CeXRlQXJyYXkAC3RvSGV4U3RyaW5nAAh0b1N0cmluZwAIdG9vbFR5cGUAA3RvcAAEdHJpbQAJdHJ1bmNhdGVkAAh0eXBlVGV4dAACdWEAEXVpYXV0b21hdGlvbl9idXN5AAx1bmtub3duIG9wOiAADHVwdGltZU1pbGxpcwAFdmFsdWUAB3ZhbHVlT2YADXZpc2libGVCb3VuZHMABHdhaXQAC3dhcmRlbi11aWFkAA53YXJkZW4tdWlhZC1pbwAFd2lkdGgAC3dpZHRoUGl4ZWxzAAd3aW5kb3dzAAt3aW5kb3dzSnNvbgAFd3JpdGUAAXgAAngxAAJ4MgABeQACeTEAAnkyABt7ImJhY2tlbmQiOiJ1aWFkIiwic2NyZWVuIjoACHsiY29kZSI6AAp7ImRvd25NcyI6ABl7ImV2ZW50IjoiZmF0YWwiLCJlcnJvciI6ACF7ImV2ZW50IjoiZmF0YWwiLCJlcnJvciI6eyJjb2RlIjoAF3siZXZlbnQiOiJsb2ciLCJsZXZlbCI6ACh7ImV2ZW50IjoicmVhZHkiLCJwcm90b2NvbCI6MSwidmVyc2lvbiI6AAp7ImZyYW1lcyI6AAZ7ImlkIjoACnsibGVuZ3RoIjoACXsicXVpZXQiOgAIeyJ0ZXh0IjoAC3sidmVyc2lvbiI6AAl7IndpZHRoIjoAAnt9AAF9ABR9LCJldmVudHMiOnsiY291bnQiOgANfSwidXB0aW1lTXMiOgADfX19AJ4Bfn5EOHsiYmFja2VuZCI6ImRleCIsImNvbXBpbGF0aW9uLW1vZGUiOiJyZWxlYXNlIiwiaGFzLWNoZWNrc3VtcyI6ZmFsc2UsIm1pbi1hcGkiOjI2LCJzaGEtMSI6IjA4NGE4OTEyNmFlMDU5NmM1OTkxNDNkZjU3YTY1NDY0NmFmMjgzMTMiLCJ2ZXJzaW9uIjoiOS4yLjQtZGV2In0AAh4BlwQaqAIfAoECBACzAx4CIwGXBBwBGDMCIQKBAhwBRBCAALQDHAEeAh4BlwQavQIfAoECBBizAxfDAh0BlwQYTwIfAoECBBizAxfIAh8CgQIEGrMDF94CIgGXBBwFFwYXtReJFzwXqQIjAZcEHAEYTAIgAZcEHAMYTBhNGE4AAAQAmgGCgAS8NgEIuDUBCIQ2AQjUNgAAAQGeAYCABMQ4nwEB3DgEAA0AGRoBGAEYAQqgAYiABPxKAYKABKBLAYgguEsBiCCcSAGIINBLAQq4SAEK0DkBCOhLAQnITAEKoEkBioAIhE0BCpROAQrUSQABAQEdkCCtAYCABNRSrgEB8FIAAgEAHhABEK8BgIAE6FMABwEAIAABAAEAAQABAAEAAQCxAYCABIhUAAcBACcQARABEAEAARABAAEQsgGAgATQVAIOGw0uGgEaMAABAgECAQIBAgESAQIBAgECAQIBAgEQAQIBArMBgIAE/IgBAYgg8FgBiCCAXQGIIOyHAQGIIISIAQECvFcBCtiIAQECuIkBAQL0iQEDAviPAQECpIgBAQKIWAIKyFUCCpxcAQKElQEBApSWAQECjJcBAQKMWQGCAcyXAQIChFcBCrxvAQKQmAEDAqyZAQEC5FoDCqBbBQL8VAEKmIUBvAEAnIoBAQCciwEEAJhdAgD0agcArG4EAPBvAQCEcgMAhHMBALx1AgCweAEA+H0BAOx/AQCEggEDHgQBFzcCJOgDRmDqAAIAAAAedQAAJXUAAAEAAAAvdQAAAQAAADh1AAACAAAASHUAACV1AAACAAAAWnUAAE91AAACAAAAWnUAAGF1AAACAAAAWnUAAGx1AAABAAAAd3UAAAEAAACIdQAAAQAAAJF1AABQdwAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAKIAAABcdwAAqwAAAFx3AABsdwAAAAAAAAEAAAAAAAAArQAAAGR3AAB4dwAAAAAAAAAAAAAAAAAAhHcAAAAAAAAAAAAAAAAAAJB3AAAAAAAAAAAAAAAAAACsdwAAAAAAABEAAAAAAAAAvQAAAFx3AADAAAAApHcAAMEAAACkdwAAxAAAAKR3AADGAAAApHcAAMcAAACkdwAAyAAAAFx3AADJAAAAXHcAAMoAAACkdwAAzgAAAKR3AADPAAAApHcAANIAAACkdwAA1QAAAKR3AADWAAAApHcAANcAAACkdwAA2AAAAKR3AADaAAAAnHcAABEAAAAAAAAAAQAAAAAAAAABAAAAPAIAAHAAAAACAAAAXQAAAGAJAAADAAAAeQAAANQKAAAEAAAAPgAAAIAQAAAFAAAA6QAAAHASAAAGAAAACAAAALgZAAABIAAAQAAAALgaAAADIAAAPQAAAPhMAAABEAAARQAAACRRAAACIAAAPAIAAM5TAAAEIAAADAAAAB51AAAAIAAACAAAAJ51AAAFIAAAAgAAAEJ3AAADEAAACgAAAFB3AAAGIAAABwAAALR3AAAAEAAAAQAAAMR4AAA=";
|
|
3
|
+
readonly version: "0.6.0";
|
|
4
|
+
readonly bytes: 43456;
|
|
5
|
+
readonly dexSha256: "9d8962d554401fa07cd399033f428d16e8ece2858ae62c773b07215e14ae4750";
|
|
6
|
+
readonly sourceSha256: "12b623dcc99084e102b3eefc6baccb875dd8a289417c6151ae5ece6c27a6d66c";
|
|
7
|
+
readonly base64: "ZGV4CjAzOACaq9l6vn4ngSIwG+CRAvmcr1atkBiDjOzAqQAAcAAAAHhWNBIAAAAAAAAAAPCoAADOAgAAcAAAAGoAAACoCwAAmAAAAFANAABRAAAAcBQAADkBAAD4FgAADQAAAMAgAABghwAAYCIAABJ4AAAUeAAAF3gAAB14AAApeAAANHgAAEB4AABEeAAAR3gAAEt4AABOeAAAXHgAAGx4AAB0eAAAgXgAAIx4AACdeAAArHgAALt4AADGeAAA0HgAAOJ4AADxeAAA/3gAABF5AAAieQAALnkAADp5AABFeQAAVHkAAF95AABpeQAAd3kAAIV5AACSeQAAnXkAAKV5AACweQAAxnkAANp5AADxeQAA/HkAAAV6AAAPegAAHXoAADN6AAA/egAAVHoAAGF6AABwegAAmHoAAKZ6AACxegAAvXoAAMd6AADSegAA3HoAAA17AAAWewAAIHsAACl7AABEewAAUnsAAF97AABiewAAaXsAAG17AAB0ewAAfnsAAIZ7AACKewAAj3sAAJV7AACmewAA2nsAAP17AAAifAAASXwAAG98AACdfAAAxnwAAM18AADqfAAA/nwAAB19AAAwfQAAOn0AAD19AABHfQAAS30AAGB9AABjfQAAZ30AAGx9AABzfQAAhX0AAJR9AACbfQAAp30AAK19AAC7fQAAyn0AANF9AADUfQAA6H0AAPh9AAD7fQAAAH4AAAR+AAAJfgAADn4AABF+AAAVfgAAGX4AAB5+AAAifgAAJ34AADJ+AAA1fgAAOX4AAD1+AABIfgAAUX4AAFd+AABbfgAAYH4AAGh+AAB7fgAAf34AAIZ+AACLfgAAlH4AAJ1+AACufgAAsn4AALl+AAC/fgAAxH4AAMp+AADPfgAA1X4AANt+AADgfgAA5H4AAB1/AABWfwAAcn8AAI1/AAC3fwAA0n8AAOt/AAAHgAAAG4AAADCAAABMgAAAYYAAAHeAAACRgAAAqIAAAMeAAADfgAAA+oAAABOBAAA9gQAAa4EAAIeBAAC4gQAAAIIAADSCAABqggAAjoIAALOCAADTggAA9oIAAByDAAA7gwAAV4MAAHeDAACWgwAAsIMAANGDAADrgwAAB4QAAB6EAAA1hAAAUoQAAGqEAACBhAAAk4QAAKiEAADChAAA1YQAAO6EAAAShQAAJoUAAD2FAABQhQAAZYUAAIeFAACZhQAAvIUAANCFAADmhQAA+oUAABWGAAAphgAAPYYAAFSGAABvhgAAkIYAAL+GAADbhgAA94YAAA+HAAAnhwAAPocAAFSHAABmhwAAeIcAAKeHAADbhwAABIgAACaIAABJiAAAbogAAJGIAAC1iAAA2YgAAAOJAAA1iQAAXIkAAH6JAACUiQAArokAAMWJAADMiQAA14kAAOOJAADsiQAA8YkAAPuJAAAEigAADYoAABuKAAAsigAAMooAADyKAABDigAAgooAALOKAAC9igAAwIoAAMmKAADNigAA1IoAANiKAADfigAA6IoAAPKKAAD5igAA/YoAAAKLAAAKiwAAD4sAABWLAAAciwAAIosAACeLAAAriwAAMYsAADSLAAA4iwAAPIsAAEGLAABGiwAASosAAE+LAABViwAAW4sAAGCLAABliwAAaosAAHGLAAB4iwAAfIsAAICLAACEiwAAr4sAAN6LAAATjAAAJ4wAADyMAABRjAAAV4wAAFuMAABfjAAAY4wAAGeMAABrjAAAb4wAAHyMAACMjAAAkIwAALKMAADNjAAA44wAAO+MAAD8jAAACI0AABSNAAAgjQAALI0AADiNAABFjQAAUo0AAGCNAABojQAAdI0AAHmNAACDjQAAjI0AAJ2NAACijQAAzI0AAOCNAAD8jQAAIY4AAEWOAAB0jgAAgo4AAIqOAACZjgAAnY4AAKKOAACpjgAAt44AAMGOAADNjgAA2Y4AAOeOAADvjgAA944AAAaPAAANjwAAFY8AACCPAAApjwAAMI8AADyPAABDjwAATo8AAGGPAABojwAAbo8AAHyPAACGjwAAj48AAJqPAACojwAAs48AAL+PAADPjwAA2Y8AAOKPAADsjwAA848AAAaQAAAOkAAAFZAAAB6QAAAkkAAALZAAADKQAABTkAAAbZAAAHeQAACDkAAAjJAAAJqQAACgkAAArJAAALaQAADGkAAAzZAAANWQAADakAAA5ZAAAPGQAAACkQAADZEAABmRAAAfkQAAJpEAAEqRAABVkQAAZJEAAGqRAABxkQAAeJEAAH+RAACMkQAAmZEAAKSRAACvkQAAuJEAAMaRAADPkQAA2JEAAOGRAAD/kQAABpIAABGSAAAYkgAAIZIAAESSAABgkgAAfJIAAIqSAACPkgAAnpIAALGSAAC7kgAAxZIAAM+SAADekgAA6JIAAPiSAAAGkwAAHZMAADSTAABMkwAAX5MAAGqTAAB7kwAAiZMAAJSTAAChkwAAqJMAALWTAAC9kwAAy5MAANqTAADkkwAA7pMAAP2TAAAIlAAAFJQAAB+UAAAolAAAOJQAAEOUAABTlAAAY5QAAGyUAACDlAAAkJQAAKCUAACrlAAAtpQAAMiUAADRlAAA5pQAAP2UAAAHlQAAEJUAACeVAAAxlQAAPZUAAEWVAABKlQAAU5UAAF6VAABolQAAcJUAAHiVAACGlQAAkJUAAJaVAACelQAAwZUAAMWVAADNlQAA2JUAANyVAADulQAA+5UAAAOWAAAMlgAAFZYAACSWAAA2lgAAUZYAAHWWAACFlgAAnJYAAKeWAACylgAAvZYAAMWWAADdlgAA55YAAPSWAAD/lgAADJcAABiXAAAhlwAALJcAADmXAABElwAAYZcAAG2XAAB+lwAAhZcAAJGXAACqlwAAuJcAAMSXAADXlwAA6JcAAPKXAAD4lwAA/pcAAA2YAAASmAAAG5gAACGYAAA0mAAAQZgAAE6YAABUmAAAXJgAAGmYAAB1mAAAgJgAAIyYAACRmAAAoJgAAKaYAACsmAAAsZgAALuYAADGmAAAy5gAANOYAADdmAAA5JgAAOuYAADxmAAA+JgAACeZAAA0mQAAOpkAAEyZAABtmQAAg5kAAKeZAADomQAADJoAACiaAAAwmgAAOpoAAEWaAABMmgAAWpoAAH2aAACYmgAAo5oAALOaAADXmgAA35oAAPWaAAD+mgAAApsAAA6bAAAZmwAAIZsAACqbAAA1mwAAOpsAAESbAABLmwAAVpsAAGWbAABqmwAAgZsAAIqbAACdmwAAppsAALCbAAC2mwAAx5sAAM+bAADSmwAA25sAAOebAADumwAA+JsAAAGcAAAKnAAAFZwAACKcAAAunAAAOZwAAECcAABMnAAAU5wAAFicAABcnAAAY5wAAG+cAACGnAAAkpwAAJ6cAACynAAAvZwAAMecAADNnAAA0pwAANmcAADonAAA85wAAAqdAAArnQAAM50AAEGdAABRnQAAXJ0AAGWdAABtnQAAd50AAISdAACLnQAAkZ0AAKCdAACnnQAAsZ0AAMKdAADOnQAA2J0AAOGdAADsnQAA850AAP6dAAAGngAADZ4AACqeAAA3ngAAPJ4AAEmeAABQngAAVp4AAGWeAABxngAAgZ4AAJ+eAACkngAAqp4AAPmeAAABnwAACZ8AABSfAAAbnwAAKJ8AADWfAAA/nwAASZ8AAE6fAABUnwAAX58AAGmfAABtnwAAgJ8AAI6fAACcnwAAo58AAKyfAAC7nwAAwZ8AAM6fAADenwAA5Z8AAPKfAAD7nwAACKAAAA+gAAAXoAAAGqAAAB6gAAAioAAAJaAAACmgAAAtoAAASqAAAGOgAABtoAAAeaAAAJSgAAC3oAAA0KAAAPqgAAAHoQAAE6EAABuhAAAloQAAMaEAADuhAABSoQAAYaEAAGyhAAB6oQAAhKEAAJGhAACcoQAAoKEAAKOhAAC5oQAAyKEAAM2hAABWAAAAWgAAAGYAAABpAAAAbgAAAI8AAACQAAAAkQAAAJIAAACTAAAAlAAAAJUAAACWAAAAlwAAAJgAAACZAAAAmgAAAJsAAACcAAAAnQAAAJ4AAACfAAAAoAAAAKEAAACiAAAAowAAAKQAAAClAAAApgAAAKcAAACoAAAAqQAAAKoAAACrAAAArAAAAK0AAACuAAAArwAAALAAAACxAAAAsgAAALMAAAC0AAAAtQAAALYAAAC3AAAAuAAAALkAAAC6AAAAuwAAALwAAAC9AAAAvgAAAL8AAADAAAAAwQAAAMIAAADDAAAAxAAAAMUAAADGAAAAxwAAAMgAAADJAAAAygAAAMsAAADMAAAAzQAAAM4AAADPAAAA0AAAANEAAADSAAAA0wAAANQAAADWAAAA1wAAANgAAADaAAAA2wAAANwAAADdAAAA3gAAAN8AAADgAAAA4QAAAOIAAADjAAAA5AAAAOUAAADmAAAA5wAAAOgAAADpAAAA+gAAAA0BAAAbAQAAHAEAAB0BAAAeAQAAHwEAACABAAAhAQAAIgEAACMBAAAkAQAAWAAAAAAAAADwdAAAWwAAAAEAAAD4dAAAXAAAAAEAAAAAdQAAaQAAAAMAAAAAAAAAagAAAAMAAAAIdQAAawAAAAMAAAD4dAAAbAAAAAMAAAAQdQAAbQAAAAMAAAAYdQAAbgAAAAQAAAAAAAAAbwAAAAQAAAAgdQAAcAAAAAQAAAAodQAAcQAAAAQAAAAwdQAAcwAAAAQAAAA4dQAAcgAAAAQAAABAdQAAcwAAAAQAAABIdQAAdQAAAAUAAAAAAAAAdQAAAAgAAAAAAAAAdQAAAAoAAAAAAAAAigAAAAsAAABQdQAAdQAAABAAAAAAAAAAgAAAABoAAABYdQAAggAAABoAAABkdQAAhAAAABoAAAB0dQAAgwAAABoAAACUdQAAdQAAAB0AAAAAAAAAewAAAB0AAADwdAAAfwAAAB0AAAAodQAAhQAAAB0AAACkdQAAiQAAAB0AAACsdQAAjgAAADIAAAC4dQAAdQAAADMAAAAAAAAAfAAAADMAAAAIdQAAhQAAADMAAACkdQAAdQAAADQAAAAAAAAAhQAAADQAAAD4dAAAdQAAADUAAAAAAAAAewAAADoAAADwdAAAdQAAAD4AAAAAAAAAewAAAD4AAADwdAAAigAAAD4AAADAdQAAigAAAD4AAADIdQAAhQAAAD4AAABAdQAAhQAAAD4AAADQdQAAdQAAAEAAAAAAAAAAeAAAAEAAAADYdQAAeQAAAEAAAADsdQAAegAAAEAAAAD8dQAAewAAAEAAAADwdAAAfQAAAEAAAAAIdgAAfwAAAEAAAAAodQAAgQAAAEAAAAAwdQAAhQAAAEAAAACkdQAAiAAAAEAAAAAYdgAAiQAAAEAAAACsdQAAigAAAEAAAAAgdgAAhQAAAEAAAAAodgAAhQAAAEAAAAD4dAAAhwAAAEAAAAAwdgAAiwAAAEAAAAA8dgAAigAAAEAAAABIdgAAjAAAAEAAAABQdgAAjQAAAEAAAABcdgAAhQAAAEAAAABkdgAAhQAAAEAAAABsdgAAhQAAAEAAAAB0dgAAhgAAAEAAAAB8dgAAiAAAAEAAAACIdgAAdgAAAEEAAACQdgAAdwAAAEEAAACYdgAAewAAAEEAAADwdAAAfwAAAEEAAAAodQAAhQAAAEEAAACgdgAAhQAAAEEAAAAodgAAhQAAAEEAAAD4dAAAhQAAAEEAAABsdgAAjgAAAEEAAAC4dQAAdQAAAEQAAAAAAAAAhQAAAEYAAACodgAAhQAAAEgAAAD4dAAAigAAAEgAAACwdgAAhQAAAEkAAAD4dAAAdQAAAEwAAAAAAAAAdQAAAE0AAAAAAAAAhQAAAE0AAAD4dAAAhQAAAFAAAABAdQAAhQAAAFcAAAD4dAAAhQAAAFgAAAC4dgAAewAAAFsAAADwdAAAhQAAAFsAAAD4dAAAewAAAF0AAADwdAAA+gAAAF4AAAAAAAAA/AAAAF4AAADwdAAA/QAAAF4AAADAdgAA/gAAAF4AAAAodQAA/wAAAF4AAADMdgAAAAEAAF4AAADYdgAAAQEAAF4AAADodgAAAgEAAF4AAAD8dgAAAwEAAF4AAAAIdwAAAwEAAF4AAADodAAAAwEAAF4AAAAQdwAAAwEAAF4AAAAYdwAACgEAAF4AAAAgdwAAAwEAAF4AAAAodwAABgEAAF4AAAAwdwAABwEAAF4AAAA4dwAAAwEAAF4AAABEdwAAAwEAAF4AAABMdwAABgEAAF4AAABUdwAAAwEAAF4AAABcdwAAAwEAAF4AAABkdwAAAwEAAF4AAAAodgAABgEAAF4AAABsdwAAAwEAAF4AAAD4dAAABAEAAF4AAAAQdQAABgEAAF4AAAB0dwAABgEAAF4AAABIdgAACAEAAF4AAAB8dwAACQEAAF4AAABQdgAAAwEAAF4AAACIdwAABQEAAF4AAACQdwAABgEAAF4AAACgdwAABgEAAF4AAACodwAABgEAAF4AAACwdwAAAwEAAF4AAADgdAAABgEAAF4AAABQdQAAAwEAAF4AAABAdQAACwEAAF4AAAC4dQAAAwEAAF4AAAC4dwAAAwEAAF4AAADAdwAADQEAAF8AAAAAAAAADgEAAF8AAAAgdQAADwEAAF8AAADwdAAAEAEAAF8AAAAIdQAAEQEAAF8AAADIdwAAFQEAAF8AAADQdwAAEgEAAF8AAAAQdwAAFwEAAF8AAADcdwAAGAEAAF8AAAAgdwAAEgEAAF8AAACkdQAAEwEAAF8AAAAYdgAAFAEAAF8AAACsdQAAFgEAAF8AAADkdwAAEgEAAF8AAACgdgAAEgEAAF8AAAAodgAAEgEAAF8AAAD4dAAAGAEAAF8AAABcdgAAGQEAAF8AAADsdwAAGgEAAF8AAAD4dwAAFwEAAF8AAAAEeAAAdQAAAGAAAAAAAAAAhQAAAGAAAAAMeAAABQADAIUBAAAFAAMAjAEAAAkACQDuAAAACwADAFMBAAALAAMAEAIAAAsAAwBaAgAACwADAJkCAAAMAEAA8AAAAAwAAwDxAAAADQBAAOoAAAAUAAIAcAEAABQAAwDaAQAAFAADAKgCAAAYAAIASwIAABgAAgB3AgAAGAACAK0CAAAYAAIAsAIAABkAAwDfAQAAGQADAJgCAAAqACoAQQIAADIANAD0AAAA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RQAnACUCAABGACoAJQIAAEYAfwBqAgAARwBMAKUBAABIACgA8QEAAEgAfwBqAgAASQBQAJUBAABKAFoARAAAAEoAbwA/AQAASgCCAPgBAABKAFEABgIAAEoAJQBEAgAASgAlAFcCAABKAAMAdwIAAEsAWgBEAAAATACCANUBAABMACUAJgIAAE0AkAA9AQAATQAmAKEBAABNAIIA+AEAAE0AUQAGAgAATQADAHcCAABOAGEARAAAAE8AMwCrAgAAUAB8AEQAAABQAHQAPQEAAFAAcQA+AQAAUAA2AIoBAABQAGcAjgEAAFAAMQCRAQAAUAA/AAcCAABQADEACAIAAFAAZwATAgAAUABnADoCAABRAFoARAAAAFEAPgBWAQAAUQBOAH4BAABRADoAXQIAAFEAEACKAgAAUgBaAEQAAABSAJMAhwEAAFIAlACLAQAAUgB6AIYCAABTAFoARAAAAFMAWgBdAgAAVABaAEMAAABUAFoARAAAAFQAWgAzAQAAVAA8ADQBAABUAHEANQEAAFQAPACBAQAAVACVANMBAABUAHQAFgIAAFQAgQAZAgAAVAA4AFICAABUAHEAZwIAAFQAWgBpAgAAVABWAHsCAABVAH4ARAAAAFUAMwCrAgAAVgB+AEQAAABWAGcAOQIAAFcAdgBEAAAAVwArAL0BAABYAFoARAAAAFkAeABEAAAAWgBaAEQAAABaADEAMQEAAFoAVAAzAQAAWgCEADQBAABaACkANQEAAFoADgA2AQAAWgANADcBAABaAC4AOQEAAFoAOQA6AQAAWgAaADwBAABaAIsAQAEAAFoAeQBKAQAAWgA9AE0BAABaAI4ATgEAAFoAVQBRAQAAWgBeAFUBAABaAFoAWwEAAFoAMwBcAQAAWgAbAF4BAABaAFoAXwEAAFoAaABhAQAAWgBaAGMBAABaAIkAaQEAAFoAfQB6AQAAWgAKAIMBAABaABgAlAEAAFoAGACaAQAAWgBBAJwBAABaABcAoAEAAFoAjADWAQAAWgArANgBAABaACAA2wEAAFoAiwDhAQAAWgBaAOQBAABaAGYA5QEAAFoAYADoAQAAWgCKAO4BAABaAHsA8QEAAFoAMAAKAgAAWgBpAA0CAABaABQAHgIAAFoAHAAuAgAAWgAzAC8CAABaADQALwIAAFoANQAwAgAAWgA4AE8CAABaAHcA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AAcsInVpZCI6AAgsInVwTXMiOgAHLCJ2aWEiOgAZLCJ2aWEiOiJldmVudHMiLCJldmVudHMiOgAMLCJ3YWl0ZWRNcyI6AAssIndpbmRvd3MiOgABLwAFMC42LjAAAjogAAU6dHJ1ZQAIPGNsaW5pdD4ABjxpbml0PgACPjsAAz47KQAEPjspVgAPQTExeUV2ZW50cy5qYXZhADJBQ1RJT05fQUNDRVNTSUJJTElUWV9GT0NVUyB3YXMgcmVmdXNlZCBieSB0aGUgbm9kZQAhQUNUSU9OX0FSR1VNRU5UX1NFTEVDVElPTl9FTkRfSU5UACNBQ1RJT05fQVJHVU1FTlRfU0VMRUNUSU9OX1NUQVJUX0lOVAAlQUNUSU9OX0FSR1VNRU5UX1NFVF9URVhUX0NIQVJTRVFVRU5DRQAkQUNUSU9OX0NMSUNLIHdhcyByZWZ1c2VkIGJ5IHRoZSBub2RlACxBQ1RJT05fU0VUX1NFTEVDVElPTiB3YXMgcmVmdXNlZCBieSB0aGUgbm9kZQAnQUNUSU9OX1NFVF9URVhUIHdhcyByZWZ1c2VkIGJ5IHRoZSBub2RlAAVBU0NJSQAbQVRGIGF1ZGl0IGNvdWxkIG5vdCBzdGFydDogABJBVEYgYXVkaXQgZmFpbGVkOiAAHUFURiBlbnRyeSBjbGFzcyBub3QgZm91bmQgaW4gABFBbHJlYWR5IGNvbm5lY3RlZAAIQXRmLmphdmEAAUMACENBUEFDSVRZAAJDSQATQ09OVEVOVF9DSEFOR0VfVEVYVAABRAACREwAA0RMRAAFRU5UUlkAEEVfQVhfVU5BVkFJTEFCTEUADUVfQkFEX1JFUVVFU1QABUVfSElEAApFX0lOVEVSTkFMAARFX0lPAAxFX05PX0VMRU1FTlQADUVfVU5TVVBQT1JURUQABUVudHJ5AAFGABJHRVNUVVJFX01BWF9GUkFNRVMADkdFU1RVUkVfTUFYX01TAAFJAANJSUkAAklMAANJTEkAA0lMTAABSgACSkQAAkpKAANKSkoAAkpMAANKTEoACUpzb24uamF2YQABTAACTEMAAkxGAAlMRkZGRkpJSkoAB0xGRklKSloABExGRkwAAkxJAANMSUkABkxJSUlKWgARTElWRV9SRUdJT05fREVQVEgAAkxKAAVMSklGRgADTEpKAAdMSkpJRkZJAAdMSkpJSUxJAA9MSkpJSUxMSUlGRklJSUkAAkxMAAVMTERKSgAETExGRgADTExJAARMTElJAANMTEwABExMTEwABExMTFoAA0xMWgACTFoAN0xhbmRyb2lkL2FjY2Vzc2liaWxpdHlzZXJ2aWNlL0FjY2Vzc2liaWxpdHlTZXJ2aWNlSW5mbzsAN0xhbmRyb2lkL2FwcC9VaUF1dG9tYXRpb24kT25BY2Nlc3NpYmlsaXR5RXZlbnRMaXN0ZW5lcjsAGkxhbmRyb2lkL2FwcC9VaUF1dG9tYXRpb247ABlMYW5kcm9pZC9jb250ZW50L0NvbnRleHQ7AChMYW5kcm9pZC9ncmFwaGljcy9CaXRtYXAkQ29tcHJlc3NGb3JtYXQ7ABlMYW5kcm9pZC9ncmFwaGljcy9CaXRtYXA7ABdMYW5kcm9pZC9ncmFwaGljcy9SZWN0OwAaTGFuZHJvaWQvb3MvQnVpbGQkVkVSU0lPTjsAEkxhbmRyb2lkL29zL0J1aWxkOwATTGFuZHJvaWQvb3MvQnVuZGxlOwAaTGFuZHJvaWQvb3MvSGFuZGxlclRocmVhZDsAE0xhbmRyb2lkL29zL0xvb3BlcjsAFExhbmRyb2lkL29zL1Byb2Nlc3M7ABhMYW5kcm9pZC9vcy9TeXN0ZW1DbG9jazsAFUxhbmRyb2lkL3V0aWwvQmFzZTY0OwAdTGFuZHJvaWQvdXRpbC9EaXNwbGF5TWV0cmljczsAFkxhbmRyb2lkL3ZpZXcvRGlzcGxheTsAGUxhbmRyb2lkL3ZpZXcvSW5wdXRFdmVudDsAF0xhbmRyb2lkL3ZpZXcvS2V5RXZlbnQ7AChMYW5kcm9pZC92aWV3L01vdGlvbkV2ZW50JFBvaW50ZXJDb29yZHM7ACxMYW5kcm9pZC92aWV3L01vdGlvbkV2ZW50JFBvaW50ZXJQcm9wZXJ0aWVzOwAaTGFuZHJvaWQvdmlldy9Nb3Rpb25FdmVudDsAL0xhbmRyb2lkL3ZpZXcvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5RXZlbnQ7AEZMYW5kcm9pZC92aWV3L2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU5vZGVJbmZvJEFjY2Vzc2liaWxpdHlBY3Rpb247ADJMYW5kcm9pZC92aWV3L2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU5vZGVJbmZvOwA0TGFuZHJvaWQvdmlldy9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlXaW5kb3dJbmZvOwAiTGRhbHZpay9hbm5vdGF0aW9uL0VuY2xvc2luZ0NsYXNzOwAjTGRhbHZpay9hbm5vdGF0aW9uL0VuY2xvc2luZ01ldGhvZDsAHkxkYWx2aWsvYW5ub3RhdGlvbi9Jbm5lckNsYXNzOwAhTGRhbHZpay9hbm5vdGF0aW9uL01lbWJlckNsYXNzZXM7ACRMZGFsdmlrL2Fubm90YXRpb24vTWV0aG9kUGFyYW1ldGVyczsAHUxkYWx2aWsvYW5ub3RhdGlvbi9TaWduYXR1cmU7ABpMZGFsdmlrL2Fubm90YXRpb24vVGhyb3dzOwAeTGRhbHZpay9zeXN0ZW0vRGV4Q2xhc3NMb2FkZXI7AB1MamF2YS9pby9CdWZmZXJlZElucHV0U3RyZWFtOwAYTGphdmEvaW8vQnVmZmVyZWRSZWFkZXI7AB9MamF2YS9pby9CeXRlQXJyYXlPdXRwdXRTdHJlYW07ABhMamF2YS9pby9GaWxlRGVzY3JpcHRvcjsAGkxqYXZhL2lvL0ZpbGVPdXRwdXRTdHJlYW07ABVMamF2YS9pby9JT0V4Y2VwdGlvbjsAFUxqYXZhL2lvL0lucHV0U3RyZWFtOwAbTGphdmEvaW8vSW5wdXRTdHJlYW1SZWFkZXI7ABZMamF2YS9pby9PdXRwdXRTdHJlYW07ABVMamF2YS9pby9QcmludFN0cmVhbTsAEExqYXZhL2lvL1JlYWRlcjsAE0xqYXZhL2xhbmcvQm9vbGVhbjsAGExqYXZhL2xhbmcvQ2hhclNlcXVlbmNlOwARTGphdmEvbGFuZy9DbGFzczsAF0xqYXZhL2xhbmcvQ2xhc3NMb2FkZXI7ACJMamF2YS9sYW5nL0NsYXNzTm90Rm91bmRFeGNlcHRpb247ABJMamF2YS9sYW5nL0RvdWJsZTsAFUxqYXZhL2xhbmcvRXhjZXB0aW9uOwARTGphdmEvbGFuZy9GbG9hdDsAE0xqYXZhL2xhbmcvSW50ZWdlcjsAIExqYXZhL2xhbmcvSW50ZXJydXB0ZWRFeGNlcHRpb247ABBMamF2YS9sYW5nL01hdGg7ACFMamF2YS9sYW5nL05vU3VjaE1ldGhvZEV4Y2VwdGlvbjsAEkxqYXZhL2xhbmcvT2JqZWN0OwAUTGphdmEvbGFuZy9SdW5uYWJsZTsAEkxqYXZhL2xhbmcvU3RyaW5nOwAZTGphdmEvbGFuZy9TdHJpbmdCdWlsZGVyOwASTGphdmEvbGFuZy9TeXN0ZW07ABJMamF2YS9sYW5nL1RocmVhZDsAFUxqYXZhL2xhbmcvVGhyb3dhYmxlOwAZTGphdmEvbGFuZy9yZWZsZWN0L0FycmF5OwAfTGphdmEvbGFuZy9yZWZsZWN0L0NvbnN0cnVjdG9yOwAtTGphdmEvbGFuZy9yZWZsZWN0L0ludm9jYXRpb25UYXJnZXRFeGNlcHRpb247ABpMamF2YS9sYW5nL3JlZmxlY3QvTWV0aG9kOwAaTGphdmEvbmlvL2NoYXJzZXQvQ2hhcnNldDsAFkxqYXZhL3V0aWwvQXJyYXlEZXF1ZTsAFkxqYXZhL3V0aWwvQXJyYXlEZXF1ZTwAFUxqYXZhL3V0aWwvQXJyYXlMaXN0OwAUTGphdmEvdXRpbC9JdGVyYXRvcjsAEExqYXZhL3V0aWwvTGlzdDsAEExqYXZhL3V0aWwvTGlzdDwALUxuei9jby9kZWxhY291ci93YXJkZW4vdWlhZC9BMTF5RXZlbnRzJEVudHJ5OwAyTG56L2NvL2RlbGFjb3VyL3dhcmRlbi91aWFkL0ExMXlFdmVudHMkTm9kZVdyaXRlcjsAJ0xuei9jby9kZWxhY291ci93YXJkZW4vdWlhZC9BMTF5RXZlbnRzOwAgTG56L2NvL2RlbGFjb3VyL3dhcmRlbi91aWFkL0F0ZjsAIUxuei9jby9kZWxhY291ci93YXJkZW4vdWlhZC9Kc29uOwAjTG56L2NvL2RlbGFjb3VyL3dhcmRlbi91aWFkL01haW4kMTsAIUxuei9jby9kZWxhY291ci93YXJkZW4vdWlhZC9NYWluOwAiTG56L2NvL2RlbGFjb3VyL3dhcmRlbi91aWFkL1VpYSQxOwAiTG56L2NvL2RlbGFjb3VyL3dhcmRlbi91aWFkL1VpYSQyOwAoTG56L2NvL2RlbGFjb3VyL3dhcmRlbi91aWFkL1VpYSRPcEVycm9yOwAwTG56L2NvL2RlbGFjb3VyL3dhcmRlbi91aWFkL1VpYSRTbmFwc2hvdE9wdGlvbnM7ACVMbnovY28vZGVsYWNvdXIvd2FyZGVuL3VpYWQvVWlhJFdhbGs7ACBMbnovY28vZGVsYWNvdXIvd2FyZGVuL3VpYWQvVWlhOwAUTG9yZy9qc29uL0pTT05BcnJheTsAGExvcmcvanNvbi9KU09ORXhjZXB0aW9uOwAVTG9yZy9qc29uL0pTT05PYmplY3Q7AAVNT0RFTAAJTWFpbi5qYXZhAApOb2RlV3JpdGVyAAdPcEVycm9yAANQTkcACFBST1RPQ09MAAdSRUxFQVNFAAdTREtfSU5UAAxTVE9QX1NVQlRSRUUAD1NuYXBzaG90T3B0aW9ucwAEVFlQRQAIVVMtQVNDSUkABVVURi04AD1VaUF1dG9tYXRpb24oTG9vcGVyLCBJVWlBdXRvbWF0aW9uQ29ubmVjdGlvbikgbWlzc2luZyBvbiBBUEkgAC9VaUF1dG9tYXRpb25Db25uZWN0aW9uIGlzIG5vdCByZWFjaGFibGUgb24gQVBJIAAIVWlhLmphdmEAAVYAB1ZFUlNJT04AAlZJAAVWSUlJSQACVkoABVZKSUxJAAdWSkpJSUlJAAhWSkpJSUxJWgAFVkpMTEoAAlZMAANWTEkABlZMSUlJWgADVkxMAARWTExMAAVWTExMTAAEVkxMWgADVkxaAAJWWgAEV2FsawABWgACWkQAAlpJAANaSUkAA1pJTAACWkwAA1pMSQAEWkxJSQAEWkxJTAADWkxKAANaTEwAA1pMWgAFWkxaTEwABVpMWkxaAAJbQgACW0kAAltKAClbTGFuZHJvaWQvdmlldy9Nb3Rpb25FdmVudCRQb2ludGVyQ29vcmRzOwAtW0xhbmRyb2lkL3ZpZXcvTW90aW9uRXZlbnQkUG9pbnRlclByb3BlcnRpZXM7ADNbTGFuZHJvaWQvdmlldy9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlOb2RlSW5mbzsAEltMamF2YS9sYW5nL0NsYXNzOwATW0xqYXZhL2xhbmcvT2JqZWN0OwATW0xqYXZhL2xhbmcvU3RyaW5nOwAEW1tbRgACXCIAAlxcAAJcbgACXHIAAlx0AAJcdQALXSwiY3Vyc29yIjoADl0sInRydW5jYXRlZCI6AAJdfQAgYSBnZXN0dXJlIGxhc3RzIGF0IG1vc3QgNjAwMDAgbXMAGWEgcGF0aCBoYXMgMS4uMTAwMCBwb2ludHMAFGExMXkgZXZlbnQgc2tpcHBlZDogAAphMTF5RXZlbnRzAAthMTF5Rm9jdXNlZAAKYWNjZXNzJDAwMAAKYWNjZXNzJDEwMAAKYWNjZXNzJDIwMAAKYWNjZXNzJDMwMgAKYWNjZXNzJDQwOAALYWNjZXNzRmxhZ3MAC2FjdGlvbkNsaWNrAAxhY3Rpb25TY3JvbGwABmFjdGl2ZQAKYWN0aXZlUm9vdAADYWRkAAhhZGRGb2N1cwAHYWRkTGFzdAAPYWR2ZXJ0aXNlc0NsaWNrAANhbGwAKGFsbCBwYXRocyBuZWVkIHRoZSBzYW1lIG51bWJlciBvZiBwb2ludHMAEmFscmVhZHkgcmVnaXN0ZXJlZAAaYW5kcm9pZC5hcHAuQWN0aXZpdHlUaHJlYWQAI2FuZHJvaWQuYXBwLklVaUF1dG9tYXRpb25Db25uZWN0aW9uACJhbmRyb2lkLmFwcC5VaUF1dG9tYXRpb25Db25uZWN0aW9uAC1hbmRyb2lkLmhhcmR3YXJlLmRpc3BsYXkuRGlzcGxheU1hbmFnZXJHbG9iYWwADGFubm91bmNlbWVudAAGYXBwZW5kAA1hcHBlbmRBY3Rpb25zAAJhdAADYXRmAAVhdWRpdAAMYXdhaXRGb2N1c2VkAAhiYWNrd2FyZAAKYmFkIHBhdGg6IAAKYmFkR2VzdHVyZQAMYm9vbGVhblZhbHVlAAZib3R0b20ABmJ1ZmZlcgANY2FuY2VsR2VzdHVyZQAFY2hhaW4ABmNoYXJBdAAJY2hlY2thYmxlAAdjaGVja2VkAAVjbGFzcwAKY2xlYXJDYWNoZQAFY2xpY2sACWNsaWNrYWJsZQARY2xpY2thYmxlQW5jZXN0b3IABWNsb3NlAARjb2RlAAxjb2xsZWN0U3RvcHMACGNvbXByZXNzAAdjb25uZWN0AAljb25uZWN0KCkADGNvbm5lY3QoaW50KQAJY29ubmVjdE1zAApjb25uZWN0VmlhAA5jb25uZWN0X2ZhaWxlZAAIY29udGFpbnMAB2NvbnRleHQACGNvbnRyYXN0AAVjb3VudAARY3VycmVudFRpbWVNaWxsaXMABmN1cnNvcgAFZGVidWcAB2RlbnNpdHkABGRlc2MAB2Rlc3Ryb3kAA2RpcgAfZGlyIG11c3QgYmUgZm9yd2FyZCBvciBiYWNrd2FyZAAYZGlyIG11c3QgYmUgbmV4dCBvciBwcmV2AAhkaXNhYmxlZAAKZGlzY29ubmVjdAAHZGlzcGxheQAMZGlzcGxheUVycm9yAARkdW1wAApkdXJhdGlvbk1zAAhlZGl0YWJsZQAOZW5jb2RlVG9TdHJpbmcABWVudHJ5AAZlcXVhbHMAA2VycgAJZXJyb3JKc29uAApldmVudENvdW50AA9ldmVudENvdW50U2luY2UACWV2ZW50TG9jawAKZXZlbnRUeXBlcwAEZXhpdAAFZmllbGQAImZpbmRBY2Nlc3NpYmlsaXR5Tm9kZUluZm9zQnlWaWV3SWQACWZpbmRGb2N1cwANZmlyc3ROb25FbXB0eQAEZmxhZwAFZmxhZ3MABWZsdXNoAAVmb2N1cwALZm9jdXNCdWZmZXIAC2ZvY3VzQ3Vyc29yAAlmb2N1c0pzb24ACWZvY3VzYWJsZQAHZm9jdXNlZAAMZm9jdXNlZElucHV0AAdmb3JOYW1lAAdmb3J3YXJkAAdmcmFtZU1zABxmcmFtZU1zIG11c3QgYmUgaW4gKDAsIDEwMDBdAAVmcmVzaAAJZnJlc2hSb290AAVnYXBNcwAHZ2VzdHVyZQAhZ2VzdHVyZSBmYWlsZWQgYmVmb3JlIGFueSBpbnB1dDogABpnZXN0dXJlIGludGVycnVwdGVkIGFmdGVyIAAaZ2VzdHVyZSB0YWtlcyAxIG9yIDIgcGF0aHMADGdlc3R1cmVFdmVudAADZ2V0AA1nZXRBY3Rpb25MaXN0ABFnZXRCb3VuZHNJblNjcmVlbgAIZ2V0Qnl0ZXMACGdldENhdXNlAAhnZXRDaGlsZAANZ2V0Q2hpbGRDb3VudAAIZ2V0Q2xhc3MADmdldENsYXNzTG9hZGVyAAxnZXRDbGFzc05hbWUAFWdldENvbnRlbnRDaGFuZ2VUeXBlcwAVZ2V0Q29udGVudERlc2NyaXB0aW9uABZnZXREZWNsYXJlZENvbnN0cnVjdG9yABFnZXREZWNsYXJlZE1ldGhvZAAJZ2V0RG91YmxlAA9nZXREcmF3aW5nT3JkZXIADGdldEV2ZW50VHlwZQAJZ2V0SGVpZ2h0AAtnZXRIaW50VGV4dAAFZ2V0SWQAC2dldEluc3RhbmNlAAZnZXRJbnQADGdldEpTT05BcnJheQANZ2V0SlNPTk9iamVjdAAIZ2V0TGFiZWwACGdldExheWVyAA1nZXRMaXZlUmVnaW9uAAlnZXRMb29wZXIACmdldE1lc3NhZ2UACWdldE1ldGhvZAAHZ2V0TmFtZQAOZ2V0UGFja2FnZU5hbWUACWdldFBhcmVudAAOZ2V0UmVhbERpc3BsYXkADmdldFJlYWxNZXRyaWNzAAdnZXRSb290ABVnZXRSb290SW5BY3RpdmVXaW5kb3cAC2dldFJvdGF0aW9uAA5nZXRTZXJ2aWNlSW5mbwAJZ2V0U291cmNlAAlnZXRTdHJpbmcAEGdldFN5c3RlbUNvbnRleHQAB2dldFRleHQAE2dldFRleHRTZWxlY3Rpb25FbmQAFWdldFRleHRTZWxlY3Rpb25TdGFydAAIZ2V0VGl0bGUAB2dldFR5cGUAFWdldFZpZXdJZFJlc291cmNlTmFtZQAIZ2V0V2lkdGgACmdldFdpbmRvd3MABmhhbmRsZQADaGFzAAdoYXNOZXh0AAloYXNTcGVlY2gACGhhc2hDb2RlAAZoZWFsdGgABmhlaWdodAAMaGVpZ2h0UGl4ZWxzAAhoZWxkVGV4dAAEaGludAAGaG9sZE1zACFob2xkTXMgYW5kIHJlbGVhc2VNcyBtdXN0IGJlID49IDAAAmlkAAZpZGxlTXMACWltcG9ydGFudAACaW4AEGluY2x1ZGVJbnZpc2libGUAC2luaXREaXNwbGF5AAZpbmplY3QAB2luamVjdDIAB2luamVjdDMADWluamVjdEdlc3R1cmUAEGluamVjdElucHV0RXZlbnQAGWluamVjdElucHV0RXZlbnQgZmFpbGVkOiAAImluamVjdElucHV0RXZlbnQgcmVmdXNlZCB0aGUgZXZlbnQADmluamVjdExvb2tlZFVwABVpbmplY3ROb0FuaW1hdGlvbldhaXQACWluamVjdE9uZQAJaW50ZXJzZWN0AAlpbnZpc2libGUABmludm9rZQAWaXNBY2Nlc3NpYmlsaXR5Rm9jdXNlZAAIaXNBY3RpdmUAC2lzQ2hlY2thYmxlAAlpc0NoZWNrZWQAC2lzQ2xpY2thYmxlAAppc0VkaXRhYmxlAAdpc0VtcHR5AAlpc0VuYWJsZWQAC2lzRm9jdXNhYmxlAAlpc0ZvY3VzZWQAG2lzSW1wb3J0YW50Rm9yQWNjZXNzaWJpbGl0eQAKaXNJbmZpbml0ZQAPaXNMb25nQ2xpY2thYmxlAAVpc05hTgAKaXNQYXNzd29yZAAXaXNTY3JlZW5SZWFkZXJGb2N1c2FibGUADGlzU2Nyb2xsYWJsZQAKaXNTZWxlY3RlZAARaXNTaG93aW5nSGludFRleHQAD2lzVmlzaWJsZVRvVXNlcgAIaXRlcmF0b3IABGpvaW4ABGpzb24ADWtlZXBJbnZpc2libGUAA2tleQAHa2V5Q29kZQAEa2luZAARbGFyZ2VzdFNjcm9sbGFibGUAC2xhc3RFdmVudE1zAAtsYXN0SW5wdXRNcwAEbGVmdAAGbGVuZ3RoAAtsaXZlLXJlZ2lvbgAKbGl2ZVJlZ2lvbgAJbG9hZENsYXNzAApsb2FkZWRQYXRoAANsb2cADWxvbmdDbGlja2FibGUABGxvb3AABG1haW4AA21heAAIbWF4Tm9kZXMACW1ldGFTdGF0ZQADbWluAAZtb3Rpb24ACG15TG9vcGVyAAVteVBpZAAFbXlVaWQABG5hbWUABW5hbWVzAC1uZWl0aGVyIHRoZSBub2RlIG5vciBhbiBhbmNlc3RvciBpcyBjbGlja2FibGUAC25ld0luc3RhbmNlAARuZXh0ABBubyBmb2N1c2VkIGlucHV0AB9ubyBmb2N1c2VkIGlucHV0IHRvIHNldCB0ZXh0IG9uABRubyBub2RlIGF0IHRoZSBwb2ludAAibm8gcm9vdCBub2RlIGZvciB0aGUgYWN0aXZlIHdpbmRvdwA/bm8gcm9vdCBub2RlIGZvciB0aGUgYWN0aXZlIHdpbmRvdyAoVWlBdXRvbWF0aW9uIHJldHVybmVkIG51bGwpACJubyBzY3JlZW4gcmVhZGVyIHN0b3AgYXQgdGhlIHBvaW50ABpubyB3aW5kb3cgd2l0aCBhIHJvb3Qgbm9kZQAGbm9kZUF0AAhub2RlSnNvbgAJbm9kZVJlcGx5AAVub2RlcwAMbm90SW1wb3J0YW50ACFub3RoaW5nIGhvbGRzIGFjY2Vzc2liaWxpdHkgZm9jdXMAGW5vdGhpbmcgb24gc2NyZWVuIHNjcm9sbHMACW5vdGlmeUFsbAAObnVsbCByb290IG5vZGUAIm56LmNvLmRlbGFjb3VyLndhcmRlbi5hdGYuQXRmQXVkaXQABm9idGFpbgAUb25BY2Nlc3NpYmlsaXR5RXZlbnQAB29uRXZlbnQAAm9wAApvcHRCb29sZWFuAAlvcHREb3VibGUABm9wdEludAAHb3B0TG9uZwAJb3B0U3RyaW5nAANvdXQACHBhc3N3b3JkAAVwYXRocwAJcGVla0ZpcnN0AA1wZXJmb3JtQWN0aW9uAANwa2cAFXBvaW50cyBtdXN0IGJlIGZpbml0ZQAHcHJlcGFyZQARcHJlcGFyZU1haW5Mb29wZXIAB3ByZXNzTXMACHByZXNzdXJlAARwcmV2AA9wdXRDaGFyU2VxdWVuY2UABnB1dEludAABcQAHcXVpZXRNcwAKcXVpdFNhZmVseQAFcXVvdGUACHJlYWRMaW5lAAdyZWN5Y2xlAAdyZWZyZXNoAAlyZWxlYXNlTXMAC3JlbW92ZUZpcnN0AApyZXNvdXJjZUlkAAlyZXRyeWFibGUABXJpZ2h0AApyb290V2FpdE1zAAVyb3VuZAADcnVuAAJzYgAFc2NvcGUACnNjcmVlbkpzb24AFXNjcmVlblJlYWRlckZvY3VzYWJsZQAKc2NyZWVuc2hvdAAKc2Nyb2xsYWJsZQASc2Nyb2xsYWJsZUFuY2VzdG9yAAlzZWxlY3RBbGwACHNlbGVjdGVkAARzZW5kAANzZXEABXNlcnZlAA1zZXRBY2Nlc3NpYmxlAAlzZXREYWVtb24AFXNldEludGVyYWN0aXZlV2luZG93cwAfc2V0T25BY2Nlc3NpYmlsaXR5RXZlbnRMaXN0ZW5lcgAGc2V0T3V0AAxzZXRTZWxlY3Rpb24ADnNldFNlcnZpY2VJbmZvAAlzZXRTb3VyY2UAB3NldFRleHQABnNldHRsZQAIc2h1dGRvd24AC3NpZ25pZmljYW50AAVzaW5jZQAEc2l6ZQANc2tpcEludmlzaWJsZQAFc2xlZXAACHNuYXBzaG90AA9zbmFwc2hvdE9wdGlvbnMACnNyQWN0aXZhdGUACHNyRXZlbnRzAAdzckZvY3VzAAlzckZvY3VzZWQABXN0YXJ0AAlzdGFydGVkTXMABnN0ZG91dAAFc3RlcHMAG3N0b2NrIHNlcnZpY2UgaW5mbyBmbGFncz0weAALc3RvcEluZGV4T2YAA3N0cgALc3ViU2VxdWVuY2UABXN3aXBlAARzeW5jAA1zeXN0ZW1Db250ZXh0AApzeXN0ZW1NYWluAA50YWtlU2NyZWVuc2hvdAAcdGFrZVNjcmVlbnNob3QgcmV0dXJuZWQgbnVsbAADdGFwAAR0ZXh0AE10aGUgdGV4dCBvZiBhIHBhc3N3b3JkIGZpZWxkIGlzIG5vdCByZWFkYWJsZSwgc28gaXQgY2Fubm90IGJlIGVkaXRlZCBpbiBwbGFjZQAGdGhpcyQwAAZ0aHJlYWQACXRpbWVvdXRNcwAFdGltZXMAC3RvQnl0ZUFycmF5AAt0b0hleFN0cmluZwAIdG9TdHJpbmcACHRvb2xUeXBlAAN0b3AABHRyaW0ACXRydW5jYXRlZAAIdHlwZVRleHQAAnVhABF1aWF1dG9tYXRpb25fYnVzeQAMdW5rbm93biBvcDogAAx1cHRpbWVNaWxsaXMABXZhbHVlAAd2YWx1ZU9mAA12aXNpYmxlQm91bmRzAAR3YWl0AAt3YXJkZW4tdWlhZAAOd2FyZGVuLXVpYWQtaW8ABXdpZHRoAAt3aWR0aFBpeGVscwAHd2luZG93cwALd2luZG93c0pzb24ABXdyaXRlAAZ3cml0ZXIAAXgAAngxAAJ4MgABeQACeTEAAnkyABt7ImJhY2tlbmQiOiJ1aWFkIiwic2NyZWVuIjoAF3siY2xpY2tlZCI6dHJ1ZSwibm9kZSI6AAh7ImNvZGUiOgAKeyJkb3duTXMiOgAZeyJldmVudCI6ImZhdGFsIiwiZXJyb3IiOgAheyJldmVudCI6ImZhdGFsIiwiZXJyb3IiOnsiY29kZSI6ABd7ImV2ZW50IjoibG9nIiwibGV2ZWwiOgAoeyJldmVudCI6InJlYWR5IiwicHJvdG9jb2wiOjEsInZlcnNpb24iOgALeyJldmVudHMiOlsACnsiZnJhbWVzIjoABnsiaWQiOgAIeyJraW5kIjoACnsibGVuZ3RoIjoACHsibm9kZSI6ABV7Im5vZGUiOm51bGwsImNvdW50IjoADXsibm9kZSI6bnVsbH0ACXsicXVpZXQiOgAMeyJzY3JvbGxlZCI6AAh7InRleHQiOgALeyJ2ZXJzaW9uIjoACXsid2lkdGgiOgACe30AAX0AFH0sImV2ZW50cyI6eyJjb3VudCI6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";
|
|
8
8
|
};
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { type A11yEventsRead } from "../a11y-events";
|
|
2
|
+
import type { DriverResult, Element, Logger, Point, ScreenInfo, Snapshot } from "../driver.types";
|
|
2
3
|
import type { GesturePlan } from "../gesture-geometry";
|
|
3
4
|
import type { SettleDetail } from "../settle";
|
|
4
5
|
import { type Clock } from "./android-device";
|
|
5
6
|
import type { UiadBackend } from "./uiad-backend";
|
|
6
7
|
import type { UiadSnapshotData } from "./uiad-protocol";
|
|
8
|
+
import { type SrEventsRead, type SrFocusRead } from "./uiad-screen-reader";
|
|
7
9
|
/**
|
|
8
10
|
* What the Android driver asks of `warden-uiad`, one method per thing the server does faster than `uiautomator dump`
|
|
9
11
|
* and `input`. Every method answers `undefined` when the server is not the way to do that call (it is off, it could
|
|
@@ -48,6 +50,28 @@ export type UiadOps = {
|
|
|
48
50
|
typeText(text: string): Maybe<void>;
|
|
49
51
|
/** replace the whole text of the focused input (`ACTION_SET_TEXT`); `undefined` = refused or no server */
|
|
50
52
|
setText(text: string): Maybe<void>;
|
|
53
|
+
/** announcements and live-region changes since a cursor (`a11yEvents` op, server 0.5.0+) */
|
|
54
|
+
a11yEvents(since?: number): Maybe<A11yEventsRead>;
|
|
55
|
+
/** move accessibility focus one stop (`dir`) or to the stop at a point (`srFocus` op, server 0.6.0+) */
|
|
56
|
+
srFocus(target: {
|
|
57
|
+
dir: "next" | "prev";
|
|
58
|
+
} | {
|
|
59
|
+
point: Point;
|
|
60
|
+
}): Maybe<SrFocusRead>;
|
|
61
|
+
/** the node holding accessibility focus (`srFocused`, 0.6.0+) */
|
|
62
|
+
srFocused(): Maybe<Element | undefined>;
|
|
63
|
+
/** `ACTION_CLICK` on the focused node's clickable ancestor (`srActivate`, 0.6.0+) */
|
|
64
|
+
srActivate(): Maybe<void>;
|
|
65
|
+
/** accessibility-focus moves since a cursor (`srEvents`, 0.6.0+) */
|
|
66
|
+
srEvents(since?: number): Maybe<SrEventsRead>;
|
|
67
|
+
/** `ACTION_CLICK` on the clickable node at a point, no touch injected (`actionClick`, 0.6.0+) */
|
|
68
|
+
actionClick(point: Point): Maybe<void>;
|
|
69
|
+
/** `ACTION_SCROLL_FORWARD|BACKWARD` on the scrollable at a point, else the largest on screen; answers whether it moved (`actionScroll`, 0.6.0+) */
|
|
70
|
+
actionScroll(dir: "forward" | "backward", point?: Point): Maybe<boolean>;
|
|
71
|
+
/** run the Accessibility Test Framework on the active window (`audit` op, server 0.5.0+); `undefined` = no server */
|
|
72
|
+
audit(opts: {
|
|
73
|
+
contrast: boolean;
|
|
74
|
+
}): Maybe<unknown>;
|
|
51
75
|
stop(): Promise<void>;
|
|
52
76
|
};
|
|
53
77
|
export type UiadOpsDeps = {
|
|
@@ -55,6 +79,8 @@ export type UiadOpsDeps = {
|
|
|
55
79
|
baseScreen: ScreenInfo;
|
|
56
80
|
clock: Clock;
|
|
57
81
|
log?: Logger;
|
|
82
|
+
/** puts `warden-atf.jar` on the device and names it; without it `audit` answers `undefined` */
|
|
83
|
+
atf?: () => DriverResult<string> | Promise<Res<string>>;
|
|
58
84
|
};
|
|
59
85
|
/** The `Snapshot` the driver builds from a server reply: the same tree the dump of that screen gives. */
|
|
60
86
|
export declare function snapshotFromUiad(data: UiadSnapshotData, baseScreen: ScreenInfo, takenAt: number): Snapshot;
|
|
@@ -36,6 +36,14 @@ export type UiadNode = {
|
|
|
36
36
|
editable?: boolean;
|
|
37
37
|
disabled?: boolean;
|
|
38
38
|
invisible?: boolean;
|
|
39
|
+
/** holds the accessibility (TalkBack) focus */
|
|
40
|
+
a11yFocused?: boolean;
|
|
41
|
+
/** `importantForAccessibility` resolved to "no"; absent means screen readers see the node */
|
|
42
|
+
notImportant?: boolean;
|
|
43
|
+
/** `AccessibilityNodeInfo.getLiveRegion()`: 1 polite, 2 assertive; absent for none */
|
|
44
|
+
live?: 1 | 2;
|
|
45
|
+
/** labels of the app-defined accessibility actions (the framework's own are left out by the server) */
|
|
46
|
+
actions?: string[];
|
|
39
47
|
/** drawing order among siblings */
|
|
40
48
|
order?: number;
|
|
41
49
|
children?: UiadNode[];
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Result } from "../../../../types/src/result";
|
|
2
|
+
import type { Element, ScreenInfo } from "../driver.types";
|
|
3
|
+
/**
|
|
4
|
+
* Replies of the screen-reader ops of `warden-uiad` 0.6.0 (`srFocus`, `srFocused`, `srEvents`, `actionClick`,
|
|
5
|
+
* `actionScroll`): a node is the snapshot's node JSON, with its visible descendants for a focus stop (so the speech
|
|
6
|
+
* model can merge a row's labels). Hand-checked like the snapshot's nodes.
|
|
7
|
+
*/
|
|
8
|
+
type Parsed<T> = Result<T, string>;
|
|
9
|
+
/** One node object as an `Element` (ids are preorder paths inside this node's own subtree). */
|
|
10
|
+
export declare function elementOfNode(raw: unknown, screen: Pick<ScreenInfo, "width" | "height">): Parsed<Element>;
|
|
11
|
+
export type SrFocusRead = {
|
|
12
|
+
element: Element | undefined;
|
|
13
|
+
index?: number;
|
|
14
|
+
count: number;
|
|
15
|
+
};
|
|
16
|
+
/** `srFocus`: `{node, index, count}`, or `{node:null, count}` past either end. */
|
|
17
|
+
export declare function parseSrFocus(data: unknown, screen: Pick<ScreenInfo, "width" | "height">): Parsed<SrFocusRead>;
|
|
18
|
+
/** `srFocused`: `{node}` or `{node:null}`. */
|
|
19
|
+
export declare function parseSrFocused(data: unknown, screen: Pick<ScreenInfo, "width" | "height">): Parsed<Element | undefined>;
|
|
20
|
+
export type SrFocusEvent = {
|
|
21
|
+
element: Element;
|
|
22
|
+
at: number;
|
|
23
|
+
};
|
|
24
|
+
export type SrEventsRead = {
|
|
25
|
+
events: SrFocusEvent[];
|
|
26
|
+
cursor: number;
|
|
27
|
+
lost?: boolean;
|
|
28
|
+
};
|
|
29
|
+
/** `srEvents`: `{events:[{node, at}], cursor, lost?}`. */
|
|
30
|
+
export declare function parseSrEvents(data: unknown, screen: Pick<ScreenInfo, "width" | "height">): Parsed<SrEventsRead>;
|
|
31
|
+
/** `actionScroll`: `{scrolled}` (false at the end of the content). */
|
|
32
|
+
export declare function parseScrolled(data: unknown): Parsed<boolean>;
|
|
33
|
+
export {};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type { ClockCondition, HostFault, LocationCondition, NetworkCondition, PermissionName, PermissionState, TextSize } from "../../../core/src/conditions/conditions.types";
|
|
1
|
+
import type { CameraCondition, ClockCondition, HostFault, LocationCondition, NetworkCondition, PermissionName, PermissionState, TextSize } from "../../../core/src/conditions/conditions.types";
|
|
2
2
|
import type { AsyncResult } from "../../../types/src/result";
|
|
3
|
+
import type { ScreenReaderState } from "../a11y/a11y.types";
|
|
3
4
|
/**
|
|
4
5
|
* The device driver contract every layer of warden-e2e builds on: the spec API (`screen`, `device`,
|
|
5
6
|
* `app`), `warden ui`, specs and the devtools facet all talk to a `Driver`. Implementations:
|
|
@@ -9,7 +10,7 @@ import type { AsyncResult } from "../../../types/src/result";
|
|
|
9
10
|
* Frozen interface — change it only together with `docs/plans/wdn-e2e.md`.
|
|
10
11
|
*/
|
|
11
12
|
export type Platform = "ios" | "android";
|
|
12
|
-
export type DriverErrorCode = "E_HELPER_MISSING" | "E_HELPER_CRASHED" | "E_TIMEOUT" | "E_NOT_BOOTED" | "E_UNKNOWN_DEVICE" | "E_AX_UNAVAILABLE" | "E_APP_UNAVAILABLE" | "E_APP_NOT_RESPONDING" | "E_NO_ELEMENT" | "E_STALE_REF" | "E_UNSUPPORTED" | "E_UNSUPPORTED_TEXT" | "E_HID" | "E_IO" | "E_BAD_REQUEST" | "E_INTERNAL" | "E_DEVICE_LOCKED" | "E_REFUSED" | "E_NETWORK_RELAUNCH";
|
|
13
|
+
export type DriverErrorCode = "E_HELPER_MISSING" | "E_HELPER_CRASHED" | "E_TIMEOUT" | "E_NOT_BOOTED" | "E_UNKNOWN_DEVICE" | "E_AX_UNAVAILABLE" | "E_APP_UNAVAILABLE" | "E_APP_NOT_RESPONDING" | "E_NO_ELEMENT" | "E_STALE_REF" | "E_UNSUPPORTED" | "E_UNSUPPORTED_TEXT" | "E_HID" | "E_IO" | "E_BAD_REQUEST" | "E_INTERNAL" | "E_DEVICE_LOCKED" | "E_REFUSED" | "E_NETWORK_RELAUNCH" | "E_CAMERA_DEVICE";
|
|
13
14
|
export type DriverError = {
|
|
14
15
|
code: DriverErrorCode;
|
|
15
16
|
message: string;
|
|
@@ -85,9 +86,32 @@ export type Element = {
|
|
|
85
86
|
/** where to tap: iOS `interactable.actionable.at`, else the frame centre */
|
|
86
87
|
tapPoint?: Point;
|
|
87
88
|
pid?: number;
|
|
89
|
+
/** screen-reader facts beyond the base tree; absent when the backend can't read them */
|
|
90
|
+
a11y?: ElementA11y;
|
|
88
91
|
depth: number;
|
|
89
92
|
children: Element[];
|
|
90
93
|
};
|
|
94
|
+
/**
|
|
95
|
+
* Screen-reader facts. Android: from warden-uiad's `AccessibilityNodeInfo`. iOS: from the ios-inject UIView walk,
|
|
96
|
+
* merged by identifier / frame when an a11y read asks for it.
|
|
97
|
+
*/
|
|
98
|
+
export type ElementA11y = {
|
|
99
|
+
/** iOS accessibilityHint / RN accessibilityHint */
|
|
100
|
+
hint?: string;
|
|
101
|
+
/** iOS custom action names / Android node action labels (standard actions left out) */
|
|
102
|
+
actions?: readonly string[];
|
|
103
|
+
/** reachable by VoiceOver / TalkBack navigation */
|
|
104
|
+
focusable?: boolean;
|
|
105
|
+
/** iOS isAccessibilityElement / Android importantForAccessibility; `false` = skipped by screen readers */
|
|
106
|
+
important?: boolean;
|
|
107
|
+
/** Android: holds TalkBack's accessibility focus */
|
|
108
|
+
a11yFocused?: boolean;
|
|
109
|
+
liveRegion?: "polite" | "assertive";
|
|
110
|
+
/** iOS: index in the container's `accessibilityElements` order, when the app sets one */
|
|
111
|
+
order?: number;
|
|
112
|
+
/** iOS: position in the injected walk, which follows VoiceOver's own traversal across the whole screen */
|
|
113
|
+
traversal?: number;
|
|
114
|
+
};
|
|
91
115
|
export type SnapshotBackend = "axbridge" | "ax" | "uiautomator";
|
|
92
116
|
export type ScreenInfo = {
|
|
93
117
|
width: number;
|
|
@@ -298,9 +322,12 @@ export interface Driver {
|
|
|
298
322
|
*/
|
|
299
323
|
locale(tag: string | null, opts?: SettingOptions): DriverResult<LocaleState>;
|
|
300
324
|
/**
|
|
301
|
-
* Accessibility settings
|
|
302
|
-
*
|
|
303
|
-
*
|
|
325
|
+
* Accessibility settings; `null` puts them back. iOS: `simctl ui content_size` / `increase_contrast`, and
|
|
326
|
+
* `simctl spawn defaults write com.apple.Accessibility <Key>` (live) for reduce motion, bold text, reduce
|
|
327
|
+
* transparency, button shapes, differentiate without colour, on/off labels and the fake VoiceOver flag.
|
|
328
|
+
* Android: `font_scale`, `font_weight_adjustment`, `secure high_text_contrast_enabled` /
|
|
329
|
+
* `accessibility_display_inversion_enabled`, and reduce motion as `transition_animation_scale` 0 (what RN reads;
|
|
330
|
+
* off by default). No contrast switch on Android, no TalkBack until A11Y-7: `skipped` with the reason.
|
|
304
331
|
*/
|
|
305
332
|
a11y(op: A11yOp | null): DriverResult<A11yState>;
|
|
306
333
|
/**
|
|
@@ -314,6 +341,13 @@ export interface Driver {
|
|
|
314
341
|
push(payload: PushPayload, opts?: SettingOptions): DriverResult<void>;
|
|
315
342
|
/** Simulated biometrics (simulators / emulators only, else `E_UNSUPPORTED`); answers the state after the op. */
|
|
316
343
|
biometrics(op: BiometricOp): DriverResult<BiometricState>;
|
|
344
|
+
/**
|
|
345
|
+
* The simulated camera: `op` is the whole next state (a facing left out has no feed), `null` takes every feed off.
|
|
346
|
+
* Feeds are staged copies (`stageCameraFeed`). iOS: the injected dylib fakes the AVFoundation capture stack of the
|
|
347
|
+
* injected app (live; an app launched without the dylib gets it from the next launch, `appliesOnLaunch`). Android
|
|
348
|
+
* emulator: the emulator's `imagefile:` / `videofile:` camera. Physical devices: `E_UNSUPPORTED`.
|
|
349
|
+
*/
|
|
350
|
+
camera(op: CameraCondition | null, opts?: SettingOptions): DriverResult<CameraState>;
|
|
317
351
|
readonly app: AppCommands;
|
|
318
352
|
close(): Promise<void>;
|
|
319
353
|
}
|
|
@@ -368,6 +402,20 @@ export type A11yOp = {
|
|
|
368
402
|
boldText?: boolean;
|
|
369
403
|
contrast?: "increased" | "normal";
|
|
370
404
|
reduceMotion?: boolean;
|
|
405
|
+
/** iOS: Reduce Transparency */
|
|
406
|
+
reduceTransparency?: boolean;
|
|
407
|
+
/** iOS: Button Shapes */
|
|
408
|
+
buttonShapes?: boolean;
|
|
409
|
+
/** iOS: Differentiate Without Color */
|
|
410
|
+
differentiateWithoutColor?: boolean;
|
|
411
|
+
/** iOS: On/Off Labels */
|
|
412
|
+
onOffLabels?: boolean;
|
|
413
|
+
/** Android: High contrast text */
|
|
414
|
+
highContrastText?: boolean;
|
|
415
|
+
/** Android: colour inversion */
|
|
416
|
+
colorInversion?: boolean;
|
|
417
|
+
/** iOS: fake VoiceOver flag (`mode: "simulated"`); Android: real TalkBack (A11Y-7) */
|
|
418
|
+
screenReader?: boolean;
|
|
371
419
|
};
|
|
372
420
|
export type A11yState = {
|
|
373
421
|
applied: readonly string[];
|
|
@@ -378,6 +426,13 @@ export type A11yState = {
|
|
|
378
426
|
}[];
|
|
379
427
|
/** the Android font scale was clamped to the platform's range */
|
|
380
428
|
notes: readonly string[];
|
|
429
|
+
/** present when the op asked for `screenReader` and it was applied */
|
|
430
|
+
screenReader?: ScreenReaderState;
|
|
431
|
+
/** Android: the accessibility services / master switch the device had before TalkBack was turned on (`null` = unset), for the lease's condition record */
|
|
432
|
+
screenReaderPrevious?: {
|
|
433
|
+
services: string | null;
|
|
434
|
+
enabled: string | null;
|
|
435
|
+
};
|
|
381
436
|
};
|
|
382
437
|
export type BatteryOp = {
|
|
383
438
|
level?: number;
|
|
@@ -388,6 +443,17 @@ export type BatteryState = {
|
|
|
388
443
|
charging?: boolean;
|
|
389
444
|
cosmetic: boolean;
|
|
390
445
|
};
|
|
446
|
+
/**
|
|
447
|
+
* The feeds now playing. `appliesOnLaunch`: no running app has the camera yet, the next launch picks it up (iOS);
|
|
448
|
+
* `appliesOnCameraOpen`: an open camera keeps the old frames until the app opens the camera again (Android emulator,
|
|
449
|
+
* which reads the file per camera open); `rebooted`: the emulator restarted to switch its camera source (image ↔ video).
|
|
450
|
+
*/
|
|
451
|
+
export type CameraState = {
|
|
452
|
+
feeds: CameraCondition;
|
|
453
|
+
appliesOnLaunch?: boolean;
|
|
454
|
+
appliesOnCameraOpen?: boolean;
|
|
455
|
+
rebooted?: boolean;
|
|
456
|
+
};
|
|
391
457
|
/** An APNs payload: an object with an `aps` key (4096 bytes at most). */
|
|
392
458
|
export type PushPayload = {
|
|
393
459
|
aps: Record<string, unknown>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Driver, DriverResult, Element } from "./driver.types";
|
|
2
|
+
/** The way content moves for a scroll: `down` reveals what is below (forward), `up` what is above (backward). */
|
|
3
|
+
export type ScrollDirection = "up" | "down" | "left" | "right";
|
|
4
|
+
/**
|
|
5
|
+
* Optional capability next to the frozen `Driver` interface (pattern: `SetsText`): act on a resolved element through
|
|
6
|
+
* the platform's accessibility actions instead of touches, for when a touch means something else. Android with
|
|
7
|
+
* TalkBack on: a tap only moves TalkBack's focus and a one-finger swipe navigates, so a locator `tap` / `swipe` asks
|
|
8
|
+
* here first. Each answers `true` when it did the action, `false` when the driver is not in that mode and the caller
|
|
9
|
+
* should send the touch as before. A raw coordinate tap never comes here: it stays a touch.
|
|
10
|
+
*/
|
|
11
|
+
export type ActsOnElements = {
|
|
12
|
+
pressElement(element: Element): DriverResult<boolean>;
|
|
13
|
+
/** `within`: the scrolling element; absent = the largest scrollable on screen */
|
|
14
|
+
scrollElement(direction: ScrollDirection, within?: Element): DriverResult<boolean>;
|
|
15
|
+
};
|
|
16
|
+
export declare function canActOnElements(driver: Driver): driver is Driver & ActsOnElements;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { CameraCondition } from "../../../../core/src/conditions/conditions.types";
|
|
1
2
|
import type { Result } from "../../../../types/src/result";
|
|
2
3
|
import type { DriverError } from "../driver.types";
|
|
3
4
|
import type { ProxyAddress } from "../network-proxy";
|
|
@@ -13,19 +14,24 @@ export declare const INJECT_DYLIB_ENV = "WARDEN_INJECT_DYLIB";
|
|
|
13
14
|
* The one message of the control channel. `seq` rises with every write (the dylib ignores a state whose `seq` it
|
|
14
15
|
* already applied); a field left out means "off" (`offline` false, `clockOffsetMs` 0), so a message is always the
|
|
15
16
|
* whole state, never a delta. `clockFrozenMs` (ms since the epoch) holds the wall clocks at one instant and wins over
|
|
16
|
-
* `clockOffsetMs`; left out, they run.
|
|
17
|
+
* `clockOffsetMs`; left out, they run. `camera`: the feeds of an app launched with `WARDEN_CAMERA=1` (a facing left out
|
|
18
|
+
* has no camera); left out, no feeds.
|
|
17
19
|
*/
|
|
18
20
|
export type InjectState = {
|
|
19
21
|
seq: number;
|
|
20
22
|
offline?: boolean;
|
|
21
23
|
clockOffsetMs?: number;
|
|
22
24
|
clockFrozenMs?: number;
|
|
25
|
+
/** one-shot request (A11Y-1): walk the accessibility tree and write `<state>.a11y` before acknowledging this `seq` */
|
|
26
|
+
a11yRead?: boolean;
|
|
27
|
+
camera?: CameraCondition;
|
|
23
28
|
};
|
|
24
|
-
/** What the dylib answers in `<state>.ack` once it applied `seq` (`bundleId`: the app it loaded into). */
|
|
29
|
+
/** What the dylib answers in `<state>.ack` once it applied `seq` (`bundleId`: the app it loaded into; `camera`: launched with `WARDEN_CAMERA=1`). */
|
|
25
30
|
export type InjectAck = {
|
|
26
31
|
seq: number;
|
|
27
32
|
pid: number;
|
|
28
33
|
proxy?: boolean;
|
|
34
|
+
camera?: boolean;
|
|
29
35
|
bundleId?: string;
|
|
30
36
|
};
|
|
31
37
|
export declare function encodeInjectState(state: InjectState): string;
|
|
@@ -33,6 +39,10 @@ export declare function parseInjectState(text: string): InjectState | undefined;
|
|
|
33
39
|
export declare function parseInjectAck(text: string): InjectAck | undefined;
|
|
34
40
|
/** One directory per device: the dylib watches its directory, so two devices never wake each other's app. Core owns the path (release resets the file). */
|
|
35
41
|
export declare const injectStatePath: (wardenHome: string, udid: string) => string;
|
|
42
|
+
/** Where the dylib writes an accessibility read (`a11yRead`): next to the state file. */
|
|
43
|
+
export declare const injectA11yPath: (statePath: string) => string;
|
|
44
|
+
/** Where the dylib appends accessibility events (A11Y-8): JSON lines next to the state file. */
|
|
45
|
+
export declare const injectEventsPath: (statePath: string) => string;
|
|
36
46
|
export declare const injectAckPath: (statePath: string) => string;
|
|
37
47
|
/**
|
|
38
48
|
* Launch env that loads the dylib. `proxy` is fixed for the life of the process (the lease's proxy keeps its port
|
|
@@ -44,6 +54,8 @@ export declare function injectLaunchEnv(input: {
|
|
|
44
54
|
proxy?: ProxyAddress;
|
|
45
55
|
clockOffsetMs?: number;
|
|
46
56
|
clockFrozenMs?: number;
|
|
57
|
+
/** fake the capture stack from the state file's `camera` feeds (`WARDEN_CAMERA=1`) */
|
|
58
|
+
camera?: boolean;
|
|
47
59
|
debug?: boolean;
|
|
48
60
|
}): Record<string, string>;
|
|
49
61
|
/**
|
|
@@ -55,6 +67,8 @@ export declare function shouldInject(input: {
|
|
|
55
67
|
networkActive: boolean;
|
|
56
68
|
/** a clock offset is set (COND-12) */
|
|
57
69
|
clockActive: boolean;
|
|
70
|
+
/** the lease has a camera feed: the dylib must be loaded at launch to fake the capture stack */
|
|
71
|
+
cameraActive?: boolean;
|
|
58
72
|
/** the caller asked for injection (`LaunchOptions.inject`, a suite that declares `conditions.network`) */
|
|
59
73
|
requested: boolean;
|
|
60
74
|
}): boolean;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import type { Result } from "../../../../types/src/result";
|
|
2
|
+
import { type A11yEventsRead } from "../a11y-events";
|
|
3
|
+
import type { DriverError, DriverResult, LaunchOptions, Rect, Snapshot } from "../driver.types";
|
|
4
|
+
import { type InjectChannel, type InjectFs } from "./inject";
|
|
5
|
+
/**
|
|
6
|
+
* iOS screen-reader facts (WDN-A11Y, A11Y-1). `warden-simd` (idb) has no hint, custom actions, `isAccessibilityElement`
|
|
7
|
+
* or order, so they come from the injected dylib's UIKit walk (`native/ios-inject`, op `a11yRead` on the state/ack file
|
|
8
|
+
* channel of `inject.ts`) and are merged into a snapshot's elements. The dylib is loaded only when asked for (the
|
|
9
|
+
* driver option `a11y` or `WARDEN_A11Y=1`); an app launched without it answers `E_UNSUPPORTED` with that hint, never a
|
|
10
|
+
* fabricated value.
|
|
11
|
+
*/
|
|
12
|
+
/** One entry of the dylib's walk, traversal order. */
|
|
13
|
+
export type IosA11yNode = {
|
|
14
|
+
cls: string;
|
|
15
|
+
/** `isAccessibilityElement`: VoiceOver stops on it */
|
|
16
|
+
element: boolean;
|
|
17
|
+
label?: string;
|
|
18
|
+
hint?: string;
|
|
19
|
+
value?: string;
|
|
20
|
+
identifier?: string;
|
|
21
|
+
/** `UIAccessibilityTraits` bitmask (a hex string on the wire: bits above 2^53 do not survive JSON numbers) */
|
|
22
|
+
traits: bigint;
|
|
23
|
+
/** screen points */
|
|
24
|
+
frame: Rect;
|
|
25
|
+
/** `accessibilityCustomActions` names */
|
|
26
|
+
actions: readonly string[];
|
|
27
|
+
/** index in the container's `accessibilityElements`, only when the app set that array */
|
|
28
|
+
order?: number;
|
|
29
|
+
};
|
|
30
|
+
/** The dylib's `<state>.a11y` for request `req`, or why it is unusable (the message is for the user). */
|
|
31
|
+
export declare function parseA11yDump(text: string, req: number): Result<IosA11yNode[], string>;
|
|
32
|
+
/** Frames overlapping less than this (intersection over union) are not the same node. */
|
|
33
|
+
export declare const MIN_FRAME_OVERLAP = 0.6;
|
|
34
|
+
export type MergedA11y = {
|
|
35
|
+
snapshot: Snapshot;
|
|
36
|
+
matched: number;
|
|
37
|
+
unmatched: number;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Merge a walk into a snapshot (a new snapshot; the input is not touched). Rule, applied once per element in
|
|
41
|
+
* document order:
|
|
42
|
+
* 1. identifier: an element with an `identifier` takes the unused node with the same `id` (several: the larger frame
|
|
43
|
+
* overlap wins);
|
|
44
|
+
* 2. frame: every element still without a node takes the unused node with the largest frame overlap of at least
|
|
45
|
+
* {@link MIN_FRAME_OVERLAP}, greedily from the best pair down. A node whose `id` is set but different from the
|
|
46
|
+
* element's identifier never matches by frame.
|
|
47
|
+
* Each node serves one element. Elements with no node keep `a11y` as it was (never invented).
|
|
48
|
+
*/
|
|
49
|
+
export declare function mergeA11y(snapshot: Snapshot, nodes: readonly IosA11yNode[]): MergedA11y;
|
|
50
|
+
export type IosA11yDeps = {
|
|
51
|
+
channel: InjectChannel;
|
|
52
|
+
fs?: InjectFs;
|
|
53
|
+
/** the dylib path, resolved on first use so a run that never asks does not look for it */
|
|
54
|
+
dylib: () => Result<string, DriverError>;
|
|
55
|
+
/** was an a11y read asked for (driver option `a11y`, `WARDEN_A11Y=1`) */
|
|
56
|
+
requested: () => boolean;
|
|
57
|
+
debug?: boolean;
|
|
58
|
+
/** how long the app gets to answer a read (default {@link INJECT_ACK_MS}) */
|
|
59
|
+
timeoutMs?: number;
|
|
60
|
+
/** how long a launch gets to load the dylib (default {@link INJECT_LOAD_MS}) */
|
|
61
|
+
loadMs?: number;
|
|
62
|
+
};
|
|
63
|
+
export type IosA11y = {
|
|
64
|
+
/** Env that loads the dylib (no proxy) when an a11y read was asked for; `undefined`: launch plainly. */
|
|
65
|
+
launchEnv(opts: LaunchOptions): Promise<Result<Record<string, string> | undefined, DriverError>>;
|
|
66
|
+
/** After a launch that carried the dylib: wait until it loaded. */
|
|
67
|
+
confirmLoaded(): DriverResult<void>;
|
|
68
|
+
/** Read the app's UIKit accessibility tree now and merge it into `snapshot`. */
|
|
69
|
+
read(snapshot: Snapshot): DriverResult<Snapshot>;
|
|
70
|
+
/** Announcements and screen/layout notifications the app posted since byte offset `since` (A11Y-8). */
|
|
71
|
+
events(since?: number): DriverResult<A11yEventsRead>;
|
|
72
|
+
};
|
|
73
|
+
export declare function createIosA11y(deps: IosA11yDeps): IosA11y;
|