From a8ac7cd538d9bb925a569ef55a8b8c4384044d96 Mon Sep 17 00:00:00 2001 From: Milan Kolar Date: Tue, 4 May 2021 17:07:32 +0200 Subject: [PATCH] merge develop into main --- .github/weekly-digest.yml | 7 - .gitignore | 1 - CHANGELOG.md | 56 + README.md | 11 +- igniter/Poppins/OFL.txt | 93 ++ igniter/Poppins/Poppins-Black.ttf | Bin 0 -> 151340 bytes igniter/Poppins/Poppins-BlackItalic.ttf | Bin 0 -> 171544 bytes igniter/Poppins/Poppins-Bold.ttf | Bin 0 -> 153900 bytes igniter/Poppins/Poppins-BoldItalic.ttf | Bin 0 -> 176552 bytes igniter/Poppins/Poppins-ExtraBold.ttf | Bin 0 -> 152712 bytes igniter/Poppins/Poppins-ExtraBoldItalic.ttf | Bin 0 -> 173868 bytes igniter/Poppins/Poppins-ExtraLight.ttf | Bin 0 -> 161404 bytes igniter/Poppins/Poppins-ExtraLightItalic.ttf | Bin 0 -> 186124 bytes igniter/Poppins/Poppins-Italic.ttf | Bin 0 -> 181972 bytes igniter/Poppins/Poppins-Light.ttf | Bin 0 -> 159848 bytes igniter/Poppins/Poppins-LightItalic.ttf | Bin 0 -> 184420 bytes igniter/Poppins/Poppins-Medium.ttf | Bin 0 -> 156480 bytes igniter/Poppins/Poppins-MediumItalic.ttf | Bin 0 -> 180412 bytes igniter/Poppins/Poppins-Regular.ttf | Bin 0 -> 158192 bytes igniter/Poppins/Poppins-SemiBold.ttf | Bin 0 -> 155192 bytes igniter/Poppins/Poppins-SemiBoldItalic.ttf | Bin 0 -> 178548 bytes igniter/Poppins/Poppins-Thin.ttf | Bin 0 -> 161600 bytes igniter/Poppins/Poppins-ThinItalic.ttf | Bin 0 -> 186992 bytes igniter/__init__.py | 21 +- igniter/bootstrap_repos.py | 46 +- igniter/install_dialog.py | 1065 +++++-------- igniter/install_thread.py | 42 +- igniter/openpype.icns | Bin 0 -> 126349 bytes igniter/stylesheet.css | 280 ++++ igniter/tools.py | 29 +- igniter/version.py | 2 +- inno_setup.iss | 50 + openpype/__init__.py | 33 +- openpype/cli.py | 11 - ...n2_vendor.py => pre_python_2_prelaunch.py} | 7 +- openpype/hosts/aftereffects/api/__init__.py | 68 +- .../plugins/publish/collect_render.py | 8 +- .../publish/validate_scene_settings.py | 110 ++ openpype/hosts/blender/api/plugin.py | 2 +- .../hosts/blender/hooks/pre_pyside_install.py | 44 +- .../plugins/create/create_pointcache.py | 35 + .../hosts/blender/plugins/load/load_abc.py | 246 +++ .../hosts/blender/plugins/load/load_model.py | 62 - .../blender/plugins/publish/extract_abc.py | 11 +- openpype/hosts/hiero/api/__init__.py | 2 + openpype/hosts/hiero/api/events.py | 25 +- openpype/hosts/hiero/api/lib.py | 131 +- openpype/hosts/hiero/api/menu.py | 29 +- openpype/hosts/hiero/api/plugin.py | 76 +- openpype/hosts/hiero/api/tags.py | 7 + openpype/hosts/hiero/otio/__init__.py | 0 openpype/hosts/hiero/otio/hiero_export.py | 366 +++++ openpype/hosts/hiero/otio/hiero_import.py | 545 +++++++ openpype/hosts/hiero/otio/utils.py | 76 + .../hiero/plugins/create/create_shot_clip.py | 4 +- .../hosts/hiero/plugins/load/load_clip.py | 13 +- .../plugins/publish/extract_thumbnail.py | 59 + ...le.py => integrate_version_up_workfile.py} | 2 +- .../plugins/publish/precollect_instances.py | 337 ++-- .../plugins/publish/precollect_workfile.py | 92 +- .../collect_assetbuilds.py | 0 .../collect_clip_resolution.py | 0 .../collect_frame_ranges.py | 2 +- .../collect_hierarchy_context.py | 4 +- .../collect_host_version.py | 0 .../collect_plates.py | 0 .../collect_review.py | 2 +- .../collect_tag_tasks.py | 0 .../extract_audio.py | 0 .../extract_clip_effects.py | 0 .../extract_review_preparation.py | 6 +- .../precollect_clip_effects.py | 0 .../precollect_instances.py | 223 +++ .../precollect_workfile.py | 74 + .../validate_audio.py | 0 .../validate_hierarchy.py | 0 .../validate_names.py | 0 .../Startup/otioexporter/OTIOExportTask.py | 328 +--- .../Startup/otioexporter/OTIOExportUI.py | 9 +- .../Python/Startup/otioexporter/__init__.py | 22 - .../Python/StartupUI/otioimporter/__init__.py | 140 +- openpype/hosts/houdini/api/lib.py | 6 +- ...{MainMenuCommon.XML => MainMenuCommon.xml} | 0 openpype/hosts/maya/api/lib.py | 2 +- .../hosts/maya/plugins/create/create_look.py | 3 +- .../plugins/create/create_redshift_proxy.py | 23 + openpype/hosts/maya/plugins/load/load_look.py | 23 +- .../maya/plugins/load/load_redshift_proxy.py | 146 ++ .../maya/plugins/publish/collect_look.py | 128 +- .../plugins/publish/collect_remove_marked.py | 9 +- .../maya/plugins/publish/collect_render.py | 4 +- .../maya/plugins/publish/extract_look.py | 140 +- .../plugins/publish/extract_redshift_proxy.py | 82 + .../maya/plugins/publish/extract_vrayscene.py | 2 +- .../plugins/publish/validate_look_sets.py | 12 +- .../validate_unreal_mesh_triangulated.py | 2 +- openpype/hosts/maya/startup/userSetup.py | 3 +- openpype/hosts/nuke/api/__init__.py | 2 +- openpype/hosts/nuke/api/lib.py | 355 +++-- openpype/hosts/nuke/api/menu.py | 28 +- .../plugins/create/create_write_prerender.py | 8 +- .../plugins/create/create_write_render.py | 8 +- openpype/hosts/nuke/plugins/load/load_mov.py | 12 +- .../hosts/nuke/plugins/load/load_sequence.py | 12 +- .../plugins/publish/collect_slate_node.py | 3 +- .../plugins/publish/precollect_instances.py | 28 +- .../nuke/plugins/publish/precollect_writes.py | 30 +- .../publish/validate_rendered_frames.py | 78 +- .../publish/collect_clear_instances.py | 21 - openpype/hosts/tvpaint/api/__init__.py | 21 +- openpype/hosts/tvpaint/api/lib.py | 65 + .../publish/collect_instance_frames.py | 37 + .../plugins/publish/collect_instances.py | 15 +- .../plugins/publish/collect_workfile_data.py | 58 +- .../plugins/publish/extract_sequence.py | 282 ++-- .../plugins/publish/validate_asset_name.py | 55 + .../tvpaint/plugins/publish/validate_marks.py | 81 + .../publish/validate_project_settings.py | 2 - .../publish/validate_workfile_project_name.py | 10 +- .../unreal/hooks/pre_workfile_preparation.py | 2 +- .../load/load_alembic_geometrycache.py | 162 ++ .../plugins/load/load_alembic_skeletalmesh.py | 156 ++ .../plugins/load/load_alembic_staticmesh.py | 156 ++ .../unreal/plugins/load/load_staticmeshfbx.py | 1 - openpype/launcher_actions.py | 30 - openpype/lib/__init__.py | 78 +- openpype/lib/applications.py | 35 +- openpype/lib/env_tools.py | 2 +- openpype/lib/import_utils.py | 2 +- openpype/lib/local_settings.py | 30 +- openpype/lib/log.py | 2 + openpype/lib/plugin_tools.py | 98 +- openpype/lib/pype_info.py | 2 +- .../{ffmpeg_utils.py => vendor_bin_utils.py} | 59 +- openpype/modules/__init__.py | 7 - openpype/modules/clockify/clockify_api.py | 7 +- .../publish/submit_aftereffects_deadline.py | 1 - .../publish/submit_harmony_deadline.py | 1 - .../plugins/publish/submit_maya_deadline.py | 5 +- .../plugins/publish/submit_nuke_deadline.py | 7 +- .../action_prepare_project.py | 8 +- .../event_sync_to_avalon.py | 9 +- .../action_clean_hierarchical_attributes.py | 9 +- .../action_create_cust_attrs.py | 44 +- .../action_prepare_project.py | 8 +- openpype/modules/ftrack/ftrack_module.py | 198 ++- .../ftrack/launch_hooks/pre_python2_vendor.py | 7 +- openpype/modules/ftrack/lib/__init__.py | 25 + openpype/modules/ftrack/lib/avalon_sync.py | 60 +- openpype/modules/ftrack/lib/constants.py | 12 + openpype/modules/ftrack/lib/credentials.py | 24 +- .../modules/ftrack/lib/custom_attributes.py | 73 + .../plugins/publish/collect_ftrack_family.py | 12 +- openpype/modules/ftrack/tray/ftrack_tray.py | 6 - openpype/modules/ftrack/tray/login_dialog.py | 23 +- openpype/modules/idle_manager/idle_module.py | 8 +- openpype/modules/launcher_action.py | 1 - openpype/modules/settings_action.py | 14 +- .../modules/sync_server/providers/gdrive.py | 11 +- openpype/modules/sync_server/providers/lib.py | 2 +- openpype/modules/sync_server/sync_server.py | 50 +- .../modules/sync_server/sync_server_module.py | 104 +- openpype/modules/sync_server/tray/app.py | 24 +- .../modules/sync_server/tray/delegates.py | 116 ++ openpype/modules/sync_server/tray/lib.py | 115 ++ openpype/modules/sync_server/tray/models.py | 440 +++++- openpype/modules/sync_server/tray/widgets.py | 1280 +++++++++------ openpype/modules/sync_server/utils.py | 5 + openpype/modules/user/__init__.py | 10 - openpype/modules/user/rest_api.py | 35 - openpype/modules/user/user_module.py | 169 -- openpype/modules/user/widget_user.py | 88 -- .../publish/collect_current_pype_user.py | 8 +- openpype/plugins/publish/collect_hierarchy.py | 2 +- .../publish/collect_otio_frame_ranges.py | 2 +- .../plugins/publish/collect_otio_review.py | 3 +- .../publish/collect_otio_subset_resources.py | 11 +- .../plugins/publish/collect_scene_version.py | 2 +- .../publish/extract_hierarchy_avalon.py | 12 +- openpype/plugins/publish/extract_otio_file.py | 2 +- .../plugins/publish/extract_otio_review.py | 6 +- openpype/plugins/publish/extract_review.py | 624 ++------ .../plugins/publish/extract_scanline_exr.py | 2 +- openpype/plugins/publish/integrate_new.py | 3 +- openpype/pype_commands.py | 23 - openpype/settings/__init__.py | 9 +- .../defaults/project_anatomy/attributes.json | 22 +- .../defaults/project_anatomy/imageio.json | 5 +- .../defaults/project_settings/deadline.json | 1 + .../defaults/project_settings/global.json | 28 +- .../defaults/project_settings/hiero.json | 22 + .../defaults/project_settings/maya.json | 17 +- .../defaults/project_settings/nuke.json | 6 - .../defaults/project_settings/tvpaint.json | 12 +- .../system_settings/applications.json | 233 ++- .../defaults/system_settings/general.json | 12 +- .../defaults/system_settings/modules.json | 3 - openpype/settings/entities/base_entity.py | 105 +- .../entities/dict_immutable_keys_entity.py | 20 + .../entities/dict_mutable_keys_entity.py | 73 +- openpype/settings/entities/input_entities.py | 16 +- openpype/settings/entities/item_entities.py | 3 +- openpype/settings/entities/list_entity.py | 39 +- openpype/settings/entities/root_entities.py | 16 +- .../schema_project_deadline.json | 5 + .../projects_schema/schema_project_hiero.json | 39 + .../schema_project_syncserver.json | 2 +- .../schema_project_tvpaint.json | 27 +- .../schemas/schema_anatomy_imageio.json | 19 +- .../schemas/schema_global_publish.json | 63 + .../schemas/schema_maya_create.json | 29 +- .../schemas/schema_maya_publish.json | 28 - .../schemas/schema_nuke_publish.json | 29 - .../schemas/schema_publish_gui_filter.json | 3 +- .../schemas/template_rgba_color.json | 33 + .../host_settings/schema_blender.json | 1 - .../host_settings/schema_djv.json | 1 - .../host_settings/schema_houdini.json | 1 - .../host_settings/schema_maya.json | 1 - .../host_settings/schema_shell.json | 1 - .../host_settings/schema_tvpaint.json | 1 - .../host_settings/schema_unreal.json | 1 - .../template_host_variant_items.json | 6 + .../host_settings/template_nuke.json | 1 - .../schemas/system_schema/schema_general.json | 12 + .../schemas/system_schema/schema_modules.json | 16 +- openpype/settings/exceptions.py | 11 + openpype/settings/handlers.py | 145 +- openpype/settings/lib.py | 75 +- openpype/tools/launcher/actions.py | 86 +- openpype/tools/settings/__init__.py | 5 +- openpype/tools/settings/lib.py | 16 + .../settings/local_settings/general_widget.py | 74 +- .../tools/settings/local_settings/window.py | 22 +- openpype/tools/settings/resources/__init__.py | 8 + .../tools/settings/resources/images/eye.png | Bin 0 -> 2152 bytes .../tools/settings/settings/widgets/base.py | 10 +- .../settings/settings/widgets/categories.py | 27 +- .../settings/widgets/dict_mutable_widget.py | 57 +- .../widgets/multiselection_combobox.py | 5 +- .../settings/settings/widgets/widgets.py | 10 +- .../tools/settings/settings/widgets/window.py | 56 +- openpype/tools/settings/widgets.py | 164 ++ openpype/tools/tray/pype_info_widget.py | 49 +- .../vendor/python/python_2/dns/__init__.py | 56 + .../vendor/python/python_2/dns/_compat.py | 59 + openpype/vendor/python/python_2/dns/dnssec.py | 519 +++++++ openpype/vendor/python/python_2/dns/e164.py | 105 ++ openpype/vendor/python/python_2/dns/edns.py | 269 ++++ .../vendor/python/python_2/dns/entropy.py | 148 ++ .../vendor/python/python_2/dns/exception.py | 128 ++ openpype/vendor/python/python_2/dns/flags.py | 130 ++ openpype/vendor/python/python_2/dns/grange.py | 69 + openpype/vendor/python/python_2/dns/hash.py | 37 + openpype/vendor/python/python_2/dns/inet.py | 124 ++ openpype/vendor/python/python_2/dns/ipv4.py | 63 + openpype/vendor/python/python_2/dns/ipv6.py | 181 +++ .../vendor/python/python_2/dns/message.py | 1175 ++++++++++++++ openpype/vendor/python/python_2/dns/name.py | 994 ++++++++++++ .../vendor/python/python_2/dns/namedict.py | 108 ++ openpype/vendor/python/python_2/dns/node.py | 182 +++ openpype/vendor/python/python_2/dns/opcode.py | 119 ++ openpype/vendor/python/python_2/dns/py.typed | 0 openpype/vendor/python/python_2/dns/query.py | 683 ++++++++ openpype/vendor/python/python_2/dns/rcode.py | 144 ++ openpype/vendor/python/python_2/dns/rdata.py | 456 ++++++ .../vendor/python/python_2/dns/rdataclass.py | 122 ++ .../vendor/python/python_2/dns/rdataset.py | 347 +++++ .../vendor/python/python_2/dns/rdatatype.py | 287 ++++ .../python/python_2/dns/rdtypes/ANY/AFSDB.py | 55 + .../python/python_2/dns/rdtypes/ANY/AVC.py | 25 + .../python/python_2/dns/rdtypes/ANY/CAA.py | 75 + .../python_2/dns/rdtypes/ANY/CDNSKEY.py | 27 + .../python/python_2/dns/rdtypes/ANY/CDS.py | 23 + .../python/python_2/dns/rdtypes/ANY/CERT.py | 123 ++ .../python/python_2/dns/rdtypes/ANY/CNAME.py | 27 + .../python/python_2/dns/rdtypes/ANY/CSYNC.py | 126 ++ .../python/python_2/dns/rdtypes/ANY/DLV.py | 23 + .../python/python_2/dns/rdtypes/ANY/DNAME.py | 26 + .../python/python_2/dns/rdtypes/ANY/DNSKEY.py | 27 + .../python/python_2/dns/rdtypes/ANY/DS.py | 23 + .../python/python_2/dns/rdtypes/ANY/EUI48.py | 29 + .../python/python_2/dns/rdtypes/ANY/EUI64.py | 29 + .../python/python_2/dns/rdtypes/ANY/GPOS.py | 162 ++ .../python/python_2/dns/rdtypes/ANY/HINFO.py | 86 + .../python/python_2/dns/rdtypes/ANY/HIP.py | 115 ++ .../python/python_2/dns/rdtypes/ANY/ISDN.py | 99 ++ .../python/python_2/dns/rdtypes/ANY/LOC.py | 327 ++++ .../python/python_2/dns/rdtypes/ANY/MX.py | 23 + .../python/python_2/dns/rdtypes/ANY/NS.py | 23 + .../python/python_2/dns/rdtypes/ANY/NSEC.py | 128 ++ .../python/python_2/dns/rdtypes/ANY/NSEC3.py | 196 +++ .../python_2/dns/rdtypes/ANY/NSEC3PARAM.py | 90 ++ .../python_2/dns/rdtypes/ANY/OPENPGPKEY.py | 60 + .../python/python_2/dns/rdtypes/ANY/PTR.py | 23 + .../python/python_2/dns/rdtypes/ANY/RP.py | 82 + .../python/python_2/dns/rdtypes/ANY/RRSIG.py | 158 ++ .../python/python_2/dns/rdtypes/ANY/RT.py | 23 + .../python/python_2/dns/rdtypes/ANY/SOA.py | 116 ++ .../python/python_2/dns/rdtypes/ANY/SPF.py | 25 + .../python/python_2/dns/rdtypes/ANY/SSHFP.py | 79 + .../python/python_2/dns/rdtypes/ANY/TLSA.py | 84 + .../python/python_2/dns/rdtypes/ANY/TXT.py | 23 + .../python/python_2/dns/rdtypes/ANY/URI.py | 82 + .../python/python_2/dns/rdtypes/ANY/X25.py | 66 + .../python_2/dns/rdtypes/ANY/__init__.py | 57 + .../python/python_2/dns/rdtypes/CH/A.py | 70 + .../python_2/dns/rdtypes/CH/__init__.py | 22 + .../python/python_2/dns/rdtypes/IN/A.py | 54 + .../python/python_2/dns/rdtypes/IN/AAAA.py | 55 + .../python/python_2/dns/rdtypes/IN/APL.py | 165 ++ .../python/python_2/dns/rdtypes/IN/DHCID.py | 61 + .../python_2/dns/rdtypes/IN/IPSECKEY.py | 150 ++ .../python/python_2/dns/rdtypes/IN/KX.py | 23 + .../python/python_2/dns/rdtypes/IN/NAPTR.py | 127 ++ .../python/python_2/dns/rdtypes/IN/NSAP.py | 60 + .../python_2/dns/rdtypes/IN/NSAP_PTR.py | 23 + .../python/python_2/dns/rdtypes/IN/PX.py | 89 ++ .../python/python_2/dns/rdtypes/IN/SRV.py | 83 + .../python/python_2/dns/rdtypes/IN/WKS.py | 107 ++ .../python_2/dns/rdtypes/IN/__init__.py | 33 + .../python/python_2/dns/rdtypes/__init__.py | 27 + .../python/python_2/dns/rdtypes/dnskeybase.py | 138 ++ .../python/python_2/dns/rdtypes/dsbase.py | 85 + .../python/python_2/dns/rdtypes/euibase.py | 71 + .../python/python_2/dns/rdtypes/mxbase.py | 103 ++ .../python/python_2/dns/rdtypes/nsbase.py | 83 + .../python/python_2/dns/rdtypes/txtbase.py | 97 ++ .../vendor/python/python_2/dns/renderer.py | 291 ++++ .../vendor/python/python_2/dns/resolver.py | 1383 +++++++++++++++++ .../vendor/python/python_2/dns/reversename.py | 96 ++ openpype/vendor/python/python_2/dns/rrset.py | 189 +++ openpype/vendor/python/python_2/dns/set.py | 261 ++++ .../vendor/python/python_2/dns/tokenizer.py | 571 +++++++ openpype/vendor/python/python_2/dns/tsig.py | 236 +++ .../vendor/python/python_2/dns/tsigkeyring.py | 50 + openpype/vendor/python/python_2/dns/ttl.py | 70 + openpype/vendor/python/python_2/dns/update.py | 279 ++++ .../vendor/python/python_2/dns/version.py | 43 + .../vendor/python/python_2/dns/wiredata.py | 103 ++ openpype/vendor/python/python_2/dns/zone.py | 1127 ++++++++++++++ openpype/version.py | 2 +- poetry.lock | 247 +-- pyproject.toml | 35 +- repos/avalon-core | 2 +- setup.py | 23 +- start.py | 128 +- test_localsystem.txt | 1 + tools/build.ps1 | 4 + tools/build.sh | 25 +- tools/build_dependencies.py | 10 +- tools/build_win_installer.ps1 | 140 ++ tools/create_env.ps1 | 2 +- tools/create_env.sh | 2 +- tools/create_zip.ps1 | 37 +- tools/create_zip.py | 66 + tools/create_zip.sh | 4 +- tools/fetch_thirdparty_libs.ps1 | 20 + tools/fetch_thirdparty_libs.py | 160 ++ tools/fetch_thirdparty_libs.sh | 129 ++ tools/run_documentation.ps1 | 32 + tools/run_mongo.sh | 1 + .../custom/plugins/GlobalJobPreLoad.py | 3 +- website/docs/admin_hosts_blender.md | 83 + website/docs/admin_settings_project.md | 11 - website/docs/artist_hosts_hiero.md | 193 +++ website/docs/artist_hosts_maya.md | 24 + website/docs/artist_hosts_nukestudio.md | 284 ---- website/docs/artist_hosts_tvpaint.md | 208 +++ website/docs/assets/hiero_createUIFrames.png | Bin 0 -> 40766 bytes website/docs/assets/hiero_createUIRename.png | Bin 0 -> 30586 bytes website/docs/assets/hiero_defaultTags.png | Bin 0 -> 7266 bytes website/docs/assets/hiero_instanceCreator.png | Bin 0 -> 10665 bytes .../docs/assets/hiero_menuColorspaceClip.png | Bin 0 -> 6593 bytes .../assets/hiero_menuColorspaceProject.png | Bin 0 -> 6864 bytes website/docs/assets/hiero_menuCreate.png | Bin 0 -> 6545 bytes website/docs/assets/hiero_menuDefaultTags.png | Bin 0 -> 9200 bytes website/docs/assets/hiero_menuPublish.png | Bin 0 -> 6011 bytes website/docs/assets/hiero_tagHandles.png | Bin 0 -> 20629 bytes website/docs/assets/hiero_timelinePrep.png | Bin 0 -> 17150 bytes website/docs/assets/maya-create_rs_proxy.jpg | Bin 0 -> 87906 bytes .../assets/nukestudio_basic_clipNaming.png | Bin 21136 -> 0 bytes .../docs/assets/nukestudio_defaultTags.png | Bin 5628 -> 0 bytes website/docs/assets/nukestudio_lutSucess.png | Bin 14149 -> 0 bytes .../assets/nukestudio_publishing_basic.png | Bin 159949 -> 0 bytes website/docs/assets/nukestudio_reviewing.png | Bin 44909 -> 0 bytes website/docs/assets/nukestudio_setContext.png | Bin 13623 -> 0 bytes .../docs/assets/nukestudio_softEffects.png | Bin 29510 -> 0 bytes .../assets/nukestudio_tagsToClips_basic.png | Bin 180993 -> 0 bytes .../nukestudio_workfiles_openCorrect.png | Bin 78681 -> 0 bytes .../nukestudio_workfiles_openingLimit.png | Bin 74591 -> 0 bytes .../docs/assets/tvp_asset_loader_actions.png | Bin 0 -> 247453 bytes .../docs/assets/tvp_asset_loader_version.png | Bin 0 -> 295138 bytes website/docs/assets/tvp_color_groups.png | Bin 0 -> 9708 bytes website/docs/assets/tvp_color_groups2.png | Bin 0 -> 6159 bytes website/docs/assets/tvp_create_layer.png | Bin 0 -> 29058 bytes website/docs/assets/tvp_create_pass.png | Bin 0 -> 36545 bytes website/docs/assets/tvp_create_review.png | Bin 0 -> 30635 bytes website/docs/assets/tvp_hidden_window.gif | Bin 0 -> 41891 bytes website/docs/assets/tvp_library.gif | Bin 0 -> 237699 bytes website/docs/assets/tvp_loader.gif | Bin 0 -> 666434 bytes website/docs/assets/tvp_openpype_menu.png | Bin 0 -> 3565 bytes website/docs/assets/tvp_permission.png | Bin 0 -> 34963 bytes website/docs/assets/tvp_permission2.png | Bin 0 -> 27604 bytes website/docs/assets/tvp_pyblish.png | Bin 0 -> 76062 bytes website/docs/assets/tvp_pyblish_render.png | Bin 0 -> 22160 bytes website/docs/assets/tvp_render_pass.png | Bin 0 -> 11140 bytes website/docs/assets/tvp_scene_inventory.png | Bin 0 -> 158445 bytes website/docs/assets/tvp_subset_manager.png | Bin 0 -> 50492 bytes website/docs/assets/tvp_timeline_color.png | Bin 0 -> 16963 bytes website/docs/assets/tvp_timeline_color2.png | Bin 0 -> 32659 bytes website/docs/assets/tvp_write_file.png | Bin 0 -> 4202 bytes .../global_extract_review_letter_box.png | Bin 0 -> 1256221 bytes ...bal_extract_review_letter_box_settings.png | Bin 0 -> 6056 bytes .../global_extract_review_output_defs.png | Bin 0 -> 17954 bytes .../assets/global_extract_review_profiles.png | Bin 0 -> 13447 bytes .../settings_project_global.md | 69 + website/sidebars.js | 18 +- 418 files changed, 26017 insertions(+), 4665 deletions(-) delete mode 100644 .github/weekly-digest.yml create mode 100644 igniter/Poppins/OFL.txt create mode 100644 igniter/Poppins/Poppins-Black.ttf create mode 100644 igniter/Poppins/Poppins-BlackItalic.ttf create mode 100644 igniter/Poppins/Poppins-Bold.ttf create mode 100644 igniter/Poppins/Poppins-BoldItalic.ttf create mode 100644 igniter/Poppins/Poppins-ExtraBold.ttf create mode 100644 igniter/Poppins/Poppins-ExtraBoldItalic.ttf create mode 100644 igniter/Poppins/Poppins-ExtraLight.ttf create mode 100644 igniter/Poppins/Poppins-ExtraLightItalic.ttf create mode 100644 igniter/Poppins/Poppins-Italic.ttf create mode 100644 igniter/Poppins/Poppins-Light.ttf create mode 100644 igniter/Poppins/Poppins-LightItalic.ttf create mode 100644 igniter/Poppins/Poppins-Medium.ttf create mode 100644 igniter/Poppins/Poppins-MediumItalic.ttf create mode 100644 igniter/Poppins/Poppins-Regular.ttf create mode 100644 igniter/Poppins/Poppins-SemiBold.ttf create mode 100644 igniter/Poppins/Poppins-SemiBoldItalic.ttf create mode 100644 igniter/Poppins/Poppins-Thin.ttf create mode 100644 igniter/Poppins/Poppins-ThinItalic.ttf create mode 100644 igniter/openpype.icns create mode 100644 igniter/stylesheet.css create mode 100644 inno_setup.iss rename openpype/hooks/{pre_python2_vendor.py => pre_python_2_prelaunch.py} (82%) create mode 100644 openpype/hosts/aftereffects/plugins/publish/validate_scene_settings.py create mode 100644 openpype/hosts/blender/plugins/create/create_pointcache.py create mode 100644 openpype/hosts/blender/plugins/load/load_abc.py create mode 100644 openpype/hosts/hiero/otio/__init__.py create mode 100644 openpype/hosts/hiero/otio/hiero_export.py create mode 100644 openpype/hosts/hiero/otio/hiero_import.py create mode 100644 openpype/hosts/hiero/otio/utils.py create mode 100644 openpype/hosts/hiero/plugins/publish/extract_thumbnail.py rename openpype/hosts/hiero/plugins/publish/{version_up_workfile.py => integrate_version_up_workfile.py} (90%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/collect_assetbuilds.py (100%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/collect_clip_resolution.py (100%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/collect_frame_ranges.py (97%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/collect_hierarchy_context.py (97%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/collect_host_version.py (100%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/collect_plates.py (100%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/collect_review.py (99%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/collect_tag_tasks.py (100%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/extract_audio.py (100%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/extract_clip_effects.py (100%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/extract_review_preparation.py (98%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/precollect_clip_effects.py (100%) create mode 100644 openpype/hosts/hiero/plugins/publish_old_workflow/precollect_instances.py create mode 100644 openpype/hosts/hiero/plugins/publish_old_workflow/precollect_workfile.py rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/validate_audio.py (100%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/validate_hierarchy.py (100%) rename openpype/hosts/hiero/plugins/{publish => publish_old_workflow}/validate_names.py (100%) rename openpype/hosts/houdini/startup/{MainMenuCommon.XML => MainMenuCommon.xml} (100%) create mode 100644 openpype/hosts/maya/plugins/create/create_redshift_proxy.py create mode 100644 openpype/hosts/maya/plugins/load/load_redshift_proxy.py create mode 100644 openpype/hosts/maya/plugins/publish/extract_redshift_proxy.py delete mode 100644 openpype/hosts/standalonepublisher/plugins/publish/collect_clear_instances.py create mode 100644 openpype/hosts/tvpaint/plugins/publish/collect_instance_frames.py create mode 100644 openpype/hosts/tvpaint/plugins/publish/validate_asset_name.py create mode 100644 openpype/hosts/tvpaint/plugins/publish/validate_marks.py create mode 100644 openpype/hosts/unreal/plugins/load/load_alembic_geometrycache.py create mode 100644 openpype/hosts/unreal/plugins/load/load_alembic_skeletalmesh.py create mode 100644 openpype/hosts/unreal/plugins/load/load_alembic_staticmesh.py delete mode 100644 openpype/launcher_actions.py rename openpype/lib/{ffmpeg_utils.py => vendor_bin_utils.py} (50%) create mode 100644 openpype/modules/ftrack/lib/constants.py create mode 100644 openpype/modules/ftrack/lib/custom_attributes.py rename openpype/{hosts/maya => modules/ftrack}/plugins/publish/collect_ftrack_family.py (64%) create mode 100644 openpype/modules/sync_server/tray/delegates.py delete mode 100644 openpype/modules/user/__init__.py delete mode 100644 openpype/modules/user/rest_api.py delete mode 100644 openpype/modules/user/user_module.py delete mode 100644 openpype/modules/user/widget_user.py create mode 100644 openpype/settings/entities/schemas/projects_schema/schemas/template_rgba_color.json create mode 100644 openpype/settings/exceptions.py create mode 100644 openpype/tools/settings/lib.py create mode 100644 openpype/tools/settings/resources/__init__.py create mode 100644 openpype/tools/settings/resources/images/eye.png create mode 100644 openpype/tools/settings/widgets.py create mode 100644 openpype/vendor/python/python_2/dns/__init__.py create mode 100644 openpype/vendor/python/python_2/dns/_compat.py create mode 100644 openpype/vendor/python/python_2/dns/dnssec.py create mode 100644 openpype/vendor/python/python_2/dns/e164.py create mode 100644 openpype/vendor/python/python_2/dns/edns.py create mode 100644 openpype/vendor/python/python_2/dns/entropy.py create mode 100644 openpype/vendor/python/python_2/dns/exception.py create mode 100644 openpype/vendor/python/python_2/dns/flags.py create mode 100644 openpype/vendor/python/python_2/dns/grange.py create mode 100644 openpype/vendor/python/python_2/dns/hash.py create mode 100644 openpype/vendor/python/python_2/dns/inet.py create mode 100644 openpype/vendor/python/python_2/dns/ipv4.py create mode 100644 openpype/vendor/python/python_2/dns/ipv6.py create mode 100644 openpype/vendor/python/python_2/dns/message.py create mode 100644 openpype/vendor/python/python_2/dns/name.py create mode 100644 openpype/vendor/python/python_2/dns/namedict.py create mode 100644 openpype/vendor/python/python_2/dns/node.py create mode 100644 openpype/vendor/python/python_2/dns/opcode.py create mode 100644 openpype/vendor/python/python_2/dns/py.typed create mode 100644 openpype/vendor/python/python_2/dns/query.py create mode 100644 openpype/vendor/python/python_2/dns/rcode.py create mode 100644 openpype/vendor/python/python_2/dns/rdata.py create mode 100644 openpype/vendor/python/python_2/dns/rdataclass.py create mode 100644 openpype/vendor/python/python_2/dns/rdataset.py create mode 100644 openpype/vendor/python/python_2/dns/rdatatype.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/AFSDB.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/AVC.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/CAA.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/CDNSKEY.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/CDS.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/CERT.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/CNAME.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/CSYNC.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/DLV.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/DNAME.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/DNSKEY.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/DS.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/EUI48.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/EUI64.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/GPOS.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/HINFO.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/HIP.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/ISDN.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/LOC.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/MX.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/NS.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC3.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC3PARAM.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/OPENPGPKEY.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/PTR.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/RP.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/RRSIG.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/RT.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/SOA.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/SPF.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/SSHFP.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/TLSA.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/TXT.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/URI.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/X25.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/ANY/__init__.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/CH/A.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/CH/__init__.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/A.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/AAAA.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/APL.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/DHCID.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/IPSECKEY.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/KX.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/NAPTR.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/NSAP.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/NSAP_PTR.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/PX.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/SRV.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/WKS.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/IN/__init__.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/__init__.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/dnskeybase.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/dsbase.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/euibase.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/mxbase.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/nsbase.py create mode 100644 openpype/vendor/python/python_2/dns/rdtypes/txtbase.py create mode 100644 openpype/vendor/python/python_2/dns/renderer.py create mode 100644 openpype/vendor/python/python_2/dns/resolver.py create mode 100644 openpype/vendor/python/python_2/dns/reversename.py create mode 100644 openpype/vendor/python/python_2/dns/rrset.py create mode 100644 openpype/vendor/python/python_2/dns/set.py create mode 100644 openpype/vendor/python/python_2/dns/tokenizer.py create mode 100644 openpype/vendor/python/python_2/dns/tsig.py create mode 100644 openpype/vendor/python/python_2/dns/tsigkeyring.py create mode 100644 openpype/vendor/python/python_2/dns/ttl.py create mode 100644 openpype/vendor/python/python_2/dns/update.py create mode 100644 openpype/vendor/python/python_2/dns/version.py create mode 100644 openpype/vendor/python/python_2/dns/wiredata.py create mode 100644 openpype/vendor/python/python_2/dns/zone.py create mode 100644 test_localsystem.txt create mode 100644 tools/build_win_installer.ps1 create mode 100644 tools/create_zip.py create mode 100644 tools/fetch_thirdparty_libs.ps1 create mode 100644 tools/fetch_thirdparty_libs.py create mode 100755 tools/fetch_thirdparty_libs.sh create mode 100644 tools/run_documentation.ps1 create mode 100644 website/docs/admin_hosts_blender.md delete mode 100644 website/docs/admin_settings_project.md create mode 100644 website/docs/artist_hosts_hiero.md delete mode 100644 website/docs/artist_hosts_nukestudio.md create mode 100644 website/docs/artist_hosts_tvpaint.md create mode 100644 website/docs/assets/hiero_createUIFrames.png create mode 100644 website/docs/assets/hiero_createUIRename.png create mode 100644 website/docs/assets/hiero_defaultTags.png create mode 100644 website/docs/assets/hiero_instanceCreator.png create mode 100644 website/docs/assets/hiero_menuColorspaceClip.png create mode 100644 website/docs/assets/hiero_menuColorspaceProject.png create mode 100644 website/docs/assets/hiero_menuCreate.png create mode 100644 website/docs/assets/hiero_menuDefaultTags.png create mode 100644 website/docs/assets/hiero_menuPublish.png create mode 100644 website/docs/assets/hiero_tagHandles.png create mode 100644 website/docs/assets/hiero_timelinePrep.png create mode 100644 website/docs/assets/maya-create_rs_proxy.jpg delete mode 100644 website/docs/assets/nukestudio_basic_clipNaming.png delete mode 100644 website/docs/assets/nukestudio_defaultTags.png delete mode 100644 website/docs/assets/nukestudio_lutSucess.png delete mode 100644 website/docs/assets/nukestudio_publishing_basic.png delete mode 100644 website/docs/assets/nukestudio_reviewing.png delete mode 100644 website/docs/assets/nukestudio_setContext.png delete mode 100644 website/docs/assets/nukestudio_softEffects.png delete mode 100644 website/docs/assets/nukestudio_tagsToClips_basic.png delete mode 100644 website/docs/assets/nukestudio_workfiles_openCorrect.png delete mode 100644 website/docs/assets/nukestudio_workfiles_openingLimit.png create mode 100644 website/docs/assets/tvp_asset_loader_actions.png create mode 100644 website/docs/assets/tvp_asset_loader_version.png create mode 100644 website/docs/assets/tvp_color_groups.png create mode 100644 website/docs/assets/tvp_color_groups2.png create mode 100644 website/docs/assets/tvp_create_layer.png create mode 100644 website/docs/assets/tvp_create_pass.png create mode 100644 website/docs/assets/tvp_create_review.png create mode 100644 website/docs/assets/tvp_hidden_window.gif create mode 100644 website/docs/assets/tvp_library.gif create mode 100644 website/docs/assets/tvp_loader.gif create mode 100644 website/docs/assets/tvp_openpype_menu.png create mode 100644 website/docs/assets/tvp_permission.png create mode 100644 website/docs/assets/tvp_permission2.png create mode 100644 website/docs/assets/tvp_pyblish.png create mode 100644 website/docs/assets/tvp_pyblish_render.png create mode 100644 website/docs/assets/tvp_render_pass.png create mode 100644 website/docs/assets/tvp_scene_inventory.png create mode 100644 website/docs/assets/tvp_subset_manager.png create mode 100644 website/docs/assets/tvp_timeline_color.png create mode 100644 website/docs/assets/tvp_timeline_color2.png create mode 100644 website/docs/assets/tvp_write_file.png create mode 100644 website/docs/project_settings/assets/global_extract_review_letter_box.png create mode 100644 website/docs/project_settings/assets/global_extract_review_letter_box_settings.png create mode 100644 website/docs/project_settings/assets/global_extract_review_output_defs.png create mode 100644 website/docs/project_settings/assets/global_extract_review_profiles.png create mode 100644 website/docs/project_settings/settings_project_global.md diff --git a/.github/weekly-digest.yml b/.github/weekly-digest.yml deleted file mode 100644 index fe502fbc98..0000000000 --- a/.github/weekly-digest.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Configuration for weekly-digest - https://github.com/apps/weekly-digest -publishDay: sun -canPublishIssues: true -canPublishPullRequests: true -canPublishContributors: true -canPublishStargazers: true -canPublishCommits: true diff --git a/.gitignore b/.gitignore index ba8805e013..ebb47e55d2 100644 --- a/.gitignore +++ b/.gitignore @@ -64,7 +64,6 @@ coverage.xml .hypothesis/ .pytest_cache/ - # Node JS packages ################## node_modules diff --git a/CHANGELOG.md b/CHANGELOG.md index 364555f8b2..b70f3f98f4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,61 @@ # Changelog + +## [2.17.1](https://github.com/pypeclub/openpype/tree/2.17.1) (2021-04-30) + +[Full Changelog](https://github.com/pypeclub/openpype/compare/2.17.0...2.17.1) + +**Enhancements:** + +- TVPaint frame range definition [\#1424](https://github.com/pypeclub/OpenPype/pull/1424) +- PS - group all published instances [\#1415](https://github.com/pypeclub/OpenPype/pull/1415) +- Nuke: deadline submission with gpu [\#1414](https://github.com/pypeclub/OpenPype/pull/1414) +- Add task name to context pop up. [\#1383](https://github.com/pypeclub/OpenPype/pull/1383) +- AE add duration validation [\#1363](https://github.com/pypeclub/OpenPype/pull/1363) +- Maya: Support for Redshift proxies [\#1360](https://github.com/pypeclub/OpenPype/pull/1360) + +**Fixed bugs:** + +- Nuke: fixing undo for loaded mov and sequence [\#1433](https://github.com/pypeclub/OpenPype/pull/1433) +- AE - validation for duration was 1 frame shorter [\#1426](https://github.com/pypeclub/OpenPype/pull/1426) +- Houdini menu filename [\#1417](https://github.com/pypeclub/OpenPype/pull/1417) +- Maya: Vray - problem getting all file nodes for look publishing [\#1399](https://github.com/pypeclub/OpenPype/pull/1399) + + +## [2.17.0](https://github.com/pypeclub/openpype/tree/2.17.0) (2021-04-20) + +[Full Changelog](https://github.com/pypeclub/openpype/compare/3.0.0-beta2...2.17.0) + +**Enhancements:** + +- Forward compatible ftrack group [\#1243](https://github.com/pypeclub/OpenPype/pull/1243) +- Maya: Make tx option configurable with presets [\#1328](https://github.com/pypeclub/OpenPype/pull/1328) +- TVPaint asset name validation [\#1302](https://github.com/pypeclub/OpenPype/pull/1302) +- TV Paint: Set initial project settings. [\#1299](https://github.com/pypeclub/OpenPype/pull/1299) +- TV Paint: Validate mark in and out. [\#1298](https://github.com/pypeclub/OpenPype/pull/1298) +- Validate project settings [\#1297](https://github.com/pypeclub/OpenPype/pull/1297) +- After Effects: added SubsetManager [\#1234](https://github.com/pypeclub/OpenPype/pull/1234) +- Show error message in pyblish UI [\#1206](https://github.com/pypeclub/OpenPype/pull/1206) + +**Fixed bugs:** + +- Hiero: fixing source frame from correct object [\#1362](https://github.com/pypeclub/OpenPype/pull/1362) +- Nuke: fix colourspace, prerenders and nuke panes opening [\#1308](https://github.com/pypeclub/OpenPype/pull/1308) +- AE remove orphaned instance from workfile - fix self.stub [\#1282](https://github.com/pypeclub/OpenPype/pull/1282) +- Nuke: deadline submission with search replaced env values from preset [\#1194](https://github.com/pypeclub/OpenPype/pull/1194) +- Ftrack custom attributes in bulks [\#1312](https://github.com/pypeclub/OpenPype/pull/1312) +- Ftrack optional pypclub role [\#1303](https://github.com/pypeclub/OpenPype/pull/1303) +- After Effects: remove orphaned instances [\#1275](https://github.com/pypeclub/OpenPype/pull/1275) +- Avalon schema names [\#1242](https://github.com/pypeclub/OpenPype/pull/1242) +- Handle duplication of Task name [\#1226](https://github.com/pypeclub/OpenPype/pull/1226) +- Modified path of plugin loads for Harmony and TVPaint [\#1217](https://github.com/pypeclub/OpenPype/pull/1217) +- Regex checks in profiles filtering [\#1214](https://github.com/pypeclub/OpenPype/pull/1214) +- Bulk mov strict task [\#1204](https://github.com/pypeclub/OpenPype/pull/1204) +- Update custom ftrack session attributes [\#1202](https://github.com/pypeclub/OpenPype/pull/1202) +- Nuke: write node colorspace ignore `default\(\)` label [\#1199](https://github.com/pypeclub/OpenPype/pull/1199) +- Nuke: reverse search to make it more versatile [\#1178](https://github.com/pypeclub/OpenPype/pull/1178) + + ## [2.16.1](https://github.com/pypeclub/pype/tree/2.16.1) (2021-04-13) [Full Changelog](https://github.com/pypeclub/pype/compare/2.16.0...2.16.1) diff --git a/README.md b/README.md index 73620d7885..566e226538 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,10 @@ OpenPype ==== +[![documentation](https://github.com/pypeclub/pype/actions/workflows/documentation.yml/badge.svg)](https://github.com/pypeclub/pype/actions/workflows/documentation.yml) ![GitHub Requirements](https://img.shields.io/requires/github/pypeclub/pype?labelColor=303846) ![GitHub VFX Platform](https://img.shields.io/badge/vfx%20platform-2021-lightgrey?labelColor=303846) + + + Introduction ------------ @@ -61,7 +65,8 @@ git clone --recurse-submodules git@github.com:Pypeclub/OpenPype.git #### To build OpenPype: 1) Run `.\tools\create_env.ps1` to create virtual environment in `.\venv` -2) Run `.\tools\build.ps1` to build OpenPype executables in `.\build\` +2) Run `.\tools\fetch_thirdparty_libs.ps1` to download third-party dependencies like ffmpeg and oiio. Those will be included in build. +3) Run `.\tools\build.ps1` to build OpenPype executables in `.\build\` To create distributable OpenPype versions, run `./tools/create_zip.ps1` - that will create zip file with name `openpype-vx.x.x.zip` parsed from current OpenPype repository and @@ -116,8 +121,8 @@ pyenv local 3.7.9 #### To build OpenPype: 1) Run `.\tools\create_env.sh` to create virtual environment in `.\venv` -2) Run `.\tools\build.sh` to build OpenPype executables in `.\build\` - +2) Run `.\tools\fetch_thirdparty_libs.sh` to download third-party dependencies like ffmpeg and oiio. Those will be included in build. +3) Run `.\tools\build.sh` to build OpenPype executables in `.\build\` ### Linux diff --git a/igniter/Poppins/OFL.txt b/igniter/Poppins/OFL.txt new file mode 100644 index 0000000000..76df3b5656 --- /dev/null +++ b/igniter/Poppins/OFL.txt @@ -0,0 +1,93 @@ +Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/igniter/Poppins/Poppins-Black.ttf b/igniter/Poppins/Poppins-Black.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a9520b78ac4635319aafe2cc88f1b40c8289b1c8 GIT binary patch literal 151340 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

Kq{)AfR!XzZ7M4W7#>C_;3ynu+oU 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 Kd$PmpasLZYBMgZE literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-BlackItalic.ttf b/igniter/Poppins/Poppins-BlackItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ebfdd707e55e1d050595f4c58c45ae4ab44d000d GIT binary patch literal 171544 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

Qq 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 G$NfLB&PKNY literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-BoldItalic.ttf b/igniter/Poppins/Poppins-BoldItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..e2e64456c7f8e6b714d699a912bda3fc21583f44 GIT binary patch literal 176552 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

MxhDe@Y8zE&r){ST4X-xGNQ9^WMH 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

FD_)0qX)a(QWOVHclmtdO8LS)y~Rn= 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 VHKPvG+F@Cv(T*RgdEenJ?muNujbi`+ literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-ExtraBold.ttf b/igniter/Poppins/Poppins-ExtraBold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8f008c36844f28454149ce1a22effe513dc726e6 GIT binary patch literal 152712 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 !$}l^k3b)DZf)k=d13d~c4(?MHYCf~kKR{_N zD@PJ_h!r_cFGc!j--XQ0Z9DIon^Iu2PSuwM`|~@qnipoI&rO)TPSTN$Hb>%9nVsu# zQVteI9@%1x3b@5A$@408(DCB!CyNu&-bmu>$VUMavLTVn1#{hj|3`ehQ5Q$bM^R?D zbxV$8Z^Lzu&r9}9i|M?C$?L_KcCDr6E-1N;ejD0mP&<8TeFu8EleNBre9xh6_E{o7 z<&Y1SsrQ)Afcqe?FUXW|++&tfM3@g1o+S4PWu`!X8ErL3Wx&0b#;m5z>PbDrLhVUh zY|0;Ovbv*Uqfw)qIlsjapJV<85W}64Fo?N5iC+n36yymo<8_I}jWa_X6a$TSCMwpn z&j2^>NR_4m+y#6T$9b7Eh&OVhvCW3)2%-Tf2B&dDF$z~S)1B5)rcwo$NeyAwMtfTe zqLDQ(AX~`ouHqtqYJjkfY|aMl=mF0G4{k@@3pJx^;$atUR(dA-WK8EsT4Hu)416*& zf=grzX1Jocq*av>8%1t9l|<7;fFr2{aS}aScx+;t{8eHI-xFl`h8Y~Zx5*HF^sBD#OtTS4p0aFtc;3K!ziF6GbU@=@(1RL(v58h(>p_^7gtqHKovQnV2}aS~7rZ zDX>O|TNHuP$$aXS$&1Q|>l}6iv|REHmqIR(yw?}-UZo_HL%Mm0BlDGzLtbxqLRtC+ zpGBSysRjN?lZ;}&h&FQ!m7r!PZ$VDLymTkLNBSIg7XySq?zm2Qc&g@AUIm zvr)f9hWI`g>6RFY=3Nz3^mIVp-cEmZXD&V!I^mJ!PdkWJy{(0GUQS5|_%)iayPfy za`#tM9O#42$7u**Y0$Ln&iDIVxkUlj)M%-3ptS>qM0=|@R#%NwPeU7xx}1Hk$Yu}t z9S%QwS;*(V2z06Ed+?&>@@KRdoFNpn5*+<{F(RvPHbjd96`hs7rRsd^iZco}Fi( z8mOc<1@f)AT~(6@nKQBTuIYyKGS}1~KEEi_ffKP@7X1~#4Bdo=vBU5VRx5T^@Rc3p zjgXb5kWJ^O+rdeM2}&+3hMi@va5?|HZbRjo?!A@eyB3wL%&r}TDU}N5CzFpCz%mN2 z-Rbi=sbSGVBW}fPwyqKy>T1`QJ1qs!nEH_`XTHqr@!9OY@SSDQ5x4~)Ml%DVd2f;} z3=Kd;$*TLUKF;w1z?m&5O4{0}TV6&WtsTx#ham82SRk*5c>z{dNJ--JjR;~A z1eIAF1V*nbxy0!lA8%hcl58#Lu6@q$q%yNi2wJSwQn3HcZ9U}#eOhZ4L2Kms@m4D= zt+P711#1||sa#4B3H0gp-FetzO;$?{lS}y9r5)20O5IR+!NfNiblJpIg-VYcpD2Oq zVH@}mdqlvE3=j$-#4zi{Jfg(Pxu7$vdNl#JusgeK4eE~nJ!1;?aIjMMgm383>naF% z25m*S3g%nmvBtSsawEW4i1rYncrB)!ih+jzlaOta!L}<47GGQqp*y2X=IU#cP0p6l z(vs1(=76)ODtNQx?)_)pG-*>(tgw3DYtPd}DTNFyo>w_q2mEbvA?dqGla`gP@Y!sI zIp`K5)O7z2ezlccqf1ky<0_j_(B;Oi(HsWP> zKL%$_v!0W{@{f_j_wAP~hn*OeOY?jy%1j2?JiXOsG+UohwR$R-7i=C}na4gTxjT3o z_9R>KTvq7$Z{jDo-&n8C$OYk19Ttm0iBRs$s1^{w9gtWOSn~Av?1T zWgF@?94XdawnXkJbzdKOa?pR3OzS^SJ=cg&%T8))pL@M<;Xkrpx*+Ijm4ZsLq8(*fg zBClt*Z*Agm^m+NchA@>Yq^M&)C*4(F>hYF6Rd=u(7NJz{?}kgnLy)1K=HXTsd0a(h z`3rVe!#0%WEj9Su5(l>wP1RXZ4rjJ-6Pps2Y2=fkF@cs`?mNH3TOKG(c5S__?eM}w z>>B#<=|HB6QFhVm%Jtv0d*7l_A0!ch-gBVFvIyXH;QsMQ>jnb>Q+Nd+1MTHAAeK=P zma&R;nRHRlMSR7(YDD+1YkvGjNqJznp>chY#WkFIbSadx_4J=7-Z4?NQnfBeOMMB~ zLHHfMoSE}`_N-OjZS5~DTVCktEA}mP6f9gkFn*&+U1FdW4vpGEu{$l<+yQR}Yld-5 z^KyviV2k!wqdOnJ^5f?bk!j2qU~WQJ8%H4yKRWDVe=DiSR~bLy1{r633a)z*HL{HJ zO;6}Wke)-gCaq-S=vTqThqM`A$d5Rd6B`Xn58T{5a!MM%u=GCqefFPth^(}seI^V} z)<$$7piLoIa;4~|q&05kS9pn;<5^x)i|u}Fq!O_c0JDN#C>fZ?jaCa3vDI1fMY}4h zH&h-dV2oYCze%=DkK>xGjSIsE1|!2(JSvFg=;{x!1~zj0j))FMnJiGWfoO6RrgOn% zBu+6{Riu9lh63GrwSn4$Z@f}oO*F2>eI}%FsU#Qe%+wg*s5w@?bL;au3(A)%4eK-R zu&yX43fI#H8+kZ|t8#(D4Zc(1QY4sl1~axLSD+IR-5MsEx0=?0=EeP9(pvBlT;My- zb|*b~8`SZlkm7s-a&c1qfq)em9q|O9rX{;uL>S9OZfd#NFkoua{0c{2BTe?i!WO1)b23&_8h<-pQ-VWZD9caN@*OU+5@w2f;*8lfmSK@2%2D^~SD=h$%*WGF% z)P8p;Pf|tQ^EJH&(VFm%>vS+lom@D?2bS@yz2FNRohq&D~l zyLnqhvD{^yY{l@S=wwZ`che$;$%ZiT=eBLDl#4%{^`Ix;Yxdb`C9^ z!FU)`7tJKWEJ&!*0fjR-u5L6&@(Ls`V$rx_^!ZkbX}hqo&o~36cN%Wou;GNWJ0`W+ z?=h%`fi|1ts<;R)#K1CMWrp)Hh7GNHRLOV&4K+eZ`eemOhfvm|M9bAJVaz zr3)}e7#@A-t?g}W!JnElC6|CBZgaQ_;D}}(wYMPG?g_ZoRchN}!59I0CEnp#0FgCs1B8%?7dv1JP$s^q%0!1N z_$y9jm$qUE3nqW~SKo5>$jRJ9q&B`DS+!r-Xy^3AT{Rh1>|5Dt8gcICP_3SHkY50} z%<$HwP}hQ*JwKlU${cgC#V9QN6|pa9J^++(uK{PbIPRSaxa@+!%KD5awM~aR1sr6r zUn#;kFb8UbTc|~2+kuPSmdUC}l;D(3m1kpDxGl1i;w+>%!} zC(|%I6;ISndOxPW8X{IZWWss+BZiJ-XM$SHH)yZf{d`Bqh3(7CvwDXe*>`T*bccP> zOmBg05rgu;D!d^rm(RX%i9?RR5tm36U~u@F9K$ILW}^4P)?J$`mTUFBzK&6_EeR8! zzeZ^{=^&V6pL8T%^7@ckpgaCBd=P>!8^;?54_#Ip^qOM5W`A`NG&~cYcmUu)R}WAY z2&$a|PYC|j3{auoTfWTBLnwOywJ{#K1+`KBUJR-1=_?&Pr1basuEvRv1(;9NaL!j$ z&@c0yj(t21gqFF0LmE(14?07@fX@rXreiLuac(TvuP8xOWJ)GqeVy8ZXX@A<0iy4F zTkZJ*1@SoDPSLN!JRSP=^tcS@;Z>P-z%P?#izzIg+R586m;zT4} z@Idvv$}a0WSGc-#d3H9D9;RjT+-ua)ciw67CjGF`!#*ddo0kH)c56snjy|Q&I#BDY z<~0uLnY}FiF+hT17+f)(se{5|h2D3>d7*{H*xr*oxk3ud5Ai2J4T$p{Om*~#26BN^ z*!7G0mQwaJ=?4>^raY@zQVQ`6YoeZ+A+RZ3UmJGF;773G7@zlW=AkerlpI9({%m&m z^0CeTKYY13r>yb+f-o2EC^t6G4rAaoxK4q3_>u3s05jr2S4DmPw~L(k_1pDG3a=|-U*qL3F+AG6EPV^8es9>}4#Mugp74P@$MI%Wjaho`)qHY5` z?R+O!s26)$6yblALwg`k1%q@O>;Z)~><#yV!g zzn?=?2!AgJcPzo~_74EUyilioSS~s+9f)Ye2^6E(%X}beca^XgB1y>n5sqg3G3EEI z`@>gsE5nb~2pX;g$K97@hX68vL>v|>LE#mg;DS#FqHs+ED{!$NE;|IKdDqy<)VaCl zynxS_;@)~2jEO~pF1v}G)Yz5sfqA$z<~5Do`{ydBas#=o0n2N%vqNV!IKKEE;O4-w z7b@96vYoOZoh6?R8;;;84a$74@9F#hLhVWOYF*WGRuKs|^A7uE@JhB zzDrIuq^7$ZQ^7kY!KuzTezum-P3F@uOzsmzMiXTutw zWEr`wvgP(DEF<#;KMAy;%I9gsH`IOM{s`1Nm5Rb#mk$aW(YWY}3G^eNRl>fCXJXLJOyH6xHFGZTQBOJ9y^`RUW$AQ`mJm;v`Qa6l2B9C zxjuN$ymz}-W-62#=3xnpzClkOG)`|FS|(P2SQ1dL^w56BoQHa)$4m2b^NYy|dPTB2 zjeD!l0h`*$UMUil#jZozib^ZcwxRDVM|@ z)3BaL5=FFrJL+lxKICKz>TM`PiuN^On=IakHZ72X;%$+qz8lp-2H?E(PT& zHy@z>D!L%hTs0Lk@P6(mrvoteldHZKpeM>;5iN>#^h~Qkrve4}1y5rd`@qalL7HK1 zg?mQ0E=xa!S4NxH@$~sjvB$LV;?P4(#op*ihvwl7c03XT>6a5fPPz9a^(UNxpgW?c z9->hiS%mvZt2W9OUS?hejL_9j)U8cuO)_xP0?&Ka5H&@vAYxt>dbFd+*iR?_m2$zb zp?XPq@CuzM-amva8EMXr`V9HLi0wn%{zNJ2i9)=KZuoMNN3tiVW;zqYVC8_4Dx#Ex zbPM0KOifjS(nFICDZedU>}N;lr(-lMr^ZLcz$9$JK)FYVa=ZX}K6HShShkm^Jqq`c zR>qm184(~i>7pcCMEJ^izSJmC_wP0h0u4pc=P zBg9q>ggE^6U_EzokXSS+ng%C#S2#XHxX$!KC~!B3?Ua;>c2JP`^Qq*3Ap3W^nm-|k z*lNnPdaNss?*y4N6;FdYJ9?*}L*q$yNh<{#0U*kA}dijIE{ZT;Au z@@>QFB4}!xwgDSf3r17-u=N9^-RXoo7(~-Q2H07-ej>p|n)wZ)CP*H`&R*RbXd(Je zBttP5g2^dov-&H*%VSm4#c&U=JX-n#n8#Is@=rSiuMWd3Z3dXVke%o4YKY#vluY{s z;Gm-aUCwXGXzo4Fo|h*k^YvZv7XVO#g2``($0h{CRWdC!|9E zU8*K2@#$MOZ*Ewqx}~hSwd7VsOIgJt3$w4PIG#dt*EYKeEi}C>Ox9ddh!Jd zbH~k6bWhn0yMxf|A#g{?gRu&E=FojiKj}6jAcGHs|1T&>4a^em$-oU|=p0&I+PYWu znJL$y$LBGxTMOqgbL~2PPiqzXU1=-$Gf$jRpti%mDUb9;bRDu}9mti(y0NaS( zovDA#iGkAS#1H2F10U3T03jx+jb<%68=|7bZiNGT7_BQp6A{XZ7$mo0j08)KScxnq z;bNBPECoUUnDbA>RWZGi+m_y!zhq!7C39LF=E}DGHb>8GeLj!by14B$yG8OK`>t!x zm2@@i%GtO#&#Wv4VMrVHZ|+G+$jr!4chvctjnqC#!}ZG=M~!I}R>W07OP!zk;l^_&5CvfP5**m5@{%)~~Q0(5DQ=Tnf>)ZBIafMFl#za8ED}qLI*e zV+aihiZ0i)@tSl~?t+Fn@lv@mQ<0pSK9HW0lAftZkR>EGcC;4N7^u0bEyzFY2jGhLXc_|Ag#~<6s_04}6;xND z#Y#eRKu&Ej^&cufGCxmO(b8U_cFv2h@pUZqE^yMI4ocyA*W%U}*%tb#W$f?IX*3xs ztyYE5$xMoG+|&N64a$u6qO!*H6q9XPr=SnocZEP_2XzWsp{2Ac6*QvaiiGr0z{3vS z73mqmHiO^jNRHZI#YJ8SAtl=C!mpVT;%TK$Z1FqPNlb?Q`UlP9I;*?%0pU5d`xOn%4hHkw^-6SdRrHkn*56H?75YVs_OBA>6Q zc%-p$L&?UC=A7hWJ6a0!u-*mpRTo?)liO`J<>s2q@Q;~Mu{rp2_)9mVfXy_ds}_Pu zn9Q>v@j(2C9!H^|x_i&}typpL_==}rd;47&6+l~@I>zHG7cHvHD?57UUDqm5mMxKf zJMQ<48tO>dU}OUoH2lMmQjl{?XB2*cg_VkbQB>tvbM0_|I!-&yw)~UXN`+3VRO#rq zS2m3l6)f`3kJs3I&Xqmc*$S0Tr-FVigTxZ|H^~>!LAZx<0XI=suZ0)+2Qw#bKKvd5 zR&FHcxD*Fg4D>CR-cKvi)1ha*yLaE{K(@h{vl!rne~R)7aKb-_u#5%hf#Tts@_sLU zOk%g#@~&5>rE1h^X=?i8)}{@`1&ciK$yrvPv$aN}0l~^lM|Akx)h8tL7!7w@St;NT znLMI*l#qHxxfbN}K^vVH#295-fSE+555pzH4?xT$J-(a1g?3qN?j!qNg4;hzXWyOXtr}PZ8uTmv% zpy(`}TH&FXjt+DcsJV1g!;gW?3LrPys6hjHKW9>*(y0PU%j5RY`B(oA6i0s^gg-aK zpJI|Ba>KC<)D0-`4$nHMK1V&$M?FX@)%m@MhqB$B-`sossmj!PA0ru9nv!75spuly zWXh}E+FE<~wk0_>pdtJYod18QI?`5d6hq2Ve*h#L6MgYf5;>8Qa=l71>V zIFX9GI*{C49!U^EytX=Fo&^0CricyYCZ?kZ|9c+vd()AG`}N?e)FlnEX(E8JrJzb6 z%GIl^k^U%dtK_f1A*iboI3(`u)qloO_|NZ={0*x3aj61_pg|0k(M=mcz36BJSVK2; z7p=<7)TGl-nB5*%z*p1VY)xosl>Du~4UDSMkYzA4#op9gsnmc!&=N=EFTW@W;;El$ zzb!_(Zw1y#VNzTmr_tr+;Xev{aFS5 z+qhj!G2jZC4dZ$N`VlGo=O^ILq1z)8S1Uml6pJeKcYt?!J9P}>oh-du>onW_#V|AN z&d&Db*~*KWJ6gPRnrlKN$jV7f$xLQ8GwB%~*PP8tFmcsD2?WoJ_;(>E6!yz-!ade6 zi>b17HAj`Cc~hZiYH#w)>#3Jz6P+vx4lYClDzGW^Sz>4uE!~B6Av%H7j(~RfHt+K7t9{_6&la zgTB3xrbB!jQg&i~7E_mcP+&UIZ%@N_ln9Cl?gLm*KIB{Q+S#brAdIS0o?1-c%)S+U ztAM~m8If#8{gtCNQ*6He4EgPOA~strraAic|AJpf{fj)!Lqwkf0b+PybMgSSgwrL_ z!Qi+Z`tZqPWaY@G!h%^IKMF?)7Q=#W1BDij8U}9PLCTBoFI}S?haeWM$T-uw6?CBYx-UIO8bK<~N0uN>{h2}`nROw|2is}({ zAu#t~uOJi#gaUj{a>V@_2I{}n2Y#G2WK+ zvNzJUs=#ZD2BoJYDq!9vnc0AmJaJ%a@nFSo%1gjKvx(9v}c1#L!fr9I3K)=fWB81r(25^t? zqyhSikQ^{l8Wbn**nP%o$aYp2?$~|J=7yb()Pq#OZFeue@vdB3IgYC7HNuGOzWyAC z&FFNjUA=OHXQ;^zQF!^zQGZXCy^(~__+8j1FmzQS=)jZX1VE|6{4EO5K+)kzh(L50 z=c|(zY%HYD(6*dxr^|eLAAM_Ot-)=}$~436Yegwq zvJTr9mA4lL*83J^*_uSqUj2kd_vS%AkPc}CjxZ{QbJ##Na&%Bkylk`8sD;yS7PH5D znmW0E)5&6wyJB#`YW8mW+AXh9cP6WpsYjJ*stk{FYFH7py6SRo(eada>R zf3b&2Ls6da#VH?bJG=Dk&Q;5{;O{MwE_-qhleYNwm1*<(1{SuH&n-RP#(nKpCVl#^ z?R;tFxofs>+RJ^d|M}~g^u>1!q|RMFu&{%CZJF@3AA%2!;tU>JSh+6X3dV%K??eTj+sC4*!;MW6lVtLGk!$1ufDP;(j8`3F*xh6g$p5vacQ0ROGC zOa_K31@i;|B}UI=V9uWX_Ro(#*d`^Pq8LigWUyzFlh&>>HWrbOoxYE}AoE8i6LT2A zWrc_zF_`FUz+sY~QL1Mbf9Kv)Pc0xHlQ<3{gm<#jArpYo98FCEOVLo&ki3)#~qM7 zNKZ3aGk*6ERQ{23t3Lkjb3a+aefKbB_=3smzGv&a#FiEC-BJSXx?{q3-)6KkeAmFt zr^>H;Zs@bOUw&@|_uXqL7Zt~7yYJmTZ%*5Cx2c(d8@yjQuHMgAK z!hZVi-%qR~;v~D7T1c50efI-|XXQ_Ae9c zU&c5!Fis6q6--X|LkE)L7p=}WH^cr{#LSzIqs2Ce)^Z196uymK(PYp^!Y!3jC+>Of z5c@j&8}@5KKkJ$5v<59+FiTnxb z0ct;E?RoV2L`u4JU4gl^iV$Vz2~=K3?-}31*k=6t2gbN+VrD8PP+J#!uR^{1#O zsS}K?=doi66tjGt$HISo7y3FKx9aMbR0I7#5Gz1-lad%Eso3)+elb;{dQ26ltSt0a zR(k3GVU5&>!L;Js+>(-9CpgqJY#FGa?v$Xd5^|VPmK&{b65INNq@(kw(Ye>oljM91 z|3d#ilsQGc|L6)-9EAi3CRXsjeck{hYXV+5{x_`DLpA!$?RRUR*WRVQsJ-Q4=1tFK zUCg>G>-nr*>{EAT-bFpL_1P2fuV=SDdldfl>{b-#n6ExTua#s$#E$Md#+kszfbD|z z6|Yj|bJHlv8Gsg52pWx$3x)JAI08PI0@D43Rt3Gbd`DO1=t<^n#R^c7}C6a|*iCb5DlMkz`eQlL1yi8|j{N~l}`G?}uo!#}+eAQ^Y zlf6T$G%B~mN#oR4|0x-ze*${}=Hq?r097i9S7j)|FjGc~A)7ZK0E!d+FMi=q)dL;v z0|V{ttLQh_>t3Yxv3u>1-b$z1SGBkI_rsrG>qt|n(&+6=mv%2+wrue?g5~t<>&nV> z@Gtg$_=E0c%eu?T%CmLaYiYKq)3|0gNi6YQn5daW)kd!=HM-YG~ftgHG z0J@w}ct&>?_a9xfueP=}Q|Vvd)I98^E~wMeHJ(Qj64PJPnw*cb&GwUOb)m~&?O$D0 zwcemFF%!syuGE5lpH246lz*`9owaxPC@%YJnCo$T+{rh>Et z;h#K3{z;Y3pXw{5tq@kGD$;2=Jvg>y_?5x2(SZ+A*HXGW@1_iEQQW_z)HM=%eQzdkp=W z>FQBxPTb?by>VuVF^!rtvcK?g_E(e%Y7izWf%+r$R2(h&5_}T$|NW9mhtHZyX=L>BiHiPg2)fN=q%~vNAJmdgG0!o_XVqXO{N&FJ0c>zZ~F7h2LnPKLCD@ zOY<2ZH=jxs{+Kqt5H!<91b22^BApGtl@S+L0q=-@KxM=g8^}O_8Zh{-*}qturPWiH zBu(2J_w7Ep?g~r)add}IZz{-JvLmo})w+vK58RHvWxINXcF})A*#itUirnQ2^jE~n zRz7}*bOJm$SM>spKDx7gQ&Ej$4{XpmaI55H+G5cf3ZVPe;?t?M8v12=>mJ{-;=0ax zjO$S4fPc>cTdqlGF+D(O?Ah6NNIKJ~Hb9@C--=6&n;RDgIYe&?C@^^2G-&RpyzjQR zzcK&BiQNxV7ul{eyLVIj-Ueuwz&|qxl+gp|hR}c<5;{;yB-Mb(AvdNN=u-CQX*IT{ zRqpF|ErJzlFH3R^Mw7(^*KA*=eoec_(lcr{R_(k2YDB7>e4Ev-NvFOIa1~#jpj+ub zV*L^qhrfmenIj3xU_gBkt@|hW6`()0PoJG$qpn;hVSZl3yHfIjknT z-Ap_6eJis~yEnItmA!iIyDuE+f752RI_ws+18@R@LKPO$>jr-s;L{waEF}iAu6TQQ_x9pE zN1?yvKwH~^7JuQNOggREtks&=<+-g^m)k;JTIXNl^DXiF+EtpR<<0B;{`Jk}OEvdd zZ8<>WoS(QXP=+*FTtFu~(5V75>CPT^~o&4fvWM!ReyNpm4ChR%Axl^ z_~3oSeYtV_==F2}C<`{00+B)grq>5wr_15rfph2Bf1EuF-*LcqJ|f>q^QyqUI{x{} zEB}0jF8ttq{2c}8kgN1R;T1tNQC3qX2V;#(f{1m{fCR+ABJD!$JGy63`n0U6u1TAj zrTrEi*xa>;cLx5sdEK%Nbo2MKZJKODR{2nAP$DQHIU0Tq4@{5Z6zcuoK9!s_zfi~P;=)!n|9MI~#i97RcqciSbVTzB=}MPnD% z9@{&#P`~EjjeQwJt(tyh*&`!;xAxdAR!2{J)8Tf5w&>6E=h|VP*2a>N zi<@>_Z`_}|?D4UCF5ejZb*V#ZEO%xZfa>u;`ajXH0?iXaKZC16c`2jBDyRN+#qtx1 z`W+Sb)84k$ZQJNqgOyYQ@^U0->VrN4|I9qdzM{QS2yLSw#ekhDIglEPuSSpul=1Y^ zMa}<@w(o$is`lc)NnTqD9dz&Zb(bz^OBY>0Te=G!luc=AfeI8T8)OTDijyJA6cNM) ziVPK@P=U(BJs~Kc9agFS)rV$;rt{a&mH#`}9b|YF0dK za;G@Mz}(z{Ujzq?s$+f2Q+f~L^#gjOme{7Hq!}ir>iwn@pXkBG$M}Ad1MOuuhb$u- zPIm5QGa-GCl|!D{t>HW7l2ut*mXX2hd#xNiXk{PN{9pac zdXyXJI}Vf&#)f*Dp&V%I!pYYOxi~$%dR1vMq_EvQVD!Ri%XmHX0C+2wZ&bZj<5Q?H24VF)haATsFZw#!aO$&K4|ZV>?2RT}aK`X+*-wt9tW$NG{Ml{TRdrrfhjUUMR z%r;DBa}5)aF)W6(bbJrep@P1!dZXsHi{X1341YB=FtY~soM9Y*N3oZ{DSFiME>IyCcersreh}yey5`1oq<(r1`K#-U|x?NdHH2!`4;`w3>mVfZ(sWDx4E*ow4$Q4 zq=Lpb;=pQ&J8>XJW=yTrXPlkPslTA7R40uut7u?>-Nz^IFDWc!i)zw- zERmQ!C(MAE+z&KsmTYPEBkU|(6tsqMDB&K3zJ3FZ7=X<1a`yCzj7aa1mNve~V(johKM!20?c@?xlAci!J$i^<@9yg8<<#0G zq9`@3ssqY~gbT@mMz>~r9G>?@!)NGyjpupbQo=75_$>eoTE)Rm6(G<(jMKN>AF)_d zH5AV;D|@y8JTf>jH7$WHF$}Jlmzg=Yk}W|FI+St~IjHi206+4ZcmKL~eB}zY>lg%U zq>_lA+yF=13)aPdfa1T-?So$`2LAHi$>I@bh80T=-eBm4!o1lvgCDy@X_1D1gR~fT zd~w}|gNVVrA{^K+^TuAjap%_Ty35yo*|(3?u%5ei8I~DH^D6P$hBO%CnSdN8G28aX zoAM>D&zEvM&u^80vKs|H5}37Km{bWQv5_;oL@urITxv>u zTv}>8NT?(r|CgWvkon8?t~zjNwn=u*kEXI%=1@xcqLf4`4ONRi~r&?E}NY0%Prt zI=woyWJWfjJ+>x3B`GO2e#p2kGkZ4EL&I0g5$vzo69&aTPLJC3xbCid_P9vAAEyT{ zu2dR5pCE`z?{2`?Rkii-r6oap%wyA%6+mk{LPKGfGRQ zXYX$ZQ#%XR!X+{yyhES%K)mOSE*aCxq5|3k2Z1Iu9}N~xxZeP4Q4CnL7Ns?TixUys zB8Cm_xhExM+IUy%7B+fs-jls(sADg#HXAmYtz}+%q5@`O;tFpXr4(luaD;KWMF__} zx*91i=CKy+*xjWed0NHHrLF4C+XYprjDiMTV`LScK#X##>$LnyH6Gq0@qr95Oplpe zzH83wxWSoC#pQ0*uL=y$2K`{x@@?|tYk{;^q8h} zaHJ(BCKS7vL0Sftr?W!coK13RtU9&U(S;91E71Hl2eqKNUfSW=$pLEdn+*+b{&4Z? z&6_}W)CI#$!*|5TfQFRut%;QJZKEfisSsK`VO-$^LvAE-{*^A>eRs`pHM zg6dJ-Ky;P2tH3ocSK6zqY;F7{T_HdPHBxX zRvkl#-Tm#%rKI^-f6pA9Q5o0JklH6>bOu|H795&Uf{&DdgQz2>@5{^Zu{>GzdhVZ~h)*AJca>0KQ42*KY z`SF>$FLj|luAY&x$=#CTYI19*w%lkI=;P`Z8Iw|!0_%N?m|h7U-j1!E9IdRpGde^U zwHwyc!^^(4qf;wueO5|TVFb!1ea61N#EX->MO|e7)aTy?q@PH_Y4~3|pI4WXTX3eqsd-cb*u?ezEGVp*R#scO^IYEql=|W-A z`4@Mml^icirTkf`;e8%uc!7;EJkQ1whDginkoHMAVNrFrGoSCiP+fFp$KLt#p)a$U zKOegacaWy(FT-z;fTHAl&PcR?0JFfb^wgZ2=f)wghYif1yBT(|ROFBSNOl#ls0YdC zv2vC2>raNn%NN=9)vMpUyZTK)|Fi) z80|u1R@}v(W1H03oRnBnW2VjH>ZJu1{^29L`^7;?X6NB;_Nv3^QolHVH-CE%Z}XQ~ z>R3ky8*9D)fCFXMPXsfd3B@awJa>O7~0FlB|fTM9P;-=|LM)|<3=jvFpXzF#HZo`YEb~vzI{NvwwEAd?@b+1-qrboFLQf781gn2Ao$Ra1ud0=q2Z<`g_fH{gLoGUEWC`1 zCGa2@0Wmq9!eV10JLkmt2gK)OMnp$OX5_RF+z}k)=@}I0$&w=4=XSDf-8nZlyklB; zd~T+Vbw+Och)!Ale*OUgFn~b~X)Qo9H|A1?YS0!CByZF*7>;^Y3~$%-O}9<^_I$P3 zZCUSm5XCRDEiw#v5!6 zpxm3>c^r0MmP-tDO6*@Nd-Ym5WXP&sy;cqBIjc*T zSv}R?v_Xl9gE|$BwO(TjExNClle_sE>#;@rP@lJJYS#4Yx2C4%?LNu5&-UpvH!p8q z@7{BB3*)QP)2rkA7lyWtjBM-T(6t|G?85r7U3{M^ACN9zPPE#rAu%M~6C^#Ce%bjU zufFOK*Cwa`q99L?pdb&=AU>!fqK#o?h>J@_sb25r=MZGZsiqu5lNJuS9>* zDgMkE>iDlE-t_J8W__7a6=iS2IC1KYreJbvLfBlAGJ|!hN=&Tk*s(e>vASbc_wHHQ zWo6j|9qrnc2ASuN@edvEZfon#zfP!1>sXbLP}MQ5D#0+jS5|h99@$yFKGC-*&dE6u z=;LH#1MFM!QEWZ*xpFOsh3R_30RG!E&wvuHFh1B1y_ps5yU4u~aP{A%nDLbr3XhG%>E+WDszbPo5A!y=R^HsF&H$OS{NRtxO+P!C02u!$l&vz(pO%$>{n%b;ndQ~SMTcUW>BQCJD`Jb-c&vyY z@NJc|N6|YRk>v9+r;~`INj1SFYBq~C^Bdf{C$z9?kODEu9YrCL+;Cr{7*0mS#6+-g z$^|P@z7!)L)Csp8Lk$_>7g zxZFXm=pB!}%Dav-to(_3jSF~X8{cE>i!|O4h5ybjE-~e4Y2`8aI#^o&7-sF~?(XO3 z=I+lkiz6e8+qW-i+qR^=ufM;qZ$JR)&!f>BgN(h=A(%EK0_E?V(oNmEZDJX!7i{c~ zI+AxqFz6&8LpjR5CP-su5@T&A6@pbvFzf@~HcZ{YW*IV2k1vB>+xODJppQu{P1@Kx zs#oKkC`l2Zu2CQ^4+w> zJ_cp{{3N&PXv7uoOKzpR9b*4Co+Ueg$7|R5-*fR5!?QbZpdv5uwf!^B1#Za9{5O0( ziLh*(D2Xt8Hnp-_QwA5j6Gle#B~#gl%b74f#zmDds7u8-qxIP=ZDsrM-}iucC*w{} zqj+)`2wW?7PQ(@Le{Dip7W{EG*HCwik75=0%2uv!OR`m<;68#2$eKgIg-PKL}^ zdC=$uvz87U#_QiSoMYjJlhlj#h9BkbOV}d`Pzt}s@yA~?GeQ3`*_UDKu>Iol%CIP7 z-|Rgn=kfiSk3vJ9n%g=+>#@^X4OlV&I~2x!8X5(l5nz8wdT!O|`Mj*}6Y-#@X*|(W z!h@beP2h=cYCaF}jVWpuh=$Bb=KqD3zuiB@BYzp+^Z@W31m!Q`#l9xlzD-vUUn(en zHJ=C2Kob3F<+Tg+x1o|A?J!X%H10B~jl$~Hou=Cf3Cy(%_L|aPd@P`KNec{#ZQKN5X?%S4`k3e>MKF z@{vhA)l<#?fwC9%WZ0+e%iHt*Bz**uPz`|^!n6zfWcI9Sv!>0QGG*G7Ielk8GxeEi z)2B?CI&}`%QgMXDX26)?g0YDPYvb4}FOJsaQ|Pl5mv|`;1q55jS&zRF8i~D?@%>_I zt3umiuVq5NnBk4zIo=G6$uDCWjyHm$@_KN5nJEjKEu9iaL`_DZZ>L1VkkBSbP4S^k z&XvVPL#gAJwA!!IN;xm<_(VL~-ZY+QCE-D<&rINnCTczpl$A1Ghqm7)^FJip$Xq!k zc>=sE_k66S6}7hKgV7ybN?m(A+V*>g* z-y!if;tn!R>nr7VDcP#Bye2BBvI69OIovgGR$(%a%%9sce`0!|k8rTm#}#%?7}R<2 zl-3)}{9s0}Z`U*1%hTB@A|N7aH!rD8j_w{4n&Ky%ZOyH5;lx99;!)I0@v8i8A7>}Dh_B1 zZqv_C=&W^y;pTC{>5j)7C-+S5<+{^V?gikpQwgQ6JKImp8j-S(bqEhhY+?8-NmcqX zbH}KN$X+9%y)O)jP}RNRAq54cnNz!mhJ=NLy^|WRZW*9uT`}I0K0gHGt-9cTVz_Nq zD>g5WV_3D_QTtKdn+My$lONOfuZ-_C%GTdF(%LN=12v{zwAFJa@OE0fIe##ca*0Im4k1nulaV{eSrjVsiCAGSV@YpcAixDG ztk@?2+jI}HL$FRX=J4Qq+ZYGOiZ~ztkKBv==f))lg>*;>;h7)x8uVIT_N=n98JP|tUY?n)1AIJO zyR6|5b^upujbalKY@fS1D-{4@#QGw=u$ll50)i z6)oOe93J;57aJoqxPHEz>d)g-E5wtdz*N6F0ir#cC*@slogBvFSZRa9CKc1ot)_GyvQmgk@!RERpt0`nHBcP_{pU7lF<22b86b(FvO(PD>`8@EV&_A8%* z3+1dNx?u#Ponfp2|6#8cs%UfnSnM`JW|U@*q#MUd#Wn4*eOHlCkRO-+l3}!QkCFCu zO}Ag!3u!rhvNLVx7={{m8Bq@oyhuLfutZkd@K63B@FDv}Mc#y{t%fyitWo!2dJilA zFjd?9RZ;5HX-}$Qx7K95TjK_G{}-J+B6wKO!XIRM6L{)PD*QpkfON2~GHm6ltsDBlf3|ibQy^n^_z#wE_s|_^kqXU_o}e!yej3dk8Zz3 zQ!(0DqC9-G3P->0h*1{0OjM&abeYhGK$mI9TJIr!B_hCk3E(}|8qt|_l!B&sI~XK7 zNc7Z!m+!r!87H=K&d-ZYf6PE}L`tXJ-jbcP+*Er937ou%tyq)riTC!#%X{YYO+Qs1DM{{41 z7LyaHSG+`alMl~#)cSy=fM#`J3oR+?|5&<)-36#Ite40V+*zHrWLu%` zSBxcM{|l-t#e|m<8ekU6;vyq`{Uh5#Gtzi!5zC15^=ljH?~BETTJDzSa-j!(Jaq%J zmT4pLMX^Rt=Be&BVRs3-XOs+cSh6a@9;F=?7APF+3MY2MP?4Oxr)$@R3t0=h^>)nm zjLUkL_W&-_6rr?Mc);f}jEPuLr#+Y=JFy-PhA)_v!+Hl6`MZPK;?U`k?ht)nw(LFG z;+XSbHAm~{tB5C=3PG7w~cB$d^z=5Tum6fGvWx`%ufW+Xh z%}hpp1zE`jKQ5HXjU`A6(jwl%R8t`?n8A21JU}y^8=V(a)uB|{9VJ!;1ym-&{%=2P z7ZBLiyh(|VlO{;4m0LR;a)d>lUqBaWjTC@wjf`oer3h`a4(phdl*A4xTI)@a{JKZB zlDV?Y*s5%!aW6ORKzQGh*1hK&T}0q8H8-16Y1=xh11_u zJ&%q|{af>Bo>N=dtoa!@$?QMcNzWW_V^q0Mx2`MyPX^P#&I7tAvdBVTRc}7RIz(>g zswYh4S_HR7{)6GRYM+H6a*1&Rp#M0t|757ut81X9pqgU!RNjBE*GlbU{!%2>FxQp_P&L^HT$u|?k&|_%2q9%7DYX0 zv?W`sr#fLS<#}?YxKDD)eq|bD7%um3eh?Md*H*{qM-weXD3tV=y&AjHN-hVtI=Llk zW@{oX)~j=2cA(vy#@>!b12&YWYP(6(zh9PjSeYkzTeWHC_i}IVppchw??gm$7^+T2tYjyKoUUvCSN`gVrI}|>q%7~Vp0qQ z5hEr%Pt}6xADIm9;VKGajS_F+Snj``8HO6~uFpd90iZ zzn2u>$G~TZ*P&^*Np4g3DE29z5(PCK6^(4FZfu{j%mkiRb`l=z^EV~M5YL7AL@HH=LyfhR20 z-1qlH8A?#oeSV!EhwXtLxfpkqXjvWat4@)03K!oYr5ynFuN6IetgIQbyoZkcq$^2o zn`M2>uHXE!*fLAQ8Bv_fkM~|vTl-G$vQ@+M9_hJZfw^NkH=aw5i|&Y((RRZXHcZgh zC>0iC;V)<}Cm!n=2mHokRVX4pFwT?A-kz3X|R6% zpU={mOo1`~!?~Ivayk9qPuKJ}3Y8r5##YUeSK>uBEB|$_FqdD%H7@V}2fN;Ga-s0w zt$X`wb2;c`2fWnNKV+|qA)khRQze@`3&bYUI`1Xpk)VecOxAezhOL^NFbsA6!BW_C zt!H9290s{1F2lrj`0KPs)FRoF^h4^2h`;l!g~qb}Q2wzw#xoFtjec}8A~4e8gLVNt z0YaOq?QwNhk46~!1_uSSA>K;B(S}IOfE+y)m6s=Caxp5HVcmx%jf>NJt5&VxYrD-V zD1b`(vG>d(IMyYe<*p!zxADG556aPKhsB|lHl`qr5LS|k98&RxZrSWG_#Qd1TepGz zgW9$Y>d&`URP?de;}6ExRL(GEy|e;+OgCV(`+H>XhxW7NrL2W0!m0`ugK8P7GC_82 zO*zV1{3<+ux-iK{~HU_JGd$N8Y9yhhrwea_z(U z$vMCs;Q-4@Zm_YoY#G_Tz?wYNt0nKnj*DdUe+#q*1`yo85Hn+Z!RwXdD;D!!*RNlv z@<3O<1v3h*DOKK;{L8mwG`!xB!J`%!2IABdoV4LnXM>9vALVSoPq62dm(gnKY(OhY zIU688M2@p6JjNas9%Ii6li8yg9`T(_;FlTU`2*J71fIrmHU9_7eF=||3%XvCHMXMd z$ZDa39LFX13)pbV-AC+o^&;)9IycdJSeUU#NbD7#NdbDXm7&Ne|*t@kj4S$ z&wkl6dM0Ark;d4w=nV|`hwL3a3o^n@yzy&V#9WjOlmRjaCeES91(#TEuN-S%9R{2(pxN3sQ@ffUy09 zZQo?!BDp9SrCP+&B_Hv8@@dCC4ku4K>~TEJmf1As@GUkAZ0_B&A$mn?Y2+z~cqe&1 zNURH#8ZxO9TXXs}(w)K|@;J@jGi{k5wDhBQ)pM#?4f2)X-VB__>ZVRLX z*yGQn{S-~j2;uJE-#Qau0u^LDl<%)^4!PmZ8TBrjj||VyT{N$%chPto@1kK7j1a%c zTWMHV3BX79?p<2iyHAOBIZcwc7hO(6k+`6yRP&RPaA}Q~xB5$zhAl6PlGcNoC9i73 zE3J2BOW=K+`d+my)T|20oDlDu(ARidY4xYTypHj>E*BOzPKm$-=O@>>*2vik1u^>X5GNEA$ik0=S}Uw#6m8SL|*P z+2dVA5UiD*e0iJqtC#ogwq$6{n?;78^t>)(+IQR-Q2s#!Wdz%1b=G@iCd_)F;HApU zk)2spphrZzAg{2ttlx9F!LjjX751B!P1{zPG``1x@PgE+w#6AJ4fN(0L3uNImYD`| zCVU0k&zu_LnNu!{SpuFvzHlLrY&_1o5shi~yo?l2&YqVu8g^p#-2GbPQQnT+YXlwA zbd*~H+6oW8E>0Fu@x{gm$NF+h!#TXMEC+Bb87Q&ULk&~!#@6${k5_zR2RKo=&qHs0vJyhl7Udl4s- z7CcO6ZZW;zXyjKgo9LBw!V053(Hi^hM(Y<*j*RfVEY+^H5%kHo>fGDTGUWFb_4{1sXQR_+ypO7+Etb!#zAu-q!f3!|Kjio@RyZ zu>~yu)qgYyqp!H&Jm;e=GFIBk+nuwLJul+G^5oIZR&|=$4zKm}#c@BAgUhb*VPSFc zp<(evO)6&;PC)zdv!J8km+3Gd${zp<#K~LlfG@*oLkEnIEY4+}%i+D+J$D!C>+uSD zv@~d7rcq9D+KLh1hymTdawzWZ=~1-2JTI`YGRNKD=6yh81XFG+QaZxUSM2S*^^^-& zIwC7`-c_X!q}Etjp84LrdwJLTdPAKG)ekp!1@kmOfqMwb{;?97|K2TBsC&^0o`zKV zMEpGJ|5iJs?@-+4 z={%ZJU~e9cbif9u4)E;?(kvnHgq``FeTMIz#D|TluWvl`Bu2<9P;r2T*9wV^ zI)25{{RU>JD4VmF4K#38v6ru?ufMZ#j(3Po5OLX|%(=JI(vr5ppfh#~T-) z8srHL(q#AOgj`(<@6NfsvuWcFbwi$PwS)xCO>>0?^obI-shfDla*XQqzvp67qN!R! zE&Zm%wi$=?Bn=l(J_1?&4u12~S)hvkItzv+nId!+95MiKb#3~Mcjk#`1?b-bGzDKw zj67W>*V8oXVeyX>Z?Rg-u$t<`f9ueZ_9b&P^I)6-7*GU--sVUt90=+!~+x5&V zEDwqBaZ9a?Pa2kO*jx}77h>s!k5kFfi^_wB26`aUPbyr88Hz?V86Svv%@XUe_+Z3K zOV=mhtsvt{o7N}dkv~>Ef6E_x{QjzCmRd|o*-!xlA;-BwRg)7`5T?ol{4#0q>2k^rb!WSR_${iqZO^y$jZ05CZ3R5 zHsQ-ha;EcDr#Mwx3$7#Cf({SkfE68ulIL+*fZR)x4>9bAXzzXFMw9=^23D0tt=#q75+R$#cvQmvEDvyx5QU*Fp+!C$rmox_kJrFIktd*(JlHQ%Wje zaLE$86b5^GM?{p>#djExm|j~{zT!n1Y1`m_zqYt#4|y7Aa%jxVjeBD1iE0aWWI$S7 z{`i-~PM)U^jEx*H<~;jq8CyQIXXn8Q6Q`60`-MhM9lmY>-B=V1n#ChWc`wjoT2Q*) zQs6EFQxd&Z9+x>Grx3Q_p=-~4f)Ct?fAMgB%Cr;jhICFpZ(O{F?m2j*2J8yY9Rq({8U<9Zrt#W z4{~gHBa&0#CU8Py07a*{b}` zve;zS0NvvVzE?zx3b8``sjJl0>L%&t=oagC>aLran}wO>nN2YJ$~?@xv-uG7x#nBU zkC>mgh_HCtVwJ^(7C|k#w|KL~UQ27sbjy*Jt1U0K^laIsWo^q(T3&0_rd36&XImYz zvargxnq~Eg)ivvI>k8|Y)(35bO&6ObHn(j(Y=doMY}0J>YjnP*>-1ZtJdMI z%Ucg^y{Pr+)&{#&yHR#i?B>}mv|DAj$L_X$fPFjrk@j!f@3nvE5a%%3;cbUw4i_Cg z919$0Ij(m+?|928!D*_~hfbe4?R7ftbjj&^T)-aUT`B~>>&TE`MaQ@VJyYn9B zubodhUv$3Ve8**k%VL)`F56sPT(e!fyN-5Ca4T`EbDQOM+C9|0)cpnb%O0&g`g^?K zan{qtGv9Nz=YB66uN1E#UK_lwd53#H<^78H86P{JK0dGe9P~M(x7HWwr|ZA;)%o`K zt@jJ`EB9OOch^6`|9SsU{J;1AJs==pSis_di-9hI{()@+lLE5>M+d$ccp>n1P*~95 zpyz{j1vLey2R|MBLGZTVpF-M%l!Uwx@_NWGZMw8s-{xAVcW71U4`Hu{yM&JpKNFD< zu{h#NWMSliwr$$3ZRgf*a=Y)MIz}ytZXN9zy(y-B%&PW2?Ps=ciX9SrC$2K?RD5Op z;e@n=4Y+RNXos>6=aODY_Dr6d{9N*%DMM4nr(8|BliD-2D)nOOcWFb@R;T^av2Dj; z9Y5@3)oEU5%g&{px23m8@0Wfm!zZIM$17a!>sbGE7?)mGqbabf?$_qsZDo!<3Ux5RF5 zcl))dSJCpKABxk8=N5lc5>qm(KQqQ1PI}gLQ-F4gPIN-ywTz zQftmU75LN}PyH}7d*~}e9}LSH_StaX;qTN&*3PIsGotf|O(U~M?i|%))JJvtx~J+k zkM*Z%x#I5MOV)=^SSN2@FW0lXUH&)$U)%4b|x6ZBhT0L*|$+u(Pp7!?L zHJNMXt@+`d(07Kub6~B<+Gp1uUFW@S;JWkgmcDy^eUJ5P*Z=We=6j#Kue?9v{nH=x z`QXD3TYcF5!&M)({OGBV_H9Vp@XAJIWABZher)^kgpaR&lKRP~o7^_d-t^w4^P9fi z)bwfFPha_T*{8=gyKWBH+IyuanbR=ce|wl3OwVO!L;#BG_| z=5E{dncZhYK70GKKR)mJ`Gn6`e7^VdAHJ~tqWu@WznK2T`Y%pySGI?5@40>U_K&w; z{?hu(q%WWP^7SwGetB<)|Bm7vqjt>R@#zl3&a9m;?_9R?vz_1Ud{A#&?^PdIpH!b$ zKdOF4{o49(>kYfw?HaOc@~(zmf95N>%iCpiw>+i zu=l`~1HT`%JXmnB*TH26_u=1-Lr#aX56wBW{?PWX9llQZ`h~Bze0}umD_`F}-1czt z;i|(^4zE0X{P2|{;)wo8n+* z|FO2ml8$8^D>+tvZ0ND^$7UV-=-B7S_8mKM?DDZ6j@>_Qcf9C$zvDH>#~z`eTb&SwhG^gi?KnZsw!ow<4D*E5E1T7KjFP02Sazj^GS62?azCk z4?Q1yzSH@F^S#bjpI>?Ym-CGmEH8AtFz7p!>=s9a^TAGE7z{vz4F&p=d0mYi?5Ep`uf%PuI{>e`0BZ&vcxaDDsr zufMhWHu>9O-;VkA^=}V;``|{@jocd*Hzwbhd*kIBuiw~kxbJmx1(-%x;^ps?Ax#0UUvK4+n?U9 z|IYS1kMDxM8~)wm?{Zu&{O=%!yqQPZ!wKsYaipNCuA^edmQ zI^8RPhofiFO%1cGre8G&`NrT0hqb%mRk&?%!J6}j@5Hj3h61(+!o65d(|Yka^7#rb z6Zvm}I|z3l&mG_@;fBHGA?_KtWpFWY3lR4Ld`jo9wBuC>UsF1WPVnDH+&Az)fMZ(#`J%KOp3b?6o7l7|T`0JGpTnC@<+W>zO{2(QYd(%6FsjP7b_k|y! zB+0Z?4-H?elwvvB$P^!0KJo%>(aNB2Fjl~Q=uYe=NTB$-)+ z=YVJ82d&+7RL1{JTbbY`+iEdr|39`B;U(M2PHFXIJBb#+L*o}}AJMAmSM&awD{uPM zEEHkzfmslI!0N!0X5c#u3;4B&10S1x31zL2i#fsgW!^zezly1XOwH!Q*+6T|l~b;qnpJMa4t+F~T(nw^m_wz>Az2`lIem_?_YJ zfJ2@-%BL3`>PyZHeZkBJ;d=O}mvrC5M;l2u5&5E@m_NkxD{$z8I?zp*4fh+|ONaxE z4)r#B84m40PPY#}(wWVKv&Hl8@PV({6ga@sSV4~3hQ=Je8e!C*zYT|W;#p0<=^EgJ z2K*hoOM*}J0dLBBjD~*#@!Q~*sA+ZQ;iG*lP#*c_7&~vkv`0 z_ZeU&!?#wQc`4u$5k@}dZ^9oA_X6TTBb^i6am1sZ=Fh=}BR*Vdr@I3;3**j5zzgFD)tMn5>7GKoJ79O? zc_hM7@Ht?X!AHBAzY3lWgWrU>6yW_6eDp1vv&?qEC%Ss7u*9E|FM*Hv3*mK0M|r~$ z|C$l~;LHX5uJA!`a%NPQ5;%fG8xd`(JxVG-L-PD~;0Asc9Rc5=>DLwx@WD4`d*Ci=j>a8Zz`v%ZF-ylY_}5|p zo(Z3;cm|Al41Ca9jz6dajZ0>C0e1(!Gv5CRe<$Eyg!=?;AfC}y3A~h~`xS9zc%BR27Y=dq{VarIkp@mYK;CbvzK-&vvev4;?ni{d13GWjndQMh zi8!>QZZuqLxJcwfV+Qdo=sks}!k@(+LH z8c!0O3QJemH9MS>Fh~bjl9`OI2g1_f{Xm4*i+GfccA~jZy8d{kITEzO`~Sagtx~~u zE1_bsV#^oe^C)u_cM%EQ=UpWfGDH?T-PFhfl&-u0vPTCcfOp2OV+7oKe0$=5lt&oy zW3`aktgzR%PzmQ2_#TbB;)L-ikKa{VV4ooYx^+GFxD!xT0xXUapkdbYTd+oHk8n0* zp3?~bpd^U3cy5I6fcHVrj_Ezj>`1Wq7&NqDLBjrpuL-Hm|; zhgfSQFbY%r8*um0-hIFW=o>^AL3j~;jL&L+an<@wv#--Ddh8{-QXi6h{DI~hpQ&Gg zw`Kn__0iWPzmxwC_@3IBX#GF>)IVh(A)cW2(E2I$73#01zG$HYvEruf#GCl8oGX7r z!^wyP+JW^3-ld=cIqDyia3YTU)`}(bR$8-<6^?7{Tk;0Q)>!tFesf!z;zYP@RMNy6 z*zom+6&;n+1^u-I<5&skn~Fa9A^PSA7-KAyD$!O6&>ck|9H>OVMPsdWU$`muq65m_ zgno+gOuVLe3GBz?e1V>ih5H44cBO%yjO!=)cNxR^x|%G+MqQwHkO~{L}dvwuS}5RXvbj)Lf3z{oWMIQ!1XiZQLg3L~PHC5}%1%Z3i>qbmM)1*k1*cQ+$D`!g zC_PzWO3jFX?}+^wU<6;s>28fTl z@4McAVyD7U@2>aO`{{%9?erb=8Txhl_w}FYxBEKy`uPU=;_^^Gb3a=@dp{>XcRz2x zFu!cS0e;ni2LccMMP~!)k8txwGjXhNXBR&&A$uChyEU@>Cwl!`W{3E*l1%83_I>-I4ga ztj+I@_igWEKm0zn$m#EX;_pA>*X_Rh@2hSU-SGJK*0-x6q z8?UdseB*j2MY$e*?c%i~*A89V1I^t}S8qXs_wCiIS1(;Xes%NJ6<3#DN;tR2l1^6r z-~GY-R;g7+YKdy$k5pzVbL6x7tG)WS9_8@A{Y_FPDw7o}oSw3QosOf@72l`MRHiCV z<91GG*p0a2l!!Yl1pKh4=!3JC)bdkcF=356g}iXK=>_FQ@uMutLHVAzSx24YEjTqy zRxfX9VX{4J(85CLh#Nsv7@Y}>8OA?*E#4esgQpgz@ibKnTPl57l@@NLbYMHRur>2z z545n25{EB7s`L|V89BXDikNEn-6YgVz|<=geV#C$H}x6z@Koh!8bj_0hNpNwfHv? z;chauN?R%=M9By27#Z8s=_;}kYhpW3!YwiaPa(0Zi=p+N|Zm)KCt zs}RHB4+OT<`qi=?YKv6^XFcFmE-3-+^YPqOQh{)Nlym-LIZz$TkP~rBjVxWSM4=VP zsa*F@i98Ds>xp*(fJwkptYv_V4M4aZ!l}(U zC&)ZPw75|DJ{9v?flQldnQd7Gju?fWMZ8JePz4GR#i%8yeMickOJe}R5Kj^(>Cv|- z#ZW+IAcp!p@q7fH$4DAiOU|x9D-A;o@jY zmXLU0LC-p{B$mulSSm|n9a$&VnWeJ~mdU!nh9#Tjuw0f0*`t6JvaYNfD`Lg0gq5=H ztc>+wJy|c-8&XqW+!NiOm9qh?f>pACtO|0}AT}8CN)3C84TVfFoYk@sY$O|nuUn61 zW7t?Wj*Vv%aGCBTSjs$&uToEC)7W%2gUw{K*fVT4o5P-EbMZy#=h*Y?1va0(2-)Xl z_6p>m*VqEKkS$`1+3RcxdxO2nmNFP1u@!73TgBeO*^al_8hnmnEn5e9WIevW{671D zeaJpy8`wtnG5dsVVxO|jYzr)~wz1FH=j;o%9Y#_+*iKf@c0r11V0+kJwhw09U$F!1 zAUnjqW{24kc9b1s$Jq&XlAU6w*%|f?JIl_o^Xvk<$S$$V>$!@XR z_=fEF><9KQc8C4QequkfU)ZngF1yEmW52We><{)Qd%*r;4_PBKz+;X&+`{>3;2up_RP!t75*xJ4dfgZ$4z9rc>})5w->Vien{8{_(6V%f6Wi`Bm5|CAU@7d@RPVH z>NG!t@1C9I=lFSk0cQX%!K(iXzsj%S-0!!z6ZIy)#c%WP`1kmV<-hnH{v+H}@=~gKQiYiep28qF9h^P@yiJ@Yc7%pnX z2(0-=i8?V_jKMkZabmofASQ}QVzPKzOc7JXG%;Pw5HrOr@r;-)=7?v-Trp2PC!QBC zi2340@sfC1ydqx3I$4L6qd9iJTVR>k5|XkNWMz`ATf_R<9(I6^Pe|4zN0V$#lC>Ws z>;PCY2Vu1u0?8&+3Bw2-fqAwqq^&57%`uR+VsR5!JmjuK%+yIrvXY{tLTc}b5x+B} z(+o&mU6d>(8?r?%q^EqPKq9hL(cy|`3kpoeu&v?AnXyVl!KU&=+2rW$|2l2b6EKfveF6VD6GIgg4FP{@``dA zH{G0q-0*{P2lpyGh52wOX0lAQ7FK%GnFTN57#6fXLe2vqE8^vL9L>v{z#Bp&#oD`?TX>msRR=FX*5og6Y zab8>y7sVxUSzHlU#WitVd@F8+?dzUXL7nLi@S>>|wrg$L!5)VbAFo-6dqGLL)6FQyFO!-*( zMA@ut!P;w+@~N^1Ysp>8v&wt8nfgoUbidG<>nwCFux@)n*HYI?d0l4(J;V~_C*0y| zqpVS0#oZ8Vm6wzSxIcIsv>Ww0TU~3Noz7n8pmWqY>6~>gI#->W&RyrB^VE6iymdZ0 zz0OzXr}NhZ=mK>?x?o+1u8l5K7p4o>72-e^PcIf#<2vc!Iw6pQKu!(<-4WUDOSyvf?5fH&Fch!ylg5ai-K9%^jnxk5$P06 zm+x{Zn5(|)Md8xYPAIUnR7PcF&_hOs`o56TmP#O*HiLqAhgkWl8$EZE&z&jQSq2N} zeJ}bcrk{NJDWlgVGS`w4ijY6@IX}OX1rRSsJpA19LWx!01VSV)djciQlE1k!DkEb8 z!2w12*iD5foW8Sj z2`CV?Lokbea_Jd$L6df>9XonlMO}q8kd_=(SyNjz7Hm~kGrFQ~a0P*ks~B8YF{Gje zMb=deuK+;`#||A+fdYD0*Ns44U2CiHTRMIOUX>21tFFeYE+fX)kykU0-j&o$z`K&_ zan-f(GiwG98H1OFHMP~ir|WQg6jNDQS3Rz#Voc45+R-(GYt5>FPerS$5o0TdRm-qh z-Pn=U)vbVFO+~E?+fPFI<7=wM45=Ma`_u^JR%hEBr9N9#jTkegx@ure-N0dlR&n*n zA=G~+Ru8KfJp|P*hBv0Jf{MiJyz*knAldNon58~u(IZuxo)Mj{KBj9>x$0xC5vrH^ zTv`erR70z)5g8e31lnGWC@h4J{0NXpr{zarc$83hs{wUWW4mcUoz=(A+G7D80ZT>0 z%U8WJ6{bWhuB1eb);ujXpMX(Z-URqS7mT7tWNCh`_5vJ(7idfn31#FVJsv<3JP?K8 z5rGf~`rv`cg9lIt4@4XS0D|y{G*n@#F&>F9RAH(y0ini72p9rYa{&Yast@XW5Cl;~ z4*-K4cpz%v0mQ&Bio!2yhhIrX)C zd6G^O$}w&bbU6k>8K16txoRxNI{CJ+P>og}CzO}U)a9k+y^H~s?uaSVQfm3h@iDJl zOW#ce*Z3f>9AhCh*8~cHrDZ@xXhL~swa5aQ--Pl4^|6=g<*QzqnqL|4ka%Lmq--#B z0KSzmgtx}nN1-w`hZ5~oIjX7xm19gNq{>TBO$;6sAcUKP`SNu(k&Ft>)~Er3tK`W> zZPgbADkLGVMyTWhq>67gsHL&17AV(h01$+4E8A#c#^VN<+6#g%GIXHD$h{g zVzxmw@R+UET83m@0ZJLd!yB1lXEh0CA(;f6r@fH0&cc&~FE&O?qGthTnOaUi=rppj z@MRt0%RJJ{(WqJz8^caWK@?}5*A*5z01I8$@5$cU7SwZ+}1q+c4=uoPT7w|Ov z5Kt!u1j-0MdZkJv2+4LJA3!p-94|l$V`^=fK#XMOQk6B~0YD~@14XIqcSIKiq|}3e zmOyr`(((dh0+nn=_9+Fp%tyn%L{b+WS$2U^1T^>(V2^r(+_L_X{_3+#nSoA6bS>9r zQ3Pc9XcbBZPkWTClmS+f(Ava?XYIA@P}FWfikgkmQjyfK@bN;8k;Ipcs6I<13RU96 zE0-fdq1w0LsXV7~xolSCj}|8^;Hj0QfNU!Y$WDuZY$5Ui10-ZfD@=}l$jq2X!xu4H zB8i_&gix`X93d^aq;R3JB@4@COTq&r>V$xnixdK6j5_`lf>=gm5Ylp!%?zf*8(B5Y z)85L#yO0KIIZ{)IAZ6{TiDeQ=q;3R)c=BbNAfP>~aNW=v0PpsHsyp}itcr8rzccSG zgb+{>5d>ohh=3s%LINa`K!~6LDK{0_K!9+OT)2dbZgscTJhR@(qU!nom(GX4a2yVusjBs@nLvvhAm+%qpQAbc)HI&PLE`#Pe z!aeN>cYlo3wbt7ak{pd*>k@(Vky3>xkp#(+2ap>Cw;k(}HP-dMV_hP~x{Sb}eh}+e z*Mu;LguE1@6$he^Atp{_xH7GN%Ct(1b-j2{UBrVG$8>kn$GFy|Lq?1Y zKc_zPLj6^{Mu>qUu|Wd+%O$pIS0)%*h}A)L6I1J7we-0>kC;I?tr2+8#}bo>HKvqD zmm}4#Mq&ivwA894JJh#U(4dH_U6Em=;?lmkdd3vFy?WPYub!cSr?_XA*%NM4Ty9Nq zm1GKDcuc07I#U!=pA4cyo|rmzKwNDX5(Lp2!L@d0n3`jlS|2cVXu_l>$vq}=4+>OF zo|#;NxfZR2;4~3ObsFZVKAO_eGSzbozim7f7h{`?AT_MvcYJV1sdw&<eq3xDtt5Hhx#a7Bn4Xp}NQhKGS z;>AL9m35fhn(D@ec^%z5=#12xcV^p5cy3Mo81h zB|KqM)H`=}cBvb?de^RX$?JyrV`u*NS4?h;*ir8+xezR0onaTOV|hDj!-R?%^^+-oH78>+ zIFhvHXNKuLmPLbjiDM^tb0m;uxkyOn2 zshIOqG3TdZ&QHahpNcs@6?1+n=KNI51*w<|QZW~#VlGI`GX7-ZCh9ql2VkRnN<)$`Kqeil#ab9CX?ZRY@Gt)=10#h@4c5Opb`fN`Vm9uLk z=p1KM5>HK2a#Rp;Z4mJ&7jdl`>7#t;^jc4oqk`MjIx|6eOT@Kmq+jkmrqAPH|FDy<}*UVnlRGX+% zBd{G2m?IO_E`4=s#HvYDtPV(wbDQ%1t7vz_ydqMt? zz^n*NSH1;Bf&B;7A*dd`B{CACWzEN!F@CG%UYn7%Ve^k|w*r;Vo8pX08kC}}#HK_&p`GtC&Uof~`?b0UdGOM6!Q;?^{ zT~Ls()eCb-``VSW>uTzAmoClAPoLdbUtgoN{i50>3mWI7tm_&Zlx8litzR&^F?HEt z@iMtV;MmbcHK%cf^L&nrLz+L2>f$;p6~g;!KWD-61#@a$^oy4@Hr3YE&TZ1mj(WL7 zR*dzUz&OvDRp))2ow8~3)S+L@hFFQl%02 z)x1}p5%hV%g{y~pkzOO!Hwd7WUU_CsJvp$HwQRX8Olw-vC}dE2ldO{~OITXV``sMV`vZpHgf1~V^W`j4d7Z^nv@n&!}zbJeCGr)Pa4qR%NVlUy-*$YL6 zud=FoQl#^o+T{h2Y_NtMRguLN4MY|r8oDy@Ha9Cfx;3+w*GKwD7n>pdhNl@2F-VEL56{${-)w!7)ucWwm9P}|9qc53|2}dKd&K?x z-f$87!Lko5`@f_8uJ0tj$6Leh>LT{=9!4YiW9+Uz!G7%~_HLikUBO+EJ?sU(#-8Bo z?ARV;Pxk%D@7d@4oPFRgb_y^bze>0qG>4I4If}%}Nn}!xM)5Kz zB7M>UnUiyoHt80~nTV80pFpz2$(7_IO(HTR6-bO!BO@|NB}3X|JpP$dh_HM9-TyZz^3uJBfA@kD= zKVWvMja(lIxo^Yv+hJUYgUI=W{fg~rB(E(pIhn}cbS5{l$b|v6K)#T|PW0PI&{QHV zGakv98~IH`5@tS9FY;@$H%6x;-EuopB=_)JjpWLsNU3Z@BIRlRcOilD3#3inLbBw2 zq)0yJcN|HPuaFRFK^i0-$&W5bc^u=HjZ{Z25*$O3)~G@?28{`2mEC88)-c3Q72*j!EzZ8u9Kv7zViEHUZA5|Vviiv1LaDc-7hhoY8Ie2MVH6Ka#CI7=|vNqMc}2a5WP@pIHw zzIA1y^At6IqS?w{6O2_T*Bs`{$YL{DQEiY6!-iHQsCi|6C)~WRHZjGypo}A_p1%vM zguWS(6epF&C=o~E=PLZHp$8ri`MrrpCLmq8BeKHmv{OwlMv;j2P|{0f5;9_snm1$J zkWtwNu0_hj!a5_rvQ~fVk;<@0x~y0GZpdYH!)+TjYc+&~62BV8#iQ5jHMW0gJD+zHLw=AS)n(@0?W57o5)EsSg?nuQn<3oQMR>DX~ zi7Sgc9F;h6KP3LJX%6l|cy*DO#3wn7Kaa4}dX))E=r6cF7=+kIy7!SLi6fKTKdr8( zkpbGr??e72#S-GQ@}szH*6030bC=vCSF@t)`5n|UT`wWoY6bt2GD(fplB1Y%Uzh4_u+!9RNlQ?6_}oT#$@87$$p z7wKmf*d6pyQ#d<|B%0kGG07WwI*eBtu>`&-(x^QOBB;K@q z(LQ#!eHt8Zw-V=%`9^?={Zjhv*xxy?X`%z|3)o-5x0g)3m~UN&dYYF-;VV2 zYV#28k0RInbfP>_m8eFNc~|0^#Pr0R#2loTe}Sa(Tjp?D1JcMJCmu+wGoPE|iLJ;Q zpE50p{Wg|(8#&@miBD{o#Fvai*+>TGCNq!&zBk#`4o&9R@?>7JAOC}GRkAcWA}RB@ z3HF-gOglX}H(8ggL#Fq7D{*4MCE-74<|r&=e2FSlL??r5C?u4(1_io{uj&r4cg0#CO5 z5t~O^J88^|DF2Tn=Gb+T5;TqwXMC;PJuyXW62l}_X`hHq?37^iNlAJ1sJKR-5!YBu zpJh+WkBIqaEw_R@6xX!Wz}K|Q0e{sp7yn;rsFU)%(RVa#7kS?3Zh4B>B8lHF(xAm)7s8#B}zdS|!fZE)r`ID{uLWvU%7n07K#Rjbsw43-2wV5v%@2Yr?V04p& zwf76gO4NUWrm9)*GDT7qdrI%MRQ#j6h9`}Ftp4YSjeT2rt>)fvP3M;qPyAeszhf(H zF8Y!@S9GAJaG;b+w4dIkU+W~|uTa-l^zO|P%KWiqJNPHXU$;CLZiUGI8qPPA(*_N1 ztp=&eZ@5_N58~WH(Erf;4CTZ@mFsCZKM?dVoD86c zk^Y6>I_Y8PU$low^)JZezp1@T(7zyCAM`Cq&1>HxJ&W`z(xXU!g7o?%B-N)Pp*|OB z^d(51--49+ZH)VOBUQc@a|6H4%*12_+b1Iwze9{qAIjLosLqH>&H5j$(k~oG&fJ)1 zS!Xbua_)%pd9h8Jr5XX<)S>%H)1q|C*YRT5nBZ_CJMiRV7>cq`+JdA9XcaFg=8 zq($MAv4o!Jci=?vZ$E1tgZ(|N_3-A_w?H}ZY&c^M#y(OUE9ud%U7OfJ2^)J)?T-k? z?~qg_t`I+ofs)#^e;1qBF+ucv2rp`R3S21uqwk8(=wsrO{({($h{liE*7B*M%*o4J zq*vY4BD|{QxA41K_A82gD=pKQy)AFxS|&XDxyE@+aty6r5;J;q;JY=28#N^_Xqsz; z)5jeLyR<%vpJ|#Km$n>%=d`TBKD$L?7^(ha8dggr`eTi`zve(U^)p7}-=lZ`7bzFc z*~`#*i-w>*EEI-_4&M}=Tg1_Or5<$2Tl^XG(DTA_IOlr!CMWz>Fu0vlV?fQz5e==TBDolEm17 zvl-_wJ35~;%{@7Vkwd%a7xE|XXlb0}$Rur@ITPKDHOOpEY4mlcGguQ`YC4^P3+FeO zZZ&O~%_`ws(>H{&Zn)G83gi5my18a(2uHvh%;+#SAaZQRg>ex}=VsCwxU^}hnYJi| zOBODfYi0$wX#QL?e@O^sz1uYW0~VN-*o3jr+=@*Y2bp`Y@wmLEX&L$(B=_BU7g+^0 z{8J~i>(Zy?D)Qz zvC7Va$vd;51`J}&^Ejsu%gt0yhU|_Wir<^;n|`wExSoA`uI;(C=iv)q&5C8s%{qM1 zZnPehXHUvrp1lg)&0DkgWWSO9ZuZgauX;s#W%jzDS3k5lSM{3IYgVsCy>97sPp@^o zHuu`qYk#jJy}rtc=ePT+)%)U?q&(=E!zcy@(nS9(_M z*;voUd3II6(x|0!PN=`03zC)JwiIOJC!I9NU8^XKn>iOG{Bq^YCUMUpq$`IsY{~EJ zW0qMTc`L1qK9Jw4wm7p7a4k<4W1Za+qrV$kJNod9)5+=OoGiJQvm={Ww|hU z${DkU$jTmlsCoBrX6^CF(>?Nf4DC_bV;s90uSVYJaSd7~K42H)1obe+IpwZBx0-C; zYzNaPT+ySB)54;;WC^EyZ)Z1RUC*sr_T%+lQVV|I*#yrfdN$d!DV|;J*)^VB>)CYA zW_UK!vss?a_H2%4wVuuOY@TQHJzL<}LeJ_vtM{zIvqsMrd$z>0rJkW3j53gXL04G7 zmV36svz5wZ4=jgLk5J}UF;fL84?o4u zUk0c8v*^VKaTsgoC&I#xJ>?|E&CFZzoW(6jl^TR#aMJnLksERYaQ`tRg z;Em|k=sjA>Ye@M6%GP@Jpl1(x_ONH`JbT15`L4W+MZU`B*rT33=Go((J>l5~&z|&b zqh~+$Y?EhCdA8ZJEuKB?*)yJP_3T;Cwt4oPXWKn{-m@K^z2MnS&tCLwmuD||w%fCp zJ=^1%v@n-f(!v~*7Ur0=FvtGYGihtiPTHDd($*Z4w&s|$HOF4_?0{#ld-jHB(k5L9 zX_Jmgn{@1;XVN;IowQEJq;)zbtOW70Yulh)~&v`)vQbvh=k(=lnC zj=k@hv{Pp%?bI=8r;bTGbxhi+W719^;6M4jBdO@R>BE`n#q3}=aXR|)wzk}%D|5VQ ztlHj98@vqN1~;+B*_l;`Ygl7=fYpQ(v3Fx9;uGSxB;HOAO5T#zC9NdwNZJ?e4z_Df zzb5^3`#0KulM&14n^BN4Cu42K=8QKpPGo%3A=V+2_oSi78B}wYd>SLLXe7Cb5%^Ae z@dudyJHi3BEwV&V=QmW zH`9&hn?=a(YL=TGn6tUg!kmZMnYj9(kCQJKnJ!>|a~@b=x`IXKd~h(@vLqcn!J+0t zaG1FWEH&9+naKf%o8Dl#=>v`=<}}{bI-85RDmHz=QgaDd#=Ajg+tZo>_?$whez;v? z`h)$~KcGZ{<{k6`9Ej+!zxGL!MXj`RF{ot5~mCPl?+ zmYV`X<(NXSzbOF+ptqIMG{e9=QwkQEGO!38U~<>t;80TzmYNE%%!~xfO%W(>Iqs<{ zxhgiJz*18MmQnZ8T`8K&xxU1V2K$*YV1IK3SP}AZCD*y88XRcGf@NkLSngxLN?pdQ z%MaA0E%pgq=b4FMzL}&xCaaHB%BHBx)#`GMx};G{y0ZF^!>m^G&0LFpF1j1#{?~zd zW*V4p{s}BF)4@_R11vK$!E#n5Tn!sXNlhoG8>n5kpu^!F-q;>uOy7vC&vxcjdpZ68 z2D%syGq!(hX7N1Zi9__MjVA{eVA3kh^=g)zdQ7Q>i!f=mMr5kybA1D5Be{E{nq}y3 zlAP2H&X#;5gCA76lv|o%TFQ%D)!M%_95qPn= z6)fV51kze=1B=l_D|P7(a2WGaNz+|mnYkM*H$Ma)G`EA#uzHcf`?21|+(SwvU;Za9 z#pZv3rRH9+%-jc-la6t;^O@w;B6{T?(l@T66dq@0wVi%(Ut0;#Zyl#cIu&W*{RG{g z%(5=v4W%#h+(F1!m80vZ+Pt8>rsVto=Dy>}A9)j&a*{XS8C=Vo?o6)bEq5mAmN(fN zOnGyig}uC~&f;3$OeNj&W+}ajyj9M_Ufv=letA2T-dElR8@XP^)8v@d;3ejMu%D6f zDA%k3^H}YX5?%)mGCu)}%;Vr--pwReHi0E(GdP5APe}eg3znMaz%sKPEH}@CBh8Co zrFjV4XdVSO8JT50g|=bJ+-w1#*76PdUPhntw!YNJ+o$BkF8t-1m%xE$H&|%)fW=1U zEhT0zIK;dHmYP?=GIYmEt=k8do1cRtSuqOAx2+Z#nXmLW`@vlE8dzvv2aC-cV2Sw^ zIK=!KEHg6e7;b(8hWmV956S=ew8|#lcYf&FrTHx>mwxbFOevlJ#9YYrzY#}&a|j$@ zWEN6r4ueJJ9dNLD4=grEz@bLw8N<-HEcgEa9FE3Vd7h8J3iB~I(!32`iM*j@RBr2| ze$REW`2;L8N5SFdGq9XBIO(}d!a4ly(JHczeTFE#Oc@$|T}}G4n&swmVktC#0E^5q zu-N<;C|Z9dy^Yd^zC9PSj@tcqV$U(HU~d}% z`&a|^w^1teTW`HH=$EA+gOmL{}2oAHIz)~x-gED(I zINWvy%WW5Mq&*L;v=+S5wg)$9&l8LfwktNpR>u1>*4`v+cd*=E09Jl~FKBz$on&oQ_$7NsnVMA=Vt*A4CfnIFR*yMmReNEU|;ZA+{JSwL`!%I}|Lp z!@v=?AGpR|3OxP zIbbg%HH?2&=0x-*c9fdsR%R1YH{|QQlG;+@&q1rO)QNJizpVgs?Fg{YR)K@;Xt2nR z0gLSwpnSU`CiFR!mhwh z28-6Mw&YF2VB@tg)Lb@nN>*v&(wHaND- zvrm;-din9_!HS>-Ek$m&IXW}C4=qPcvCXk#@w9kue0u!OxQwH$t+bbQOm_d_ z=Yw5|+3EC>c}g{_V-E*1**m{emipEp7Fh{(v2=r_p%JVI?Ow=nt4_kZov-vyysz%C z&OFz}^pK)0tUTgo<7;T4TNqQHVK%Zuw5{1*~a2OXuW&{?)Q@_gh4^fUh0+=(W^ zeAHs#e$SiG!?_MUn){LM5IvWF;iN!@%EM=&ak7d&Q_C&6-^YKkKFNRa zmj5-o18L|p?X0u!3(ZBWGxt%Aq?KqAor|_mq}$Nb`8=|0qIL5Sx-^fn%6ZcKA2eZ} zWqToQUyeS?ahxxhNWbjvG}Yg!FRUAL{J*QN)bj!@r^wbZzaOP~OsBJsDtbM?sjxWaa3ZN;$xA0#}4eqMol+#ur5V@=Lvex-n93S>S5#Chz;=Hc#E=pW#*) zxLvPq3(s(C4BYC~t>Fx}C4t)_bz7`%lB%V0t?6s>Y+AtDF?O7%r=hagB@{iF;T*Ay zVp59-X&yxwk7Skb47qvQip-A$c;eJDeGgaiU%U7c_iA-`#cIG8LH{f4p(9B4z z%o4iV<)DnuF?*xB1*;8qg}Sa3SNqTEf*;1-%NV^XLnY_x?o^*j!;|DN^2!R>8pc~W zWhMQY>}b)K(M!unvzWeF&OYtczUA+nX%daOZnTk;OVyGhzKK)Ash!!O=h;I~ki$Hp zgi*bkdOMRf#U|#scanGOd286N;bg{mvoe_zI(D6BlK;-`pFER#;_Rg49h0(j>|Z^5 z%`=&~IoH=cd&9GXp1mKij(+|lGZ>izrRG0!CT%CFO|_65zI_r;X{Z$al$-)WFJ+q! zO8j<24(~Cv>xv%T9riEir9BJXu%ca4bZZ_9#nvs7jhU1A$ky}nzlykiG7j@1)s(NcQ%2Tz`I z8EWVHn2Z@f`%68uF+J`4&{Ze9AarHz^=(&?lXhX~>T_Ecx;kR(LsxIwhS1es+Zejq zW*3F79=D4_SF7!k(A90UVV};(a@!QTnok>QbDK(AYP+hY1+`sWW>DXB8MRFt6+B>)YCUlh$xkP?#KE!{Ty^inEIQ`J7 R7aAXF^h1}qzQeV+{|kG-hK~RM literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-ExtraBoldItalic.ttf b/igniter/Poppins/Poppins-ExtraBoldItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b2a9bf557a4f15b6b3878624104d4b282bd195ad GIT binary patch literal 173868 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

lDiXj_Drkalbry+PRY$ht1Q_#xtLZoR2rg^t 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 x)wT82 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

CNsfxpM+rp4udOtx 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ξ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 literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-Light.ttf b/igniter/Poppins/Poppins-Light.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2ab022196b0fad3910d38ae050ab6814be931799 GIT binary patch literal 159848 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 literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-LightItalic.ttf b/igniter/Poppins/Poppins-LightItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..6f9279daefbb746564babab403af1204dfbbf2df GIT binary patch literal 184420 zcmce<2Yh4Iu|KX`Bw5$$)!mkRZ)z@Tu5vGO@AleWZ!auc=}QR#mXZpDBtVi!Si&ZR z`U2@>NgyPlEiDNokK_SM$qNt?*1G!5Irm;QOI|O@|Nr5$SdwMwoH=|ATi8fl&^YAzR%cmGW!Dm=e` zsH*nm&mMSDL~dPz_s=ixT-aliHR|E{<029H?8=VAn6OL* zDax=;4K1iybkBvN0uWB1~M`0CHyBqDw9!1Eh- zE*#oJe~TD^=f8&c=j>Y8x%`Xc1*IZ#$IT*<_?h$o-(XE0h@Q=eC;NF(tW{@dd6&WG26K)R5e7CF-11a@&rU z>0Pvo@;7y?D5%zsQdwTxD5GOr8S+B%#6I_sj7%PJ>J6R+$Ks$OL#1r&ne5PL9Nl%@ z4Z9IlVGY#JU=1L9B1B4Fl=5lncW-1_QZqEyQUi55zIjbW$sL;#lBJs{7To1tommQIbL!CvN7WVq(zE!@5jmYx>;6+Hw?Z$J!d zsdYFk6!0vkEgVu_d)Vy`ha?XPC6VVK?3~JQldw+{$FkeY9~;&x>fD-&mV9S*cDgJ# zr)`8vo^4Mnb=}|Mw6k~i6U4)0fBWb~YOiAOP*--w@Icgpc_9nS8>l)#`N87D z5_XntJURl~@D!JOl8D;Ua#>}0Qxa(_ORHBW>75zw0dECiE+mtu8zgDv&ih*$ZFpmk zkOR>hJI&D53~a2ui@mL|Ov2=3*A$k^X>&Fssg*Ld7Q0VIC6$_`YG?fyGGL>%>~F-x zUT^e9Q-Z&wUW1MHp^ajm20fj-_GGY5$43Hc1;ja|a%v;a4;_^S9V6B-Pp3Lt#IjUr zr{7tVl_|>xcBhi(TjUbD-qATPr|cxX%{Q&2JAKlWf-DDlPG?HT8a>10R zVKnI)e2Q7Ydg^~+bIZ}2+vqWVnmwmDo5iw}qB3t1VJR(3suGS?BhxuE-TmHjA_pHW ztrSO+VMYODNHQ`489Lj63==?x8yM=x92wfOQymqBWn#u0|D07x&ib4zfi4+2*R7#T z;|NceRFRH+3+Pe+bV1rIq(U5KN-*IT!KmxqbOkrEEuL^rRpT51AWEfdZBf3eU1%#P*lgpTbvMIlzJm>IrA`(tpM?ORSU8EJ&f&Gl~RxM!0#T$|XqI#HekWOdI zaFRn>H}54{Hy{^OS6`!ArIeJ^`>M)&t8PmyCBYzO$ztjQQLc!FWlBZ4)HR|M{`Ci7 z`MKDkhu3M1$b>8_9O*?M%2JWYf+Q8#xa!a`hL`~6BTv}DQRd!6eS>;cgd!TO<2fCU z)j4=%$Q5>g-nNk6{qhV=c}VK6y+@zWUe8>2#B=xTj>yQ;VuQ@+Y$Kl z4bBL1f_RsE;(v(dq8E$VHv6m*L$k@L$)hksUL%V0pxmqSKE3Iq9S6@&@ z*1$I`vd;vkz+p2%2#9=f&hxG{MVQv-%S$@SDaD>qy+mqi9%!n}FOad%n7tJWP5TH@ z(N$kzOSZsA4X|CoA^4~=_$ZDBc85*)L^!;V>mPoIypmsmBQfZ$1Y^U@G}KA*%REV> zrKCKmvb;Hobd;vmX=Lm$W4Bn_7&56e7a5PDqEfjyC%d|!6r6}Wa3VxR;0$XO6$DSC zkckvXBCI0TJi>|dVMrXGfcI9Vc{R?8+*EB+N{Xeavra6bii&DI3bLFO7Z=tx$tY{B zOfHjXeI2x7Q;V&JBz0Z&4i}xImauGHNp`lROj2EG@0TjmwCbX&o~GpF3~jlk#ja6Q z+Q5 z)QE|K?1EfLeraVxl{qE7qmq3{3K+*K z^7XMkunbFk;N3^bKLvjamca@ik=2%0FX=xd;@G$N5UR-;%xw|j16oT?)movonXsV^?{I~Ba%1`Uif?T_G3^F+A> z(j277fd3D#(;c9JEg~OUbx4)K$43TcARAPkLr`N8VGSWf$Aa*H15FN;WG%P!FN$^7 z%w%WC)LCuYl~lKLa9P>lD#}@D9o#IIcWrmK4=GDn2}9@00yh&>TSw(^qm1tJIEHH> z;5lveY#K0T>^Lm7if8?Ljk|MuC;Q+l7T2a>V^-^m!)OcV z7(k-5AWN;neo{p?jFcezfY)6lEFP3Da`DAx-l(>zN5CaG?KmIkf%3OEI zTarH6VA2#{IxxROoKbjFx`}8htuSqPEU=YyCy~7I8kjWW&b%+Z;~jiK7X55 z)zHKnKO5`^jELamg*Osfyw2>PY}jG@NsVHnx2cVicqCMQQLQz}!v28aS(W{3*K~Wm zMw^wbQ011ns)!6b@BwfDRg5WC3Ev@*i&Of%u67{P4D>>z!up4!ncYEUU3aLdwB%^- z_)Z9pT$MIj^%;huPq8Bg2mpIYnnCy`QzRj(hm+x=Qq zb&YMb$>yjYbHG|Mf*+7?!dmJ?t$4rE1n^J{T347CGK2^pLZ}TA4~)9J$vh8G%Zd6? z8QEA_(Ys734lgb3rMzTccl(5l>}f3VPEzuHJy)980U7BrdduF1&`wMwS3d7CUUjis!vL80md$cTMWuQFt(>a?l+alvVe^4F3QyEh>l17ZS) zW~M5yJM1mY-`Cu~nM!WApOg_>W#<0f0A_fslWv(S@CZZc5%FHJy2pF8hQ`Shi)F^A zRykX0hii#(bbu+MOzK+r&MZ*}B3c;QiF1aLhsbk&*k-^Brab&dR}&c3#0iw9gUj6e=D)KxG11|fcR;~26e=J3)~gxRIiG>^D*zWK4E zv(Hgk3&5RH)#(NG5Qg`7np_5}EfHvfbwHubVhm$vz*-@Q+JbrO;I&6Q_Pr@rFM38w zoZ{A|ffXg)-r78^bERB1H#JY3S0C8LP&0TbwyA?vJrz~WE4>+VS8r=&$HMY}N=h_i zKvYyi{uRF63>G7#<{c>R2swuwESo3IBeFiPrRV!6FIBk|{!98>w>8klhc3@CvLI_G znb&frh<|NeN|U#b?Var1-(;P2r5Y}|{9?QPK{ykm$Vvv`ds30R7|Y0Rk_Tq6a}F40 zh<%A~ri|_oE5?p?H*Id9<^AWkq_W>*$k&)Rr+e#`S{Z7(r*0W=$`hZF?HM*?bnbRp zXWeOr_H7=?RbWGI()lK8#_M!C-z5A1Vk0Gl&{A7?yS)DwYjZg-9((p+IKwoc&ZcZG zF|qKL3z*O4e4F^Bil0TG1jUtEuFLR!=X*bnb2M+SepjFWxj37`FK}LHw;zYYLuTY2Se_P}Dh`eiEENjv#Caib zhPv|@Ef~jxHxJ z2Wt2dWDW6G2>KLRB~Ej3`=um+Ui96(^=d6WF=CXZty~~Be)o#oassb2Xbzm~0=qEA}WXi){0-rc43bCP%8b&c_&%HArqWO1@_dv|gZHp=hkx{J?S$jCONH4n=) z<@UwyrY+8XZ*tnw0+F8DGiIH46X(Oy(t{t7KZcFxg?SP(BM68NIb~5Cn0BR#>T4^Hyp{P<_H`sNHKx;gx^r4;*q{EUxM~xK#(Db=*zNbi z*MT9Sa)A=OZjAVjaP)>5P4NCWc8u~3bg;Tq&_E?cSN8k2Qu0x2MI$BO+TGm6)Jm%> zYPyoBRN^qL^3CI0{{Y0aK#9GjJt9b(9zpJIPfDsF4(T*TfHQCe2LX(ZG9w%z`A zj=s5Lx{dpA8o3iyTnY-pBqdwb!>GcStN6QJ)DYtxQbx^ zn5~14!tGRc!@UE|Y+WV`)@O0#{i-A}0w3~knk{T0m&b&$I*)9SC<&xF_qAx$Gdm`_vW$;UjBiK!T`%gV{s7;G)Bjwy2)-d&kTB}U zb11hI0cGL9z=#adZ&Dh(V%@P_inL^HvVVt)uCMdWs!2N`t*dLFf|N*yOwXi97B-8u zmri$gP-MzvYbsJQC?#^ee6rP)v;9i4p4>d7PpNO)F|AOPrh3{T?~wxepn7r(1d3Y@ zO?nzfrPo3}h&w3~mT$tkE-YPOph5w;2!x6cU3nLQA|ZD56qyRn8yemKL>(u2++_%U?@d|8f&ml$1G(?(MuEIVfEN`QR4tT6+) z#MQ^R<>yWL$Lah{qdQevc0WUHKlOq(xxR?V#b3VtcD=#w9&4N3Kh>LVdUDRc$!_1| z8chQx&JW&7ejmQwiM1K9E3c(Y$Tk=aP$&Vfgxy2VOGiG8JtD(vc97p^ZZgV#VChaG z3$in_ydxzpy0zIdWKE)ct=?&!TiLwin%zPt_cmk~lJdo_8%%7M47lWIRavE6oKY;3 zRCN}WHdS<&YqbsS-qO;}ise3&&a;@NwB$?G9`{i@9E?`9jc$e27K-c~921UCi}HjM z;t zV^>ob1k%0Ut{qC^bG@GKol2^!sdF!=!z<*ozEo4wa{aK!JG5yqMc=woKj3xtiI2i* ze^=w`n(NhSoE!~;%;UCBvB8o}&y~k^DC6VrG+ZYG!5JxE~omSjfmZT}OcGs~VeKXVMYXGmMr^=k%-Jn+6`ieU} zN==O~gQ$5}Vs%j&-pV9(g{>LIJ8H0yNAMX5_A#UzQ5lYoE5qT`3dj=tM;(Dhdxrl~ zR0cL@sA*i4>8@&|2f%5NQ{x>fhB%TQIDnW1>Vy8MYpd4khc`P)?jcmI-9uiD($#AF ziXCB+!ACImn2X>N$N^nUc8e%ADm%SDC|zdjxO8HZs~2n)*vcH&;o5q$^0|7Ge9 z{5r&q`28KCK6pJN*n|VQTv0Xu`b6*{cs(^Zg(In4l+DHOzcBba?(?y?l`E>}Umq5I zAs7sP65NfgR4#HR(EEvR1>fKm@}J>*OGGXtjDmL-@`)py^N@mu+7;pVAt8-GOudP5 zQtC%cAQ&GfHDqiQAVu1XrOt;%*CI3M5M&H9s;~hhmqmhbhKw%)072PvE?daTNG}24 z(=(r0P)w_@o*!PI)z{3WrsrQcxOg6bq|H+*jFJw>*mMk&62I9o&7@y{N(h@r-eTS&&h5fOnF7*o6HM7d&2=oeoKpC=0Pmx(VwISQU{`Xk( z2uSfpanMw)E)`*+f&cmGPqBDxA@2mLQV2LAq~Q63-ist<6e3FA$pnrv#Qc;y$-(qr z;2YjahXK(&asWhOCHBA%EF+edUEZ?tuuTet>8$wX_(bz)B8)TeXAlfZWDI78aLy{U*|1ZD4m&Z@i5IXjwDV8n&7&Jb zJlXrPv}SC7_yOJf5;)94>8{tuuxoAGt9xB4ju#r1>qO1kVkN6Cn5xM7g7G62=ye7 z$fqvvJpVG)()1Nd(pv4qXy;;c`yi$H%ARVqc=JTv)-Hya>Dc2wuvl$v9+7Fv>9OHy$ThpM8Tb5CxJ&REM%kqijm1(A(*qPxf{crg|56-kC(9xj{7|e zS19XUz?+0W64OK$;{HWDLNy1M5UAN1foCFL=(pq`d@U6J zaJ~?rUm-|{b9?UMP)nQovZd)|Nhx5N6%2a~@i+%t67z?b$Fs8k62dIdCh`Ho1Vtx! zm|+)qBe10ydBw3uI%2U(L)N+&B@Me<1TIHDi3!38R1c3WO$amQ^smK;L(Uk8 zk~|^{+|3YI&Q(y!-G{q9n;f)!@QCmBp@9L<2Pptg9-8g&J3p*O@TC14j!Bzd-?Xc# zdc4u3_w984QPVtK!+w(L&NgV<{k4R|!l9G9$xDFi3cw%dA+V4zqlk+;-6&uZ!GFSu zJIDi%uLns!&i*5eNUjG)+CoSq(l5Ko?*fgCoZki}IK*yneq1^UfulU@6DLbwm%SbX zL6X-p?0sSU@w6=xePmzf(MQB>2g$oJe~7e(kh2zc5~HIJ>2>18(R#?`H6#xn9oT&t z#vb`V9Rq?C#;@XGj#$T> z9d~56jUyeC0DQzchQt8me$0K4VnUibvVadEi=4d`q$3^{sb{D$S>VeNsAAgYzMc`f zDK7emb^RRzlIWe7A4pG$2R34LvxPi>*JczIbE_i-ErX+1BqMzA7mEHQ$jbPc&h|qC z^XEhA^^nguTS2q_QJ-_#2Iyk1W!ej1Cup4It<77;QcbNZb&hdMicX{@5 zKnux7;ZwQH9jNcnCq?gy#|nuj00c~D*sKIVA^BzIX)UQ5O|!;>2w@lb>=isd=tbHM z$`u5CagGR~4uy`N3MG6J`JU&56s|6S4W>hAAqCX3h@k5b%Lt$myjtcOG$P`*qP%=w z3kmUEEIgsbSm4npkTCcB{$W5ic>t098ioh~8w9wJxE4c%6ov~i@Kpo3C#VGKM-v~3U;d|$>s{h0_{kho-{h+xe<(SRTc zfM6MpPbe^v*g%?)*Aa3%)?k8UP!=eVy+b@HW1ma_2_lpDj4d7%i1E8eD1@WsqJ|}m z$Axh~1XbmV2Km>27F1}X>u8dVdOyveQW?~W?F)lWjZ7{rZRn^1j>!|< zD0-C4fhJyv{Ds0!Yz(B4>(Waf$kuC(1eK%L8>t5L*lf}m3F5VMgIYrA($jV9f2SKX zMl*T}swZ94M4HIkQKdN4PSqk2DH4D_gm7U^WI_ik$xCPcR$;BEbTpF5Q{I!zg9~z^ zqS{e6*wf^w$uqku?ZdSiS);?zDrR!sHI9MmMkvh>%7R4j_TbOJe2An)7So+0p79{^ zrrD9;wd}*e|3##wIRYWuCS|{ut=E`xAqh%NrNK&b()DouUTD&7C7*$?<{KgrJV$M7 zdh+M+{G0eWArg~Ctx3qM!F`L&S0g6DVP=Z;_i6!~x9`M2@& z4tPF5z6#Ip#?MhLbp!cpczzr|FAAO}hsi&{^Ly}fAH2T@fBtuXUnn?n1@#l^MSS*$ z;T6zEoTZlJNswj=A3fL%EGO7u;uDKPJ`TNx`x^zr68bZ&yAn4W8=!>uwvAS>@Yj1D#2!Dc4_7R4=pT?%bhGmsZ=F+LJY##$;+reRO(cnQ}pE za`T*m^t2W-g{@;Us>SM@PIjt}PV_=!@_^T5Y^>{)t5+7N>op2(sz#|vy`!&Dh02E; zeAT{r_fTJc?Xjz`X6#A3c6=^BzpkO%Gc%A~s?kqDhE=CS9nAg~t*o}$(PvdDERCpt zc>rPy&zORw<#o+d%fRP;(NBomNfESgLv5d6r^L5y@$@+}?SeoDTh)9IIy z_0`rshO}3bqV`6WrhTHLUZwU;lr~$H(sEmqRh?931)iS;-pMBaf;f_Z^bC=G)N_>l zOCTLyBJnT(gnudJer*=sLJ*<%;rCLaEJ$^JKt2kKO$~Jd!x~ZBHT)5Z5TMx;or@Uv zdV=0InzBd`rI0=_;!^{mD=excfn|8_j(B!6tvGMtbEDVou(n_D+?6*Rvm6_lkrO|n z>zuCMTuZstQ(nL18d)Sd#2!ywM-rK5skFGu>ox)g{)Us=*Gq#NxG=L8{KIOO~4|i!A=?fp(=7Xfzc32YCmy z)T3%b34+)l-sim%;AMXO4it2wWDn<<5dS2}W3n6dofj^v#rC>O(wcP#rv1a>)cyON zYW6-E;it9i35LvJj*;0)iPhI@o=w-)+Hcsj+}~-;xl!wAuo_luHc%RG1=B<+R2fzp z8jHqM^;cSR=6(3ZrSOYOscLY*M7knPo<>^aC~}w_CaGzzqpHn3GiRQg&zYYmtGidf zPAzoe7v^&2=ipX=TJW+a$P5rs6R6WFC|vT1hD39s?V^LC%SAT;yM?uoptA9K@Y}_Y zBQ%xaKlM2B^LbN&zl#`8(dkmqzr(_V_k;&Tm+*+)COjg3COl%Rgh#{^!XtLG@Q4@` z9=$I-xKMaNyk;`#bnq{i|5?fZZ03LZ_@9IP&p!U=K+Nww{BsNc)6D;bGaMja6n!0< z=e3|Xc?%ippqEO&r&i4mxVS#}C6k(badK=?=xM)V63pzshzp3rV5%w9oHe>i5N_fEBN)`+n{qK$TmS|l*Kf5 z;6%q$qt`9mdh7l7gEmMDK8w?j4pA=%LI|5cC&sI8tcW1mMu|KWjParonatzgB1Gg4 z2TJa)+W?WC_i@M1B?|vyY!k#SWLqchf#~%VbOpb z)5oQ)fi*9h?ou$t9$di98~rVk){=9Cb$=@>H?k>m|PJ`bn{3 zqOYlylDH*QK~aq@sZ{8ZAfURPSS04&>YVn~Yjx?+D3Mp@t~`y)Z-T$VeG-`*RD*d! z9O8)(R2W(Hhn%bssKND0WI>Nd=kJWEaT+E(?G>`>*-gW3jxAkW!$fJ;D|b<6>zR-Q z$8p-wE$YHY95-nwgU_eD)0Ll3q0eTx1GsQ3B$t+(Ex z7q378;q}z-8c=Wg~DqbzleEb$-tVgGdNF^F6(};y{tOy>(jTO0~9zm4z9bx_|R3CwjMmudf(p9e##Dui@#yG^VVB$lP(OLbC*T%&$wnH4|c{2k0Xrp zMGFri?ajvyIm_9HyNItDPbI0&8|ogWwO%b{se*nB4WY{k^a%YH6#E*nd|~DIjv;8e zSX|U<8?00oZ^K`vY~29*3D@_ieMe9Y`KZN#PWI}BGWdne0iXSTbdAMR3VYipS@ zxKb{jn_DFBum`*{>KIztkJ*oiKHucN>fW*pt9hYAt8VCMsq$^w(oa+(z|0i91*a}i zDU4u!AiWMQDu_BXVnkJYnE?liY|YSIzHp>zKYdTfgWY2Z`!hCwR(;#eH{Y(^3RQTa z9*xxC%@heon8^Y9abzNK`jWT{HEO6oGkY=8B9HV;p1oOP?o!Pix88cEdPiU4h7G9D z8ONzhoD<|6Sq>xOh#}Bo9lgiVC!D&J&-7i0*Vx*Ws_Vg>9Yiww z60w(<{PWoM;Z~FG&vyI&s?}BD<_-<87Qi*UN^%gmno-JiT$r#VNv}KXwy^h%5XAlR z@z%i$R9^YOfws;mLuKHP4EZiDpER?t(ZsU7b#bh7d%e4g5F>%)*VT!VokEL;sfJ)58vI1H@ive0{I}^78*B7<3g0ZkS;aL0!!>+c=ER3~iuP*H@osT%q|aTb<7vG6%PXQlml#NP#;qUIWNGMVWuShwf=!Cr299 z0+Js50d+O7O%^KO3TtI#Q-nM=tQSSH=GZoni?2J$V=cJ&fRmCh7ibPpoS1V!rd?&=)%p7A}NlH53h8b=Pc`}oEYQ&-l9 zDVbu*Kk#N`-^h!(hUdOQR*g2KqSldC>tF59@NFYn=pcC^qIIMhIO`(N7}dBB3NH^E z{OELO*uRTtz~lQz1m%cs4{0o9@9QG&G(I6$<8BS*{=pTExU{sgnIYYj0(wZACF&0T-&*mx*`nMFIh7#vH}@%cCMx5W%f_R?2W?Xkq1<&RP+V%e}X4*^#43|WYV$P;CT1jQV6j2_{RE_A0{-I_uS(vZzcJ|>JzL~yowI(IQsthlrmiPN?D6D+Zi`x4 zR^MLDXh-TWl<-g7VW9(n4Mp6@AwagFfU`zi)VsFHB0ZmdwUeOK>vmcc89sV0VXwun zsN=vyc_Ai3>@4W42(%J;-k6)-=J(>bk41SYwXM}CX<&?<3%Sb z^A9y%h}*4)j${?D^ymz(9#1J;#IwbpZfMz>p|s?wliVJz@d7SJL5&w>pt~^i6YHt} zo9!3MT|Jjz583V&{~J9R{`0jEz}~6ssXd2A3@Z3nfbLMU9D?p9BJJLP0KB7(f_{gD z%hq*nGFc1cLAxT|Eeos#@>s8dq_cDyxLqRA)g~Ll^j=HV>r(Vkn=PV)??r)okn!XV zC@8Rh8{UhgLFDBppBm~5d=e%A(mm)dlygV@UJh-a6iGtxA9DMU{$3XV)JB}@*}=fl z=+!2K1p_~bSW#LCQbDzD{DRg4RYZ|%+7Q69`n&MLkXx7tYY7|*t&0l23NGRx2ult0 zjN!fl!F^xrBm&Y6T0PcV71S;C>qe}Y921&~JGMIW(`2SpuBmu%v#P;sOUYti@e!0H z8Fdz)kkQ>t;2HMWQnB0HJ|}1EBewCj)g9YpytRY%&1IpWu~*ohD@FHrR|)+;*yiI4+id+K!y=;``}iMB=U-bQ157s89pn zbqBI2DA1T2TXck!AkSx>!ti?=9REDCJ;_!hl;F5dDl96yO-~#e}8MuoF zxuGFn8N??Fl8zM;2c}~>zS?M=1|I^+$v>C?+>iX#kJf_iwQL^o zb2B|$5DD;g5_RZPP%sWfs9bS&xCtmO#!ew>{XrIhThcFC zByW}7k_cb75C`P!tB7j%Zs~WdMb-ls5gk4@h(HzgH$1iup=$_+TOVDIX%1QkVP65M z40i~vMcD&i0>Pt1sqE7sq#c?P;^vpzcFdh!M5+O1D_qax?kKe8 zW1o03csArcrg3Pa=zGUl(`aP-(Ag09zzEi8sq9@m3Xhi^j@jZOIiTqxly@W!zkVmt zI#~QZMC`=fL~-!=z!GK&z~ss2K|D}L5qBYA*wW@XBGGsx6VEeGgn@YCb^(UJhqzV2 z!d*i4H5fdbK`iyKZzAUeD&&r0IfOC{P6|y#o-G27Cyz3LI~n5Z=S$gzVd5eANQ?hs zl~*xzVJ8x>r&k8qJ7{9X*0MO(v7-TOw?B9vZZ86O12_di8$8ewkupmJyIaUT?N;^& zg9IT;(ww!`sE){4HoryRPi(Z^sDuNKLv_-q8Uj^uBmmrFnvT{7-BIfipbLEKQC!$v z=sybn4EG;FgC<8Ho<1S_C3x+Ee;f9Ic$CpXy6Vc=e{`P8E!{{Xl5sry58sh)q!)<> zz5E06Sf$ei(w zN&Iz75uHiwJaK*t`&;Y<{u4JSL9HzE0ule9tY>V{a+mlsT}yJi%vQoa=OakHVrD*~ zRmp6+YPQ`mmB|KPCKt!D%zwq*N&u$gLg8Z61r`R=LloyOSz7Z|;rJ+Y(Na^WV<{Fl zkJGm_KbUTc=v#`9mqYJT@M*qxDIG3AfGZ6+!Q_(Xf;+~;=Ek!$Fv%J#|IzYeW6DOF znCcdCpSp!wuaAim0aQ+23ixFqM48<6X(7!7d@Ee3jZ|$IBv(O>g7@Yem{l&7om>wa zZxMj;;uF}+d8ngjl;y*y~LE4MdhFXjg$8Q3mXATEJCz{;30aA2o)zHF+8*= z;$%U%yGg*q$!lcngJCfIIPoJn3*`jQS|h=5_7edNXSWjjyzJAMcOS>?P9Q;%?M}eH zC=)42d~}o-ZhB&xE$mPF&&afA>wI!;HoqbME)m=PM2Yn5SNI!{I=P}Z9uOtOZm58EF%rtw`(U*tNOD6X#wX{zJ6jmff* z^W<$5-`MmL*UY5jTARR%0;o?)K`7F2F2;nd9wJsOpkEY=<`c`n;IT;lD9LpDY9mp6 z;=G0W-%I{B7lQDI-AP)2@Ka;ZdlaDm6Sp>Tw|<-Z9J&{07HIV_LAlT!l3viYJIAW1JZ-@Uf2aQ%0zkW_VxOo zHjdN_{ZF3)t^WlVcb@}dzuE!J3k^^_YEMD*!(TGQUxWaBD!8F>kb4V_^?it!9kF*N z(XGsxm*6VlE%Z9TJ@iGf?!~xq5D2Klm2|PL z%sCX;f;$uiLJ9!=dazyKJ%&292DV#^$)5{?7e?YKjKm}O3qg59|2Z%(5+06w%g#9f zd+fmw;u`nXowHzk?DZks73T0opncdC4BOG@xtcV0Ln{RRng|8_erO$Z z45CuT`9p~=O+lDS)LPDtuly=s2vwLA~z_}olxfvup?(OE~-ww!LW4+ zQFXzs+z6VEI^#vseqdssXjHUKbaABrn;@yiyDNfsjD?tgEuuo6M%SGIC}0Bb3Lc1s zw}*6<-BA$dHSyRwnKy2R0717k4$j7%DIhJAoq1(Yo4>`0h71I3#Tg6D?B8N8&!S{8 zFCA z>veoLBKH%f6u~uVk`LjeQ0>ncv=PC$Q(RkyWdZ#UQGfjtK?edg35e?pxO9!+YI1oA zPDtVj1Py-|<$g=vj+sB9qZ0DI`D6km2cI$j>H>haVS~fAG_o4eSPF#}0fYa6U{Jz8~RD@VC71}Ktlb`H)fh>1&5x?)l_Uqv)(8(}ji~t;rAmL*VF@Ag^K>c$*wkS{zoyeZhMQdgdh{dF@ zu75tRu@FCn<`S@99#&U=b~wiv_-sk$LKFLcF*FDx_QKqPbak@9+a6~u&4aE+i0Cd} zt9Zb}M=WqF(4Y)vrFoFI$T2~v&5f%fiq8R{PW4eHRdb{JbM)SEqfXiq_w>xxy&ZoBQ^u zKxAE0wxn`b_jOyZR@0LsMkZ_P0VvILJjxLN%nv-y(3e3!9s3JgQ{{*w#c5#;uW7)=wh!(|j>qDA4f1ho@dT!?Ao z9~=b0oDT&5kLv-Ek%ss0YepAHlNgV+Yg!pshQ%+P3Y3;)%z2sz$cl@)Z(DsP=Jei* zu%u8k5;^$5oKl?Ua<8mCPW!vHuFm$7k~^Z0F>ES1R+gfhh`n$eMqZq!BVt56jcGwTdH73ku1du7B>lA4l~R9lPH4`htBwC`BmJ+A!x z+ydx?c`o{r_J?8!%Q+prfI=d|ZUM4#rOqJ_7RhM>H;eD`K;CXqNCb5trQw_%$8m8P ztv3lKCX{9$9occQm>}Bhbwkxj@q7^KleA3V0HwvZ1ujk2!)%o1zokl{u~nz0 zunves+SoT^>4xeE->)0kw`ej;8awU&^4QQ!*6-Em;fBF1L*J-n-b0-Kz5XUNW~I!L z^p3^z=e3jyek4Y~Wdj7kQ<44&p9|z^7Gj`(!$ZlAb73LfR&O1smBpix_;xh1g}rM~ zQ+h@3pfRwcBnw=W*nl?PNSBOcR|j0Q6-yfXy*7Kb)p`H~GA3x{eH0{$R;-3XRxh%n z#!(ZZLVR5wRz;S$K59&=P_jFEA`4Bo*4qZF<7;lo@C&Q=f=X&?8cc59P7JIL$Fj!H zWBPW8$RRE|y}{LP_m{3!Pw(2iUZ?ll(Tw4ZxE>L!De+@Kn_?Up_VY>_iAW(tby$|- z6NDCgw{W&Fp4f=L&rgY&niWeLDr zZGB5&2KzSNx+L5v6@Tx1=hX6~wPD@;a~)N22mrWPJ{)*E44I!0?L-O``*M7HS*-6G zy3bOeOnfD=QEn&|YHSk??in4W$o6_me|+646)~%+6B^#3i^ZR0}2SFn;QGnMF-npc9AMHwrKS?F~lbB<@?bBo15q<{5?qvE=b zm6E`NrP+&3c5*4Vd-Wy9TK2TZCNVT+Ehbm$nfbTWg#Jxk^;7K0YKv41) z&|(;*@B*a%&b?+J>~qJZnH1rj(c&7Hy~M91iNK4S+5J(?K^4r{jyTtA&JcUGiWt zL|G?L_X1`nl}O>@Y_3?&?l2&xL$b^XGk!g8F!(1>WTp8R_7CkeE$m*Y}H zZGr!eL(X@t%}tH&UPMy8$=Pc2ua#hXwWWU8OZSW|ASJi`=aeK#Z}bh+Of(QL?Cem< znZoAcia{G1-4z=ZB4q2IlJg)cY=pQFCHzA7@qtMY>Inr>3$&IBhXCXc8(PTe;qEKW z!b*z_yd+Celo;34erEv<0o#IxfO)tfU?bCFBh}V0IH!n5Ra%spN$T-Tu$Mj7OoNQA zMcmmtO3jX5tPCh)$@lJLPl`TbZrFHlcFH9Noy)h=7b~JNZiLuy?{wK4Gs7G zc8#RMovz}YaHnfK&}tIhA{qnT!%cY*L~s12R}5q#mjm%9&&g8Gs)j76coF)bTe#VN zLzJSPePyE~qKIe8*gwNv7-z;JE`+6?Iaz*^{SevEGBlnL#RV6k>4YAQx~po#^P|q# zqvuEMJ!9|nmZA}cVs!JZ)CpATgNqiIMf*jU#%Q!iZ{t5eFEMWUMPvio3tWq`$srO- zYe9BPiVpW~JtDbJrP=03LlPU=mo`R7M>+9aCHtC;{?Wg#jwIy0!`n0p_VNnyr!T4W z7c4Vg#Vk^&1}I_Y$20MlnIHJBafZ}=k=j`2%;sKovZCFH72P%BXA>oMsiCpj{ZNEd=^Zx0}__q zp{OB@V1#cAUEdrNoTze15L}`ojf)CNE{QiKF^y_(sPk7zBxnz^YJ zt~($L`9X?nQ6Z%Aq9-eUUZbpQts5$dH4E&+(E9%#3~+BHbZG8kOk~SZM*1(HOdlYH z7_JujUtp(^+01jN6}qa6S8W`<^0~MR#4tY1YSv^sB@AngzCV6F5=vh{`OiRMG#T}` zEWp%u1s+PNU)>aAW7lRw^U|U&q)$Xy`-8IrX?r>^PDI-eq(1@L&O+VA0ns(!oABZ! z^cHa`!8Kh)MgKn#J1_BQ_qq{=WiZ+M8JB!7n(vuGB<5V{ZD{;^U~U9)@An1nrT6t* zVhVhW$zHGu9o|v7g2-;CuF1)c$eYH>D{s$GgolRSDPiKWw*7&**&&X%dz-FIbO0YG zp*&OIO6FgcIz~2K`CrFAWL8>ZdhC7qR7MufPe{$xlQA|xe8u${X ztabeBw|(;67~*1=C^9?huGtVv$102An4~GLCi+qb)& zJ3(gfenLkQ-}#ol9R;=aO-R|CbKu$Ep7~`ozp8(N392G!;&>Q}{bWtD2I*cNiXH6O z5TmjW3w+AyU?%0$aZ!_3$vl zK>qdRH9~RrW{j2LMt|3a&J<=T#~vyP7|Gk_%uDU%6N_s>5_Gbx&(2$w+0M|c8O8{ZYcg|+a9LQsa^njaCR;TI%d z1V5!TW3s`dDZX@Ieg}~|R=sBGspQBf4+w)%2j>ars46A!RXhdN05enRhuFCk-M#_Z zKn-*_7qat?&i%Tr_Mt~Kc!C#o%_?8m}bRW*!QB`SOcDz(+;Z_{e( zy{Hr+$cpa=vX{V>A)!*WCB#ndy+~^R|0hn4#R?d-u|65{7E4~}TiT+!*Uag_W zM@&rWmi zq9wsFhBBj=2iG#<`ZO`e(j+!FngVvP|K&1D=9#rQN0jDe=NeuUvoEaHucc4NR5E~@ zL|P)E5-7PefAdml5evPFhj6EEm!Y zt!onv3Fs3es5s3KW+I3e*04=PkS|FCi`ITprQR~&>|=7L?Q4i55uK^z1o5i5fmynK z6cP;$A!5;uCreKTHboGKcxBl;0+Bp-%^hSK7FX(O@(Lp<6B4%BoqcW9rv*BZhfcF> zBz2xfsfO-0%u>A)L>ZLwf-yECl1K*DLO>iVeiL5Lfg0FeNOfUfD+23W%S|!V;>=7) zlX20N0Eet;1QP!dh3|QX`i8dab9XhZp_TaYGus5E)jcci-7HrHt_jhK3cjdTUbaM% z^W#HT=-FI6#u>B}jC4k-34-@_m!&Q)p=NgZJmTTexiG1=E-h2?WP@*faX^meJ0nFj z+|G+1q6wlE5ZP>zP2iBd4?=c^8g65M8o_FaY7oA+Iui(<8>@7~ z?9SRshs#yVJ`)k6BVe~6lG%95Aqs^lr{XF1Pl*xWUJDf8&Wd)yYkct~Zwygt1~!_A&e zM_+O~GL3;B#?tnxxv@EFX6#}mn-WRNcSm|sOq+KfO4r%kgDnc>-1gCay)lX#1-Msj zcS;3D43T)EZ>XQWeJw#T;lc#f0P&Eb>y}u6&=rum83K=fH*X60 zC)2%pLq=All;aRcAZW-9>1^ga_diC`l>KWcFU{2ique5Dw?`MIB^c=*s*aB6FGH6> z)31SLJoJ;b!``o5`_c~>`WHyrpayu&4EVLL;DHaIo}YrnRe>do(8>ri4Bsh~XlY3C zATJYNQN<-xpmXu3z}2NCM|;E5AHEfLrFWfTZ%|S0mKvFTdUm+2ex;Ke2+`OQJq;qx z!tH*os=CHD+GKN7k2z4!Ik2k_wt?F6F^xlF9zji1SeH6d&a(lOvk$cy^+ai$W!Z%~cHFf85xoP}2N#D6KvevJ z#EA%q5IypVI2C{TyY~+oSzWyK(jBPcFJ498dHW8;TkyTyQPaNyEkBZoU!jaP(IWX` zPobn@Ty0YKDmA}qgmVaNo<&&3Xnwz`u1mv2oBr4uL-=|%^p4Ny< zzUxZjY)jVCkXn#pEU9d+Rw-dRa@5V=sH)}Lu-#<=Pl<2^P)rgM(~WOCEVF_Kg%mJA zy2wD{OU^)g;8#5BK^j@|HPFH(`GYP`!OIU?ip zBt4szC09*^?yr&Me=jb3U7BHzp&~b6JKc2C9J-2`^)tVow!;Kk!Rx|_l2@&suI9Fm zs5@^qLP0c>d+YMto&=XSBMqAa3ZfcaG0o}NP(+B?5ZykXNbX|pq!*i_3t`o8bIw3c zU^pHX=v6jny+YTq#RuYu6#K1+h>a@`e-9Sl2!Z}+q~1Uh6g969&d-d*AmLWfg(`yB zIC2V6F)VNSY?3#Sl;j=gZ`W9eO_Y5{`xdGj5*}JaHDS1NkiI{nT2L`?pcTphivthG+Zuf{ z`%$PskUcEiPY?UziU8Bl-SjQCzsA`Pds(>n&mdI$@n%#7GVJ2#Kp}T3Wa<(0f;>qW z`kCkFwltxXd32@Cs5X!Lk8mOg&|xJuhUwUnisk)pk|)oZm`*(ybDnX8J(u*tr~**zM)r$82m3&{ z@29BtY&o(+C-d zcpS*-Q2M*D^9sR|a~|bJEW#R}hW=Kl*itO-*@Ma`ivy3x<-Kd!k*FRq#C%XsiCV(& zZ3cgdv)sTV(T!i2|2`Ji!s_jU-00$<5j+znvTPg^n#ILyumwnG=WjykRCX-hCdA59 zJc@u;AAuH3^`@Jigq(kzJ=jtDnd^HLBW$z)W1z7vRFMEnA&!c;(V5fF5dk&;dElZ* zkmDifZo5sK9^p_mO(^pAbSj!0%mc(R(9S|7VvE(C*JiY_M}%I!VsP*Uxp;)eSLQV{dIc z&F>B%h0zuVcU&BF9T8m7L0$n4pQkUo zW;p7eZu&2)!&^J#6t58jkHZ$5YZ;q=njweUDQ!G$-reFGjJd=+@T0orCJk1Meyyge z+SXbp)4+A`@@S>V8KvLAPEoP;ntk%oX4Ea%2qQos6+ofpFhe@%$Kk|^^7l2jEhq~1 zw_D+!h~#$rNf{Z0t0#6VD8Jh>;gWk+%?y1!Fy^zd@AU7HLw9@I&Qv5=uiD%#&W5(4 z?pj4!#MH{_fofvj&R#o_GUHRLoz0_7Ses>vXJE+=NSq3q9AC7+9Zvj3hoffPY;TS{ zCc&ML#3VyAE$O``Ta#FG@S&XtzalH#TxT1zQg~;?R+$;?VZi0yk*=GpudvaEz;_sN zJq%lA59ujqlSyXuOjca9W$KpAO1h!6axj^q9kf_6=OIsACF^T8hnmXD~%t z0Rq1yL=&*O5tYqwY%sAK>zw~Eg(yhU)L;{jZd8Qt5lA-G-;ka)+1NQtF&$RlsPsQY zz4MzpB;5!iudD5?l!R$n$hO{6S~KcX>l;V(+P=Dfldvqb_Y8V8D!Z$!C6BYBVkhvO zO$e-XIF39!>tX$k*e*6GwnXUg#$iqF_Ezio|D)|a;3F%`{qdYOlQ}8VGBfGD_hec! zlWEDMXVQCbn`9eX*upL>T|{XY3kU+D*MgvwzhFZ^1+E3&TGXyI|B^7+9~^dW2;% z;)K!W>Ux_@6+q($-JOH4+akhf9QilG9>uOK7DyzThvhxf>FTHp; zO2LQS6NfWM-XL$i#zGnp%L?~*1jfsHED}X-X(LYWqgh#XN(if|gmfscd<`BUKVeY5 zBqLMOFvx!bpPYlW5{y%L69k(u95aZ>oDvk#R52QCfckRd(-QnxJ z%q_u`uz^xv*lF%jPb{lbgX%~-Mi#!L)?IdhBv$8|!v(xH*ZPH3qYl}%-q7_jOEo^y zP*1iG1?1L@7#>@mCo@xL)^N!VxN`1F%#{+T_VNn}V);{qiiE%w9`*kXYbx&AxV-)3 zm;DbNz3$)19~cxzCyf;tEi7G{1pP3!KK zfDX0PMYdV;3b>Q-kpN5tVh8hcY?x)H45TC;$wC|rsT}%?`3YD6u@$8Mel#(ilJ3x^ zQN?@}X9Gej=uqUhimf3VG_SMHy^KGvkbr(5Zee#pP^nC~l)eIfnwXgOvB~SEgE>Oq6SJ?qrNe9uDjkz4|>~Xlc|ZW&_huq zk^ju!TvsuBFd^U3`x|s=qZ{^$dx=zk&#+gkcC{ak>~o>+A@ExHpYXA*fQ}=vzUY(C z(3$XclAl8Vov)M&kw31s;=c*jSo}wnw?Qir+7A8gD^^9}t*Po`6P+Wp_WL@nOPA%% z=DKt+fz1ERM5v|?q@=vJN2RhT1DrIy04BJt|3uRp4EGTlD{}}6PW7fGxnCF0Ww5P~vRGCyF zVFUoV6y%QhQ|3~JNS_->7vcr^nHC00kDmJHkU6#^$DUD=G>(fX@QTU9FN%V(dJ z9z0*b609Z)TxxC9t@EU`NY%_r|A5VgPX}33>C$3&X$_bUgbUJ)E6if52QO_wXb0P< zBP2$`1g0R#k~EJ2ydB&^gCZS4I2u1tRz;+1v`o;F44EwgPyM0EAAuI{@xLwtO>?1aS|OLbCx7#6D#nPFKsx1r zx%VJv?C$v@XY4-vC^{FOb?zM+opEjna~q{>_$UZ(yk+(+E^k|7H2&HA7_PIv@}PUj zxRs`&pN!Z0Z>f*uVnM+PxM#$fVdgsc-a05T@q7%s$L$0G`NYV4>k4S|54>zJQR<6_ zpih_LjGq1=-z(VMqhi)W`5w5DokV)=)jhZ|M|@jnE7a#_Py5WY%5B|C>^chD_ zi%MJXtnRIXoE!xuHSpmGo1#PNL2z!hjl~3ug1c&MgzPJ?HbGF#cIIb>s6A)De?;(aOqSucrIEbFeobdyYGxot6@V;R`tN}MY zi#&YS2%Y1};XHgMu~oFS!ZQ0`c)I8*q36Oc_&xxmt358Qrmtps^1xV!DeXT$$I19D zKd{+;AZ+g9;ufL2i#1bKo(@ zm+|)&5DdM0D7n18>(`K7kL`uhYQ3sP5E9#K=S|P;Pd`872>>|VvN1@_` z6cik7dxZHUyo3#MmT6IugK*Q4|#W|De#OGfB6YXMTm4@uT(L&Ac#mb;t#WPN!-7@edU8{JiD?su z>iTNxTGs=B2p{m*b}j80(5F?m>&<2;zN=f>0Q;GkYMkdhNqubmvQ*gbX$(|&h_a%fm8J6Xi%C5OPa)r&?8`7nfKjFb z#{8Apiy~ieNUt63hjPB#JYjEMEU@uY^AHqgp6jDh;jL`apctQD6JmByN|Ab?2DfV^ z*=-S#ePIeUIkb2*#jX3;WuvFjFBUFLap`V3v-cF0GU2MXQo36YcIZO`EcqJyUd|O{ zVxUc(YHywDTRTB?^rfWQ+Tf=r=K~s@e_XHcZPe-()(_cipU3YKpmgwkI0zP!B<_>K zgA6#XjPYqYE|3(8Fz}_x^jlE4?jM;~ zD6#^BJ&w>9R-a_*IB-6MNbsE+22xzt?z z0J^5O>D~j*ko}XD=HYgO-aVV9A29253wtp4KQr8_(U_e>_6P8$V}N`YKDPw=Rmj~4 zf}#{lIVgJ)zZO?Ql_Z~Z2*MKiYvSIti9PVGt~pBk$s;Q#sH8zxO+BUg;GVS511$M7 z_7@X<6Ngi%@xJk+DbDf0C}_oaU<@Sg{=_h!O?o?Gl)7tO0)cI44d4MW4ylYD8Zo+>r$@BV4Q& z<%mBmB`I_>9wqUtmZ@roTUt?6UrEX$6xqenp>W-3fFb^QVU%QZbchgY_n2 zad3rXSB6Qd!#{X1E%@?WfAeZ9OU-vX_W1E+^SAA;nIU6tQd)6UDpQ%2G0>2f-F?Vq znRllfI`(@N*Vt?yYIJB+AZAH=ox^{@oJ!X<**Mv(*L6-cPB!6J%p%_cx{F|!1WjM@ zuNYh6V!xph{EdW4;!FCmRa!qZ=*-HQZ|NGR0ZYE#N^3s6krw(AOFpZ5ajbXxcnUQ& zFmfzq&E^|Em_qq%b-ne8YMmml9Rcpxg$tv@3hcV4Nm8S0j^`Bl*UH~unlDgU5 z+o?`%_VsssP21nDQ(K)CzQP3J+-B(OB$_~i5q=&21cDrLvL^frSup_t0}CVk1}~(t z-$w5)78hX=;d^Sbvt@RbO1^MuW~ALWw@f7+nO{0ax`?6PuHl}J@i~vRq5*z6IM6lN z*ZvjK_@z_&&w`MRJ|pWvkAu zvRd59YFD{Zqe!ZCxUAKAdlZ`Epm|rP1BF|m?~@M$g=p1LDLLW65r#|{uT;ESR4Pp2 zn~_4@T+l~>R6Y{qOgm35Y1Aivv7tYa@Ox)gsO0?%3)gGtm2vBMLrq1sOFwR@iK=#0ZuU|<9{G;<^^1fameVHZEeA%Izk}5`3WI}}dI%slrDm~fP zSL7}$s;VtkD`11s<2KtT>KDh2X(Rg$DV}OgA|k)BTEkT3RazAqp95F`_Awjkcy9m$ zx?mHJPg1#71sAvj*^YEv>Q$t6u zq177!r;pa(bF5n*aQ|@J(*_Ti3=^(&!{L($ZMILq(`JDG=>QJ&goT^0mI|RR67Cpu zOAf;VY#EOH@f<$))S_@p;+qzTZwd?7+CjFJCjY34_;Bc{&eNkQ^#0kvkz~?bS<|K@ z>#3wAzb8Pk-A6ilF7z>)m77OvjG;D`DLNbcwBe1BRnl-DNVjkFFphV=+vJ`ZH09@) zn;Evxve9cuA6g#rY7)yEt<|X@0^Xh;XR5YoqM>QM&5%2Namyt(+ZnS{p*u|_>5WaC zd}o4u!=ZV|`y{n`s2&SJgT$aAdlxx;gyRiS#*5IITv1N!=;7&&`KIx@s`M!Qi~Sn=WY&hMZvF^(D6?-uok<#(XW>-`iaq6p z6*Z;Yqq-YYQmg&O(Bx+TUd{{ijguO~ggZTrd)v@-Z<{)$&OT`W2t0FULIaK5Z8Z#+ zNkm=RGr?L)2?krwEl(AdgxB_{$~e(zlU03itY@6IUd+K@rAqDFNhEh8X{iafAG!#P2+h0TC!v6KzP64 z8{yBV|GD*f;q!?gl)_SQ*K(g8<93mZ1LutyuY8yn+!&bg+pSgS@Oh$vsn<_h#erft?oq5v~#svAzZ{h{B+f%+ws zOl#lhaX3*pYE)&fonj0h-@h_Vf9s*{OhZE|>zlf{;+zvH~7Jh`h2mLW~1F~INB6J?3 zAv1jT=`-BfzP$AljPY|9_Rp(t&N2m?S?0nQ;+?NO6aQH4Y__$S2Y_3i%g?yv(&pMb zpb!xTs4?_5r1LO%|A;zDd+q|v4m;rbNFk=mptfFQ6%5h;E1r~?U+cPGrCU7s@8wHN z@zeB8#NwDS|6kw@?$uFf!!VC?dfT1pq{>k25)bJkAL$-UM`RHULH_!tXa zBnVjnrf;u7hXi&e!_>Q$X@kitG65j>=ojJtq(*27ic6TtwMI%IYWFrG6VK1i$U{8( z$6|=bXpWB`!zhC)BxR{>b@!rSUCkceSlV%>43TvVwwuLP0<4FNeM{af78Qvxww`_&?4h?x z*Rkq^Lx4xuu1W>Vm#KnHTw4G6%YQd}m722Ew+}gpyxic6D)LlrF@Ox|KYqBKS(nMrQHWp*snuy4JkSDjL2UG8ff&$X!rJO=IDRDo%D#C?xpqcj zy#F$C55nfyoMaW(ofix_eS7x$v_Z|jR4j8$O#^B&IW(;U8fgF^}Kn0f* z>t%#Wpx|ZbUYPu}&Bhbfy43~^Q zjz>qHA2k(3e;|i@jD?z1JO*Dl45;%$K`TZA1`)H&>o(d^cMH}Ux%56hCFm*+cyl>w z@%_8o)yD|M<5RI8Lvb5_bx965yqm>+z!#n$O)rY%3c9WoMh@l_p7}iR#-D)hGKyIR z(sy}&s!)n&`r=tPtU?8t6L`{y`qEC9_(sNK6V6=827e-6-oxoa{6l-QBSl$}bn@5r zINN{$CMvmn88E zo9!1ik5#3vZ0z-O`HbS5@FWdj&$^=;(&4FkTa0hVvoQ7o9w;&L%!{E!6k@P=iU+Yt zyJ%qVDY*2a+cyM6B{l9lbiGC-%J9(j#7YIwq_`#M9Nq_q)UK)^AA=>m(<|tNOY?fW zDrm)YBIs94=j&$QvDN%SG(^i0+c_>0dwiC7#TNQq=XmccuZ-=P;jXhZ!tJFz9(<*Z zcR^1B`Bi9)Tvn_?201d6fvRr&K<3eKAS1tWZTQroZtjkC5CVZu$B$wp_o^?xggZ+e zxeCFVWK`HM7BCq(=L5I{Rs!}2(N`C7k-a435}Pt${$2r3Sx|gDaOe^$^uh1s6t` z_q$vp0$jSx`_M`wm6X&sT{GcTOf;nVNg>!%pwT^9uww4U)pscBm;unhac*|fAV zA|E^2*_#b|n`feZ{y2gr*~cVhnTwW|Ik@ooyo@ua9JLF>M{KquM{zuM?p-A++V+9< z5)Xf&K6^Nf40{Q2^bLF89Vvo;5w2fE&t@yrB(vFpd5We&zVjkj@z1kCC!(0jJK*02 z$^=EEI(GN`XtYbGwINtN_pSl~HTxq<2Pjs3zg(e#C-}+v%U+U2F~zUI%9oW~(!cjO z9dc&S%}uUA5*C3eCY}gP9MtMS1QbtgooOy7)KmMl`p~sH^6nQ6`V#=JxG-v6?NTGT z_+6v-z<6@*&1nXkd%Ob)hcR0w9P9I@d?XwzbIZ10&SnKx4lXaBJh(z8l18m(psL@D zYboz4(AH-M#O|`KY+%UyX9-5JMzhVxN<|m&6tD{_bOMM_@9rc;;LByt2OriYHMgBfa6R6(6!2}d40?4sxGkS;7?_ys zAgCzt2##6{P%CbSa;{V?tL;cAz%fA62Qws$Q72IcrV<4`#V7m6kEB&xH?R$z zrh#0yyIdXd$*t;dWZ1U#Ca>)^+43*GjYgdN{kZ@h@@PVlon(#;;v!fQ)I%Lg?50X5 z)nyaWesmm$RoYq#`y7c)OV0kR$wpK1L{Cc_rD$Tv;?f3-%H;4;+K(NXGK9)i zCBE?S7q>jh(`;n$;&&Z+N>H)Zcb`qVXeFF>f`~3PQSEt0`?fsy?!o( zd>$+k?v_S4%|C zHZ3PPrJ%}H+n(GHXpqax@Y%4*b?$2vD&E*o5kxXeB`#o!YJ}oYfvKnvC?-5b33wdP zj%)-r9a7j2JL&j9Dm~Cv3ZyujJjGc{&84~dH_i0HJmjRAsC80Fhh`^wD>fX%hF~^J zJ<8sicYWyZ<#cL&v$wvZ*ymQNl-8aSe{<{MYy{H`M@4$_+ZsaOdA7Wcom%Vht971! z1;w_QQ#Jl+OHMA@(+u6+Z_YIJ+ltEEMb!=F%C^$_#*rR~YPIK{BhO%Rk?w?_N%qOI z-BTIWU<=7J?CqI1b}pz$Pt&Y&w%%XtbN1{_u{XH0vsT)ArYO~bm8f)(sh7;V^K_w; zu@2En80!nYad)|`-Ic1b^#HP&qe`LaZ6#LFGHfpY8iPB(1qU{Q zT$M>#8iVh`Qwbw{Md61~Ihx$X*-K4jxdk^(qlXx`Rk^67!*e>g*DXBub8jH3pnuN8CU!XdnfQqoX-hA4Qf-%Uxbsqh+SI3R8+=1AdlyGP~Vok z>!)KZ2Xm<4EiCgg)$1Y zf9E@h#&gXi%EqgpyycB)wm27ssTGw9zZ6nIr3omuLq`W%Ay}cvhi=dL_&6*|b=pe; z&58EartF-BrVi*`^;j#-l;-1yr(pg}Mcxwn`IOyV^_)RTlswp)aW+>;by&eDbof$I z&8;~t)xjU!Rc9V)*Xo-`_1fMBjc#fI2%xHHCjZXdlIKFV*=kU1tPwByUGs>2iT3LSX>g zQ0YV~)K1|ZDG&53$FB{{Vys%CAo#U9K}2mb(S1fhtqtwP(pq}1ltR7mg4oqA#FSXH zqbj$Vn@p~X8?Wm~yw9Q_d$`n<$Il*CN zCnQkm@U?kSr5;$WkQhZil`T?QWfdS^qag92QekAfpyGy^p@XEd(UVo-fe-E~)9XS% zW658=aF4NtGms<+YRd-`&kA%K;w5+|#XK_xcOF`><+aVNi_$JLgaQ(smQBmdXm5q+B#-GDy!afw^2i@pNm_nb4Fs;ShTN(j`8I1l|94O*s z0T|7HGH1i1@eUlm%8S1sX5A;5n zAg!qg%!xQVrX(Sm0?79M4uEWbteVoC9&VdTf^&B}ux8>ali|!b(SdqL!A2GR5L6`d ze#R_~1JqD(!E13Lun2)suQYm``#UlVI28A`CaYsdZVk2uCWMw!zHxN#${@k_&p2Rr zBr-l=Tn7jZN=2~HaH077W0nx9$e^&BpvwbC$H0I(0?B1(c4ErNC0Ux|{jfg%s*3y* zp!#u_*uw?&8=;_Xscmf9k@{|L_vq^g=8wO+&Z!6i^!CO$9>)8>owP%+lW4>cTs#sE zZd_a5OgGT);)FBm)F4pADmnXPpu?MWUAIjl)#7T$@VzdP1Gh@h13e8qz6>(_^`=(gq zm=UId?%Z)YGdce(TzR;77^;^j+C9>~fG0E6tRgFVGBfyu3~M>|K;6&HuH{i(TE((Z8(Z!q&lcn)O@jLw|!w4E1SV zxX4MipmCxZx;Ad>tc!JR{*|SFv2}ffrvc#Pu^wZZWh9-{+Y2?i;nj%_4crVdm-{O; z`eq*o+7P-QiH@$`QPW!qsYXUZ4hB`Sz&6uC5Sxev62J+L&?CNu#~EC#PC^e^n#qfX z1xcWQQEI0ni2jrW#eq^x`Kl=OB_loaa5ZJhHG6ehdY}eFH=I#1dv^id5OjNNuBjx_ zW3BE3oF)-g8E_mlnu)zhC6FwSERSQJOih>6D0U0saAz|&y;9Lr0|6Ua4Eh1(j905C)0^SNY8u$D2mZDPuE5iW6BJxv=nLc|#gp|jsz0;eZqy3+dHbYIT zp*L$JdirYq=Ibo|+pTK^)vW5R!37N|9NX2NazAM23YNs>M{S``$)Y`87@KvH9!kbjY3#?HNM^tk%|hYY4^`s!nWh^tR}f@OLLz zQs@-I5xhUZzSjsOG}}Ai*zXuAgQ#IIO=Aiov`m??t4=XI=HCq&lGm&k8prSbmQ|eN z8^@c6g@+Vmc84zVRUVza2w$ec7B$>bPL+r=r+#fXa22~IxUVcv^7!f_P|F9Trih8l zBFVsIME#LzQ$ZeA3G)RX7hThDHnnw2@QgeNgW3kdEHTq+0m2MVk#28t&VHsYM^!x_F{ZBc9*pKe9CE4Wj$EK)i$ zBYJ1lBQ+Av+$8B4!eHtFsFvpyi=D$A+i9D}1#t=MJ?gEUTrs9|=54G)tDjgF`iXdg zRnk$6-)XagQlVKvubLYd&wW;m9 zbz2{lG82g)-@4l^H@9o#eL})d~z9+tiy6IB|6C^bdseD%;X z%h&zar%_dSC(4i`anoM_%Fwm+Y2-+x)&JO~OYXhIc^wpR@&rcMN?KCfq(8M?aZ_pd z5lk6)=WTtnl;)~gVo%A2d&;mi%FD{p%7d4HT5VZm1RzUEcziM3JrJs-TpEn?6Ru2Zv%{&^2-YxU`0^`B zPjw-edGSae@*~rZ)vL7zcYckNQWXcURgq6^d;4|kGLO|Y1CfM{ccuIxShjsEQHy-$ z&=MF&$jth?vI}V8%&9H@CD_nsTlfs5y9PxX5Fx$_+*waJm2j<;KVmWHeQ^m_Nimaz zvH|kO+f~aVjpVN*i)R!y(`kf6Hq6JXv_==t#}BEy>?xw7^`2g@2JhsOM*Dg_{ zhUPl>yRj+0(L}ASNRuY=xHBsjk9T)C*2wd{vI}K?S?9jXqyXQi6ZQ&RS2E(_ChSX{ zzhs7azKvkgAefbz#i3WbpEu+T?V|`{vPW-(fNrFBfzn(tybBJ^YI=10m_)sy{V-yEhisJbg zuxUBrSi)7ns2DE$UzE>quOnU|Gg2}ii>hl<^mK%ZgJ{ZBJo1Y14i(R>uS%s7IdRD` z-qf~HgK%JqMe)SmLs?@vv6??G@#gURR_WXB+; z!ePZu>o&1fPK37w8I2^aV&~Nx1tBBYRuBY;@pIC}o8WUYilN7_-4;$>F%|KS{1%Qe z;vL^rpu?5zu&$3*r*~$8?3DcVo=Q&H9#j3LK+fv$$X1k(9tLh@86ge zG{n+{?otoKwoi)r4T(V_$JI=EWvxGv@={5~!F8x?slTklA1(*Le{$GLqU zJh}48QEu0#vsP+|#sgH6DtHd{4LzGw#B(#ja7_m!R!-8g7{UkcYv|Ou$6yd!sWbZiJS#j9&Tu!Cugzg zirw>#@clCGD&B#(370)44=@aS2R}{~!CxzpABVqRE{OHav1GZ%X& zICU6dxMj>@j)Ew5J+0R5N4t3`W?5%oylm?v%S@nM!(fU)I|>hn>Wnu*u?5Wqhc!1h7B&Foe^mc;#pQ zp~Y^k9fyu$tjIKCx=#$W!^jW{pH7d!uDtq+Iiej+18qG6XF1PnlU#@aqnF3I;2vSf zRY1DTPrkQi~jsN-;uSFEG+ghV_a{rB)b4V(W9sV6;IJl%+Hif#UxrGFW*9T&P# z=2FGY8Aqcult9<{qR|)Ll)nos&D{v3*>RO?n`TKV9Nm%+a-eFDv@HV5R1sRqTn&#D zHG7avdfNPO67OP^HLI_heK0VSWJA}!K}?x_!fEdyK+B`_Se)M?_TP>6rG#a=PnOr0 zLmzpV?+P@)A|2WYf-B$AaZ?BgL?OaPxX}t8PJ(S7dxLC8l8Y3$xChQ4nsi%KH(9}k zEb=Lg?Kq+MIchTh?Y1SrOi$4zHJ1@-L9K)((H-Za%v~_(5ncDCkxWvcmYJ##nAD5s zRt_dylJKDjF_#*zSnGD^@Z2`?fi~?pUNJZ`-~M-#ZN)ta9|gT%21+el_+|_CEs>22-zWx1n8GB4M^M`%|U0(b9N!JhSYT zl4%+3!;6FFFvCz+`rPgGCxK4`9Pn=#+1rGId7}X?AWG+a zctyvZO@6{SI<5el%`G3ulK}eWn~kb(ntKz;lDwQ;?^uP4_P3fxEQwU7-#e>!r?#%T z<~Qi1fFrMzBxua zm%f&7Xzj$F-a=mrAC-ySC1ho|OTe|7WnTo>>bW&|?sJN{nE}z^!+3g;0D{}P(M-DM z_-~tLxBfC}B=SErmJxgdeHghC4*=J;>}lb@GBoKj2j&v5!JpY21$_%so#>-#gy?%cQo7v#b-C|T)M z{O94%swx@i=i3Ta_?QaVqytoES-24v&luk&qB{zD4qwNCS%|6+_!U)ghE2%ke(s|c z+O1!5Fb`WFLf_udZ7jTbj=VJ{E~#Y1WObHJujc6aIS2ZHsj4oWn)+-EfKvJ;pfL+( zOPU3iBL{*7r7SM93lw1vpb8@W-;xSx=d98-JwA>l_~El#&sHj$J=TCBEEMMm9 zm{J$)Z58w@n7FDT$tnaIX%u3=O0YHcgN)cMK71zaf zQxHN-m3^}^!R8^OKbd-LyW)=}ce=?xl2WkF)53g|-TdyVh7xEQ+bsZ%r@6^1D(6Cn z@lBpY0fYwEpy_V|iKc{75EH8)CS39@wIzu8d?;AQ3GTMrHEh(uVY)}(|OEH977 zQpNe<%348W23x5@*q!D%Dpx)<3N*kB!1ucF!D!AvBZ-zn7oom=xLyWqjX-w7mM|8G z6Ybp{rU?ddnwUiD%2fSpkWG0=e#Gv<)fM57+i2ly;)WWU0- zG&PS6%<%KUx=P09bMzZBZR{)=S?p^vH@Tusi zjDr{Sun`G^eMk%=UoH@AJ>cemVn8DD=U7Qsl4Fkl?&tY=?kC~nTU&?J1UY>c=NE<8 zImxpumxud$JeCa<_}Yhj6ro2M1n;QO+FU8bA7ays(@r!YAP5g$Q4cd5^guvn0XqqL z%Pkm+bQCDALjLqQxT`zbHA<0Gn{{X{)#*WoX9TORV()ur=hXF_p`mZx`e0@LT6@<7 zO;Xl6`#@3-p~0j)acJ`37)*Gk>U8ezjn2@6L{(M8>_}cQQsr?Up?xzi3u*G3R_|;e z-JsQ}&Gvx%3*6C91tP2r&V7z1d<^}_Sil#P#CIXk;%x7m@aGnY)#0v4czj2eRPyx8 zA;9>$DhkE~E+n8qQ51e6X3!w$VBw^bMk_x}M_%gm2?*gc=)NqTX${H(mM~ z-hG8~mO=|O)`EZLkLAW1*xmgjVokI-{e-SfKHGt^sCgC3SAs*rdZo()}dMbC>p zjba0ct-*Cj;lw)5XvJY3L7t=ElL>38Akm1}f{0i}u^@?6U|WTtDQ|PrsQg_O{>@vs z2W?+Srk>oo4^i$ONXnnGY!k$w6%{tcpmX_cWAMJ;3^T%pc`(;bD1ZxIM_#@(xWR-o zPXghnp~-J*3+f8F5>BI}0Cq@vCDaz9^(7>=C1DOQ-{1qDnR!OpQEwfQ)5m;j%PG=F z)U+7$LO-dE74OuG2z1geg%PfD&}QVgzS~qHWo>PZ*C( zX`8S(2ANqq1xe%M6yvqpM$Iz4Rs0|O-rHdYj8)}@{<|`NPaAQL`^~mFfC$>QWw(kco@H4~Ql}IZ&OHd31L%5#YShl-ptMuais7=h;oS$S3me)BcRD?^NV0c$&M_ z`EyMO1#UO+mK)=yd}Er{)fP{FaslY_)dr`fzOrW8gT&+9KNQQ*39~}w8#h_EyFer}aix$H4#*dLnEh`JjlnH6VZ z#cxKs*A?X|R^I!i=>EyuPzgQwX%q@U9!!?=LEYvtBSq(>X-$R381daD*>GkmG9-ZD zNQekN4psFxE$*RCF6ImUGAm7=Y0w(;`5*`tjnUb8432?T<~cgbaDI#o2nKLOdA(9B zKBCSJmoIbjpfAR4b~~j2yn4vg1|ae~I%e%qmtGw3EZgan;nQ86i#0SsS?ZdHP;{5S z`B|1J-?}M}p+*M#eSZsmWxji;X1bVKI>r+wOzlFbl0b$t^= zcVD-KG@e|Ywsp24^xl%LW4Mt}n7g=`k3r;srKH}%vEF|R7E+l8zwd-dZz8&>w>ygQ zn}dzS_L0l}(5$xsmE@whpiDyL?&6F3H;yxfx1_3%j>lyNx^j=kq26K@e?9w>T77z% zR4j}+*4kB@&&T8rH1satTbwnx4U4Yv1<+Q|#3Y@Vn=`zEfJQHk<`@V-9vl!q2ApYy zG!o6_K($&Q-cl@s^wF$+em@aaP;Oo}S)7duvyjCoSi?b@vj;$M~_XWqDuT-!cmoD!3>A z5!2R3S*G`ev!=u+9B37;zKvMi%AM~XZuxs1CoXCt&!y3|j=2gx`>wrvz+Tfx7!6CO z>Lwi^JqKG-YEv@OLz}sMWpzER=$?FCg%$1)7SY;HBsz`VoF>pu0VAp)dTiwxfr!H? z4X)G4X&2&s&;nF6ik1NSoAM}m`7~3u;YP}kJaoEqVV|n{%E3GGx2jqC?qHsdBo&|s zgPylT56^cEi+UiG85btXYd{xFX+X_lcWn(Ux@FWQQkjuDfCz!5gi}BWvUL#ihw~bK zlpkfE@kl{fQmDicCC=pYk!uOQd0pvgtlNm3p*{MF>qcNH;R+Z?!1McG#-b}D2w<MdU3S#pvfM?#@T5VcgQ^j^;>l1Kqv4K!nxcYp8;uP>> zG2tlm`5+1sn@rrx%HMaFj1eVW$l^Ko1}xM8LphlcHm}3xUU5o34cxb(E{(yp0-bJ9 z%C+;H2j2YO`JN#sVx(ji7%WaCH;WrAEit&c^Ca-6MDB9=6at|whdK_vIf|`fIFXcd z7aM~3?l7WF$COC&N5`nP^x{6jBus3m^B0?m!Tind00iw;3ZKbTqfLwpssV3tgf2O=qTuwlZCL-5xekr}E7}V6c+bG1y2j zja>#ILf~>GCLJ^ft!yFuEKYag#5^eQ$0K&&=9FPef^f9#HZ*%EP#;zYS|;F2UCYSQxL$?Kbe`w!Dt2V&=3SeL^^}}@MM!@^bkS7G*s5x z1q-^TH$8I|4IV1FiNhJ#xXo=OC?YvI(x7^zV{+%d34qIQLVc(cA^?FOP=_Rh0l6qq zh|dz>M{JH@k+9jBTK0xhj?&OWJ;bMt|COxWH)QEim!0SmxU#q}v1Mvq%T!dR>w+-I zbq6q|RiXYbbMQ(H4MoHV2l?eS_o%hn)}4%v!i%Bb6LY8iOBN_ez+vv3*N}En*#zK!DRg(I(wJma1{PCG!=eBIMgE+l4|3x4 zX@C0Wb8y;;-Rh6QjvJGw{igi=A0V5_wUM;+=Jo@#DJhj1o{srGLx#5(e!J5hmWM7! zgGB&J4|T-g5m$ry2)sYKZnY1#Zp8P;5CL`=l7Xm@YpaOyq1aVH!IhXYA@hOi2FQEL zg$1I@?PW!IElwX!4eUFqAe_~`dy;@(^udl9U{_aS8Vl^2SC^jb7K8|~Yu?e@MU(04 z15Kl<-UW5ad&gPj1w3xAVj0(8Hm7265U+e)xSCh2D6QQ;my(j5cLVS)-G_MB4f{=k zm~p&wPg114QPDpvq7Gzd^&?Qt$yh!VB zgX#(c=bFcp-KobG$7hJry&gddIu>e(bts^~*j=t6=wZo+atcX3d;LYeD}z@ETnHx^ zLTx2W2P1hs%O|D=w5p0);kj*-meGE#+U5q^se(CT@(;0M3S3`$mvO-p*MU>@p#@?b zE`^K9aY&DvI}AU1_=y>Fj6w=gwpYxf=J&EKc<%6fER!M59ey^NSg@Ofv@ZsviW${> zmpFKMUksZ-p^H$=0eE09A2XmVIUEl{i9|L|&Ib*gb&%n2LO%h=P}qhD7QiZx8J4d* zErOCmgF$KdYy|EmY$*WlX7UEc-TZ#*GDM8QKd8u8kejzNX$~ zP02Fp12bqzWhROX_?(0~Ev1>nKngcHDl^NkzMLqkNDi6bi_>|!CR`hJGf z%jj=7l$y@!l13nsa5Qz!X$c%jbfQQCyT-)Db%iqZ6A@Y?L#zE#!Ge>!y3(E=d`?AO z$Zmd7Dl<1G&B%iay72%(B6t-^t5t(2Q1_zl|Or?Tz5$;y1JO_g@G;So!YY$vc9Jdpu*-YD*Va zI27t@=q$}tGmykz76-`8`aS*L3X~FXCAIsohqI&FV9b(Qybp$o8iS2O0R)ZWHX5af ztfv7YhLU|S^1DBXYiZ{yK0G{R3~p9-h#wzOOIrpojAE1Y`@igVI!=i5O(CYY>%q@aQQ)t4iPU>eT`+bf?#j_P$u0VDVukr?Eg zg;ECUf@A*_ehKLn84Ld?Tx5x+53_OK8^aQdUGHc*2rJ~Xl1>#9rhtAHBnU0>PR)}~ zM0`8_aPab~$12G+v9TSzQuf)f#k)2o;d|)U#A~m=&Udsk!XFD8yy#=|@eXebA0vr7 zyh5&xga|nhU_1l!Z`SY!L-H*7Vi=f|91Wb9CZh!Y;o!aBs(g&NH+(fP;=}m`-qlIT z$J<^fU`CN!-xamK}_*0y}xg_fQWVPwVbn4v=s_@yn>nfRcSU zf)9%CZeCJ$c`sis*!poLeQd{SLFhFpZ=i1!t{ap}twre9&Ni-!@cQdJR1rKp$52!C z$5<{(Ao6$Oon}5H6mUHL9kKztRqj$#MrgD1sq`f0+;#$TX-}shAb(5GVM4J5Vv;V(Z4eE8}3ObMF)*_9>a;ZKpAA75Bfx%2SR1xehlj+63qwv1V=dziA%A;;AYwd z%3+Ei4oj3|jBFsq@{>r${2*cpd23XTBJS{R!Eiz4rmLpb@rL4nO2~eEO zF;7@dMrtET9wHeEq60a^B8W}{gnnJ@?oW=I@goFsAa+j4oLJ|+~CxE<^jk!MnQl0?js1#Bq`u|RPVbA(8RUJh5B z&=IM(BBhFR%`@P%3i;uBFCSP);-45iB{(M~jiMzCV}`^@dx)TuEkBHq9>yL#R}pHf zBwvM5`>jop?6AIWM^qW;t0+VxbLGWEX5$NT~}vmflLd?J4d=fuG;h);U|cExqBK#Zo*a2_m% z>u7@ib(H>6(g&vB0iNW;28ft@#7}!=;bZh9zm)dZ!>iW}`$z{3Sp@Ilp zS3XXsfI<<(jzv^KBM$RLdqv%|NEg1foy04J;6M(A5UTYjhBz2xsc}5q7hUS{7}gl%TLkRb_P2AKdL8s!RD4i1Kjz5MRK!iKP$z z#S~Ikep|cf54Ce37hDZv=QY$^$LPvNFC3&En0eFo^()`B+CGim6kputwjeA(dtn%W zUsBoT`hD0_%pimI7)mfb<)^ZATnUX`2>A8cGLmgv_(m{BRm_#5Z8>4qf z+(-;MP=^Kn5_Y*nk~j$!>4U0ch+pV}vzaBQ2M(OUl%PGXAG7oywyr&{CrLyb`kkX3 zRV(AG*DZw8enoLW?WO2(~=sG5u5WVP?K>Znr%7t2)gd}(r+-b!4 z@+R4AqU7TZ)E~eNRu*40v~h|V+)uTT6Rp!1Xj4KNEcHX^HseQF7;$a1Yr=ze4x z#Hs%W6fGqjM?M<|n_LSoa-mLo>4UFq#M!Y!Y9my$Q6HH51z*YU?NuqusBSHQfv?($hw&(7S_Z|&3+AM&E>DVr0l;%CvRyzodm8_VODSO?!NkjkUJeM^wNi0uvK|2TYuRQ2&@5 zOcn70HN6zde+U1>9cf@`)NV8*4El*-zs;Wb60gJiPtk z`m9V~r1uSr`?Sn9n6z5wVC8^CZ}4`T1LY8Vrkx8Z?t}+u2RS|}F&3iv;~s&ZUXU~) z?Mel=+b0)TZn^~-d`Va%nQwsGjwl%m|A!PGMSRYhc9^tq`D^h2lg4;mJBaLBfBOV; zO{Qt9hE-hlLTE8ve{_g8(1TsBrQD)&n)NN%T|KF1rc-Ic>-DZAQ(aAnqiDG}& z2tSW_2IC5>cWSsj@nbOZd;PwdQ*d*&+tXm^ZAedZPSu+$L;o0SHYrjpox|-qwZjL7 z4J4RBXJq*tL|;VVc70hbi2|1Bp${d0GLj$jfFFz|qY?QO6yz~4Kw0miCmK^G`@Aj5 zN=!7;}T^*pi8$D)6mP(mlX0{|YZmC%2yNFKm{?MO# zXME0@#=@f$$!uxnb#nnjdTS31XRME>=OeB3PE~a_l~=p!h-`Fy71=T~5W&L^2(xWS z1-ZA1MM;eJ2m2=mqR4953lx=TwEw4i&B3w$af-HDYr5-|KoGsJb2b&aZ^#;{7WM!| zb3Gj-nX%E^H3&;B_J-!JE8f_BuPNzjc9IQZULHy zq}>_GBBwz5u0@~sNlIwnP|rqhb5c$`!?cYhUh8k_Q`g))nQz?uJj+~!7CocaIbnXg zxpN!gb(mXR=;{piP!{F^ps)+Kpt-CPH*Sy%J%92z)g}dj5M~kV^r(Q>;ahXiH0jvM zNY|mbsaIB_522W!{}>NJ}z0ySAa%X=!vSuCdudH_O32;DOJ*%~S&U z0Glba-$2`V7mZjDb!Ug$35=n%F+?5tW?_4wh`J&Ey&c~SsjxS6EhQtV=f|-kd~n7} zZ;elvwa|2#Y4a&4HJ~dz#5RX_oUR%xVhLz~*j?T`Zsat3vbdnE7@gt4GM>y_2`qri zZ3*GPL411Iuz@HU!cdK%^I==f&#WP{5D}$>Ik9zmG=<(j8-SDJ=E|BjC0S1;E%`kG zxN&==qvt{&qo7G{nr~Z8Xzo?le{{UYxOof9tg?^iOp~-_qt}o=v^?b1B$hW?t5cO4 zSYqmNrfQoe8k*MI47s_fNyg^*k%)K7X>oflvDxnB%{I~ve)Vy?73bZ?YJ3y!b5YG@ zCOOelzr9P#*wgPAPn^8_j{Hq0=ma)+(nfP$K~7$ia~n12@QyvoTXNAY8T`Npz1S+2QO79E8a< zZcVb(otb%EBeeeZBefdE@(jKPgL@EvDe#mZUCz!WE#7TNZg;khqMI;@Hr0SPDRXs+ z$ja=Uz!zb-@Lc&EFydgs8A({f?|*;<%lHwlEyNCMcEJuIF^n;)q(qRdu^esLbnbKT@YrEKNB!dNmZJkkc1vQl5c4 z4CQ5~S1D#`Lb5YE&=HtCvSKPAt-iR{VhV9lol<25E(+&iGI}R$YwbEo_MDWSGl&K@ zk>Z?thgk>384X)il!{32l#5ZrZlz6TO1~Rp%z+?V>^n-ArB7RN?a+{M^9GjbMne#> z4x7L^5T$)P8_`hH+>8&lBT}Eiq{0A~;6P#@IQe%F9P8f6zeaY{>66{ljK3^cfBkuT~?Ue;v@3PEj7!e(tMHru0nW(jF zV;CyKpy+&_{xncB1*pD~JRRA^GCK~u#TZxIV16HDhUuiA*$EyHtEif(56T7AWUzNiE4**kY8Sf@J^X) z(LjfM^GBTN;Kf7<{$iRta|^Chngt2o@O;=2dksi7o~TeFgz*kQ7>CmBFh!7*qS>;8 zT&(u_`k9=8nl&wK0%;9fQ!Mq7%p9)6A9{JUX_!MZ<~Ce#Q?1vn)zHa_Ihl^`ZDeDl zJu7=PH?3M&d_mp*dp)*94PJ7=(xS-0($WikD$XW^%h>h?A*}Uga1gh36Hvby{`Qh^Q)1h~yof@&Ps3|ON+RpM1`7^R!M~AQZCKP7`UjUL@ zara$5%z#l+cH`je+bnW0KjMo_`%WuJ(pk~Fq=hUYUa2m9HQ*Rg1)z$wRmC!2mmh*e zx`0bYxrMZ%xO(5bxY8om1iXyVfT}~V{j)MhCQ|$fNE{RoVEiLg2znn)NHMS2y$JBT zF4$8rm+rbNNs^AR0pZ4YBU7r?zNTJv0oR{|eV~l@o@W(@AX3_0e-bJP{92H7f){lz zx$23zuFfn>>vF~;@fr}6qxj&?`3cJV=h`-cm3Yan1nYeHC<@>|FJ==r&R+m`$JY2F z%BkeNz-hl=gT$V&Y|Uzi&_r5Uj~)eK?&e#>lLr|>lB>oOG+U3h9Oz^WrcfEAsE} zL+*@GwIAlM@e3c`X)5``zROJiTw;}n@L}Q7g&LaexM*nM7y**EQ#ow4-_oNgy`=Y+ zzJPhw%Ti;Vu32m1c6E^^M~b@JhiV^Q`;<8~+p)KGV^XIgSoW%{5K# zm$aVI>LHs!*A}pipd+|x002`3JRcAwO~7q~)L7h4I$tJoy+eBe6bYdoQ=lk_v8zO9 zlHRb_izjsLV~hoDF>U^gRip@8OgKQ6t}JDlJ_?7yT-!)pk4Ic&!r9&Ju$K0R1U$$J z-i;rG+D%Wp)Q**I_qLy#SC1gp9<6Dj`6kom(<}pR zl%1P57|$A6jj!via60GEDxBrhZRJ`NMFMqrR^qh1BU?NV@g9_P`r0 zaJ8?#sj9n*ql*3`P?Zn!89bN|XHdodk3bMt{ROdA!kQvC$j<@Uz+k71hm6C&PyYfa zsw}=_VC0~o==AX1ApkGAsB>fwJG89P1q)gFJ1@MXFL;immnIw=oow(E2Xz!h7Iro^ zA|)SbM>71TrPb$j2lgOJ_BM}t>As02n{EG-lp-GD@wxIH3&#^#GGbAa9a z>5Mf|^0d1MQMx_m7XF$2O$}Bd5()kpOqb-T`3Jrqcv1wugU9NO^T3E)6o*Aqnh#Pe z=E&R|e^y+h)fXS@<%tU{>V+*@FH3)T>s}dM#QzG@k9d`qcZ)tpQyWi7tBqTr4Srot zg?yX}-Wg^I=q#X#j{(lZObOt@f>3iM+XT*Z3C&-q?}NSKRGY^S3jswrA>zaJrw z8EH|zlqxY-uTYDbFJ5h?zC6n|#M{Gt+)4euy-+KW_T zt^NYx=Q@ER)hZKaLt{Ju3J9Wq2Xr=yjCM|Z2ILeyLw6v-5I`Ys`dwTF23H8=-M((VQ zqbe=-4k>?xvUC1OVW5yWp-<*Cs5Q2(qT<}0m&V=fpHr(!J4(!Txe8_VNa=tI-rj^m zTI&e)y-BN`{ZU}pa439Fax&}1~!1d)%*WqBJM&7wOfS3px6e>Q)4He z7fMRuES-X!5dAw96J);e6;1n=Y=;JwTc(Nwz5}#fEVPg8-JPfz(%i zl#P$IS|rd2*P_DhefCpBn0^h?lF$hcPqISmqH+it75^@#o`-;6vjbW%C-BRwr-ba^ zEuO72sTonFBsSkP-N9NQ!M_N)8-FZ&{~y^YVywx{D(nV#O1l|-dVFOqK0i)wqUl}} zdlL<`+ zMHkqx5lEi@j9w3Wl^J#`d_Q;WZe_ExRv>nBTCh8T${PiCbCmYm>Gfi~Ri%zQ>)`;$ zj?M#kV{&`!lkCpqrM_%~t;y*TQ&pCHZ|*3{7Mk-4N;*nB<+W4n4QuTswkDTc85raH zE)m~o>Zm9mw70p`Vmn;r%x+EQ`XZSq*O_0J)l_=itXJiFa|>+a0d9{v4VZQ$WA;2pp-fpOUc3E01aP;hUh+gd{ zrAAWbxBe%D^7cvEI};&DO8QyN3khPUyiKI7vDK5EAr}-nAtYa#B**d+p7|*nYz>5o z(%2PCls-*dRVVIUG}QRz63Wn32-=XyE90*Nx@5q;0Ps*qxJ(Nv8n&M$d zgDlvroHS53$24o<2a#$=SiJa6Cw`Fx7wB`d|k=Lqxg*+{4+$6SL#8p?5E%@p!EaDr(u^gL29K?p81DA((t5Eb&l z$jxCKF2X-RU}nmgYv>sfAYo!_N5IM4GQBK*!e1WuvZx^=UmZMTM1p%(4kJNBea|M% z@!P}b;w}9VyJxIBJwc``uoWal`CSq0=Xrqp7f5&Z+QvpCOwzal+o!stNdf$tzl!k7 z42NJUWBG-hl}s}<&q49^$8k-)Z^e${DdyXBK~oKSHqfJ9SRpqOv8qeF|}Lp z%O5%1D0~s1FN4jo9V-577U~*NHa3|N^_G1MUIeW?N>pw%aovKEj2FJ8kJGfp*b4s$ zZ}nzm%rx|k3n)I7=xvLm{I<8!GX?Vgz0J`S5Z-n?fhB;TAXpa9m!Xc%DM~WkMbSQQ z_j=9o+m@wEuC*lRjd?c7084INy)7x3kb#Bi|KS8RbHtQyBvs))2Lj&ZBu>A z(G71eR}!wL!li4)aAj49>#R;LR>@Okz3RNNUA3p*>A$~i=>Nn1@jdDrufFJ1&I zDgvy_U;+_{hd0J@Lg!z?UD=_404t{eX-&|r&0R_o;jADYj*oAD)v8?A>*`RXja74E z8$5m|l9!<3e^}v0a(kv0FKhh;tLEFB5MbV{0ighs+9M{)gg1=%Uh?%JN)I z9zwF;Vb6x$4f#WWz9EJ|1j`u5O@Od@F-3249BTXyu93*or%78;&#}jLVk;8C+iGZc z_~I2t6U`w6okP~L5?6>nCp2+zb&0OdKjOVP!XK;*-w^;4d1=5Q@G8jVbm5CvP6i}o z4#Nh5-w9%5)ub>lG$CP}y1HAFIvEXX97W}!vm=+SEC80fY^9>Kq$&jPaq=DH6Uw*<82wymqCe$3`M&R*!73F--I6y z2Zs+T6`TY`p9lUV6x(+;c2U*coHRWbq*7W7;f=Wa=w@gs32tnUhsI^*U&Q%)cu{{z zYfTvoHgjuY(&wK)UX~>jz(E5A*`_Y!8cNt3W9|jm(?I!)!I|I=k47DE3U$1T0||E>+*pJV0;%D-Ly zRooI5b35~4Qp(@{w)olGjn-@=M+&0<7jYMc)N_UaU!QLPMwWzLgIrLY!1yE19s(O- zKMJQZVs!06&e)A@RiutoaXh>s7%wD;EQ8Gi$U#fl;_Dx)6NO~XkOL24uCHP(d*a!VraD?FpV_r^aY*1ehZR?Rr zeYo__Cw#$UpaQ?t(Les^$x{LN1R$UB#6FmuHHoY7%vOo8Onkz9CL0PrL0;ISApdd7 ziGj%;L#jj`^IY;Xq(c962gJkp1-{k=*#S(aR|uW(9h;Ek|3Ny1as#+QM#qP>K0($07w?J00clE6x2ox`d5UrcEWQP*h5esxO^+nKv4}TBd3Rd9d4w=SQ;w*xH z;}aOC)Ps>47BU=F4?PYjwYOZ0j&wDDlYD(4>v| z^%eUkcU7Xq3+MXx;6tS~rO}5!Y^YA zB}~OKNbujm8M|+;S^;%LIYCAjldB_7VrC{TfyTX>rd{NLQ!pcnAo2p%C&R}5Ug_{B?i*%EMLn0vU*@@)XR3LdPA z>E;K5=Y%s(rv`ucv^*9juw9Ez%nM%%N0$Qmww@hoQs+#a-7XMon6hQC6aFsz!1%WW z$&}nP{6GA@_{?ZpLYa9n=GkDuLtkPNPU~Ly{T!KJ+hp^9OI)|TfN7*7IC24MreIIx|$I=43N#84QJIzIGy>u+2Jf z{Y_cp6^k|$Y$@KZfKFFqs;zi(g)zR7EnhD$wi(%rw+z;T2nL`WRD3^%RH7D44Y}3^ zq_x2+rx{HSpQEHIN`0Nkh0;@wY1m_n8SdN-6UOwP>GW_rK4<=k^G1%=%}t?X9d|(S z^}a-JpIBXJn`|lXO`Bw8K;!_NTcN*aQ?v|(x5ZOKJu{3s_;#TxFuwjQmH;@Nfz4}Z zpMXA>VjM1JZ)@${q|3jceaqQ=rfNB|e3zct*a>9WSR~l`BZ+b#yxYgUzw{$nri46!bcOa%KwM|0;myAf$*wDyvY>K%sG)5-or;vT^+K%^An%K&G+ z7Q7vBGGPc=fF-V3+8TAu65PBj5G^bEf}z)gE`owQeb#f5%a-u%%L$rg3|wK!g6o#R zH~1bf%OTH4vUZtG{hbUUtiq5CjJb`O|23BcY=`Se)0Yuc{u?Kr2W?d#e!=4!swq+oW&9hYMAx;EnlX{h^`POb*6%O_M-n*8h~31a@+nJ6d>gnD~9N`bkJ?n-HsY~M2F*rLpx#1~c9HmR}c1_^EFs!AY0}@??#s8mH zuagI7kdnm%*w6-a*}{MK)LQxB)-+nkG%QDjquj-)KCIci`LuQ3AM-%BeyKea-;9d& z+~b3HxmotoK$$$y>8NMs*k{I0#$VQUEgKQ={}+h}_)POM2=d>5EqE`+?Z2kII5~aS zQW^U|sOM^-4A4CT4jQt_#&j?Pg>mJMD&_C(9!){WUi(a#)#%#=6EaqmXj4 zswV-2IDg(pivg(`wjKu;gmV2o{bM=B={IU#BjKC zl?PYAhb@ww7K;xi2$@gI{Bigyy3Ol_31#s@f10%3UTC4yccutNI^$-y2;|LfxaL(d z;rmZ~@N)^8$ty_9q*7Bdi-k}jw_TKxn*Q%wgCn$l*ne&cMg7ATbWlw1#2 zH?E+I`8%f)OwFg6l%*LWMWt(>jTsO{ZqHtu?O<*}u}qL+77MyYqdi$Z!5v?jW`PR+QU~Hs33;}sE0zEtzcKr5USz-R zrk{>MeRSml)CIy5e_vY<8_&a0_`g66F1_^zs#U58?vt%XT{P~@4W7><=%cCdPE7Ig z=F@2W@P&2Jxp)$ChH~aO5;cm7;l?l!;{{x2FU*BT)Ns%a;?0GwcKW@;mpYR(=4#pp zX-X(*?r$vjZuCh78z$m9HdhN3o$mBpEY`n|XEG)9oiD$fApF$YR9RKypQL5uO^EhY zwXWAvcb<6sMu(@rL93M-Y>vE~+BMbjX#*SR5>&h1mzLIiMz*pX?(@WQZ9CswT2^i} zc$_jtwTni4xw5=&;~<=f%%Att*?=pw5^>#y1Y{%Wio&{Uwj00*aqb|i)L4Aki!Vf+ zat4MGeG*=+^rc3Ps#Ke|SkVWy;=)iRMtAT4vHCTCg1$c*T; zWHU4kDg+{-tfCTb*DBA;LzJY@6xS0t{Q?bt?S!axqe~!bbEjuh(lH;B8-uS&sIMg# zCJLFCQ4s5XLbg=j*C4c*)o?x*WucnVlx%y6NTimV%yoI`X87bNmMiVGrKaRUVYz$v zxIVFGbs?%+Rc}mhJS{^Bs;Y8U0{Je=U`-zN7a*07OWTCyI>cn4PRQD^1hHXagzVl@ zf`ZLD8N?bt>MxS>;zi$;HN;U)yK{OKKc`f$ug$g8Qj(#{+zKhx-CDoaD-{fPh#Dp< z1hV$3v>YrbFB%z*1Z}Gk)BM8He0UA53|I<0H|NXvr3UR>SEByyEvebnWomI%ATy=5 z+co2gPlE>6V&s~w$w&lT6=fN$s00m;Y=zljFH(rIionm-fLycy)TQRzD~ z8`@@ukY>+Ual0^fLck3n5h92_$PiStIWY<;0@q{~w*10+2p#cFQY};QnLGV$D};3N z&bFRad|C4bcl(Hp%GlCgGphSliv0L*B*IeMufJys(GTEDp-vnM)CM-l>DHRSS_Qha z)ziFAK?iD^Hj!topax#!@-+2$YPu&o<8=*l&W@Uzj!LWeT6|B$iZNO!dlRxOGIe!e zyj7#F@{a~|DtBO_h5a)RF>tB~okf2JHz~6zJ8dTW_ypeeuv&16E<$JF)Y}<{B!?+J z^ZoS~X#`aQ!*3t_#ZRDN0>6Dg-Dwl+;;&ghn2@sh+*QM=Mmdj~UqQXi`vd(sPYZ=> z9z5s3O&03o7KvpmU>UWgs)N#tRtSV;>p!5*+F_N7kN+PdHxiV1I z5JE}yGo4(appjl7Q$UituXn^_(W+RSdPh_$xm>LVvhfV__tGxeZ z0z@Kxc<;4DlBe)=5iram#CDAsw#=9v8&g?m2>C5G3-xb5ZKX=`?LMjer{bR)`GUKg z{cupAq^M<1Ac=hvRuaM3L`$L#lEs+OaE{ON^`VeZ#t8~aH>674 zQuWH=7O(JngUP6YUm?*fNY)qIkGPzpn_BBrOjqdD1{3}T5`hj13$805%YO>X7vWBt1*`@I zT#gVJ21t08bNsZUyBq>5m1W9vN+^noTN0$x613jp8offUq$z_OREvJqTC6t4DN{2l zEi#QLZy|)kIYkH68cryQp|}GKMG`bYE#go*$Dwrake6l5aN(HN$cxAnvk;Tz~f0NcN^4(biK+53?l2k1?&DGgTgQ@%b*w-c=N?dUpf7J zS+OoLhD8xb_7*vK6anB<0)TB1ix%)F280;?-02MQM-gUD6gUq&is&L`v(=-QD}X&Z zU=m@ELBq1AjkB;Ekxo1BoU*EeYOP$Z!UlsGpg!QG(Jz4!OaQ}HOl5-V;2VmGd1b>9 zsIlCZ=d5<*h;tfS{UwLeK|c_kuG8qL4+dHd*5v7p=b7{>A+1Z&fu$rx* zOxOa!CTGlyEP>66+aa)1S!o58Vp>woE#mfhvM5=PbQKLG^!PPB_^OwPQOxF zrcetcS%pY(W zFVd`nYP%R#l|_MO=ozD`y0@wocymzU&Ea=oqj!NU5;sBv>xb2DA#-e&f>wX=Mcl4% z$Xr=vH;Z%7USoy3@RqAaqSc@WNhOF@#tg*<tkUc7KYso?dXnb zjt5d&a(Dp&Kru2X*`Uv@mrE4}Vq9KvmV;sd1FCFtWkPZkP_;g3b+i zAR(!clLlL`i29fs3;BSdi}!m=E|x$#XZs<^C6*eu>twoe#)T{dW%<%2HHJX(TYv%@ zyJNRW%%7zg6lp9D~> zQ__B4gMpYj?1yp2F054KE%!TZQ6yzm>wG<{TVVKJq$_xR{1n(YQsHueDF4|I3Vy=3 zZCh#+H7YetC8!kYi<}dl?jCR-tE(IO;;i&P67@=@UM25pDQ>M&Diy+fr=N64fapBJ zO`ij_3Hfc{w=A&$0*?5Wnb`AK+`~JvY2X;Nqg7tLXZA zOBdW3vZa?DPU;lXJzwaj!g4p|mst zvKn=z53L(ZEYyfI({(L<8LrIi0=Tuk0RpjtI<3B~+@STWNK{m0#i^?C(>DkX2g<0M zSwYiqOoNRjs%93Q?X|`Pj}UZb27BVDdWTEwcJxcAmfDWf6?V;4Yx~#HvXSC^4<%pQ zc38)>i>bZh%Ts-`>?(o@H$`Ho_t%3HJ9X8Re$y2;GT z^qJ5=Q%;`Zz;Pc2DJl)erqd(0x8SXXQ)iKA@%=4E`b;U-vyCmH_Xt)>9O=9t4<$Tv1^w>yOoCpc(y6;!o?xflho=QN>2v7!eh}U_?|^wJ{$*zzxI+i? zZil><_;CEozog%rnM;5tqY`C3Eq$D$xPJ>b@dNa+1@K}Hhg~zE15MqB=cSoHUv+QP zyl*{7ADdknuU9K|s-O3VrVWwdE132N=t~zpj_FJP;@aCD(i3=r4u=ztJx3p#TV(`z zHR}Gh(8T9rc!93`4ElXCakyy3%33tQ{0u(jq3B=VvFnye#f6v$o*edPxF zgH>zdbxI`Hs0TW;`hu2#;xG$tX{Nd^Ec%MxF)QdlPcrF}KA5w37?+*II)!g)| z!LFRh^cCFnkJBIh@bqu}olO7Ihc_Kv8JS+Q{nH2OkJhd=0`xMCa;VoFo_<4U`v1~@ z`N8S=)Hg&<-uc&EudI$tuip8uKhl3$x6Y_jAemY<)Mtj*he>92c!QONUQkGXyl{Gu z!dTk#OM+zjzcMEtes^s+KXpiRR`3=2;|=TO$pF4uF*1-FnV;Psc!CM~uhOxeoi%->1^cLoe&%R^6*hXka%%|o6sz6HmZ+5a2=22H+QD~*% zjd&*m;t5yLe~(&;C0L};*=AX?6p57z zcTaKgU=u43BO5BYwXTEgT0|bWwM>iGdK1;1Lt}%rgLw^>`kHy;OuQItwKNx?CX`2i z=3LpV(MeI9QsL=^#W>*`*%(^vHAvo{%3>!_#{n9Xa2Iow`6u&N=9yjL#SUo>qh3@& ze-00NXmm2bOz!C|Ee&Bdys?VKOcY0daVm=mGSKh^d>|HmHuDfH^)~b99%a~QYA!(& z$U}eOTG;~k86goY)?ZdOPCTZcAZLIY;h0p{n-^UUMSFV7(Yf=fw3J&bH?WIciT0vt z`YZRE7FnX05{lI|gB6y@Vs37+cj$kd(qi|c3$CQ`Viz$NF!wUIGM65V!t82v2yLSO z;aStF)`E&CMMQpqcPg?_JNy?(ukEStIR?M3m)`EbPWG$b`rc#k>r&Z=$Nb08 z^AEV+fPdT%xc?0QxF3Mk^X7j=Wz$ATn_0-IT3e2pPNl%CD=2K)i6;xGLZdcRCWa*q z1`&Q>!l;FPO9SKGloh>+%F9X|-co*C^=zG@P|-0;1!!w!snb`=SDZbrEL3*(@Rg zQRrpH1Ge={-fL;r;Ots4AE5P!Ir z24`YGf}jT_^LkJFqCe#(4z&S`&Y7eW2*Bl!7Q_<0qi zdF(a~coJs21$TK+LQyKZ;#c+cDB!MZxoF}+(LS{O$*nK8i~P^+*w6g)3!EhyLo3m1 z)Vp|fWE2@iW{_EMY0Y*cfPo&7a`7?Xw-Okt*hvkHQ+IY9I8 z&kv#F^zC?71OkhWGkIS0I(_@`JNaE895wR{)j+)ra*oS63nYB;l{o7zIJk0HnR?;D zl|xGOYfr#GRH{hHFZm6` zvv^v3d_y}XyLFdu6Sc1>7C;1zrF=+k}w(K$KIJsl$TeHw{6(b-I}1^_Tf5LIn0?gf1E0YRs-l|h#)75 zbfDs}nyriDB}s8Cvi9CfW(LM+>7Wm}>iMd3*G_Fh4Rm`;>$sGDQZF?;7f;o=>t}Th z)TUKkb!v@gL@JOqS4orm)~y&;i0XRUJ!-`nuKi+lsl5>z1b7Naq}Ee^;z@XNV6h!p zXx8j%kx3y&PjvULk*-PgruH(2P~ojs^cj;{ee1306$YmQ?ejsZi+TZU5f7Q@5LFcL z=1~q7YTPv$rkU16H8PhLrLA<#jtXS{9i6l5fXAKQez@&0;ICYfR_jA|QJ2i~GK*&0 z<5PW`>edX``R97|MvvE4j1B>)eps%9!bSHY@W!!g9CHB)CYuHrBgzD09%BG0si$u8 z%%s#^fuU)k)VH;D^9n^RGcnAsdwaNE%x`aRU8fK<`>4_St8TCIPV^rB?yV&eckh*Tx@91kuJ#KH?%52}pW(uyu;HcCJ{j|5j!m$*Q* z&GVmAJ=A-!mlfd?o}laOovEk&#v6O)WK>&y@4B{z3%4rhzLwt2a(b`{T{i*OqV|>bc~u(MfKJ)!Q0pc) z4|f=J{s}e8YpfTmEUuw|)xkW_(xOtq+iXp0MO8JBxDiO)0-~9ME1WjM!4Qn3ttbSu z-QuRgyd{txs%seAnwWCBcX*{h*0{BG{kXz(@qwvfVePU0YB9gL1!&A~_V4mtcB|bp zK437_uXS%+UETihLu>laG`CoF3AJq#aJ_Yne}0}dC6u0*LEQ+P7UAE~Z{hosV2%Dn z8F*&+GKKDetCg>hhrfb0{qxbQV6#Dyv(4ESff41sin0focV0dJZ}1Nw*3A2o+K#>j zwtxeIKxqZ=i`p(_C@K201pof6+x?syJ5^Sg>~3~4t;HzF%sy}673SRmluZq>a|Py) zBL=qNL^xo?rWJrjU`b=-9ke0ZKSEc{@U=fV%~+L?Ft=AtdtD7u;zXQ_HQ@ftsPUL3`L_QoM%wYWhm*O!i#>sQH4^g@p(9LLx#$`Cu2oH%)O3 zHCREQ}3CH-@&ZXDSC;f2+mrB%*~&Vnijb!N{`Cfg1VT1!f-Bkh5++Y0jh%zGMD zUE4O-z}eo@pV@KnNJd#!=aK0PKHeX^*FIJ4^tq?(l?_m%`--U0Z-5sP;20E9kVTtm zrfKvt^Y~BzozZ?yAiwd&TW+C#6Kp$%&SLff-*CmJ7TixQ{3#FU&Z!Vsn@lZhjsd|O z>=}aDA@9d#(&Uepp2~6$EpFJ*_^+K`jE>X3y4o8GZ}JUFvs>zaUiyocNhx}!QzdS< zE7aEBGU}nW8kL4pm)MvF7xTQ_;$psRs=;D0|2_2;Y!+lo!W)1Q8kWN8P@*bqLK@ql zw$tyJ*m8xgOS7)O^}I2a&@o%re=xt>`Ouc$v;89U)J?-1W_<1ba|bfgy>s?9@AUe{ zJv}LfAgCD4n*mKJRQFloVlf0ygV<6)ib6k+({8zU%Zoc-O1~#wv}f1Bxr5Y0htJL| zT6Mg;00ct#*h-Z10cjiSIEzSyRVZl&lV%TggN2#?W7)ZFyGmkhhY?^&Ho5(Kp!-$ zBrc>4oCAUi71D%eEqn!>Q zh!-_6_fZcqPazlkW4!m_$H4i(QOx^0F)~3fK}0qGKlC2_2^#JYdovo@i?O>2Ql&-j zjVd4=-_38Ni_08!;!*g)e{`&9Ylw&JZb3y|83ny4gnBDs5|C{zoU$fhA|A5!M|GjJV)nj|D_P!9z!NWV}#yFr+=8KkFFII#B|9WQ# zY!2v309uLtK$1p={TnX(BfuMo(IJ)wy*kI2uO8UlbH-i^z<-Xf>B5Rb-4inEp@D!r zxn+%tc@t$Z?@|xlr?OTuf9_}i-V^|_4M1$DrW!)gCx#nl&4Jh5xm(tuor%~QkVAu! zi&rxr8LvQIDyiNY7|5%tsP>oesp?hrb>k&;6P4mAZXC+3w78lqh+nnJC(3UrlZ(<_ z=71;1V$#Rw`5m_IlA^YfqzaSQm06mukI(m6Tdyr$ySN6%(PP$$rGD= zoBkjHy$_y6?ZZ~09$>!=h5;+J;TsM?1-UKBu6?gf*wxg#S=;7oGv2&u#TH>3$a_;- zQgh?VskNMfPS4NN zpTRh+2rvjimksUJ)Wp2WpLgQ$JIfgO-z6tm_tkZFLU7!g5 zDQYG2TB)z}Nc-0R0A9V!*GPqKW3E8p8qfa^#+zY0=p3%h+p(J{>O(V9I68v<$lM}B zw@ch^2jz8RN@mZup#Ai1A%cSku0{JLgTEe-T=NutTjdFZi$4y-Zi29>mkpZ)7;n`& z-`ZRFUB~Z)zmr2?xfTLT;F%Fz5!{XXi>oCAcMnLee$WM(KNzCn-9}}D5dj+8$&O18 z`H|0a*uUjAN)-Gbx(mi==dYy_=ikG|k$6anQidbvGPI3UOf{tH+lOt_byziF-EELD((aLclZ9*li-8!w-d-r+mXwPViW7aPd;I(1VkNjJwQ%ya4e2vcS z)W^(IXXx7pVYOsf+d5MZguuww1F~S0V|Kf+%N{OFR}Y`lIqVDb)U)3%u<2#Im>0Zu8nU6#0)`1Yev3=&2Nf&gOha1FLV!Z{3@{qp zW+cKd09$apjNX_QIK6hhzqWm&+6wHmWUlv6g+l}BiOgfjVN9%RfCtB!*Fg+FEVp8L zhsnOCz6SFJIam$o6&4Sie>K9CH^yfrXpPW~G~t_|4jQ$InFdW__FV871?Ohw&t(|i zf5?wQnl<`IvAt%47p>)H_;H-Vot3uLmrAqExuR`8b}FMbA?w6{>pWE^Gj#*-4IqKm z?T?9*1HL=awrtCbuaEz(0Ptu-aVwCT`Nuck0O)~l*zvqiVLaz`eY(%LkNP->kI9p{ z=*Or++)KZZR8dsJM2lQ>MvqPjonD8)SJSvgUy1+VX<4taf-zBNtf^`olbN=Afs*}6 z>6ntKy4r@J-q4?>MwyqXjB$&tp{~};;Zh0fFUKmpDtdh;npLn&=2~FYaDOzbXy#Qa zW31c;oXP`*>IH=&UKH8dVUi`isApC>dyb4WtgP(2Vx)bOXS}I#gL|wo&OXyHa?LRO zK6>@At7TVHS0DV=*$?UU>LD|Jp_xfXrpZVL25G?K9n_?a;O9eNfB1hxfdBDrK5 z=TeaipBk;#%uv z!qQ4>VPck1sWrKZ;99kgI)#WYE`)a86mz^vo9@VO>;X8cz_x9qZo_pAJ25yId<+md zD+0v~QRby|CfK-Ux0_$pB5jHH#s5V5lgl;o^n|KXyTORMT?Y^1n57Cb|NWrGFcWwm zVT*>Htx#-2^<&Xr>+YEqIKZSd)wZnH+Nq4-u?dR}ODXa&e=;W2c}Is3t~f(R3i59m z#2Fy|mgP$%ZDF45+|k^K-XS)F45Hg$5a(@y$BUgMt(IlY3)p5P+ubqq>!uHObxhw8Ksx4&cius2q<-ry zfGL}qr)uCwz=vU-KrMa291=7!C4npVz~p7<#S`x#0hJ2V{~MleO{}0YQv+ZQy9gzQ%oE-iWq)<3c;b9;* z=CxI>I1yhMCmXIWm*f;$j{6A`Vlq4jm?J57)zWdviE(tl7}boL`zMPU102-Dnf7Kmr5{vkvPK5Wlrnd<-KNr& zjPw`CXDn^Jiv6t9p&5H5bH9j0~nP z4cWLt7KIQWM2PSLJSCCIjJX8|@nNGS41*2juS1Z}s;P31$_28=_bI-NpmY2C)=EfxEw({JPb_rdPThby$pMcmVdWxz{E))FUm7b&1))iEns!j0! zhm|E3U$t6MVr#_ZaM;qREf5FcG_6I+)fRvVb~Dty*wE|nW#YR`aYw~Zr}@&J7XK+u zeV6$1&26WD(}A{BAV@CWemkTXp$VjsgjV<+y^ywGI{}_C-VPr0)%gtYi#9NagWsXk zfEpR|0m?|d0{6JIz~Yhfy&$BK6nrRFjnrFmKyL9KL5jg-&&H!krjMl)ysXUi*TFKO{AMCG+5#qd`}3CWGF!p=&m&YoY~R@~y1i{5eM)@7Ge z=GEic=^V8IjZ)8oiY)Nt$}!-aLwKe>-JsT+^au4Og9`plZ7`_dkQy9RBmY*xX+oOk zoIgQ*Pd!RJ34EIwp-ebQ2mW%TlEMi}&e5x9Rl);1TGqD61=H<;U1_!Pofe0euUuJIUMs8>PBc@GdUti3v*vCb^6iF1 z=-drM>7AF3WoMjr0REL@I_*HeV|8P?zIUS2TUzd`H5&WIEhUZk9+ze`3{{t>00&Te zE*^`7o{`8iY!3#U-6a-JoWfb{R2bVV?q)tJbrf5=q_n*d9z>*kT}36ioy^ZVLE>wq z$tp#eqsgsOl{o@#SgwS(9sLZw0f{=;*r4)i5g9Gy_stD^8~6Js$?x0m;{E{*sO5b^ zJ&x|gnLX&Ug)}Jjc&0ZY_@V^e`SeB3=sGI+)sS%G4a0W)6_gj$kk~50_ev7eLbw9h zM1q(wLOIw<;%YD{LKxT_xE)&}h&)M=I_kr>`{{mw&8jU2=SCo}dr)_P%MATj4+$Z-6=% z-3w`D*s&1KZrm$oZkJFG!`op{sQ`vtLp=bVFLZH43Y@Ix!v(Kl*n2kwYFqg7jmk z6 zYOvc!?}__Xw5PZ@$(WoQS1E0Fme?rD;?Ail$sNydnvDsj)RL;w9H9bcwE@QcFe@C! z;_!vJxr8Y$h2mrPBuyAqA`)fJwmC{&1(_&5CA*=(S;==GPgYSzN~x$ctx$kclUxQH zb+NT12X11Z;xZCaEa|rLs+@E~f;lajAE!^irQ|lq$+&1PCj-^n(vQR+Q%`KO?E&Wj zhY2I#Aw~O)W^5~?e8!OppDtsgr@TpC)*5VVhi}=;`MH)jk>IexdB;-aTr7o0B2OZ^e}JOD#Q|oVf6G? zZx1bY4_X>}XjJMftmu@{j-rY#DYas{y-uyOb{DtTX+Rpw>`k>QRk__?3v1}XA{+== z1g+TujUd_N_p2Kl!5W|v_Fv|ZN#Ns{nX(hG#eh8UhXo$@?r7PT3@|Gev&gcMpo1=9 z4E5;qgmSr4{#)UTO$BBCYj$ur=Ha%R;02A1ncsc$;Dex#6u2Z;aC2wD%sAAbAytZ? zz>EWqrR05+%?1m>lP1aa=;K?KmVHnh3#RG_UXU>?r3ieulY<9AB36WAI3Nzf@*~s% zV^7Cm59OX8R1hO0twaAo<#LDo9!#2Y|Ft_#t~GtJ6r<*Y^J7r&HG@5e+$FZPIH1KF zDUWzeHr#TCdkv!e$xL(}=ZP|3EnU~8%wg};9;xiA6l`S|O4+0YN?!^k?t5TW5j2^+ z$-8**cUlN~(q;!++M;SIx);i&6~A05v&9$zZRgGg zk!Epm)!F79Sr_M~q71}p+P|v{Jc-y+D;Of2xe^h|-_KG0Ag0X1??CzJ@0jvrJWzg1 z)Obu`cAoEfTSMQGnauw%H$NTz?v8wi`6J(ZX*@p}Pag%@;NU?mgoErn-_QR8a|+vD z3JQn7DVz<&GzH&)TtA_;;D$0>M1zA#*te$=pi;c~-YqXV#-!tpm;Sxytn-VXlRj5` z@X~vrOY`uaEL<^0Rkg^?Je9p_3v;}dIeyLg94&rHr0Q{u1N{Q;4FVIX4bn#d)<3Yg zp;X@GFn+;zS{UNu=nUHro5f?1(X&_n(lHP>; z0Z!G1j+hd!9t#X5J-F>qB9wy@4?*4a?ok;OUM+_ZfBg~a;VW?A^`hp6MClr+yy6o3g0AkXmfLw*2;nmOIJy6qXMp^Dz(*EQghYu zW#$}bPL?yaw`}Ltisd2DvGwf+}t)@~?qH%%v*=tK`NyV-8pB+TYT=LSv{iSvhw_-l6LD=iFvt-^D&W9g%>hsKuUnYkIhe;ww5Q<>jUJE>2=WI;y&yo$+M zcak(_DTl93vcm(Q7ASOudND$-2^jn>n}*}G;|Drdo*`5W?{BRi)d;e4E)#7wnEiUg zB^$s+jSz*g@kXR)r5SO+gh{T98r)ErIVJ!FTM++|P@H@e95Kt)sqE{|b!iesq@1SZh9#pE8w+c!uXTheRsyEyvW`WwRJ4Fa}?!58E4MzsOZgus?J=Evm*GF z0Sy~#v!Semt~D?>8)~u|H+j&j&JL*TR8_Q9c0iq{+RE(9L7w<{DDvE3W*#%*KL8C$ z;-ARz-!RRAw%{%<{tmQ_`cCASj0f6Y9~n>Nn4RZ)-VNkCNx75xzrgduJO|+4p&HYY zg>@1_F0L`Xw7ZQfnYK+SyuQ1=m1tjVVg21UuEx|}%bZSs!rZ?$rpN?Xu>}CEZ5SGg z`hE-GN?he`x&^)xSD8k)*is2vUT*hQcSF?Pj(&5$|qVXivN&IUy}uY|bihRM#elS`};ZGZPwLJV&o6 zlV@k=wj^Ic+7?r^x$&rt^e*D|2s!kq7lkP_1J-{{w4j*>luoFsp9f*9q0pGEF+(zVv9p4GGWXC^?MtJ9j##4{O zcRXH1Kg;|3{C~sqpAjDaG&q9c`KiBi<7xV7-VriC_F8VH@p#y7VVC?+>Jec=qCikA?_@rS*%fh@ zMoi-bx-n}mDNg> z$5hY-+>x3L$q6pZWSz%|-q{zlsMh31WPgVFUv$4JRx?h}TPkq#DyDk_X=N#f>-S^* zEF2P%NR&9MQR{^~lZcnKu(u^)MO{f06!jx(Pul2GH2_7LFl5ywtdA1zdjV--nSuqJ zCEL?nRLM5tV1>YB!wSJVBBaHZu;oEQ&Sy{@VGG;+g4yym8BdHFQ8;MHC2V2GhZK|@ zj};V;2ezO%U<=fa=2N*AUU1@K+M3wR2li1HH1S3&TH7f#^tuGvVNradfXbJ(<0j~3 zyL%ab%9_mNWQ7-0o`v? z$Y`i>qgkw|+-P)nX!I;`1F<06_! z7}2qPg6+@~?JfxmFzg}JtwC=xY?gQ)wgbroauSs-6Ol<4PW@-nP?VM6hn6IFlmhJ& zP+#NjB;2L+Lhx8}L|I@hmTt;zSDktPEDgSuGKu&;2msbvF8HJEWa9Us)IWwTan;Hk#_vk%jr( z#EJ~{OCmCCZcfPiTS#Q6O5&=q;hB(k2Z#g~AGZ1b@p~c6O(wms&>MoiAU5d} z6$HRH;1HXSBt05zEI|DSi6uA-pDSf9ODnr&qGzvPq}g`I*u;KaDq1ID-U^PuVVbt{ z$CX0o%KEm0<0`b%4hMT~>ltg@+mnp*;bYyuf|Gx#zLgF*fRvf$o3;DT8DxEHemVrb z_`&H0%u|xDU)Tj~j!jPij~B;+p(?M5z5urf$1!etsL{I$GE+yUI@hQQF6^8;OQ;+_ z(Av3PlXtL-IXd2Cg@lA))Nh+wnBMUm?sHtDsR7ScW3;rDl(4hbp9_O$!` z?f=tv^_5Ng(+!>d<X3Rhr+g)YjK1C6iQ~K+yvTW z5z#C(q0K9%=dl-#Vu5{TO?*@XBx4kTrRQc3lLKoDOOB@@*sCB1 zQV8+>$Pw=@GMe;M65@Tr5^ozAEnWd6{_yb?DEvW(4Hi)>v!Np@OO||yuMO=s*r9~z zEc%oSdM5VZigTtuk`yFGU~T)zGG|_>gat=g%Dc*_m_*?k$pExzE^!71@JL`7(lH8R zk2o6^Mr7&ARS1m;7LmqMC7B5aJvryz}8Gf^CSvYKILl z3l+LrAhs0=ON9_8Y=oxVss)X@)bX;kvVyD}L(89C%pEZuy8s4T)WLrL(*%qccuy0K zuzkEZh03PqUf|tGf@pSpOL#njy#;fS9gjnFJRU;yomfZN(KtkBXMcwGRMcp^V{ENI#qUQfNJpM%KS->yivM_cnby=JCtU*syKrjL?EW$Z4?!Xv6C$?dqCMvr3S4gJ%6Z7%0 zvCsiBSh;H6M*5;5M{CkAT$anMVU|WMZ9(5g=M(k`6bqZCeJE;O2uC^>H&6o;$VoK% zJRk-XkYJZNimG|n!FOn^hMsB2_QNk6z#rv(Pl!4J{98%Nylj2$C}g@Yi`kqf9#3+f z^wG_j1?=cy_)11Y&if~LG<&X$nCIuoszPva@ORPLdkn?_LpK}hOw?BJ7?>{eL zW@mkN*7w<+;|3Bx^=<6KEw^8Pw{I}`chSdJZnY3S$?OrmR;rh(^cU&LE+n$et3aFjvr%JCmn>2+-^Siyo=z@qn3J+N#xY$;WMKTUnISx_w&D z7MseG%Ug9?y&%~>o|`{p#Qrae$BgLS$EJ)JGJWz$ivAvTb%J*}yXH<#Btdh7TuMc_ z?{+F!PfwFL05!j0TIR{r@WahQ${v{w{$^6k_|JJUd@q<;-L1XP;U{@*^FsEQo@SecKI zb*hSWTP2;W7@WBYuRQqMmdLZz)7+|y9SbK*kteGAe$+LVU*=Ji*?)?`rKkgQ(}D5c z%>&IhD}VPgqlYCMcGd0#>#xr=_J1DTqtHJ5bG+z-y2y7t&5+Iz*(V*`JIo9I^SN>E zU7dO6z`ME(Ueh(55Oc^l+b{frF8r>pU9$hKt|@`%bX|E>N0Y5EJEaM!S#LW{mEEMR zF-sYZV%XZU#pG4M1ql}%kznts9$w{C!PeOMW-Z;D0Q$1CW4<};{Pl@PoNw>Mzq*|%DkyZl#s{eib`Uw+e>?^|70PUvAUxdNNbzSR-H|HgYL}zJv!2?wF^y_*N;mKtXd+M z%7T8z2X1!jT5Ls0zn+8A^Sk%Vw%2s+n9@7Obm`cwzulAHKQl8wwSUiG%Z!vBU1Q=p zr1VQ;Gl9Cb<2U5%_ zcDB)jLpbdJl4)W>#VcLw36ZHS?fQnab2Q^>lXIegsK_iXEr@M zbNtMz1e-prsRP=2fML|1KUrPI!0sk1`-bTvm*DOuD>rSp$%@a5ue!;~4}WDOJfq&` z1C!f<@VGB%7Jf-2Jok1+yV2914E2MapZ*`=$&h0_J~HU~$UpslS=PD9(C;<6KJrh$ zUzW?7O`dvN&Yuq75H7dC|6e{|!vE>b!fX2eWcxCw=+W?0SY)z&d7XBUax>k|Lz5MU ziiWMYotLox_XKm^NPT&QpV#w%pVu>Ce@?_NkB;^^sp(-P6?MwgV+Wg^`j9Eo1J#3N zq!`A?Gf%@Fg14go_M5yN8uz2=1c-US)`hl1W8+Bb7-&mo{*%+BZ* zGf&Gx$w2YX9gIMjhNV8Ah*>`~J)jxS+i;L(ylMKguHlhFCk(f=|KDiG%RDe3xj4Q2 z?;qN)-Kd@R7yJK3d!8w8rb_SmW~%f|m;6`{eS7(6nD6m_(W{4cy}?PX|3=5&;H;#U zJu(LmX8G9n_HQtU?=I`5W$OMeB;Aq^5Hwr8 zN^D#1|E84H&sM!kOYBymKll}&r^qCH{Re6H>P_?1xemksuI;OY(Z^6KK@0{<^ULY| ztA;(irt+w=xMlJ4gMqlY@k@F%{%eXV&uP12=G;sB8xz;`b6iZ&B*cYG(z-cZ^;}#( zs$o)YYWI|s-10SJRg=z=Ik_FXbx+NmUJE;&L%aBez(-YmiP4(xogX{a@}Cyo%JSch z(ROFAHy$dSI^eGOyV~Cye{a9iUeCrq+wQ6Or+a4fJ^$A3=EAq$YWw?uya9~^2M_%2 z{oK5q)!BL3Z^do7hmOc(VGpGvcH)5!&jNExlPsyRm^Kf#fsR zozwQ)gl{{J?=(GOdRt)h8z-xBlj-vkebpv&>Q@Xu<&@zoMwpoowCAQ>Suq0~1Eo8r zx9&TDm3d|XTH7D@Z_V?G!`=JT34mu%VBTh$vO|UrA2v7cd$VQCkU`h?8<#y~Y-#Cj zc4O1aCO3;4+(}J)Oft$U7BuZN-4ItCrP)XAaYr&!bpW$=_nSJ?7n?bq6ZJX`?|ULw z6tu+lv(+;%PUM~ClJnaKM;AoiS$g91E~@otFk6Z3ycy}Dzi1TD=F>bc+KfN3 zcJ$mClm2q$FIS_;CAQ6q8EzQ`sTAHKmQBCg+ zYkE6>is^3#Od&%iLi53aiO_tI&~%iW2pOIu`W&sj#!bIs{I?#~H-+BxO1R3b zr86iCV2x?KlKsc^s47Z6xy%-MhwR(%N=EN-Pk7mkF{$#BJ+0yq2wtDu!kc9BxMBwMs6k$j{9h`PHC4S%Y%>a(I}z zEZ8G6w_pE(IsGWsS!_iw@y^xF2{R4dpRdx*Hlu%*jqaG-wrhIgPi-fT>6F}|TWaD@ z-n3C8yY<|+mEC7*U$2B7-a|e_cU>>(Wq*AHgN1Y4* z&XZ3(`NRMXo+pRfL_3jMW4U2sdiRX&n9pxHG=1}g>G0CYPn>M#?b@~LyKAqzhOpT* z*&(R3Et`7o%za|UVOk_D@{^mzbdjZFCNll0ZrIe0t>?C8 zGTU#x{a4RJF=*%me&}!pHITsi#BF%pW^+ccU2QNY(GF@kqkH$pUZYx-6ZCfyT_W?` zijL%#kkmZVu>6TUj6Sfa%Hy_pKa6*>=GJ=t{HAgZ7y6LAuD7iS*AlJ>!~Qn1y}h2G zNe6PZt>(>ZN)BgjSw->FY)%iM&Jy8ihyTK8byQz>u7b6t0I+e)2FATnvt?4$6h;^}rRDgR(q= z)Utw|yKpz>BZoK_}XyLXY?qOxtU>Zwf?B1=V-_2 zT7QxOz7x|6#F|=6E1j4vlk7n1vY)OK+Vv+*m;5``>~Fo1=~@ zn=pOss&V%P3dfF}-(g(0Qx{HO5*#+Z?IpG269e~^%^Ed$L`hlE@EL>BlM0F_6wN+t z{*08grY9Ok4VpcwL+Q}|xpZllJNr(K>h-?9*Z|ib!tMh&hsf}rmwW!=-i1A92FI`N zl4rBJpBK$0h}bnS)Ll0?9r8PGU{JM8#!l(wd&K2OUP31w;NS!={J+Lw@}z$BVq= zIaq!}S;=N_*?LRFo$|Hi{__&9aAr#ZC+oc<3n5*|ckHcGFvSXMn#c(6i^4sc*EHc4 z5$WHyO=D8=yu7m7Kw|Oy!L1S!J9WyLH@d9Ci-{W-8?b}=4=ReY$*oQQ-%E3c&u(Fh z@D-k6JZh6F ziW1rmEtsO}257r>Acxm<4HHpS7;T!I7Q2}&sq&EQf-x0!tx7svuz1#@hU1f%+AgowVWz((%VkS-LW&$W)CVF(-F?$)WMaYkD@({L5amXWrEE^+hWeCyy-4n=^d$*xc_& zBkT&4yNsn#`kD-*?}k;%`sL!UI$O=Xb8^a0t}2+HJABBl$zSFSYqx0F)Y7q_3Fh_e znfa4XDjPg|SkZ0P6)vfcbUOb6*XSX*B zcj;hz^Gd^ryj_)F=Z!dIdHG3GcT6oEqq(5P)xNrNR^gFjn!YtHJ1ni9a&mdo=8BPI zQ8{WUM?MHjSMhQagVd>Lm@#CWs+wkGF~A#D4Z^?jgMll-VqT{P8wpebY$KJEP(+u< zNk5ypARkiV*n7pDCK8__l0Z6%q?&je@C@*g@RMP{eBdFGB(5bTtp*+yX-PkA84_vr zy+|@=h{;QUTSQtj1GFv$Y8Xs)A3&J4jCgJN(9!O8k@o2TOR^3#(apm7Xh-AnDf$Fwr~R08l1k@TLx zMh4tu06sI%<{r^P-~(U}ZyFL+(={*>my6sYvfBB7Imi^g*h9z7gq5nfvtt zz82|EnfjCGfO)_hA_JF+WWi?^VFn??LD&a=GHq(ZFzIJbWkcr^tx5K!2bZI0T@sM&QR;nvA?0V3ZlD z_B|q_Jb>_{GJwHAF)$5S1gr*55*hu1$QbHnOgXS#WGwz;UkBj5pqEJD9RPJ&G#r>C zQcOLU(ECfy5E;jUZ`{u!W(4q^$bvP%?;^FAiY%-WS=0icJuP~Ujxz`N zN~G=-mYcNeB`ZXhCIHuqESmtlB(l6hjL1=!h#b93F|BV2_k2HAad4jk$)inbKw2lTSWfZRb*qa z$iGPc{EI{`*duZgW#9CS$R*V2Wg>DpJY7K=SNucdO8Vhd+kovNS5u$YAQxVE%C+O! zDZ#^L(zxy;k?W5Xxd9$;_*CS^6Gd(sAaZjTkz49SZl&zEEfBe#db^{q$emW?t^$C( z?}n#)DAT&5oKK!A4l67Vwc z%C91?ZWVcraIaq=@&+<^lQ3_>*IU%-+qEL^3=(;_H$eFJUK4r$b&(I=6#4Krk&o^W z`S@OuPc9VMK1zgSWXD?~pAvWH43W=T0xyVs4u4;4*Q^;4zUu zju-j!a*=(vi|l_t#?2@to4w2L1VQ}QMNJ#M?0Qh1)w zLCnNK05X{bU6w7ToHQ#e@V1yr%}aXE~b|9)qW#p;YDH=O%t=2JnB$vyJVi2rKSABGV)n| zu9!o=7jxLXVpg0WX5|H9>X(aYAk9^IVh$(o!}p76d|k}yIx%bV#jK^w>u_5?hHJAP z@Copnm?Pg4bJV+Hj{ZQ*F~9Kp*)NGXj`Ez4CFVqUIjKEB*pq)3b81k`X}!gqo+9Q9 zWOrtB_*Bfd)aADWfb)U-#Oz80XxqEq6!RVJ>bvIwc>4Z&F+U6hNaKfjz;VFMzzbr2 zED-Y(>HJg(JRxRx9{?HeChy%JiP=N{*@K++kj5Tl_%m|)nfCuP{QpcEzXXA)z{6sG z?FifoydmZ{!u?hXoCZ7wAn(1%Y%gWoy8xh#?!5t^?0Y{J^E++ecli0EFL0%pKRW?) z0OYrCJa7W=s+j!(bOkO0e&h_P40xQgtl_{4;AgR-x~^2)#C^a|VofH1x-D}o-`scy zV$nux-{OivpD--O#2&y5{3bSrW9=BUum#a5AG|

}+5g@VnT!6rdmQGVqPqcuq^= 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 NB8O%KvLl#r{|B(>tC9c! literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-Medium.ttf b/igniter/Poppins/Poppins-Medium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..e90e87ed69a7ebb8d965ec248fb86286423f103f GIT binary patch literal 156480 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 `$tdmTk? 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 kss!6@8dGM(J)V7cyDVv1_1Ei4=Fauk>Kx7!yi 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 literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-Regular.ttf b/igniter/Poppins/Poppins-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..be06e7fdca57d8fc360647d7b7a6a0c7b2da7e26 GIT binary patch literal 158192 zcmce<2Yg%A`97|DuVmTTb}WxL-to32S+cfd$+C1M*^-y!y<DX}cuy6<_>;wmZ+dF6$8q zS$|j}Dc;i@RB7J&c>mudq!fN#GBmP%c&9GOk_z7sNhIWJFmJt8UfcNwh@W!gW33(Ed`W<|~X=3}H16!W`tQvmaB9W}SXxomFVUj*@ zlZ5!|D-ubfcl+>xozh#0O8EXq@cVhw!`sImm`{c0%WEVO*#$dy?A~Mk<-~U-xiGmTO_7>VSWsN7)260r zHF{l5NnuHGVWAGcE-oxcP!!hawHowmaz$FYHks;}3m#3`(dQU5H3e)|Z#qR3`AbS{ zE?Q@3Xxh`;HEp+S-0%+hCpx^D@DL>xU6a~AtEs_bs>n-Fy6UU+4tq`e*l?@4buB4f zOLT!KNG|DNkjnz!AhG^C(ekB-XG6a^73qjDc{IEk{da025(~duxSyOP|0JoDNKz6M zpet4DMp=u?VsEkOyu(w0 z{Y)Qu>38lUJ}Od`m$vkJ2dw$uBP3>zrOKiqJ#?e{08Kw2VW0dw^(oSgBu!qZhe=T= zwCJ;8a!ySUBoVo{oopagr9Ibu=RWOnLJ_yNg{V*a{gwJd4fF#`3)j#!3DSKap~xQ4 zOEE}?ECd;fU{HcmusLxmA>OO4b_8lhT<&RGOPQy#uDQ{#+*Di7bdY-w5nlxp$u--& z_F;o*OI^9Eq_xi4-QYHi(DVfRH0m^Xnvs1PKL;f`;YlZZe!c=d|CRBxwsx+~Ta{*_ zL-pIsbtCnQgrTlx#;`QQqkThC2Vr$MZTf(1NFP_Og{P$%AQxU&T8&PpP3C4tV^AP< zzzi6435Ce6i9#Jw%&#o8w9>I+NXPvl-+H6XS+gNGZ&TZ3z*%a%y@~mBf;hOc)6qH_ zv`%{*{TsvolxoSNe`&NZN3BYoCdri;YH@U|JTslSlt^VhNgzfo4O=<_`y5);^E3_1 zY2kwfr8E;{^Px2#B^wwKYeE`5NGXVkE%;QVEi0=rRH#%HMzeB*E@izn$2X!aEw2ul zmy*1OmHc}JrA3?Ug=Hm$D-!I9E1k|NOA@(4Uu88DXD>I7C#j<_4i_2+vNJg^eMH6J zzp!Q%h1?6|)Px^nWoz{?6KHXgH+w?s*%0ADRs4C z=CE$S<_)c**0{{!E2&4wqi3x-*lVn`sA@Ec^-1lmwVjC@Ho7`Chf-47Mmy-{KGH{= zH|?1)glcuoE6x)1Pu&c1cf`uQtopz4NQ#8XsM=s$$4*8`S#_J~B%^wiA63kx)K{{T zVlk5$Cm*9^J$W09F(1|?iX6K9WHy{=adgp9h1eUSZ%TB;jx~mA=2)xW)7*C2)&mEL zv&qMI2D&$_A?~!-&oH~%2ZIgU4qmX2xRj>%jE|BK9FU)ZCs40Ts+M_zlEi^44Z;+- z$E6-d%xj&sy7Dq#dr#foC7#>jRk*Upc5sj9;uAdGgXZvm2v89TPd!v^iinGY>M2Jp zZV(_c8(*c#63AozkL3SvMp9;}vzaT(%vQU)%5BqDRx~vCG<>r$DT`O?6AMa1{`H2u z!{1(5;OydGk^;#Zunf7RfOt=`eqjM;I)|zM!22k%gZC+~B#nJvdYD4Lk1{Lt{xQjV zY+n+>0TwI=15U=)nmjp2^v;q;X-H&P3zSe()So09;P1fwU>Ad&jU0>(B`i8^EvY5j z?wt&EU(k5^z2w|%Xl{;}x*Pt+w6{HZovWiLI02sppV+lqhd!|${&B!3W(u>S(~2Az za#sok;egLMPi?kTxAl&Uc5&*W%WK=(YHQ6S`}d7P=p~po<`~R#wnPEKAy015CV=b1 zUIZm`X$oShZ)}cgly=e!0+SK~Q&pBenQ2^6he8asLRV!ot0BMLRJ*CPq%bMLj-J%T zR7P+{<6YDq1U727D66GyUSFj(+c+{0?{@32XzM30OKc{OAnWNuoQ-8!Vx4_b>d z*KM%3hU^Xgmh@g{?Xcdk+3x5`XVRn@;jQk1d|K=5?sSny-%^{+<4(wcvkf_iK#Iu7XD`68-zH*T0 z4S4nA91fBRRE~m(o3Ox~ywqcJK}DlJH6?eZdFFymPCxS=@%@0JqPnKXsPikBots;G znhA$3+vT)0H(9YO{cUk2WpAF{{k{6&L2%AB*T(aW<_gT#14&up2a&=6{{ zJN;~wprjye#A7G3364&Sq=7k0&eu`Wx!{jmgRLEHB^Amd=26aNGoLqY?r+M;Ei;)a ziDa6cEAoB#G=-!TMvg*AR1&U(FeHbOLaoVrJPiz&e1A5SyUROzn%`LCID?#jllh^; ztI{=iJ846Y4rK@L7;J-G_Ldc7lFt>OX`j{VvTH1MRl6Qr$inC3J@C{r2?|2->PS&F ziybenW+ljqxTrwh^Y(oj+M=rJ+&4Y8^Bl5`2>R>X&9<_}$qA@yN66E2a?;Y^KN$K0 zMaqiOmTrIFWS7}vR+%-ffX{W1X5Pw4Q{?0*($JDZR!e>bGC}?r(F6ARI25zyhz1Yp z%_qN_4Q(8=TZWCQiU*0Ug`SRXXLVCW_*Yaa8vToEqq?V77s_xtLymgCx=lkkSZ!xf zet1T@#DvBzRH}SrLF!iIFV;7|9?}c3K;*8v*8U&txbnUxo7Qod8fT6(m)YHEsZD`1 zXS&X7%++L zj-K0ZHG940TkpanUbvsy2A^0g(Qu#1!##jm=tQ$D!Yn9wF1MVt)V8^{UsQJoJ*_Ft zjR{TlW~gxn@I?N&7e32MzM(RbI2Vx!G&+t!Q2`Gc>e!)l~QZHHe>G z)H9=MR##XCX!n4%ykT^E2T{#dzLE;^R(N6_ct+&V&;kXo$^#V0@d-E$v38%TU1w-l zwKxwnH=XA8ozs!djFXSOK1Td;xVNTFscts}_SM;U`+|F|duaM+c>StKSltkxPzt8V zAqDIMKAI~su``W4oH$fBZlw?T{fB7FxP$ox`PPqNS?bzV@Nj**iadHKv2LroamH@n z-Qb?8OFRu6=HqQjWm`>6P^k>oAU(qRg)|V>?;<2BqDpR|3d8$ssnt5eOpv=Tz6(&O zxXTnHP#;JV$?w4vRU$p|^)u|99aP3Z-zMGG0Ga$n{?0d2O zaIP0+>#{37e$I{XRw2{yYsd%D^O>d!oI`r*5g zwMigHpfUl&1T96P7+P5d09{yEB2~~9cBX}#MJ7|3bD^|-ox#)UsF9b=ni{LrFP#h- zLduKxXo>L=%VslvLT?CHp{RWVOI zR#>jz;_*-FrfK>?G|pC-jt^m+T2^b(F$=VYuwr?kfg5p5@JiN_AD$D+*%KH%GIZjB=x;(p2X%s|_Y? zzm?d@+l3m>q2N~p&(4k)drb+SBttZ%)L~kGu6c+HKGS_=IyT@(1wDH4sZ!%i(erAz(uyK>lDhnAvWg z+`f~1@(t$oM!&lme{xn?)p;}T)AakH{%$8ff-m6HN+s3EaWDH^qlo+ zJ$2SWoTO!?r9+bD@CSk!E&9>Pozk`87n#4%p1KC|=yA2lw8iP2G$hu^I(?pwaS!th zky%BH@jRr z9QNsY*GN|QZ$yTMNX{*5Ge1}z(l)A@zvW>Qeo|$&Z1;G!TP&(y(|@Y`OlhtP)_l@h zUiF!>Rzgbru!i(tTg9v{@S=>Q9ei;dSw;YaCsSOw0$ou0bAz`GbOyIV&!@RrZ}bahr`wE>GjoE;e5I@}WMAF#QM)$7-9Slc`}GulezFxQ(jYBOES>Vc{R zJ)}ZjTFA{YACGy*082YM{sJWA;&WVEMimcN z@~}0}FXmb|4A<9Bn9LJS*KlSyOnf^~R1`3%{FMVfY(UScO_r@5*M!-mK1PRsS?w<+ z%KhrnMopjxmXD-o;XjlQY`7e1u(tzI)YeQ^BVKx3`PV^gH(t+DoLcaBW$ByK?f)1SDN z{3Cd^Mv^SVw}|_Y=gSiGh9YDP#WnOOzU}u$9R&~K% za8_R()m43dWBVZXR|{WKP4LONIO{=66z9ya{2--_SXIP$6Xf|+)46So(rnh%wh)s& zL*sp+F6JU?^3CV-vI#kUQvVeWu(DP1q@Jz&hhOYz>ZNJOy0WnKeuo@|=RppOciz&G z!a#L=l?s~|+BFETLbk;giIKGKAJ*dhjT?t|tZG@|v(U}WwAr_^MQ$3jdnffKZLzZ3 zH_P;sXI}ac@kvQ}Zh4YykS?)w)Hy?@k}7|ddDL#-oVBjDqPA`?P5&626IlHqwE)r- zLY$AX{Nj>AQ352kaB=L}6p>m-ei0b7jN2QxucuPCHQKjWEL&>*?}h-4Nav z3b|Yzo%LjPN4*4gn8$V@`6ZtjV4j9O_rvm!`fiOIAxh_W!_n@ zF_+ZV7#yC!YLB65sM=$4cGPqmv>lqFf|nV(y}qo{rPV-=4@O8FOv)@WmZ%&aE%WjB zH>&%*x(0Rjnr>R(T2boPDP0?hst;XcrnRiP)(l(UI2)r70*m}Di>L~LJZ6g(7ebU{ zuI<$-ow{9b?oMxQO6V}xdIo%{#QrdB5F!DdOAneMg;E#aK&05+jTU#n^=%p<#tS!L zgrq>S39=-)Hw&C}mSa^r~d=&o+P+f}O-zvEt|Nap6+64&7 zLGKg4UHF3aYSi`c`$aedpL^lFxOihZ)>ixsR`;D7xb2D>x zw{TDn)y-tR6bLx#0)aZ>K8(%iD>ihS2d1Y7?0wYE8$J*6<#MdAh z;AD{H^HGmm0;tX;zCKfo)+nG@h=FRbbxxA4SnI4$kAh^lk`nnJ9k?NkBs|1}GUgtQ zr~XjO&a+v(W*d2w2V~UkI`5wPf$j)YBSG`dyp8dh0+fNlyq`|IwD5a8?<3?^kbuG{ zB*@L9h49oEltfETh7Xf-q;00rF=2^9Nj$Lqz-VWjsvd_JBEchM@e$a=##utt2%|v| zaKK!KihZsy=KJFSAzK=1Le*lxgghD#1nCT_2I^zL5*%$Lv*d$#)F{_hPB`)`&2L&#^|=6D>A z_&5lZ(Rc>C$!qagP_74K0T&BeX2Zr}9E7|!>?f|@yXxwz;)5V)j6d1l;f;YmunjGw zV&tO$jTPI_hms8JQ!+4OQGjcCWLqCdHgYzHFa_RcolZQz@O%9JKcalr>BMIX|H31A zh-`-6Ulp~g!1+M7%2ncI^L|{1lT*)eW%!~J9A#)E355aJG^|bvJe7bw2{m{YX?Y}4 zenSRG(_aXcH>eTn?h*1L$hQ!N%0fFQExC2%MUAtq=Ux-H+8#VW3^wkr{q~vh3hj{~ z*2-JtQdHg^p7e#{RJBr&wwJVF&8&wV zQjFE1wa2?KHddx^Re)T!NvLXV;X8{6zk)x@+b{CF{_(sx~bf1>cRzeoiO8zwieZYh!P9psYNg zF7+ee9#xbifh$T$k*IDLmU46*2~&)-d*YV(Wn>SkFn_Z|0g0q2Q zbOpH~%KKOu<5Y}bqQnoOEKFpoV(LZm$P47!wk&s?N|Cjgb8wwlfEZ#p=KXTvJPBI; zY{fJ;fE1&lVC54-?0$GE?^T?G!Sx}X|D=yVCCmQVI7Ose6 zZtJXf;hK#&7gcMhYQs~zR;bl#{iX>QuHV*$*m|uVDm4#OY+SVlN!#DKow-vh(-ir| zqB@PJUZzC*n0f3PzD6ToRN{7l5vx=*Xit2y6L()+C}{x-b>EROm1pXsamR) zZZ|kF5^#h$$q&g*@TrjFrXb6NN&?BSPW1YR`577c1*}X3=qqt7FAv1aPiG$C1q5H= zm)MBEkT)WKZ@_!!HN_=L5`7+@&!^*kszU!qW#u}f%32d1E?^SfCB^Ny?PKajxCCvU;uYhkx3m3$Ar zzZHL9y>NnDN4^i=--f@3JP+#Y7vcNc@%KJpxSPmh@ckXa_q8O%3i1c|dz1^EAYX;= z@5J9*7d|1a`1yBnzrR4%;LnGRCKy|@WEJ&1^&X5RTQUXj@RI?RV*E-ypMZA?kvG9Uh9}l9$Erv5FHp3V>FFsc85t>HFs@u%WrZ!*1?EGjdJoN& znl%Lz!5Y9yItIy%U43<9#^!*{=Ak_$CABV(-r#N8-P^s>Zp~b0HJiFdsY^28qcXt) zZvjiouF21@$*yiunGc_K!NnJ^pcBU@FK=ykn>UBbbv@fLLBGLP)8wJmruy2N(AZee z*0F|?CDzmpjDv-?N`6LMPcRS-V6Tj40xxKw78Q!Ipis)vK-U zukD_e^-C>!t(mxKdM)!iB9D2Gd}MdeoX2LT7bKffR<7PytE=*s_63zjRY^|K`ju-o zSTt3>ivCumL50##iFV=NWRUzRi+RBU1sqe63W&Ux%Yebo43MR92tD!I+2g&B!j9z zx|SzvlhainN|R4~ihgny{NyZ3jkuHROF(t<5<`h0-H&=i8I)|5?3c_+E<-aC@no2j$ayt(Y^;Y9 zdyD_8*W%9?KbPprSie34{dbUm@pt|O(ZIiArubLH6Z|Vi#lIq+;a@RZ_*X@3+G{G+eVi2iPxB* z2NwjtpBo9?S3#Xx8go zMcodbtrDFQ!%vXI6H0U^M|vsP$>iV=Ep_{B^WE(PL4CCZ=1V>CIbwBnFK35iu8T_iWpTorLY$#Qmd=VS}_;?zf2eaQ%DN zTo?9H-$GldxBZJ~sO{RNZdR4qx}5e-M2Q=2BC=`x?CUTtT!f-CIMp;hlSSrIh}R9+ z3&#;cz;}cex25x2o#)EtIxp|o5|0}n=B9ah_odj5cqL5?E zHMlQFYvD*kFxoT3@aAgU*M1iyNf~yFT>{IVTiA^;bl^(~I_K*I7P&zQtH^W3%)nv> z-BA0tkW5z%?m7vJu5rui>y8|`G4tY4F_UiLJqn?AsZietD=-oq0N|1F5E8X(u9^7< zLx?ajOHnKz_?p@3^VR{e+IkrF%g$drcXw@ zTbGW4Z|bU(a_@eZllGTe$=d2hgoH0*$}t5F=r5!$ra#Q|53i0n2{4d?oq zfA$mOzZeQ3!rq{=x=cg00%5N!^b6+80mPisu#CN@AQkP~Z5y8MZ*1=Ft*tkz*C{rv zZ5o&vZ6dOmoAk;`J ziB}`%BO_@iUsuJWyrtwl*7u#nQtO57C{($9K_dQJGQ_!! ztS!J|WtGAC1{sF-fdz*saBDOE-Ty{HgayaE&=fErCLCs`Wn`v)`SSUD5EITmh^TN_ z+s{zv!xIW|c7tpU`Mza#Hjp<$T)6Y+d@r;SY2i<`+R7Rq(bL>D!1Cd~e~kGWc0TIS zBj1MXc0zNf-dS$|Qe5ZwwyyUgq&OUV&cM4J;GsmUI2hll^5RMgvND>tC+`Z(Bs;1+ z!JyCFu&RM$#+hqMR58rB6|x4y?mbyWLtby6skpMC(zey{cTbe1YNH;p{{hRPUqxK7H9V0Eq6;B;XJ`dG+o!gY!k!;s}v3v zbik2MOu^WoNDYhfmp=$HBb~j5_xVcMb9kJ@EcxTVfC3SVF&+d+JKG2w~P5Bjw>%% zj~s6-jK;AZiK@!S`>sh!j>~+sju$+21rbYr#N%c$G&qC2c-(Q>j{=B*L^(MHauKMu z3=c9MpoVjrcLgpaIwh)z&xRz>oMT4h#}U}f#2h5fXWl^j@67WXMW9*uBjWOQ<|z(2 zBcB0%D+R8-7U*Lq$ITF2vVOfn&axyg`1=xw8Tp5Q-}jS$9%UO|ElHFN-%Y5x-o&H5 zk3@ZQ5N`wUDm2>V`I2Dka`NV|lelj0nwyTs2g>Y(^JAogpA0v7V=%Jt*+j7WYnDm! z6vv*tfwRXC7M{a)`YVn-c_a7!pBA3s?3ZOv-o(BC#KI-`{i7Uv^84KT|6ce$9@%@C zsfXB;u%8MMi(k2gx(N1yX7TDrF^7`43BxX(#5e<|r0FQkg~=v%4Kjbn^9TPlVvPZt zlG7Iv-EE3&3|~h)d2u>(Gk`Cty|%!XVBH=+(#R_lA?6Mab@5K4qxgWh{0K8EF`p4v zH0;Vh3DyF9#*5UI%pb;oo49UCj-`(%++6T!!ac+(@hop+^~dup0S`euOT?oWJOaN8 zmxn?S*Ro{OyZv`%Zd#UanbDE^$6KY#Q!a5v^`MAz$yw?0tV`^Xmt$UL6VuG!@j8u9 zzhu59PVZ)*8zK1rFE9%;gY#Jcbcj8)h>2NN^7r0XSS6A>;KPSJDN}$qmf~eDMm11Q`aH+YOow%jabljE$%h&?$zFz^Sy}e0 z&g(K(os^?#8p(g^2)P7J6Z{OI8Ujy~J;fVI-{avKLIW~5d5Bi)Sl}D7L|n)mBac4r zieMMa2^PCxwh@P$ncrYbdXhw^t0B(9idu|aKvE-SbIw$iGaqbubxk}*r+T>HBiU_> zNu8{pAHl)XLij z8w`y_MU4hkpbD*_`+!ZU>Cb=hYLX>aGSBx^2TIxFdVpgAW&DvY%b5l%s5HXM_E)(IFz#R!j4^i>x|;S(r#`vUVT+0%K5UnwWJ%nGer z2^uScCNRe`H=7Cf9!pHYL`&xUrX~v_TOz7ueqAOr{}O@emS+zjz9oxHkmupqEXMPR za?<7amK4Np%(+ZsHpXBQ9rmjb-;Lt>B;lzj3&z8glSUP6-b?)HY#{vrzWj$-- z00Nkgc`bi(u3g|_VmyF)5p-Av`9Iozh(2fazk&dvC5nIQ&x~xD;vZEn->B$E@lb6Z1qn^7&=KW#h;qf!@bA-pE5r09UT{IMpBYO~0 z@%Yqg`OVYqevi0>r#@jS;+62HPjH7PmaN$_WGo~!v2Q9GZbBcKaeICuSEOqH-R84jt9n+UezIr~fEi1cQ4_&Il zy^5fn`Mz+jkt!8l#wP}`9jiPY!>-uwRXZw5N-Cg_)iI@kIT&eV6?p|Jg4w$%N>7Ln z_y4P|#E?#&XifYVI&8_v?lmp1!}$}K;+vO2t>IpLW34JHDwNA<^%@{za|~kkt3(D` z4ksXCp>J+`~Z1_dzBAnOw~7sKWY1{l?9 zEa7&()!44)-RH-#zl0~|Cx(-?Mn(&^NBkfFXIh0WWGy{SVU1vdQl~Y$-f3xRf{sxv z3TkgYYsWww>wBclo9Ol&d{e1svY=5}zm;oLHaUbEm2Hj~VSc1%8TbD2dznq$_V?8uwpGt&AzL_O}$ zrD>{|e?}NG8t6;aMrF6%+>_B;&paF5BJR&sx_US~(FCo#9*hhM@9MzvYJ;(qL9e(5 zb}T$|0f>0Z%r-k3L_ZWFMzpg@Xv1x_tQ}SHCUg6n^S8h}T6?RZ>6VpPcj9kRV5|&3z7TXJIy0hB6Xed7~{@(E_-9ENM)UQQTg?TN~AsCARMv)AnEoQPJ zKY`W~-}xJzx8Pw)$WNf*^tOyackPJLG*(won40bBETb!ojfJh}4s9RqQRMHvR9$fw z@vrdn($hf1KS0OVDVJ}XNnS7OX;L?o!v7Z}#Pyx+Z9VmertLjho<~rBX;eYqB>N#q zrp9ZcgV%CYFDs#)X8w&ZdA?~Qf0RVUt*xY!}zu4Q!H>1Wo{?jiaGp2*xY&S51AZXJfEyzy~C-kK^ zG|u0<-fuLwrQ}Vx$gR&!_Te@?U%w+L1@H2zE#EriW{)!;Tqj?#zO8kULVjOXAZu)P zzgDh+KBwi^1_w7wle@;Dv(NJ)14UId_<2;ZRKj^8A7=$3^iRj`u*6TqA{KxwJ3ZP6 zWG_aOwc6}nU+m2P`SoyV8noW&$;cb61uED4uBdSm5k?m^FuJ%Y=$k5&)mTwws$jkn z4GMb@c_EC+483pJjFXS>D0<=G1(EsG=39nWE$3O-2}k4Pwrue!7BH8o(egw_@vXdxT)PE9xJrFOCV6vb9(fs7e13A9-|IU|DY3t+&Lss zTN_9Ts+Y+LQ1C1kBIhErr@o%*K<)ATt!W`Ww8x7VJ1@EX%ExACZ}#edMT2=H7fj7k3{@DGZjni+PDuUz9%Ew;~(=4+~$&%i>7V{9jgs7YL^=ix+erFM}P z=-nGHdqb()je8-U5X~#XH=&|OdMJ>5j`2-=HkqsRe=X9_lw{xk_c{{gWa2_!`u8Pt z*STfYYH#&o-Tif5t7JY!x_h0|-Aj=L@C28#g=ryoTS}Xw-70+?ZDwB{Pn#;flAqvT zfak_JEIMCa4BosJ&M>!2hFPB{fJRG4F`UOmFeHNWcJdg%ht4{nR+VBHQ}!6&wlbb` ze>-e$&B&XyqkfheP!qWl^|SP8!goZ})WUbS4Bsf|DZH8Ma=92kdO%g7u7TEwPG^~tPN)bv8 zaO~G5@a-#CN&|7?fM@=lfmD@eF#Kzzh|3;&Xnwt*1S(5t6arq8?XFpv<7`@F6OYif zxyRqA((gVF<&Dq;{w=Pb2#cFVj}&!P{;uNA<&ADMMF zBK{Sx2o2z^O;M|1**Jo`LGa}>yK4uQzZkvwD{ds(w$Dx^I8DBWn1nt-7T(m6;&3u0 zX&nyI``pveQXRUC&bJG*&Xq6q`va=FMG5^QZex<)*Y=juxO)g1ks3OyT7?vyD?(`jo8-g4+L*lH#${WM5@eHYvA4XB z(Rgd;Uj_58Y0KOg(xI-T^Y@62kMl!a^`M%Dz*C7_=B zG3OKAaIzY&gm3N-m#=YTKW1y3adSKm_)?f|&CJ~WMKzw5+gYi8co`u1IE9^d>qpbqMb=boDC zhh@POkV)-s*m8#5=Y~!5mquykw`#LNV{k5^9c6`53pbDXo4Sx=-15t$#I_+=D@7S= zYP`6mtlD3GlgKc@Gc5ckp&Y8cnn=CJx^Tq%L+fK%AQY_%^lP|CWa~Y)B4BHV==eZg z=CB*;TDL+s+Bh1a{+3-hxa;C+vTn9L{L7KG4ei@prVIsRfi)u9ZNV*T8?0>0+L<^O zlC)!Vau?UR_K_}spwZ?{h%NWv7ANRsDyxO=I2MS3jrcaT=*W;SKc$X2fW+zYv9)k` zF$#;Ko?Eiox!}X7>sAT#yX6|563;@rhwzCVd`BJXrw>2Oe9bqSz8)gsZrn7>U3IcX zs2|cF2)%Z;e8{(khWn{t#PSs|;yOS-LXypr?P4EL5{Zfb?Z|PH3|)Rc`Xr&lv?wQ# zufQ?lv`fgFkwVIt-!83?l1;=5%=^;kzPedZ2>EnVi1`jV_xyN2#=gQ;y}CM!s#=di z$8*(|BWL)b5qGm!xvYXz?(DzPkxsF*^-bMl{X;Ugx%C=Tb+rkd{Xx2thCx?W*yG?Z zP~KOd3`8?P+>03F5a~u5o(pAfYYZNAFbm76;>D((C&`CT{76v6f#=4CrUr~X zxJ@@W1joK+>B&azZ0;6~d%SySEFqy2;eOm`ABE96AXn}~u~TrB2o^il@$!He;#Fdh z0HuSm@k09OY}4`(tx%oIOv@&(-DEYdprS+x;bXQwNc z9Xs>}Ham@~*F>XdwuvJLTWNop0H?!nUj`4<3v8aqSCyi^V#~pv1e$R^Rltq;6&(gz#_ zg*snINzq$LGR7Ba&lXQB z@}Isw7S@XN!d%dw&g8)PCUSnYpqtnormT(P?r!n)ME}goE6PXjiL0s4<>(%rCP^>s z5A5NQK`!ozn*gCR-z5=^okH|Hb$!WB#Jh3D)W4o7uo(5Vt&=^&<8f?Be#XUjg|~$| z!oTCJ>CfX0Gt3&)4{tuQjkWl;mQv*v_5f{JwGOpUkE^x^n!1}=`)afwj8z-TD!!DX zn;)F857{G`;MNmYAMyZuL{~fpvFxrw^zwo~2CD*}6H|oBUl8ppB{Q~@nAL|TUWynM zwKse-=%%1(kMHWQ_X<{p;X8hx$xwANlZst>rKRHCCrHCVJ73_{XN78|4eW~J8VJXK zMOO69HB$r`8xFxmynds7ko*Sz@N&zRRK{=;{rvRAR}uXXFB1>sWs^Hufb;7cqBX=q zf&tH|>qnlH@;%J5nDE+xX5Kbd7`@kqS!H90u8#}B%}}UO~TM@P~q37 zq~`2y9yxoRu~*#1J>j$yrEG)u*6nNc*6>eI%XjiEe;T@_&!C4}`lg3ldYYMspv$`h zy1kRn*>YUkK)zh)QHT=7L8C(awI(ma~#gT^ly$ z%=7==5XRjpGmv88{3{2Nq znwU5EQL!B~t#~XY&?EESg;yjbkqFTb`S!33j(mYVpzJt$Hwi5}R9(kf!xCczMv!=r zVxF$-PjhWgW@b-?to<2TT}JVw%NE|4Zxnj_?-_QDre}q8aPQK!+=z+GY1&})(2>iR z+DEj?;?l@8)7&(2lWnRgC}dvY2fs?#N@96oGK8Gv0a}XYR2VPoQ{s*`%Jwl{%1tmN zh2TCSvnr~NWPhCtJ=ou2ZBNZ=)rd!%AUkmsnfRVz|3qqaa3JhQL#KZA;Dh0-`0?J( z7m8@A5oD@W=Hx|2D;PCxuQ<+)oa{Qz@B@B?#Z2+egdL9-%{lZ%g*jg-%sIOIE*tjK z>Jhgn+5^N+ca#EfQXEkLyh7kPh7co~kli|qZX!Br%^Zrlra|`Di9fOnykR2MrDGR3 zb=L8=&E#0Wv9Bh4Tx8|HtG4V{imq-D#_h7oTSINa$cM(ZNV|ri_PLYS0B`STj1hZZ zEsP!A7?T4CNkeos75A}^NKHf+zd9n99F25WM*JTDMd*qn zAP>r@3Qpk3Fk-a9-Jx08% zSnLoY<1eYr**Y!?KbyY{SgtJ-Ra#$VFcDAPcEpIW*pCWq=EVu1x z&G=%r>q4J zg;{g#iQ0J2MWHDTlYSy-?h(Nv0PscY5vHM`cotN1tLAROyg~d_f7}Z( zW1h=jkBLqfekNrRmiXKnu1{P%L7>47^b3!3yJV?I9%1s-Kag4M{@vo|c6JMal zJurgq7}g@*+xTBbQeq=f`!g22jJho_VGjmygZpxG4g}frt|uF1SAG9DiSB85ko-Z+ z-GVN=J0P5hJ=wU8#{DBCDHUDqz}`m4>cI|r=)ii2AeXoV{9p87s3lRv27Es@XeZbq zP!H7yc4V6G9X|tIvvM*ubh|?nYY6K^UHwodGfb!&i#GXa^{Wnqf1^OWzV|_@`sTy>SfkiRn^iPYo%AykS&qY)&_D<6w(OQ$OUhaC+7z-9% zcFJ-K5ihvCJ7zF+u(Mw_wjWZ*cieit8(-myM^V1z$m^2HAdb=ccNm?_c5%O z8r1EJ-L@09eh^yArepD>#r`k)hE(atq8n1x$?KW7MdFe-Z75jowp4kHtV!IpsT_fW zKcr;7B-~<^>QLZ?8eTJ_OH3Olp4;`?Hy{{nj|h7;_l zBVN?bBpPwtBmvfic;`|2FVPLMn?(bVty}ss*%%=sSIcsq^}P{YlZ$fbfXrL(LjlfDbGn~Y*f_uXHiXJK;UyUR`xC*q8+2@y6+F| z#`i%=zj|~2M-Fefy20COZwRH!*6wU3yv#?UD94klEj6bNc160P^S4NPJJaZ9=1Bnp z!`w0HhafxZT5pI*A1P|1M3-Ry6jM?e3<&v>Mficz53zHq?M^jcHM|FlE+fL3V?YV~ zp~I`UBJt_2R5_U&@7`-;^_WO>=0@jnUV0myMsy1IVY89>QII_g^ZG?KA%|FrbdGQd zk=sa%l!T}h7YGf~N3j!Yn#s>U)Xa6IlD;+n*0hX5t|R;je^DoSbM#%>R-?%&>Qohe ze%PO$fqe)sJn>nye}fw3e2~2aV)Y`)vCe^AAU;rus%RL6pk;&f{MpdPF+06AEqj=@ zZ8pNyo#a>e0A)2CpwvmfAHKe-Xx`J&;c&MnqxJTp+E`~c$KK`%ZQ+@3*DFGfdVjZv z^#xh7bdXHN_BIsRF*4-EqJiZuJ}B3`-Z$egKg9r zxpCCgu`a1Wr*(uMk!hIY%w=&d2o1ow*TbtOJK^%r=7y4TRj*y>a9^u3xRR*E2KOXQ z$GbGNv2BF}tySg{JUR>Bd*XdJ?jZ6@8S~1b);0K?l9`xGm`0=Z>$z3DVc1v*?pzsUzU8K2x!-ippZOqJ1cSo(gEeRJNCmxff z$FDdlwI)?JKf}&OqRC8HyOg)lqN0QKzA`DuTM6eVEWE_L{}SdjYBeE$i(75SWK}XL zc3kF8MRuRfHjI`Ou@#n7tKHGOI%%?LaQ+vv+_?Ewb!C-CY>f?8PcvMAC^#!F!}=}A z8Jp1vHGPzbg0sRch(#Xix7b6q?aSS`t6}6YFJZeguo-!%c}DuLm~5*a?tPye64uGi zy$Xe|6Q!m=wq@&V>`C!%P!{0-9A{k2rW8jn6!fE)v}hAB#;-#276Z2(Alot9zH!nU z*qLAW@a&cM;maaq7tJ3yuQ6AXUG7MBr)+7^wq`W?!+L(*Q;E;*7$wM6Q~mm09dcmD z(aFETshLUP>WJ`}mTAATF5e6{EoroHFK`uA=kxH(pR@!AheIoQFr5 z56DngjMt6Zq3?el>&CPDqOQmIuSVQBk`jAm#y1%^i=q^R<+VLpH28iZDRsqqCvx9sYwC%L-pk)_-{gs%NLHw!ubHhy(pjzO-??*;jOUz#E@nB$-hg~lN3Tpa zwigi?Se5ibbBqS1if*#E8#Yf-)zBj_Q7OgIpiKe9=~5 z+lXT!x%t3kkHYW*J$N(=_scGW(I9Rz8(){{nz_U}#KDV#Ee4)`AiHd??H7xCX%cq` zrb2AUY*Ox@cgpU3eMjXx#%&uH%tJ=Hx4p3sFqeJ1Q=Wmn+-+XS%K+@)3!1a&~!EW$n zXBCt#x*gP2SuAh#BNG}JOB|ZQ7KGMeh4gul8Ldi`kflMT7}Yl;j`?sY0;2IzHPM8| zykA7r8u0H+pLa?>czrCEpBONT^=Q~b(?7#LVc~NrT7|WoELw=4T)Lvgf}#8gmyF9z zJ`#(ZkH;HqoFuM_h$qhoC}-yTq-S1y*J381E3i62EaQfZgEV^&4OAyzgN&%hBF3kp zJ4D3M7G}zSJ=b<6rm^JhyEOQ3K?w5p6OYT_RycvFa{BHw%mdNh3FZj)kkAf2U}AC4 zXD=0#_(ZOdQbzA0DMZf5x@pAZo!=yVEZ#nnrD6yPb35zVb8@F?`a#a`$dLC&r|CF7 z2$^t{^ND!N*bEpvc<9LuIofUm++0%nvxrKV6H~HjCK*v#ydIXya!&@J(?Ntzdo|)& zxr+|}CI*j&zO*nmTJVTV`NN1v5$_iVk^Y!Rq*Lw`WFyM*du!kz{xh;$TF3aigBB z0*(M}M^Ud3N4*fv8WJJ>{-KP1^SSW>j2k0^2mU@6>bM{m6W%Z@=SeJ00Z|8*FXu7| zcCY6Tc%EZ-9hUG5?0yy$VBlx@#+R^((tl@jho%L!3<^8_scp# z#_Gt9k2uF!Cb01Zn1FF;5#2YcdX#nY)uV6Qx+9B&+f-mbGbWpPGu+C?GonPcw`&PJ zEKs*N&NaFZfVV4Bm6wKwqcJfU)dY-62|n7%?_}{dTXOP2aVQxdoAYDfG1&yJGMh#c zu3TzRv*GkH-yq}W2BsnN;vr=n-uQ!Jj=GNHaS^>j0m{x*5sa!5PJ%@5&YgTjV$7W% zRuph1E5dQS`%v}|ml~5J+?;^%_Z!$zQEQ_iv;e)tXa@6(F_Oj&DN?tx`E>$}i9;&5 znsu2Q@_^wR1L;5~6G%#A2^dTZ?N7XJ&E9_dph4ce%4-(gn&%obNUvS%Vex=&CqQf` z9+c&yB@VFKKwD^B)vT_t4AAZYbcdd4q_(-#=|rF!G$!M2UX)}(s*d7YCwOgP&j1G! z7H$&VFjtTO*RtZxMUWTMTR_NDLD!C8bnVLf61FGp-yCNgLwi?UU2Fi5ZL{pclY?wC zlN%I0Gf_j^-cfWin2ntmv}elQLME)8Wo9N_D=IZn2#}qJ%d?h|6-y6gE9=bGp3uu~ z!ubViuGZDCNaXW`q7D4&!hdALu39jSJCYzM-Z~YINs>vcKjb_IMGe%~BeE)Cf5udr8_CU}xd5|D#efB`eGkHiiSnKRe z%jl~e-a1ax_uzdyBZ)HY5+T<{n=+`?I8L3ot&o_frxbHe1%8!SF*FeB>TkAL%#O?V z?Yqoww$xs*%gFSTAAEN1PX|N6!NFi?kob(Q0}<%@&6ye9b(^>=J}F=9qmocjmR?ZnmoKCC%>dR zcNoq@D63j)8g|+3yM6cq%<$2jeMHLvr_W>|DPJenViI{b$XqJUhOrh!7!A)n6(%u7 z&?002MAGnJNB2NWQK27-BvZG>RBf%hV3(EYC7*faeA?L*1Q6Mg$Ifbq)^%hv<||5- z)!jyGPg>@XeP|n+QRWt(-3G{T!POW)Gm;O0R5_4)>IEORcw%8|6P#6oXi`ZLC`=sQ zyw9xDnJ?YF`x0}F&a`Kk`5F1jPx@M0dwW}3``~~06?t?bX|m7Wo0-v7i{`hsDkAQU)eqwsodw^g4Pclg4QJGq1P4zM;|i_&VBY_m;sX0eBkbK@w$1F1S$) z14L{E%RYEoA3;@Ng&!xyFOc7pVly$R?Y-uzh%A;vDyhD@THyhL+8sAOi*y{sE z<^fH7OkpAbx7bQwWL|F%e}2bH;MM%dtNm!=z_!#C1!bCoB4tHsOSivovP*oaEoBx4{($T71WZO$>e7)Gf@84vq9^P8&No%aGX;axWI(rKd z3fOGT4ISH&!pF(W?zrpp5>0cb*HCWCCM69y8|4I97qAvFJr@;hs%WY)wxX7*5uT^yGEP( zYn0_$%1njmrgqbmhZs0b{H8n5dFD*$oQ5X1yUBIH?_e6q*N@MT(*DliphaC$U0Sdr zF^e?Wo9n6@%LclF1MHit05vr^n(O>MhN*_8$;^%0{EZX35t_b^kBe(zT=vL`56+&_ zu(yr`#(2X)o)uhcbezOi1>g{L;9kpl&5gCR&%``1HD?%e`UZ`a#X8DPcDVw5mTe6k z7dEk%63fbwAN|3X&vZ35VY|9}^zaTv61k~dTd-rwHl%N`RGF(wRwkybay0b%%-w3& z;UK=IIDE@Q2hlZikV~>;D}9KMnisPIG4nUG_e0+$giL+AiadHKv2LroaYl%h5z$z| zGWa+NF%xG>pG)_Fj2g7}%g*8(vHu@iu~=1?_y|HhabiDcM(}1cz{zQ z%0CmOC@VJtMiQCTldh>H<#a8#ls2%EzW>Nz_&6)+=gTgjh{Si_%}LDe2BS{XnaiCf zKyxk}A^?z>t)pb$0n7%;@B=J}?EVvfXJ@&X{Q@zA?Wv5cE%I>o(L@O+0^7S+Ru3{{ zpPVNdBS{n$Nmei7N$z508knzVh50ZZs50CV>_5I(G66{8GEEsLTNHvQY}$(^PoyIe z(MTr4cnQare3}(3Z~kmnusfoW5uPt8EK*)w5h#R}O8R?{ieIh5&J63OF*+DeE|l7ji7Vm$7uxujg-PrAt|c#up>vG4UBR?BOJ`vq47Og_StPooF_ya(xA0 z4YRlit}&wbp{bjf-iKbdn{Uhe-E(fvZc)KL^!ydF@15d4bahpCXZt|?nFkJ^mXp7D z6PoKajnEw<-en&GZyC}5;vQ@~jVs=u*aj=$+F_i~ZwOOA*zz<|nxGIXpXQh#(Ouc% z4pe^Of7haI(YR0AtPSOx0?X8V@K zw|tH}Jrf4GQ`!#Kks{&&f7|Dxp~G#t!7A>y+=LYrH|KEGG|agNFuk#;Ip_R4_$C%l zLX?W74H?fl;?c0v9t+{KN9NHA#S^b*7id%;Ht~pW&2C0Ki}@?$t^Z3?Hf*qSk3+{H5AH;VPVFSeZ8OBjz%;%qHwHYRFh}W_fkW0X@}foE$G}gq zRhslTG#P&51&!1mAU-q!}x2;GY9acAjQAF z94-avY3P}aG&?}M1-tP0)G&+Osd#M3CFl}G?iyPhGmu68uVYLveWK^0HUG;n)dkPW zE;@VWn~xM@)#R73inG{RT$4PuOffnrP|7SNizKZSbGonHp;tk+;_T@ z?JPTvSG?lACEJoES&}8$vLsuUJY{)rJ8^7h53-@)5cVu1Wpyx03oVpFpp@Ac%4ka| zFObl|3zSg`r4$0Rv32= z8+ZY4Lj9cd1@V<*zA_;^VS!-iEUhZAF#^#O&(A}563jatzMNjatz!^{;xTWUm1CHLl&H?MeZPuZ5hl_Q$qArM$F_v5aAl8?e0ZdCn=9q$Y6N1Zc zW`orcGb4BiYtNHXB$4d3Uub784qsDLl}RXtH`a&r$6$UicR+p~yk$JWBouXmwI}3? zrAZs9zK|@bzvHL}w$LBEj@>`FX{0wT@4PE-IRE3mt%j=VTE@*}`u;}m%gTdI^v8DV z@g{mW1n3)wee>5Hb~>9n8g^}+ovwA4*IG1j85s%Ya!0JPLp?S=vO_&mM@{oIC3^*U zPf$|-L|QCZ>4R1a>XE(ssOP!$S*l*00XhWs`n?o-b|Hm%Ca^R1etv+hSKp)-mGk`$ z-)qp(5A$jo8}S3>yMfDwk6 zB6_C3Z+@fv>SfK}IaTfLZQTv~ckkW_b9f-9p_6wga*ARS0TXg(6qylhON)YON;*LB zq&MKeB;rl(lUvz7KQV{60;b|kvf2p0Syf3&5&cATC1(+~`|r!j&X2Iu zd~})#lmzx5oTmSqqp`l3z9Z72@`JNd?%+M|e2n!lz?=v5Ey&Rzt1r|xBfa&Y7IWrd zer4!}?SAQ`_W0H?zYl3;x!OIsWvty?+JT?Su06Yd<8b^&-1&)TcjPFVDuK6d4u0#T zr7RLu6d9GuL7iOU^ow*_@jT`n3&w%!XcYgdr>VR*x{I-R=`Hh_~ZRR(2 zDq*uXZ0y8cIMAJkrX&&cWo<34&W1hPckVdl;NEL!w|j<18Pa$jXCNCn$xELDObSrd zQ1qpsr!ZKe{Z15VBNVOW9D+CS?ngSB^3yK=FJegk|S&u&*SHRQ2-5E9YG}0lKBZH;PlZ%?q9RiZYsIYNbYBMo}XQ3 z^_4L%O55}wt}<*I2^A@&{A^ z9HJupwgDcY^M)a2NfPdd_#rmY4-t><+P}Sl@ ziC|r%i<84iCwW&wmun6KtJAp(gI;TH-#jonmEENE`|)ivY2{tL3;$r*lP|&Q7CE*{ z?HAX%(Qd|pnSEm$({u$qsE5zjDf?Psv}wA!0~}T4pMN9&3qXkalh7R>tcj%cP2D*| zi~|uw?tm^V`Co)CEa+gQIPc=P$p3xPXUop~YW+lAgib7IZ%l|;29lL(NlzBR_XmKl z0rD$QiIM1tbH$SdjTfN(pe&3%Zut*zSKq-a7_MgtET3GsH#_t5zJBf&`ofn+dsfra zLSOQ)Dh(I!UL3s#fQ1gvj`RCRqvJdy_+=CP`T;+*HInBi(KxX1@mw*4{xgzFK$r%n z_vHP;qv1xDz;dtehkHBFKKJLdGvA>K!=?RXi=)b&@j??klG!f;Gl8h)#45ncH~Vih ziqgx+&}hm#z{N*s;o>sk7;e>-4+uKhy`aY#UAuhIbp zjj(~4esonU;A-YF5h1-OXq|MBQTqzp5bypC*+;sL-V_FrP2&^0srcT3U(t`8e0g#V z)<%on@lDpo_UkSPMWAo`{Mn-BZsc>14)cZ>uA3ta9svxX5ikz0f(>gE1Hrx0y}W@VE?i)Ne%F&%(u# zXHE1i@S>`Ox)5&p$KE7ZX#p$ZKxj~l9bPv90)_jbHuSsda_UN)tw~La)^=AL)mT)f zD6lpk-Py(|=|`@)jrzN-UT;sYDfaz|dN8X{w%0Y><49bQQK;3Io*zHy7~c$S+KqpbK`p{OuYvaw(+Nk2HR0b#&1zxr5f3?5)mAkH2uBZ%>m-+cZ8})?1K2 zQPborm;LhFH@sb)W2~vQI4m*IW~W`P4Kzk~;B)V^Eu*=*QEnD4OXCKH&&B{V8 z`P_*~TT}H0LwS|nS_{j;TWvtyKc9V(HUTEk^Ok_2K&cfT9F1B?zv5OI!eSNVSP75c zY^yVRyY;mWlcU|1)b$8Nfojw!DyRGZZ0>KeD5`}F353a?Ao z7$b|dR=XOgVTa=;Fhn9Pq338hluSt~42CnL{2YmlVnE#UPNZdX>D(`sl2^nYmiP^1 z%aG%S&cF!`#{pLp*TUW`CONn#4|gBLevto292)sO(cRYAon=yRzj`LGRJ*AWgYO>$ z=H7qd1?&@*(1!q%LXZZiR}*>QU%g;Vg<`*7m=omDFsBMGJgwCgVb*Z{9s1n5k|t-e zN2~9J+ryQ{qdVKVR{EyvZtHewR5^cHF=b5nAg$Gelt7IGDS;P`mseHw)ablP$vuYA zN%Z!)zm+hu)a%nSpX2V&PXA7}(gf)kMDI^9ltuXNTQHQUB7(_E{u&0%DCDgmNJTK? zvu^J>(zQ7poZLsPrXmEZ6w;j3+YivQo(Qmh<;1|E$pny$y(|2ht_1cH12Nyb&hU${?O8Sn49hAm6ys_8W-m%f+_O=6UA5m77SKMn;DT=Gi zI?!kThLG(fK$MEKJ@E|*47hh%Q0xelXaFww{b}fvM?3TE1JjcRosX4|Gn|O z78#{;ISrQjT6?E$@&J;``{%qai$yMz>uaor0f*y!mMy6$FRxcrskGa6VZB;O@5K@b zlP>2Vf4ss1A^Z>6om@+avn9DzrR%DwDpnbe?rP&a^tIRC+S#nCu4}3(tDH+~B(O&f6st;FlI_e`%~_V&Rh-;e3fxCH6s6MpO-MUBc-FYZZm4hAmA z)9YGYly@x9^O7Ol{Cr)tlgPJ;VKI_7ki7m>KvdV}k*3{T^a#ttbp1?27A~MW83z!8~ z+xSHtQuB_Q3B!wT?R{~CTm{(GtJ5YI{?(+yZ zMc!k`Tp7H_Fa)J@TU;27SmZ^8VB{NiIn4hZR+l4Y2T-5}fxqBYApef+ zMiO!bF!K2HQM4M#G>Wbzf0VvKTo*}q(wy5#W8!hwU zv$wt-)+Js0Ad@s^N=X+nF$~{WkWgDxUGKYyoq<8FYb~~vq}G-TcJ&@})hkLZ@s71E zCdmTK!>gyeVQbRXO|2VOr&^0dVeabMP#hzRX|lms#YC;i)>Pwahn*@mx4}>h(@wB8 ziTjSYE(~XG%a|JhbG#iWY>#R<5f(>Oq^Qwn1KU;e;Ua*DA9ZE(j+BLc%!6~TMlk>o6h)2I zkbw@kI2v5D2_N&ptjwn)50(d(Lvt_y!XSB+LQjZh1!=qWUA^&`2@i3(-{Vfr zpt`n8SgU5SRCH^!1G#&4t^c3e+27Tlg>xbfGjq6IM)+UJ5Q( zNO|yHq|!zG-!Uf)gUGDXN;xTHocT)bBZZ84ofNYO6^%Xhc-=vHMUMfPBB^e?4TzH6 zyOa?HwS^)Nue18Q6o=|0%kB0QXa7@=R7IrbsxB%{fR`X zsGEL|QpK#B&F~$fKgi1K+Iab16}5TNIBxK*7LXD_qFh&?4fy3061QMBc%x`55qVgVoqXc*i5em$-wUa(J{PN$^OyV=1!ok0p8J3vL3G zC3^O_kR8wP9i%^mUKo-h50_bAhBr|>CP3-+rvfS(^3zh_)ERl273+n~q zAo<{v)|c#GiaHSz*g8LjkRAJ+*#a+KjW+It<`_}BC{)XWk0eBJf#&P0z#Lr4qf)fb z%Nx-(EetW2z@8M}Jdcqivq;i!<^X>Eez+Yra1<)EfAc zb<)?D5BWuZeuw^RXo6>DfaHx?4!12#GY7A|m0Kf-)S;y^KLt5bH=+ioA5l{n_9E5= z=7W&!W?qLECsvM$4njqcMSNGWBR45RED9<%;Hnk#`kW_gPs_-`)q@RE&vo+poP?@$ zZF92k8u}%4I)S!O8l_U#>CkH$99<322lwW}HUV|i$EvRz@GzG4l~TvmWlPCqWUIPt zm4yztqmYwYT4OBN*V_!0I=y}aQ>W?{I|R5fzERv zNT~1-U-ux$&Hyhv53$$Jo zA!6h4bsDr40$nBu?N$lVroll>w&WS%n>B*jDt%q}9eATM=lm6{dtt4Bl@NLb)s&i5 zQgtcKDf^)&{dH%-8jwy}Z-CYafH%~VEtNu+Vk19`m4dXdw(L!bS1N1j?>qBWbeg}h zc0Mf}et{P*n$>*xhW+aZDPzBvfu$Tr_Nd!d*wYok0mF42p(}-vFowAi_ug*WD!Wg@ z6spp97xN(Bee07ZT_|Y7y5+>)xxp^;qQH^< z+~vbZT6GU^T^vMS!ruiLQ8z1!hZoCu3jM6%AousP2GBJsLT~H%G#%hPRQc{?7liIs z-;IKpL~L^nAwKSO{YWG}_K8lj2(wy!Ee(5Q3+}Ssd zYzbms5QZ%Cds-K(f9Q86AS z*|(GaFf+HW>#i>btF5)L$j(-^kX-gb%Tg6T# za6clqRqhevXQIJA2h30|dQiC3EQHW}svu145D7t~)%Y$YvC&o1G%S@^`R7=v9pcZe z1Y=%NqV{7R@!*P|4#*1>FRx%q=!D37IFJ$@VehWo?T^9MBBi#@8rz#_#2fLQ2^ z53=2hL%vjRycCt_1T5w-rG@+Cb5Fvq&tA0a6J^GF7Y;`&A~(wW*+$YSe8+s9A{AvT z`72eCn&$5jO*gUJ9AKLpTsaAoCiAzdhrP1Ja3Q`3N?W2UTYqHN`#lgzWdXlTp?FOy zWD&d#J`Q7^1Xzo3zY&%s$-@h_h{CH1S!$UtQLoICLPu+2Kn3BTc?_CY=Y7m6X&*Qz zlL!?#L8A*uXBb1*HV68$aEYcBFwjYQR|Q`PHXQM?g^%3_IEg4Bvv|gpZ4Ii~Ssm39 zH|l5Z>69F37{8pICRb_}ej`C8up)P1nNDi;Di!^$(655dv40q7+rN>Y09@QKzdXU` zmPob~HnySI2C2jU0y&hxDZ~jVAV+kL^u@5*fmI)tb4sq%N5EMAhc`BUeCbdMmj#XT z^unt=-oXW-^bF~F`tUUPCFR%?L7bT(~RWXjnxmx?ySeeGs4gQ>OxEc*IP>^ZYOmz9Ifiv>d2uf__3T z>K!8;SxBCW!q5*@!54ceAr1S&gsemdL_-r&);9Nn%UP~_X>p3qS@@yQzkiXiu6KT& zazbTJEG z&0yN2Y%I}o^jBmxk!?rw3Iau!@4Ndw9P4UP+vBKb!mlP$4e`+YeRAa?fTprUE?r8* zR}l>WSsK_mEd2pf<$mDEDKL-&#An7JmTC7~$*A44J9aSMQ$B~wrL@MUU%l}roW%Gs zE^6-IRfOpQ-(H&MhIPIqiuoseXAZ8(O5a?eq~(!6M~2*ZanT4F4MmebXy1r`9+3Sf zat5SBbvrJPRdoPd@)bTgnyp*7ui2%kUqhuH?4xHR%-HSNQjS3VKQdiF%g5oVDb zCiT%hAXPv`Rf*j#88{;JWC{VMMA&yJaFOIg@LzExL-^B|8WeHDI^0YLtX zk{Be(9Opjl5Dy8Y+?daSbK8WX6@bAy;4(i0&3j3r z$|oGg0Wson@CX`HfgSeFJ&F23MABwot#$RPLj!2kthKR;`dP@NS+@(z99OKX=$Qfk z9LPEyFi?hG4a{sJUp5=wjnI`Yya0(`E&|E-(_!TY>vH*qx)Xsecy-@2XyHHL&bSX6 zo6HV6|7CDNqp>Ou=z*)yW5z!Ujy6EoZeS@Hax;0&EJyKkHpHX+#Rf6G#HU(>hm5s~ z^ab-zpO{W~*mB2Q*Hdry^V;evPJz?Bxi+iFg6LX38h-0LCqaiIKPit%vOH zMt2L382bz8{z|~8(W8gkQhc|i^jOS&>jQiP*rL3)b9kzedqF_X@ynA0yT4cO0rYfg z9_|+aZnRrbtUv_yQ3?KJ0N^3aNI}YreL=L<`>vuWsMAVLsFRi3^`d*)7Vf{gm?j6vUp3vx(tDMLGo95@bdzYbpI70 zsqd)C(_*8)G$sL7RGueTQ8eqzwp!hdf{2;tJw(J(7G6m1G}jI!XLMFZFsqORpnH2Z zHTgN>$L=+SR$r5mB{8)mzl3_p(5^pZ^RSlYljMbq;1R{I%Mxubdl=i^{+TtaY+7ft zAVoLNpTV$G&nvl4k~@vm=YfWJvbRbTmKRxhH=k5!k;4ggna~~a16k#!W#qz3I(rGwkX>i`~2V#bNw$%)*( z6r=-8g8bo%0P>6Q9$$Za7ZzXf2}SWoppZi&thU3AA?&*_QL)Y4xz9{RTWee{fpZJ< zHxkah(w9(I&*dle*3r!`J%{HfkaByg!eHCqsxm&3qhb5Uoc3s%Ec@Y?)!P0!2Bjc2SMr ze&#e$92dZHg}0JB4chjUjIL_5ZegiC3ruHESl<2uHZHuW&??Idi@V@R2FUQ)f6H?r z_pJcV+3+0@!L;~OS7FpQazK$Ehco4985>Gvp#Kgc7(i9zuFT#OM@XfiPI!?)^g7f7T0aFw!`5AdCbVR15;ZZ-5Z_UD}qLs z9y)m1>uhnEn&f{{Xt|2rT+?bLjs$lyCp9HIJ0&%Tw`S<(X)#zcBd;%!0|Vg!c56vfB#If5s&J?a zh8O)m3U~%glSi}p=*PMOc@oROnT^T*DMj`UmveWWWmj|OZarl{xBKGfA7eKxoG$4! zI=$iOz2#$3DA(YUqNzRgJK9pFOT=itiq%C73vmFlHB8F(ZsI%D{OPB6>z-qjt{o1UbFqZj5fT8jVdhuS*ekaFQ^!thA)Kpng5I zZr!@+mMa(TVmsda{jaMXwUsTtIbf@+lKYgfHRK>*-q0Sx0RoDLTah}!eiRZ)2E-95lS1g!<%N@ zY_P1ZQX2^Hb=B2c)LVHfNTB!((;VpWR(wrJEMEqIEDDbfFZvg~I2bvqrUIhln8*7a0ks+@|km1&_F>s@+3>f#G%R^ywoR;avcryyF; z##gDR(CBBKu-<5eVMS`nzw%3~j4-lB?&!`;25Xq(uv~;)opi*7c`nZEGe%@7h$*?!pMl0TUaW0$Ar{qw{Rp#pMKFU%)sXVMMA`VCuvXx% zs7*otw5Lwk8n$O=ZR4$C%T_oH+0ZbNzF=g&!}SQ-hdV3aHm&MXJ5}7L*_=zNk)EqC z)M~0t1TAy5rWT(`OiB7&X;65oKj&Yzx&x$KX|Cbb6XDfgK-R0kzT41t7UFpkqZq;| z$gX2&tSAXMhHy=SZj>;3RZ?JL{xa8f*Km){lbk(eBRm`4pHl4^R#e2VOZRP|Z%)mD zmK5K50aL%8JvN}Jhc*>3XsA2oLTEH7FD_RR4Er7B(2x-gjxBVhbWmBrnpcmSRO}Y) ziJo9i1BPm_iVhM@q4!L|R+J^MTt1GckGi=phN-D1M!TvzQa8*r5=4jgrE0o|l@-Zx zz7G1PwA|jVCwx(%cwRPK4S1>vp1VLr&o~IaU|7?<+9q$DEUwW!{~kNFaDO;d!*8f-8KRwZy}m+22vApDri2A` zZLzSRj@uP%Z}EGKMmanOL>9wQQ&JwH-f`rQNkhiP5hvb{pVeYBRTw@;J8%)^{3~LN zDw|^|Ld5s9*7mMzu%Ed;dhF!O6Jz)g>HKBk$b$Pet~&(dZR6g!IL~B{BP>bG9*a8G zd9bz`Pf5oc|xgIw`K zGjoOSQUNup-Jdn~-73|<(Bz?0SM!F&q^_z#4IW~YVwUESxBK<)*?%*C1MQ@OSr99k zKI1dRa2qy^Q2XOy!NC%OWj~f8R&U`GJD)iqub#d? zBX?xi72D`~h?oB+py+?Uk}H8DU4^AYgg3R|xY!Z9eR6sye-%(fQwYXDk|9ri8aP!3 zxQU#S#K{rSL%urJOwiB~8fG!4k9KhtxJhAif7f_y&M1!;Se4?go`v_>xKnt|q3_S3 z`0zn7Za{$5hhv=uJWhQMv2o@4phqb~TQK1gIqKV#Y`YM>8PvMM8xj&ak+g>7#8(n* z!6Y7zkog4`OH3qNBkYock(AZ9ppLbzUa*h2cX6Pj-}ACz0M?m&NdL>fz^IS!$-@}& zZVlu^i}G2w(oayTF(+Ut;SYajz>%p@+d}sTR#IaXCw9%M3*4 zt~Sqa>8DS={2bOAzIF*J{^rYI6vDP!g0~*!K6?V=paqK;I3Wxs9@euEIg7}e1jIlb}p8mHO!x@^z<$EuyT3KOS2?x}a2o z*SbnxAoFBkn{1%GF5VT3z0-hZ*kI9Jr2Uo8W;_OZGEchYDyU*4m0_eEbC602sAoSW zCNlP2mHRWaOL>cTgu9XX-&4M)zIN=m$+rW#u~5%9Rv09Eal!uf8lDSi3r_h?(%8-C zEKp}aDd=uU=Z48ygixL+ZJ`@a3LAY!lCY?otdZa82k%Pi+8cfcNegc6Gu#(Egn?NK z*us`gdW_*-667cnwA;k8JMjltRHMqplk|1OACT;w3JWJDUqD4lA`7gvIJNrwBCM?W zq_6W2NE34(^D!mYDJ5zcEsV&j^4FlCcdgQZ-ZzQ6(4N^e-1WiNw}pX?Aa+x*=`2Sm zF|(5A`U9a1^{@yf^W?(9gAdY5QhD+nl>!JuFq6F^!@2iP;et~k4-~T4rx^rOCiM3B zH?GOWQHyf`i_E`3foyq@k@1(Yo`}GaUTfw#3?12M$LAF!UA;l@K{FU>4N&uGzuags z@h9Oo^W0qf`f;0WdmVd^pN#+K`^7e!Z6e+GlV_-XDE;SD8LPU~kiYy#Hur*rst|V@ zw>G9{h@k(?1d;ct_i)%<{tSt?bv%us0~8+9J%9!35~&A&uggE}7~t&%x)kuZ2sU^H zcoONKS|V_hpeVm5Fou&LDt~tVinR&c^KjskX!#hy4)eK_3D}WeS0)N6Nt$r)p&SbLS0bGqf_B0=FZnxw zg9`6K8wlDVA-Yr{Ldv7U`&2wa&<05+nDS6ZvKWI(P?P*t{!W17nDc}m*EcirgbAKA zPf@?*{o~|cGqb!WIo~K?A1h!F1th;qX(Xfk=cyRk$X19u;a~vL(;d7A zf;8g^908!Jp9OD{#y*H7hqN5NN<1wI#%v8r9t}}bPa@B9!!P{^|2ZwY&+{bQeST6| znH^euE03C;>VK<9Q;B!Ga5}kob0qXYn6^HVv$Jg-{<0o-e?SQ2=MS zNdXC@%zyA}6vmFQOUWii9yLPFrT->}XE@SS5yWk{LlIs7G~=m|(`*n4;Jl=i1FKe_UEW`(bxJvD5Qa22;U7N^~0z3LSh+k_fQw(DHO%57Ty}+ z2=eeV!6xWXH=Cr7C5+ziTen5t5%ZWZjKtn6Y7FLoea}r*k=Vt_=|Def;}9s%FU!J0r*lz=pm2wUvr;2ka@kB(z(v?C9j0kMk%dLH-$ zLNad$*1|Sm9<=atWihC8BIBFVb%EJ`=nX+<1 zBtvywggZIbphk`({HvfCN9^XIsjbwtpadabDg&(HisM28*oo#^3Q)C%f_ zmtb@zdf{COL#T=4mKM0hK_+6z5N_uX=ir{`YwPB?f$H`&Cl)3Xj?9iT%^*v9@E##A zg(I^REc6lQJpxl8=&|^xrlgya>644jdg#~vT*Qajc-5m1d98C?(6m4gQ%zN%TfC`tU}Gp2Cr@;6b3~?tmDM`C2Ftn#WSJ zw>BQQM79P_XZ)F6d(vlmeq&$LMD)sC9!dBn&7J9>7|!3nh3W*faSdcew z7Xj9E+z%;v#bV(>gcEM}5RgTOM~9kxMCXTj5i3^jz71JB+Byzc38c(leNOzlOP=4{ z+dD>4?*z7eH`doV?ceH7NrjGY2X_ztJA!p|%idus$>07>>h`iH09G{VAcYiG@2C@# zQ;>%Sl7P~zB22O;FibGpG(1POPS|?;xD44z>G>dVrLH>2j*d0dQRK1%d^dKO;49!g z9hW7;H^NI=j#NUm27C7a4KxUWm(Ra0B%IWpi%KFbmnkjP!?mqlhPA2d`kZsV`(#yD zJ-UblQZ$`f+FM_5VX}(M^=Qh7-@zwGH}%l=RIoqTcAyq404$(KPn_B2n=GXT7{5*8 zO%M4S`70tZwC$0m6Qb~#7b2{YHI3+Ky1~Tf+`3$`iD@y=xu+R6AzKvR-BQ_-nlV}n zn`P&>$)AyImZk5AuuxXFvBBCIoOg3<)^(Z8p7N4PO~`s#J}(h-JX=U z#U4{W=KgQUAr1opg@o2j5CEVNs?GSf3C3KHg|YKI$<^U=AyLdv{)4jlp_2}mvhHe-gnfKQ z443Tjy+H1|)@a;G+>Y@M@vduIE57Uc$HH=%rEPBajHV%i7`YmvZO#K=X{$@q22Hht zs`7$Y=4M8ysemi5_|_)-Q=%J4F9dySS;f_%`NTes|xZJg$wK0myn`|bMRlZjyISJD>n#rNWp*O-$ai$uUKDBtwkX_ z?ukd&TKOuvFh{X$k%!I*zK#bv07i1*sw<3B^iIm?TBD^tJkVaJuBWONPgIvYjPTRS@;QWr1`DfUvH#P>(RmeL+>H|DaDxoa`?c2o`t%BVM zxS7e`n=G1WYA|TTyIdCVFro=6nZ|{5|9B>oL&h^*2O6n{`Z{ZP_IR3Wyz8?@3=7HZ zw;l>Vv1!`j^bUk&mD!_Km1$!RLDm0R=@2Kfn_nD55$PfRUWaq#_33AUK)orvoM{3FoH8Km`Yik)aZfW*j)@G}Vh+MPI zyB;Pdi|2pL4*z0=`eOTxX;j;6R2Zs?R>mZ(s%su_8u}_54tG+Ntal_Vo@P%qG*0et zIPT~51iFHYlm@gF1@xhU-ztPY%Mwn48M|9j%AqKmvA!X^JbIgJhms2RG~YDe%w8Q( z)=6BkGO48_0`PTa)Tt`yxCbG!LwD|^HMQj%DE@F-G(0LTh%J^|aSty0;8C>u)^o@j zYf@S5;gRTe*Y&R}dPQHAzII_;c6H_kSb%ytoKC~LaD^ku)U|Kcq8qE3fD^$!SqDNQHV=|R~1EHiPP=g1LU6Ce}Vnf_{1(c zzOVmT`r#n|yV2U%cHITbrpA#itJ6@hfI}MMsw0i_Ilk@*XM%{v3BFx)u9^nIh&}w9f zLEQU#u2`VR!;giq0d{$K)C8bG7Qs&1mqvuhDXRiZP;V*GAt(S5ob4qQ2h66Cuo!Dt zR)tG~-P7@_O%)NW@fwe_PU(wgTY~OX4|FKCVc(dktMG0-ybjZ8XtFp;egxp)NztO|4>a+~miF-E@&JFOPW3sun?)OsSEmpWOxcqRwBm zmriU3hu)IVhP(($#2*hbAwvl4E?j`LZne@BZLN)fSzK3hRr~tvtqo9=oOiHSaVizH z7SAOJWl3ZLpc<*)Y_obIAf_nM7;#^4IcW?2l$0lVDMY(^n_-hmP{j(o!{vG&s8g_dCMc0L7*a?MffN5Df9$(j*MEo3jx2|e`K0u%e}M|?Ja3AFl0=Kmx5(x?&`!|lUrUqAD01y)?c=3 zks83PmTIs>mPmC+YI=VSe~S9dU*#JY9g#F|YYgpm;$s=O;8qcMn>q&Frk;q}A=N62 z@$tVP0HQ-Ue#h7ZenY!&0Kb<_4?!OO^X-_CCFNmh!blo`MM)vjJ_%H^;MoMf?p=&b zkV{0~C~EyC=%c?PGZ|b@VJF2RN<*ZCNu0M?)wVtpcLL9MvlmErydjNCR=d%)%@I^m zSxJ=+H3IvdmeyBrCjX0Q3t(0fHI8;eE*kp(# z8yT5kiV{@~x4o*Rq_m~7*sW?AK-LLrHGcwHIq?NEkOD~`F&`|$(Dbr{NU@rLN;}ax z?4N>WZOt_i;zw|u>igqiIo`aF{hBPt!+}@8hK?&VjtChhyG86Wh9?hL9cNwvtb`bO zi8{{mT|$t1e+FP+(Oi12f{9b*TEnM2*0k7~6$vfXbMs#^A1|6Lv_#rMr~WIP5I4GL2E)0PnKaafy9lfH~+}?}wi{>7NVX?Sj5q zWh77=RnT@qjDR2F0DFLR+;Q1&0D3)WIbsbK(FYpj^6?0X1I{Rbl?z$|m(}1>cJCt3 zU)$)|T5FuK&6*QhG;<4I%Rap7(aXx^NsXGu!C~jHDpM7yrnV{vdI;dfwB+Eo{nM)4 zGIhVp-EXZ#n~0+NVfzERr&J0vw9`>h>x5i5KhvUti*G_^jGvQ0FCIDM%PGSN3IgYH z{j!L@r{sl}@^VXE zS%oc~VD)eI0^oLT)K)dDGZ&C%fe=~fF$jv_7vTqEK`X?e>2?;T zDc+?Q(Asb~GmLv|m%|s*vxg@a{4qS%k8C`T5p?mKBR<5aMan)ehE2>IEZS^2{|aVJ z@4%nwSKfT-*D!)LSiKBPpsVlrMRD0dZ6ElJvyWg*Hk}(D%XURXvn@_6ErOx!guPRT zCYTaq-TVZTrQYswMJGcy#jLJ+1a(u;anR=XscdLTwEb;=LoE@)dNRq2w4UPZ`&ftP zL)SFQ}7#)L2HUd|=6t4o~i?QFkaNT$emF_=+p6;*L7&E>x7(w%Ew< zctg3mw7H^jB*t>Zsyjrrt?^U^t8H$q-=33@P+zSw2^!o3Tog2TJ-q@nIPP3z=fEc+ z8$y@5HzIYm$O1B!c=DQ@1Xx*BfDCkCmxt``2;DF(Ti0cDsJHCi!QQdZlQP=`Z7;s| z|7~8$ooa2Reqtvky2lo=_r>eV%D;3ktXw@)-wb^&+%&8p`ttkT!y^)VjPN`A8paRp zk!irYoFaAsMWZetR9ir~d7Pn-jH0BEMWxfFgu~KBwa2HuICv}7ye%=KGZLmBDzPup zV@pd~5fdKSSF%%{zp1k^D=!?n7LS7WKIAK8*h4PEyJoZTbOP}*0}U)S{CXZX}>IF?k9~v9!?i+3|$aAN74EjEmzRHo4-lIbTqkr|1cg`QE_5Fw{A9lo1 z+}j{9zqPh{T1?8iZ0d8n)zZ@C&~#^VhU<%!Red$J{mB{TyizPfKc$+c{&kNcH+qfi zGZ3TQPK(J|Y{|We$WsNr#GD+J5tR?K8lZ*6J`o9lDV!JvorIyzFDwMO{XQqXK)OLT zT_0aNh@c(t{UBqy!8iYgD;9}1-4ed}WBZ^119#vXHsn>G|7G4GXjdyvVRn}Obi zID=rv)fQ3aNz*6@y?@81A8G=0I8hH$tOOJJ&2xg}*EuzBmMLuq+yX}Ohvr=vBj$x} z7%v$`^4{uR=qLD5FL^6O43X^rYSl%9#QUbgs1QC+XpGvkvgZo zmX_H&E+AN6r}R|A^H+9OS9_G0GiSepIg<`k2_+EY3Y>?ynh(phJuK6th3rZ+&Eef|$4o34^$+P7j)q?4+dBkdv1!0bG6vKOr(4)il0R z*8$+mZv()*{!$+r0nz>U9T5aNDQ{0ss@MeOnypA}g+KX@cP-AfkE`&<;7m&l>#`8V%- zO%M+}McL&pD8m&0Z7j4DMR?;7hrlHRv|(8rKyCl?0_{%HuK_VZK-yJ{)2^L+6VuzO zkVtg+j;HQ)qq!#A@9eSM2SCDyL$a;iZsPKD&syD(Yvrc(MKn^PlL2{FtWlX13}q_F zMjp%^^O^ulg&$6$jF9h(?Q6E6+Ed_~x3{)#C_Qx$y(mVta5a@eUCjN4(o8hRac{J? zaKG`>jY=+2s4L2Jf>!#^9U8?K-}8mEwl8D^m zSvW#qB)~xd7gG`;;DRJ5#dY~l+6;E}a+k|<7q-qiQS9}4cIIbP;?i*! zmKl@PY_cs%ia!R#W+0bmzllZ@J2kLns0-!>c1hn4;EbG9Fa^sJfhhioVF}0=R-u7t z;9x1R$dNBrg^}Tneu9+5rwpyI_#e{a*07Qhee%p>e#xNk>R6vOZbA>#n&dH4_xK;D zuUaBBxLR(QaWr*BSI^*gr1Z zkY{ysKg!9ZQ(BVCs?`0u8h0YMZM=N|?kbwHGEE92KVk8gA|;-%7{9#EE#AcXRe$S7 z2lsPx`+<#`&UEg9>eBT?XtqLG_=ma4L23t?t;n;KG+V5YJS5feJ%D|&FzqYYVDP4R zXDSTZ=q3>82aQ_zPjc8ju%a1mK5UYnO2dkPz2>AZK0EW%F1Yt#qT-O}3VWIRw{P!X z8~WJMJMXyL(9~qOn}-hH%RrO!LD4VLxJ$ie2s9-Z-eikib;F=Ce~_MV3rIsiT0ih| z8&OWer8YuI<~^XK5=SW5o5AS^wHk6EOF&BKnFB9O&AcaR;a0HxePGH0W4rX0+x)i5*g5Hy;m%QEu};8-H~4{Kp@ zAcZ4zL|`0cMHXgkK2n%xj<$1OY^C-k51CAT@!Yx~@R>io;rmr~<_B4`jrNHwEX=F9 zFBxjIvbI(i0xiB~s5R=#cn)|0Ivw=h^-4K_WP?wBEQ1GPS`@uN#Dw6+B)OMp;m!KB z`$o5p4kSZ0C{&K*JA5x@c~xjdp@J7D>K4E1MTn8^Bvlzc=5@jTF!J@qhFnmvh!@4h z+|Q&sme(w4kQdgAn_+n;a}ib`(?fc4iufYlS{CCORPxoaX-7TD=k*-CPA6kq#d9boulHd zG{5g8Focl9crp}Uy!+8qz_)H>Id70yib$)eP2&^0srcT3U(t`8dDK8PyaIUFGHxbA z_QRJa$7Y84&P#|LnyiiOmmRo8LWJM%$ff0y5pn`Qwub1YPT&QaMWl{GCqWQ-#S1jd37iyZ zpIXQ1g206K@dY^RbbAMoe<06kI(%oD(?5$i9PlP*+ ziv%p>9bVzSb)x>+<##qN@qUD}hwyrcGpS}Cirn1@3mRyyCx}(-|KL4B zEs!!vooGPqj*Ip-!ZOs=$sv5gi-gdFs;!5EN|-bJJ@ab8?g^QI#e%#5br8J$+JDfT z8wtXJIpzE5t`-!~KcAiXK9w8JtBel;`fMxjN}dhyBZ*wK0t)UV8d9ZCL zzFG_u;fx{}L6pwSVOwF@j$svoyJPdf=v0WG!A|?eyL!0J>`YnoOK|TC`}v#X#9xHv z&-=!%3-KMfrv_R*SQQUU>ahQ-r=J42akp{;6xMJ{CfUGVBmhlHhbc))8dpg{z;GTJ zkjYERN#+x;(5avIv938saB0UkHAZd+VB4o7!6& z@iFL{QQ;UgtYYDY*wrU}Pdr+I+fHAJ+2f7iGj-VUHRxiclJ$db$S~rCO2Mc{LljFe`4E-J zuDjT|zSnH&Q_!&u4NmRER>Mr=&=qc@uB6i2_!w6yyPx~Nj{o_%yvCxk^ltC4Qto>C zj)hllQ0btvZ$)xRxw7owsC|o>uBF;8?{@FcPpB=^oAx;tKHJ_$GY^4Wu1{!knk+Is ztdl@f3^nxYfC1#L(F=iOBg#GtA)p3_Nd%2BBcSN5kVzeAfgoH=Rwv1EYcpwbB~6Lw zDSfQV-Jr3L?_XO|Wvg2)XIB)Lt=(VYQDJBxhF5)R7PGLu|IkmWn*elzqTK9Sp31~XnEW)UbrTo zk`hiuxPDLx%TDDmKxH~J)ZLV#~PBXe{Mr%cdAqAgXQay9odm5-; z_jEVd;UAD5hYECcrPk7BGPgq6(zaReHk;jg73*q4qwd3F?AldbXdL10YwNVB~f*AT}O}Y{r>m%xBu|j=kCJk z2Ko+1Z1?7AZ)Wb^%P%``4Uz!|{btmUWM4$ZL%&Is40^EP4<| zt6Pg@^^``bHr$Z5Ze1GsMZY=TH&)tIUaYCtk8Ms*Pe4D0PI0TOA?oL{pF>~a0Sdkf z-r28#L+{E?Ma9845iq0qGm%LKm)+{5o9Uw5f)e_DmwTwoURY71X#fb}Pf>{?gyheK zhtM$Gs&W<3^>npTWxQtH>bQ05;#RMt-|y-hD{*4@JiQ4CYt|&JTMeK4=d(YjKal+g zq#y1fMfpDwvR}NKRU<-TyIurjR%7Wv`V6Rpz`)Ji=r@o&5dK3Aefa=oqjbt@-7Uv| zrfxJ=~dk`uQ#J zbJ&`Oup;MelK`u5f&woFPK9jQ)w_(bq-AIFJEm?$lmN|Dpsn>J0MpD z!c%JQ>@=GV6Z;18N`Zptn;yX51ohkHeV3F})W&AkMkxwQl+y3rR~}biX%Xr2wx^+> zLa%BG0-&!@aV1X*=>EhnVk^9eTpB7Tep=w4-vU2h4lT07(1L$HQD>WDO`0HLh%e~^ z1*Ab}{9O;=?^+Hu@V6~O4e^_uD;&B={|Ku_CFhy1}e1Eitz=D{VH}>z(!a z%IeDEqE2VBEwSDnQ|pbQ@n>Endka3ZhmRJT$_T2)q|PZ7Ss)ud=? zX0S3zTPJ&~qoJhQpe`*#-;`jnQs&-SBJ}IhfY)3({ccn`vlg)1K(IRxq#pltBmA^5 z5IZR#endg&v+Ybh#&b<{lgVl_mX#Q4EtLwpNnKu6-_%?!v(^hZZ^&6wS+r6clUv;7 zUZ+d;3>(^k-}oEn@HfKldqhzI_lVyaK!r9MQK7OXfercox+bSu=628`MLMlO5lwF4 z3Mm}z1BNy~Vd%3cn_ma~U5Dr*+64*HnEFIfVdHSI+G^I6mN>or^{N~=nVORW=_vBf z+MAMWnH#tF=cJ&YrsTi};?Ms!e14wvttY04ipBp;NRB9%AV}+ufmY$aD^Qq<^8Me& zixg-TgvY%gQ+W`h_J2K*vx^0lLZ3yQymi3c zEZjFIC{I6*{@-bX>3XTL-ei!%-+U>2Gmkyd--#(O z48AB7K=KArrWxuoAbJQOA%e}y2?-?72=a~LxCh`+qMEGVJ|?Ct2}l4(dPG5&g@uV1 zcC(*5g0x46!iHpCWD@9tAIMZudZq*>wGOhN8_vD}TpNae&W%a}m}OB1Dd>6xnS$!N zYzufF70{~|MI}ZH_S)Z|;m-~UK{0Gi!sB^4lrE2Y-1yx1^jK$VZgQsDSYN{p8frAA z_Nl(HjnnsW=gThPTDec6qiOq$X~^sDm)oN?RVv*z7PrF?zh-FbdE>wTVIR!WJ;m^_ ztO8hyuw)TfNL;Zb3}c(Owl>?j-vxeo5%*K!%cn-h$1Dxuz89h#?l_J15Ww*csjtt^ zoTEGj@9Y%n)N=SIaC}K|8~UdG{tj}E{#9F;ot5sIP_{KSI@-p&r)PJJ+qRnNW@gY; z*Luq=UC&f<55x$d5x|{PQf*Y0wbIen(Rkhw`$(IwnnqeeOsJCKN=pV}OHtzK(yx4MQKsf%}PJknB8=^Af6#tqPOS3gSq zyI4`Iv?!}oHEqt>EnTg(^>Ufqs&!ar9FBWHzM~Y}%d&c?2bQ6#KSREdoKwPI7k1zh ztCPS{IeNC%t|`ebsBGWf+`zr|vyoSwZZaRIH-Gi!(G2dU7-2L{tCr>){yfutHf=T%40%Vd`mVDpSUHH}BkO-t8X0u9XDNQD=Q0(SO*%y($FGv)yI6 z`GqU1SJjzyc3N3+VAwWogrw9ZUTKVp`58sO3mz^+T2WxVvD6_cj23k<@}C#3>F#vQ z=tnQ3j)K-bN4d;k6i5dax|^rg=4&dnXC30%LrU-sd# z3**;J4RuYE54u={>LS@ki+g z7X75Z{HgQj_x|u6{*zvPRra?_=GMk-9`Vi)m@W}N=^wI>38lp69!PlEiobR~@%W+J zItZm?Z@nk`_|l8x%?7ZBh|QNl8A+Oskpv&R_rT(jR(wnos`z zPT9xY7je|;nb86d|5*dOQMnWGkm-~CoybH|_>YrKeBJTtJ2yPk#Z!LMTR)Ti{jy_m z)T){B0s*!`|L0vJ`vk5Xzz37hLn0OkpX_Ri>Ku9b&hI_Z!xL`vU!RbDa``23)XJuT z@_=@pj(m`wwULNAZ^(C!)m?|Ioj zQ2Y?ZfWRR-h5__jRP>&XO@Dpz7q1QQpStxwZ^-^pcW?lG?4Yv9|FL>PO}0w**}>zMxhrRUxr=0A2j#k?o`%z9{GHIQJaqQu)sSU$X4_}nSkKgG|5yht## z_;Y_pWgqm+F1-1Nzm4*ryNinZhwPu$LxZbVI)^Gt1aOCUgBygo&)zQkT>M-_h5SHv z;m9MZIFFwzhHPJ727;oUEae}WMmIIP=a2Xe2?t(lAnGx zHFR0$VeSR)@7!tb-L3qmpHDfcGTG_I^WoEDoZ}jWK$MX^CgIcXlYO=1r$0i?TV{~)8CPOz2v9=nc91e=R)o$+^gK% z+{?T8PoJZPs0P{BP2U<>K}9!D=qmi54(=PKOmyW$P*bvhH(xXwOUYdu^;N>B zkDP}_mXXXvKL%MnLDnNkB)gBg=T^@(++pqx@Sbl!#DDr#)MeBj*?(Mf_|rETs(N{e z9Nk-o{H$Kcu)RkA0wRkzm=%}h$r2>N-~X(1uT0O+Pg|dtx1Rn5w~9LLtItnMgP)}3 z!=KHgy;PJe1O99@{MqQdBDh>pbYP`r)nDM3EaL_EAN*GkYRk}+5t>MeqR<0H1H0&# zMvZ@|qt!b2m6Vqkt)}-DUVdv?PuXkm>-L`(-g-a(`zyYDt?)JKw-2|!2>)vr{s!M% zd-g|koGcNhhtN&isC=+8;M1Us3MlAZ#^_WHoraymTJPqVF}AwQ>d|wT8)~Y}Z<}g$*Yp^ej*gg(t)=FeGi&qRbsaNu zk0*M>ou`jIy*AHXPbF2a{fO18IlEO^rHTI(Mv0|rmUh3RFs=rT%7w4_+du}{EO}I59kN< zo{kQiy`#f^xz9nv^)aQgvPz+>;H>Z?TW5!Ts6wfzsDPg!&KCf5f1+Q2eiq2?<&d6i z#CsBKAUORwwd9l(9qYdY4ygAyo3@)g9oZR*E}gc$m>!@i3yZ6Aie62y zjd!k1xt-h7Q}nxUd2NFlb@gbSb9;7SU151+aj8pLQlZGpsww$H#;&Wga&EVlmcLRp zV{DD0kW57#!ZL*=>d-37Y9vYUZ?>FuP_s0GAa&HfVxJH?%&D6d0+fi%bA5x-IqKi`UbkRk+B3%kd zJ2jVo#g&Bz;$3kEimte#;BdTqEqzD5LEq4O^UZxWxR29!{5X6@Ptw zWb=E^+}&hBpXd90{;$_RFgy3oojY^p%$YN1&N(yp!PM&IsZ#1hd(v}UB929mie-q4u-8Ci z0ViB5C)MW*YU5IqGg+BpYW=`*wUcW|nYQn`8S_&TGK}xI_oX)uRoc`#3gBJLvpP$Eg~T+WKjCx7dw@i6s4x7*VWtf zs;EkdkIgdaN5>5cDpJLkcQxu!l@*~08P*V;l^&Uym_?#uRq^qmz#m+}X&K!sb(XrK z=Tt;#4t9o~wj@rTq<>RgUAcmH_F84%ee*+7&kCA%%ndLWdPJPVd&QYf*e|US5tW*P?`cL1$ia^h#-pQIAL* zS{@PKKPRVH=}Q&^HeN?8y&!*eMuK3+tpY+b!mDvt^}rr|8<%bvO4d63kncwJD*4bFefB~6*tzceGK zA8!>`u0E!}Ku<5I4dzJlSo>QAvDHo{C+OVPQFKNQCI#^Bn=~3!r{|5FirafmsFr02 z!INA$ap)jyKXwTeGdntTNEQwei4BcSj~|_tH8NfuOSbgI^@y(n3C}+&sXRZAi+!dn51PfAPxY%U95Xdg&Bxq8!7RmkCCZ5dv*${fl-& zkg~InW^*?bsS4%%AeUpQw84yAg+fN&r-hfVT#;vpN8}XUhPAH?;1aqtKFM=En&=J} z-d)sy_mG742-~a9C!syhb$Y@P)Yj`_@qLR8T zf_+4%!GAcF*Tk#hU9a0HB&fnBOvyk2s9jgRu@%?ph1uw71fX<0LZ8r2SC@s;GM4Q49OD2HY9$8H%)md~qFcj-4|$f|zRuP#W*@{I@yO!q`F(~91x z&3&aj*vBWhGByotXuvYbuV9^)w)Hc2@Oezs0>zd z7Ro7~PNQD|?>MW)4OVzdrKO7pW8}K_K=^*Mq zj~T{R#xoO-+2`a#mi_ z+bc+QaE7<4IEbzf$P13mw{VMAsiIp?$45jaJ>C(hZrqyhl-^Dc(UoChtkN{s>0qY~sFBb0fW!$w ziC@~F(Js?yNG)2LMxwRbAx`fnTy@V|E3LsBn42w;dkw&DO%pJCwf#*#!WASQBA+Gz zv4wY$%A9;OxU_7rhA3gtNB-85fsGnvd`tjka*5#hycZ-V4usO2C)4rnT|$?b9}q-Uo!1e54wAbg&-XP_+T?(s3vmR622vQYBLkKrPGuwDons z*beW^Io;a9ty}KDj?9~!+zzr1UN6Agjq4xr4PqHw!4)jU7D>(z$j0}YHRp4iLJJGm zX{XG}$VkteMeMZ~>H5%$D0Q=i_7rJIkBLo2Z$tpY78v_DX~9}vBgwqQ9bbLYO};vA zz?p%K?wpp(O|hifC@nc5(>F0Zr7$Y8F}Y?^r#hpIm*X)FdvcQ^r&zLBcdtmP#mTuXJ%JOhP;0&U8gcgaJiMIzk$sTRiY{6JVK$SyryCK67fz@>(2zV`Wek_{eotr7C+RIfOq*=x5T?Hmf~eH_}78&zf*tY*M>FA z8%TwAHR*w`0auVp?H$6G5xiZHw%1FYc%482e~YRvYA)4(gy9au+uy{5e6D?mRP)^a z__>YT7(v)!?xf=1v9)@W6lvp0f%bED#{+O!P91x;4GJ51Sy%jVG-vqQN)HU_ERQ* z-%a{}=3|BfX2Znn#%5IAD8AYM>knv`*5AonJWpfWEIO&}1m|c%@|e_m)4hnhuu0~? z+ZEPL@H(hluNK)anMNU>e9`# zd@u{ID08qLgZVI2wS8zx#+YPOm^Q=?Tx%4n;3`+QB9e{OB+wBq8aDam6q(=t8E_{tv~j`-3iVx=uJ2Dku*Dy<;* zL*nrrsYy%g-xwVHay3~8+b6~;u zp6XmOW{7P?{Mg)~3%ZtfuS(49FQW*(z1NVWs2?Y&1DT@}8_I%Xs)|Pj#)Gnorlg)S zBrbWr3rElN<8LA+FQE(kYp|yNHUjN``})b#5PlZy?kqkl@9dC+r{|mlsVQ#mglFW6^S2U zN)whc*w$unf&soXCE9}=Z#<^1xjz1}(UI{wC}=q95)$as9l&cK8z<`VUx{qvMi`*q zHAi5dQ+zQfUdSP!7lUP~vCA`Z$el@P>63GECZ}gk%?T<|g%kw^7X}9v1et=qi>9Td zOf4>+mYU~Zk(gNF2M>Xy3O;E_+1e-IK<(VlkOOf-v3iyR{QxF6mUE!gA$|VAfo{ji z94Ib8`v&u@Z+eOYVf>=5f8(t34m@|&zwwH+A-yXqY=^4V|HfJ4{Og_^BaQxi06fK7 zWs2zs++#+B4hBxA9REtIt^MMAEdkt*LaN@={z_fN%p1`5Cpiin_&g(v{3lVwhL7n3 zb&;$}krEyf9iJ4F9Tr>>rNLQnEKU^^>7ojV%21JDO_ZrmcCc57zl*Djc@L)qm3OLF zMV?QHx3is#Ro5PUV}t$FUZ6=>CrKv#q+QD3;JU+mUsldpZFKfdD#*%8OVi8;$JylR zl%1MKk}_w{=Bo~M+h5@7u6&e3rq#0-E~Id-t}>@ejcsLkd_xpSExm}kww}uO4!}?+ z3EDmR80rL6K)B37T~P|=Qa4K_qz@(Oy|()3;G;D~ znN=TEPJXfS`H8#+@uhlKZ3uKrO0tia-xWU?8@xB1aG)Ec6TXPHBtxc8>i^ki1E){y z|LJFY_mUo@=bk;>8hPWI&1$T!!vOv(EN-H2Fx0iZE^T4huPjM6Aj&No&0zLC(vtyO zy$qX#%|sj+9ixPOfCDN!w}i>c1wxvb)ZY~ZB zEiAfscX8m{rL1in z3lEP)TYIA`q9C_JyG@inhzUW^cG5bZ8TKL7_^a=;mz%?O|xO--fwxRPj-Q@dt`@A@|=dEq%Mb z;q9`rw;L*FXJpK-tavFSU-2 zXYRbJ%K3SD^DC?7X8UHw2L#5)2L{B`)B-;@hZyb3XnVJSLRDmP5VEyy>7}LV<-M)L;{we?1~_|-^)l<;-OP(_Q&mR7)lyXz8Cj{)&aX&Mui)Vu zCzC>wmv_{)Z|^Q8_Z19DY)zSVgV2?-HVaq--@1*epZfsEL~<#U3O z?F6YoFFBCuhqUa-kt4;2$hfbwv%k(>yOwJU9LNCTM0W^&fc(1ogxhvNm4d!aOo)@V zt;xy7-lmrwOQ*?E5h=bwxnyZnNSR%by`6(yuYl-yfA=U?u1T>$i@Z@DW?_AMbmlHT zYqSsf_PGpwVdCPL9vPnH+^3IQc1(1-LalJJ>*M6o$H&Xw*|CppUz`arKP=kE!Lt+X z?Bn1S9r?bEAQpFrDQHuk-^u=CUk-b594<;W4bWkfQ3(u7PK4ru^>%Iz|d2N(a^ zg`#kcZT}e0B&+iB;Tv-8bHKR0gFBUm#Q5r>xY@)4lT0AeG3Ko$wh2_yC#O00skkYS+Z6I`tW3FsuN zZ&Q;)M^-!a?dudA1D$_BcvR0`Ha*8B@b>ivyL|)P1EWB;SoWT*rZ3`@YT_xzY`GY- zoa%LBR?lR)Agv>JkhfD{afqrYFbKbefy6VxKOinPz(0|XSHFT#RUuB{4UJ4pjEYPU zqcs?#b-8}DT6%C}jGOpkQX4o)YgMzu2K7^m5Yj|{tFp{lR%S7*9to3=f_0-U#R(?t@ZtX z(RZSDLNS^7MgT`e07u1tBlyy%5ya=$I&zu%f~Nv%*&-&>CKVJKrnKoG0r8m>Qm0$2 zul$E)jQZ+@uh#HqY-6BlVM$`|z$W-5YBGTheV_EoKhv4rpO_f zpIqOlkLnn`nngv=+Njc#;wpxAQjzvy-DF(3tfs-xTm>v<1C;FoyWi@tJ6^Q@nRH;+ zFr8ypdUZD)D@ zwm*HDQ?2I;(&a`}&>J7^`521>6}JF4aqj2jo)A+SSOw;|`>c_;dv zw<4D*6|!U%$gSmAKVAn6YQVQ^H=~Ih`nJ-%%7ZJ8(X=05Lq0g z^L+eaOo|)s7nf1(9ROpWxNKb#MusIqC?WPEfFx|aGVNThQQq}8F#wz`b>KJIF{2n?nM6faV)2E9LeSA$E&a< zi1PP}J~Nh<3ku4sNE zluu8IiA~jF4f!=n#{1eg> z>-&{9n^dr<;DBJ?u>2HvH)p4m==mBtZ?u1wZ(x#(jeQSmN9$hM5CsPm1x0#$xcXYy zMfz3LAnm{ASSO;Eekvj_GI8fl-5WdRLzx82zRrKd`AQ z2h@%!P+tyKBKq0dPr84 zLpyE7$tj8!LOdsXD# z#)>Xhud~Jg5geIYDE$5p99b-rN5DwYb99*jKTa7O^|T!$IXon%)+D%t8xJu_pO9PJ zVbajyJ3;j4Fj%T8|#=dy~@$6($jcGRYkEf7$&U3pumD)@_1|GD;a4s ziVLTtR`k#I4R-A7$@HKp|jDIgYuUdq@U5JLxNZhTr-@?rJ-4LCb+hc zk|o`mn$PhzkRlCj5=5nwj#{{b&Ag*`@) zdu@|*af!lvc7r1Rt7c?vK3*2_3b6z8t z!*R&dyKpV6DF3GDQ)B5h#Cp3yyWLN)5uJ`lthAoB8*Ce*mhA@W!T+>eUQ3bf25FJn zne3W&Z`bLo5Svlj0K0`!?Hw4R^Q;PW z>f>lPe)8m3x<+>kQaVT4&KGW0c0HVX+Vm!4WN#}zYJ=$j(2x`NdTuX2>>oVZoNIWk zmF_w3!@e?kn&B zZ!GpM@PJtcGM6#wB)y@-k5W*;uSjR0q>pr?n&;b-lSrX;!lD0#h5VIUSUpVCnE2~alWoUEe zEYL-TwJ%qMP@%P!Cp4~VgSp<&08Mu)mA2MF6*t>wE}hlh&<;(OxJ8Ef*xK2YXq)sC z7PsJ|ReJfCGG{<3^J0GPkFEZjFwgcUK*GE$&h*vonnLe_6TcdxGl|RawX{^kXwMmR zC9P~-C0oVOjZuM1L-X@nzkIe2fitWo_?Qr@0MLF+d!HnTF~Mgf%E)LAyPTVk2s!s| zslP#PJ|e{Y#db??=z9dE*R}%uweZ_ z#W$gameoMMF?0zq@0ZjE)$|cn``}x(|Lz?S)6b$CA1z`i2f3N1kIOOe6==sHr&1Y* zyL9U@&Q%fwRm(Ws)h-)6qGuV$`38Zj-O_a#=fZP<=P;Sp2titB-@s0E~(6d6vZHY-A{-RK%;vUigs8II%gbr5cZOL6fEwOCV5gd&j z+wKKgVpbOr_>?2)NH1@ho*9VohL|W=emG^4rh>!KAv(hx{>;p zSf6eYBgPos>wNx~rSkn4NoVDBXhOEiZ6LBAY7f09DmLoqhl_AZozCf#d!|0Qr2`l5 zWwx23Ke_J-^u`=7hHq)=8Uh0~RCuF2*{B;cXd?(gt_wOX+3QuPqV$uPsO^|CxHo1h zUSFV3WVnxQ9~+z#B;G9(^}zzb>r)6Q<=JnIhM3j&wh6|^q__i2pzm-ojd4!eQ72ph zVaJ2%z>s>fHE_Fq2-6lfX~FC8l?;+3-&pt6y`9uvE2#D9cQqgB3}n1s650MDs0K48 z`2h6ZRajolu{r^dG3H0v*21nn+0iLx1e}FHx*-# zki3pEW@L)I8soY7%p~XDE!{N8{f92M31+4hx>Xm?KeIjm&yW}O@^mrQVER?s&%m$= zFznOzw?YEsvSg%J+v+_0^%@Dt22dil+eEprOE0&!5>oR|l$)MTa2Nz*Qwn4CPZpkNYrk(cF0MOVn%{L7EgoF+PC z2d+GN8W3R!v&M11Tt(HfUY5i)G$maXTDY;MM+@h|+KkbCohM}GOymw&8RMKB$7JP< zO>7-d5~3^)3KC9ObR^sk)2fZ&cG#tNK_%CVq{YXl$*x(caoAZlCgXBIRbpbLzkg+7 zQe^;f&Go7%;JwHx)=NDgek7{m+i))FMC=XP{fE8ukD1L7!h7X&lj^ zX&T;XP~Ly_N9X)4K>I}apha<5O|1SasQ=L~jT{}2X8>q^gW|t?s1=tQ8*0Q%D{wm8 ze|A=D?*YDslY3y7^g>4u(1%FpJz&gsHFEqrqfOky-WGKD&lYhbffIKO_cs8!#};yI zb7TkZM!*pt?)V%-wkWL*UUKeOE&rnq1iU9Rq50suDx7cw|LA|L+~5;rV5=`{EaeMA zd8L+6HA2HTU0`#9dgydZu`Coaag=ZOnZwDq`aKw^Mco#JJ)N%ne9C`nS31gv=wc&F z+SEoCwGI3wHH7fG7wW|BglAkQ;p!+LKwHJ`4fYb+iZuba^iGm4EkSx0Fl7&+Z~G1D z4EnYm=V6bHgoBitzwmikzFTCFR_E(0_dWE^>?YJI~G6@5_Y7M$XTo zL$m+)y-XeRr1F2-))bCewETbB+f>-G774&CEqgYHJ_Fl-oI|)0*8sHt$;~;4gZ4l8 zI+yAeJiwYWAd`1rVa20AQPV&jA+}->C&(e?`VCo6Zs--D*pVwjUG{K-_TBjTwO zblXZ8`MP7XNqV)3_B{xE)USPSiCrIgvx(NGEGHz>19avHFPp94f|Q*D9dUoAV&aaG zZ^TzPsxTX?x8}^5P1hEy3k%g9&+iDYI1>+*O&D>X&2zk8P@pa@=9H`VIRoFM#tP~wJX6~5ZeWownviuh+HC1r(r2l#u3(pBl{k>>6m9`3v=Bum;XO@y``D=ot{ zU9f&B*zW0wUhGc$OP67Zlzk;d9l~wVN}!6Xtx?+5RbLyMzC6&y5s?7_ zkr9Emef#$A?dS*xRU-9l3zkm88v{V#d=K%iUVDMh>mKZw1Hxj1I{3bOf<4p%9D9`{ z4f79*5{Ymaj2)Iy+sepuI4sOMHhy4?b6xI+A27- zYuC=5ts&G>l-ZBO(g%>LP0%M`DL8RMnG=(g9}}(4qy64|^G#l}2eK~3JOg~mbnJx1 zo{Neu%`4ZQ)8tauG_4Cc%|jacNS-HFgLjH~f*vBF((5{|;~_YGpSBYLe%OhSF6ZZxjmVF3rgh{;e>u~eD4(+Z zV>m9eh??SD8DJc^gx_a*>wWSXjtCG>m{-RW=GE$=d(sQzi0_-^S}63-IcNr_52A=H(4OP1Gx@Q;E(DOSwA3QArrjNA=5r&T?OrUSh`@`^TS-i z$iweV%T2!*Kjc)W)?V~lCv~TL_d4-b`RU#PW(o8r;usi}4HP2cRV$(r?`_2&FN0jt zCYYx4chgPD7P%C@L$gpiMAFGFUbEpLyKknYDMQrikVA;l(n6GJybp0I1hvQcE-pCz z;XCveVltNZ8ty?el2_Y9ww?Zfvh=45#YvgEamd*)IM07OVaPR9b~@$x+~t8U)@P0e z*IxY8p~5(vJk(b^w4A)E{g59tgwu!K;wKLk-~mbJj|<}C3Qy?HAR?Z+(~0QFyu75O z{QM+w7*RlgudfK&q`bUjo}82~#~Ob>Uw?mJKYxA9u`N9(T>*uGE6cvive&ZkSLVF| ze@W?v{9N{y)cHwr2TA@MdMolbboZb%?!8F<)(+8-*Wm2PUD)uvciSUo0*wn~E!hi= zvnwo7`GkWA$0x!GT;8b3ml;5b*pC2%k$IE-Q1`XN$9(BrUC3DB0PE@(a)+;VA8J1| zt7wwl%_mIp_=f$Y{H(;7x~Az(@wT?Td&Q*>i)pTpO)SZZ>($%dCO)GO5cF!hO%Kw| z{1gVlJIh0b*+&GW71VMf2tG~^ezG~EdinBItExWx?BkCe{pL+0D^4A?zUz_bQRflo zb#bq6qEDT7qW4ylPe114#1%hT7$?>epQX7404^xp{)HemyQ8{xjl_`?Cp0Da!uFjf8Tn40%AD=!zO>#z*myT4Y#Kfh59>KH3?mj9swv>Cy(j)K{HQ~FUEKv>L zli+6V0&6_uiZ@Hk-uH{uq=arv!m?~=Vr5ec-5RbvMm*t7+tx;ywiQO%KZqHy0a=*- zhW>Ct9sCSGC)HCbAnrHNu}Q?*ivE_F_Pq9X=}=hhGRGthE!Ez7J~gvyMRm=JDq^(A zTb*e=e^Alnl$0rjgXUXjs=XKW<3|FlYT)<@fW*8T{&d`nKvJONbv_%AI$#_VYOpXH zCQBVwPSkT%&0A$TZwwl^IJfntM=ktt;yp(?R>#EEJCm6vxl0BQT2o#AT5-&p0ROmn zU$WB6H!$#BUXKTSr+Pwn+KaE9b@ozTs)69&l#*X+rFL{hQJ12Dv_i{&1 z;QJ?EVcc-0C0yW{6C>k^ZR=EGyNT?$h@(dqrlry5)`irVj|4uCeuqKv>^%BiZn<^~ z=Ftu6)_HUU51fB_wtY`NM){c6h!e4b>nEJ-3C{QVSi1{*zWyK)+6hDfR{1<_);>tn z-cB2g?PcbTye7;t3G@X& zK*Ef*J^dyn^qD^bA8e?9GVGLlK+$ekgBjMhJLzI_7yYX{Z(U}FvZ_(HzXOXD1>Xgu z^VZdW9)*9ZhbENvOAO9(w<}O46_?@4&9*Q^dp_36S=rak&)1C%z>iCul|z^lxtp7k zoUiov3FWaWz&HGgx2unjuZO!2;Xl4^o<4xT?Ksv`cd<3^IgH_Y~%w+3M z=C*c<3X_Z!84y%iO#C^5_4`N>AHOk&A=K5&zEkqgvca;NvCU*OLJ1--;i?x>f> zKaW)1zkl!Ef(7%D6YD-I zVgI){?cY*}b3&wR-vw?sW3DG*np2w8RK6qpu5LH8*aT^~IXqbJJOu3706X_kx-%7C zd-N3j zNu0}6VsI)GYoh-+kLeQuMM2vz;KN%7DY&`~_6!y@HJN9cRa5VlVr^$mi-DxCw2aJ` zOcZDjuBjB*R!^={54;Ch2-Z4O_`pGjs@F*!q zs>Vz@`#xz56c~c5+Nx)RrrL4 zz>XSJx{B~VY9d`lO<39()@88Pm#ckMl%TIW#8be^F%2-RK~c^e(~=8*xiy$6OvpII zeC7O*c7lCHe6PfnPbmWLd;?qi)*@~ZQyF7MRq6VIENV_v6$La8{(z>(M`m{J*JV;| z!oaACmx@#$#KuM`Lt?!%0y3-93gRQmo5KfZXt&hbd*+0i277x30VYu=RzXnxa35QV zDlqTp)3Ne(k^Ly1NxzG9;d}c``cX)>!pHXMbY4EzGyg3AN0cMH%jEn52f@$<@tx$* z1^rX&h_&&v=+NmNxp!APPHqW3WOeU^L1Kxje@t|R(##JB zb7uJaWq4WJbhq+Sf_eHmXnm41!`xzB)RB={oWDh&vu)`SzTPK7LK8$L#AVE~Vir)5 z&gD20GC6~mk=Q|rjpGU$Ucn(aeTi9Vb68YLX-4+Y(BYNIFV@b*v5ov>%E$0iKg_Ka z`u#Ld?OhY@GbUv9gc&0S&g!Hw&QD1#$V+M1rQJuC?;;yUH4Yj-tRW^VFEuSM;ZRoU zK|UrTVQKXM?TDR~`rQ$-P88ehxi+*NaY{0Ma8ztdTKe$V>~Cwo^9YD9EzQgiPxx5@QXK-rodn5J{x?GUfk^lm#4POhcce4vIaa`Cux$!w#eBt5 z#rujc6x$WIj4X{*MioXAj6O9c#tp`kj8__OGrntLhP|1?Om>*u>g3sJM5ooAemAu@ ztutL_y03Gm&Iz4obpE*WVKZwpwb^{LpUm!d3GFhb%Z4s@x;k~u>bk7!v2J$V)ZM0b z+u7Zr`>5_~x_{YyYxlj~k9EJ){ciUsJv#L$?6JJZ4?X@eSD1&GPceVj{IZ3ug}X(t zMXW`JMYF{Mi=QlxSoXBcupDf;!t#7iho0FzC-i)w=WZ)v6=hXp^{Ul!t3Rw0tw&i; zwVrFe*m||~r`9{H@7dVcq}UYL469n*>h0e<%huf1$2QBh(sr|*tzDYki*_gbnD-gfXK|lv_U`tT_HWytbMSO1b(ra} zuP^DF(|2Cq^^OY149C|Te{nK}NK@pr)M>A?nRBu87cOotuej`Y?dCej^*gt&Zeec2 z-6pwx;f{|~yH9jq@BX9vFYc$^uX|W|#CS~dc*$eGXID?9=P=K&JRf-ld)0dl_xi-^ zhIeo80`DsC?|l0DO!N89=aFxU?{UAm{*L~${BH+T2K*4%Bk+ZwoU|w+E+`NPN zuK88@@8{ny$S7D;aH8N!VR+%HqHaac740uhE?!vNR+3OMyW~=7KP`B{yJW}Iesg-bYKKTX(muzWlK=Y3oXA5R}Eh={QihRBMyu#A9-U` z@~GvbEl0mR#(T_%W3$G-|D3~fL!R3-&U@U_@twvmn&2~G=7h%+^Cx~jsn?{pCMQka zF-0|H?3C?Ov{NglzBl#aw76+6P5Whf@bt;k_snpb5j5lF8CPdKn5mh$?s=EzmCrAn zWj<@ttlwYAdZFxvy)VYS`1*@~yfkcf_t|4+U!GGkXV2V#xgWnA^YXj%Ear`!cWHj= z{LdDIEqHIi-B(gxS@Ft^g^>%FEpl5lZ_(XXpL_NEYhz#A|GM+*Z@m8SjhZ($Ep}Tx zVev0ZIxneRa_i0cOM5LHzI5->V{b*i_1-e`WzR3W_;$hDXWvP9=e>8d%f~FgzM^c! z=9P{sSFTd6TDdxW^{RLKygTvTBkyItxAy%W@4xl_nl&bCEZ2-#bKrxp50`|6TKTZQ6D7C%c~_e#-i3!cRZ#?zOvi zcgyaVcYnBh-|h>$@9zF$REvf#*DN6!3egn!Pz7W_K<*ImEf zIZBWAKRWa1v12C39FGMY3p+Ob*!*MP96NCAuj9(&@yF|qPdYy9_^RWdA3t;a&lAok zDo%WU;_8V9C)!S$owPaWax&m#;mOxet~~k4$qgrWoIH5)%*o$QK0M`g%I{RfsgzUs zrz%f1o|hWol)83~?ot}Dn?&-y+SD*g$^u{xN&QzQkbY|3v-1pZ1~yav%}AReRkW~{bx^{y>j;cInQ&-b8+V~&y}95 zJ-6uG$#YlFJvi5P-t4^1d6)A6=f|9%e16mUpUxjXfA0Lv^M74XT=2gz=EC#~^Dex3 z;k^r=U)X%1?P9^js*8;mM_-(Jaqh)8E`D?I+Qr{5kxL$zGB1^0s=YMj(vnNxTsm~= z{^jnMy)P$T&beHEdD7*NE`NJ@`{e_dPhP%y`N8G3D`r+0Xv6xV#N^}jac+LCMUUi<9Yrfa*d9lmz%+RbZ!T~}Q1aXsn!`0KN- zFTDQt^$)Ipb^ZJ6d#@k6e(Cz%>yLj^{?`AuA-|3N?Z+DyH-c_d-B@&E>5UI>Y`n4k z#@QQx+_bwHd9&{3*qifizIpS#o1fp@d~^5BUvFNxdHd$0TgJC6ZrR`Rz7=*W`Bwg| z%3CeBX54!1*1B5R#r(0r%$LTY7KZy>0jQ-#d5j@B1$IL+{7kZ@fSK{%iNw z-rs%y#{I_+R1Xp!WIyQlp#H(|2a_J`eQ@l-rQd^p*Zltc@8A6X8<#UAeB1S8{=pyn zcaQ!9c86<7k&dnYU^97e^1vVYT^IAU83K!zG8E-f22E}| zB|===Wmb*Qif|ZVCc?{Ym+4$ND5{Ykf#0(j`I@-5UDkypNz!6_B)G;VjaE5Y!0y2;NAWjj#$K7GWCF$`F5zpp|kd z;Dvo8pIITEk7vgbe}>pj%3>C{K9697`xgn>)7KCyai4+s3WAfQW@tw{JlAoJ z`rGT{Wugpv0Rd%@a|rL@8t{^x$P0L>GeQJHUxa7ir6I_N`pGdFUh2 z-bT zUrk3zu_PY4s5nW9GaZBIXvq_4=~%6&<0NY*I#!CNW2AJ2qm)Z-0X|#k3vNlv6va|D z@+eWxb%d#O4nI4jEuHr{$_+Ne*}wMTJmAM0u=BR?zSj3)39i3EFzmxn-0S=BQ@m%; zhwc66F8PW6YeHTfJ{0I@K}WiNQ&{8K|D~@C;1Yec7P$W(`-;QG`-$9_{GRP6W)3)X z^uqgxIka6iKBfy8S4Ne%4nsT%F=#}QitB}Kmrc?Te~#D`@l^!i${1zwSX_UJdmg^R zJ?PNb5}_-ue?~kJ@nXC?2G>1s?INj-?@DUL1%y?&?t^E~Bcvm&ldny0Auq4HNEdb^ zKA;P85c2?Bi|{>S9)1P9A0muHXu~~dR$-4Y8D*6txZ#?&6}VNPuM{ZH7;RRZL;$_> zV3dTo3gHUE4+wh^c>bXXPjmr&s`w3IEAki1!MHQxX}W+hC)y(6eiQx3Y2NQ3o&qJydQ!0cfKwpBVLcRS9Ng^$^gw6U&8$aIT-Cg8iL|6 z(m`Lw@8I4S@!v?hh=6yEz_*Rx0vvxKMxQA#eiX(CjtG76{4ip)Utxyp62!w1DiQuf z;IJ>ndp>e70$(-yNDjuG5TgyoxaYwL^kF;*!2|*0OK~0H9FMY(eke}ME( zxc(8bJ!0@vBM#3Q#Goz3GQ`dZyq-XWlL+V!wgP?m1o`IxS7Q;!BF`d(Q@Q}yj8c&o z?d0t-Dn)o5@B&{(Oc!kMUM;RcgGL(=&<3OFNOM7%-nh;{emBG@L-7T|W&}Pi@l1jK zW}o5uu2jwgvzPpg>ZEe;pmN0?gon8IL;MGxzo~m3j_W~q2Z8sW@klvVC=jC_<4JPN z>oG1s`48p5$2F%7W6-h~cXmi`MLD(@O&k%cd{7N3A*HSp*}D^N4~{j z`2Tb8mdc1L^r33V56zGt{*=7wMOZoBkzB|QX()mdxgy2T5Aj8v9XLtQ13TRgO1|Wj zr21dw5$Oo>cfx6NK2i}hgs`YcRkVxb#{Pf|v=a5!OW8~z`M|Ftn_{mO`3v`*asMUk z-w%;yA$ieKq<@O^O5ATjY=P%Vhlc^|?rOh?A*_OBm-xh zWx>++C))Bn;3$Fz!ePMD17|vKM|oe0_k#hKJ8`X}SLz8`pB7=~A*9MN9h7lr|Sf%>v}pNMwzx_SEzV$pWg|7Vp^ig2_8V@S}k9A~!Q^Kk{*7URn>##j^d&f{UAd)~(! z*Z*V8$0r{nVtn%c(2rA$6)|27V!)hCvf2(X(54~_u7!Up45}{Ls}We$PURvU-z?ddtY)`^f2-GU93Y#V;y!9_HxuCZD`YyiSVGC zh&rpl6P+=BU9fg|ODd!(k}tc3@!kvfy`*4rTQX%nQg0S3^`b4X%%e}?1=pKdqMd&O zuhIC@&>E>Hc&-Qe3F|oztRcZ$`4|Rov&3F&Ct}ogobwF$>eQ1qDFY#sdSfg{q0CsE zykQQD`gicb*ayqyZP>jxfu_MIht+;AILSLB?G&pX(`EiH(I!6!yT>d9m>pDZM;IPIz*-AH%RpXh0} z)s&ftG#F-7) z-S$4Fu-)=M4x5v-oOC7*#FK=Q2$Dsr@clau8@G0G*meN6V}OmA8ku%6?QUvmYGvwe z8f2<6jW$g)%>-;^rUOhH1Z-0sHagsQ_{*`2qordn$3BjZ0=5VpZ0r94n>k?X-40uw zfQ~;31zT^k;0T~LIF@;L^CF~l0C|dKd_0R5q z!js}p%x?Ve&xnV2@!R`P+lMPI=U=wFboJ83b2BdPzPR(^j*CBD+;(yO#m_FTIeYnH zf+SrGzHs`&&lmPy`0@Px^LNf)J%8o=rSs>{pE-Z<{MYB-Isev~@Do3p(q}15uIIn} z4#l%(*z)DSW<)L0bZM5jm49`Q{$s>T_}~7PQjN2C*nLX zYs}HTV8gYA*MKu@ihU&)(esleGtfXEjLbRGTxlM@Va)%`A!C7>74Qtgh~@OnuL;Us zsk^4Q{#193uewQ_b=L}%{YZChBy|Q4lHWDPxaXc)yqr#wJNTn~Z7Nle2Hmw8( z>#oF^JkeculR_Ck<(I!}DSg6<3}d5y&3f{Fg~4==LkW~f%q2!7{Z?^*AblBu;h-sPs8K)Oulphc_W}{Mh!)1L5sjx z>Qk-C5tyq+8y(>FP$I9%t6w`J_|T0Al1 zRReRpH@yCVX`Wh#XB?tYI(VMOu^#`tcN;~2acFsNNBCq9LywG-#tLXSlyZ)th-(2Y z@Bezy4!O_j0kb3W%XCtR9?8OeuD}9^wWH*$r%K>$EI~<}UK&O1jyQwJUj&)%{;gg; zG}QuYje-hlbl4n=ayT50fSlKxAmxkeQJ_G_e_&}OTEns3f_FxuUJk`j#GHZ$f(mm{ zLe~FpZ<&Uh`kBT{j;8*YsS-@XFh>PoE}%%UGR?%VjcFEUFcq$Pnqrh;?(i^;!?ReV z>hq-`-5)9bropE2b($!l56a9&Y9BmvMV@fnsZ3o(sw=JoaUI)Ua=0kNQ@E)anzVG<(>VnlEfC+S2?F)NypE~G2zM!Iu9Tw*~iNl*CgS`!=6i}WV8kVEyYp9J8m=|LnIr-_6R6=Z`j5)Szw65l(I zCNU%yUzCd{2_%sukz|rWQb`&ln{<*vG9g1`lN|V_P>Z+PUOqG7mD$0`dyvm__7O@)~)a zyg?R|CFD(&U0%Gx9n4 zf_zE7B43kl$hTxY*+9M{8_6cJnQS3j$@gR%q>=69N3w(LB)jmn-rZym*-Q43{p4qI zfc!!Zl0)P$If9)mN69gAoScA1^eJ+hoFQk)IdYy{AQ#Cca+zEqSIISUo%}{_kelQd zxlQhnyW}3ZPacrp$sgn)`IG!b{w9yeWAcQw5-n+i?<}E|GOD0P@VGUhov118OwDK) z+Ld;r-SKT)b9l*F!YAE|T2mXybG_lqWk>r^d+GomEJu8q!I`>1o^_+{@SpOeUeufV z;Cm2$kh214APu6y`07arzFihd!*Jq81dYTO4x(ucB(XTiV+oMTl4vrdvs9W!)ifQl zS|-h+*^t_DA-m;6f-9s&I0d5wXT_C4o-D_CeigKmR?+@Am93iA&{|qY>uCcWNC(kI zI+zZjLunIjro(6pP6`(-U=?r*3Jx^!R z7wC)hCCK-4=v;gWZXTUa7tmMeLb?e4@vqU>=^OY?|rm(jQBJ9If+L08gM zbTxgKzDM7uYv>0!WA{V)5&f8cLf6qx>1XtF`UU-xenr2g-_URAdb$C=^Bd_Vx|wdF zTj}?78~uT9r$0hU-br^sQr=DX;0xgU=zjV$JwSiKj*mn1Fm_G+N{?dK?s0koU*JAP zPt!9vJ?b1iPcP7m^b);Huh6UX8oiD^5jW^fdW+u1nYMT7J)FSyfc{SZpbzPv^e_51 zeMBGAC$yDnX&WE%zLSZmc`&!OWQjvt&IP_GvO`bXad@ z%j{SmX3rd0U*?FN0?u%Nc4cnNop~@%=Ec035A$Vy%%26YKo-P;nUaMt6$@oyESyEK zNEXGSSqzJ1aV(xCutb)`l35CN@}@C0OJ^A@lV!1Nmcw#c9?OSUS|KZ9#jJ#tvNG0> zl`{>iV3n+j^=AWEHLGE@td7;Q1~!llVvTGt8^VUNCf3Y`u@*L*jbJ0$C^njnVPn~I zY#bZUCa{TY5}VAXu&Hbsn+~tHne2Hsi@m^JWG}JVYz~{tUS{*ye71nS!WObcSf?3b zEoK7A(-eNfW{{D)3K^MesVpE<_IyS{=JGI?k@?!l8IrOqG?MPvH{l6M#2c%9U(5mi zm_GwClLy1H8G;paC_GWa;Vl^nIV~Ee!No%Qjt9R_g!GvVIXqQLlhlwLG9VjeL7S3; z**6cfcLC<6BB>a1LMgs5&`&DIzQ78p5`O3Xr2$ekdsSK`&6J+Us`_c>36L5SK{pNpRoJ<6U<$;IJdD* z+JpIM7tW{oS=x&g`+l5?)*u~{4q$)5I>-cfaRS4ySp6S?RB%JOCA|dsw-Ga76K1$( zX*p)S;h53*e8y$rF_55s!@ewejc=tD(iE&YregQuO=tr)us7IZwuHUOma@07 z6H?2TvA3l*BC&Vaa<&2|U9V)T*lPAJdyl=(*02xQTK1vzm-ILLh<(gHVe8nZ>@)T` z`+|MRzG7dqZ?L*J%D!dm*#`C<+sHPt&1?(X%D$H_NEg{Q_5<6_eq=k?PPU8v#CEei zY%kk~mC9#qKl_;-V85_~><~N5j<8?ZQRx!))E;BU*$H-%onoii8FrSPW9Qigc9C6T zm)R9|m0e@k*>CKI^c}m&Zn4|!j&w!3%I-?wOv~C7l7c9xf+-XVBb+Sr1#^2jy`Z(!dML+3sV49Dd1md&;?%zXzuBMs z<~P?h_cd$QGtY`lh?FfXE%gd2!nK`w5&rWab0Kr*LKZ?63UpQ^2vi6y6>3Lm5Vej6uMBcvmy%T8sgMhs+Q7H2{c=y zYWM|87bc6VO;)IX1;WnDBfz|3xlEDJqGG|aB5^1XTA+Rs(y_d;PI*FW$C|pjzGSc=)~tNc4P1Y1Lv4F~b4&BJEu_{uz&TlaN^MJfdtL2{ zhSn90lC6rmHT5!nuCHs1wbfJX3XJyFm|PO?c{LT;w|wbOuo7aU&cIhbAp~yE&d=GjI9yBJE#5Lv-9}882 zMQR8`DhM~~2a8k>7HS8JRE`87gBVgZQeY`DR;d^%u#{K=QDPzzMuOT@2q6Kj#rjhr zI7xjFnCieHwSk4o0J#)M=|E}%Z>b0|r~uq7S|_Ole54MfDx{=Xr3Nsh0&vyxOQ4#0 zT2Eay%o`HAhKW$!3#?IMU773Dx2()MTWeQMmBy~As#zQ-w%&26_G9|#>HIja#*bfa zgZuqpUJY}hG*_1py0j9Tp{|;Id&&8lURTY0Yh7%OQfpM(^s32+=93vyl40r~eBU_3 zH}2ZYs%;9DzE=%JwSj7w(WrnJ^$z6~jv zw+^h^c85)D%eK z7@D}4HeP}43I(=33kWU2{LIR5v++ylpj@SdQj!OHFE=wXiCyk@;skR<`y4KMEeTrzm&`XT1rd}#)S$bGh%9IfM|v> zZSyfp*p8({!@x8$X0>!GnL+rMbcAZ5glLaoS|RV0T#3eqX?#qLFH;Wx5?`ps7ozc* zhwSy0XdswPQc2v2ZbZ3p(gI@I0+x{s^-yK!3k*Mh5PM^QR7?KE%dSXZ+74n8NMq}K zK~=6JOvyee2^;+ZKMIm~9T1BE^_*U&og>)qi?cdn2``$XB zq}|ArG@HbgOG?9H;$dC1^0g7IT{BT;D<7jqXM!?2wlHj;^Lx2AE9ukXk_!x5NFmx* zLUhnVw1vbZ44F{oUrc8|5{pOj^NWigN%NiVqO{`J0lFB6r?qX`2KzzFm zS59jXyqx@!DGWc9wp@8UjP|N>o4ImZnUteM>OgL-Oj2?U8PA%Ee`^r0xPx{xLTI&! zSuAsagy7$gq`d(@z0qLWsYJqP`{&!KA44yPN%qJzL^GYw#VAU??V}i4<6_#3=i8#@ z(_1x`t$(ckaLu=+&9~Rbh}*T_=1X=odF@L?(jvthPZII7BL$EP_?Mk;vo+t&zVmG+ z=G%(Epns6+d^?0NNQAl+q8$gK#SjxODqNX%KV{k_=G$4^?=JK0EHIy9laKj+#xd=c zv>1zRKID#(;?~q>TQpp$9fTNok{ZN!FOt+sZJS_dBbNHzO-${7r84JI9x?rR+9L>{ z#S)W*HKlk!TO*~mM`HN#wAD(bIyAI)P``;vZIfZd)6%)Qw5D1vufetKr8OG4+Lm2b zPxw{a+N!plq?#ZUljWwa6vfn%LG+d83+`&X2HXRk>8 z+RV)Ny`&dem$+&3T`4y@DonC1QC+Sf+S72+`mMB`LJOneb;`j?!Wz+^n8n49XnO+= zes8F>qeX69nu1Onc0DRt^E*YQUBk$tSJUNX%%S?A+8vV`?PkwXAAsu3McLvu1JuJ20^oE9#otlUFzz zEnE?ksI}H8B%N4$;%qEeY4DkzC{gCa-c- z3zD9Z;hUM!x$O;&wRO=3H4^9gxoGfBsfP570zY(N;#~iV4Zf-VnNzKQW>&N`wxXlG zF50Mu@0#zM1<_KQzeY78rDQ772t>SxV~X#dZ{uYYOph*N^OV7{)*6d!4%VvCXHjiKU29!iLtCGAe>9gldkIe39Z4t+eNvv$FsaefPPtR0)ddAc~b#3kRWp+W;C1a8{ zcSc6Kb}!87ee1ebG{%}HwzW-4PhQc|)D%f;}!-eWw+tAriTW6EMuA`;BuCZ=qyIKdRwN-YE z)lOu*YnL~=5QE|_y@C4GH8wV^p<*>kREv|*H>R~NPH^pc$_K`JyNEjUkHuTV536;r zJjI{$e2eXeYDtbs_w^%ar&r!T)4zHMpa~LMTd?^zk~xe1Ml_o|NKA0_Y;5lKRb-+k*~s;o{ft4fqRfGYDA8xi{CB$ZZ~&%V<_iFFzUj|Y&Gm)SviA0f?X-7_GDOaoK*Np83WL)k*o@E2SO~|ZlMLuOG zvM9Ux-;eCcLF7!1Aye`;@*^ksokT|DwAYP9NHWqNLy+`HMXF;g(j1eKvY5eJ?_4A` zN|DOA8VQVAq%GF)>qMgBHl!!+4&TF@`ulk^zm50rd-y%e?|I&-zsS4vBm7?DJ^4Gl z6aSd^-e+V$@}@c(Nr?<%{FF(Jn+1yhDTsWK;P=(#HsucrMw->7E&M%ve=msK2Wa+b zn2QvzQ#_@pX;M3q{=X~!TJg{7yGtY;)#qS83*A;J4{Ho#+#a9&HQG8P{{I22_#S?;&6y=WyCVWl# zSJZv1AfpE~nxAk#uu&@BziWioaJpEXY@Yzyz&_@QdnRDu^VJ z#9A*H8Ls$C#Sa7%)(M6mQkN$bHMimCgd<@kv0heOtC*%(t$3&6Hx;$56RLzqpH>&` z50NtA;hE}kx#CuJ`IGYJl|QO@m7;C^&y{PPN5(0)<R9t4^?TCiw$7v`Ns;hUO3jnzqFds_x^b0yegS@( zezP0?1~n*Gl{iwu!`SH$5?XDx5A4KUdXu!UqoLlE z+O~q<22u_wvDE27(v{jf#=rEYx3NhsnG(le!0-HZVFOV*KaAv3{Gyd%sFFQX&h zaGyQQ%ybE7D@{TfC-V&VSZ3L9ruc>%ykF@ocnII2;v0F_dl~+T_aeBDldLAXRN{tz z>-`enzJk#WoRTwI-+?Uj z2D1tO%}6=#jLwOcMk|nO-W$CpS{uDKdM&cdFCe#k*c^-AjcoGU(Jj$!=D0Z#eHO{% z)22Im#EV4VM5=gT^kZ*G^bBjdROEywCJsd^ct&EHmzy}ro0FKGIFUhaJ&8{vi@PQ9B_wZmd3zGyLb~>O zBxw&Ne&!uX@{pH((|ZSr*pHLOc&EZC-WjA_qv4dKLL^#;hDRn*u^e=4BY1mH1Gq-rAMGjB@b7}V_)@5( zJQ{wghn7t^Pf|wP1v!cQRnkn@B3F-oRa~MsO0N105|>E5VEA6id3cxjhHn<%@Chx; z-Q9mAQ?!a8+XsQ9?zBZBB) zk{TW%7@4TyCurXOu2(6QyhWbTYgI}3=pxPYZ#8_GxOhjEUoLfsRtBk=hc%t&)%WS1 zXK{H{N*7Mj941NYgrj@GZJ%>%t$gD*|~^w4$MQGWbo%8nSpr5n8R96=Nrxu`11@W1ej-J zmf^QW<{4%gooC{+46^x0bdK?78D#AJ83yTjond5tk-0_Y6`56#Vqb#9`Z6Td8<9%y zLIVAEq|NU_f_Z&-WB38g?fjlVQh6T|$uA*!e3akoNEN>q{wVwjQo^5cUeTDAo|E89 zoWwNdHl)c7ACJ2NT&?a~WJki=#*Tq8bv>KlA0r7azT&c_XDKchQO}ajH^7%TA4EDm zzXZR6mJkWK4&2i72qDi!UjiuMy=^^r<6hVE75K+JXFyrq8n0Y10d3celMcxbdo|*c zByl5hB9u8xUGA4$MQ@TY(Y2D>K7GX{{HlhGDgU;VD>A;DJVc5lR(P9)N4p8(BiRx% z{DGGJ>pe5c&s{yUxZ;I;%UAL*d_Yfs`0DPTD*g(5zxxm1mhM;ZO%jgmyQH~Q>Mi_r zNg4gq)LZxw&F8I}ldovbQ-w3r<&eThJ=}}KleJDv&tF)ta(1JVF*Iad`EpNv~{|Ld;id!tk)}^Cs&NzDDIIDH2fW!pO>_j7O3xIinfLy zP~Ul)+WCT!mo*(ZX<#B_H04v8lOic2bEUM)gPL-g#Eo91HSns&EfyE=73G&p7$noB zL=R|cKUUwT<*V_0c};xzj<}%oAMO^kLYQx43iccTZ}M{@A+^+KNRq2hRrg(znz^GV z7vB`UBR(PAe1mo*2LH*Sjb275xX+iZ`+T)J-^xDU078YCJ^HW6@ZVcqi#t=?3U&vnF#mvo@vgg(tPWA?qIOWlw(;b63_dJaK z$y82ojHRTU++e@3%?vyXSJyY2VXeiKJxsPk=SDO0P0LostY5rfBVY+Y$B5JO23F2h4 z4i|@=vGxwLQEOk$iw}e`JMk|qCv9g`If9XOD4cIs>oYN58NrsQsPhU;eB@k>_zY6C zcT;IszBeY$%9vw}q$ev~I;k@GN`pK-8+yQG_Crr_GBMXI;aTe0@X>_36UQc>8d^3o zZRCcL+eaR`Xy2&NsO6)MT>Lb;4YE_qQ(IHlrQV;qJ#}yDi>XIb-%kBF^|R5*qlb*zhB4~#xG`s2}`r47{HVprZP=_^C%ZR5E5Om=B2 zIDI2Mt(Y?1qHL~XC63K=tkkjjj+HsKz-LMHQaM93Ue654u5j;qBb6}8fy)MB-`wkiHpnrQ z@fvEnlT#;mbFO3?d)m))BIq^tmOl=iVK;dYZ7_}#pZV+{FJbqzm0i=j*e{jc(tYf4 z9_94nN9I#@GnuJLTfQT9Gi4IKF~IK&@J#{!-2lHoz`qyZ4+Qvw0lqoF9}4g-0se4+ zKN8^I5Adx4{%C-23-HGRe0zZJ2=JW&{(}JD72uBt_!9yCWPpn{g?Jr472taU{D%Sl zbbvn-;Clo7M*;q9fXjE+;@6TdW(oIbyEM+Ng;ZN!a)+DTeD0elBL`1g<8u6?dtuO+?jD#t1u zt8{FkW7Uo=a_nly7CUy0V>ON~b8NX|D;%qJtj@8Oj;(U6-mwP9Ry)?{Sd(MTj-ASchYsj;(d9OPRbMOQY38dNy%vZ>yU-b5LymF&@I&5Bea0*@khA7#oFkuR@`s<~ZB(^c#_8^MV`tT$ zxU27X>^aAtckF;;KXdE_$A0eEi;n%$u|tmi%CTQNcG$639XsOKZyY=7*uOh=%(34( z_L^hAbL@4;{=>1~JNBkye{k$A$Ntl?x0QMHb=iw%ONf6RXPo&g<+SH^X7K&ICp^L% z!uOcNPxDZp!ioP;%;J+dsb9<~eDtjF&hG}^e%;ME_(wS7zSkV!wE8jT@(+2w`iv9g z19>l%#>ww#oa!#+P1G`;r`kDbeJ49(5Agi7o72xP^2X_Pc4kg^pRyy9%-Q0RykE-T zDQOPpeV6b~shMY^+rq5>$>+V~oV^6tM#t`RY?EW(b?kn}zUSBjjy>quX2%|KY>Q(L zJNAfU-*;@QV~;wv&9TQE+wRy7$96jQ1IKnb_PAqDIQFDtyB&MVu|1Cc(6Of-d&aT7 zj{V57XC3>oWBVMF5oYUNMwn$X!Yq>!X4y|2ld)#qWUN^xW6d%dYnI7av+Ng+z2w-- zjvaJN#-xoQW70Aila{^Wn2b*ACZp3b8J(8N=(J2mr)4raEtAn{nT$@$WOQ04qth}O zotDYyv`j{)Wp6kp(Cx6!WVBa$-k(9A187Z|X8&kHY97_2lh{@QcjhM_38I$yyL80}~~GEyS6{Iqxw05ILOc z7Be^W56s3;4y*VuAts6*63j^^qGl#<%f!9|i3PcWbCzAcsdgI73H=?M#Yu3Fe0&Dx@l@e)&i>Ef zR?feBTsM&?njw@tmFK>RXst}d^%9c=W}0L$%k%}aO+PTl3;=V@Iba@7Fk^@@m3571 z$Eo10;5F2MNNRNU)|(kd`IZxNxSF|U1m+6tqcB%t4koQJ<~;CHGXxxO&IdElh(-C# z1>jV3A(&-Gf-}rT;FacLFx#YpIVKI9WiA18%^0wNl#_U>9c(VemSx6**=W*}8j0fW zN^2$%vYJ@q@Vm^62gjMq!7MWo%r;km?1yk5eUh>PJpYX4$z&=uoX^UyjGnS2w2b?G zBWL})%v91_M2@o5%rzOrN;8?@cry*0fWA;#(_9HoGTC6J$pNRBnP8Tg1f-)7TYe zKA2<5z+9L50`)0ZpR3fTH}wkalT0O;ZmKlILJbkmS+)8sQlG2UCy8D%l--9kR<&Ah zW-;y)%@Xhm^CfVSSqi3`FM}E88Zg_`fH`Ivn9Ht&?O|oK)HT#}Grj8;^gFEMiER`2 z^sUGN?PguIAI$&<(bI5@d;8mFIprxQjaoHxO#>#Q(p;-%u4%%QUMSxqWYijwx2nf} zJ!T8FE7Dml*l$!b*Tl$6npp{6V(P(6vl^UiWc`_Cn!#!4`DFZ=RxsPNgE^)XoW+-k zr475l0#gUhF)P4(%_?xCX#wRq$+qoH*s{#cU=Hg)DSrwzFp7~jf$=|$u~vv?jB@H? zsrd^2V|b@7Bj+}73K}(KwA>D6nSTRkn6H6XvM!Z8eI3j(cY(R)R`5P^2lxYaFH(3u z)~lFx^Fy6ArQW~Ib<3$Ac@ma(k|*C9?DC|$ z47)t#E+gOaBpbt&C)ee;%aiJI?DAwP`IaY3nN{Seaux3K6e;P;)1l11@-!&zx}MUc znGN7&<~!gxBln|;e1lbbPELz-eYXINj_7uQZQ?+2%Ts2=evGL{ns-p+j-u()s9Q^8*(o5;A@!DI)A`i zjr~>97;lb(6O61vGR-k?iuo-#)%*_3GOvR(jI1-RG_tbDLC>mO|1B^VUCnYAdmAh; zN5FaJ4RBXre)}W#Eb|VSW8MR2nfJk5c0y(5o))a(f4*CV?l*GZUP;`)VoFc?FEw+` zaZ<@NAAnQLhhUcZ6FANM8JvOsSjq26Fx&hM%rU3HS?0gNT=OZIXZ{B)Kx?-2iI2b? zeD#Cz$M<-p1hUJQV&smUWzK*(?Cwf#iy0SRcxU}rD-ynMqH~|u2a~bGTMey!?>x*# zdiUp~o`!Z><}xn?j`0jQ-V1{hy$E=PmjF)kqF}n02xfXo;AAfuoZ_W`)4YD*bgw@+ z!y5oz=?w(4Jy{*(c!R)M-e54-8v+)1=Yxfw2hQ{Qg4=ZF@$V1bP+YRmuPt$hfwRy* zE^#je3;*>jh!$c><6Q(^=8Xc!c^88dy;LyM8x3Z8X<)W@37F%J0cUxag1O#UFwYwa zqD$EI52Az3E_%Hv`N?SFjh#_r`(udY6L_p{3jlZSkgnJGhf(Fh}Hb2dD_H zJGdX-j*g@CJUc#sWbAgd7(LDN?}5-u-b`{+PP(!tVlMG!tC{P`YC`&ke0^AQn@##@ zXf&5TkqeIZ^1z8+KA7pv0VjLK;1q8znB|p#)4Wn}x;G!3;gx~eUOAZKT?NkaD!^P% zRtp7Q4tTFu2yXS}fje|1=4K_Y3bzbzA(-V=gW299Fvq(ZoP{=HQj&F;w?tfZwA+3o zeVzQHF^M=K>C-uE^!lNV*6i6=LXQ(ALJt%A4! znMV42wvpbRW2B$w8tLJA=3KCVe;K_}TRBErcwS&edI@``ISdw^FE;7Y}cXE8!YQ^>|JFZvwS%^vO?&{Y9Q^^Xr8(Ny;EJR zy}rY544Sc?;|JZ1|+k%Kg6{RGnPCPAwtlt8=Qz=YmcdHAfR+3_#_4ACm2D3_ z75Xu&GmX=yxBM3oCz*GK52F3*8FV-PAM+!$45l+CY{+9S^-&t~67;2Q4E>0ms(Ujz3`s?3g*N zG7ji9^y8Jec%xzGnM+ireldD0uSKV%m5YBKt&YD%pW|D60ed*|?bE$H<`G*8*&nxk zCk-~%oM$f3_bEB-UN1$%m9vVHbOo(>=MHw=2&fW&bmDL>^aNkpGR$!v(6X zF-s-p(XME(k|aCd_9~aa#<3+o*j&U)RJ3_ss+v4SkLMLgh|NMn=Q1>GcCquffwwqY z*!}w*nke5y1LgZ@oBRtSB0;r74nwvpgT22(cK_xx&uMv*X1Xhlkt?CSP1d{@BY!4Z zLbFxx=X~}p7NODeX0&g9lM@8@qet^e)qp7y9HQg$Lo{0c&HUX9v(IQx35-VTQ>eJ@0dXFYl!f_W0=?mtqk9e~B2hUYIprCa zl|Alq<+)z& z{L2V0Pv=Rp)8VavZ3tcO#l+QH4sLLM@~kg@tJJUlEWbwI?^^X+eU@K~@7JV$&1dhC9T(yZ^^Vja!QlIrGuEkj^YS`AR(N#o$YE0hBOMb2=ysVyCjd-#`80vL`a&L}!H>jV# z)8MUD-!Ad>Zd4z_aL=8|J*qI!a<-+HxLg`alE$4`cE9fB`BhF|$*7jMSu#Il=)L1Q z=4&|^Ny}R%ZE4w09s7l2vTC!wFFSV7u~!^> z!)F5mYagk_!oa#`8|(4j5t0@f5J`ymnkz+bCFg?BSJ|tZlCT4i$9o8^yP{urkM}q9 z)t-aSSkbyEIyXNIq&6&+j4sOy&}Ml)8Z3t*(>@H@dRY}Ed&kbwN?VC`S!8lu--)tE z#OUSQMsYX!T0tbP0~6PX>igZ{$@8_}Xw&Px7!1lV=6tErgngh1|UQ59CgtsPO+u~gpux;>K1Gd{4 z!!DnpPOm*+t7i=L`YmBB_1a1qLA|z_URS_2iE-HLm&(ZNwGC#p_1dD|P1r=vC+;RP zE*|4O85a+CSyjYG``{kr?wu_vGQ9kHLrC}}?@N5o%Ib}-_3E@u_^KD7bndVt?*9V5 Ckeh!1 literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-SemiBold.ttf b/igniter/Poppins/Poppins-SemiBold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..dabf7c242e938c49fccd0cba88dc2fdccb2f65ee GIT binary patch literal 155192 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

+}kxPNz^nkw^%> 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 ScC2c0kW>GO>M literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-Thin.ttf b/igniter/Poppins/Poppins-Thin.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f5c0fdd5313d1b65ab554124ba302fca992134ca GIT binary patch literal 161600 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

^hRE%!jri#i(fAtCXoihvnOV1a$d*oFf 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 literal 0 HcmV?d00001 diff --git a/igniter/Poppins/Poppins-ThinItalic.ttf b/igniter/Poppins/Poppins-ThinItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b91008931638da058823109b2a5b45fbc96556b7 GIT binary patch literal 186992 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

xSC(aDz#4eelb?mdm86KXp3f{_$|EMmHm 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%0DYebvgP!ZVg$pEOHd181EthgKYM#Nyn0B5JvT4&% z9gYQ6=hMW(16A&00^Zo8_}7D%nH-KS^(_M;GX9!Z1_<3t+fQrLYj#YD?Nj+0LwC77 zol*bG5wcnoA9(QVNcurxufLEQS6*MfOw_OIR*PNLMJsD`!ka%{`&@l@ZRscUIY>#&@esV&#UaCHCgiviB9O>}xtlq)wdsI-WN8H`0O<cpnCxoTZY*^(rnu8KxR%p4Mhuero|M~KUG>NHEz^r{Qj1s>$D3?uw1c6ASCB)|NzsEM1moDx4?|iKv;j2W7`-g9=>N z7{OC+amg|cYWZmqHW#-ruxZ_n5y(rAq*VN3c|KSpl zcq)`LW35QGrInZG`5RMnp~V~FcUOD^Wp1skSC>VW-foj5VcDt`R9vA?xo1qxUXHy2J+2GHA=H4mO)QVp~etf)~8 zSmY>-^>Emdkluj`8tgHAdH;e1_aLx0XlNrbMxKWAA% zu&t^8q#*=d`kc#9E?QKHqyANTePAFiu&8DB5iwEx5a$+fpo^bpn!^_CM=!@(on9v{Bvk?y z%E{j*u84fMX{snSb~Yl7A{8Oi@|?oI3q+&fOe<>A2i-2*9x2{hzdjHePFnK{QMYbc zMQ6NVH>MiYL&NPW0>qJ;w2C%Cx25UYNZBmVe;W+F6*`?+=O1X)iyszb8VvrXt=*`L$LvubbFf0s7kOW z7lJsi_prshp}6u@K_yAzLn-kAR>?m)wkW?kP+=0E0lBhLGTlgE!{AQ61xpUb`{}VD zxm&>rv|FEXsRaKM4NM(Wl9+7N`|~CA9ic@Xkbc}4^D>e$HW`&ABZ600MBtFb!Uc+(3?||BCU1e?* zuwkUInAyDLGAuq2do&xyyoK79?jfMXhZIfQsUa9cN;2vKK+OSx7+ZqzL}UBc6|M>_ zk|OB@xkdQP?0e!fkcu|Qx^%$-LS`kceWmRUX_Xa4(PDI2O>O1|kGK^6GTs+r3>{g! z&(j%Yosl|p76TE>qDEeE#14x(<~omOQpTE%T_M$xh0~w@W;cYw%JL*C1~eClPo*d5 z4LY4YvAo!53b!#>Qd74Sy0jT+WpD-n$IjMQf#g!k7A^)zV^u6V1~e`gDpz_^UgPmV zJ4*cn1!@cogv>PticjUF=rsEH^yA>K4hjeeVlo&5DFF8VEPjJLUrd<*Z9bD!rmOM+ zE+49{N;T#*)G%ZgRn?{^l#~@j3(<50AUz^q{3hz8GnZxu8FlG78Ms;2G6z3m0=EFeZ!4nVdM2r-mtewvYz3jvXcOwRu3)i}PkMLQ*pD{XLwxXMS`09U; z^e6dikwG8FW%8S1K1o#x*gv4Q3rw$OVit>N^_WPWitGpyFZT#J=(YQ@yYn0BvAI`P zI-AqfM)6N>#kR6CwJuw0)cK{AB@`}Uj#jMRRc;UoK#`B~z8DY+T@0txMQT*YH6UPL z7C<#HP*u(*fRYb_uxK}yQT!0<3R4vD(ao33l*;aggdymR&GOJn}dPS4i)?GGU;xDco>+TbD)4jdx)JFA0Tke3Xt#xv( z7}#B5&lYs-O+#=22*iQ{(#eLt{y0Knf%Keo2o-3OGtUS zqcT0yIo@nG*RHV!<|S&3WyL58MoFQ31)pB;|7Ci??v;TrmamJ)$>jC8d7Vi(bmq<hD??MN1>O4QYeM8qQ8+_97=DLPu(U8pot9^;EHmhqmM$Mzv97*2$dFYWP6aVH zLu0He+ix^p0dqKB{tK!Nu=l_sb&_xRKDc!Y4fvl>jwhFwrsAPHdi3JdfP(MlBIDPcn|V$v-1Ur;Se4ho#h~ z=fnkR6H)?=0XeC;^+I7o)w<#+TmO`a7A`NgMZwjk%W}slFfmATVFnf~tEI&F+#{iw zi^sbYvpqyubFm6ks5)?)u#_C-HTb` zb3dc|i?3$gibM3>y=w34QHFkNs-#z5+euen_&*=V%n|b%w z?!M^ZVBhYax=MV$V+83*M#(hL*u6ugj9zv6u)F)q#3Q_WFK*ymn}-|t9L39c=kjxF zFJEQw>D{pQ;FNgeeq985H{NVt*6HcJe|em{`=jU{TlE6m9|yqnu*k4;|G{n7uL<&n zuK^zrd{y8B2j2bgWLHz4?55Bw6;00lr{_t_}<>4_C2NATaH_;aa zQZIoVaK>5`K6v6B1@*rjkK{|p5Fg6=w>!;&wQqvV6~ zxqE#;oke%j)#AHFBc-4TK^x>ZxVc~sQVI0vlv$Y^5e~!hHV|Tgvs~~AryQ9u4{z65 z^Z~ep!!z#-j+v6cfFKLI@a%eFCHYPa#j{#G%OXv$H zg&&V@ZM9ipbmB1<*rlIVR4>h|N>lmej#Oxaq@cX!SW%+km3c+3%5;_fq(LoouI5Hj zI-qS{rxO!PvTjT)$t=`%uGR^I?SAs3rs$%~U@5gNr>$M>Y))QMm7}5Ers#t7z_9v} z{sF%}*S^+Tvmr4j%J7gOIWO8E-!o7})U)5uekbGz&l5c{0bgnCRJfV@SPNgBAuCDftxYOOPi7w%&6Ej;105xC30eGO<}L3}XUF1hW@)BTlbD57j+p&MxJ6(g zvwTA0G^_#(9}lA@7q@QRqx8lJU(z%Gi+Npc<}l~t1Z~EyR7NFG28gB8jB09(=Y7YL-n6`i+%r+zuh~1q*+AJ@Dn`k zQl8f4=H;0|O$oV9rdbFYZP>*54Mjz^ywb+=#vZ|AG+^KKbIoGSk?nis|9sv9;C*y8 zeMESN0jD;tP0J#;+5}gE%LYoN_iL})(AtW2&bD`+YKGJ-`>H$Z@m?L z6p&p)fv}TBy^)6pE(3=-!BnnqQlykG#jo)BHJ$$E8}m2cV891vSD>uS5SWLclC3N2 zG->=v(5=KRm9g1d&wDelNs>xJ|?{N7l-_E#WpeK6PSE>E?ma4wF=+=O8vDbDVCpPGYJwe4f4gh=7P zoTwjF8LoYM6}?j>rwQj!)mAC2sBX*Xx}9}Rp|<`fu6LOO(Q_i^X-CglY?g{|j#+hc z1y~tfc+;?05YC&CrFES3ixr){V&M2NUY0HzPMI8EC(*H?;mvw+=SGvty!$M@*xJys zFI*BvRyUU#&1EBg8vmv;qtw1;?O4akp?Z^{uEEmPYziu<>>0!?HJE2C5D@^OLR>Bi zdCO(6h1xYD{aEVTA?}EgV!Gu5deRd{`d`^-e&PxGq0BVbJj|pD&&FUu?cSpeoU>iN zbAUnbu-Jt%c|(5O_KJyNwfWqw!)pbJj(1F+VNwtFRBul(SJ0b;yX3$qfRzZ$AV$oKFg={TV2MYKgV_5|71t8n%?_-M$HA$Hz@+B( zZI_3KT{ti@p$RP8+`4&0AARZGfgZK=!=}za_3*^-UNih0!m@!!UvC*2?Tw5sSzSK8 zVrl*TPp#~$OJ7zQVQXEzc|6SC(T!Q-4R}I0W(~|SGKMcju*n;3^b)yMMV}Gwn&|)) zfyf=Rp9(ct=OqZymtw8GBjhek-}UC%bsqnjXSE?0=FQ^%Vln94wIgf9z`^$FM$z=^ zt*fV0`t_X&yMx5B-m%m4;_~imFEFUq4z2m6QQSB{x79k0=Jw^Sl}1zPpi$RSWHJx0 z>uJ(OG>iq&#?BUFP-#_nlPRdQQof^SAS|%9X|&I5tgq&{{tmciz760yj}xP^f4FOY zdz`YYIJK8I_-F?>s>3hrUw~?r^y9`(ofp*;ZcIllIU%MYYPe{j-;)^OIxM-CebQ%f z|31j3)94Q*0e8CT^C-uCjf9_Yy6Jp+p)kpqIxZp3skYJhf6|gr`Kf=N|JlF){TU{f zOv8mN`TDXVQjpBUqPb2Iukv6Toruft_Wkeal@s-Vqbmt)*#7vR{wJz zaru02oi6O833|cx?OP>dMe|Tg--;QRSBMIvVzx${5;h?nyO}}72I5&6_cvz>Yzv~B zdKe3Es}(yHR?=l-iUJeV7@1eF@V3Iq*AC!q*h#50a%Dk7SJAqv!WMsvIY*4MXVfQl zT{gb+=yb;=%e>-2*GG?A`w68R1hVO-*I#^4!KsVN=(yN1OI{=cVek`6YwRb*DC! z7p|AzF&g61+ILqCpWnLc%~QsH*%)n(Zo6cB@B6!FuAUr=46Ep<+frWJj(nDXgRKIE z+p#bKSU$Lisng;}5Jmd3e8V~$JyrUJEv5hKr=AjSpXq*+{zk6HBF5pFC16D}D3#SD z*Lbr9LXp|M$B#zl0nm(U!Tpm}a?^t)^QqCR-=;av~s{w~7rvP*8$*ZyyKn&>9O1P%uHa+=!_miXV|VSBDOGgA)ooar8HiY|FD!+spMOBQB?f9 zOMcXh{|kp1GkBiz=Ul^|b6DsxmHe3UT(PtZ4cQa7qHl(o?|_--7-yUSGdLQA*c_MK z3_HuFZyTFBPm+x1O!ghvV9{1?ZSJ{xN|GNC>4;#SzICkYv}!GV{)WNniN5unSFVap zY~NPacIkxKZ}km>HM_eKn8T4F>U3pp6kEC-ms7M`gwuCPrE-0#v`Z?azbOPl%IKJU zjc{1LpEfIxkq7Y@^b%&{Jh+QZhUvEW&42cLdNck)`X5!Q)M2omK$OcuZywi;)>Txi zBvpP%ZBxKF9(=XDyS6kmSPIQ8Yt0py--V4U0iA%b@$Nr1G^a?NduV*P{7Df;RYWfg zr=#+WBC=by_Jfz09%+|wU2Jv zaQ6gOa^2nI`1HdvO~0^B`7}=--q^ma^rXY^ zTY`5(KutzvG7vv*=|g`rrZP?qo)x;!e845`y64_QSCt-Ewap+LZm$oKdR7F;FH)!c zvT*pmkbUwM%Na35gABihq(SbOH9nqOs~)v5K7m`UJpCBTkCJ)KRR^ohW8@wjNE9U@ zvaP0dGEhvf%FnM%7q$7rCB@xI(86My^PAQOiYaAzMKxI}Ki6=HHnTO|QIp+PA(=9Y zV}pYo#pxzW0%pZuIOAU`6Ng%r|?kUkp6x&Eq|34E^=E@2n!8@4Yw@HjJ@u$Us)g*{KD z3vK7hHmd)XZ9gS8&b}RB-4%4uEmqk0a`B)agA0tX$Anz@{TwOhqL6c_2@_i-ze^M7 zJ)uQ zlnccuu0)+IG|(uxcbLfsdzD6sH>iYR=?uI=g%>uFBD-8)rVcv2kqk_!4_)^w9cWY_mrW ztuEiv%or5Zw+5qeL-a8oU{8YzRZK%*{(X<)eeJIp5Ca3dF(A@%rlpMjK>?-aaOu;d z3{E!(D|{qhRHwjF00Vu@LaN6cAvTqLkTK{y5Z(ZJWB(bAtERw?YX{3u#u2fp-oamn zOOd}`HNI6t$4{+T)7`dg=}A2?k)snst=(&;CZb~8NW6M(O3Wa#VJ36uF;0ZUGR!8* zanXs8NY~Fq+|;xv78R?{0rw+QxwzSim)zJrIP*>j5{au^454=V;7EoFWrXEW^=6-m z88GR?n>x$3_8REhf+M#lN000_v)wv6?wMrwsTChD=^u1$>I6Pn8N>~kF8m-+_U3{k zEK01UmNvciD%F+Cq-A}oUaetxL?!&LvN1k*=6gXK9N*C<0bzFeJAqLhE2@amGewyz zAqk4X3YU{d7R`;{Ll1EMy~fCIT;FqY+1ONo z#*GCd?e*RHE2|!A^w7(X^GH)s5n?g15ckdjdBJujX65Fxt&myQ^zeix-;%HCZ5iEf zbxLPS#rEB;LSkQEgk64?7DtD*wC~zM%ZqoT1%({Re^ZuESga~NkznB%s@A#wGk9{9yqFS+WEY4fpU7YQ| zG(T31P0jG%F3olI<5O9=QbHE@reGxWHcXFcK+x(rx5YW9-j8@G4fANF(UH_Be=&nH z6>|BvSZ6l!$I#xbl09~&bf)mpOa$)m-^5$-3L;K@uta@OHUCei;vldAbz^Aw=Th6saE)aH4adE(fojfFl-8f&^F@Y{{)>y&Da6KEqrc|JgD;TJUh4mn70Xu){#m1H$uc7 ztX(Mds5^iZxHYU?je-^hHdAycH`aZ9(25GBahx=$lGM#jZOh{F(ws%fnO)hnBUGY2 zrB#FRuFR~$#I-%zy86PZhWwb+FoQYLm6BW*+fc06YIJ$!Rrzt5VMbGgGpVW#V<-bJ z34PWdmn65I;ErkF3_QMxBuR+s! zYLu4NsN@?}^dk9H6|Gg7&1U)?*HH4I16?6r$0~DMaK@DdP4MYdhzV$fGN29SmJW|X z@E;h5@|N)lMfLds8bQ?9&RrrdDX7H(Ftu%4RiXrZ&2lZbWvV;^DS&OUs=Ln7~~mTF27dSX;C$INTDN5+E7y4|}jR z!V;Ps0R1wXlqaZvbOHk^rS8772USz^=E3*z)3D{Ek2%vP(xBJx+?W(JpGN`rw!eQ|dKb3!e4&A1bPfkd* zYgGX!i5vX=)c(aI`NH$-I!x6)J)Ke3(9F~TQ+8-*a9($&WJydfijzVj@=R%2kv4m7 zH;cj*ktgW;LY|`fP(B70N@7-V0+e$mg7R2Mi7S!t6T0;eHfqQcC_fiTqAt~G%*rWT zl5MQf)tgnilpJGrc5y_usaDreoW8VIuPVrLRAl+lf5oJlq^k5HePOE2TBI+sCkIAU zrI+Z7Q*FV;`U9rC@~)bQ09SEb4NJFyOcY@0aY+XJaLo>A16EuNHHyX6dZ+jso9+eG zkvJ*ti0XNr?m_X+)0rg|LI=$D3hA}iqzb#4uH@#F;KM^qXh0`sTf^N_iByXV^+FEL z$aDl~$(&t}jF5jq@^vtJWwW1WMuU2>Tuez!;O<4fn=upIV}XOBfjVY@+gOULiYxeT zq~)HUHCWWQT$IG9=91bGf1##z`D#&HJYEtUKs#1u^%wN7z>jUi)ywc(8-DXEnkbP1 z+g8!xk=~lsdHh2-y)vP<)lrq^$_vsac(8`FGp1-?_mo3~aByVf>_M)!`iHA&>U+{qDhMHj7u&y6leMg&-YZCrQBX;Po>3zuRBde&1tQfX60*b zsMSvu5j{*tM&8cXENM@|6xRzE(Hn&u6%PTN2RDi`@-%P6-Yk$Btj$*8e#PxL7b{h? zrG*RAH&(f{TouGWX^1Pkuv4$%pF-D2O_5b<=AV)^x3Hs5`2++%GKfGIi;2TR0*c)- z2YUcyvrwY?I#EjeO7$f^?cU^9| zd85TNEkAeV6(k0!qoOiWGfEO;)hxBX z9Fwm^-zjdgWU7dwh(KVw#SdFdtQZtM#$-(Wb!@4~O3F@642z5^NL-p`{M5K& zRav4-OA}%e^K_DMVODZ%oC}#uF=1g&`&deBR$`>xoD{1Lh_J^-1NJD~Htf~O+--xP zaQ5rs8^TLxNc*6HFuS4#>J@~DSLsY(qSdQ(T7;TWDcpWaUHuBb8mRVJ+QGJgGp#vH z8N9T;qp@4wAco2RjE@^ww)12f3wSQ{^*(&rsJCE;>kz#uYYbuRq!ZHCbz7xex^k7u zaPHbB|6xO0loy&buSb}_!zn5b{nh;ihwO`(^9G} zb(V@n{W=<#9EXrhcT7xxIw3=*y$X5*rdYPstCMQZ<1STneGt(WJq_#J#sPkgdR5Y$<7>TYBE!` zJoDCDM4Uwmh%o5x9?=~Z0cXdo;5<|OF(+Vvj}=(=73KjNedL7fz~e3q#Q?p3an?{F z&P#+u&KeoWYJrq<%Z8uDAS^{noQH^g|C?p#J$(EP^O5A`BS+{WeALbS&ok%FAy1h7 zY_@~`N(hIz0qU4&1}pQ;7w;D5NdTZu#>H-xi)+kurCYm|zgj$YEQEVCUYAew*kV$m z$KVkjS{0`eM}GidwZa?Zescct_eIUT`=g%rIOK59+ukgudGEhMp77oe6iYn!g=6Gq zpZm9Y?jyPV8FD^c6Muk5eiSrhz^)4+0#VB@IJ=Qep;c465aJt+jFCUM!X~66CMn-2 zUq(Ybkx7Jt51TDAODU~{Ok#mp$PpIm;d(Zcitt6ET8L+ZgP`;X0ic~>oat;x^Me9H zxBJ9oo!757R{A+c#=ZAN-v47t|Fa)^?}yLb7d1Zjb41oZZ!bPS z`=+;jBwt9SpJTJ{vIS#OL^zBE3*yI7Josd6Z*da73Go^R4CO+!5{WLJ7N?6Jrb&oJ zFa5jt_oX-9^}7g9NSgMVX|MbWLef0Oe9r*|6~d{UwtmZ|fFlHN@gechBcH-k%G7A& zV)sSOy!&iwyuJ85)%mn%w5!~Ig(mvkXDC(rKSoWMGERGvhv}b$5~iskH5}oy@x8rUkT1 zM2kRi%%>NdK)Gq0mn%G$i*RZ6#<*pnlQ{@JR&R_Q4w=c!5F#9tWr&{&dopG|!k-96 z3d8kl5J$~S?HX%X#sBD;`EMotEF}%m)MFL0B_$0}NuZPm+c@fuD5xWc`IHyj2i5uB zXQ<=tL3MZgv}Y(%`Z-1(;P=;pDsp-MFYzVQko}xmIJI+XfdhcWa+$l=eG1iGzm-Ko z=_h+O9*98rJL15+crF=3X#T+bcrGRO*>8mq;Rkkb+avA4=#103edcSFF`BQ7s4p)4(Z>B{bz*M)Q-n?*%-KxK*% z-o&Iu$k@Y#9Dko9d+z>gp7tEsbN3H;@4rG`^y%kr&wa>P$Z}8rVz}o%WbA7UJ{ym! z6rRou!ro@=QH2(UX&7a4)Om#=b|BEH%B@a%ZGX2y1D}O>FCsZwtsF5I$myR}FR?6% zy>QqYEc0XkzNAn7oo_gVe!U>l6KjsPDS@8hzPs;gpK!<0Cfe`1yLV(>ge21&0b)*O z7E#M#b6PB#wz$Ceh7d6OAy|8i7h|l zH57*O+!ZzaE>uz^x}k5St@!+-p0+AD06aY$JB)rvJ_vWW@G(RdT%gpOK*c@M%Kn%K z_YktQ5h1g=Sgr>XT^~7dr~QrI z`>&A4eC|K!xeso;5f+6AZS!2@P;cP&B4Ra6ZDal-rpVc#!SL9P``@&}t+)MK#38g7 z-2V{rJ<8hsX7l%+ztM9rmSGF%`u}I|NJv6RD7QDV%-WQU2vJ^dWVvgo|RL3v2Q^*&p^Ic`}=xx+EH5qvtZ@GnXtu5DAD>LJLfs z{f!|W2)>RZe!+bp*!Mo8X5JnM{*_OAM$Jk;$H*o8zT(ek{r?O73!-KcpYE8|q5*nt zVY%S$$bQeS&;p>+8!Pmr?M}JO?Kwx#(7d9n^D8>>r1S9Nf#LvQ*5(7%+n(6 zu?4h~r$(}1Tm=utaY?D--bfFOQemOU7q#&|ZVN8->B$P z#xKz>hK8s#@&5U*&D$G!>WWX+1-;Ln8Uy7fGFPtj%@x25J=(Y+#xP>yn0ON-4QIuN zklwU#OZUVTj~k)zTGg~C3B(=u&3svWS#Qx-UFJJDVgJllcQOcHS86fW)ycnDFf6te z9pgO1jT7)jsTc88@bD=cnjq4XJ)6-n&M`{sqj<{_Gl|%;R)M=b+u~7jm1mjIJ0k<7 z{fm(79x|xnWWcsdMh1VM{Ri~-xY-Jx=NbVAj@!a?FO7!{P+fg~;%jry9LdMZZ~A7z zg0s9Njx;ysoXneT!9X1d@e~0t_cS5E=9>oNsR```h!;dEel6^)@Uki!>G7#C(m-j$ z+)!v>m!AnaKtGu(Q#4?W_6{*XT@+7Qe$ZU%3=pd<52JGhfk)gnrGjwA7Yu=-c*L!T z@DyIYK#y?59;H^kKuQ7)TOgS6XwO9&=R2hQ@&!`bd-zmo&-j$J#{y9S3&e6t+uSL_ z2$KE0Bw^~qZa*(!IL<$5iOLqDrc2=O`l;+;xi%}#91*6C2j?pz{s__Sbarq9r+<)K z1g{K>%p-mWU)TR7V`z-=yeibDR)gm^|DV!_ws=H9`p?TFa<6g~H=`fp*nVa93%+V> z^;4K4<<63H>!Wbwc)S>KjAh-e zkNy^q&z><`!LzC@FahUnKQ0#>klM*PUMtxt?P~VjLxe*!Wp?b6tP3T7iRI66ElY8i zY0<&LP9H`tlRpxYQlwE|MlKQFV|h(1zv(cxBQKL+t5VQK-sVKhrlb*HOxVt32mZbs zE^c@B(dDDakb>_TcUTT#n>&}=3dzEKiI@&DCGf65&t@<`vs>Qg6uo3PKh1kay+k29 zrDJ!B6zg~{Ny@il--IdoW#4Y+vZrQlb@%C}hJAdmeUejy1_kfED<<9np8S(?fA({7 z#61Qj=Nt)kO4d0`-tla4o(yz@cRE_sMiLJH_=$&kgxSB%wz)I6+((94!kDK6mdCZx z=V2wM3yETG-s352bUl0rYUUbLMqr&otjn7Of3N75z;{x0d_X=ML$1-iU9xF_{?f1^ ziY%aDf#x``3pR)|eK%rd6tNy=b9d0qM*%!wdEuS(RrL=_+j%ZN6%E#)0E9>3=j|}l z97BNK8WgCvx_h8}2n-EyzWe6T-GZFAJM~t5V2~BBjhKm`ZH7R^TiKJ8r8eTo!(nzD zFAiz{u)OfNOA8%z1nK{!t5mBBr2M;7cNHUrWks4bjaJLgHd-6y>)nLQUTgrTl|_qr zYfDj+*7ePBx70Z#4yQ`VLxLqsj-tQMvSc0mJWHVvxZRj*7)%T4tRY7|6avGGX=8uE zeWs1=!?!~I%E1AISM1)S1HO`Z-Z29CI^X5?o+0%J`v`g1XWnc#Wb+opBU_l{Q=E`Fxce0D zGIQWF-dZs?86R;o6!%Z(=A+V{nFC7uqZFsf(2vsokKXo23G%nS{kM7Bze>w|+8^<@ zf0eumGn5?y`%bkEj>agKV8TL`+<)#HfyV&{8)F{=(d!$AXQsRGPoJ|sDUln`Z)S&U z%s7G5yuDUTVUG64W}G?nVrO8CvxZ-cD(0{1_a;PX&aonDcRKUU$gv6b`S># za&T&CTPeQ5bkHcc>nRC=nrgPBY)$8@Mo@ziu%5n72Cvh}Yu$OPqc84t8lKiBTroVc zU1J#B(>T0U8-Llb{MvM1`SyN;=A^#zZT*Ht98R9h;uV7fD>qL>vDEDqgM%x+iX59* zx~1D5F}4CZ)^2Z;n>|7}dpye*UPJEkkO}e*8GC%p$wZS2CgFR7=Kx4Nn>d@dM!VP% z5MOdW!Eq4z0bi0n!P$_R7ri?O6TR+aNLUEI>5#t6mke8}GMH8< zro~cBE8PU(sc6U;ksru8K}bqD)`L00F!1K1(&qVTrW5VQO{KYKVQQ-2I6m{VqIIF` zQmCt4kgw`pK_(WJ6+A+AdspxYzTV0T9%*AMI0RoTJMU7 zjsk6?rUfxI3w0k3>K~owRb9)@Pa`J`h-7)PDD3RblXWZ#f;)FTR<1XD)?i!+FCp%@ zeA@nbkk@Ncl05mfz{U`E00XD~=Q%weA!9tiQHJ>rfctgI*)p$sqrv{kR9zOtW#PrS zA<^nNyI;_Jv`BidFs)eovG$qI7i9WkBudDJMXz`W27b^N`MN0XIOZQ!+-|RsJGiy1 zv}YTZ(w_OL*aoDuXSO(N4_kbS@vYLDZC6TbX41{IW~QFf`%$-PsI+HsU8OyXIe6Ri zScKC4C32t7XxR3qw11WSb*?=&U{C+AB0kLMst&#@c1kQ6|A6{}Nr@jO+qT!Z#K#QqQx23Vhs;zoXvZ`^T~>iH zu-xiI_~+)CFLT~A=w*r#!t$(Pk$+ybl| z{LFqNz8^c<| zo;n3CId^L&Rg~68$fQr-Y!^}bK9U3oqy&de--Y~%M0TN~JaA2ct++iemq|w+fMCg0 zC~o6YJT5}$DOIZ;+0weT%qUE$%C|IB?_CoSoci>(m}}PAC|c6IbHe=07oHqX47lWmU47E;aCjn!t%AC3=kR6H97 zatJzxkf7J{6;%`^;1-pW*@|ie9lizZjBW1Ip4ddJ{~zZ)Z5Xx3=K8;${fzKY*#D2` zKs)D@`cOb14lelvM=Wz%rh|J%wG@M~5#-)6nQJN0#tGaYA$^uHvW!yCxtkDiifWS#$^S zLL)Qfq36%rJzTCEeZ5l+z78pN{AOGjpk46OK~N~k$lQA4iC{39nCR0w*2RaKg7tdI zV2ae3HOZmokf1Us*bh)HuVX(P#t*YM&0Y*AKo@%=0Y3=%p$nWz&=X}9C+00X z>(8q6iH8N&E6wmW!s9IakoEl>Yjha@!3WDA9N-W@Knw$p49F4&xanc;Vh+i70r? z^Qe~UhVE0{n`lnK=g|G`zl6Y<|Ehvn2f->KNa>0Rm_+g~@;SYSxywmJKxbu73F($t|%Y%pZojg73kvy z{P>4&sXpJTeUu$nAaC>BWA|YN<(L9Lpa85RHJLo7{H!D!%FX9P`R_82ybG{%%EjTX9Dw}au2N5We}JXmif}~N(jg6 z_he*bz9haBj(BOhl=i9kx3EvePcsr72am?kUC+L*qe1yn{>24S0aeKrQpLq(Qki_r z@9C$&cj+Ls4nPTEh3?!=A|%OS?qCAUlwB4jKnSB6@aUH#DicbdgrHEN{8@w)*(SDy zw5i(4@4K6qKv_2h4>U`d8ynqkzV15n{$RS{W?l$opaUWeqLI7g1@7$^$SQ2tZv(y- z`Qd~rN{^F?d>oO&rxOP(n^zY~g_EjJ=-yH(@3&HSo>VF=dqucIet(JF;v!%`0j<+YVW(jFTOe%5imWzk9T6PlGo2vh^>i z!pqXlt;Q@u=b4Z$kgqJB2;Fpw)=vi*qHX6m3>!@ z#l>v=g}>FT3OQ#aiXC$*hH~_wa4%}G0J|#1QslJ5h6EHV8>&s@W(01~Z?8V%O09YF z##IBmO4Wfg&qUZK2O3Tvki?M5rk4Fqc+0hC?~IRKdE;o!*1DL`q61asRgE@!enELv z_3Z!{I{THt5(T1=Yp2W}fD|1}>w+lqsArfhvgqa~Po?+nYd=>NQqvZftx8F`L1$Za zetSuinm)R_dPlEGUFoXd)nh=-j+MWT2;a~$Fs7FRpUtg3P6`mc^5vg^DFgR+%;T~WN`<53t(WYP{b!F=+*@hZl|xycfTRZ_n=g+ ze3eLhf3JcLce#9(MZU@`(Mh_ViE3>h*$q>M;SL`b+f@GG$+ z-5j0#<0E;Q=Af8Zu?9??Om%dxU?K4^SHDIE+<(yF4M1=*xl_mzn)trzBT|rEk1ZLh z^WICr@$#!{Y^$#nZ~L{3*G^}z4q0=hNME|fykUcxe=wpZchXCF^*i9+g4#)OPPWj? zzlivXE{%})(mYWEf-RB4C;0GW4>BHwHwSIbOro*9%X1XYMB0W1f>Kd{T3ha>}vfGfdTWwGs%)mKeMS6S#o;6Lo3-@2jU zCkAZ?evZOLzs<^$3wXPC0c$hP(~HQ;hv5Y$>m0<*Xc{~Rm41n*tZvXKT!?upg$r2) zX}6?C2W+eHwH+B?cfrCiDRO?n!pi|cShQH-BpV&E%??AAjdITdq$k2db}Ama9C)Lj zWo6AwvD4Y$^3Q22hwd|zOR+CaxKDlKex2Nv;S5S563#p4^V z;+g%1ek<6qlqrP7dPOgi8Rwi7+!e&q*5J_x{CbnbVo=_Q-5pMimpx+aCz>+UlebuPfcmgT3QCK zRtE49alqI(%!Z_b>{adyHuxAE$Y8pE!F@g484fsD@0@=h6S*61(cMN_JhxihC)iVP(<|5&vaKM;;!E>MU z{P)62D1rH`y0Sfi2^P=EW4_ti;J<(p#Fa7p2CW}HT(898iXlY&%DMwYYcMVUb81~;_39v1cUk><{g)=4 zUl__EbT!zdWfMkyMofO3$sAviRF{tzn+5s%>G6iM+`@)jqhU!#q}=svP-<;re`iEs zW#e!?co*ilrv`MKrx1@8C3%z#Z^R|I>LYbd6nE8*one&pjhiakmKCpVpP_e)C;|OR z<=A9Fal^Kunljt>vpf>+GFLc{6B2!Kebb)SvB|WQVt^6{L&R*5ic4nh|>1fTi`nJ)!?X^HZw0FYP z%(GC8hAl=ED@ubjQHU3|H2l9NeEM9JX}-V1vaLrW?B{s>6H)C)UAjhCnV?E7;`Dx< zxNzUUmym!GLITTi{hbgUAnG7;b-1Uy8rP46=+RdH051F;w3`q^1tCW8t#J)5NDbq6 zgqYwNFkOKQQo(#K_Tq6|&!QSSEZ|@ZF2J{%2N3M9TxNKzuMyP%PrgzImF zq})nKD)!@4z(|AslXg8J>A+L^hlFHYg6rReWLDvNnvg8O%X*)X>}9y_fXfs3alS!F z&T3rm5t57b$$b$T(JEY@K;6L@UC2kv&%pIBLY6*GNWq!7z9*#6gewUbU=;#qg;Th$ z#x+AoQ7bNtvFLeRz+JJ33-~Q|;Bw-^IEp)QjpLfebtbNh2r2m^A*C2oDb~C6bVAAo zaJ`G`zl4+n7Zu1WuK>;~i*XGTQiXX{V+_?-5>it@NGn`S;Gi3A zx-p)f8wlzBB_Vwm;<^pjQ@F79{l6h(U>6~SHMjt48R&2boHuk0A;XyKFxGeE03o9p zxIhPE!1eMlT)_W$JudtS97x=iz#kkTsasB>J5M?6pgA z0r%@daJ@sw`iBYGfPOXrUmIS*g|*yxJt0$=&*sMoImt!H7Qo+%>*P{Gww2)ej*uOp zgzP+(kW;o3vg>U^P6Lnbwi0qWV4dM4s#2)VP4kh_KmxjUDTdqAuA4iIvmgzF_j?*BC*5B!RdLv4gS=#T4bLVoiBArBpa zS9dQVk6Z^g44!!mV|x5LCr|_??ppc^A0)Lop$Lv=j1P1R?L^`~B|-`QQga{*1PN{+y7%Tt&!- zYY6#k5g{K%<9d#ekM|MsNfjZV`VsOsjPLK`IGlzx{O4>`MY4HY|*`#tkK?~@nZz4!OIpU?f{CZBWWOh0p`&ogu0 z-A3$ZM%;Nug2_hGMg!;}O+05L{eB~jIM~RTVpe!gjWE)E1t;I%8R_|^k={*!m$+_yrIEh38rh%x`@!FUA|nIW8_B!S$e?G8 z3|?zw$f-t#E@P9!?adJ!q>Vh<$N^^<$>--4@^=~;h5zW|jErIPF=nHYf`^P0QkJ3~ zM#i=QUNKU9l96$T0mmB|504X2O+I0vk%^RJ(oiFlX8|jXOd+3=TZ~LaMy1cQ)w&&k zkLkY}nb8vX#K_F2jg)<8WcGnZ4w`7>VA7gX$!(W&_~~Y3a|nDMidweAzT%Q9@#awv z6`1oW`-0z$RE;;nxFU-(0c5cleyidCaMC%V(8!Wgj4VAF9iGP;S+?ECa`LQQU}Ocd zuA^=lKV(%?BdZZ^$K(J%898o(k>meu>@@r@n6FuaxC<@;#%Mkuy61@O?Iyi_RhL-{AFJ;5_Q@d}MRMTO3#u|Kc%5 zE*Wg(Qp#}|{9K-48h!Kkjk80SNbZJ_D}9 zzOJj08%h7BKN-0h`z?9EH%9)k&B(3y8o3Sn_Lq&^vC7DuM;W<`GTsFrchhF>`J0h@ z?>2JZkw)$(-u)jNSx=omNZma2tdW0yZ{*>7j68xYA024qF?5+f_KT6n$%kn}o}6st zsSW`3^EBx^L%VsFHuBtZBhTaa!qG51nY#QX9moS_0<_&<;s4h+jO-@f?uU*1hWvk{E&c}Y zzY%^(gcc|6<0Qt1~#Mpf<1MV}n^}fJt;BI5v^aD`0)#hs8Er2}R z!gpKLeYIT=@cL-qNx)0SwmTL0&Di$HqW%5=zkbr5{Z0Foz}dk2#&$R!xEQz{cm`0n zAB@dv26P8T1J?o%0nFe%W9Fa0~$dJ>b6w{P%$W9;DH8hOxbf(~CI0h|_B_FdsM?IN#XbeSuGn?PGwp z0Cm@=7@$q|sRgLpzLcdeb<=ke06%?^{r<>)e`LRZHENfu+V@FK^{sbHgP_|LG z13Qf!-4R#{Ag|Fs89N5P#vBMBL-s{>%w@n`!1KTs;AdkCS^~WQ%2{v_K>UK!fxiQf z0+h3Wau%XmyAXa04+YKx-ZQqS8PLzzv4eq`0QET*zhd|=J`31w?6@WX?QR@xYdk!U zN8S_m1t`OW(|{X*dx58bZ;hRZ+r(FZ&y1Z!-A`$1-5a(^oyMgUyD&L^9 z?8`t$)6uOmtuzkb_ey-YKDd{eT=%PKVLvxRT!3E+Kbn7>pQhQ-bZ`#yM#}pzunD@x zbd>jq2fqv}Shps8%QtR+nb6~O#ll5o6<1?g& znbaT;_gnq9v?E75YU$g}+x2h9b#((W)w)_{I;7N9CtFBe_534WHiz&J0Ix@Nb(<-Z zpQ-1gQ|f9fD)~Mn%nP{DuH+Wz_mEpyPaTu>sAny;B5iCfH&;2z*~X!1yZ9=HV93amF-nf(bnh_q)$01s*Zh=4MsDI6LB@=Q~p zzcLnN1=9fJ6==WRfjNq_x&oQd$~Wy@-GW779sza7kA-9f^GKsHCVe@$33vv06rgVf zN8y(NG=cs%pni{GUufDZB)UM?MnIVKe86HSkF-{Vr9OhGfb#fP+!#ZGmoUjMjo-9Y z2%g2{l3iLJ(3DR~+pr%DC||j>mj?mzq+D(J8KW$IpCyZxY8y+RwFjHVw#u|%_1Y0L z%U)@k1Wz*tz*BG%a4%2_5H@WVCS!yz7w#&{^uI(Vc?Fk4_Y1*pz`oEp&--HN!;#q- zJa`66BFM9Uy-WN9IxPdB}I3omamTsOPeO7FWNU zsF^k%dM0H6()J~fG}D{0v$NWRcTE}XrY!gua0PIpDNBQoMp~E3b7#|D`3R7e@{rJS z!gJyg%oi|~kH0}HpA&!r-~!yJ+u%aeF`;GOg`KcLMF?q+lP(avjr)zjDbTwywH~z{ zT#tWu>^H#2>zE(nM%@Q3fnGp1{_0i@7-(&0g}`j!8-Tdvos~dV3cig$fe9qEZ7jpw z7($w+zX~^Gn>c`YKZlSYZ16qpMa$k7&^jV5&)@Nw@D|W^f~$!;g}N?-CY?a#@)@wh zObzb#FdhD;2Im1wa32c11k8;9*(HvJRvF#_t^MX{O!cSjY8y+Nj!9hyA3H?@d zk&|0Q-M+zB(DkNOqkB-`USwLOEe2kVpagTFX+^tlmDU$H2sqcYNY&+H%aFM0RDoD;6>{k`M6CcH|=LrqF{HKzVKTTTnyX=+-tf8 zUtw;>|F8IehkqLMnZyTzeJSf9p&102{UbXj@v{=trTa33G}?Nw8aI{4JOEj`FR(Wa zA^j85JP**ixEXj7_Y*N`$B7x3q?339Q^yo-OP7U^&~bzMPD|kbF7(IHr(xcL2_Nl%vF)X9iI%2?G~Y9td9sG(7VDt;Ex>!a#$x?*M+58`t>MD3dpL`X zfwSQ~9-=jquABVY3G)mE{9lvil(UllyB(Nf1_1}ye8!<&%#jzGUh4n<5?D|4F;8)$ z{u7gH+c9=<(bBHvQ{!rLq|7u0GNXRG+-458Q@H|hWc}6hFgH%>xNEhj{?-5KdPKvU zv+D1b<0#u;Zf_jNeEX4^=$uaSR?$lMpV7ABi@*P(W$nP`tNN4V3>a@j@N33G&e!jq!UOq$%!p^aER{+#o;qnH`;&h^v_Cgy zemH`kEBOqqrbi<0pX*;Vm!p^XN*}+SH73Iz$Wy7-@UyZ0OD}ho{qMkyW8Fnv_4pXk=#}GdqJ=ayVk|;ASLfEO50P+ z@VFkdE>eNEioK1m3$2d`v@W#Hys72Zynkoe|rQfvUeakCmaWe1U zo5?!eiznr69PMd0|&R@c9!<16m_s$D+fj)#ul zN3$n9nxCzB8S`Z`0~zmRAKCpsLc#CcFD1`#-`RuuEwxqLqoBY+hdtMs%FOAR5pGZ`Z3I} zHq0YfW>;kM`Bwe7X2VxXlWkZc8iqEXNNX@0aaT6*zL%R5Oakc{)0B|MOS)u9R~ab7 zWForqtK@j$=bz;_ew=%beb_#0pSSP14H+(@aYoaOmKm)xdS(pB7?d$0V_e3hjHwyZ zGY-qB%2<}MJfpVrDV-nb{9WgtvzunO&hC)iIXfr2d-j0rk=e!BH)Y?N{ZRHJXbQ{e z(!EQ+9GjEKX`a(6r%g_WoX$CYawg`?%c<)2Lbn%xwcL!-Kjp29Su2^+S-AEpBcwzQ zlf|C5-Kelt-kyQC&G04}X&GoH%Gf8PO-ApGff++G@-rr6Oo6w9Gv;M1^t_$W`Qgsr zcK#{5N%lV3?Xo*&XM5g8M7%xt2i{u3Tl<)|O3$0Xo78__ztyhb<-v4*YGtw=Z^zjp zTfjrYezvbX$*t@q@GJ=YTW|8ZGBCuUnwVCm8Oq9An`!6+8^@aCSkuO|r7yPQie?AScXGI!w4dqfYyLRX zm^RRnHza48v&=c{6ZLN&vqM{Rz&CJ|scZXIS|8C|7txk{9*Stz8|Ima4miWmAA-{G zX(m$!M0CRBie8{r_eO*{ETS{aA#!p=H)iblFru4Ej_nZ9&6p4KBf5oY=4vClrD^L< zi0FOH?e5}`rcD$C#Sty0a}cF3{GfUe@h{Hw4PG>3(O|wDsnwclvxw&fb;u--(Oe_&*AIx{n>oUUTWmyikE`l$TzAs0VdTa#R=bvv&<7 zYbTVO*0yq6LyFn_zRfb~tB$>ia-&>U`}z)Rp^8u|aMf~zHCjceY{G}FXeKpKf_<8o zg7VssatSFdAa0m~mT@*VZB5lach%|H&qJ~WC}(@;o8+d#ORXB;3Tk$V=W{jbC?DCl zX}*Q#Ku_1vKC}NIr4{g^Jz_a=R*@1w_afTpG*T$}zl^nayZMi;Gh=wh{uu=( zJEI?SU}45EX21T-GAJ5g-kAd4H=~5PaR^lF4EiavQjd%=_>IOj8EyjZ{c!2Wo%oQR z;8W;Gnp1J@h+i&YhGQF&k?UP^p$9;Zj#D1))94ww_4fXwnfs>txFa$q@)dceIgwuW!>_!sme^0SrHkaS;>ne6 z(w*Op?kT;bxAc*|vcL3`{xX2IP#&5Hxvqh*W~NTC$TSSglq zGF~RIYMLaIWeV$)sZuJ_WV#$EGf*I0CbMKVKW}re%#pdQtPYVwS;3UcJgJcRvOp?X zYc1r5tQJc(&$^Ca-LO<@WSK0NBc+!2U3IcjR>^8vBS*>6a*P}+$FVm1vz#D*krU-4 zIhh{^JXQWGr^)GZhMXy9$=Pxa>!Wk!Jl1a)$c1u|Tr8K!rE-~EF07R0D!E#&k+pKI zTqoDd4f1zcCpXGXtXXc6f5@$Jo7^sU$enVR+%5OWy>g%2FAvCic~Bmbf6Bx1h&(Ef z$p(2`o?xZ(lsqlZ$g}dCJTEWEzvM-ENjA#A3tn~_6@r|{`to+8?33ej-lPB9LwuDchrFI(Y!UI_y&a`EAmYr=6 zvInzPoooMO53z^Z!)&>oXDjS{yTDf3D!b4wvWxkB*~9G-c8OhTYwR+++#ZSAo)xwZ zMdqvQYP-fBg$n9p?6LMZd%XR#J;DCPo@h_9C)-o(srIk-G5sDob2QF3Hzjd%0A5s{8{@P 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 literal 0 HcmV?d00001 diff --git a/igniter/__init__.py b/igniter/__init__.py index c2442ad57f..20bf9be106 100644 --- a/igniter/__init__.py +++ b/igniter/__init__.py @@ -10,29 +10,22 @@ from .bootstrap_repos import BootstrapRepos from .version import __version__ as version -RESULT = 0 - - -def get_result(res: int): - """Sets result returned from dialog.""" - global RESULT - RESULT = res - - def open_dialog(): """Show Igniter dialog.""" - from Qt import QtWidgets + from Qt import QtWidgets, QtCore from .install_dialog import InstallDialog + scale_attr = getattr(QtCore.Qt, "AA_EnableHighDpiScaling", None) + if scale_attr is not None: + QtWidgets.QApplication.setAttribute(scale_attr) + app = QtWidgets.QApplication(sys.argv) d = InstallDialog() - d.finished.connect(get_result) d.open() - app.exec() - - return RESULT + app.exec_() + return d.result() __all__ = [ diff --git a/igniter/bootstrap_repos.py b/igniter/bootstrap_repos.py index f624b96125..8fbb580e8f 100644 --- a/igniter/bootstrap_repos.py +++ b/igniter/bootstrap_repos.py @@ -223,7 +223,7 @@ class BootstrapRepos: otherwise `None`. registry (OpenPypeSettingsRegistry): OpenPype registry object. zip_filter (list): List of files to exclude from zip - openpype_filter (list): list of top level directories not to + openpype_filter (list): list of top level directories to include in zip in OpenPype repository. """ @@ -246,7 +246,7 @@ class BootstrapRepos: self.registry = OpenPypeSettingsRegistry() self.zip_filter = [".pyc", "__pycache__"] self.openpype_filter = [ - "build", "docs", "tests", "tools", "venv", "coverage" + "openpype", "repos", "schema", "LICENSE" ] self._message = message @@ -285,7 +285,7 @@ class BootstrapRepos: """Get version of local OpenPype.""" version = {} - path = Path(os.path.dirname(__file__)).parent / "openpype" / "version.py" + path = Path(os.environ["OPENPYPE_ROOT"]) / "openpype" / "version.py" with open(path, "r") as fp: exec(fp.read(), version) return version["__version__"] @@ -423,18 +423,13 @@ class BootstrapRepos: """ frozen_root = Path(sys.executable).parent - # from frozen code we need igniter, openpype, schema vendor - openpype_list = self._filter_dir( - frozen_root / "openpype", self.zip_filter) - openpype_list += self._filter_dir( - frozen_root / "igniter", self.zip_filter) - openpype_list += self._filter_dir( - frozen_root / "repos", self.zip_filter) - openpype_list += self._filter_dir( - frozen_root / "schema", self.zip_filter) - openpype_list += self._filter_dir( - frozen_root / "vendor", self.zip_filter) - openpype_list.append(frozen_root / "LICENSE") + openpype_list = [] + for f in self.openpype_filter: + if (frozen_root / f).is_dir(): + openpype_list += self._filter_dir( + frozen_root / f, self.zip_filter) + else: + openpype_list.append(frozen_root / f) version = self.get_version(frozen_root) @@ -477,11 +472,16 @@ class BootstrapRepos: openpype_path (Path): Path to OpenPype sources. """ - openpype_list = [] - openpype_inc = 0 - # get filtered list of file in Pype repository - openpype_list = self._filter_dir(openpype_path, self.zip_filter) + # openpype_list = self._filter_dir(openpype_path, self.zip_filter) + openpype_list = [] + for f in self.openpype_filter: + if (openpype_path / f).is_dir(): + openpype_list += self._filter_dir( + openpype_path / f, self.zip_filter) + else: + openpype_list.append(openpype_path / f) + openpype_files = len(openpype_list) openpype_inc = 98.0 / float(openpype_files) @@ -506,7 +506,7 @@ class BootstrapRepos: except ValueError: pass - if is_inside: + if not is_inside: continue processed_path = file @@ -575,7 +575,7 @@ class BootstrapRepos: """ sys.path.insert(0, directory.as_posix()) - directory = directory / "repos" + directory /= "repos" if not directory.exists() and not directory.is_dir(): raise ValueError("directory is invalid") @@ -681,7 +681,7 @@ class BootstrapRepos: openpype_path = None # try to get OpenPype path from mongo. if location.startswith("mongodb"): - pype_path = get_openpype_path_from_db(location) + openpype_path = get_openpype_path_from_db(location) if not openpype_path: self._print("cannot find OPENPYPE_PATH in settings.") return None @@ -808,7 +808,7 @@ class BootstrapRepos: """Install OpenPype version to user data directory. Args: - oepnpype_version (OpenPypeVersion): OpenPype version to install. + openpype_version (OpenPypeVersion): OpenPype version to install. force (bool, optional): Force overwrite existing version. Returns: diff --git a/igniter/install_dialog.py b/igniter/install_dialog.py index 27b2d1fe37..411fac1e96 100644 --- a/igniter/install_dialog.py +++ b/igniter/install_dialog.py @@ -2,14 +2,15 @@ """Show dialog for choosing central pype repository.""" import os import sys +import re +import collections from Qt import QtCore, QtGui, QtWidgets # noqa from Qt.QtGui import QValidator # noqa from Qt.QtCore import QTimer # noqa -from .install_thread import InstallThread, InstallResult +from .install_thread import InstallThread from .tools import ( - validate_path_string, validate_mongo_connection, get_openpype_path_from_db ) @@ -17,504 +18,484 @@ from .user_settings import OpenPypeSecureRegistry from .version import __version__ -class FocusHandlingLineEdit(QtWidgets.QLineEdit): - """Handling focus in/out on QLineEdit.""" - focusIn = QtCore.Signal() - focusOut = QtCore.Signal() +def load_stylesheet(): + stylesheet_path = os.path.join( + os.path.dirname(__file__), + "stylesheet.css" + ) + with open(stylesheet_path, "r") as file_stream: + stylesheet = file_stream.read() - def focusOutEvent(self, event): # noqa - """For emitting signal on focus out.""" - self.focusOut.emit() - super().focusOutEvent(event) + return stylesheet - def focusInEvent(self, event): # noqa - """For emitting signal on focus in.""" - self.focusIn.emit() - super().focusInEvent(event) + +class ButtonWithOptions(QtWidgets.QFrame): + option_clicked = QtCore.Signal(str) + + def __init__(self, commands, parent=None): + super(ButtonWithOptions, self).__init__(parent) + + self.setObjectName("ButtonWithOptions") + + options_btn = QtWidgets.QToolButton(self) + options_btn.setArrowType(QtCore.Qt.DownArrow) + options_btn.setIconSize(QtCore.QSize(12, 12)) + + default = None + default_label = None + options_menu = QtWidgets.QMenu(self) + for option, option_label in commands.items(): + if default is None: + default = option + default_label = option_label + continue + action = QtWidgets.QAction(option_label, options_menu) + action.setData(option) + options_menu.addAction(action) + + main_btn = QtWidgets.QPushButton(default_label, self) + main_btn.setFlat(True) + + main_layout = QtWidgets.QHBoxLayout(self) + main_layout.setContentsMargins(0, 0, 0, 0) + main_layout.setSpacing(1) + + main_layout.addWidget(main_btn, 1, QtCore.Qt.AlignVCenter) + main_layout.addWidget(options_btn, 0, QtCore.Qt.AlignVCenter) + + main_btn.clicked.connect(self._on_main_button) + options_btn.clicked.connect(self._on_options_click) + options_menu.triggered.connect(self._on_trigger) + + self.main_btn = main_btn + self.options_btn = options_btn + self.options_menu = options_menu + + options_btn.setEnabled(not options_menu.isEmpty()) + + self._default_value = default + + def resizeEvent(self, event): + super(ButtonWithOptions, self).resizeEvent(event) + self.options_btn.setFixedHeight(self.main_btn.height()) + + def _on_options_click(self): + pos = self.main_btn.rect().bottomLeft() + point = self.main_btn.mapToGlobal(pos) + self.options_menu.popup(point) + + def _on_trigger(self, action): + self.option_clicked.emit(action.data()) + + def _on_main_button(self): + self.option_clicked.emit(self._default_value) + + +class NiceProgressBar(QtWidgets.QProgressBar): + def __init__(self, parent=None): + super(NiceProgressBar, self).__init__(parent) + self._real_value = 0 + + def setValue(self, value): + self._real_value = value + if value != 0 and value < 11: + value = 11 + + super(NiceProgressBar, self).setValue(value) + + def value(self): + return self._real_value + + def text(self): + return "{} %".format(self._real_value) + + +class ConsoleWidget(QtWidgets.QWidget): + def __init__(self, parent=None): + super(ConsoleWidget, self).__init__(parent) + + # style for normal and error console text + default_console_style = QtGui.QTextCharFormat() + error_console_style = QtGui.QTextCharFormat() + default_console_style.setForeground( + QtGui.QColor.fromRgb(72, 200, 150) + ) + error_console_style.setForeground( + QtGui.QColor.fromRgb(184, 54, 19) + ) + + label = QtWidgets.QLabel("Console:", self) + + console_output = QtWidgets.QPlainTextEdit(self) + console_output.setMinimumSize(QtCore.QSize(300, 200)) + console_output.setReadOnly(True) + console_output.setCurrentCharFormat(default_console_style) + console_output.setObjectName("Console") + + main_layout = QtWidgets.QVBoxLayout(self) + main_layout.setContentsMargins(0, 0, 0, 0) + main_layout.addWidget(label, 0) + main_layout.addWidget(console_output, 1) + + self.default_console_style = default_console_style + self.error_console_style = error_console_style + + self.label = label + self.console_output = console_output + + self.hide_console() + + def hide_console(self): + self.label.setVisible(False) + self.console_output.setVisible(False) + + self.updateGeometry() + + def show_console(self): + self.label.setVisible(True) + self.console_output.setVisible(True) + + self.updateGeometry() + + def update_console(self, msg: str, error: bool = False) -> None: + if not error: + self.console_output.setCurrentCharFormat( + self.default_console_style + ) + else: + self.console_output.setCurrentCharFormat( + self.error_console_style + ) + self.console_output.appendPlainText(msg) + + +class MongoUrlInput(QtWidgets.QLineEdit): + """Widget to input mongodb URL.""" + + def set_valid(self): + """Set valid state on mongo url input.""" + self.setProperty("state", "valid") + self.style().polish(self) + + def remove_state(self): + """Set invalid state on mongo url input.""" + self.setProperty("state", "") + self.style().polish(self) + + def set_invalid(self): + """Set invalid state on mongo url input.""" + self.setProperty("state", "invalid") + self.style().polish(self) class InstallDialog(QtWidgets.QDialog): """Main Igniter dialog window.""" - _size_w = 400 - _size_h = 600 - path = "" - _controls_disabled = False + + mongo_url_regex = re.compile(r"^(mongodb|mongodb\+srv)://.*?") + + _width = 500 + _height = 200 + commands = collections.OrderedDict([ + ("run", "Start"), + ("run_from_code", "Run from code") + ]) def __init__(self, parent=None): super(InstallDialog, self).__init__(parent) - self.secure_registry = OpenPypeSecureRegistry("mongodb") - self.mongo_url = "" + self.setWindowTitle( + f"OpenPype Igniter {__version__}" + ) + self.setWindowFlags( + QtCore.Qt.WindowCloseButtonHint + | QtCore.Qt.WindowMinimizeButtonHint + ) + + current_dir = os.path.dirname(os.path.abspath(__file__)) + roboto_font_path = os.path.join(current_dir, "RobotoMono-Regular.ttf") + poppins_font_path = os.path.join(current_dir, "Poppins") + icon_path = os.path.join(current_dir, "openpype_icon.png") + + # Install roboto font + QtGui.QFontDatabase.addApplicationFont(roboto_font_path) + for filename in os.listdir(poppins_font_path): + if os.path.splitext(filename)[1] == ".ttf": + QtGui.QFontDatabase.addApplicationFont(filename) + + # Load logo + pixmap_openpype_logo = QtGui.QPixmap(icon_path) + # Set logo as icon of window + self.setWindowIcon(QtGui.QIcon(pixmap_openpype_logo)) + + secure_registry = OpenPypeSecureRegistry("mongodb") + mongo_url = "" try: - self.mongo_url = ( + mongo_url = ( os.getenv("OPENPYPE_MONGO", "") - or self.secure_registry.get_item("openPypeMongo") + or secure_registry.get_item("openPypeMongo") ) except ValueError: pass - self.setWindowTitle( - f"OpenPype Igniter {__version__} - OpenPype installation") - self._icon_path = os.path.join( - os.path.dirname(__file__), 'openpype_icon.png') - icon = QtGui.QIcon(self._icon_path) - self.setWindowIcon(icon) - self.setWindowFlags( - QtCore.Qt.WindowCloseButtonHint | - QtCore.Qt.WindowMinimizeButtonHint - ) + self.mongo_url = mongo_url + self._pixmap_openpype_logo = pixmap_openpype_logo - self.setMinimumSize( - QtCore.QSize(self._size_w, self._size_h)) - self.setMaximumSize( - QtCore.QSize(self._size_w + 100, self._size_h + 500)) - - # style for normal console text - self.default_console_style = QtGui.QTextCharFormat() - # self.default_console_style.setFontPointSize(0.1) - self.default_console_style.setForeground( - QtGui.QColor.fromRgb(72, 200, 150)) - - # style for error console text - self.error_console_style = QtGui.QTextCharFormat() - # self.error_console_style.setFontPointSize(0.1) - self.error_console_style.setForeground( - QtGui.QColor.fromRgb(184, 54, 19)) - - QtGui.QFontDatabase.addApplicationFont( - os.path.join( - os.path.dirname(__file__), 'RobotoMono-Regular.ttf') - ) - self._openpype_run_ready = False + self._secure_registry = secure_registry + self._controls_disabled = False + self._install_thread = None + self.resize(QtCore.QSize(self._width, self._height)) self._init_ui() + # Set stylesheet + self.setStyleSheet(load_stylesheet()) + + # Trigger Mongo URL validation + self._mongo_input.setText(self.mongo_url) + def _init_ui(self): # basic visual style - dark background, light text - self.setStyleSheet(""" - color: rgb(200, 200, 200); - background-color: rgb(23, 23, 23); - """) - - main = QtWidgets.QVBoxLayout(self) # Main info # -------------------------------------------------------------------- - self.main_label = QtWidgets.QLabel( - """Welcome to OpenPype -

- We've detected OpenPype is not configured yet. But don't worry, - this is as easy as setting one or two things. -

- """) - self.main_label.setWordWrap(True) - self.main_label.setStyleSheet("color: rgb(200, 200, 200);") - - # OpenPype path info - # -------------------------------------------------------------------- - - self.openpype_path_label = QtWidgets.QLabel( - """This is Path to studio location where OpenPype versions - are stored. It will be pre-filled if your MongoDB connection is - already set and your studio defined this location. -

- Leave it empty if you want to install OpenPype version that - comes with this installation. -

-

- If you want to just try OpenPype without installing, hit the - middle button that states "run without installation". -

- """ - ) - - self.openpype_path_label.setWordWrap(True) - self.openpype_path_label.setStyleSheet("color: rgb(150, 150, 150);") - - # Path/Url box | Select button - # -------------------------------------------------------------------- - - input_layout = QtWidgets.QHBoxLayout() - - input_layout.setContentsMargins(0, 10, 0, 10) - self.user_input = FocusHandlingLineEdit() - - self.user_input.setPlaceholderText("Path to OpenPype versions") - self.user_input.textChanged.connect(self._path_changed) - self.user_input.setStyleSheet( - ("color: rgb(233, 233, 233);" - "background-color: rgb(64, 64, 64);" - "padding: 0.5em;" - "border: 1px solid rgb(32, 32, 32);") - ) - - self.user_input.setValidator(PathValidator(self.user_input)) - - self._btn_select = QtWidgets.QPushButton("Select") - self._btn_select.setToolTip( - "Select OpenPype repository" - ) - self._btn_select.setStyleSheet( - ("color: rgb(64, 64, 64);" - "background-color: rgb(72, 200, 150);" - "padding: 0.5em;") - ) - self._btn_select.setMaximumSize(100, 140) - self._btn_select.clicked.connect(self._on_select_clicked) - - input_layout.addWidget(self.user_input) - input_layout.addWidget(self._btn_select) + main_label = QtWidgets.QLabel("Welcome to OpenPype", self) + main_label.setWordWrap(True) + main_label.setObjectName("MainLabel") # Mongo box | OK button # -------------------------------------------------------------------- - - self.mongo_label = QtWidgets.QLabel( - """Enter URL for running MongoDB instance:""" + mongo_input = MongoUrlInput(self) + mongo_input.setPlaceholderText( + "Enter your database Address. Example: mongodb://192.168.1.10:2707" ) - self.mongo_label.setWordWrap(True) - self.mongo_label.setStyleSheet("color: rgb(150, 150, 150);") + mongo_messages_widget = QtWidgets.QWidget(self) - class MongoWidget(QtWidgets.QWidget): - """Widget to input mongodb URL.""" - - def __init__(self, parent=None): - self._btn_mongo = None - super(MongoWidget, self).__init__(parent) - mongo_layout = QtWidgets.QHBoxLayout() - mongo_layout.setContentsMargins(0, 0, 0, 0) - self._mongo_input = FocusHandlingLineEdit() - self._mongo_input.setPlaceholderText("Mongo URL") - self._mongo_input.textChanged.connect(self._mongo_changed) - self._mongo_input.focusIn.connect(self._focus_in) - self._mongo_input.focusOut.connect(self._focus_out) - self._mongo_input.setValidator( - MongoValidator(self._mongo_input)) - self._mongo_input.setStyleSheet( - ("color: rgb(233, 233, 233);" - "background-color: rgb(64, 64, 64);" - "padding: 0.5em;" - "border: 1px solid rgb(32, 32, 32);") - ) - - mongo_layout.addWidget(self._mongo_input) - self.setLayout(mongo_layout) - - def _focus_out(self): - self.validate_url() - - def _focus_in(self): - self._mongo_input.setStyleSheet( - """ - background-color: rgb(32, 32, 19); - color: rgb(255, 190, 15); - padding: 0.5em; - border: 1px solid rgb(64, 64, 32); - """ - ) - - def _mongo_changed(self, mongo: str): - self.parent().mongo_url = mongo - - def get_mongo_url(self) -> str: - """Helper to get url from parent.""" - return self.parent().mongo_url - - def set_mongo_url(self, mongo: str): - """Helper to set url to parent. - - Args: - mongo (str): mongodb url string. - - """ - self._mongo_input.setText(mongo) - - def set_valid(self): - """Set valid state on mongo url input.""" - self._mongo_input.setStyleSheet( - """ - background-color: rgb(19, 19, 19); - color: rgb(64, 230, 132); - padding: 0.5em; - border: 1px solid rgb(32, 64, 32); - """ - ) - self.parent().install_button.setEnabled(True) - - def set_invalid(self): - """Set invalid state on mongo url input.""" - self._mongo_input.setStyleSheet( - """ - background-color: rgb(32, 19, 19); - color: rgb(255, 69, 0); - padding: 0.5em; - border: 1px solid rgb(64, 32, 32); - """ - ) - self.parent().install_button.setEnabled(False) - - def set_read_only(self, state: bool): - """Set input read-only.""" - self._mongo_input.setReadOnly(state) - - def validate_url(self) -> bool: - """Validate if entered url is ok. - - Returns: - True if url is valid monogo string. - - """ - if self.parent().mongo_url == "": - return False - - is_valid, reason_str = validate_mongo_connection( - self.parent().mongo_url - ) - if not is_valid: - self.set_invalid() - self.parent().update_console(f"!!! {reason_str}", True) - return False - else: - self.set_valid() - return True - - self._mongo = MongoWidget(self) - if self.mongo_url: - self._mongo.set_mongo_url(self.mongo_url) - - # Bottom button bar - # -------------------------------------------------------------------- - bottom_widget = QtWidgets.QWidget() - bottom_layout = QtWidgets.QHBoxLayout() - openpype_logo_label = QtWidgets.QLabel("openpype logo") - openpype_logo = QtGui.QPixmap(self._icon_path) - # openpype_logo.scaled( - # openpype_logo_label.width(), - # openpype_logo_label.height(), QtCore.Qt.KeepAspectRatio) - openpype_logo_label.setPixmap(openpype_logo) - openpype_logo_label.setContentsMargins(10, 0, 0, 10) - - # install button - - - - - - - - - - - - - - - - - - - - - - - - - - - - self.install_button = QtWidgets.QPushButton("Install") - self.install_button.setStyleSheet( - ("color: rgb(64, 64, 64);" - "background-color: rgb(72, 200, 150);" - "padding: 0.5em;") + mongo_connection_msg = QtWidgets.QLabel(mongo_messages_widget) + mongo_connection_msg.setVisible(True) + mongo_connection_msg.setTextInteractionFlags( + QtCore.Qt.TextSelectableByMouse ) - self.install_button.setMinimumSize(64, 24) - self.install_button.setToolTip("Install OpenPype") - self.install_button.clicked.connect(self._on_ok_clicked) - # run from current button - - - - - - - - - - - - - - - - - - - - - - - self.run_button = QtWidgets.QPushButton("Run without installation") - self.run_button.setStyleSheet( - ("color: rgb(64, 64, 64);" - "background-color: rgb(200, 164, 64);" - "padding: 0.5em;") - ) - self.run_button.setMinimumSize(64, 24) - self.run_button.setToolTip("Run without installing Pype") - self.run_button.clicked.connect(self._on_run_clicked) - - # install button - - - - - - - - - - - - - - - - - - - - - - - - - - - - self._exit_button = QtWidgets.QPushButton("Exit") - self._exit_button.setStyleSheet( - ("color: rgb(64, 64, 64);" - "background-color: rgb(128, 128, 128);" - "padding: 0.5em;") - ) - self._exit_button.setMinimumSize(64, 24) - self._exit_button.setToolTip("Exit") - self._exit_button.clicked.connect(self._on_exit_clicked) - - bottom_layout.setContentsMargins(0, 10, 10, 0) - bottom_layout.setAlignment(QtCore.Qt.AlignVCenter) - bottom_layout.addWidget(openpype_logo_label, 0, QtCore.Qt.AlignVCenter) - bottom_layout.addStretch(1) - bottom_layout.addWidget(self.install_button, 0, QtCore.Qt.AlignVCenter) - bottom_layout.addWidget(self.run_button, 0, QtCore.Qt.AlignVCenter) - bottom_layout.addWidget(self._exit_button, 0, QtCore.Qt.AlignVCenter) - - bottom_widget.setLayout(bottom_layout) - bottom_widget.setStyleSheet("background-color: rgb(32, 32, 32);") - - # Console label - # -------------------------------------------------------------------- - self._status_label = QtWidgets.QLabel("Console:") - self._status_label.setContentsMargins(0, 10, 0, 10) - self._status_label.setStyleSheet("color: rgb(61, 115, 97);") - - # Console - # -------------------------------------------------------------------- - self._status_box = QtWidgets.QPlainTextEdit() - self._status_box.setReadOnly(True) - self._status_box.setCurrentCharFormat(self.default_console_style) - self._status_box.setStyleSheet( - """QPlainTextEdit { - background-color: rgb(32, 32, 32); - color: rgb(72, 200, 150); - font-family: "Roboto Mono"; - font-size: 0.5em; - border: 1px solid rgb(48, 48, 48); - } - QScrollBar:vertical { - border: 1px solid rgb(61, 115, 97); - background: #000; - width:5px; - margin: 0px 0px 0px 0px; - } - QScrollBar::handle:vertical { - background: rgb(72, 200, 150); - min-height: 0px; - } - QScrollBar::sub-page:vertical { - background: rgb(31, 62, 50); - } - QScrollBar::add-page:vertical { - background: rgb(31, 62, 50); - } - QScrollBar::add-line:vertical { - background: rgb(72, 200, 150); - height: 0px; - subcontrol-position: bottom; - subcontrol-origin: margin; - } - QScrollBar::sub-line:vertical { - background: rgb(72, 200, 150); - height: 0 px; - subcontrol-position: top; - subcontrol-origin: margin; - } - """ - ) + mongo_messages_layout = QtWidgets.QVBoxLayout(mongo_messages_widget) + mongo_messages_layout.setContentsMargins(0, 0, 0, 0) + mongo_messages_layout.addWidget(mongo_connection_msg) # Progress bar # -------------------------------------------------------------------- - self._progress_bar = QtWidgets.QProgressBar() - self._progress_bar.setValue(0) - self._progress_bar.setAlignment(QtCore.Qt.AlignCenter) - self._progress_bar.setTextVisible(False) - # setting font and the size - self._progress_bar.setFont(QtGui.QFont('Arial', 7)) - self._progress_bar.setStyleSheet( - """QProgressBar:horizontal { - height: 5px; - border: 1px solid rgb(31, 62, 50); - color: rgb(72, 200, 150); - } - QProgressBar::chunk:horizontal { - background-color: rgb(72, 200, 150); - } - """ + progress_bar = NiceProgressBar(self) + progress_bar.setAlignment(QtCore.Qt.AlignCenter) + progress_bar.setTextVisible(False) + + # Console + # -------------------------------------------------------------------- + console_widget = ConsoleWidget(self) + + # Bottom button bar + # -------------------------------------------------------------------- + bottom_widget = QtWidgets.QWidget(self) + + btns_widget = QtWidgets.QWidget(bottom_widget) + + openpype_logo_label = QtWidgets.QLabel("openpype logo", bottom_widget) + openpype_logo_label.setPixmap(self._pixmap_openpype_logo) + + run_button = ButtonWithOptions( + self.commands, + btns_widget ) + run_button.setMinimumSize(64, 24) + run_button.setToolTip("Run OpenPype") + + # install button - - - - - - - - - - - - - - - - - - - - - - - - - - - + exit_button = QtWidgets.QPushButton("Exit", btns_widget) + exit_button.setObjectName("ExitBtn") + exit_button.setFlat(True) + exit_button.setMinimumSize(64, 24) + exit_button.setToolTip("Exit") + + btns_layout = QtWidgets.QHBoxLayout(btns_widget) + btns_layout.setContentsMargins(0, 0, 0, 0) + btns_layout.addWidget(run_button, 0) + btns_layout.addWidget(exit_button, 0) + + bottom_layout = QtWidgets.QHBoxLayout(bottom_widget) + bottom_layout.setContentsMargins(0, 0, 0, 0) + bottom_layout.setAlignment(QtCore.Qt.AlignHCenter) + bottom_layout.addWidget(openpype_logo_label, 0) + bottom_layout.addStretch(1) + bottom_layout.addWidget(btns_widget, 0) + # add all to main - main.addWidget(self.main_label, 0) - main.addWidget(self.openpype_path_label, 0) - main.addLayout(input_layout, 0) - main.addWidget(self.mongo_label, 0) - main.addWidget(self._mongo, 0) + main = QtWidgets.QVBoxLayout(self) + main.addSpacing(15) + main.addWidget(main_label, 0) + main.addSpacing(15) + main.addWidget(mongo_input, 0) + main.addWidget(mongo_messages_widget, 0) - main.addWidget(self._status_label, 0) - main.addWidget(self._status_box, 1) + main.addWidget(progress_bar, 0) + main.addSpacing(15) + + main.addWidget(console_widget, 1) - main.addWidget(self._progress_bar, 0) main.addWidget(bottom_widget, 0) - self.setLayout(main) + run_button.option_clicked.connect(self._on_run_btn_click) + exit_button.clicked.connect(self._on_exit_clicked) + mongo_input.textChanged.connect(self._on_mongo_url_change) - # if mongo url is ok, try to get openpype path from there - if self._mongo.validate_url() and len(self.path) == 0: - self.path = get_openpype_path_from_db(self.mongo_url) - self.user_input.setText(self.path) + self._console_widget = console_widget - def _on_select_clicked(self): - """Show directory dialog.""" - options = QtWidgets.QFileDialog.Options() - options |= QtWidgets.QFileDialog.DontUseNativeDialog - options |= QtWidgets.QFileDialog.ShowDirsOnly + self.main_label = main_label - result = QtWidgets.QFileDialog.getExistingDirectory( - parent=self, - caption='Select path', - directory=os.getcwd(), - options=options) + self._mongo_input = mongo_input - if not result: + self._mongo_connection_msg = mongo_connection_msg + + self._run_button = run_button + self._exit_button = exit_button + self._progress_bar = progress_bar + + def _on_run_btn_click(self, option): + # Disable buttons + self._disable_buttons() + # Set progress to any value + self._update_progress(1) + self._progress_bar.repaint() + # Add label to show that is connecting to mongo + self.set_invalid_mongo_connection(self.mongo_url, True) + + # Process events to repaint changes + QtWidgets.QApplication.processEvents() + + if not self.validate_url(): + self._enable_buttons() + self._update_progress(0) + # Update any messages + self._mongo_input.setText(self.mongo_url) return - filename = QtCore.QDir.toNativeSeparators(result) - - if os.path.isdir(filename): - self.path = filename - self.user_input.setText(filename) - - def _on_run_clicked(self): - valid, reason = validate_mongo_connection( - self._mongo.get_mongo_url() - ) - if not valid: - self._mongo.set_invalid() - self.update_console(f"!!! {reason}", True) - return + if option == "run": + self._run_openpype() + elif option == "run_from_code": + self._run_openpype_from_code() else: - self._mongo.set_valid() + raise AssertionError("BUG: Unknown variant \"{}\"".format(option)) + + self._enable_buttons() + + def _run_openpype_from_code(self): + os.environ["OPENPYPE_MONGO"] = self.mongo_url + try: + self._secure_registry.set_item("openPypeMongo", self.mongo_url) + except ValueError: + print("Couldn't save Mongo URL to keyring") self.done(2) - def _on_ok_clicked(self): + def _run_openpype(self): """Start install process. This will once again validate entered path and mongo if ok, start working thread that will do actual job. """ - valid, reason = validate_mongo_connection( - self._mongo.get_mongo_url() - ) - if not valid: - self._mongo.set_invalid() - self.update_console(f"!!! {reason}", True) - return - else: - self._mongo.set_valid() - - if self._openpype_run_ready: - self.done(3) + # Check if install thread is not already running + if self._install_thread and self._install_thread.isRunning(): return - if self.path and len(self.path) > 0: - valid, reason = validate_path_string(self.path) + self._mongo_input.set_valid() - if not valid: - self.update_console(f"!!! {reason}", True) - return + install_thread = InstallThread(self) + install_thread.message.connect(self.update_console) + install_thread.progress.connect(self._update_progress) + install_thread.finished.connect(self._installation_finished) + install_thread.set_mongo(self.mongo_url) - self._disable_buttons() - self._install_thread = InstallThread( - self.install_result_callback_handler, self) - self._install_thread.message.connect(self.update_console) - self._install_thread.progress.connect(self._update_progress) - self._install_thread.finished.connect(self._enable_buttons) - self._install_thread.set_path(self.path) - self._install_thread.set_mongo(self._mongo.get_mongo_url()) - self._install_thread.start() + self._install_thread = install_thread - def install_result_callback_handler(self, result: InstallResult): - """Change button behaviour based on installation outcome.""" - status = result.status + install_thread.start() + + def _installation_finished(self): + status = self._install_thread.result() if status >= 0: - self.install_button.setText("Run installed OpenPype") - self._openpype_run_ready = True + self._update_progress(100) + QtWidgets.QApplication.processEvents() + self.done(3) + else: + self._show_console() def _update_progress(self, progress: int): self._progress_bar.setValue(progress) + text_visible = self._progress_bar.isTextVisible() + if progress == 0: + if text_visible: + self._progress_bar.setTextVisible(False) + elif not text_visible: + self._progress_bar.setTextVisible(True) def _on_exit_clicked(self): self.reject() - def _path_changed(self, path: str) -> str: - """Set path.""" - self.path = path - return path + def _on_mongo_url_change(self, new_value): + # Strip the value + new_value = new_value.strip() + # Store new mongo url to variable + self.mongo_url = new_value + + msg = None + # Change style of input + if not new_value: + self._mongo_input.remove_state() + elif not self.mongo_url_regex.match(new_value): + self._mongo_input.set_invalid() + msg = ( + "Mongo URL should start with" + " \"mongodb://\" or \"mongodb+srv://\"" + ) + else: + self._mongo_input.set_valid() + + self.set_invalid_mongo_url(msg) + + def validate_url(self): + """Validate if entered url is ok. + + Returns: + True if url is valid monogo string. + + """ + if self.mongo_url == "": + return False + + is_valid, reason_str = validate_mongo_connection(self.mongo_url) + if not is_valid: + self.set_invalid_mongo_connection(self.mongo_url) + self._mongo_input.set_invalid() + self.update_console(f"!!! {reason_str}", True) + return False + + self.set_invalid_mongo_connection(None) + self._mongo_input.set_valid() + return True + + def set_invalid_mongo_url(self, reason): + if reason is None: + self._mongo_connection_msg.setText("") + else: + self._mongo_connection_msg.setText("- {}".format(reason)) + + def set_invalid_mongo_connection(self, mongo_url, connecting=False): + if mongo_url is None: + self.set_invalid_mongo_url(mongo_url) + return + + if connecting: + msg = "Connecting to: {}".format(mongo_url) + else: + msg = "Can't connect to: {}".format(mongo_url) + + self.set_invalid_mongo_url(msg) def update_console(self, msg: str, error: bool = False) -> None: """Display message in console. @@ -523,26 +504,22 @@ class InstallDialog(QtWidgets.QDialog): msg (str): message. error (bool): if True, print it red. """ - if not error: - self._status_box.setCurrentCharFormat(self.default_console_style) - else: - self._status_box.setCurrentCharFormat(self.error_console_style) - self._status_box.appendPlainText(msg) + self._console_widget.update_console(msg, error) + + def _show_console(self): + self._console_widget.show_console() + self.updateGeometry() def _disable_buttons(self): """Disable buttons so user interaction doesn't interfere.""" - self._btn_select.setEnabled(False) - self.run_button.setEnabled(False) self._exit_button.setEnabled(False) - self.install_button.setEnabled(False) + self._run_button.setEnabled(False) self._controls_disabled = True def _enable_buttons(self): """Enable buttons after operation is complete.""" - self._btn_select.setEnabled(True) - self.run_button.setEnabled(True) self._exit_button.setEnabled(True) - self.install_button.setEnabled(True) + self._run_button.setEnabled(True) self._controls_disabled = False def closeEvent(self, event): # noqa @@ -552,212 +529,6 @@ class InstallDialog(QtWidgets.QDialog): return super(InstallDialog, self).closeEvent(event) -class MongoValidator(QValidator): - """Validate mongodb url for Qt widgets.""" - - def __init__(self, parent=None, intermediate=False): - self.parent = parent - self.intermediate = intermediate - self._validate_lock = False - self.timer = QTimer() - self.timer.timeout.connect(self._unlock_validator) - super().__init__(parent) - - def _unlock_validator(self): - self._validate_lock = False - - def _return_state( - self, state: QValidator.State, reason: str, mongo: str): - """Set stylesheets and actions on parent based on state. - - Warning: - This will always return `QValidator.State.Acceptable` as - anything different will stop input to `QLineEdit` - - """ - - if state == QValidator.State.Invalid: - self.parent.setToolTip(reason) - self.parent.setStyleSheet( - """ - background-color: rgb(32, 19, 19); - color: rgb(255, 69, 0); - padding: 0.5em; - border: 1px solid rgb(64, 32, 32); - """ - ) - elif state == QValidator.State.Intermediate and self.intermediate: - self.parent.setToolTip(reason) - self.parent.setStyleSheet( - """ - background-color: rgb(32, 32, 19); - color: rgb(255, 190, 15); - padding: 0.5em; - border: 1px solid rgb(64, 64, 32); - """ - ) - else: - self.parent.setToolTip(reason) - self.parent.setStyleSheet( - """ - background-color: rgb(19, 19, 19); - color: rgb(64, 230, 132); - padding: 0.5em; - border: 1px solid rgb(32, 64, 32); - """ - ) - - return QValidator.State.Acceptable, mongo, len(mongo) - - def validate(self, mongo: str, pos: int) -> (QValidator.State, str, int): # noqa - """Validate entered mongodb connection string. - - As url (it should start with `mongodb://` or - `mongodb+srv:// url schema. - - Args: - mongo (str): connection string url. - pos (int): current position. - - Returns: - (QValidator.State.Acceptable, str, int): - Indicate input state with color and always return - Acceptable state as we need to be able to edit input further. - - """ - if not mongo.startswith("mongodb"): - return self._return_state( - QValidator.State.Invalid, "need mongodb schema", mongo) - - return self._return_state( - QValidator.State.Intermediate, "", mongo) - - -class PathValidator(MongoValidator): - """Validate mongodb url for Qt widgets.""" - - def validate(self, path: str, pos: int) -> (QValidator.State, str, int): # noqa - """Validate path to be accepted by Igniter. - - Args: - path (str): path to OpenPype. - pos (int): current position. - - Returns: - (QValidator.State.Acceptable, str, int): - Indicate input state with color and always return - Acceptable state as we need to be able to edit input further. - - """ - # allow empty path as that will use current version coming with - # OpenPype Igniter - if len(path) == 0: - return self._return_state( - QValidator.State.Acceptable, "Use version with Igniter", path) - - if len(path) > 3: - valid, reason = validate_path_string(path) - if not valid: - return self._return_state( - QValidator.State.Invalid, reason, path) - else: - return self._return_state( - QValidator.State.Acceptable, reason, path) - - -class CollapsibleWidget(QtWidgets.QWidget): - """Collapsible widget to hide mongo url in necessary.""" - - def __init__(self, parent=None, title: str = "", animation: int = 300): - self._mainLayout = QtWidgets.QGridLayout(parent) - self._toggleButton = QtWidgets.QToolButton(parent) - self._headerLine = QtWidgets.QFrame(parent) - self._toggleAnimation = QtCore.QParallelAnimationGroup(parent) - self._contentArea = QtWidgets.QScrollArea(parent) - self._animation = animation - self._title = title - super(CollapsibleWidget, self).__init__(parent) - self._init_ui() - - def _init_ui(self): - self._toggleButton.setStyleSheet( - """QToolButton { - border: none; - } - """) - self._toggleButton.setToolButtonStyle( - QtCore.Qt.ToolButtonTextBesideIcon) - - self._toggleButton.setArrowType(QtCore.Qt.ArrowType.RightArrow) - self._toggleButton.setText(self._title) - self._toggleButton.setCheckable(True) - self._toggleButton.setChecked(False) - - self._headerLine.setFrameShape(QtWidgets.QFrame.HLine) - self._headerLine.setFrameShadow(QtWidgets.QFrame.Sunken) - self._headerLine.setSizePolicy(QtWidgets.QSizePolicy.Expanding, - QtWidgets.QSizePolicy.Maximum) - - self._contentArea.setStyleSheet( - """QScrollArea { - background-color: rgb(32, 32, 32); - border: none; - } - """) - self._contentArea.setSizePolicy(QtWidgets.QSizePolicy.Expanding, - QtWidgets.QSizePolicy.Fixed) - self._contentArea.setMaximumHeight(0) - self._contentArea.setMinimumHeight(0) - - self._toggleAnimation.addAnimation( - QtCore.QPropertyAnimation(self, b"minimumHeight")) - self._toggleAnimation.addAnimation( - QtCore.QPropertyAnimation(self, b"maximumHeight")) - self._toggleAnimation.addAnimation( - QtCore.QPropertyAnimation(self._contentArea, b"maximumHeight")) - - self._mainLayout.setVerticalSpacing(0) - self._mainLayout.setContentsMargins(0, 0, 0, 0) - - row = 0 - - self._mainLayout.addWidget( - self._toggleButton, row, 0, 1, 1, QtCore.Qt.AlignCenter) - self._mainLayout.addWidget( - self._headerLine, row, 2, 1, 1) - row += row - self._mainLayout.addWidget(self._contentArea, row, 0, 1, 3) - self.setLayout(self._mainLayout) - - self._toggleButton.toggled.connect(self._toggle_action) - - def _toggle_action(self, collapsed: bool): - arrow = QtCore.Qt.ArrowType.DownArrow if collapsed else QtCore.Qt.ArrowType.RightArrow # noqa: E501 - direction = QtCore.QAbstractAnimation.Forward if collapsed else QtCore.QAbstractAnimation.Backward # noqa: E501 - self._toggleButton.setArrowType(arrow) - self._toggleAnimation.setDirection(direction) - self._toggleAnimation.start() - - def setContentLayout(self, content_layout: QtWidgets.QLayout): # noqa - self._contentArea.setLayout(content_layout) - collapsed_height = \ - self.sizeHint().height() - self._contentArea.maximumHeight() - content_height = self._contentArea.sizeHint().height() - - for i in range(self._toggleAnimation.animationCount() - 1): - sec_anim = self._toggleAnimation.animationAt(i) - sec_anim.setDuration(self._animation) - sec_anim.setStartValue(collapsed_height) - sec_anim.setEndValue(collapsed_height + content_height) - - con_anim = self._toggleAnimation.animationAt( - self._toggleAnimation.animationCount() - 1) - - con_anim.setDuration(self._animation) - con_anim.setStartValue(0) - con_anim.setEndValue(collapsed_height + content_height) - - if __name__ == "__main__": app = QtWidgets.QApplication(sys.argv) d = InstallDialog() diff --git a/igniter/install_thread.py b/igniter/install_thread.py index df8b830209..383012b88b 100644 --- a/igniter/install_thread.py +++ b/igniter/install_thread.py @@ -17,12 +17,6 @@ from .bootstrap_repos import ( from .tools import validate_mongo_connection -class InstallResult(QObject): - """Used to pass results back.""" - def __init__(self, value): - self.status = value - - class InstallThread(QThread): """Install Worker thread. @@ -36,15 +30,22 @@ class InstallThread(QThread): """ progress = Signal(int) message = Signal((str, bool)) - finished = Signal(object) - def __init__(self, callback, parent=None,): + def __init__(self, parent=None,): self._mongo = None self._path = None - self.result_callback = callback + self._result = None QThread.__init__(self, parent) - self.finished.connect(callback) + + def result(self): + """Result of finished installation.""" + return self._result + + def _set_result(self, value): + if self._result is not None: + raise AssertionError("BUG: Result was set more than once!") + self._result = value def run(self): """Thread entry point. @@ -76,7 +77,7 @@ class InstallThread(QThread): except ValueError: self.message.emit( "!!! We need MongoDB URL to proceed.", True) - self.finished.emit(InstallResult(-1)) + self._set_result(-1) return else: self._mongo = os.getenv("OPENPYPE_MONGO") @@ -101,7 +102,7 @@ class InstallThread(QThread): self.message.emit("Skipping OpenPype install ...", False) if detected[-1].path.suffix.lower() == ".zip": bs.extract_openpype(detected[-1]) - self.finished.emit(InstallResult(0)) + self._set_result(0) return if OpenPypeVersion(version=local_version).get_main_version() == detected[-1].get_main_version(): # noqa @@ -110,7 +111,7 @@ class InstallThread(QThread): f"currently running {local_version}" ), False) self.message.emit("Skipping OpenPype install ...", False) - self.finished.emit(InstallResult(0)) + self._set_result(0) return self.message.emit(( @@ -126,13 +127,13 @@ class InstallThread(QThread): if not openpype_version: self.message.emit( f"!!! Install failed - {openpype_version}", True) - self.finished.emit(InstallResult(-1)) + self._set_result(-1) return self.message.emit(f"Using: {openpype_version}", False) bs.install_version(openpype_version) self.message.emit(f"Installed as {openpype_version}", False) self.progress.emit(100) - self.finished.emit(InstallResult(1)) + self._set_result(1) return else: self.message.emit("None detected.", False) @@ -144,7 +145,7 @@ class InstallThread(QThread): if not local_openpype: self.message.emit( f"!!! Install failed - {local_openpype}", True) - self.finished.emit(InstallResult(-1)) + self._set_result(-1) return try: @@ -154,11 +155,12 @@ class InstallThread(QThread): OpenPypeVersionIOError) as e: self.message.emit(f"Installed failed: ", True) self.message.emit(str(e), True) - self.finished.emit(InstallResult(-1)) + self._set_result(-1) return self.message.emit(f"Installed as {local_openpype}", False) self.progress.emit(100) + self._set_result(1) return else: # if we have mongo connection string, validate it, set it to @@ -167,7 +169,7 @@ class InstallThread(QThread): if not validate_mongo_connection(self._mongo): self.message.emit( f"!!! invalid mongo url {self._mongo}", True) - self.finished.emit(InstallResult(-1)) + self._set_result(-1) return bs.secure_registry.set_item("openPypeMongo", self._mongo) os.environ["OPENPYPE_MONGO"] = self._mongo @@ -177,11 +179,11 @@ class InstallThread(QThread): if not repo_file: self.message.emit("!!! Cannot install", True) - self.finished.emit(InstallResult(-1)) + self._set_result(-1) return self.progress.emit(100) - self.finished.emit(InstallResult(1)) + self._set_result(1) return def set_path(self, path: str) -> None: diff --git a/igniter/openpype.icns b/igniter/openpype.icns new file mode 100644 index 0000000000000000000000000000000000000000..792f819ad9b6cbe986c6d4346e3d3f3816937671 GIT binary patch literal 126349 zcmZ6x1B@szvo^f8ZQHhO+qP}nwr!rZZCht;+q>U+-`xDU|83gNGwF1aHce+b9ZO?7 zX8^$KSW9CD&VMu%0002SN`Zg?7AhR-A4V~A@pQ0qU?TX30se=||DzWFSTsuu6DI%w zpnvdR0|5vBj|>33vAvBG;C~^)zn;k0#MBG`5C9Ye1OV_?2LM?>Kte*{f7f3V08#)z zVJA~V7gG}gBToW(2U9yK1yOMVH&Z8POM5#4COSqsrr!jB|11~qD&(J@kgHMz^~n!R5<% z0>X)Z7J3*)%%u3^W7&Z;XG|NnKuC#{7u-~&psuYp~ z7J+k`d^g3To9I+BmFyX+oiorF(H_cbsYva_aai2FoINfxr$v7?0y?y`5GH7fmj7yv z{MwOpmgO=I?;raEEvL5u+h3S3l=jUh?h8APagA&L97)ZNQpR|z;b#Og3rXlOI@>~_ z1EoHuZG$*T4DF(mrSFkw|ptB5W|GWuub{HzkpzF0vC zy12vP(coPAi$D=-$5q|u=})$K#qaus|L;BNpn1J41b=^LocyfAk1LjWM3F=@ZO`&N zPlYiH3F}`lmv@wbF=xF6<13?I6NRH?IcH3mjI}BLCGM_|Ti+dvZ!^{RppNGh-7dzd_QS;3GmFAnwFS^f_ct#1U01W(bq`>vax(%-FGcQ*+24v>jeN_dw!geuWd7+^ArOg>k1U!V`F=h6e<5On_x z5vE1SW{JH_JhwL)HH`K_^oL?e-STv`X0*?2wFB#Uwqng2-*4jd2 zewiTK82G@jkHS&2is1(p9BsOK`|+LXlG3*87Zrf8c@My0WEmaIF@H#XPohcI#J;6R zq3lwKuWI_&bwv)3Bk{C+N{$Tzh{5)vlek6NO)n64f#5L}gncRPnQ5-kEaf8@{;mtJ z;%tY|k=S=xB+h|W`YvyEJxnb?`2{=O?0sfsOd-Z*-82bath-pUIuUKQQo>!0Fi~Du zps@<9KkM8Uc(Ym`4`<}ylEn?Nx^Hg2*0o!%OG_z3+3*d~7EsLfmaD#1>2GKOnqoNg zTM!fN7$5{6x^4Ux(dDm%fEh{x*GVX57d8~K*COikMR2WU0tp*WAR3E6JQUD$-VAnu z#NbT`rOPPCh(b&~Gm~de2Dj{9!&O5=wU#NP+WQ~5dT2Ax9F1v$t343yt)+hdu?;2h zEk*HNMSz$Ee&UQ&NBsasaZ4s>1Mb`6Fo?>JQB07mus4HI=$@r##T?zy=bq+5dg>q( z`|!M&YPyPg*B#EScfnCzF6r1~M_#a!NGRHu0<>|w_3_GFLM9DhngawKkLmJv(^RL^08a}XswYwDn#Pc(TQLA9 z#Uwu&8S5E1ZeLGN>Pgb;RqoqhVB}Fiq*GS>PUhf*{fuBDl#>Aa0$?AhHm#gO-SXj)AYTJa6~iPuq1F zFiTg?;|77^kn$)%PDS^xX}DOT@1ayXcn*ra0dHdQKhPAo#`S;`s*Y8u#_tdH@8{KL32r!Q`LZDe{lX!MVsinz9tVsdv^i^@!H+c}8lmBC=*rjTRAYZ8ZBtZ_-YVK%t76V zD@G23WnCL0hdg{0l?Q?Pv;u+MO*78SjD)+X`F?6XUsnw|GwGk;9cfVOIGd;SWB6m% zl^ZIq6L#7S|2^eZ;cja&{O^48Bign=5-J$D3 z4BZlqWTNT^xslojQAPx`J{wzb`cBKH%nW@e>>mSYIVwti$;M~Uz+A!InpN@vP?3kj z`Y8wRZp@MBI$CQneF0a(uE2vY!fEl=hd+(2_e%1@T?5 zv;^=cSgf4P6kJPRxab5T&zkyLi^&Fp8j88yzkO{>#>-0$gO=s^SaZXzBSd%=)`ovN ze9R`)$fc{Jho+P}bMWMt^6#wy<)-m$aChwcR2TANQT!%w+!!W?!$}=ZQZA{;Xw#V3 zu`fn5n24?Sn3JgrMs<(F19H~+3tT5La5GGTl`_xN+wV;PSgLFEYOCPHSZ@1~aex%qt6?EO1&cUn{Tu530J_b^;e zL$9v3Z@}B+-|FUaQWG824AZ;FA$jV_wBK3#ih#$gC*^~GN1|Wb!k!1zbTRDA4_tR-0V^p$MKvz{b#JzjQ>%@TSIfz*|D0}U z_Lm!`rpX{#n!RufZ)slfatu$~W9?Ut2P91hX29t#)H8YPD$FP_Hn2y5w!ya(WvmJJ z_R>|)W#}keu|9w*ee9E%QY6p4jo$xxQ%xjfq5r$hbv7flYNMW^u~?+Gpbwkfgrhon z7wMDrjbdD#^I)KnYbBoXcNy`sS^LF%zy_s)fD|o5AOZZCy;hBvr0n>47yE|4IV3#V zfhW>b-R1)rWL-F2L9CEFi|L7z%jG+I7VW8Gb#m7*oYw_kkhfbLF#ev%zvS%AX z%w7iVvt$!?ot&g9upn@{uY5vdQd*OFwK->L3PKSMzEnws2IFAI{lp-7RGoqGk^8*x zwumyNWY8ed4R#%7H`opGg3Mp<(&AKbKHu4l(T#vw4 zAjn>ksay+zhsw*H`3El&QQ922{F`|e=v1b% z5!q`go}R=E_#qqxsH-d9a-m8a*hT;luETL(@&vf>EIq?;H?`7FE%jqV;J>CV$`p@s z+}eN@+K5E^D(1GmP>WKaXi+tP86n2X3z{eJ7^?tlI5GMHgb3Y0U7F_DXO8A`keBI& zj#L4_IvO*oKjE!pHvzx^$mwT_DR61o%0?JUi2PQ7y0w)&YdKtX$bt@kjv=N)L_&Xy z0EB-^M;;@GIuv)~Xz)qXJPPrxPy8=|trinUNr&-F5(z+cnha2T+eU})24AWFCO-3| z0lq=_s9>U1azZmW^r^lqOofGqO$il#FH|b+18kFMCy!N;R5Y|_H8v8SR%r% zzq&&&KiMjkQ$37CZHs7pOHS|8 zKv!xWCzr$PjS8|%GindEwb^P4sG&iBtm%7rHN|I;>a#2s^989)1{Dx|SueZWPL+gK zGu{=2XU@ww`Iid`^TRj}?0^7BkcL)3D(a0cT_FO#$r8*%c)o&0 z?;bB1yRV2_QG<9RbPZHJya24xao)krR_vd zXD`(|M1<|_VzaCxV&e^}&$CgoaU_d{^Tta$pdA#EN;fURKgA<;I1o`$q70sMpJ=NC zuktZMLDOhYpX`@Yf7z)Zg&o5lbs_Y}wptKhuD1Dh zN{4PJHRIv{Cuug@4Wx%()70U{;!eP|jG$e@v=~mi!UqaU9Rk~D*#K+E&RDkKa%ur(6I)%Ur@g3!_pgRO0eArJY~9?-#~!qMzX!?G-0S zf7&{~)5q!Y^2udjGC~H3N^;c-UQxH41Q?vXEM=>P_a`?;be~W)mB^Ta9R=p95vif6 zJ0EE}HZ9bh+vf~YUphyc(3k_*Q^H>qnK0+tC29$64uRVb-n%%ykCk$y4&!O4?Ks)6 z4FZQ$VbRl2*lBe@7x}o|Orv}Gh4~)Xui0?LJk(&?3e4pDC>sRTI$O039M`aZ z#rHbbllQ5Jjlo!A7cO)dGRxTTQd5|O$~UToP(5tqbLIDL*o$gbZd2spMqa!`HiNRi zZ_1DY`(9WRfm$RWk@tCm-MP0KvD4f87h41uXT*z_B3z5pU63iArvP|(LF0y;Yb8oe z4!2YCGoH!E+lKuTBK7!2{B$$_Cj&#tVsTz+AD2Spz_9~3>n&12-PGl_@p}D9NLR*C zdbNS9TAUlEmP{C#14P|3<)f%bOuIB=(bs)hVJx|WYBlFkGt|6*e7 z#DsLrpB`LX#QMS@E0iHQ4nVk@pJK_QFiN~9cgMxnQ~a-hpB^c! zz59KagX)p40ag>1UkoW)4^X9pJ2IG29|^O1x5`wa;urAH36;@iL1pa8W3-7l1NZCT zCDuK)@n`X2sLL$nzyRr%aQA`|HWnzUxrByH>ImHUzDa+jA0?ts9Per+on*G3SLy*O z?VqyqpOSLvyHX?;Zl+xNvzc}=sTj4p6a5St=;gow}80=-i`svOR5?6YIs7=F++25O&${c_`a=!8s)mT_F}iNH@2Tzc|tismRX+~ z^iVF~e@0uYSPyseMcq&5L;P@|0ETXAgtzgEsj<2gohcrKS?7Hzi|0>GTWiIqL*qVb(R_xAXQ*pO=h)iMe=e*fladTS9kOK8#d+_|AF5$_ zz9*Bv$d%CAY`sgM2`8RoK7coa;J1tH3vYL0*8@f5<1ZW4t{ z=`X^}6UO~K&rl((H9=t`z(eBEjBfY^sF(Lw41@*+dk8-~^9`9C__8K=eVTwQGR{cx zX7rZXAquihVPm}mCo}BM!s4Dxa%0sd`Yg41pfIRpcfSvT0%cW~vW2zagIHa!%vHcM z43E~~Y+3i#SO>vx{0DrGU-L0kUjcPgt|$o%Y+`ERZwczdPu4;6?@db?oxDfe@R^sB zc_rdrq!Qc&F)L`cAbRkNOGxM<6#V>T(W+2_O?Sq6u<;@g$w(V?qkC&Awa~SV<#2rh zMDT>&=gzP&Y-ECm{yYl>-HxkB>jYTgq+UqFx?|i!XO=*xQnW=X8!-EiW?4|kCYGc& zKImQsq&&p(I~z=B8c;6hl@bJn)^t+McB5s*7siDZVbKI@fKJ{*ZRwS(r^tXh`;%Wb z{vlTtahMW)h4?Z7fMK$L6byfb%G>Z+%ued%7)jGBcN`G;a6Ge{|VrikY8#fafBG(wje*1M8n zx$(vTbW=49X^?yn;W@Ho?4Ijr%eAaICC=VNp~7qyueSHEF49Z}cmOBCwx-Kljj8-B zzO*4NlEU&GNums$Tq}ERv{8mOqRetxLgqa}c$QckB4a!E1W(Dz+H-ZLrZH>;%^OuLU1OM9E zw$H5)2ghtS#xDVqvGPpAEJ%kF!PHF$hc`41V z`$uz{hR9_ub@-fBs>;Q>;LYlN+QMBYj(dO; z7H}v6y8%whc&OAuk}F<}cuW~isD)e`y~1d!uRlAdPNz(?d@`k_2 z_YM|hHddg@#)rSAHVhJQ%72U(c}4K?o+i++U1+sq*T1Y9k4Sz1W@}6a=IGOomoor= z9!mMm36E9~h7&smR}I<>h|G{6A}?=Vuxg*#Ei&u4j4<9VGwtWvi-F@Qz{>M2E_$c& z0oX!P^vC&M)IRan_;q5FM^M_C(>cXlGL%UPEOZg=;7OEuxLZKM{AdEjw+&iRtlH4Q zpV$}SA^X#XPgOVO77+yYKuS5Tr;TTjz&imG$=JzdRB-Q6=wxdLOR`~#VG|8X{BXJr zeaTP{QE(K_zO7W~3UH#9!YU>ws!%DLeUvTt%Mb&0DS!nT?mygO>od!{s(8fofxOF$ znv$Miwg%QItxr*@&@7VaOaNvJEP24JZXAW4VqA@Bpabmt z!i781Vj@0?!JM;JTny|+DZ$zu+Y(`;dWMXXzutCHtvZjISVxig51ScF_B{nt0RiX6 z&x6&3dWEbDNY;vHnR4=b2IWq;$6JQuF2JB3Z?Wd;Hc^a%X9 z%-r^78UK()W6kYtWFnVtCn7V48?EIollOJ{?c*6b8x@{c~nbW*KiC71`8v6 zNb`K0NGXPHI{2#?)y~;Ms2@ys^|?DF+4V}pJPGPm_q|+DAX5}qB+a-O^w<)1sr1LL z)IXH<`z&{g5MC$z+W2%WaL8^aumr_>fdMH;cgaE4lKW)f73#`zYtpbTr%E)o0comp z8(U`$Rj^5C@`<+Pd2M36sqkLBakUPoE5-7lELZJfpIa`(NTjv_ZT?Oh(y{~gHo z`1KMs`{Hi~;%g5J6)dTi;pHf~L|kUOBmS)Yqi2n28Gt*tPvH0N4x(#vQLUg|_Lm_c zhnPzQO>sLTh?I5SWW6SH?b(^~CvG(+X-f8#Ht}vIKS^Vgj9F~DJ(eRdz`PNAQ4cdeuRNu@3+S6Ac3tdd>Te>c=&g+v8L`!89iy9p& zO+6N3`i57Jjytt^NEfj;5`^M#YmCQ0A(+Ttd4C?@cTGs8CLJ!F5%Dx6IJmv3pJi5h^>omrxk3X_6 zFP1}H!qprZOLzOzO0=jw#?QQ!pYtQOS{n$s3r%1Ogs99R!Tr@V9!!v2vBx0=uSz?O@JPQ zsA7=tQL{8lVli7eNwg#7bI-ubyugI0i{_Jr8AWwZo@-2nPvu5%?P-Bnk%(k+ov{AJ z{wtvB{mN;!i8 z-{6)^1kdwygdV31*6rU!=Du7yJ00Ns5szP_Ac!FMe~X6?J?q5w&c93~JW!o8?@br= zPiM2v56&%E7DCE26rlt2%+3 z9>s3?x4c)~c&X3AAc;mHx+ZWWX%%@aPD<-NT23tPaVO?^5SBQu6kpE>mt^)^QvBqS zO|n{OcOTpb5aV{?bmkeM6ZyLBlWy%Uv)1=><$M!RK{p0V8fe+_Z^tJetZ zzDrtwAsu~rU6tc#n#*G~gukE>5!%OkMH4b6+}+Sl{(OxK)gAIh?9oAm(}CeIjQ4Nk zRp={lpS}|XGX#*2bPyW$dNT;emx__B(9a>I=*ls~Hw5$ykA{X&v(rXIU^HJV6Vpu} z{(3{WEtKObCoql7GCmrG=1;YFl7I(q_aOs{9|D|0j zF^#?p_2IZ25q3n#V_#iXCq4S(XWNyb`=0EncO1FoTd#?>MvVMbB*k3O-L4mWbAL@k zF(j&#Z9Sn%ndzm+g*ZiZlN#e`EW|sl(p?zewD;OS3gzQnd3OL`jC=wX-1|oK0m-OM zLQ8~_rg~l3au)X}XRAmC$(=bRGH$ULDXZ^qR{bwx2eAZG_#%{Q->RUwED^nJ>H6h7=g#035O0K%Y$ z%x;d2=aE>M&~&3*#M!TuDe|QDwdMmO6GbDzjBS(8FQkES7&EiEKr4DuwUAkyr3b@R zQgQhjd;SR$y{v;;uZkE>fdMhVqYOqu4ZuVoU+CD`gKe==c3STS9D z08o$oQ$Lg?{$?2m{d(m{9#%j1#?&XKt)77c#YZv~U*GJ~5Qlgmo12z{L1?Ic1Su-9*DxovPhxxPpCdQ8r{qJK#XqyR(f%BB0-R~ne9Qx|AKNV%3JcIhF zdBY?!aXiS>h83Jtk>SleObb=IiN}ZOp%P%}eOgTJV>=woIdW3k0sfkWl3F77g&Fi$ zl*@XQ68`Pg+(H%9l85eH+3nQYttoy)V4xYp=>fQfag;b12ZhG^p?ub3hrp)RTv8d6 zi)4g7`l8i33$iGE^I`;&x-j&C@mgM{7yQM4BwJl!NV|g?I}k-+K-gP?u0x0Ze}{z3 znm?b3k#oaxzI=%L@3CZuiQ_PT(J?k2AeO1sD6qKCJA8TCqKbI4XVHEQ)cNcd&`EKZ z?3RLi*a3PMQ%E z2KIW+!2!?9Iyj^8WTNFdYQrUeSB4sq~ke(txX!_5Jywgy`2eDXc3LD$&X-~w=&(!#V5Ju@$RG3RC0Ms$N!*W*?f#MfL8GhdTUKFyC zzsr>{Z0O3wVJ0x?q6~Dh1M&0yV+siSrwZ>fOTx3v^vpXh{Yzx~Vi~La*Ah-|-@x!S zv^emw>#CYncB{W5M%0KNStHWJ(+*P3x6Sct)*hocxXRy($WxFL4oqhMS$G&UtrPdC zsadKX6&P9^4*zlr1doSfT5p**G7G*P@={hMp%TH z^c8MN@NbX?vq8}~7%PS?g8 zM0yb6fT1$!qdKgbigjjdK@%LYSCTkb>-=+O0DhInr-~)|?N)nR zYP&k>Kf_BKlf6kf4)4(iHY&EEGQgRaS2AeLFN|nHhEgNIGrD9BZud3Ji~sZ?<;4~T zR!6wj>p3>Ts8l(2cvO9r%J0Kuv)oxv%Y3?}>)w@Zx>3R@hP7)uq^-Eme9xpG}cR2|u=VhKg_Rb@%E0eA)ewc)3HhXti9lwRW21c~2do zZtJ>Za>BgNk#DE}7K&YHs%Wp#a~Yg@Tkf2Vy@ox@m^z1@L|-z>VySdW$NHe0e~8w> zDyyXTschuoeTbGqnveaI09-|NErEP>)U$VsH*soOF4i&pngd9S@=Mr_uMJ^zM-NY1 z9g+tp5)Pm7;}afS0U@-VzXO_kx^&|aICW@JqmBW#yRCC2Cj;SO$I$L=WH#ttwbw@7 zezsTXeBfA>RI3^EdffrQnmQ`1|sW!Ov0$jTZd zJ=}!qE&K+r^)xJVkZ-KvGF=N)BG~3*CNCXzP<7&Dp5W<=Ev!6jk-?V%$Ty|37euEh zTYOL&YD^d0A|Q&FhoQnvZ-eJ)J(H)y7<7TH%{V%8H8#-(&Xqm8WLEL0t;MORj=cw&tH zT5pBUV!AA#mCR~d8|C)eUj0Lo1h|HohzPE|6HVn!o^=2?R?Zo81}~h)j^fEQfyrK} zKyM(%jX!xz`uHU$=-SlaKBi+4KSOE)IdTp=dJpW4X+FXy@@i88#p^2&d}D)%ubA-m zP9#{p60PpWEs9o0rV$%kjdyqQSIj6}uAD{u@}H~W;=rQSK{i-1v4g~78S>-7tmYDO zJb9!sQP(rIDXOELMR`4nY1h!Z#!XHb1Qa&9rnT;2qXVM0p?V=M1AOrwHQvE8ewOtc zP_A}5wbAGDVNoxKW3B}xc_*lBUuj^awC{z zd0@aIW<=NYz}0_XLaHIe8dE}Z3hWDU3%!D?2t#|E?Gnt4Y?%$7C+u}VYiO@!6pan7 z^$Q4{e7zddg&ewAPL!Kc7+OLJ{;9||CnCf@z+%~$nFjRz1RN4p47LuN*glAD`2mmt z@*QiaNs)=l?@LS8nGeAlX8yj`x>AWq5~9yQpHym4B4F!8=tQ1&J{2pAOkpShn|u$W zR+Z4jsUDbZUKoIGNi*b$fFDl4w3L#&?9@wb;5>G5jG-+~Tgq&p8SK`H9E-W8V^vRw<*ph`3iJ))nGt80^j4&3e~T0)br3ioV`? zirZ2de)XOl3`EA;2uPQ1@BkBR^*A(LB0bJK#!2zG5_N@4T4#P%u!wTGT&!=5hQB*_ z=!vqPj@g((;5d6WvflJhNy-}!zXPCt@iLwj1!9&==RsHj+@@zr>DyY~ozB;((<8^d zCe=(O_xpxq3_zK(U!FvE+UypnGG7&Cs5+PU#cHd^MIl%-%kE!?>W3w^^Z48^&T#v~Kk> zJFBF)s5ZMEmzK=M+Qfyk?K?s9plFUaWqP6Bt@pgFx9VWZ2jRJpqVB=McUb!RX5JOS zqaSk(R^FuK!^P^P41!S?UG>tFm-kL3oTKiulFamoO!-Lwk3~C&W2T96hMiGUDJ|DSKc*;>g)GC`En5r;-hs<3efDc%y6TIf1bKEG;eXrpJ4Q7bkNUnw#Ubl;UZu0c$8rf?>sydb=tb;uHhCu8q zv*|Z-vq!Xk)KT}x*EOX}B9xlIBMYmz^o^5WPoDL)A0#bS|9bp*t+(%HOywg)RdSby zMg1@_Kyp(1B_){B4eyt+twhF!PV|XF^1E~3g_iL1asLP)9x7a3`~VtkZpIT*ph`@9b{eC0f#pie}d8)S#7nIFHjkt5A;M=l;c4 zmb4&7;7>D}ZEOg(^&4txzMt}YT=`sg}(t_h@&@=HhlP>AxxA-ruI zkMgaFc7S*ep^sNaCkVS)3ODYRXkD?NzZP{9c)TS(BjTZlzb~C1VD)q}(gYSMAZhsn zUD!1c?eiW?5O(HYUDf6am7FctsmxbhTkeDRJ#YrnTsIexBJ`!CPBMuuZB-2XOZRjt zHMX^o4DGQQLk1$t^-c?R0kUnBA{^V&+}?xpExqc~5h&9Pt|*3;F_L;R*<-W(&tKM( z9A4@s#jJOep7N(9UC9)5?Ua|;Hx7tr63wgrSg9C&UYBepJ(e<{q z(Ni1$Xd}XrY^#vjp6%i^bkdbnwwCX-thpEi28|oL8D`R9GP`gnM@}L#IMsPG(#h@G z&<3x%)k-buf7bjzQPO{dFPn zw=(+zY&VCAr^g$V_oDQ$;Tf(p^7Mic!Ebv!y{6<0-h8e5xP>yCuDw=M*@hGnJr(RZBHb_<8zL@kHlxvIIU*mIHc;YX1K=oL!FbP^7^b9MZLSd z$UnZMR zo&J;60RL1n!OEsjdCq@_2rKVTiBWu>iWJscl1&e|h{k<)zmwVghqyJ@Gd`nk@ z{0>pyOyy#%7pe7({e?b+@u{@}6YaKRP}Ls~akCCkQ~e2E_+{VoNKFUic*Q9}=3=w| z<}CcAi!)wwZezn^XyHX>Yc+;duj_Zx2NO=a)#b=cgE)5=`*|6536T~gUMz|(?jr2^ z4Bi7ypubfzclek09oU2B^oSgBC+3TG8&uAiMaW+jJ1!)QFL7ZS^d)X(=t~#|3JvsJ zq5?ADg-5_*b#&kl7DqOyEvMc!VSdwXkL_pAZ>?#q z8gv-}hrt}@<`vR@ibXi!1RoQrRTGoJGFPg0fNxU{kOg^_x@l(8%uzU^8U&c1O}kYU zJxL~L5+u7X#giDwNTdpBcx2YhcmX}sX8%+n`dnV#$iNObIH796kK$jjfFhFXzMEe) z{KczKeD`en&%saHuxkYnmu>7;4?hmXf`T|CizT^UeBVQ><;V}5LmesgA$33V3whlp z#Pv^8EX;+ndZQP_4-@^&VU;0Ip9e=I^;eOo2h32OeIB(1bnL(>37<+;0uijJ4J!_2 z+(IH{lr8k;xUAaQ@#BB&CGZP6fr75vo;z=RUm!$m(a`+ z0xpd{_R^mnMmjlmV^Aqkz*LasOg7B$xxELiiJU!@%0 zIMXz<6MvL(toY|5^k(Gxo3RS$-K1i`ea7&Z6^Y;}Lopo+RlHj|i%r<2Vo%&c@$^$@ z5L{mx0Sswq870$R%oA$2DSZ}r5m4nP^@Uii)p5F3r)^{7xMry3gg^Yn35*rSe#5@W z&5NprwDuoKQg|79HZ*QiM)H-sI1i&Hm&S!|t4ioRcZ@3rJt@0gD zKLBx%*B2?yP&9KgSWX~x8NLGq-Xy04m140yd_ z#-86EVR;Yjx`unfVXJQNO6SK~75j#SIS==(Mq*)Lj?BuO+Ecwnh^Hq(YU&OdNWas~ z#AlOnwYOYP{YpJqA7z#bsDisy1ZUR(5&_QMsx~3%k{`NGWBP$2>YQ3S%Q~)&n zG#809>tuns>X+-PMf7!HMnLfx>daXz%SWciGPIKb*8Me|S-mUPYp#hW32%A{sUZhi^`d z_#bDqhWr7KEF8j_yaG|hN-N?2E93L8@c$M&)a+(Ooaz_Yfk(32}^4Hl`?LOB(h zdmnwWq-`j)K^Ujv($bin=W?ci4>$8F; z0zh^ysmE==+m2Cw=?GLZo__Ab`o3oPFfA)mHr`SRD`JKMdgL9yKCrZz3>6JbZ{N52 zbj1XeiuNL~3MYw=GbR(#e z+zoQ7I8bQdZ0^+;h-ZJg|LFY$SA^|H9{(VU4E#cJ+o7Iq%6N#6uf*P{pci31Y)C>v zEiC-bn7Z2@p*+Jw)S*~nm&DU<1OZVmHRQ!;ie$S29jO_?%5Tx{n@g!fy>|k{YWQA& z9KWL=56ntSt^yyc`-4073!ri_YX%5UVZR_~J`)tg^Nr7iV(SHAshk72>{VKJaF$C5 zOzP*A*j2({!6YA7IV5fK0{Nt|dIBUxXu>KAwVtA~lNnjB>QnKihXT9x_G9{RM}zP; zH=E~P*xf|h{5%MWP4=dS+-HkjM6f%z0FM%`pcx03LHgox3dz4?0lQW*#us9WNO^@w znd&f0U2&WLpYK6f0ep>Uheo~eAXYkLP4KA-9CZu18j^QYP|tH%OX(WcmLhJ#7W8e1 zz|C=sl=-@Ex%hR=fgs-oVZRgBZ~(%1zYAukmKe!(2uUZ&g08UJHpl);DejusS&ag( zdtsPrM5mWWXMyNp7l-)QN988jeaCGUH8`XNGfw~66wL+Ir;kVD=NIBMoU>Gz`&2cE zKYb4gh!Ctidt(`SNP-j^?5Cm+MbJ9SXx$YT@lv2`+_?4u6dTF|hS-H<;Bg{y&mO^} zcynG3Ig40~Hb0=w%)k%dZNlJUu3R#<*j%s20{gqNOM05h8J*Gd0R5^U;(FL@K80`y z3HpZD1Rx(5{u98lcF|mm)$^%eW~_d&(tNcYf>IT77B&y+`lu?cqJ{dj7&j)rdw-mk zpgeUatj6J`96jVb{9k;eawH7zqxzQjtw$iYHS1$|+5PgAu4jYgPKb6&e@ip<#=$Xh zpl0i(oE(EQoOUxxiKPc~n?Y9$Z)W*O@ygwlUvsT`vCh(`$slYafEVlxNo~htJ6Vxe z8FzMgp!Z>43)VcfY1ANeblv4wC^mZ2HI%cMq- zpnl2a!nGG8&ySsd35&!O;u{a*b{`e<-4VcawCz!(?q8WCCJ;R;_4`vW@c@WxQ%?8l zBj8_{M-O?4I%roZRum?km_H8u_F@;~*|Me+T{hKv#e4L_qsrFWIx|qELNaPj)uar> zI!+wm5)LMc7T5e=bER@6&UWqQWW*!RwczaWFkPy{@V7kw@@ZoIwv9uuJg%^l4ynil z@@4N1yy!nB&tvE&@K^Be#$r;~!ZvLO+V37T*{`N!(5v4KRQPnE30RTVdWnq!?f7k1 z)yZ+M3PH>~DeK@Djoo)Ta$I=Vg-9o|-{bjK+(?30`iTc|x8i7>rveVt)NXU!VOw_Xs{w6oOEralLic_gbJad zon6o9aLYmD!aRI=1Ye_lUY7K^Cr0BI%?Qn9lK}La;7ZOT9?xA9qepHTnV zlnY#kA@s7G|AwlbPO%nsN;U!Gr^?9!MqSy^4mE5XlGmI7CjrVN}D))rNMZ(wT z2D4>9w)%*E&s3ngu!_+kX_%ZvKzN>O7VlMLP&^7ze3jzm2F#8VT%c7|lG`c{nTUAIOm5>HS+&VRUJ} zG7_kRx}?hi*id&Rgl|?jKYR^cO&CgkEC;vVTJxSeoJX=Vg-Zwu=+ZAL>2p82 zQG!qFr7`rM?oL$YBH_TP3LF43i#@{?Hd>{n<40Xgx`Uw~{Gx~|c#dgogGtp|zH+zP zs`jkZg!u!gYU>1kYV~aAb|nS8>V-)NZ~}Xn$-u>E>tY z40APG63`3c$}g81ml7G|h{0qbiIb!?{hu9b%bSZzlc!UqD23XL7Ai2C+CJ~C5G7mr zR~YT(JzIa72ysndrb;p!(Cz`&S;$0<%BWn2RXMljt`nBe=OXu^k=lv3tWfP3tz+kF z#-IH><2L1?s~h=?e+V3gy)P!lNeC~LpUt_nj1aLf4mR!%RIeu<3|#%ke4CM^(R>On z#CyGNjqWE_3Ef^uL4vPibqb=bQ ziHvSmB`ft4n>d?|2;;i5>Iv(Bt2PG~BgxA`ufKWCAvG@_y7$onGKx4IB302pJJL_; z@ce}w*pX@0h*!1GYUBjYtPPuXBk_c?QbAbYljK5q`2y^{ucw{ zCyO(dXIgaS>Jyx~KSjf!tlkU3pUZpbO^}n!omt0mMPvTupnl%|D9*O9P?R5cC1Fkt z`s4!$7QNJ&X*%^4iap@OAzk;s(It66&W`ggJc_d$1|mVNkpt5)LZ8nPx%+Rg9=j?o ziw;iuWiT*r=fYXpe4K3kFV0>*b%{)FjNh473Y+oHTb|m)$bXQ)sQ~6Cq;{_Ok27Cn z#PQU5zZ*M1sfktlRIRvP0_~n zb-yf{@h7o(tiu$k#E#cTP7_Y^6r;ED@{JS&;IJR(abQXR9{@B!%fIw0MSMUEH3|Z% zoyJ>)iU>nVkSDnAkD*jRTf;zanODy(8>2e$8Av*9r;9sbE`yo8Ur9H*=4`__2mc1~ zT-zRfcg?`*Z-NVba%aFvFZ57u=65S%3MnBGfF@{z_?B9negXy?7O&!KsvCE97%%%a zZS~U|12Xim7iRuYIWiSUbK&77gb{{BhBV2b zvhyME3%CWaR>{_-HtI&;w>B%G-P;p^M4HX$?lmc{(4J!T7`-|xirP>g-=C{Q{5?~n z@byaTy&b%2H(T~&2?ElX5Im1NKQ26Z(;QI(UT_dK&6h9ZvV()6JXZ?lgo56x$n*6~`i4?UZL&MGjT-bN5&T@*9B z+md&jihzJB32?NfNv0RUO|laI2uCWvpp8%r-C<;sAc#RP{a` zV}B;88%rfDsv0$l`l*i2+-5z+y-M4d?k|*^D>JsVzm(93Ia9&@(dPioczC21BMK5-rW9c2a>e3Fy`MG10@#?~UIVzuoVIlDD^0 z_;mrzDVEPUKb~_J;PX8R@dY?7p~L~q1`btziJIW(`m%Htc8JaWwnC0d0&+n8hu?!> z6{m>QI`dvjIQ0Vv$-iba`U;QF`Z*<5gQxC#|2P#?93-nl*D)}+C786ul?W#<6&{vP z3ooX}oa&UO_J1$a8{CuJp1B1SBm7Qb&OL;_71-96E}kY zdPV5DCFB1tOy}eToL=*clsbX)UOx5A;T7r8Q>bHMO#YbabyUko}5j$-n_g$wf6X4=IKA6o} zDvTPpbZb$&YpNzmo%eufmZ3>YeFddRpn~jK9QZ*f#99Eu zFw9tzcv&%D{=aUWJjCExF-k;9l^>qFeS*{&Ky0B(cbU*0HRF|;iRJ%78%m!47ow99 zmU1m6NE+DBiIwS33#?pyQn*I}cQ9W)R?TwkXRy5PTuki0M<8ei7)6U!)Ue{c8S_gF zZ8(YU z9oq-D{zcm~wBh^knNBx5DDjKLcH=w_C^9rzlKV+8lf+dxmOa2WU(oD$jUFq=0x#>*73MY z=WiEaBD4`^h7mZdV8CQ>e_oRYROH=mZ86}`yzO10-fH%9D^|}@hz5Ie5{_fZJnKPN zV*vi6*@7mYxst#m1;WUp&3C`RLsbhx&imkKWaDDG0N(ZID-@ij z8!{$FA|GuaF3Y^4iGn>Q|1!V2J*?S#M2NyjMvID%h#eG{&llU6homL5?60qcA!0j3a3-x?*wBXw(O{d1UcnyUyoS-}N4XqCH38d}!nFnvH9>Ev?}j4odFu82b;O|kbz31m zoYo2mkTw2B>rz390Z-AiFK86xV&Hn-RPF=r@iGlXLeS(B8FeosZp(psE{}zB!h1Ou z#CXXO3B20u>TaiXAWyivKwq5DDGoP0*@X!h^cUNpDsH(08^E?q71!BOCt>z=-kl)9 zI&PTNEG$Wf?NV2!Dz9WfkpAj|ek_}nRk;3lBYiOqbKjUD_ZjAPjiw9HnV09U6{Q{S zK0MWHYF!rmZ1fZVGh7>P2s@Q*Ov-15Vz8*pmvT;?tscj3axfulL0|x05no1Ax4@9DAc)W#Bbo_-) zZs2JY&oRg!Sq(6jX#-+jhjm`16kMd75_1$)I>TUJ&wkK4!-zS&`QVlAV$_4&*HlcIhl9qg)eC ztiOuA#=H%Q8-DtHEY?QRJ9X3;cSy(D&7s=(=XW^B-6YEfj&@820tlhlNfJMyca zEgMqh(H%E7^;+V1pOw;*(i3!%vb%}jVNpT_DBuiSyCFpctAH6SvKf`vbnUQ)P185D0SBAPSvjt~P9@jCjQ?Kw|Q zY+@FR+IYliXgY}J`OUPoMG(j%%RTu zVBKO?^S}ov`ocoI?#-W}5SEYApzV4JP9j5bIwPoG@;28+spT-*H7|Imc^q=Z6Mi_o z3`1+oo)!p@{TEvqzV828C1?ho%wi;O8`@O6)2=)n(oJUy*vVCn#B5ualq&` zlFl(Fbe|OVCCWEw>03K)2fZ-|2n6YC(I&_g5^95+y0_L@Snl|90kg@@kn|rf>g&&&o_YHF)W!fOs+F_`d_(F4dcGicsWnCxb?{MxAwF;cv@(>8>gas&bpEzYsr6*o0&wye^t%*| z4X}j3-yT*{a*F+?t>Msjb6*Bo;2Q$fjK!~7;Vi1$N}ZePqE1qdrSdI2o0RCJXvU}@ zHK|2~Xb!DEwZJu%W|JV~+D;r;S!OuR4sC^EB}nvpa|ZJiN7rRPf4XU`>c;~Gj>qoA zGF!uQ+QmI6oPxq~nE0>3?cB~ShAPNBTR)t>EV((4H&)6FTO_98*OO98U9*%NUe)x#rS(b(3gE+8I)#q~89 z>@@K}70>8+Yx3D%)J`^SP~edIbJQnKCxjBfDY@JHoR-PTaJzA#w2MqBTi+YzUvn9Q zjib7m|9E`0Xu9*uX9inohmzwvXa!w* z2F_T<)=iWOOZN3{nD*)&34+f?2KRZiosiV*F6=dG{?eD1LEVXDwWfR99tAYwZC!HD z9C$3rD(+DE5OsTQ?|;5%Y#05+$Z@7?CumEOi26xqHe9vz`xyn{(m3N`D}&SwE{?hZY3SacTUIVOBCenPO1So{jOJIUiR{8y zIRvOFR0bSGYbi*?b2a;a*Ii;}Xvp60e4wqJeqBJT3+KgKHW{@kKtI6V?7UxK8EdbL zJ>DA>B;LT*=N&3ttmS^JRBP=;?n{i2;P99vR+aeNYGjxTiV*ru4wnGvM))uC+t<2X zy>jy>mH6gU9Qm*%AgHmz%}q*tOgSV>oxd#43Ro#CayIzow$c5mCRo{&`dd^aB04nr z`mAF2_@Qmje=56V`Uy6HBJb7AZG`pM*nB;O`0_0eBCLC3J-*$TGLX0tI|6d?Tl&q3 zke%1^%h}#BLPbLlqIiL3huhQAG0e0xmBvzd7KL;@P<#ZTm&EBuDS+7A`AfVK(XXm8 zQ06x`(J?d}D(^_WbjI4{VeY(1++USu8o4(ME^I6eWojNzVWRwLqPERe{ez1$7Wk7h z<(1JnjabIWYxbz0gnIlF#jUd)PU*( z$hh05*))XqVa~@1`0kYZFq?q>ZRBuO2i_VMfARwB_|tn#)4mGcB-&4~=U>USYw0$6 z9e)r2C0Oj0UDX-b=`mh`kEo-Fifz(^jGr9RDGW~lZv&a>TsHu8Rn zhegb5;>KWJ=%BM;!LHUL4D=~IXD}?JL)NcWo9>~3UfUp;=y2-ZCL}ls{9C?6T}K`Q zx!;a2fO#CU8d*=_T$Hy#%B7<$0w_}HH)D)_BU`yW+z@2Y>S0m2B$pAGzCq{e!qgWeT6jrS0 z!O^{(aI|VvqUU4j{3Nmq01$dBRqUWRR1FS*%3q^caq|s^hJ)f}FtU-R)Ogv=enk{N zupQ<(2f1`w;-?N(Vt4j8BFMNd^L52;j&;L?~O|49%<6117(U|``V*&-h_Cw%3>;iCeD#2GU8hfek`N9`l z?su^Rt}g6cC?uv3z<28p@J?=ZpGcvWys9F_iSmq1X`V}dUK3h^Hq%j)nKAeky|CmS zB}s|4pY5adO6vK{kcxFF4ZJTQ?T$^mKDAEgoh(mcy*X4%z>2JJ$a{L~xIi zXX(X4+%i=IDI2T<%4;c(h^R^6Qelpvjp@G7hWS6nmjF+b93>jqDJ5o8;63KMEi{o# zA#Nx3_`o7CO~l^s`IAGGsJZ6pPP1UMPVkGA3O~$&$yK#o5Pc)uO5VHVINH3 zbo&1bGYze`gX}a(-tF<)fS0X4Aipu?*rqqhWB2j|)#7n;)zmh8UndJ<*%#@{TVl7^ zZMsO}3-YokbFD=gQIJ5#xu*qda{G?)056x*Wr%hBnX_5>(;hEQtSoJ`pLs6Z^$X&f zUHE%7DYvh`RqDdjqx0KG8R4ttf%qHXpLR-XHIyC67O(zGBUgC!I^P1-&miW6?edi& zI5^}E^$KB&(!HBm<=)OMS^7CTfK*HuzN(-|sHCr@1+C@!+OTb4l;N_k<2gF%V&5P` zaDvm!+*z}tWNf;E3)wZ&$rN)KTJyC840xld<7;h0a?EU}3j4hZ-a+(AIp4$D$JF5b zL3;lWz<2oO6{uvPvWAJ%Azul8q_FDSI3>m;xk%v)PSA?>9J?Q=EvF8v?|W2G7OTd1 zny2_}65nqGwC_(%zjq`wcGo>JER=_;6EXFL`y;O!s<>VewPnazk-_s+71!8i{Te}W z{#X)xQ~v$g(ycN+-dq>-aT*Q`G^i6aFQkLo&A2ON@J<@PDxU%=W11Q=2kb~+t|j?h zp8$1ek<2mD-WQ6C+kd6|%zu;fS?An4rvGDEatN%T17+%Km6ghrPGF61+#^C2V>B}_ zG9t4+%gDGAV5}ixcoAR5$B|ZD~V#? zIt+PTAfnzLxfMMAwK%sIQyh~a7ls&(C$7l$zPWRM0p+zdAJ>A3ewwf4hm%elQcsIH z&rm+UcAXHS(AWnSNp$LAtH>lZ0@Qpm$EF50(>Wwnj^|c2#^ioBu36eruVJl5uNZix zA`I^p0A6jw8R2;$pMibJUmrVXpwWSL0MkIZnoxu>^N`AovM53V23g*VM|NU2vr2e0 zI}x^UnFUP^?f*l^mQQ!=CL2`Isk@?tgdm;odJtxU`GS1LGC&DGnPK`?trvRp+tobT zT70BXCjA&cCLr9#him%Hxi?nwY?BT&>E7bV4g=8TG50Vw+lO^GY{+$x0CAFClny({ z&QGA%CuuVbel@MQh)*8Y#lE6>KWa7|0uX&Cjv(L;D2YQd^6-ryobif70p-etb$o}p zoJXgwAg7@B42z}AZk=LdA1U#BhC=;W6@zxXByM@jmKS^RM) zKPdgkOLBT4pu?qB`nY^4aa^Z(#SywWh@C0Hiv!(%bF>0@|3#eAe3PXxUMl6XkNkbp z`b=8L__V0?o{C4**-|UhNxv1gA%!Y2%N$+>$8{mn8COIT+&RLkgTARr!A=(}eQp>p zE%Kx{+FUH0Tb}HC-c^?}8-P9pI0-m~P<*8Lg40Q3hY@;C;Tycf0Vj{q6rc|Z46H72 zbH&_eRFyr9s>{0R`c-p?d3TU6G>?#7NWc=m&-w5GSm=&yUEhH7>bmd43^!=%SKj=! z2!|?aD*WWZc<$W`1yBfR3>1YjR_S$i;XakG#4%O&?Q?Me$~krWZi-f(=OG)*&FB1E z;`m5Pz{8_mQz~%^s#aGXje5p9a=^bBWG zP{sn``rLt9xwvsoZAqJwU0fVJ9s7x09RCs4q8$G}LJDtN{z)u3flUF@lOnyqEd4Lo z;McSoWi9B#7VLuUbK}4cP^sZ^P=*Ws7a-28T#c{Y*nR_E5+9|q~|=O_X1ZCgs{nq&wm>b61+WJQ%0oe+^_Cpe-(?%(+|7_9*Y2k zB>Le)LUW`90kWD)OW%J#wCrTHrJ6NdAUIW1i+tuO9~QEdl@{g_pZ_u*SP6KA&!hr@ zN;IBnyL_rIm5$z~_kk5G_z9b%k5ZiJK@vqPAr>c`Gf(v;Wi$|uRi!4ecp169>&2|Q zIC%Ao`%JV&576DD{rQ=#aPyC>HMTs`K4PO8B;vt?qKRXi5ykppETq;^a(QU8zr%9s zyeo*D9O2ITR6ZutG`%!O47*iE0rvb4e;NGM<_u(mb%^!YF!{Aw1rKbPZ&U&_22xpx zr#}S27D3j?XXCj;O~M5O68sNRo;f-`oq!6W^F5hasMK5vdCQg)ZXF_-0P^kq0*1p9t$M7ea!4qlZge@{uDR)u_UPxr7*IcC0D&Mv z3n;QPA^J8D&!6!73)mwKt+kEd70{enu~vx)JXm6=2HVM2q?$gdOsOIBH;zK*+sOfG zEbx7pxd1cUy&m@MA;$wB_=4oCVBwn+gc$Z&=6pC#Um3P-{4M7d2!&;5p^gDYkHun) z&^_UCB>+3dWhk;wTENTK&O8Wr?p1{z_@?M0JuOVe{bSudM1uVAH@w?gZF5&qlbfG1 zngTn+_W7^=V3bX|fUVQAcv@Z0yRd~cs3u#U%oM0N5Z2fWi=mDYzKdP!z0Fb`*Dbj1 zKjw>1zlU$lnK355F2K&OTA!@c6$#SJQFxTS2{IQ6p5(ven?=;Edrp6dQ-+4#;UI>r~|4`xs#5KQS2VMq;nI@*|k(0Sz9tTJFWXV8w~2Vj63&d!qkht=wZ+$m&49xAH&7Z3R}eEF{D^e}#ed{>p>Y(p zUQ^qLD(8IvSL#=)uVqp(WAxwg^-S+$e4b$~)QT?5PADK2ae)faLQnhl77oHw*4de1 zqp-t%$MXve=0VQxT(?^Qed307>j~;2+fUehI_}ip{&cAiK%~C_ws2|PC#deZ$#;0@B;xN&8 z*E5vk%V3p;Zt|SR@-$!+S2s9_m*6)FW~>GwWpnjrS35S2+JNy^2iNK9=PFXnT07*M^#l5}2^; z206jG1AL~cm;0QBd(ozBQRF+MD|VtdTmZmasktPMx2f)opc~z7JD}I12<|ni^|*GY zYg$!vU}2*BZDqPh`>~AFOZ20f^*g6)crk%9Y0`N=7d#1dM6RKYX#w4~_QSK(Jz{5k z6^-e;Bv@k<5X?}fLoqjknel9E^ILJE!N~^&7>Wa1xW|9Bj1v!P(+aL}a_$F>rg%=# z=kHfGAm@J7!hW8{tA)0AX+3BXYDYy>Sd7v_F{*Q>!q9taEj@40#z1?E^^v$%Np4Cd^{9-qDXu# zosT1TeHEDJ6Cl|KCXW`Ge-Groj;%u4(y&j<3Asp@FcX6|VO#Inx~!-HdG8H#^Egy) z57E^y_jnwpy2(q0r<=iP-O~BujFz}hq4a{JE=7y)uK|$k^2&J7$Vz}VVn5_k>$u!*x7%YHgsqwN}xoTw}if8IdN_%$z(j1zc>E#|%tirB$42Z2N>)$B0 zuPm_O6js*^CrlUMl&to6iV25E0*u7sk-v=ZvunS533<<=YJ+Un%dg<>&4*d_=3Gtm6Y1#(_Vz3$)7Q+M^;=V6@yecS+_{ zaCj_ui9ran;^d&XuWNl{A6GjpIFg)+gxO>=nu6hlK?(y6OMZ~UX-=skveCA?_n$FD+!dv`<)UGZy=Df{1M_2fm^51mkK*Sk;-$E?5M~bHUaS zgk7fe&umI>>qoFH54t|0XI6Fkb0G{SLBVl`bF;FtG1!^TVMOH1Cm}BtN;j5fiQ@B) zX6RtH5;8(hU75|u5~}`V26X2|C+>5AqT5dzXH!Oi|-`jgv=YAlEY zqrGJ`nJI;3PLk|^T4bi5Ek4Ry zuql)*zRxxoLV`SK<51j_PdL$z@OP@U9#p@cIl@x0YrM~V8p@?zxN zmM|LchJg{_>05*PgH5yHiwgJUI}{#H2IbY<3yt?|jV<5Q+I%ag2)T+Ts>oplcqWJJ zwO<-zK$X9GnXFCJXVhU#bSso5ZkVOz(ZXlJ zj0ICkf-sL%lq6x>v}?AUOP)VpL?3GE-H z-JuovDaMt@Vkg!RL2ZY8K)q>kRy$JO6|!0p-W{{D>YKnBs9v%nCZAa^3S`|~7 z2G3`3y#0gMwMI@-6S#g2(&V}3{w)W+oW@6oF&8q@&GJ1t0VIoy?&GwS4e2pv+#znt1_H&bX;R1Ev<=t3 zTDf7t!$*THJ=+!*Av9ByyL45(oc}*mW7pecBiBm8Yhu6#lpdsvh6$0czuOJmk)ZPV zq@cm~)uuud@XD@JjAqML?&GyBF)b$}If3WH=vYB)!IQFDVMv?%KJPUI>{6tDk}eht z9f~UG6#yJg0okw+AZ`lH;dQ%cJDKYa4`2Tj%rOJatGrt}q8xvJqfN9dq>&MXx+J|= z@-51V_ijWdmqD9CmK3~l6=6JZA}jRbJY5GGHLuKgUHZyQ2c-xD!OT`;#)M=*$i|%_ z-GSYH1GdO7SlstIaT_ubrl>DL3!-Qwk`CR%e0!FpG=SU!@#OJR+wbsgAYf9LBE--P z?PjrMw@wzam(yErNevulbV>bUSgk0^s=m#L;vZh7VrRgjI#_a&8>ZrmVcQs%$ehil zmYoyL$p~c6>mW>82d8fQYuGS=fzYOcevu!6GT^YEAD1t;by$in`EC4bh|4$VLw;;c$4_is_E}_;ED*NwV`i`O zLKH7t<0uSh4*z>I#!p;BHb&px`{tgosX=uof1jHMQk}tBW1j>znFadEs$D3=k@ayV zETCKha5=e&-U{ThI$AtA3qzMwr40aW+-&+~2ZBm* zEaGPy?xcn5SUj&WB)@H?q?c%}4z~`1qjf8WI=;9NgFP(W1}CZUJ({$tO>sm_EL5nl zhk60>GW}PzU_U{n6ZMwXkal<$2dy=GiNq1Yvo1&%i!LhnW+k|KO2}x$ld#aJoj)o) z9gL!7PrABRV#X{j!KtuSePS7@ma_hpy1q3wg9Q;EphNrw4eb0J&whB?*e-~y`VqD6 zFPZ;HbIh#OCOayTswa~(h36K&+P>1R7q>c}**-C1k_=g>DbB1oNLi`Z%V~6V5!>Eh zAn#}!B(DSp2^kE0?cHpUKvSeBo~x3axJxi&0t*n+8_$%82X}f^nhT3Hb;q;hR_($d z^ra+~+B(DrEoFl8HA;39g^n@W6WdYatyK9BxG&ZWM|Y;2L%@3Wpj}~u@He9Q)u25e z?urO(zaS3uIgaXoeZu$?8`miP{*NF-ERS<3I(YK*)?7aVS2rb?12l+nji-UpB6Qbw zelhy1W=qUP_xO!)_&;<>?l6(k-#PjKQe&I##OgA_Ca9ouSwY`wbufOt|0)-DIqNLQ z4LoK z=VM&DZPH{gxM&~$L^5T5fTz6N_#N9>oi2)#0B7nAl)#A|x_f0D!THqYs!71U`b}E5 zEIax41s>c!w$Jnb515U{+J1Q5kQTDwp8s28bozCo48oesSeKJ&lH*zt9j51TT$R`m zz}o*koJUs;F}$xbUh|<8+^iq!tRif(2wf9qrGKk2=tt6%yJ*~}%bVSI+NeJ?Jk$I8 zUKT3sBN#Ju1ID<&?M)G;dOL`e7kSz)C4mAbOG=eij0%m#u;SWQ?_`C!)NWm%`Tt|p zPL~cy-#aY%WNTli1&0ElvO+vF1x$M_dpC5}zpq?L*f)SV96RxZPNPE>(8b5^o@rQr zADsiM30Np{Oc8zO#ONX?y=tYkH7|C+iFl zQYLH`c3y~dwiJommEQJ|P10}SjEJM3$iqmBD#D^}%b4dJaLXX|X8dR>5@0%fEYu%DJrBWPdvpa6Ml2f|%FZ30d*wy4#6sJWpe5C2v)uZcrd{{duf~PG zPyc@XV*U79k_+K;6E`PIiw$fm*aq}hg=i7@MfXv*)v#LorP^<}{~}uE4*T)hj)AWj zQ70mR>s)VHJYK_{=L96E=t@9{zhfTr-X22Ls+6i5PvM`dV+0;Euuc0y=?;rT2Ivzn z-PzP6l#P5gvl+@)r?3DnZbY{7)nq`es{Sq?uSmf@QogJ67Q#md!I}WvEABPh16iq| zKPc`3HJeOznC$AHy|XkuZm>p_k_HMeXk#65Y@wDLBOfHu8E&k$qrN!1ul+qnJ)P!1 z2MZBQ#mqHLCY%E*881TQhvB-ZZ+cy@QX+v)tjvQEFZVLi*Ok?*cxZrDnj=J^x2#zU zNSA&1&-`GA!`9=mHE)lF>inB;U!p)*sr}<*QhA|j`l8{rSTdAsik!Jc7S?JvnUqdY zO6SAioZBa!>2-2c*S|=Ws6D`cb?tcs-#;9^|8}<+@a=)Q(Q2EIA->@+f<4#92O5q9 z1wg%sVUM)5>VE999#><(n@U^VCb%}S9JWCNYS7cF#D};gk{9|};qpO;gShD2(9;zyI+1+OAiqC>pe`8_#19w_aa-V~aU_gxgPKEFI zIsVNOaRFEaz$mr#87qNKG0k}g%$huF(>Cth4R2@mwL=JSRRlaFEs!acsW4&r>727C z#S%)yz-vEic1+u3~JM_Bh4tYTZFAv|>VG z>-kvX9EkI2khi`}GX16d_C<-rZaV5+XrwRfb0A{R8~7=*mGA(zzO4x^b24RTX*?ssb_-mWi=^PVN%2p zBX$hU^$lWD=re=+6}b6oS6ek#>t_Ycr3FeicTj{g{^g)ZSHO>49M~21JaNtNx@QQt zbZ9u9Rfr6B$$}T%ukbG0tRB-;8n9kS!LKW47di<<9iZ(CA90`&UBsV}A&5YGR;U6- z6C#e1AJ~@&0;OP-1>9d(r0ZA%ttoPawV_#kp6Ubr4c|;0=Ki5C>fRwEtn&DeX-r$v z&_ZHno#KQQcj{9JV=L9- zSCgH`-cb#;h01e!s~x>m^(lLXPi~nER`2!fmX*E`H%_cFJwP*O?VDn7vsLh#R_3s% zzA+CgeeBt?4`WBO+!Ri%{^D@AVJO?8kw*bCCXyhN)1SrvLmcXeY<^&m3Ys<%Q7%7B z75yLIzKd|)FK*;fN4bs-wlvZo6!t=KlFZ;(%eO-V{pA@Wcf_K`bY+~L{h5IN`^i(O z(t0)UEL|q`uZRmyy3Z*#9a5oXHQh1sZ0K30m54pCcm>NI{Me5UluPxk|p%YI=sHff;~I@jMRFuf(I=L_S0M40OORm9JlXt zDartX6tIC|`qtSt)Kh_@#t4=tE{W?QR4}cTXyL^6th=T8HH!Eq9(^^r&JP-o`CT&= ze)_l^g5XOs3IpKxWdR$V89m0pogessFMIv_#!3Yr-K?bgWp7y`8N4s*M;s;PH1Tcn zDN(1=+ibRzf>&CL`@!wsOSy5(im>@wOO z6+Tft4gY@8vBo{w;ZXZLv8vQ>wbNxkib8(#qO7)&H1k^pufi#fGgI_l#`aa~U+|eW z3$kQbz>`PCZ^NhM@N=c74Q`amaCG|t#0)^d^ggevxuenaoRTu5`5O9A;OPl_NOgH+ zeZF+H$IL)76q@6@3TJJ@&qhb41u&%~JIWhaR;~l9<{WG5zhKW8i8^72qkQ5CuS#T3 zI`T(HFxMTT`H+b>lddjkm#5kU#Dif&iq-V^}J826A5@Ftn1E4UsaDp zwq?c`h|{Sr9Rdjp&QF9uWF&+`h|X6>W!dCfu-w;cdB)4%TRC==XguTMZ#lDk?86X_ zU8d>n(FZKN@B#9?1$?^ZXK8Ga8@~|=5g%wi8p=WPK&eqJG9OdQ)hFBjB6g6SN%)SM zXYFk#tn(zLGdZ!M&mU_R@W8c#xx*_*ya_lHvZjW+W;7>jdC$zVj7Yt zDbm`$e4hwpcZN)CeM~agq&j&8l=>CQhR9IG#5u+Jmie}QY@liVQ-#NgxqR@P+grvfC#-yTI5nW-;BgX|d$%C-gU}rQjFO`K>mvNIWbUPFg}#AO`SDI?}Ph zkp;+r<)WYq7#={^L1tu;Iyc9N;iOz!C4nHHPzL^6wS_b_2(C;!3{79S(jHyFv+6o% za=q)p-v(|~_<9cgq;!c_>Pog=crPT#uIh+wcp79E(iboQf z3df^16u8DO8Z3oC)Ksz|yzSGfu;uSf7yC*#^s~%05MT(Hz+NlL=u!U3v>o*wmhz>E8}Vet;pcS$-U^YR{*x3DvSMFrpdQ`bqGC`3VPb^ed!G z52>3jCFW`IZ%`X4b_Vfq-Dr21mu)Eg4gNlGJYVu}GybBvIk`j7BSZmJd_b=%am@gN zVcQG#vlPF#Gy%3MStfS{kL&kHw6k|p?HDZb66T$YT|09d%ss0F3<>8&IP~71*D~VV z;;w2f?MW8N3`35BsAXolW3(nycTBAvjLZVt!JDi&(I8R`Yf6nH#|_#cl#?7*ZW*;7E#<=!fX1l_V$Y@a`x1 z^&Ng4>tBa>Is7|&{vA922XmjpyUc$M+5bbRZ{gi%@b8rJlK`HfEFv8TYzKw|g|U5D z@&e1Ezw`OxH(R}Ouj580YH9A#K4j7$@7=i)m;G7@G57<5XVlCaLJdh2EN0!ni5ztX zDuTljEBzo>ID9fb=@lm>$E}#*sZ6<%$4PYH-r5hkn$`knrfL0WY34500@d{4oo{dd z5Oft$K0p>&CS`6&6>LIJL=iGlP(fwk)a7?=G_66I(dFHNx_*L7pGskSlK$$v*P4Ky zlRz=A{pVl-Y~aWx*EHJHjB{T<&A9&TiVLG<$nu@n`-Z&}B%kKyiWgE2Yb(WT53X0z zw~h_-&Y&RTMMT%SrF0y3{LwMs9c1;=)}=imlOzqs&~D@Cq)wRl<-hco5rT&r*cS~Q zo5lIEmV+BzuR~e5CU8z&9If{xPqHTtsX|{dm$5f80UcGX!HRge+GU(6 z_Yltw0)q~6(jIBK#h*S-u&0h}kHq-|poo_S1~nEmPz*SNc>vo6!mS}^xE+tU)S65%&!qzuyeu`7J>tT5r_gTn9(QBu6foDan7CpGie~91N zn#EX?(tVPC>t@7nn~Wgu*E5sH%`dFQ(cQRLZjqrTVDeXA`<$vQ!XBkw!eOj5u36$M z8mXY((8uC(o%0TJ>6JaY?lWVk6d8tc?h0YH zAYfe^6J3bLf+1=^<+1MlVHY#`#ZG&e1E~t=50o`ObG6sC0>>hYSG0>-4E4}+@K7Q(({7Z|tOzmay29mso zz4@}Gl^TTq4)mT`YzHZWavxpGzRhv_r*71JM*!6zWNPJ?DlI{#-K?(MmvL+hG3Z9s z+J;){_PhY37Fkw_-zX>V?t`D^hGW1MeoRGV*3ov{Zz61SFrLX>=+=xCAiJY^YnSfN z22_slGIX(sY(Ha}w%+%ikyH|{sns(o)L>`w2zZUKXPAh+MA+y+<2+5t4Qmp}HlxZI zu6v$opEly__>%AWdATN=@5E^bpKVoFAIc5+M~J{prgv1xI_(?iqATf*krr2V)C2a@ z#So3gM77M>#iZ*3ens8paTI@3!0$=^xTOJPTgm$hr96g$mn0Gs(t!XmEv4O{s4T&D z2sF}C#)5G6%!5*jlNpvc?dbRW0jkjq=0)p-W`izM<*lc7O>QCBi504Ou`iOXA=Ctq0*{YHsu zUPC1;A0~@%Fg2nyArn2d5s@-meAFmAE=fIw{iMeW7Z`Qn$W|DF%L3TMK7A3`{N@3K zV#eT=|5YQzvvW-Yd!T}lc>uP7tSvnmLHfHvSSa+hRDaB}6Z>S-?36^7%)S6XK)=8L zA1CUzw>oKlqHHoT_ zlczU;n9notk4lZ2wR<-!HD-EZ2j0ac=EAuZ_Z+6A#NsRhQZ3P(bat%RTw20STsv3k zvPn5yD;da>I7;@;NBImcIlD^MRp}}LzuuU@H@U$&H+6<9u%{oyw~l9Mga0-e_LXG? zd#pkF`l^vStb|D1kk?~^6M7kyEz5T>)28M@WN+<|fEY2Bfb@Rr@%5Z=MxW1S6E9m1 zKW(7HlJp9Btyw#}B$nU*c>;$^ST76Od*rT~4wZ5Aykn1td4n4vFRm!6ylYUe!0JG{#ZMV4iT%>p!-~;3n0jxwZFyQs-hP&%3FNxLHaVr zXl|Io*m=Tc1l5@@?_rh{U30w51=4}u{wdf#T~RV=mmFw6GMAuYk_N+jJaV2uUi0m% zPXx7G~Go#h2@lduFX>Pn{lSc?+{iu%=pWnhwU9A)!U6&&`W~s{Uv(s_oz>8rm zux2Bk$DD{Js^=NjJxV)vZiJ3{pZA=1 z6?wI1ee8cvXo2kfy2Yr`6UGTJ6C>x9GiNbFU}g%C#yYaAMGBV6SCC!OxVGs-OX)L< zA}Ln0q*P-g38c-bBOZDfl>{HvV2;?6BFILL1%l44AZ@^L8l)*L30B z>Sbh;@h)>|h2hw6I3sPveuVD+6;IrEpc9Nt2rr|#f051=9@;QpGm?5U33k45K4pm= z=7a~ob|Hng#zvwS58n=y!2x*#c^M=F(lba{fN_c<`_}MUr70!4!^5-bei5_2uqj+F zfi%BC=*}{%R4S^SpQ)YsQtzV3p~gn`VAmO9e5FCQ9GcOx^!L(6|dGBA}Wu{iR zxH3%yCVA>lva3O!udOIeeU>Tiue1AF=zHGcph07`GCDDn89oDHv5G>bz5}5bog`x? zE)>V+rzt90E^m=c&xlQHnMu-#S}ANkvt3M}_H5{%@udO<+Z1H$2A{N^YpXB~bi3Lei z_6qe$tsS)C!@uSWG*8q}!&_;(17!bpo`{=%$JqTUUc8{T&KpSB&;myF1DI+>SSus~ zmx@(m)IC@*9Jc~lFji2(t*T{AJ}EVB7B0>Vu@=cl+|_>Ni2*RrWLYnM>$wAhSvbeM zVF$Sq&>z#kEm-lFrs$sg3+$BOaGh zo9_+*t*NLP@qOf|m8GmbbgP270_C%=w^ve`H0YyIw-_xo4|fc~t;2}WMF3UvMZwYI zDu0cA)U5Q&pT^}^j(h;=>S+nBh56PLLo+*0#|}Y@7gK@se8)2_6#%RYR z%qbnZ3=ji`6}f6d7xNK?m&eal*(v9JY;VGTKnKhh8e0mYn6JFYk~B)6PMas-#0(T= z2N8D5`==<8rQg)D^uv!y^?4<`e!p&}EnA*B>!3qovx(|VbsjjTT1%glK#;WsTr@kg zlL+2(*X_(;$HGXd2H2yhs9NrH-;M2*-ABI?*YVpMgD9VNaKr5M0BX-Cp zBbdtuHPcMGI>Fy!Vxoq2RPMAs=f3Do3PqXM_gb$SkZJ=bhgPD(2hK&K!K4$dNHo*W zo5etFyA!Oj+gn^xADB5BDw58(zav*}>aD6LnRLwq)vwAJY)&Cm^%}uVqEsUn zzX^Z+oh_AK;!vyo!KAU8ZgN1|%;16cnc8gH5q*WDWBG$*a&|s082R=-_4-1a!iGTF z1R_{*(OPn(@d`S@(aCjtR?JFxfqM%7c#-ZG{*4P?I%BJQf4?Ii5~9%Q&v1XP@t&aI z!Hjz*%-uZ4jw&(`M*jBmnq7h;-#1iR(!n^~Wl+X7JqJOd0GmF>INYOrYxIsd%H>X{ z@!4g+g*a`*r`T)RnjiQ}1%c{8V*d&1!T@XZ*4fZRJfeqN+akjB*<@qf5?xQhz9COl zGcG_ZdpnSFDzOfSO9ar{*(+ph&bG0^^TDYDo}=1gAt*JOAUs&lgH#dXJ;%>GxmE_( zFE5P4l7!%GYP;O>f4%4w=v%c&iM^B7&kQmQ4S&U$R_w{*KrKzkmNe_m$I4wcW=$DC z`PKhA3x~Ug1x@p?zQ{ZL<7{R70+*F&4iN4tGJE_*VL%e4+iFi7xJ2lsVT$*Rvp<=Y zvd&B5Vd%Y=3Y50Zqy$S30u9hCCkJu!`|;x2GZUakFMc5_%&=P8x-jD>SKN>@fGB(^ zcf1w%eY;jpVX%~|*? zh|k$iPr`KAWsw~ftQ;Or9e!2%sgahPy3SN)=>HjT@DN`6xwwf*Bvvd(cv>Zmruwjb zdF=d?kuIi~u5pD}97_UdZYw9V(Y(GFKwZxT5#3FuXhLvr0uBV?v+A(JlhwQJT%#}o zU|!5+mCN7|zz`qxT6L`!%>G~|v?1xVa)N>GRN6^86v??rvxOz9t8f@gy|=(ImDW0- zmRO(!&&K4Q@7bBjx#_r@+xGQ|(<;!f+E31_9uHGi7jjIP_@DIuMxSQ8ua2MPm>`Ae zn(M;2Yo^7cf?B%^l%*0q&%m~||9H5Pj;vzEL0t%xilv_p2wPw)I2twrPgsW4`CMub zsZHr#MA>z>6F^c-nQdri2L)P?(vuA*4*4as1?@Lajyb^IgbU9j^2P0qAk-hDYkXzl zgiit3Uf11w5O}khkt<9nr-V>w#unQ(eYbvG(8FP=$qsDiYOIIt<#2q5x7`=_#11n^ z159tv zb<@wMK_XZUE%i@pSbM62Kh3*FP|@Zhr4GoJEFe>A!o-6AF=&bhR)Am6qrmoAwVSnW0G?X91V&?ON(E|3q0GtaVbI$;hW* z!HpMR{Vxob{63ya=AkHHy~`pyj*bvmEOi_Pp|^hWiirX5QNiPIAr?E|^_FpSEX~Wy zsE30s9Eu}LH55Ak57X*z^?RR-GFb_h7dRsRhRA(P)sDhcnkHGAW&Q=VnXE)0D>CV| z5+q3k{>A34#@A{&*Sm6J*Vb%z44BwROjK_}N)@Cg0@Lbwuzkcp>lBbZt zeMv|zOp??vw@H(P{}{0g3eSY&X`sW(nr@VIc%jZTu}_J%pZSpz4(Pc(=QhSQ>|5)E zMHr)Sg%GcgCg%g+N{1(foLb*LZjrE*tbn;=i_NY$EvWzff+-3 z<+PKD36q&6`aw}|S0=MXg5hU7tzp>u@jUr_qm={wX3L z(7;(=V?I$7n)W%;b|RgbMP3z$_886oieW|X)4{+0RK#f&e~~WpTyU`;G`W*$oE^$w z+H@6POxUl_pn3{@cm+sf=W)Eg5p`@{ddc&3ay!hhaAHH_D{8gnk7U7wmoBWmS3_l} zg>Pk967$@mz#x;}2u@cpY3fBr8&0mjsyIRra_x5w18d%r;#OHi^LxI>g#Bbdt^OyQ zi|v2i`D(*MQDcD^oPHb87}Kv1y?SRXUaW1^Bj=(d2&hjL*3aX0y7ff zAF`o-B|>>!Nf}HGL{Pqp0X|i_+cuxFDoeQTaDgR3R5U+>ZH%JC`j1-OEkxo@0Y_-r zWCy&LfD_K?V=>gtAVM%?69Q;7`hIS41B-TAW`d+2dN8FcTIE5L!z*_PG?@2@2HGe> zaVe+$>m(+w(sx((AHbpj6A<-RZf9`eS-`~7Wf>>EFb!=WC(n;+HYJYMBh)guskS~7 zJ>UoxntrubW|3`Voo7m?GITjfWm=&n>GRiLCWNH^0erv*cm}X3nD)@y!XiO zZvN{A>QeUSSluN#PfK5kipb)l!P_*Iqhr5iqM#%*rfde4u#B z9dv+LI{!TSrDD=0rd;DEpL0XIjM*(VBoNW;9VMpa$#Z%Y%!OJLtll58(JaE#sUw_kBe^9WE?N}?~xVk zJHEhj3haAqxybkZSOaafO+DfTExZY>DXUpT{S6mrd@!*n<($k zn3lQrW&d8&MMOJigai8=Ba+CWd8+WyU0S)I*Zea*Ng(u8PbdxYT0{U7x8n&C#wWcH zRx>p*zgo5gIlO*p7DROQAWeHR4_v*2YT|(Y(kJ^|5K`U)&{h??URK_240a?8kN2`i zodWKzC7cec!TwH}l-{C1d4=CpK&e4bhhiQz0#9Q?>g{*@soG_i<-cMa$3Yu@$l!>w z!R6zoNVTe&0c{zYP^gI=zHI=9cR`by+cpONnfYOT7CFmqxSUO@D@{1}R=~ZL*ZO-$cwqjL>bAoWpSIIHqyLS2!+ z%XGZe8}z7w7WX}K!ni5iE=|Lm0SqX0KMhM;g8<;&q&29f&dFyrN)Wh&8;e4K$ir#df%b?2k<4HwacKi}{O#@pQan1i(Fq@l1VjgKzK zkZZINO2*KD?G=j|N=)TZ#2N7O^`cmm>-X|iAu_&x}_ zPkw8HA5eA5KSyoB_|=rMojH!QXpjUdLohEy1eZPIC2ci~f)7l@6&cj(-l;62A=Crm zhv8|FkBNp?0_{e{rRKlk*@CFilw3q)7sFajh*?fWG<PaVaZ$s33@`@ZZNRCf*tC-%ahjx~qL8~{(npbTX$W(0R*lRnUn2AONv&poNj zp>JHj0y6p^|e%L6x4zsDfc#>JxDnbdR@rY(@|I=5Dm3mpri z8%+!jNHQUuap5ZC3&sdiE=jrJg{X0svnJbABEvb2+rSR3T`qIT2g$qGE--_5Qu1+W z^&+c($Kb{I(MxzD)`o2$%Vq(us>OCKp~OjemS9&8TV~oV&T3`{Y**GRp*LuVR813R zMeg)dt36KB?=w#%)rcynn=r?2D6iHb>Uvp)?$IQgq|r~EB?~e8SsjLd5X?0@AVZwXySW)*3~RS1rWlRL&Nh$=sA7cOG+EeIVLZ9W#a(@jlCfX z)QcWHK=Gn^dWp6S+&l^UVePEjh_1%WI|MS2 z^MD2NZwe(Hdy3Rz4V(N|iBY;}d|BuYN_}vZ&SZ2~>+!-vHXvFzXx7Bo^aO5tw*^0J?qZ(@M-j*Q|I^r1sS{KD3*-`F=uUy(I%-pc>v-+<<(~3;h7k?Koi1lon|=& zO}F!`V>o1z4%uctjGHg|kpAQv!#byB*!Du)mKPZ6-Z)-U5wso+yZ@`Ylu@~DdQD8i=I%2 z?)R|2Wo((b7~o<2BR){hK6fbEo1H?Q8~JiF7c?p7&7pa7KcFh}@M|b$2=Muc}D!ch&!OkL8hnL!AQRr%%*kY#O3uCC`Ly>5&LFs_ zFGbVNB_Io{^%)!+!dfzuBp&MryyH}tQZg@A??&~Sd9Q3UQVmMW0dp#V*jmwG^;YXw zcM`{lMs#x*Fr1O`O4ia#gE%A4`BQO{Vk3 z@)o1d-8Pmwl(_#N_4))qt&s>Ft_jt|D_t!3#qKJ#0*Q>&jrVK+dO(4-q$bYeml^Du zHrxMpEid6MQjl?!kZO4JcN;MKFmWy)%&k)^_cWeR$$qd)cJDqJ z_-(sv-9LNLFH}?IBUO%G7~?a35VUx#nKwA>vG?{4CP(Gq>w67C{2`M9q6+ zgc~8)wB=4g$LHWp%>+0|w@$mA^=hXVPMyN-ZB2HDxVY85LQ!1Sf5g~gIr5hebnvDL zkzujkhKMVfQ$tii&r{eJv?;{v$gXAb?6sae$@pVtq4dx#_EPj=GY z%pEE0x+%<|%=<)$PL{@y!vXSkVXW*rl>F1(-4s#fCYR z;u_6Zmd`%~kFCOUmzdm865i5yw=6Y&NYPSH@@_%8f?n|4DQ+ohERc3SPVrs&0-!(j z38~J271!d>v1(GGl7?ye~PH;(eORTmLq z_9qH2i=HuA0)j6@U>DFsa9Wv@!6CiNN&iBGBZ*Q zM7vJ9OU;#YjR~wP6h7LWaoX##p%bt@7dUx;@%PNc0d`@1Gcw;xfvp49Tk-m0RwFMv z*K9lRDeZHeA+N-Gct2{$KD_I;Zlb1hXsDFq{oV8M6kH`AlR2(6PCq!o8~SS%!snv# zrW1nVJK5OeZ^=-_l`JH=2i@QbPV<>#UCYArJpU-;abW%5I9SPmDNG9ULZQP_lH;FM z-Q=Yux$}5#(a-CEkH#~F!9XR&`lI6K(|Y}NJc&;5%?4Vc+-OHrh8yb$5-o1UGjb{j zxoFr3hvNv_8o%M|IGT)L>)VAj!?8@{0Pdb8*FbQvAPKERN>!xT;6vdDVAj`cIR)A# z18-hjs&R_wKV+!9Z<`tBLW#?*SeceWKJF)iFR!gvCqD6TCycQESzBtXOX`%2fXjqP z1J9mp^pVYbU6P_KaJR#uXC84@Cj6JhzTqZE=SYes1t}#2!25%o>$^73T5ct&`9SB` zKEV4bsQs+a`Sl8i&tejdRK0M9rnQ9y4kP{LMHt*{{LkpL-S8G)A7$D=Wy5=BDRGgO z&Q0q(0>sQ}LXxPNm*OAou=FE+`_y-7H2Go6dZ5RC)l>c72RUkb#F}EhpWo0cuGr`B z?Wg#41^hdY{vFn5@a_9bt(p@EP?p#mImUtDrnycWgS9qRhg* zdp5HK1}fS{E8Cvb-K8#7>{o|=VWRu70}LImW^_ogh0(qcK~$k9?xMZ|LY4#buOw{@ z0~p^p*PN~?8$!gKSwMm7|x!n2eP#VxBFRZ(LKeB&GKVj!S=)_R{S@w-N`v zb2Z}n?2b6m9t$$Ujgowge`Bkf; zHmIjvPgB>+?EJUZWEh88na}}Khs%TqqkF3K+wIDXN)1RkB^aKWLmLM;eji&Ibm9-9 zequa+r;AyK#Go1fflVX5q?s9>CZSTpFB(Hwf&C~rD5}fW{nnTs)xQA0A%sl9p@Fgv z;_sg>)-}M8f|IU;Gh_Bi&yx`ZPOws`Oa0BZV16QGeNxN*obs(VWItuU}8b?s3qKF}OY)5EO-&Q2-(ZcI1YqY;Wu$_OYy0p>?m{L5J)nz&Z~FrI4ML) zPW90rk?CdscD2D&7>KW(vM?${K$nuuooL<>H{bUOwxWI`J~OTtiM(08FaVPutBqdS zbSJABfE*R~hDhe=x^R)}hD3M2=EbrXu%k|PK{6y^8OY}w9p=X+jJ1}S;iHc5``P~! z3!ZkMW5Ub6isXVRPdeHBHZu*LLtM!+GD5TSTS|S{X(vdC*BI$8;j0q^!(;%!t+C|6W$9Rm8TcD1C`_3$`U5+UtzJ!!DfL7QXZ@ z%6ev2TU8Ikn9RxFRSx``IGECjWkZ(yiSyW{?@n7qomy1o=#idBm;&#JN}w5|z&WkY zS#k1!4SgKmlMbndMjh8||2q-NY2}rtqSGuGr&0@YLpY1f*a-xlo5az0#Id!9XwT{! zO<->#F9s~!ty$}WS|?!g5b&{jxoFi>>BO+?So>y7w?{zGS9N|^c@7vmxd>8MSWi=_LAZe*_0p>SiE0lQd*ua8 zbOWnBH@PJP!cOPOhE{G!gxPs384D)3)tAi;IuY4vr?3AE2?tA3d$w8*y_7o(WnEZZ zWtvrwZz&mttjPgYIK+Jf7et5v(W?WlWMqW3$EPqCySzU6XHthJj($IR$`5=>FoUft5;O*pRADWT)%Q7cL`@c< z6Eu)4$ctP-Ui(E`_>$dy;ml-yV!t3fZuMdAYf~=ZBUTRS7a-m~q|=74cjx^NOg^4^ z%37iLlL&q(WD(r&`y`kpx60d`x7=J}r=-GrI*dox5^g*fblNY0+jiIcFS6ZtfRUhT zulwrGck#YC!5N{JzXXbm+os`w#xjh9h=`ZdiE6NfsYhZBRiqm}xG6Gl{QEMDC5>mm zPTR$*PXWOVf!@;KlkHBg-;eog()SE7dpMR%N{@23l#xWuY zjX#Y&GtzGnnOZH(HN1WJg9a#TdP!35$?8mI( zTn#FJaeL`mA$M)gr%M>S`w+X4wGw1geloMixSZO4?Ys&(^euUf7}M5 zezCYzr4XXhNK|je>xxsrP`kM$AjLM%;l$O0KG&@E%GwYhnMl`hLp`R1rqn4;C$Dto zM8~}ZA$e(}AL$HHo$%N^=beMLk#$)kg)H8K*=lPPn9FG)H^RlOZUL#C<_T#bcX5X! zN)6tOD)c-Q2o`0|>ysH)FL)Vtes^2r@OHfYZ>@Of3*d*On;-fb$NWtV6P|7wEO|Sl z&6F3iITU*~0E3CY;9+yU{0lZQc`~t!Bkss6XtF-ymZQ00hRkBfV8`ozGmkic(ht!qxpRg8O)>-T2*G*Wf_gFmGS zhG3q6`ac#Cb@Y%wzIA}AY~F7lu8l4Vxq*yFtJV|}g^gV$muYIDZesLZaft=Lg|O?h zk_Zv&OscO+PX5}GmSjXw_*%TaEu2(RYSv~<`Q%9vCbiGga%bnVkEbo^{m`nzXwk?4 zWPaT$c#-xmFyA{*Fwobdrq~1J)8yl8&TK=t{orr4 z8JI_Y7-~RnB|GDLuE6Q>*9*;!5|)o9GiUzGV17maUE4wlM+pX&mU)X*zApkK9 z_a0$-T2TJ1)*?G!+EqgcZR7iLX?YvSiUt2#dyk2(eJ{px(8{i#bP=H_(yIf`GgU3P^CNej?~Rwxa}lE#G{5Rz z$F!`_k;yfwz2>4%tVdK9xZHdOXJd*82$FnaYaj=1YlsP-HroAwHIQ~}kaNWIjOL-n ze8-xQ=->TCaDVFeH2f=dgW*tQ1eyt!=Cbm>>ZO#|Yh-ccqrHE~Kwv+-AC5peYl+(y zS1Mid{%Rg5?hSrDirjk!W%(%H6ag0S4b!K`wPj3^w_LGEBxZ0uZgF;7&ipOATtFK3 zao)AW)O(!T$g07s5q^;{q2IqZ_&f2!AXzSf-{bz{cG;>iElcdLKbYWFuJ7z?NvGvC zsmC}&LCSWV=v=&bzJJv^c#E;)FLR$^NY|nuxQ(SJ%G7zYMfpWd(KP{s!FeLfc!e$Z z1H$;aV1JKQMN#ADTH+Nf1YQwMDK@bw2BykIL-m}|Np1e&yhKJ(me6wF8!wVhkCC$Z zWMW{H(}R(&g+qf7uTNa)f~v16$-@|?mVKZ(16Zc;Hf5qD62E%*_%?5-F@JQ!c-@r2RtlZrX)mnto!T+I4hezFL$R=FQ;vWg80}Of7zz ztiyqgn)02^Oy!y$AWgrvk#aq0&WorW6V(tn0@ww$+%r`6WFZ$NR1280uc#eU}O`<2JUkysb1SQ3BmNv7txTk5Riw~ z(1y~Y7x+W|=zbB)Rs}utx83Wp*KsCZd&o<>u36`C)*ftul2F?>LAe9MCQo4gWHe8# z_;ot4P3J6h^3FC| zc37fno_WK9YA;MK86>YzOvsc$2dV9%&axF1Qh^??wBr4{ey9^?+p`X)lMg(iLYn~D z2AdQ&)kY?xQYGYz?37T^Dsr+wo-f#ZTV~*kx=C;{Zg6@n1KY$E*JzO~@B40Pf=`45 z%%PCa#U0_gHv~m_j7~`%vm*2hd{NEK_G#rc?vsY6)bSPxA9MGY=aK|IqVqtib&Z5I zKp#rZ*T)$X(6CZco((CAa&@^2kw!mvxu~asV^eaT9`U70&!6B%#sRk4u*G@YtmDR$ zL_Rf`i!#bZr`X9*yQ!1^RGD|ndW>0)4mP%42KgYE>RI5Ty<=J%$}|=)?_I4zP$Yua z7Q5+$rvP!x#`sMg63R!3%B&?6>z2xNwu#sLtlMOu5+%lGCI1&}*1Nh2w-=}Oqw0Y* zxW_N%1_NfF?~(cR-_9FRyu6oloN$cf0uQDHNzbw1)XomG9sM8$x+KML>D7K%)}#sG zl%pjf22I9H*-A%0*VUQe*Ts}JM$U|1F>mf z9#?(g|5(a@)X;$ID~#@GN7((Q>FMYbez8VF85m|C)uUbjXua;QeIwoCX;8}+fRa?^ zZ1hp-ULoSmO{{AWD<|_?823n=7;*2ebNDB;H;Z9&q3(hokI?Sz3CcL>;>EugHad(a zt!BXB(ZV^TWuJj+;zaOUzs&Q;Tp;}zQ)#)|y%QsOMvy^7bVwa zXg9}*2||nsPHNn5^Y9xlE+#P(fM96jKZJZOnS4(6Cf0ELqk{O?CWHJ==uYE5hN7>S zKj?@4*Mls&eh>sn!IK7As~#;pCT9<{KvpAl$&+?4siPCHs8JUgvgb44a@co*GjqfL zLUQ>bx$|E{9meW9QxNO>W+a1TGbbH(CW<++8{0wYT_Q6#>s9E>F%!qWKS%q35=f}o zk>BlHSGfV-y+F5X8%Hb+m6~do zh^n~m;#x&4-r1^rGChLha(mX24{+>G$F$g!02N@(Wj3@vmhv?Ub24+nO$oj5#C9%J z<1yrQi~aut}$0Em`l0;zE1rMHSoi=3f#+qB&1xd@t|QX+PN=GG;)f zLjp>3D^z8{h0j0e%yMM7qR)m4mO4Sgmi3_V5k@u>tL10XRToO;1ibwcBdAn^R#&~k zGh}2<+b4?~L$y1xkl0ho*dMWC5vaQ#n~Jq8$JzenA|ZCvKigA5dO6VZ>K%>j18PRt z|6niG3vK?z;ts1Kwz1;!3Gr*S)?KQd&Otklft^}*PrC@(=Le#Osh|PxMx6w2aHQt~ z28WdBo>&%6dg4a3JjJJ97zN9YZOK8@j$!X_0zhZ{`eXCB%PWK< zkdvWE+35Zjw12IvHgXOq_Sdk0fJ&Jx*5)0wR5%fdtc^I&uLV~!=z+&Q?9dM2x#mM? z@;4s;RY819!K>-qzJ)QtBNoEw3n9j?z|sL?<`rn;LU=>*-+>p@(g z3BB$m>H2E}qJr%9B7+_npWh{+1g?S8VuB%{)`7sX3B$=voe-3xCR&z}U<+v1=~<~( zL$fY9D4R!{UXV$&;*2(@S#{~@VpRhC2`+VBw3UV!0uf169MiF)d^tJKsDPTJcmVbn zAzY_dL>6Hu13+iRe+!nATW|N*J8`ceKfv6TwV8@8dsF?xu1lA6LO*u5FDeZ`#4jGR zDVv2rjPIhq{tq#k4#5QeX6bbd@0aX?dDR#DpzYp@Zx%z@xKHM{#P0%<`Rw)CLDV=^ zqpk!8a$}<~Jdb)6=wL+vnU_#y>)_?*KE&klxapoBxemXBRph z<(i=)2V;_55K8(36gBL5=YFb4N-_8{^X*rDWEC?z0`_Hnhvvj#8jqeDp8*z9>;QUu zA_N7H!6@T#i5a_|aE(>-)pL6gbt1+>%i^7ibtTatbjW7)ln3W!$5o^R@-$%9uP~=A z?OZuWWTwT1jE5x8Lh-`>gBD>CJE;X#gZuj(Is{fA)U?RsT>Ey;$2^^-)1N#6Jwhfr zr7*41LgNEuru+s0Y5zXaz#s_u>s>C7Sb;Q`mITQv z>1j+K3$xhoX9IMZ2!7y|Jo=*QG|d2Uk9$C2>$tp$k0NTUDmCa2)~#ArOW!fOpLJ1Z z zBeB1rU|uCq%>jE-A@7!kcA<%D+m;V{AD}pkx1ityO87gQtnH6^{8T+sn|1Rum9dr= zcPh>-&q%XWjRLLlcRA)ZS(h3YdUnsSx#}_fWC~Qx5w89o^0%Be#py~uRd>=&;6g9! z$fcc$lW)HJ0Ly|c$2R{&cs-L$lm{S+q8FLw>;jY(JAA=6*HCM5ZQobG1R}{^;BE`Y z2eK8$bxj#}4#CCKa3| zkp_iy)aMfkHK-+Vv+XcZgW;D3ilqKJvW>zhHG-c=xs7)m@-%VXWkKU93!uL$w6%SVL;2sg?Tc2G7b5;TrEs-UfwJe=a(9@Yuez zNs3JJ=IZAqCi!Cfqq5NyTaw*;S~;Abqd(!V7uF`xdJ~(T9J>cN(y~fJDPdB(oa@bA z7FKW&9;oDIYVTl+F7or5cJ6#0fm$Z+{?YR#hJ;l zr^Q_l2j1#W)A0~0XtnByd<9XlVW^ZVB-rB;>&evqgw2~3_y0f?&G1uQ!y84hUIxs# z_5CirxNM%$AnY1JJcv*$vB?E68+#c^l4QuTS~Mx(JY>WyEIW?bBbaB{oOwlR2$Kf9 z#PP>iz`P)><6bl`sqnQ#av_Uy0{Gr2S;PX##ddhN(3kOxIS3po1*-_W8ay>dxeV-ShcRe=U+-fsk6@!ltahOmUo_sr3x4 zzgDJp5WW$G?n%dOOA%y_PUm@DR8M{xoE_e(T(ESYxYdc}HSfZwKe`zZROdex78P|4 ztls%s3EGk4pk`(AIXoLk0kK6`ht#XauarF|W`SZMkD&F^{NRm5B5t2l@>`H!_DtE# zE>>A<5=G?&ImDQVMZvv+^_=rLjg#17g_0gM)gKGxc9?a^FK4R}E7Z@E{{}B10>66? zSF+>mo5U`qqxnv?g)HHYF}Sre9V9D}JhH(NKDIc%0DWN>|A5%%L6WO-x%$pv3GHs! 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 Dict: @@ -115,30 +120,20 @@ def validate_mongo_connection(cnx: str) -> (bool, str): parsed = urlparse(cnx) if parsed.scheme not in ["mongodb", "mongodb+srv"]: return False, "Not mongodb schema" - # we have mongo connection string. Let's try if we can connect. - try: - components = decompose_url(cnx) - except RuntimeError: - return False, f"Invalid port specified." - - mongo_args = { - "host": compose_url(**components), - "serverSelectionTimeoutMS": 2000 - } - port = components.get("port") - if port is not None: - mongo_args["port"] = int(port) try: - client = MongoClient(**mongo_args) + client = MongoClient( + cnx, + serverSelectionTimeoutMS=2000 + ) client.server_info() client.close() except ServerSelectionTimeoutError as e: return False, f"Cannot connect to server {cnx} - {e}" except ValueError: return False, f"Invalid port specified {parsed.port}" - except InvalidURI as e: - return False, str(e) + except (ConfigurationError, OperationFailure, InvalidURI) as exc: + return False, str(exc) else: return True, "Connection is successful" diff --git a/igniter/version.py b/igniter/version.py index 8c8ffdccb7..4f8f0907e9 100644 --- a/igniter/version.py +++ b/igniter/version.py @@ -1,4 +1,4 @@ # -*- coding: utf-8 -*- """Definition of Igniter version.""" -__version__ = "1.0.0-beta" +__version__ = "1.0.0-rc1" diff --git a/inno_setup.iss b/inno_setup.iss new file mode 100644 index 0000000000..ead9907955 --- /dev/null +++ b/inno_setup.iss @@ -0,0 +1,50 @@ +; Script generated by the Inno Setup Script Wizard. +; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! + + +#define MyAppName "OpenPype" +#define Build GetEnv("BUILD_DIR") +#define AppVer GetEnv("BUILD_VERSION") + + +[Setup] +; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications. +; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) +AppId={{B9E9DF6A-5BDA-42DD-9F35-C09D564C4D93} +AppName={#MyAppName} +AppVersion={#AppVer} +AppVerName={#MyAppName} version {#AppVer} +AppPublisher=Orbi Tools s.r.o +AppPublisherURL=http://pype.club +AppSupportURL=http://pype.club +AppUpdatesURL=http://pype.club +DefaultDirName={autopf}\{#MyAppName} +DisableProgramGroupPage=yes +OutputBaseFilename={#MyAppName}-{#AppVer}-install +AllowCancelDuringInstall=yes +; Uncomment the following line to run in non administrative install mode (install for current user only.) +;PrivilegesRequired=lowest +PrivilegesRequiredOverridesAllowed=dialog +SetupIconFile=igniter\openpype.ico +OutputDir=build\ +Compression=lzma +SolidCompression=yes +WizardStyle=modern + +[Languages] +Name: "english"; MessagesFile: "compiler:Default.isl" + +[Tasks] +Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked + +[Files] +Source: "build\{#build}\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs +; NOTE: Don't use "Flags: ignoreversion" on any shared system files + +[Icons] +Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\openpype_gui.exe" +Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\openpype_gui.exe"; Tasks: desktopicon + +[Run] +Filename: "{app}\openpype_gui.exe"; Description: "{cm:LaunchProgram,OpenPype}"; Flags: nowait postinstall skipifsilent + diff --git a/openpype/__init__.py b/openpype/__init__.py index edd48a018d..f63d534e08 100644 --- a/openpype/__init__.py +++ b/openpype/__init__.py @@ -9,6 +9,7 @@ from .settings import get_project_settings from .lib import ( Anatomy, filter_pyblish_plugins, + set_plugin_attributes_from_settings, change_timer_to_current_context ) @@ -58,38 +59,8 @@ def patched_discover(superclass): # run original discover and get plugins plugins = _original_discover(superclass) - # determine host application to use for finding presets - if avalon.registered_host() is None: - return plugins - host = avalon.registered_host().__name__.split(".")[-1] + set_plugin_attributes_from_settings(plugins, superclass) - # map plugin superclass to preset json. Currenly suppoted is load and - # create (avalon.api.Loader and avalon.api.Creator) - plugin_type = "undefined" - if superclass.__name__.split(".")[-1] == "Loader": - plugin_type = "load" - elif superclass.__name__.split(".")[-1] == "Creator": - plugin_type = "create" - - print(">>> Finding presets for {}:{} ...".format(host, plugin_type)) - try: - settings = ( - get_project_settings(os.environ['AVALON_PROJECT']) - [host][plugin_type] - ) - except KeyError: - print("*** no presets found.") - else: - for plugin in plugins: - if plugin.__name__ in settings: - print(">>> We have preset for {}".format(plugin.__name__)) - for option, value in settings[plugin.__name__].items(): - if option == "enabled" and value is False: - setattr(plugin, "active", False) - print(" - is disabled by preset") - else: - setattr(plugin, option, value) - print(" - setting `{}`: `{}`".format(option, value)) return plugins diff --git a/openpype/cli.py b/openpype/cli.py index c6da88cbc1..9c49825721 100644 --- a/openpype/cli.py +++ b/openpype/cli.py @@ -224,17 +224,6 @@ def launch(app, project, asset, task, PypeCommands().run_application(app, project, asset, task, tools, arguments) -@main.command() -@click.option("-p", "--path", help="Path to zip file", default=None) -def generate_zip(path): - """Generate Pype zip from current sources. - - If PATH is not provided, it will create zip file in user data dir. - - """ - PypeCommands().generate_zip(path) - - @main.command( context_settings=dict( ignore_unknown_options=True, diff --git a/openpype/hooks/pre_python2_vendor.py b/openpype/hooks/pre_python_2_prelaunch.py similarity index 82% rename from openpype/hooks/pre_python2_vendor.py rename to openpype/hooks/pre_python_2_prelaunch.py index 815682fef8..84272d2e5d 100644 --- a/openpype/hooks/pre_python2_vendor.py +++ b/openpype/hooks/pre_python_2_prelaunch.py @@ -4,14 +4,15 @@ from openpype.lib import PreLaunchHook class PrePython2Vendor(PreLaunchHook): """Prepend python 2 dependencies for py2 hosts.""" - # WARNING This hook will probably be deprecated in OpenPype 3 - kept for test order = 10 - app_groups = ["hiero", "nuke", "nukex", "unreal"] def execute(self): + if not self.application.use_python_2: + return + # Prepare vendor dir path self.log.info("adding global python 2 vendor") - pype_root = os.getenv("OPENPYPE_ROOT") + pype_root = os.getenv("OPENPYPE_REPOS_ROOT") python_2_vendor = os.path.join( pype_root, "openpype", diff --git a/openpype/hosts/aftereffects/api/__init__.py b/openpype/hosts/aftereffects/api/__init__.py index 9a80801652..e914c26435 100644 --- a/openpype/hosts/aftereffects/api/__init__.py +++ b/openpype/hosts/aftereffects/api/__init__.py @@ -5,7 +5,7 @@ import logging from avalon import io from avalon import api as avalon from avalon.vendor import Qt -from openpype import lib +from openpype import lib, api import pyblish.api as pyblish import openpype.hosts.aftereffects @@ -81,3 +81,69 @@ def uninstall(): def on_pyblish_instance_toggled(instance, old_value, new_value): """Toggle layer visibility on instance toggles.""" instance[0].Visible = new_value + + +def get_asset_settings(): + """Get settings on current asset from database. + + Returns: + dict: Scene data. + + """ + asset_data = lib.get_asset()["data"] + fps = asset_data.get("fps") + frame_start = asset_data.get("frameStart") + frame_end = asset_data.get("frameEnd") + handle_start = asset_data.get("handleStart") + handle_end = asset_data.get("handleEnd") + resolution_width = asset_data.get("resolutionWidth") + resolution_height = asset_data.get("resolutionHeight") + duration = (frame_end - frame_start + 1) + handle_start + handle_end + entity_type = asset_data.get("entityType") + + scene_data = { + "fps": fps, + "frameStart": frame_start, + "frameEnd": frame_end, + "handleStart": handle_start, + "handleEnd": handle_end, + "resolutionWidth": resolution_width, + "resolutionHeight": resolution_height, + "duration": duration + } + + try: + # temporary, in pype3 replace with api.get_current_project_settings + skip_resolution_check = ( + api.get_current_project_settings() + ["plugins"] + ["aftereffects"] + ["publish"] + ["ValidateSceneSettings"] + ["skip_resolution_check"] + ) + skip_timelines_check = ( + api.get_current_project_settings() + ["plugins"] + ["aftereffects"] + ["publish"] + ["ValidateSceneSettings"] + ["skip_timelines_check"] + ) + except KeyError: + skip_resolution_check = ['*'] + skip_timelines_check = ['*'] + + if os.getenv('AVALON_TASK') in skip_resolution_check or \ + '*' in skip_timelines_check: + scene_data.pop("resolutionWidth") + scene_data.pop("resolutionHeight") + + if entity_type in skip_timelines_check or '*' in skip_timelines_check: + scene_data.pop('fps', None) + scene_data.pop('frameStart', None) + scene_data.pop('frameEnd', None) + scene_data.pop('handleStart', None) + scene_data.pop('handleEnd', None) + + return scene_data diff --git a/openpype/hosts/aftereffects/plugins/publish/collect_render.py b/openpype/hosts/aftereffects/plugins/publish/collect_render.py index ba64551283..baac64ed0c 100644 --- a/openpype/hosts/aftereffects/plugins/publish/collect_render.py +++ b/openpype/hosts/aftereffects/plugins/publish/collect_render.py @@ -12,6 +12,7 @@ class AERenderInstance(RenderInstance): # extend generic, composition name is needed comp_name = attr.ib(default=None) comp_id = attr.ib(default=None) + fps = attr.ib(default=None) class CollectAERender(abstract_collect_render.AbstractCollectRender): @@ -45,6 +46,7 @@ class CollectAERender(abstract_collect_render.AbstractCollectRender): raise ValueError("Couldn't find id, unable to publish. " + "Please recreate instance.") item_id = inst["members"][0] + work_area_info = self.stub.get_work_area(int(item_id)) if not work_area_info: @@ -57,6 +59,8 @@ class CollectAERender(abstract_collect_render.AbstractCollectRender): frameEnd = round(work_area_info.workAreaStart + float(work_area_info.workAreaDuration) * float(work_area_info.frameRate)) - 1 + fps = work_area_info.frameRate + # TODO add resolution when supported by extension if inst["family"] == "render" and inst["active"]: instance = AERenderInstance( @@ -86,7 +90,8 @@ class CollectAERender(abstract_collect_render.AbstractCollectRender): frameStart=frameStart, frameEnd=frameEnd, frameStep=1, - toBeRenderedOn='deadline' + toBeRenderedOn='deadline', + fps=fps ) comp = compositions_by_id.get(int(item_id)) @@ -102,7 +107,6 @@ class CollectAERender(abstract_collect_render.AbstractCollectRender): instances.append(instance) - self.log.debug("instances::{}".format(instances)) return instances def get_expected_files(self, render_instance): diff --git a/openpype/hosts/aftereffects/plugins/publish/validate_scene_settings.py b/openpype/hosts/aftereffects/plugins/publish/validate_scene_settings.py new file mode 100644 index 0000000000..cc7db3141f --- /dev/null +++ b/openpype/hosts/aftereffects/plugins/publish/validate_scene_settings.py @@ -0,0 +1,110 @@ +# -*- coding: utf-8 -*- +"""Validate scene settings.""" +import os + +import pyblish.api + +from avalon import aftereffects + +import openpype.hosts.aftereffects.api as api + +stub = aftereffects.stub() + + +class ValidateSceneSettings(pyblish.api.InstancePlugin): + """ + Ensures that Composition Settings (right mouse on comp) are same as + in FTrack on task. + + By default checks only duration - how many frames should be rendered. + Compares: + Frame start - Frame end + 1 from FTrack + against + Duration in Composition Settings. + + If this complains: + Check error message where is discrepancy. + Check FTrack task 'pype' section of task attributes for expected + values. + Check/modify rendered Composition Settings. + + If you know what you are doing run publishing again, uncheck this + validation before Validation phase. + """ + + """ + Dev docu: + Could be configured by 'presets/plugins/aftereffects/publish' + + skip_timelines_check - fill task name for which skip validation of + frameStart + frameEnd + fps + handleStart + handleEnd + skip_resolution_check - fill entity type ('asset') to skip validation + resolutionWidth + resolutionHeight + TODO support in extension is missing for now + + By defaults validates duration (how many frames should be published) + """ + + order = pyblish.api.ValidatorOrder + label = "Validate Scene Settings" + families = ["render.farm"] + hosts = ["aftereffects"] + optional = True + + skip_timelines_check = ["*"] # * >> skip for all + skip_resolution_check = ["*"] + + def process(self, instance): + """Plugin entry point.""" + expected_settings = api.get_asset_settings() + self.log.info("expected_settings::{}".format(expected_settings)) + + # handle case where ftrack uses only two decimal places + # 23.976023976023978 vs. 23.98 + fps = instance.data.get("fps") + if fps: + if isinstance(fps, float): + fps = float( + "{:.2f}".format(fps)) + expected_settings["fps"] = fps + + duration = instance.data.get("frameEndHandle") - \ + instance.data.get("frameStartHandle") + 1 + + current_settings = { + "fps": fps, + "frameStartHandle": instance.data.get("frameStartHandle"), + "frameEndHandle": instance.data.get("frameEndHandle"), + "resolutionWidth": instance.data.get("resolutionWidth"), + "resolutionHeight": instance.data.get("resolutionHeight"), + "duration": duration + } + self.log.info("current_settings:: {}".format(current_settings)) + + invalid_settings = [] + for key, value in expected_settings.items(): + if value != current_settings[key]: + invalid_settings.append( + "{} expected: {} found: {}".format(key, value, + current_settings[key]) + ) + + if ((expected_settings.get("handleStart") + or expected_settings.get("handleEnd")) + and invalid_settings): + msg = "Handles included in calculation. Remove handles in DB " +\ + "or extend frame range in Composition Setting." + invalid_settings[-1]["reason"] = msg + + msg = "Found invalid settings:\n{}".format( + "\n".join(invalid_settings) + ) + assert not invalid_settings, msg + assert os.path.exists(instance.data.get("source")), ( + "Scene file not found (saved under wrong name)" + ) diff --git a/openpype/hosts/blender/api/plugin.py b/openpype/hosts/blender/api/plugin.py index eb88e7af63..de30da3319 100644 --- a/openpype/hosts/blender/api/plugin.py +++ b/openpype/hosts/blender/api/plugin.py @@ -9,7 +9,7 @@ from avalon import api import avalon.blender from openpype.api import PypeCreatorMixin -VALID_EXTENSIONS = [".blend", ".json"] +VALID_EXTENSIONS = [".blend", ".json", ".abc"] def asset_name( diff --git a/openpype/hosts/blender/hooks/pre_pyside_install.py b/openpype/hosts/blender/hooks/pre_pyside_install.py index 088a27566d..6d253300d9 100644 --- a/openpype/hosts/blender/hooks/pre_pyside_install.py +++ b/openpype/hosts/blender/hooks/pre_pyside_install.py @@ -1,4 +1,5 @@ import os +import re import subprocess from openpype.lib import PreLaunchHook @@ -31,10 +32,46 @@ class InstallPySideToBlender(PreLaunchHook): def inner_execute(self): # Get blender's python directory + version_regex = re.compile(r"^2\.[0-9]{2}$") + executable = self.launch_context.executable.executable_path - # Blender installation contain subfolder named with it's version where - # python binaries are stored. - version_subfolder = self.launch_context.app_name.split("_")[1] + if os.path.basename(executable).lower() != "blender.exe": + self.log.info(( + "Executable does not lead to blender.exe file. Can't determine" + " blender's python to check/install PySide2." + )) + return + + executable_dir = os.path.dirname(executable) + version_subfolders = [] + for name in os.listdir(executable_dir): + fullpath = os.path.join(name, executable_dir) + if not os.path.isdir(fullpath): + continue + + if not version_regex.match(name): + continue + + version_subfolders.append(name) + + if not version_subfolders: + self.log.info( + "Didn't find version subfolder next to Blender executable" + ) + return + + if len(version_subfolders) > 1: + self.log.info(( + "Found more than one version subfolder next" + " to blender executable. {}" + ).format(", ".join([ + '"./{}"'.format(name) + for name in version_subfolders + ]))) + return + + version_subfolder = version_subfolders[0] + pythond_dir = os.path.join( os.path.dirname(executable), version_subfolder, @@ -65,6 +102,7 @@ class InstallPySideToBlender(PreLaunchHook): # Check if PySide2 is installed and skip if yes if self.is_pyside_installed(python_executable): + self.log.debug("Blender has already installed PySide2.") return # Install PySide2 in blender's python diff --git a/openpype/hosts/blender/plugins/create/create_pointcache.py b/openpype/hosts/blender/plugins/create/create_pointcache.py new file mode 100644 index 0000000000..03a468f82e --- /dev/null +++ b/openpype/hosts/blender/plugins/create/create_pointcache.py @@ -0,0 +1,35 @@ +"""Create a pointcache asset.""" + +import bpy + +from avalon import api +from avalon.blender import lib +import openpype.hosts.blender.api.plugin + + +class CreatePointcache(openpype.hosts.blender.api.plugin.Creator): + """Polygonal static geometry""" + + name = "pointcacheMain" + label = "Point Cache" + family = "pointcache" + icon = "gears" + + def process(self): + + asset = self.data["asset"] + subset = self.data["subset"] + name = openpype.hosts.blender.api.plugin.asset_name(asset, subset) + collection = bpy.data.collections.new(name=name) + bpy.context.scene.collection.children.link(collection) + self.data['task'] = api.Session.get('AVALON_TASK') + lib.imprint(collection, self.data) + + if (self.options or {}).get("useSelection"): + objects = lib.get_selection() + for obj in objects: + collection.objects.link(obj) + if obj.type == 'EMPTY': + objects.extend(obj.children) + + return collection diff --git a/openpype/hosts/blender/plugins/load/load_abc.py b/openpype/hosts/blender/plugins/load/load_abc.py new file mode 100644 index 0000000000..4248cffd69 --- /dev/null +++ b/openpype/hosts/blender/plugins/load/load_abc.py @@ -0,0 +1,246 @@ +"""Load an asset in Blender from an Alembic file.""" + +from pathlib import Path +from pprint import pformat +from typing import Dict, List, Optional + +from avalon import api, blender +import bpy +import openpype.hosts.blender.api.plugin as plugin + + +class CacheModelLoader(plugin.AssetLoader): + """Load cache models. + + Stores the imported asset in a collection named after the asset. + + Note: + At least for now it only supports Alembic files. + """ + + families = ["model", "pointcache"] + representations = ["abc"] + + label = "Link Alembic" + icon = "code-fork" + color = "orange" + + def _remove(self, objects, container): + for obj in list(objects): + if obj.type == 'MESH': + bpy.data.meshes.remove(obj.data) + elif obj.type == 'EMPTY': + bpy.data.objects.remove(obj) + + bpy.data.collections.remove(container) + + def _process(self, libpath, container_name, parent_collection): + bpy.ops.object.select_all(action='DESELECT') + + view_layer = bpy.context.view_layer + view_layer_collection = view_layer.active_layer_collection.collection + + relative = bpy.context.preferences.filepaths.use_relative_paths + bpy.ops.wm.alembic_import( + filepath=libpath, + relative_path=relative + ) + + parent = parent_collection + + if parent is None: + parent = bpy.context.scene.collection + + model_container = bpy.data.collections.new(container_name) + parent.children.link(model_container) + for obj in bpy.context.selected_objects: + model_container.objects.link(obj) + view_layer_collection.objects.unlink(obj) + + name = obj.name + obj.name = f"{name}:{container_name}" + + # Groups are imported as Empty objects in Blender + if obj.type == 'MESH': + data_name = obj.data.name + obj.data.name = f"{data_name}:{container_name}" + + if not obj.get(blender.pipeline.AVALON_PROPERTY): + obj[blender.pipeline.AVALON_PROPERTY] = dict() + + avalon_info = obj[blender.pipeline.AVALON_PROPERTY] + avalon_info.update({"container_name": container_name}) + + bpy.ops.object.select_all(action='DESELECT') + + return model_container + + def process_asset( + self, context: dict, name: str, namespace: Optional[str] = None, + options: Optional[Dict] = None + ) -> Optional[List]: + """ + Arguments: + name: Use pre-defined name + namespace: Use pre-defined namespace + context: Full parenthood of representation to load + options: Additional settings dictionary + """ + + libpath = self.fname + asset = context["asset"]["name"] + subset = context["subset"]["name"] + + lib_container = plugin.asset_name( + asset, subset + ) + unique_number = plugin.get_unique_number( + asset, subset + ) + namespace = namespace or f"{asset}_{unique_number}" + container_name = plugin.asset_name( + asset, subset, unique_number + ) + + container = bpy.data.collections.new(lib_container) + container.name = container_name + blender.pipeline.containerise_existing( + container, + name, + namespace, + context, + self.__class__.__name__, + ) + + container_metadata = container.get( + blender.pipeline.AVALON_PROPERTY) + + container_metadata["libpath"] = libpath + container_metadata["lib_container"] = lib_container + + obj_container = self._process( + libpath, container_name, None) + + container_metadata["obj_container"] = obj_container + + # Save the list of objects in the metadata container + container_metadata["objects"] = obj_container.all_objects + + nodes = list(container.objects) + nodes.append(container) + self[:] = nodes + return nodes + + def update(self, container: Dict, representation: Dict): + """Update the loaded asset. + + This will remove all objects of the current collection, load the new + ones and add them to the collection. + If the objects of the collection are used in another collection they + will not be removed, only unlinked. Normally this should not be the + case though. + + Warning: + No nested collections are supported at the moment! + """ + collection = bpy.data.collections.get( + container["objectName"] + ) + libpath = Path(api.get_representation_path(representation)) + extension = libpath.suffix.lower() + + self.log.info( + "Container: %s\nRepresentation: %s", + pformat(container, indent=2), + pformat(representation, indent=2), + ) + + assert collection, ( + f"The asset is not loaded: {container['objectName']}" + ) + assert not (collection.children), ( + "Nested collections are not supported." + ) + assert libpath, ( + "No existing library file found for {container['objectName']}" + ) + assert libpath.is_file(), ( + f"The file doesn't exist: {libpath}" + ) + assert extension in plugin.VALID_EXTENSIONS, ( + f"Unsupported file: {libpath}" + ) + + collection_metadata = collection.get( + blender.pipeline.AVALON_PROPERTY) + collection_libpath = collection_metadata["libpath"] + + obj_container = plugin.get_local_collection_with_name( + collection_metadata["obj_container"].name + ) + objects = obj_container.all_objects + + container_name = obj_container.name + + normalized_collection_libpath = ( + str(Path(bpy.path.abspath(collection_libpath)).resolve()) + ) + normalized_libpath = ( + str(Path(bpy.path.abspath(str(libpath))).resolve()) + ) + self.log.debug( + "normalized_collection_libpath:\n %s\nnormalized_libpath:\n %s", + normalized_collection_libpath, + normalized_libpath, + ) + if normalized_collection_libpath == normalized_libpath: + self.log.info("Library already loaded, not updating...") + return + + parent = plugin.get_parent_collection(obj_container) + + self._remove(objects, obj_container) + + obj_container = self._process( + str(libpath), container_name, parent) + + collection_metadata["obj_container"] = obj_container + collection_metadata["objects"] = obj_container.all_objects + collection_metadata["libpath"] = str(libpath) + collection_metadata["representation"] = str(representation["_id"]) + + def remove(self, container: Dict) -> bool: + """Remove an existing container from a Blender scene. + + Arguments: + container (openpype:container-1.0): Container to remove, + from `host.ls()`. + + Returns: + bool: Whether the container was deleted. + + Warning: + No nested collections are supported at the moment! + """ + collection = bpy.data.collections.get( + container["objectName"] + ) + if not collection: + return False + assert not (collection.children), ( + "Nested collections are not supported." + ) + + collection_metadata = collection.get( + blender.pipeline.AVALON_PROPERTY) + + obj_container = plugin.get_local_collection_with_name( + collection_metadata["obj_container"].name + ) + objects = obj_container.all_objects + + self._remove(objects, obj_container) + + bpy.data.collections.remove(collection) + + return True diff --git a/openpype/hosts/blender/plugins/load/load_model.py b/openpype/hosts/blender/plugins/load/load_model.py index 7297e459a6..d645bedfcc 100644 --- a/openpype/hosts/blender/plugins/load/load_model.py +++ b/openpype/hosts/blender/plugins/load/load_model.py @@ -242,65 +242,3 @@ class BlendModelLoader(plugin.AssetLoader): bpy.data.collections.remove(collection) return True - - -class CacheModelLoader(plugin.AssetLoader): - """Load cache models. - - Stores the imported asset in a collection named after the asset. - - Note: - At least for now it only supports Alembic files. - """ - - families = ["model"] - representations = ["abc"] - - label = "Link Model" - icon = "code-fork" - color = "orange" - - def process_asset( - self, context: dict, name: str, namespace: Optional[str] = None, - options: Optional[Dict] = None - ) -> Optional[List]: - """ - Arguments: - name: Use pre-defined name - namespace: Use pre-defined namespace - context: Full parenthood of representation to load - options: Additional settings dictionary - """ - raise NotImplementedError( - "Loading of Alembic files is not yet implemented.") - # TODO (jasper): implement Alembic import. - - libpath = self.fname - asset = context["asset"]["name"] - subset = context["subset"]["name"] - # TODO (jasper): evaluate use of namespace which is 'alien' to Blender. - lib_container = container_name = ( - plugin.asset_name(asset, subset, namespace) - ) - relative = bpy.context.preferences.filepaths.use_relative_paths - - with bpy.data.libraries.load( - libpath, link=True, relative=relative - ) as (data_from, data_to): - data_to.collections = [lib_container] - - scene = bpy.context.scene - instance_empty = bpy.data.objects.new( - container_name, None - ) - scene.collection.objects.link(instance_empty) - instance_empty.instance_type = 'COLLECTION' - collection = bpy.data.collections[lib_container] - collection.name = container_name - instance_empty.instance_collection = collection - - nodes = list(collection.objects) - nodes.append(collection) - nodes.append(instance_empty) - self[:] = nodes - return nodes diff --git a/openpype/hosts/blender/plugins/publish/extract_abc.py b/openpype/hosts/blender/plugins/publish/extract_abc.py index 6a89c6019b..a6315908fc 100644 --- a/openpype/hosts/blender/plugins/publish/extract_abc.py +++ b/openpype/hosts/blender/plugins/publish/extract_abc.py @@ -11,14 +11,14 @@ class ExtractABC(openpype.api.Extractor): label = "Extract ABC" hosts = ["blender"] - families = ["model"] + families = ["model", "pointcache"] optional = True def process(self, instance): # Define extract output file path stagingdir = self.staging_dir(instance) - filename = f"{instance.name}.fbx" + filename = f"{instance.name}.abc" filepath = os.path.join(stagingdir, filename) context = bpy.context @@ -52,6 +52,8 @@ class ExtractABC(openpype.api.Extractor): old_scale = scene.unit_settings.scale_length + bpy.ops.object.select_all(action='DESELECT') + selected = list() for obj in instance: @@ -67,14 +69,11 @@ class ExtractABC(openpype.api.Extractor): # We set the scale of the scene for the export scene.unit_settings.scale_length = 0.01 - self.log.info(new_context) - # We export the abc bpy.ops.wm.alembic_export( new_context, filepath=filepath, - start=1, - end=1 + selected=True ) view_layer.active_layer_collection = old_active_layer_collection diff --git a/openpype/hosts/hiero/api/__init__.py b/openpype/hosts/hiero/api/__init__.py index fcb1d50ea8..8d0105ae5f 100644 --- a/openpype/hosts/hiero/api/__init__.py +++ b/openpype/hosts/hiero/api/__init__.py @@ -22,6 +22,7 @@ from .pipeline import ( ) from .lib import ( + pype_tag_name, get_track_items, get_current_project, get_current_sequence, @@ -73,6 +74,7 @@ __all__ = [ "work_root", # Lib functions + "pype_tag_name", "get_track_items", "get_current_project", "get_current_sequence", diff --git a/openpype/hosts/hiero/api/events.py b/openpype/hosts/hiero/api/events.py index c02e3e2ac4..3df095f9e4 100644 --- a/openpype/hosts/hiero/api/events.py +++ b/openpype/hosts/hiero/api/events.py @@ -2,7 +2,12 @@ import os import hiero.core.events import avalon.api as avalon from openpype.api import Logger -from .lib import sync_avalon_data_to_workfile, launch_workfiles_app +from .lib import ( + sync_avalon_data_to_workfile, + launch_workfiles_app, + selection_changed_timeline, + before_project_save +) from .tags import add_tags_to_workfile from .menu import update_menu_task_label @@ -78,7 +83,7 @@ def register_hiero_events(): "Registering events for: kBeforeNewProjectCreated, " "kAfterNewProjectCreated, kBeforeProjectLoad, kAfterProjectLoad, " "kBeforeProjectSave, kAfterProjectSave, kBeforeProjectClose, " - "kAfterProjectClose, kShutdown, kStartup" + "kAfterProjectClose, kShutdown, kStartup, kSelectionChanged" ) # hiero.core.events.registerInterest( @@ -91,8 +96,8 @@ def register_hiero_events(): hiero.core.events.registerInterest( "kAfterProjectLoad", afterProjectLoad) - # hiero.core.events.registerInterest( - # "kBeforeProjectSave", beforeProjectSaved) + hiero.core.events.registerInterest( + "kBeforeProjectSave", before_project_save) # hiero.core.events.registerInterest( # "kAfterProjectSave", afterProjectSaved) # @@ -104,10 +109,16 @@ def register_hiero_events(): # hiero.core.events.registerInterest("kShutdown", shutDown) # hiero.core.events.registerInterest("kStartup", startupCompleted) - # workfiles - hiero.core.events.registerEventType("kStartWorkfiles") - hiero.core.events.registerInterest("kStartWorkfiles", launch_workfiles_app) + hiero.core.events.registerInterest( + ("kSelectionChanged", "kTimeline"), selection_changed_timeline) + # workfiles + try: + hiero.core.events.registerEventType("kStartWorkfiles") + hiero.core.events.registerInterest( + "kStartWorkfiles", launch_workfiles_app) + except RuntimeError: + pass def register_events(): """ diff --git a/openpype/hosts/hiero/api/lib.py b/openpype/hosts/hiero/api/lib.py index b74e70cae3..a9982d96c4 100644 --- a/openpype/hosts/hiero/api/lib.py +++ b/openpype/hosts/hiero/api/lib.py @@ -9,7 +9,7 @@ import hiero import avalon.api as avalon import avalon.io from avalon.vendor.Qt import QtWidgets -from openpype.api import (Logger, Anatomy, config) +from openpype.api import (Logger, Anatomy, get_anatomy_settings) from . import tags import shutil from compiler.ast import flatten @@ -30,9 +30,9 @@ self = sys.modules[__name__] self._has_been_setup = False self._has_menu = False self._registered_gui = None -self.pype_tag_name = "Pype Data" -self.default_sequence_name = "PypeSequence" -self.default_bin_name = "PypeBin" +self.pype_tag_name = "openpypeData" +self.default_sequence_name = "openpypeSequence" +self.default_bin_name = "openpypeBin" AVALON_CONFIG = os.getenv("AVALON_CONFIG", "pype") @@ -150,15 +150,27 @@ def get_track_items( # get selected track items or all in active sequence if selected: - selected_items = list(hiero.selection) - for item in selected_items: - if track_name and track_name in item.parent().name(): - # filter only items fitting input track name - track_items.append(item) - elif not track_name: - # or add all if no track_name was defined - track_items.append(item) - else: + try: + selected_items = list(hiero.selection) + for item in selected_items: + if track_name and track_name in item.parent().name(): + # filter only items fitting input track name + track_items.append(item) + elif not track_name: + # or add all if no track_name was defined + track_items.append(item) + except AttributeError: + pass + + # check if any collected track items are + # `core.Hiero.Python.TrackItem` instance + if track_items: + any_track_item = track_items[0] + if not isinstance(any_track_item, hiero.core.TrackItem): + selected_items = [] + + # collect all available active sequence track items + if not track_items: sequence = get_current_sequence(name=sequence_name) # get all available tracks from sequence tracks = list(sequence.audioTracks()) + list(sequence.videoTracks()) @@ -240,7 +252,7 @@ def set_track_item_pype_tag(track_item, data=None): # basic Tag's attribute tag_data = { "editable": "0", - "note": "Pype data holder", + "note": "OpenPype data container", "icon": "openpype_icon.png", "metadata": {k: v for k, v in data.items()} } @@ -744,10 +756,13 @@ def _set_hrox_project_knobs(doc, **knobs): # set attributes to Project Tag proj_elem = doc.documentElement().firstChildElement("Project") for k, v in knobs.items(): - proj_elem.setAttribute(k, v) + if isinstance(v, dict): + continue + proj_elem.setAttribute(str(k), v) def apply_colorspace_project(): + project_name = os.getenv("AVALON_PROJECT") # get path the the active projects project = get_current_project(remove_untitled=True) current_file = project.path() @@ -756,9 +771,9 @@ def apply_colorspace_project(): project.close() # get presets for hiero - presets = config.get_init_presets() - colorspace = presets["colorspace"] - hiero_project_clrs = colorspace.get("hiero", {}).get("project", {}) + imageio = get_anatomy_settings( + project_name)["imageio"].get("hiero", None) + presets = imageio.get("workfile") # save the workfile as subversion "comment:_colorspaceChange" split_current_file = os.path.splitext(current_file) @@ -789,13 +804,13 @@ def apply_colorspace_project(): os.remove(copy_current_file_tmp) # use the code from bellow for changing xml hrox Attributes - hiero_project_clrs.update({"name": os.path.basename(copy_current_file)}) + presets.update({"name": os.path.basename(copy_current_file)}) # read HROX in as QDomSocument doc = _read_doc_from_path(copy_current_file) # apply project colorspace properties - _set_hrox_project_knobs(doc, **hiero_project_clrs) + _set_hrox_project_knobs(doc, **presets) # write QDomSocument back as HROX _write_doc_to_path(doc, copy_current_file) @@ -805,14 +820,17 @@ def apply_colorspace_project(): def apply_colorspace_clips(): + project_name = os.getenv("AVALON_PROJECT") project = get_current_project(remove_untitled=True) clips = project.clips() # get presets for hiero - presets = config.get_init_presets() - colorspace = presets["colorspace"] - hiero_clips_clrs = colorspace.get("hiero", {}).get("clips", {}) + imageio = get_anatomy_settings( + project_name)["imageio"].get("hiero", None) + from pprint import pprint + presets = imageio.get("regexInputs", {}).get("inputs", {}) + pprint(presets) for clip in clips: clip_media_source_path = clip.mediaSource().firstpath() clip_name = clip.name() @@ -822,10 +840,11 @@ def apply_colorspace_clips(): continue # check if any colorspace presets for read is mathing - preset_clrsp = next((hiero_clips_clrs[k] - for k in hiero_clips_clrs - if bool(re.search(k, clip_media_source_path))), - None) + preset_clrsp = None + for k in presets: + if not bool(re.search(k["regex"], clip_media_source_path)): + continue + preset_clrsp = k["colorspace"] if preset_clrsp: log.debug("Changing clip.path: {}".format(clip_media_source_path)) @@ -893,3 +912,61 @@ def get_sequence_pattern_and_padding(file): return found, padding else: return None, None + + +def sync_clip_name_to_data_asset(track_items_list): + # loop trough all selected clips + for track_item in track_items_list: + # ignore if parent track is locked or disabled + if track_item.parent().isLocked(): + continue + if not track_item.parent().isEnabled(): + continue + # ignore if the track item is disabled + if not track_item.isEnabled(): + continue + + # get name and data + ti_name = track_item.name() + data = get_track_item_pype_data(track_item) + + # ignore if no data on the clip or not publish instance + if not data: + continue + if data.get("id") != "pyblish.avalon.instance": + continue + + # fix data if wrong name + if data["asset"] != ti_name: + data["asset"] = ti_name + # remove the original tag + tag = get_track_item_pype_tag(track_item) + track_item.removeTag(tag) + # create new tag with updated data + set_track_item_pype_tag(track_item, data) + print("asset was changed in clip: {}".format(ti_name)) + + +def selection_changed_timeline(event): + """Callback on timeline to check if asset in data is the same as clip name. + + Args: + event (hiero.core.Event): timeline event + """ + timeline_editor = event.sender + selection = timeline_editor.selection() + + # run checking function + sync_clip_name_to_data_asset(selection) + + +def before_project_save(event): + track_items = get_track_items( + selected=False, + track_type="video", + check_enabled=True, + check_locked=True, + check_tagged=True) + + # run checking function + sync_clip_name_to_data_asset(track_items) diff --git a/openpype/hosts/hiero/api/menu.py b/openpype/hosts/hiero/api/menu.py index 9ccf5e39d1..ab49251093 100644 --- a/openpype/hosts/hiero/api/menu.py +++ b/openpype/hosts/hiero/api/menu.py @@ -68,50 +68,45 @@ def menu_install(): menu.addSeparator() - workfiles_action = menu.addAction("Work Files...") + workfiles_action = menu.addAction("Work Files ...") workfiles_action.setIcon(QtGui.QIcon("icons:Position.png")) workfiles_action.triggered.connect(launch_workfiles_app) - default_tags_action = menu.addAction("Create Default Tags...") + default_tags_action = menu.addAction("Create Default Tags") default_tags_action.setIcon(QtGui.QIcon("icons:Position.png")) default_tags_action.triggered.connect(tags.add_tags_to_workfile) menu.addSeparator() - publish_action = menu.addAction("Publish...") + publish_action = menu.addAction("Publish ...") publish_action.setIcon(QtGui.QIcon("icons:Output.png")) publish_action.triggered.connect( lambda *args: publish(hiero.ui.mainWindow()) ) - creator_action = menu.addAction("Create...") + creator_action = menu.addAction("Create ...") creator_action.setIcon(QtGui.QIcon("icons:CopyRectangle.png")) creator_action.triggered.connect(creator.show) - loader_action = menu.addAction("Load...") + loader_action = menu.addAction("Load ...") loader_action.setIcon(QtGui.QIcon("icons:CopyRectangle.png")) loader_action.triggered.connect(cbloader.show) - sceneinventory_action = menu.addAction("Manage...") + sceneinventory_action = menu.addAction("Manage ...") sceneinventory_action.setIcon(QtGui.QIcon("icons:CopyRectangle.png")) sceneinventory_action.triggered.connect(sceneinventory.show) menu.addSeparator() - reload_action = menu.addAction("Reload pipeline...") - reload_action.setIcon(QtGui.QIcon("icons:ColorAdd.png")) - reload_action.triggered.connect(reload_config) + if os.getenv("OPENPYPE_DEVELOP"): + reload_action = menu.addAction("Reload pipeline") + reload_action.setIcon(QtGui.QIcon("icons:ColorAdd.png")) + reload_action.triggered.connect(reload_config) menu.addSeparator() - apply_colorspace_p_action = menu.addAction("Apply Colorspace Project...") + apply_colorspace_p_action = menu.addAction("Apply Colorspace Project") apply_colorspace_p_action.setIcon(QtGui.QIcon("icons:ColorAdd.png")) apply_colorspace_p_action.triggered.connect(apply_colorspace_project) - apply_colorspace_c_action = menu.addAction("Apply Colorspace Clips...") + apply_colorspace_c_action = menu.addAction("Apply Colorspace Clips") apply_colorspace_c_action.setIcon(QtGui.QIcon("icons:ColorAdd.png")) apply_colorspace_c_action.triggered.connect(apply_colorspace_clips) - - self.context_label_action = context_label_action - self.workfile_actions = workfiles_action - self.default_tags_action = default_tags_action - self.publish_action = publish_action - self.reload_action = reload_action diff --git a/openpype/hosts/hiero/api/plugin.py b/openpype/hosts/hiero/api/plugin.py index 92e15cfae4..c46ef9abfa 100644 --- a/openpype/hosts/hiero/api/plugin.py +++ b/openpype/hosts/hiero/api/plugin.py @@ -4,10 +4,10 @@ import hiero from Qt import QtWidgets, QtCore from avalon.vendor import qargparse import avalon.api as avalon -import openpype.api as pype +import openpype.api as openpype from . import lib -log = pype.Logger().get_logger(__name__) +log = openpype.Logger().get_logger(__name__) def load_stylesheet(): @@ -266,7 +266,8 @@ class CreatorWidget(QtWidgets.QDialog): elif v["type"] == "QSpinBox": data[k]["value"] = self.create_row( content_layout, "QSpinBox", v["label"], - setValue=v["value"], setMaximum=10000, setToolTip=tool_tip) + setValue=v["value"], setMinimum=0, + setMaximum=100000, setToolTip=tool_tip) return data @@ -387,7 +388,8 @@ class ClipLoader: # try to get value from options or evaluate key value for `load_to` self.new_sequence = options.get("newSequence") or bool( "New timeline" in options.get("load_to", "")) - + self.clip_name_template = options.get( + "clipNameTemplate") or "{asset}_{subset}_{representation}" assert self._populate_data(), str( "Cannot Load selected data, look into database " "or call your supervisor") @@ -432,7 +434,7 @@ class ClipLoader: asset = str(repr_cntx["asset"]) subset = str(repr_cntx["subset"]) representation = str(repr_cntx["representation"]) - self.data["clip_name"] = "_".join([asset, subset, representation]) + self.data["clip_name"] = self.clip_name_template.format(**repr_cntx) self.data["track_name"] = "_".join([subset, representation]) self.data["versionData"] = self.context["version"]["data"] # gets file path @@ -476,7 +478,7 @@ class ClipLoader: """ asset_name = self.context["representation"]["context"]["asset"] - self.data["assetData"] = pype.get_asset(asset_name)["data"] + self.data["assetData"] = openpype.get_asset(asset_name)["data"] def _make_track_item(self, source_bin_item, audio=False): """ Create track item with """ @@ -543,15 +545,9 @@ class ClipLoader: if "slate" in f), # if nothing was found then use default None # so other bool could be used - None) or bool((( - # put together duration of clip attributes - self.timeline_out - self.timeline_in + 1) \ - + self.handle_start \ - + self.handle_end - # and compare it with meda duration - ) > self.media_duration) - - print("__ slate_on: `{}`".format(slate_on)) + None) or bool(int( + (self.timeline_out - self.timeline_in + 1) + + self.handle_start + self.handle_end) < self.media_duration) # if slate is on then remove the slate frame from begining if slate_on: @@ -592,7 +588,7 @@ class ClipLoader: return track_item -class Creator(pype.Creator): +class Creator(openpype.Creator): """Creator class wrapper """ clip_color = "Purple" @@ -601,7 +597,7 @@ class Creator(pype.Creator): def __init__(self, *args, **kwargs): import openpype.hosts.hiero.api as phiero super(Creator, self).__init__(*args, **kwargs) - self.presets = pype.get_current_project_settings()[ + self.presets = openpype.get_current_project_settings()[ "hiero"]["create"].get(self.__class__.__name__, {}) # adding basic current context resolve objects @@ -674,6 +670,9 @@ class PublishClip: if kwargs.get("avalon"): self.tag_data.update(kwargs["avalon"]) + # add publish attribute to tag data + self.tag_data.update({"publish": True}) + # adding ui inputs if any self.ui_inputs = kwargs.get("ui_inputs", {}) @@ -687,6 +686,7 @@ class PublishClip: self._create_parents() def convert(self): + # solve track item data and add them to tag data self._convert_to_tag_data() @@ -705,6 +705,12 @@ class PublishClip: self.tag_data["asset"] = new_name else: self.tag_data["asset"] = self.ti_name + self.tag_data["hierarchyData"]["shot"] = self.ti_name + + if self.tag_data["heroTrack"] and self.review_layer: + self.tag_data.update({"reviewTrack": self.review_layer}) + else: + self.tag_data.update({"reviewTrack": None}) # create pype tag on track_item and add data lib.imprint(self.track_item, self.tag_data) @@ -773,8 +779,8 @@ class PublishClip: _spl = text.split("#") _len = (len(_spl) - 1) _repl = "{{{0}:0>{1}}}".format(name, _len) - new_text = text.replace(("#" * _len), _repl) - return new_text + return text.replace(("#" * _len), _repl) + def _convert_to_tag_data(self): """ Convert internal data to tag data. @@ -782,13 +788,13 @@ class PublishClip: Populating the tag data into internal variable self.tag_data """ # define vertical sync attributes - master_layer = True + hero_track = True self.review_layer = "" if self.vertical_sync: # check if track name is not in driving layer if self.track_name not in self.driving_layer: # if it is not then define vertical sync as None - master_layer = False + hero_track = False # increasing steps by index of rename iteration self.count_steps *= self.rename_index @@ -802,7 +808,7 @@ class PublishClip: self.tag_data[_k] = _v["value"] # driving layer is set as positive match - if master_layer or self.vertical_sync: + if hero_track or self.vertical_sync: # mark review layer if self.review_track and ( self.review_track not in self.review_track_default): @@ -836,40 +842,40 @@ class PublishClip: hierarchy_formating_data ) - tag_hierarchy_data.update({"masterLayer": True}) - if master_layer and self.vertical_sync: + tag_hierarchy_data.update({"heroTrack": True}) + if hero_track and self.vertical_sync: self.vertical_clip_match.update({ (self.clip_in, self.clip_out): tag_hierarchy_data }) - if not master_layer and self.vertical_sync: + if not hero_track and self.vertical_sync: # driving layer is set as negative match - for (_in, _out), master_data in self.vertical_clip_match.items(): - master_data.update({"masterLayer": False}) + for (_in, _out), hero_data in self.vertical_clip_match.items(): + hero_data.update({"heroTrack": False}) if _in == self.clip_in and _out == self.clip_out: - data_subset = master_data["subset"] - # add track index in case duplicity of names in master data + data_subset = hero_data["subset"] + # add track index in case duplicity of names in hero data if self.subset in data_subset: - master_data["subset"] = self.subset + str( + hero_data["subset"] = self.subset + str( self.track_index) # in case track name and subset name is the same then add if self.subset_name == self.track_name: - master_data["subset"] = self.subset + hero_data["subset"] = self.subset # assing data to return hierarchy data to tag - tag_hierarchy_data = master_data + tag_hierarchy_data = hero_data # add data to return data dict self.tag_data.update(tag_hierarchy_data) - if master_layer and self.review_layer: - self.tag_data.update({"reviewTrack": self.review_layer}) - def _solve_tag_hierarchy_data(self, hierarchy_formating_data): """ Solve tag data from hierarchy data and templates. """ # fill up clip name and hierarchy keys hierarchy_filled = self.hierarchy.format(**hierarchy_formating_data) clip_name_filled = self.clip_name.format(**hierarchy_formating_data) + # remove shot from hierarchy data: is not needed anymore + hierarchy_formating_data.pop("shot") + return { "newClipName": clip_name_filled, "hierarchy": hierarchy_filled, diff --git a/openpype/hosts/hiero/api/tags.py b/openpype/hosts/hiero/api/tags.py index 06fa655a2e..d2502f3c71 100644 --- a/openpype/hosts/hiero/api/tags.py +++ b/openpype/hosts/hiero/api/tags.py @@ -84,6 +84,13 @@ def update_tag(tag, data): mtd = tag.metadata() # get metadata key from data data_mtd = data.get("metadata", {}) + + # due to hiero bug we have to make sure keys which are not existent in + # data are cleared of value by `None` + for _mk in mtd.keys(): + if _mk.replace("tag.", "") not in data_mtd.keys(): + mtd.setValue(_mk, str(None)) + # set all data metadata to tag metadata for k, v in data_mtd.items(): mtd.setValue( diff --git a/openpype/hosts/hiero/otio/__init__.py b/openpype/hosts/hiero/otio/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/openpype/hosts/hiero/otio/hiero_export.py b/openpype/hosts/hiero/otio/hiero_export.py new file mode 100644 index 0000000000..6e751d3aa4 --- /dev/null +++ b/openpype/hosts/hiero/otio/hiero_export.py @@ -0,0 +1,366 @@ +""" compatibility OpenTimelineIO 0.12.0 and newer +""" + +import os +import re +import sys +import ast +from compiler.ast import flatten +import opentimelineio as otio +from . import utils +import hiero.core +import hiero.ui + +self = sys.modules[__name__] +self.track_types = { + hiero.core.VideoTrack: otio.schema.TrackKind.Video, + hiero.core.AudioTrack: otio.schema.TrackKind.Audio +} +self.project_fps = None +self.marker_color_map = { + "magenta": otio.schema.MarkerColor.MAGENTA, + "red": otio.schema.MarkerColor.RED, + "yellow": otio.schema.MarkerColor.YELLOW, + "green": otio.schema.MarkerColor.GREEN, + "cyan": otio.schema.MarkerColor.CYAN, + "blue": otio.schema.MarkerColor.BLUE, +} +self.timeline = None +self.include_tags = True + + +def get_current_hiero_project(remove_untitled=False): + projects = flatten(hiero.core.projects()) + if not remove_untitled: + return next(iter(projects)) + + # if remove_untitled + for proj in projects: + if "Untitled" in proj.name(): + proj.close() + else: + return proj + + +def create_otio_rational_time(frame, fps): + return otio.opentime.RationalTime( + float(frame), + float(fps) + ) + + +def create_otio_time_range(start_frame, frame_duration, fps): + return otio.opentime.TimeRange( + start_time=create_otio_rational_time(start_frame, fps), + duration=create_otio_rational_time(frame_duration, fps) + ) + + +def _get_metadata(item): + if hasattr(item, 'metadata'): + return {key: value for key, value in dict(item.metadata()).items()} + return {} + + +def create_otio_reference(clip): + metadata = _get_metadata(clip) + media_source = clip.mediaSource() + + # get file info for path and start frame + file_info = media_source.fileinfos().pop() + frame_start = file_info.startFrame() + path = file_info.filename() + + # get padding and other file infos + padding = media_source.filenamePadding() + file_head = media_source.filenameHead() + is_sequence = not media_source.singleFile() + frame_duration = media_source.duration() + fps = utils.get_rate(clip) or self.project_fps + extension = os.path.splitext(path)[-1] + + if is_sequence: + metadata.update({ + "isSequence": True, + "padding": padding + }) + + # add resolution metadata + metadata.update({ + "openpype.source.colourtransform": clip.sourceMediaColourTransform(), + "openpype.source.width": int(media_source.width()), + "openpype.source.height": int(media_source.height()), + "openpype.source.pixelAspect": float(media_source.pixelAspect()) + }) + + otio_ex_ref_item = None + + if is_sequence: + # if it is file sequence try to create `ImageSequenceReference` + # the OTIO might not be compatible so return nothing and do it old way + try: + dirname = os.path.dirname(path) + otio_ex_ref_item = otio.schema.ImageSequenceReference( + target_url_base=dirname + os.sep, + name_prefix=file_head, + name_suffix=extension, + start_frame=frame_start, + frame_zero_padding=padding, + rate=fps, + available_range=create_otio_time_range( + frame_start, + frame_duration, + fps + ) + ) + except AttributeError: + pass + + if not otio_ex_ref_item: + reformat_path = utils.get_reformated_path(path, padded=False) + # in case old OTIO or video file create `ExternalReference` + otio_ex_ref_item = otio.schema.ExternalReference( + target_url=reformat_path, + available_range=create_otio_time_range( + frame_start, + frame_duration, + fps + ) + ) + + # add metadata to otio item + add_otio_metadata(otio_ex_ref_item, media_source, **metadata) + + return otio_ex_ref_item + + +def get_marker_color(tag): + icon = tag.icon() + pat = r'icons:Tag(?P\w+)\.\w+' + + res = re.search(pat, icon) + if res: + color = res.groupdict().get('color') + if color.lower() in self.marker_color_map: + return self.marker_color_map[color.lower()] + + return otio.schema.MarkerColor.RED + + +def create_otio_markers(otio_item, item): + for tag in item.tags(): + if not tag.visible(): + continue + + if tag.name() == 'Copy': + # Hiero adds this tag to a lot of clips + continue + + frame_rate = utils.get_rate(item) or self.project_fps + + marked_range = otio.opentime.TimeRange( + start_time=otio.opentime.RationalTime( + tag.inTime(), + frame_rate + ), + duration=otio.opentime.RationalTime( + int(tag.metadata().dict().get('tag.length', '0')), + frame_rate + ) + ) + # add tag metadata but remove "tag." string + metadata = {} + + for key, value in tag.metadata().dict().items(): + _key = key.replace("tag.", "") + + try: + # capture exceptions which are related to strings only + _value = ast.literal_eval(value) + except (ValueError, SyntaxError): + _value = value + + metadata.update({_key: _value}) + + # Store the source item for future import assignment + metadata['hiero_source_type'] = item.__class__.__name__ + + marker = otio.schema.Marker( + name=tag.name(), + color=get_marker_color(tag), + marked_range=marked_range, + metadata=metadata + ) + + otio_item.markers.append(marker) + + +def create_otio_clip(track_item): + clip = track_item.source() + source_in = track_item.sourceIn() + duration = track_item.sourceDuration() + fps = utils.get_rate(track_item) or self.project_fps + name = track_item.name() + + media_reference = create_otio_reference(clip) + source_range = create_otio_time_range( + int(source_in), + int(duration), + fps + ) + + otio_clip = otio.schema.Clip( + name=name, + source_range=source_range, + media_reference=media_reference + ) + + # Add tags as markers + if self.include_tags: + create_otio_markers(otio_clip, track_item) + create_otio_markers(otio_clip, track_item.source()) + + return otio_clip + + +def create_otio_gap(gap_start, clip_start, tl_start_frame, fps): + return otio.schema.Gap( + source_range=create_otio_time_range( + gap_start, + (clip_start - tl_start_frame) - gap_start, + fps + ) + ) + + +def _create_otio_timeline(): + project = get_current_hiero_project(remove_untitled=False) + metadata = _get_metadata(self.timeline) + + metadata.update({ + "openpype.timeline.width": int(self.timeline.format().width()), + "openpype.timeline.height": int(self.timeline.format().height()), + "openpype.timeline.pixelAspect": int(self.timeline.format().pixelAspect()), # noqa + "openpype.project.useOCIOEnvironmentOverride": project.useOCIOEnvironmentOverride(), # noqa + "openpype.project.lutSetting16Bit": project.lutSetting16Bit(), + "openpype.project.lutSetting8Bit": project.lutSetting8Bit(), + "openpype.project.lutSettingFloat": project.lutSettingFloat(), + "openpype.project.lutSettingLog": project.lutSettingLog(), + "openpype.project.lutSettingViewer": project.lutSettingViewer(), + "openpype.project.lutSettingWorkingSpace": project.lutSettingWorkingSpace(), # noqa + "openpype.project.lutUseOCIOForExport": project.lutUseOCIOForExport(), + "openpype.project.ocioConfigName": project.ocioConfigName(), + "openpype.project.ocioConfigPath": project.ocioConfigPath() + }) + + start_time = create_otio_rational_time( + self.timeline.timecodeStart(), self.project_fps) + + return otio.schema.Timeline( + name=self.timeline.name(), + global_start_time=start_time, + metadata=metadata + ) + + +def create_otio_track(track_type, track_name): + return otio.schema.Track( + name=track_name, + kind=self.track_types[track_type] + ) + + +def add_otio_gap(track_item, otio_track, prev_out): + gap_length = track_item.timelineIn() - prev_out + if prev_out != 0: + gap_length -= 1 + + gap = otio.opentime.TimeRange( + duration=otio.opentime.RationalTime( + gap_length, + self.project_fps + ) + ) + otio_gap = otio.schema.Gap(source_range=gap) + otio_track.append(otio_gap) + + +def add_otio_metadata(otio_item, media_source, **kwargs): + metadata = _get_metadata(media_source) + + # add additional metadata from kwargs + if kwargs: + metadata.update(kwargs) + + # add metadata to otio item metadata + for key, value in metadata.items(): + otio_item.metadata.update({key: value}) + + +def create_otio_timeline(): + + # get current timeline + self.timeline = hiero.ui.activeSequence() + self.project_fps = self.timeline.framerate().toFloat() + + # convert timeline to otio + otio_timeline = _create_otio_timeline() + + # loop all defined track types + for track in self.timeline.items(): + # skip if track is disabled + if not track.isEnabled(): + continue + + # convert track to otio + otio_track = create_otio_track( + type(track), track.name()) + + for itemindex, track_item in enumerate(track): + # skip offline track items + if not track_item.isMediaPresent(): + continue + + # skip if track item is disabled + if not track_item.isEnabled(): + continue + + # Add Gap if needed + if itemindex == 0: + # if it is first track item at track then add + # it to previouse item + prev_item = track_item + + else: + # get previouse item + prev_item = track_item.parent().items()[itemindex - 1] + + # calculate clip frame range difference from each other + clip_diff = track_item.timelineIn() - prev_item.timelineOut() + + # add gap if first track item is not starting + # at first timeline frame + if itemindex == 0 and track_item.timelineIn() > 0: + add_otio_gap(track_item, otio_track, 0) + + # or add gap if following track items are having + # frame range differences from each other + elif itemindex and clip_diff != 1: + add_otio_gap(track_item, otio_track, prev_item.timelineOut()) + + # create otio clip and add it to track + otio_clip = create_otio_clip(track_item) + otio_track.append(otio_clip) + + # Add tags as markers + if self.include_tags: + create_otio_markers(otio_track, track) + + # add track to otio timeline + otio_timeline.tracks.append(otio_track) + + return otio_timeline + + +def write_to_file(otio_timeline, path): + otio.adapters.write_to_file(otio_timeline, path) diff --git a/openpype/hosts/hiero/otio/hiero_import.py b/openpype/hosts/hiero/otio/hiero_import.py new file mode 100644 index 0000000000..257c434011 --- /dev/null +++ b/openpype/hosts/hiero/otio/hiero_import.py @@ -0,0 +1,545 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +__author__ = "Daniel Flehner Heen" +__credits__ = ["Jakub Jezek", "Daniel Flehner Heen"] + + +import os +import hiero.core +import hiero.ui + +import PySide2.QtWidgets as qw + +try: + from urllib import unquote + +except ImportError: + from urllib.parse import unquote # lint:ok + +import opentimelineio as otio + +_otio_old = False + + +def inform(messages): + if isinstance(messages, type('')): + messages = [messages] + + qw.QMessageBox.information( + hiero.ui.mainWindow(), + 'OTIO Import', + '\n'.join(messages), + qw.QMessageBox.StandardButton.Ok + ) + + +def get_transition_type(otio_item, otio_track): + _in, _out = otio_track.neighbors_of(otio_item) + + if isinstance(_in, otio.schema.Gap): + _in = None + + if isinstance(_out, otio.schema.Gap): + _out = None + + if _in and _out: + return 'dissolve' + + elif _in and not _out: + return 'fade_out' + + elif not _in and _out: + return 'fade_in' + + else: + return 'unknown' + + +def find_trackitem(otio_clip, hiero_track): + for item in hiero_track.items(): + if item.timelineIn() == otio_clip.range_in_parent().start_time.value: + if item.name() == otio_clip.name: + return item + + return None + + +def get_neighboring_trackitems(otio_item, otio_track, hiero_track): + _in, _out = otio_track.neighbors_of(otio_item) + trackitem_in = None + trackitem_out = None + + if _in: + trackitem_in = find_trackitem(_in, hiero_track) + + if _out: + trackitem_out = find_trackitem(_out, hiero_track) + + return trackitem_in, trackitem_out + + +def apply_transition(otio_track, otio_item, track): + warning = None + + # Figure out type of transition + transition_type = get_transition_type(otio_item, otio_track) + + # Figure out track kind for getattr below + kind = '' + if isinstance(track, hiero.core.AudioTrack): + kind = 'Audio' + + # Gather TrackItems involved in trasition + item_in, item_out = get_neighboring_trackitems( + otio_item, + otio_track, + track + ) + + # Create transition object + if transition_type == 'dissolve': + transition_func = getattr( + hiero.core.Transition, + 'create{kind}DissolveTransition'.format(kind=kind) + ) + + try: + transition = transition_func( + item_in, + item_out, + otio_item.in_offset.value, + otio_item.out_offset.value + ) + + # Catch error raised if transition is bigger than TrackItem source + except RuntimeError as e: + transition = None + warning = ( + "Unable to apply transition \"{t.name}\": {e} " + "Ignoring the transition.").format(t=otio_item, e=str(e)) + + elif transition_type == 'fade_in': + transition_func = getattr( + hiero.core.Transition, + 'create{kind}FadeInTransition'.format(kind=kind) + ) + + # Warn user if part of fade is outside of clip + if otio_item.in_offset.value: + warning = \ + 'Fist half of transition "{t.name}" is outside of clip and ' \ + 'not valid in Hiero. Only applied second half.' \ + .format(t=otio_item) + + transition = transition_func( + item_out, + otio_item.out_offset.value + ) + + elif transition_type == 'fade_out': + transition_func = getattr( + hiero.core.Transition, + 'create{kind}FadeOutTransition'.format(kind=kind) + ) + transition = transition_func( + item_in, + otio_item.in_offset.value + ) + + # Warn user if part of fade is outside of clip + if otio_item.out_offset.value: + warning = \ + 'Second half of transition "{t.name}" is outside of clip ' \ + 'and not valid in Hiero. Only applied first half.' \ + .format(t=otio_item) + + else: + # Unknown transition + return + + # Apply transition to track + if transition: + track.addTransition(transition) + + # Inform user about missing or adjusted transitions + return warning + + +def prep_url(url_in): + url = unquote(url_in) + + if url.startswith('file://localhost/'): + return url + + url = 'file://localhost{sep}{url}'.format( + sep=url.startswith(os.sep) and '' or os.sep, + url=url.startswith(os.sep) and url[1:] or url + ) + + return url + + +def create_offline_mediasource(otio_clip, path=None): + global _otio_old + + hiero_rate = hiero.core.TimeBase( + otio_clip.source_range.start_time.rate + ) + + try: + legal_media_refs = ( + otio.schema.ExternalReference, + otio.schema.ImageSequenceReference + ) + except AttributeError: + _otio_old = True + legal_media_refs = ( + otio.schema.ExternalReference + ) + + if isinstance(otio_clip.media_reference, legal_media_refs): + source_range = otio_clip.available_range() + + else: + source_range = otio_clip.source_range + + if path is None: + path = otio_clip.name + + media = hiero.core.MediaSource.createOfflineVideoMediaSource( + prep_url(path), + source_range.start_time.value, + source_range.duration.value, + hiero_rate, + source_range.start_time.value + ) + + return media + + +def load_otio(otio_file, project=None, sequence=None): + otio_timeline = otio.adapters.read_from_file(otio_file) + build_sequence(otio_timeline, project=project, sequence=sequence) + + +marker_color_map = { + "PINK": "Magenta", + "RED": "Red", + "ORANGE": "Yellow", + "YELLOW": "Yellow", + "GREEN": "Green", + "CYAN": "Cyan", + "BLUE": "Blue", + "PURPLE": "Magenta", + "MAGENTA": "Magenta", + "BLACK": "Blue", + "WHITE": "Green" +} + + +def get_tag(tagname, tagsbin): + for tag in tagsbin.items(): + if tag.name() == tagname: + return tag + + if isinstance(tag, hiero.core.Bin): + tag = get_tag(tagname, tag) + + if tag is not None: + return tag + + return None + + +def add_metadata(metadata, hiero_item): + for key, value in metadata.get('Hiero', dict()).items(): + if key == 'source_type': + # Only used internally to reassign tag to correct Hiero item + continue + + if isinstance(value, dict): + add_metadata(value, hiero_item) + continue + + if value is not None: + if not key.startswith('tag.'): + key = 'tag.' + key + + hiero_item.metadata().setValue(key, str(value)) + + +def add_markers(otio_item, hiero_item, tagsbin): + if isinstance(otio_item, (otio.schema.Stack, otio.schema.Clip)): + markers = otio_item.markers + + elif isinstance(otio_item, otio.schema.Timeline): + markers = otio_item.tracks.markers + + else: + markers = [] + + for marker in markers: + meta = marker.metadata.get('Hiero', dict()) + if 'source_type' in meta: + if hiero_item.__class__.__name__ != meta.get('source_type'): + continue + + marker_color = marker.color + + _tag = get_tag(marker.name, tagsbin) + if _tag is None: + _tag = get_tag(marker_color_map[marker_color], tagsbin) + + if _tag is None: + _tag = hiero.core.Tag(marker_color_map[marker.color]) + + start = marker.marked_range.start_time.value + end = ( + marker.marked_range.start_time.value + + marker.marked_range.duration.value + ) + + if hasattr(hiero_item, 'addTagToRange'): + tag = hiero_item.addTagToRange(_tag, start, end) + + else: + tag = hiero_item.addTag(_tag) + + tag.setName(marker.name or marker_color_map[marker_color]) + # tag.setNote(meta.get('tag.note', '')) + + # Add metadata + add_metadata(marker.metadata, tag) + + +def create_track(otio_track, tracknum, track_kind): + if track_kind is None and hasattr(otio_track, 'kind'): + track_kind = otio_track.kind + + # Create a Track + if track_kind == otio.schema.TrackKind.Video: + track = hiero.core.VideoTrack( + otio_track.name or 'Video{n}'.format(n=tracknum) + ) + + else: + track = hiero.core.AudioTrack( + otio_track.name or 'Audio{n}'.format(n=tracknum) + ) + + return track + + +def create_clip(otio_clip, tagsbin, sequencebin): + # Create MediaSource + url = None + media = None + otio_media = otio_clip.media_reference + + if isinstance(otio_media, otio.schema.ExternalReference): + url = prep_url(otio_media.target_url) + media = hiero.core.MediaSource(url) + + elif not _otio_old: + if isinstance(otio_media, otio.schema.ImageSequenceReference): + url = prep_url(otio_media.abstract_target_url('#')) + media = hiero.core.MediaSource(url) + + if media is None or media.isOffline(): + media = create_offline_mediasource(otio_clip, url) + + # Reuse previous clip if possible + clip = None + for item in sequencebin.clips(): + if item.activeItem().mediaSource() == media: + clip = item.activeItem() + break + + if not clip: + # Create new Clip + clip = hiero.core.Clip(media) + + # Add Clip to a Bin + sequencebin.addItem(hiero.core.BinItem(clip)) + + # Add markers + add_markers(otio_clip, clip, tagsbin) + + return clip + + +def create_trackitem(playhead, track, otio_clip, clip): + source_range = otio_clip.source_range + + trackitem = track.createTrackItem(otio_clip.name) + trackitem.setPlaybackSpeed(source_range.start_time.rate) + trackitem.setSource(clip) + + time_scalar = 1. + + # Check for speed effects and adjust playback speed accordingly + for effect in otio_clip.effects: + if isinstance(effect, otio.schema.LinearTimeWarp): + time_scalar = effect.time_scalar + # Only reverse effect can be applied here + if abs(time_scalar) == 1.: + trackitem.setPlaybackSpeed( + trackitem.playbackSpeed() * time_scalar) + + elif isinstance(effect, otio.schema.FreezeFrame): + # For freeze frame, playback speed must be set after range + time_scalar = 0. + + # If reverse playback speed swap source in and out + if trackitem.playbackSpeed() < 0: + source_out = source_range.start_time.value + source_in = source_range.end_time_inclusive().value + + timeline_in = playhead + source_out + timeline_out = ( + timeline_in + + source_range.duration.value + ) - 1 + else: + # Normal playback speed + source_in = source_range.start_time.value + source_out = source_range.end_time_inclusive().value + + timeline_in = playhead + timeline_out = ( + timeline_in + + source_range.duration.value + ) - 1 + + # Set source and timeline in/out points + trackitem.setTimes( + timeline_in, + timeline_out, + source_in, + source_out + + ) + + # Apply playback speed for freeze frames + if abs(time_scalar) != 1.: + trackitem.setPlaybackSpeed(trackitem.playbackSpeed() * time_scalar) + + # Link audio to video when possible + if isinstance(track, hiero.core.AudioTrack): + for other in track.parent().trackItemsAt(playhead): + if other.source() == clip: + trackitem.link(other) + + return trackitem + + +def build_sequence( + otio_timeline, project=None, sequence=None, track_kind=None): + if project is None: + if sequence: + project = sequence.project() + + else: + # Per version 12.1v2 there is no way of getting active project + project = hiero.core.projects(hiero.core.Project.kUserProjects)[-1] + + projectbin = project.clipsBin() + + if not sequence: + # Create a Sequence + sequence = hiero.core.Sequence(otio_timeline.name or 'OTIOSequence') + + # Set sequence settings from otio timeline if available + if ( + hasattr(otio_timeline, 'global_start_time') + and otio_timeline.global_start_time + ): + start_time = otio_timeline.global_start_time + sequence.setFramerate(start_time.rate) + sequence.setTimecodeStart(start_time.value) + + # Create a Bin to hold clips + projectbin.addItem(hiero.core.BinItem(sequence)) + + sequencebin = hiero.core.Bin(sequence.name()) + projectbin.addItem(sequencebin) + + else: + sequencebin = projectbin + + # Get tagsBin + tagsbin = hiero.core.project("Tag Presets").tagsBin() + + # Add timeline markers + add_markers(otio_timeline, sequence, tagsbin) + + if isinstance(otio_timeline, otio.schema.Timeline): + tracks = otio_timeline.tracks + + else: + tracks = [otio_timeline] + + for tracknum, otio_track in enumerate(tracks): + playhead = 0 + _transitions = [] + + # Add track to sequence + track = create_track(otio_track, tracknum, track_kind) + sequence.addTrack(track) + + # iterate over items in track + for _itemnum, otio_clip in enumerate(otio_track): + if isinstance(otio_clip, (otio.schema.Track, otio.schema.Stack)): + inform('Nested sequences/tracks are created separately.') + + # Add gap where the nested sequence would have been + playhead += otio_clip.source_range.duration.value + + # Process nested sequence + build_sequence( + otio_clip, + project=project, + track_kind=otio_track.kind + ) + + elif isinstance(otio_clip, otio.schema.Clip): + # Create a Clip + clip = create_clip(otio_clip, tagsbin, sequencebin) + + # Create TrackItem + trackitem = create_trackitem( + playhead, + track, + otio_clip, + clip + ) + + # Add markers + add_markers(otio_clip, trackitem, tagsbin) + + # Add trackitem to track + track.addTrackItem(trackitem) + + # Update playhead + playhead = trackitem.timelineOut() + 1 + + elif isinstance(otio_clip, otio.schema.Transition): + # Store transitions for when all clips in the track are created + _transitions.append((otio_track, otio_clip)) + + elif isinstance(otio_clip, otio.schema.Gap): + # Hiero has no fillers, slugs or blanks at the moment + playhead += otio_clip.source_range.duration.value + + # Apply transitions we stored earlier now that all clips are present + warnings = [] + for otio_track, otio_item in _transitions: + # Catch warnings form transitions in case + # of unsupported transitions + warning = apply_transition(otio_track, otio_item, track) + if warning: + warnings.append(warning) + + if warnings: + inform(warnings) diff --git a/openpype/hosts/hiero/otio/utils.py b/openpype/hosts/hiero/otio/utils.py new file mode 100644 index 0000000000..f882a5d1f2 --- /dev/null +++ b/openpype/hosts/hiero/otio/utils.py @@ -0,0 +1,76 @@ +import re +import opentimelineio as otio + + +def timecode_to_frames(timecode, framerate): + rt = otio.opentime.from_timecode(timecode, 24) + return int(otio.opentime.to_frames(rt)) + + +def frames_to_timecode(frames, framerate): + rt = otio.opentime.from_frames(frames, framerate) + return otio.opentime.to_timecode(rt) + + +def frames_to_secons(frames, framerate): + rt = otio.opentime.from_frames(frames, framerate) + return otio.opentime.to_seconds(rt) + + +def get_reformated_path(path, padded=True): + """ + Return fixed python expression path + + Args: + path (str): path url or simple file name + + Returns: + type: string with reformated path + + Example: + get_reformated_path("plate.[0001-1008].exr") > plate.%04d.exr + + """ + if "%" in path: + padding_pattern = r"(\d+)" + padding = int(re.findall(padding_pattern, path).pop()) + num_pattern = r"(%\d+d)" + if padded: + path = re.sub(num_pattern, "%0{}d".format(padding), path) + else: + path = re.sub(num_pattern, "%d", path) + return path + + +def get_padding_from_path(path): + """ + Return padding number from DaVinci Resolve sequence path style + + Args: + path (str): path url or simple file name + + Returns: + int: padding number + + Example: + get_padding_from_path("plate.[0001-1008].exr") > 4 + + """ + padding_pattern = "(\\d+)(?=-)" + if "[" in path: + return len(re.findall(padding_pattern, path).pop()) + + return None + + +def get_rate(item): + if not hasattr(item, 'framerate'): + return None + + num, den = item.framerate().toRational() + rate = float(num) / float(den) + + if rate.is_integer(): + return rate + + return round(rate, 4) diff --git a/openpype/hosts/hiero/plugins/create/create_shot_clip.py b/openpype/hosts/hiero/plugins/create/create_shot_clip.py index 07b7a62b2a..25be9f090b 100644 --- a/openpype/hosts/hiero/plugins/create/create_shot_clip.py +++ b/openpype/hosts/hiero/plugins/create/create_shot_clip.py @@ -120,9 +120,9 @@ class CreateShotClip(phiero.Creator): "vSyncTrack": { "value": gui_tracks, # noqa "type": "QComboBox", - "label": "Master track", + "label": "Hero track", "target": "ui", - "toolTip": "Select driving track name which should be mastering all others", # noqa + "toolTip": "Select driving track name which should be hero for all others", # noqa "order": 1} } }, diff --git a/openpype/hosts/hiero/plugins/load/load_clip.py b/openpype/hosts/hiero/plugins/load/load_clip.py index 4eadf28956..9e12fa360e 100644 --- a/openpype/hosts/hiero/plugins/load/load_clip.py +++ b/openpype/hosts/hiero/plugins/load/load_clip.py @@ -29,13 +29,19 @@ class LoadClip(phiero.SequenceLoader): clip_color_last = "green" clip_color = "red" - def load(self, context, name, namespace, options): + clip_name_template = "{asset}_{subset}_{representation}" + def load(self, context, name, namespace, options): + # add clip name template to options + options.update({ + "clipNameTemplate": self.clip_name_template + }) # in case loader uses multiselection if self.track and self.sequence: options.update({ "sequence": self.sequence, - "track": self.track + "track": self.track, + "clipNameTemplate": self.clip_name_template }) # load clip to timeline and get main variables @@ -45,7 +51,8 @@ class LoadClip(phiero.SequenceLoader): version_data = version.get("data", {}) version_name = version.get("name", None) colorspace = version_data.get("colorspace", None) - object_name = "{}_{}".format(name, namespace) + object_name = self.clip_name_template.format( + **context["representation"]["context"]) # add additional metadata from the version to imprint Avalon knob add_keys = [ diff --git a/openpype/hosts/hiero/plugins/publish/extract_thumbnail.py b/openpype/hosts/hiero/plugins/publish/extract_thumbnail.py new file mode 100644 index 0000000000..d12e7665bf --- /dev/null +++ b/openpype/hosts/hiero/plugins/publish/extract_thumbnail.py @@ -0,0 +1,59 @@ +import os +import pyblish.api +import openpype.api + + +class ExtractThumnail(openpype.api.Extractor): + """ + Extractor for track item's tumnails + """ + + label = "Extract Thumnail" + order = pyblish.api.ExtractorOrder + families = ["plate", "take"] + hosts = ["hiero"] + + def process(self, instance): + # create representation data + if "representations" not in instance.data: + instance.data["representations"] = [] + + staging_dir = self.staging_dir(instance) + + self.create_thumbnail(staging_dir, instance) + + def create_thumbnail(self, staging_dir, instance): + track_item = instance.data["item"] + track_item_name = track_item.name() + + # frames + duration = track_item.sourceDuration() + frame_start = track_item.sourceIn() + self.log.debug( + "__ frame_start: `{}`, duration: `{}`".format( + frame_start, duration)) + + # get thumbnail frame from the middle + thumb_frame = int(frame_start + (duration / 2)) + + thumb_file = "{}thumbnail{}{}".format( + track_item_name, thumb_frame, ".png") + thumb_path = os.path.join(staging_dir, thumb_file) + + thumbnail = track_item.thumbnail(thumb_frame).save( + thumb_path, + format='png' + ) + self.log.debug( + "__ thumb_path: `{}`, frame: `{}`".format(thumbnail, thumb_frame)) + + self.log.info("Thumnail was generated to: {}".format(thumb_path)) + thumb_representation = { + 'files': thumb_file, + 'stagingDir': staging_dir, + 'name': "thumbnail", + 'thumbnail': True, + 'ext': "png" + } + instance.data["representations"].append( + thumb_representation) diff --git a/openpype/hosts/hiero/plugins/publish/version_up_workfile.py b/openpype/hosts/hiero/plugins/publish/integrate_version_up_workfile.py similarity index 90% rename from openpype/hosts/hiero/plugins/publish/version_up_workfile.py rename to openpype/hosts/hiero/plugins/publish/integrate_version_up_workfile.py index ae03513d78..934e7112fa 100644 --- a/openpype/hosts/hiero/plugins/publish/version_up_workfile.py +++ b/openpype/hosts/hiero/plugins/publish/integrate_version_up_workfile.py @@ -2,7 +2,7 @@ from pyblish import api import openpype.api as pype -class VersionUpWorkfile(api.ContextPlugin): +class IntegrateVersionUpWorkfile(api.ContextPlugin): """Save as new workfile version""" order = api.IntegratorOrder + 10.1 diff --git a/openpype/hosts/hiero/plugins/publish/precollect_instances.py b/openpype/hosts/hiero/plugins/publish/precollect_instances.py index bdf007de06..a1dee711b7 100644 --- a/openpype/hosts/hiero/plugins/publish/precollect_instances.py +++ b/openpype/hosts/hiero/plugins/publish/precollect_instances.py @@ -1,221 +1,204 @@ -from compiler.ast import flatten -from pyblish import api +import pyblish +import openpype from openpype.hosts.hiero import api as phiero -import hiero -# from openpype.hosts.hiero.api import lib -# reload(lib) -# reload(phiero) +from openpype.hosts.hiero.otio import hiero_export + +# # developer reload modules +from pprint import pformat -class PreCollectInstances(api.ContextPlugin): +class PrecollectInstances(pyblish.api.ContextPlugin): """Collect all Track items selection.""" - order = api.CollectorOrder - 0.509 - label = "Pre-collect Instances" + order = pyblish.api.CollectorOrder - 0.59 + label = "Precollect Instances" hosts = ["hiero"] def process(self, context): - track_items = phiero.get_track_items( - selected=True, check_tagged=True, check_enabled=True) - # only return enabled track items - if not track_items: - track_items = phiero.get_track_items( - check_enabled=True, check_tagged=True) - # get sequence and video tracks - sequence = context.data["activeSequence"] - tracks = sequence.videoTracks() - - # add collection to context - tracks_effect_items = self.collect_sub_track_items(tracks) - - context.data["tracksEffectItems"] = tracks_effect_items - + otio_timeline = context.data["otioTimeline"] + selected_timeline_items = phiero.get_track_items( + selected=True, check_enabled=True, check_tagged=True) self.log.info( - "Processing enabled track items: {}".format(len(track_items))) + "Processing enabled track items: {}".format( + selected_timeline_items)) + + for track_item in selected_timeline_items: - for _ti in track_items: data = dict() - clip = _ti.source() + clip_name = track_item.name() - # get clips subtracks and anotations - annotations = self.clip_annotations(clip) - subtracks = self.clip_subtrack(_ti) - self.log.debug("Annotations: {}".format(annotations)) - self.log.debug(">> Subtracks: {}".format(subtracks)) + # get openpype tag data + tag_data = phiero.get_track_item_pype_data(track_item) + self.log.debug("__ tag_data: {}".format(pformat(tag_data))) - # get pype tag data - tag_parsed_data = phiero.get_track_item_pype_data(_ti) - # self.log.debug(pformat(tag_parsed_data)) - - if not tag_parsed_data: + if not tag_data: continue - if tag_parsed_data.get("id") != "pyblish.avalon.instance": + if tag_data.get("id") != "pyblish.avalon.instance": continue + + # solve handles length + tag_data["handleStart"] = min( + tag_data["handleStart"], int(track_item.handleInLength())) + tag_data["handleEnd"] = min( + tag_data["handleEnd"], int(track_item.handleOutLength())) + # add tag data to instance data data.update({ - k: v for k, v in tag_parsed_data.items() + k: v for k, v in tag_data.items() if k not in ("id", "applieswhole", "label") }) - asset = tag_parsed_data["asset"] - subset = tag_parsed_data["subset"] - review = tag_parsed_data.get("review") - audio = tag_parsed_data.get("audio") - - # remove audio attribute from data - data.pop("audio") + asset = tag_data["asset"] + subset = tag_data["subset"] # insert family into families - family = tag_parsed_data["family"] - families = [str(f) for f in tag_parsed_data["families"]] + family = tag_data["family"] + families = [str(f) for f in tag_data["families"]] families.insert(0, str(family)) - track = _ti.parent() - media_source = _ti.source().mediaSource() - source_path = media_source.firstpath() - file_head = media_source.filenameHead() - file_info = media_source.fileinfos().pop() - source_first_frame = int(file_info.startFrame()) - - # apply only for feview and master track instance - if review: - families += ["review", "ftrack"] + # form label + label = asset + if asset != clip_name: + label += " ({})".format(clip_name) + label += " {}".format(subset) + label += " {}".format("[" + ", ".join(families) + "]") data.update({ - "name": "{} {} {}".format(asset, subset, families), + "name": "{}_{}".format(asset, subset), + "label": label, "asset": asset, - "item": _ti, + "item": track_item, "families": families, - - # tags - "tags": _ti.tags(), - - # track item attributes - "track": track.name(), - "trackItem": track, - - # version data - "versionData": { - "colorspace": _ti.sourceMediaColourTransform() - }, - - # source attribute - "source": source_path, - "sourceMedia": media_source, - "sourcePath": source_path, - "sourceFileHead": file_head, - "sourceFirst": source_first_frame, - - # clip's effect - "clipEffectItems": subtracks + "publish": tag_data["publish"], + "fps": context.data["fps"] }) + # otio clip data + otio_data = self.get_otio_clip_instance_data( + otio_timeline, track_item) or {} + self.log.debug("__ otio_data: {}".format(pformat(otio_data))) + data.update(otio_data) + self.log.debug("__ data: {}".format(pformat(data))) + + # add resolution + self.get_resolution_to_data(data, context) + + # create instance instance = context.create_instance(**data) + # create shot instance for shot attributes create/update + self.create_shot_instance(context, **data) + self.log.info("Creating instance: {}".format(instance)) + self.log.debug( + "_ instance.data: {}".format(pformat(instance.data))) - if audio: - a_data = dict() + def get_resolution_to_data(self, data, context): + assert data.get("otioClip"), "Missing `otioClip` data" - # add tag data to instance data - a_data.update({ - k: v for k, v in tag_parsed_data.items() - if k not in ("id", "applieswhole", "label") - }) + # solve source resolution option + if data.get("sourceResolution", None): + otio_clip_metadata = data[ + "otioClip"].media_reference.metadata + data.update({ + "resolutionWidth": otio_clip_metadata[ + "openpype.source.width"], + "resolutionHeight": otio_clip_metadata[ + "openpype.source.height"], + "pixelAspect": otio_clip_metadata[ + "openpype.source.pixelAspect"] + }) + else: + otio_tl_metadata = context.data["otioTimeline"].metadata + data.update({ + "resolutionWidth": otio_tl_metadata["openpype.timeline.width"], + "resolutionHeight": otio_tl_metadata[ + "openpype.timeline.height"], + "pixelAspect": otio_tl_metadata[ + "openpype.timeline.pixelAspect"] + }) - # create main attributes - subset = "audioMain" - family = "audio" - families = ["clip", "ftrack"] - families.insert(0, str(family)) + def create_shot_instance(self, context, **data): + master_layer = data.get("heroTrack") + hierarchy_data = data.get("hierarchyData") + asset = data.get("asset") + item = data.get("item") + clip_name = item.name() - name = "{} {} {}".format(asset, subset, families) + if not master_layer: + return - a_data.update({ - "name": name, - "subset": subset, - "asset": asset, - "family": family, - "families": families, - "item": _ti, + if not hierarchy_data: + return - # tags - "tags": _ti.tags(), - }) + asset = data["asset"] + subset = "shotMain" - a_instance = context.create_instance(**a_data) - self.log.info("Creating audio instance: {}".format(a_instance)) + # insert family into families + family = "shot" + + # form label + label = asset + if asset != clip_name: + label += " ({}) ".format(clip_name) + label += " {}".format(subset) + label += " [{}]".format(family) + + data.update({ + "name": "{}_{}".format(asset, subset), + "label": label, + "subset": subset, + "asset": asset, + "family": family, + "families": [] + }) + + instance = context.create_instance(**data) + self.log.info("Creating instance: {}".format(instance)) + self.log.debug( + "_ instance.data: {}".format(pformat(instance.data))) + + def get_otio_clip_instance_data(self, otio_timeline, track_item): + """ + Return otio objects for timeline, track and clip + + Args: + timeline_item_data (dict): timeline_item_data from list returned by + resolve.get_current_timeline_items() + otio_timeline (otio.schema.Timeline): otio object + + Returns: + dict: otio clip object + + """ + ti_track_name = track_item.parent().name() + timeline_range = self.create_otio_time_range_from_timeline_item_data( + track_item) + for otio_clip in otio_timeline.each_clip(): + track_name = otio_clip.parent().name + parent_range = otio_clip.range_in_parent() + if ti_track_name not in track_name: + continue + if otio_clip.name not in track_item.name(): + continue + if openpype.lib.is_overlapping_otio_ranges( + parent_range, timeline_range, strict=True): + + # add pypedata marker to otio_clip metadata + for marker in otio_clip.markers: + if phiero.pype_tag_name in marker.name: + otio_clip.metadata.update(marker.metadata) + return {"otioClip": otio_clip} + + return None @staticmethod - def clip_annotations(clip): - """ - Returns list of Clip's hiero.core.Annotation - """ - annotations = [] - subTrackItems = flatten(clip.subTrackItems()) - annotations += [item for item in subTrackItems if isinstance( - item, hiero.core.Annotation)] - return annotations + def create_otio_time_range_from_timeline_item_data(track_item): + timeline = phiero.get_current_sequence() + frame_start = int(track_item.timelineIn()) + frame_duration = int(track_item.sourceDuration()) + fps = timeline.framerate().toFloat() - @staticmethod - def clip_subtrack(clip): - """ - Returns list of Clip's hiero.core.SubTrackItem - """ - subtracks = [] - subTrackItems = flatten(clip.parent().subTrackItems()) - for item in subTrackItems: - # avoid all anotation - if isinstance(item, hiero.core.Annotation): - continue - # # avoid all not anaibled - if not item.isEnabled(): - continue - subtracks.append(item) - return subtracks - - @staticmethod - def collect_sub_track_items(tracks): - """ - Returns dictionary with track index as key and list of subtracks - """ - # collect all subtrack items - sub_track_items = dict() - for track in tracks: - items = track.items() - - # skip if no clips on track > need track with effect only - if items: - continue - - # skip all disabled tracks - if not track.isEnabled(): - continue - - track_index = track.trackIndex() - _sub_track_items = flatten(track.subTrackItems()) - - # continue only if any subtrack items are collected - if len(_sub_track_items) < 1: - continue - - enabled_sti = list() - # loop all found subtrack items and check if they are enabled - for _sti in _sub_track_items: - # checking if not enabled - if not _sti.isEnabled(): - continue - if isinstance(_sti, hiero.core.Annotation): - continue - # collect the subtrack item - enabled_sti.append(_sti) - - # continue only if any subtrack items are collected - if len(enabled_sti) < 1: - continue - - # add collection of subtrackitems to dict - sub_track_items[track_index] = enabled_sti - - return sub_track_items + return hiero_export.create_otio_time_range( + frame_start, frame_duration, fps) diff --git a/openpype/hosts/hiero/plugins/publish/precollect_workfile.py b/openpype/hosts/hiero/plugins/publish/precollect_workfile.py index ef7d07421b..bc4ef7e150 100644 --- a/openpype/hosts/hiero/plugins/publish/precollect_workfile.py +++ b/openpype/hosts/hiero/plugins/publish/precollect_workfile.py @@ -1,52 +1,57 @@ import os import pyblish.api +import hiero.ui from openpype.hosts.hiero import api as phiero from avalon import api as avalon +from pprint import pformat +from openpype.hosts.hiero.otio import hiero_export +from Qt.QtGui import QPixmap +import tempfile - -class PreCollectWorkfile(pyblish.api.ContextPlugin): +class PrecollectWorkfile(pyblish.api.ContextPlugin): """Inject the current working file into context""" - label = "Pre-collect Workfile" - order = pyblish.api.CollectorOrder - 0.51 + label = "Precollect Workfile" + order = pyblish.api.CollectorOrder - 0.6 def process(self, context): + asset = avalon.Session["AVALON_ASSET"] subset = "workfile" - project = phiero.get_current_project() - active_sequence = phiero.get_current_sequence() - video_tracks = active_sequence.videoTracks() - audio_tracks = active_sequence.audioTracks() - current_file = project.path() - staging_dir = os.path.dirname(current_file) - base_name = os.path.basename(current_file) + active_timeline = hiero.ui.activeSequence() + fps = active_timeline.framerate().toFloat() - # get workfile's colorspace properties - _clrs = {} - _clrs["useOCIOEnvironmentOverride"] = project.useOCIOEnvironmentOverride() # noqa - _clrs["lutSetting16Bit"] = project.lutSetting16Bit() - _clrs["lutSetting8Bit"] = project.lutSetting8Bit() - _clrs["lutSettingFloat"] = project.lutSettingFloat() - _clrs["lutSettingLog"] = project.lutSettingLog() - _clrs["lutSettingViewer"] = project.lutSettingViewer() - _clrs["lutSettingWorkingSpace"] = project.lutSettingWorkingSpace() - _clrs["lutUseOCIOForExport"] = project.lutUseOCIOForExport() - _clrs["ocioConfigName"] = project.ocioConfigName() - _clrs["ocioConfigPath"] = project.ocioConfigPath() + # adding otio timeline to context + otio_timeline = hiero_export.create_otio_timeline() - # set main project attributes to context - context.data["activeProject"] = project - context.data["activeSequence"] = active_sequence - context.data["videoTracks"] = video_tracks - context.data["audioTracks"] = audio_tracks - context.data["currentFile"] = current_file - context.data["colorspace"] = _clrs + # get workfile thumnail paths + tmp_staging = tempfile.mkdtemp(prefix="pyblish_tmp_") + thumbnail_name = "workfile_thumbnail.png" + thumbnail_path = os.path.join(tmp_staging, thumbnail_name) - self.log.info("currentFile: {}".format(current_file)) + # search for all windows with name of actual sequence + _windows = [w for w in hiero.ui.windowManager().windows() + if active_timeline.name() in w.windowTitle()] + + # export window to thumb path + QPixmap.grabWidget(_windows[-1]).save(thumbnail_path, 'png') + + # thumbnail + thumb_representation = { + 'files': thumbnail_name, + 'stagingDir': tmp_staging, + 'name': "thumbnail", + 'thumbnail': True, + 'ext': "png" + } + + # get workfile paths + curent_file = project.path() + staging_dir, base_name = os.path.split(curent_file) # creating workfile representation - representation = { + workfile_representation = { 'name': 'hrox', 'ext': 'hrox', 'files': base_name, @@ -59,16 +64,21 @@ class PreCollectWorkfile(pyblish.api.ContextPlugin): "subset": "{}{}".format(asset, subset.capitalize()), "item": project, "family": "workfile", - - # version data - "versionData": { - "colorspace": _clrs - }, - - # source attribute - "sourcePath": current_file, - "representations": [representation] + "representations": [workfile_representation, thumb_representation] } + # create instance with workfile instance = context.create_instance(**instance_data) + + # update context with main project attributes + context_data = { + "activeProject": project, + "otioTimeline": otio_timeline, + "currentFile": curent_file, + "fps": fps, + } + context.data.update(context_data) + self.log.info("Creating instance: {}".format(instance)) + self.log.debug("__ instance.data: {}".format(pformat(instance.data))) + self.log.debug("__ context_data: {}".format(pformat(context_data))) diff --git a/openpype/hosts/hiero/plugins/publish/collect_assetbuilds.py b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_assetbuilds.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/collect_assetbuilds.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/collect_assetbuilds.py diff --git a/openpype/hosts/hiero/plugins/publish/collect_clip_resolution.py b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_clip_resolution.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/collect_clip_resolution.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/collect_clip_resolution.py diff --git a/openpype/hosts/hiero/plugins/publish/collect_frame_ranges.py b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_frame_ranges.py similarity index 97% rename from openpype/hosts/hiero/plugins/publish/collect_frame_ranges.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/collect_frame_ranges.py index 39387578d2..21e12e89fa 100644 --- a/openpype/hosts/hiero/plugins/publish/collect_frame_ranges.py +++ b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_frame_ranges.py @@ -5,7 +5,7 @@ class CollectFrameRanges(pyblish.api.InstancePlugin): """ Collect all framranges. """ - order = pyblish.api.CollectorOrder + order = pyblish.api.CollectorOrder - 0.1 label = "Collect Frame Ranges" hosts = ["hiero"] families = ["clip", "effect"] diff --git a/openpype/hosts/hiero/plugins/publish/collect_hierarchy_context.py b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_hierarchy_context.py similarity index 97% rename from openpype/hosts/hiero/plugins/publish/collect_hierarchy_context.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/collect_hierarchy_context.py index ba3e388c53..0696a58e39 100644 --- a/openpype/hosts/hiero/plugins/publish/collect_hierarchy_context.py +++ b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_hierarchy_context.py @@ -39,8 +39,8 @@ class CollectHierarchy(pyblish.api.ContextPlugin): if not set(self.families).intersection(families): continue - # exclude if not masterLayer True - if not instance.data.get("masterLayer"): + # exclude if not heroTrack True + if not instance.data.get("heroTrack"): continue # update families to include `shot` for hierarchy integration diff --git a/openpype/hosts/hiero/plugins/publish/collect_host_version.py b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_host_version.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/collect_host_version.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/collect_host_version.py diff --git a/openpype/hosts/hiero/plugins/publish/collect_plates.py b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_plates.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/collect_plates.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/collect_plates.py diff --git a/openpype/hosts/hiero/plugins/publish/collect_review.py b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_review.py similarity index 99% rename from openpype/hosts/hiero/plugins/publish/collect_review.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/collect_review.py index a0ab00b355..b1d97a71d7 100644 --- a/openpype/hosts/hiero/plugins/publish/collect_review.py +++ b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_review.py @@ -29,7 +29,7 @@ class CollectReview(api.InstancePlugin): Exception: description """ - review_track = instance.data.get("review") + review_track = instance.data.get("reviewTrack") video_tracks = instance.context.data["videoTracks"] for track in video_tracks: if review_track not in track.name(): diff --git a/openpype/hosts/hiero/plugins/publish/collect_tag_tasks.py b/openpype/hosts/hiero/plugins/publish_old_workflow/collect_tag_tasks.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/collect_tag_tasks.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/collect_tag_tasks.py diff --git a/openpype/hosts/hiero/plugins/publish/extract_audio.py b/openpype/hosts/hiero/plugins/publish_old_workflow/extract_audio.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/extract_audio.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/extract_audio.py diff --git a/openpype/hosts/hiero/plugins/publish/extract_clip_effects.py b/openpype/hosts/hiero/plugins/publish_old_workflow/extract_clip_effects.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/extract_clip_effects.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/extract_clip_effects.py diff --git a/openpype/hosts/hiero/plugins/publish/extract_review_preparation.py b/openpype/hosts/hiero/plugins/publish_old_workflow/extract_review_preparation.py similarity index 98% rename from openpype/hosts/hiero/plugins/publish/extract_review_preparation.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/extract_review_preparation.py index 5456ddc3c4..aac476e27a 100644 --- a/openpype/hosts/hiero/plugins/publish/extract_review_preparation.py +++ b/openpype/hosts/hiero/plugins/publish_old_workflow/extract_review_preparation.py @@ -132,7 +132,7 @@ class ExtractReviewPreparation(openpype.api.Extractor): ).format(**locals()) self.log.debug("ffprob_cmd: {}".format(ffprob_cmd)) - audio_check_output = openpype.api.subprocess(ffprob_cmd) + audio_check_output = openpype.api.run_subprocess(ffprob_cmd) self.log.debug( "audio_check_output: {}".format(audio_check_output)) @@ -167,7 +167,7 @@ class ExtractReviewPreparation(openpype.api.Extractor): # try to get video native resolution data try: - resolution_output = openpype.api.subprocess(( + resolution_output = openpype.api.run_subprocess(( "\"{ffprobe_path}\" -i \"{full_input_path}\"" " -v error " "-select_streams v:0 -show_entries " @@ -280,7 +280,7 @@ class ExtractReviewPreparation(openpype.api.Extractor): # run subprocess self.log.debug("Executing: {}".format(subprcs_cmd)) - output = openpype.api.subprocess(subprcs_cmd) + output = openpype.api.run_subprocess(subprcs_cmd) self.log.debug("Output: {}".format(output)) repre_new = { diff --git a/openpype/hosts/hiero/plugins/publish/precollect_clip_effects.py b/openpype/hosts/hiero/plugins/publish_old_workflow/precollect_clip_effects.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/precollect_clip_effects.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/precollect_clip_effects.py diff --git a/openpype/hosts/hiero/plugins/publish_old_workflow/precollect_instances.py b/openpype/hosts/hiero/plugins/publish_old_workflow/precollect_instances.py new file mode 100644 index 0000000000..f9cc158e79 --- /dev/null +++ b/openpype/hosts/hiero/plugins/publish_old_workflow/precollect_instances.py @@ -0,0 +1,223 @@ +from compiler.ast import flatten +from pyblish import api +from openpype.hosts.hiero import api as phiero +import hiero +# from openpype.hosts.hiero.api import lib +# reload(lib) +# reload(phiero) + + +class PreCollectInstances(api.ContextPlugin): + """Collect all Track items selection.""" + + order = api.CollectorOrder - 0.509 + label = "Pre-collect Instances" + hosts = ["hiero"] + + def process(self, context): + track_items = phiero.get_track_items( + selected=True, check_tagged=True, check_enabled=True) + # only return enabled track items + if not track_items: + track_items = phiero.get_track_items( + check_enabled=True, check_tagged=True) + # get sequence and video tracks + sequence = context.data["activeSequence"] + tracks = sequence.videoTracks() + + # add collection to context + tracks_effect_items = self.collect_sub_track_items(tracks) + + context.data["tracksEffectItems"] = tracks_effect_items + + self.log.info( + "Processing enabled track items: {}".format(len(track_items))) + + for _ti in track_items: + data = {} + clip = _ti.source() + + # get clips subtracks and anotations + annotations = self.clip_annotations(clip) + subtracks = self.clip_subtrack(_ti) + self.log.debug("Annotations: {}".format(annotations)) + self.log.debug(">> Subtracks: {}".format(subtracks)) + + # get pype tag data + tag_parsed_data = phiero.get_track_item_pype_data(_ti) + # self.log.debug(pformat(tag_parsed_data)) + + if not tag_parsed_data: + continue + + if tag_parsed_data.get("id") != "pyblish.avalon.instance": + continue + # add tag data to instance data + data.update({ + k: v for k, v in tag_parsed_data.items() + if k not in ("id", "applieswhole", "label") + }) + + asset = tag_parsed_data["asset"] + subset = tag_parsed_data["subset"] + review_track = tag_parsed_data.get("reviewTrack") + hiero_track = tag_parsed_data.get("heroTrack") + audio = tag_parsed_data.get("audio") + + # remove audio attribute from data + data.pop("audio") + + # insert family into families + family = tag_parsed_data["family"] + families = [str(f) for f in tag_parsed_data["families"]] + families.insert(0, str(family)) + + track = _ti.parent() + media_source = _ti.source().mediaSource() + source_path = media_source.firstpath() + file_head = media_source.filenameHead() + file_info = media_source.fileinfos().pop() + source_first_frame = int(file_info.startFrame()) + + # apply only for review and master track instance + if review_track and hiero_track: + families += ["review", "ftrack"] + + data.update({ + "name": "{} {} {}".format(asset, subset, families), + "asset": asset, + "item": _ti, + "families": families, + + # tags + "tags": _ti.tags(), + + # track item attributes + "track": track.name(), + "trackItem": track, + "reviewTrack": review_track, + + # version data + "versionData": { + "colorspace": _ti.sourceMediaColourTransform() + }, + + # source attribute + "source": source_path, + "sourceMedia": media_source, + "sourcePath": source_path, + "sourceFileHead": file_head, + "sourceFirst": source_first_frame, + + # clip's effect + "clipEffectItems": subtracks + }) + + instance = context.create_instance(**data) + + self.log.info("Creating instance.data: {}".format(instance.data)) + + if audio: + a_data = dict() + + # add tag data to instance data + a_data.update({ + k: v for k, v in tag_parsed_data.items() + if k not in ("id", "applieswhole", "label") + }) + + # create main attributes + subset = "audioMain" + family = "audio" + families = ["clip", "ftrack"] + families.insert(0, str(family)) + + name = "{} {} {}".format(asset, subset, families) + + a_data.update({ + "name": name, + "subset": subset, + "asset": asset, + "family": family, + "families": families, + "item": _ti, + + # tags + "tags": _ti.tags(), + }) + + a_instance = context.create_instance(**a_data) + self.log.info("Creating audio instance: {}".format(a_instance)) + + @staticmethod + def clip_annotations(clip): + """ + Returns list of Clip's hiero.core.Annotation + """ + annotations = [] + subTrackItems = flatten(clip.subTrackItems()) + annotations += [item for item in subTrackItems if isinstance( + item, hiero.core.Annotation)] + return annotations + + @staticmethod + def clip_subtrack(clip): + """ + Returns list of Clip's hiero.core.SubTrackItem + """ + subtracks = [] + subTrackItems = flatten(clip.parent().subTrackItems()) + for item in subTrackItems: + # avoid all anotation + if isinstance(item, hiero.core.Annotation): + continue + # # avoid all not anaibled + if not item.isEnabled(): + continue + subtracks.append(item) + return subtracks + + @staticmethod + def collect_sub_track_items(tracks): + """ + Returns dictionary with track index as key and list of subtracks + """ + # collect all subtrack items + sub_track_items = dict() + for track in tracks: + items = track.items() + + # skip if no clips on track > need track with effect only + if items: + continue + + # skip all disabled tracks + if not track.isEnabled(): + continue + + track_index = track.trackIndex() + _sub_track_items = flatten(track.subTrackItems()) + + # continue only if any subtrack items are collected + if len(_sub_track_items) < 1: + continue + + enabled_sti = list() + # loop all found subtrack items and check if they are enabled + for _sti in _sub_track_items: + # checking if not enabled + if not _sti.isEnabled(): + continue + if isinstance(_sti, hiero.core.Annotation): + continue + # collect the subtrack item + enabled_sti.append(_sti) + + # continue only if any subtrack items are collected + if len(enabled_sti) < 1: + continue + + # add collection of subtrackitems to dict + sub_track_items[track_index] = enabled_sti + + return sub_track_items diff --git a/openpype/hosts/hiero/plugins/publish_old_workflow/precollect_workfile.py b/openpype/hosts/hiero/plugins/publish_old_workflow/precollect_workfile.py new file mode 100644 index 0000000000..ef7d07421b --- /dev/null +++ b/openpype/hosts/hiero/plugins/publish_old_workflow/precollect_workfile.py @@ -0,0 +1,74 @@ +import os +import pyblish.api +from openpype.hosts.hiero import api as phiero +from avalon import api as avalon + + +class PreCollectWorkfile(pyblish.api.ContextPlugin): + """Inject the current working file into context""" + + label = "Pre-collect Workfile" + order = pyblish.api.CollectorOrder - 0.51 + + def process(self, context): + asset = avalon.Session["AVALON_ASSET"] + subset = "workfile" + + project = phiero.get_current_project() + active_sequence = phiero.get_current_sequence() + video_tracks = active_sequence.videoTracks() + audio_tracks = active_sequence.audioTracks() + current_file = project.path() + staging_dir = os.path.dirname(current_file) + base_name = os.path.basename(current_file) + + # get workfile's colorspace properties + _clrs = {} + _clrs["useOCIOEnvironmentOverride"] = project.useOCIOEnvironmentOverride() # noqa + _clrs["lutSetting16Bit"] = project.lutSetting16Bit() + _clrs["lutSetting8Bit"] = project.lutSetting8Bit() + _clrs["lutSettingFloat"] = project.lutSettingFloat() + _clrs["lutSettingLog"] = project.lutSettingLog() + _clrs["lutSettingViewer"] = project.lutSettingViewer() + _clrs["lutSettingWorkingSpace"] = project.lutSettingWorkingSpace() + _clrs["lutUseOCIOForExport"] = project.lutUseOCIOForExport() + _clrs["ocioConfigName"] = project.ocioConfigName() + _clrs["ocioConfigPath"] = project.ocioConfigPath() + + # set main project attributes to context + context.data["activeProject"] = project + context.data["activeSequence"] = active_sequence + context.data["videoTracks"] = video_tracks + context.data["audioTracks"] = audio_tracks + context.data["currentFile"] = current_file + context.data["colorspace"] = _clrs + + self.log.info("currentFile: {}".format(current_file)) + + # creating workfile representation + representation = { + 'name': 'hrox', + 'ext': 'hrox', + 'files': base_name, + "stagingDir": staging_dir, + } + + instance_data = { + "name": "{}_{}".format(asset, subset), + "asset": asset, + "subset": "{}{}".format(asset, subset.capitalize()), + "item": project, + "family": "workfile", + + # version data + "versionData": { + "colorspace": _clrs + }, + + # source attribute + "sourcePath": current_file, + "representations": [representation] + } + + instance = context.create_instance(**instance_data) + self.log.info("Creating instance: {}".format(instance)) diff --git a/openpype/hosts/hiero/plugins/publish/validate_audio.py b/openpype/hosts/hiero/plugins/publish_old_workflow/validate_audio.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/validate_audio.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/validate_audio.py diff --git a/openpype/hosts/hiero/plugins/publish/validate_hierarchy.py b/openpype/hosts/hiero/plugins/publish_old_workflow/validate_hierarchy.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/validate_hierarchy.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/validate_hierarchy.py diff --git a/openpype/hosts/hiero/plugins/publish/validate_names.py b/openpype/hosts/hiero/plugins/publish_old_workflow/validate_names.py similarity index 100% rename from openpype/hosts/hiero/plugins/publish/validate_names.py rename to openpype/hosts/hiero/plugins/publish_old_workflow/validate_names.py diff --git a/openpype/hosts/hiero/startup/Python/Startup/otioexporter/OTIOExportTask.py b/openpype/hosts/hiero/startup/Python/Startup/otioexporter/OTIOExportTask.py index 90504ccd18..7e1a8df2dc 100644 --- a/openpype/hosts/hiero/startup/Python/Startup/otioexporter/OTIOExportTask.py +++ b/openpype/hosts/hiero/startup/Python/Startup/otioexporter/OTIOExportTask.py @@ -1,338 +1,28 @@ -# MIT License -# -# Copyright (c) 2018 Daniel Flehner Heen (Storm Studios) -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. +#!/usr/bin/env python +# -*- coding: utf-8 -*- +__author__ = "Daniel Flehner Heen" +__credits__ = ["Jakub Jezek", "Daniel Flehner Heen"] import os -import re import hiero.core from hiero.core import util import opentimelineio as otio - - -marker_color_map = { - "magenta": otio.schema.MarkerColor.MAGENTA, - "red": otio.schema.MarkerColor.RED, - "yellow": otio.schema.MarkerColor.YELLOW, - "green": otio.schema.MarkerColor.GREEN, - "cyan": otio.schema.MarkerColor.CYAN, - "blue": otio.schema.MarkerColor.BLUE, -} - +from openpype.hosts.hiero.otio import hiero_export class OTIOExportTask(hiero.core.TaskBase): def __init__(self, initDict): """Initialize""" hiero.core.TaskBase.__init__(self, initDict) + self.otio_timeline = None def name(self): return str(type(self)) - def get_rate(self, item): - if not hasattr(item, 'framerate'): - item = item.sequence() - - num, den = item.framerate().toRational() - rate = float(num) / float(den) - - if rate.is_integer(): - return rate - - return round(rate, 2) - - def get_clip_ranges(self, trackitem): - # Get rate from source or sequence - if trackitem.source().mediaSource().hasVideo(): - rate_item = trackitem.source() - - else: - rate_item = trackitem.sequence() - - source_rate = self.get_rate(rate_item) - - # Reversed video/audio - if trackitem.playbackSpeed() < 0: - start = trackitem.sourceOut() - - else: - start = trackitem.sourceIn() - - source_start_time = otio.opentime.RationalTime( - start, - source_rate - ) - source_duration = otio.opentime.RationalTime( - trackitem.duration(), - source_rate - ) - - source_range = otio.opentime.TimeRange( - start_time=source_start_time, - duration=source_duration - ) - - hiero_clip = trackitem.source() - - available_range = None - if hiero_clip.mediaSource().isMediaPresent(): - start_time = otio.opentime.RationalTime( - hiero_clip.mediaSource().startTime(), - source_rate - ) - duration = otio.opentime.RationalTime( - hiero_clip.mediaSource().duration(), - source_rate - ) - available_range = otio.opentime.TimeRange( - start_time=start_time, - duration=duration - ) - - return source_range, available_range - - def add_gap(self, trackitem, otio_track, prev_out): - gap_length = trackitem.timelineIn() - prev_out - if prev_out != 0: - gap_length -= 1 - - rate = self.get_rate(trackitem.sequence()) - gap = otio.opentime.TimeRange( - duration=otio.opentime.RationalTime( - gap_length, - rate - ) - ) - otio_gap = otio.schema.Gap(source_range=gap) - otio_track.append(otio_gap) - - def get_marker_color(self, tag): - icon = tag.icon() - pat = r'icons:Tag(?P\w+)\.\w+' - - res = re.search(pat, icon) - if res: - color = res.groupdict().get('color') - if color.lower() in marker_color_map: - return marker_color_map[color.lower()] - - return otio.schema.MarkerColor.RED - - def add_markers(self, hiero_item, otio_item): - for tag in hiero_item.tags(): - if not tag.visible(): - continue - - if tag.name() == 'Copy': - # Hiero adds this tag to a lot of clips - continue - - frame_rate = self.get_rate(hiero_item) - - marked_range = otio.opentime.TimeRange( - start_time=otio.opentime.RationalTime( - tag.inTime(), - frame_rate - ), - duration=otio.opentime.RationalTime( - int(tag.metadata().dict().get('tag.length', '0')), - frame_rate - ) - ) - - metadata = dict( - Hiero=tag.metadata().dict() - ) - # Store the source item for future import assignment - metadata['Hiero']['source_type'] = hiero_item.__class__.__name__ - - marker = otio.schema.Marker( - name=tag.name(), - color=self.get_marker_color(tag), - marked_range=marked_range, - metadata=metadata - ) - - otio_item.markers.append(marker) - - def add_clip(self, trackitem, otio_track, itemindex): - hiero_clip = trackitem.source() - - # Add Gap if needed - if itemindex == 0: - prev_item = trackitem - - else: - prev_item = trackitem.parent().items()[itemindex - 1] - - clip_diff = trackitem.timelineIn() - prev_item.timelineOut() - - if itemindex == 0 and trackitem.timelineIn() > 0: - self.add_gap(trackitem, otio_track, 0) - - elif itemindex and clip_diff != 1: - self.add_gap(trackitem, otio_track, prev_item.timelineOut()) - - # Create Clip - source_range, available_range = self.get_clip_ranges(trackitem) - - otio_clip = otio.schema.Clip( - name=trackitem.name(), - source_range=source_range - ) - - # Add media reference - media_reference = otio.schema.MissingReference() - if hiero_clip.mediaSource().isMediaPresent(): - source = hiero_clip.mediaSource() - first_file = source.fileinfos()[0] - path = first_file.filename() - - if "%" in path: - path = re.sub(r"%\d+d", "%d", path) - if "#" in path: - path = re.sub(r"#+", "%d", path) - - media_reference = otio.schema.ExternalReference( - target_url=u'{}'.format(path), - available_range=available_range - ) - - otio_clip.media_reference = media_reference - - # Add Time Effects - playbackspeed = trackitem.playbackSpeed() - if playbackspeed != 1: - if playbackspeed == 0: - time_effect = otio.schema.FreezeFrame() - - else: - time_effect = otio.schema.LinearTimeWarp( - time_scalar=playbackspeed - ) - otio_clip.effects.append(time_effect) - - # Add tags as markers - if self._preset.properties()["includeTags"]: - self.add_markers(trackitem, otio_clip) - self.add_markers(trackitem.source(), otio_clip) - - otio_track.append(otio_clip) - - # Add Transition if needed - if trackitem.inTransition() or trackitem.outTransition(): - self.add_transition(trackitem, otio_track) - - def add_transition(self, trackitem, otio_track): - transitions = [] - - if trackitem.inTransition(): - if trackitem.inTransition().alignment().name == 'kFadeIn': - transitions.append(trackitem.inTransition()) - - if trackitem.outTransition(): - transitions.append(trackitem.outTransition()) - - for transition in transitions: - alignment = transition.alignment().name - - if alignment == 'kFadeIn': - in_offset_frames = 0 - out_offset_frames = ( - transition.timelineOut() - transition.timelineIn() - ) + 1 - - elif alignment == 'kFadeOut': - in_offset_frames = ( - trackitem.timelineOut() - transition.timelineIn() - ) + 1 - out_offset_frames = 0 - - elif alignment == 'kDissolve': - in_offset_frames = ( - transition.inTrackItem().timelineOut() - - transition.timelineIn() - ) - out_offset_frames = ( - transition.timelineOut() - - transition.outTrackItem().timelineIn() - ) - - else: - # kUnknown transition is ignored - continue - - rate = trackitem.source().framerate().toFloat() - in_time = otio.opentime.RationalTime(in_offset_frames, rate) - out_time = otio.opentime.RationalTime(out_offset_frames, rate) - - otio_transition = otio.schema.Transition( - name=alignment, # Consider placing Hiero name in metadata - transition_type=otio.schema.TransitionTypes.SMPTE_Dissolve, - in_offset=in_time, - out_offset=out_time - ) - - if alignment == 'kFadeIn': - otio_track.insert(-1, otio_transition) - - else: - otio_track.append(otio_transition) - - - def add_tracks(self): - for track in self._sequence.items(): - if isinstance(track, hiero.core.AudioTrack): - kind = otio.schema.TrackKind.Audio - - else: - kind = otio.schema.TrackKind.Video - - otio_track = otio.schema.Track(name=track.name(), kind=kind) - - for itemindex, trackitem in enumerate(track): - if isinstance(trackitem.source(), hiero.core.Clip): - self.add_clip(trackitem, otio_track, itemindex) - - self.otio_timeline.tracks.append(otio_track) - - # Add tags as markers - if self._preset.properties()["includeTags"]: - self.add_markers(self._sequence, self.otio_timeline.tracks) - - def create_OTIO(self): - self.otio_timeline = otio.schema.Timeline() - - # Set global start time based on sequence - self.otio_timeline.global_start_time = otio.opentime.RationalTime( - self._sequence.timecodeStart(), - self._sequence.framerate().toFloat() - ) - self.otio_timeline.name = self._sequence.name() - - self.add_tracks() - def startTask(self): - self.create_OTIO() + self.otio_timeline = hiero_export.create_otio_timeline() def taskStep(self): return False @@ -350,7 +40,7 @@ class OTIOExportTask(hiero.core.TaskBase): util.filesystem.makeDirs(dirname) # write otio file - otio.adapters.write_to_file(self.otio_timeline, exportPath) + hiero_export.write_to_file(self.otio_timeline, exportPath) # Catch all exceptions and log error except Exception as e: @@ -370,7 +60,7 @@ class OTIOExportPreset(hiero.core.TaskPresetBase): """Initialise presets to default values""" hiero.core.TaskPresetBase.__init__(self, OTIOExportTask, name) - self.properties()["includeTags"] = True + self.properties()["includeTags"] = hiero_export.include_tags = True self.properties().update(properties) def supportedItems(self): diff --git a/openpype/hosts/hiero/startup/Python/Startup/otioexporter/OTIOExportUI.py b/openpype/hosts/hiero/startup/Python/Startup/otioexporter/OTIOExportUI.py index 887ff05ec8..9b83eefedf 100644 --- a/openpype/hosts/hiero/startup/Python/Startup/otioexporter/OTIOExportUI.py +++ b/openpype/hosts/hiero/startup/Python/Startup/otioexporter/OTIOExportUI.py @@ -1,3 +1,9 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +__author__ = "Daniel Flehner Heen" +__credits__ = ["Jakub Jezek", "Daniel Flehner Heen"] + import hiero.ui import OTIOExportTask @@ -14,6 +20,7 @@ except ImportError: FormLayout = QFormLayout # lint:ok +from openpype.hosts.hiero.otio import hiero_export class OTIOExportUI(hiero.ui.TaskUIBase): def __init__(self, preset): @@ -27,7 +34,7 @@ class OTIOExportUI(hiero.ui.TaskUIBase): def includeMarkersCheckboxChanged(self, state): # Slot to handle change of checkbox state - self._preset.properties()["includeTags"] = state == QtCore.Qt.Checked + hiero_export.include_tags = state == QtCore.Qt.Checked def populateUI(self, widget, exportTemplate): layout = widget.layout() diff --git a/openpype/hosts/hiero/startup/Python/Startup/otioexporter/__init__.py b/openpype/hosts/hiero/startup/Python/Startup/otioexporter/__init__.py index 67e6e78d35..3c09655f01 100644 --- a/openpype/hosts/hiero/startup/Python/Startup/otioexporter/__init__.py +++ b/openpype/hosts/hiero/startup/Python/Startup/otioexporter/__init__.py @@ -1,25 +1,3 @@ -# MIT License -# -# Copyright (c) 2018 Daniel Flehner Heen (Storm Studios) -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. - from OTIOExportTask import OTIOExportTask from OTIOExportUI import OTIOExportUI diff --git a/openpype/hosts/hiero/startup/Python/StartupUI/otioimporter/__init__.py b/openpype/hosts/hiero/startup/Python/StartupUI/otioimporter/__init__.py index 1503a9e9ac..0f0a643909 100644 --- a/openpype/hosts/hiero/startup/Python/StartupUI/otioimporter/__init__.py +++ b/openpype/hosts/hiero/startup/Python/StartupUI/otioimporter/__init__.py @@ -1,42 +1,91 @@ -# MIT License -# -# Copyright (c) 2018 Daniel Flehner Heen (Storm Studios) -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +__author__ = "Daniel Flehner Heen" +__credits__ = ["Jakub Jezek", "Daniel Flehner Heen"] import hiero.ui import hiero.core -from otioimporter.OTIOImport import load_otio +import PySide2.QtWidgets as qw + +from openpype.hosts.hiero.otio.hiero_import import load_otio + + +class OTIOProjectSelect(qw.QDialog): + + def __init__(self, projects, *args, **kwargs): + super(OTIOProjectSelect, self).__init__(*args, **kwargs) + self.setWindowTitle('Please select active project') + self.layout = qw.QVBoxLayout() + + self.label = qw.QLabel( + 'Unable to determine which project to import sequence to.\n' + 'Please select one.' + ) + self.layout.addWidget(self.label) + + self.projects = qw.QComboBox() + self.projects.addItems(map(lambda p: p.name(), projects)) + self.layout.addWidget(self.projects) + + QBtn = qw.QDialogButtonBox.Ok | qw.QDialogButtonBox.Cancel + self.buttonBox = qw.QDialogButtonBox(QBtn) + self.buttonBox.accepted.connect(self.accept) + self.buttonBox.rejected.connect(self.reject) + + self.layout.addWidget(self.buttonBox) + self.setLayout(self.layout) + + +def get_sequence(view): + sequence = None + if isinstance(view, hiero.ui.TimelineEditor): + sequence = view.sequence() + + elif isinstance(view, hiero.ui.BinView): + for item in view.selection(): + if not hasattr(item, 'acitveItem'): + continue + + if isinstance(item.activeItem(), hiero.core.Sequence): + sequence = item.activeItem() + + return sequence def OTIO_menu_action(event): - otio_action = hiero.ui.createMenuAction( - 'Import OTIO', + # Menu actions + otio_import_action = hiero.ui.createMenuAction( + 'Import OTIO...', open_otio_file, icon=None ) - hiero.ui.registerAction(otio_action) + + otio_add_track_action = hiero.ui.createMenuAction( + 'New Track(s) from OTIO...', + open_otio_file, + icon=None + ) + otio_add_track_action.setEnabled(False) + + hiero.ui.registerAction(otio_import_action) + hiero.ui.registerAction(otio_add_track_action) + + view = hiero.ui.currentContextMenuView() + + if view: + sequence = get_sequence(view) + if sequence: + otio_add_track_action.setEnabled(True) + for action in event.menu.actions(): if action.text() == 'Import': - action.menu().addAction(otio_action) - break + action.menu().addAction(otio_import_action) + action.menu().addAction(otio_add_track_action) + + elif action.text() == 'New Track': + action.menu().addAction(otio_add_track_action) def open_otio_file(): @@ -45,8 +94,39 @@ def open_otio_file(): pattern='*.otio', requiredExtension='.otio' ) + + selection = None + sequence = None + + view = hiero.ui.currentContextMenuView() + if view: + sequence = get_sequence(view) + selection = view.selection() + + if sequence: + project = sequence.project() + + elif selection: + project = selection[0].project() + + elif len(hiero.core.projects()) > 1: + dialog = OTIOProjectSelect(hiero.core.projects()) + if dialog.exec_(): + project = hiero.core.projects()[dialog.projects.currentIndex()] + + else: + bar = hiero.ui.mainWindow().statusBar() + bar.showMessage( + 'OTIO Import aborted by user', + timeout=3000 + ) + return + + else: + project = hiero.core.projects()[-1] + for otio_file in files: - load_otio(otio_file) + load_otio(otio_file, project, sequence) # HieroPlayer is quite limited and can't create transitions etc. @@ -55,3 +135,7 @@ if not hiero.core.isHieroPlayer(): "kShowContextMenu/kBin", OTIO_menu_action ) + hiero.core.events.registerInterest( + "kShowContextMenu/kTimeline", + OTIO_menu_action + ) diff --git a/openpype/hosts/houdini/api/lib.py b/openpype/hosts/houdini/api/lib.py index dd586ca02d..1f0f90811f 100644 --- a/openpype/hosts/houdini/api/lib.py +++ b/openpype/hosts/houdini/api/lib.py @@ -210,7 +210,7 @@ def validate_fps(): if current_fps != fps: - from ...widgets import popup + from openpype.widgets import popup # Find main window parent = hou.ui.mainQtWindow() @@ -219,8 +219,8 @@ def validate_fps(): else: dialog = popup.Popup2(parent=parent) dialog.setModal(True) - dialog.setWindowTitle("Maya scene not in line with project") - dialog.setMessage("The FPS is out of sync, please fix") + dialog.setWindowTitle("Houdini scene not in line with project") + dialog.setMessage("The FPS is out of sync, please fix it") # Set new text for button (add optional argument for the popup?) toggle = dialog.widgets["toggle"] diff --git a/openpype/hosts/houdini/startup/MainMenuCommon.XML b/openpype/hosts/houdini/startup/MainMenuCommon.xml similarity index 100% rename from openpype/hosts/houdini/startup/MainMenuCommon.XML rename to openpype/hosts/houdini/startup/MainMenuCommon.xml diff --git a/openpype/hosts/maya/api/lib.py b/openpype/hosts/maya/api/lib.py index ae2d329a97..a83ff98c99 100644 --- a/openpype/hosts/maya/api/lib.py +++ b/openpype/hosts/maya/api/lib.py @@ -1872,7 +1872,7 @@ def set_context_settings(): # Set project fps fps = asset_data.get("fps", project_data.get("fps", 25)) - api.Session["AVALON_FPS"] = fps + api.Session["AVALON_FPS"] = str(fps) set_scene_fps(fps) # Set project resolution diff --git a/openpype/hosts/maya/plugins/create/create_look.py b/openpype/hosts/maya/plugins/create/create_look.py index 96266aa799..36a3120a9a 100644 --- a/openpype/hosts/maya/plugins/create/create_look.py +++ b/openpype/hosts/maya/plugins/create/create_look.py @@ -12,6 +12,7 @@ class CreateLook(plugin.Creator): family = "look" icon = "paint-brush" defaults = ['Main'] + make_tx = True def __init__(self, *args, **kwargs): super(CreateLook, self).__init__(*args, **kwargs) @@ -19,7 +20,7 @@ class CreateLook(plugin.Creator): self.data["renderlayer"] = lib.get_current_renderlayer() # Whether to automatically convert the textures to .tx upon publish. - self.data["maketx"] = True + self.data["maketx"] = self.make_tx # Enable users to force a copy. self.data["forceCopy"] = False diff --git a/openpype/hosts/maya/plugins/create/create_redshift_proxy.py b/openpype/hosts/maya/plugins/create/create_redshift_proxy.py new file mode 100644 index 0000000000..419a8d99d4 --- /dev/null +++ b/openpype/hosts/maya/plugins/create/create_redshift_proxy.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +"""Creator of Redshift proxy subset types.""" + +from openpype.hosts.maya.api import plugin, lib + + +class CreateRedshiftProxy(plugin.Creator): + """Create instance of Redshift Proxy subset.""" + + name = "redshiftproxy" + label = "Redshift Proxy" + family = "redshiftproxy" + icon = "gears" + + def __init__(self, *args, **kwargs): + super(CreateRedshiftProxy, self).__init__(*args, **kwargs) + + animation_data = lib.collect_animation_data() + + self.data["animation"] = False + self.data["proxyFrameStart"] = animation_data["frameStart"] + self.data["proxyFrameEnd"] = animation_data["frameEnd"] + self.data["proxyFrameStep"] = animation_data["step"] diff --git a/openpype/hosts/maya/plugins/load/load_look.py b/openpype/hosts/maya/plugins/load/load_look.py index 4392d1f78d..c39bbc497e 100644 --- a/openpype/hosts/maya/plugins/load/load_look.py +++ b/openpype/hosts/maya/plugins/load/load_look.py @@ -105,7 +105,23 @@ class LookLoader(openpype.hosts.maya.api.plugin.ReferenceLoader): # Load relationships shader_relation = api.get_representation_path(json_representation) with open(shader_relation, "r") as f: - relationships = json.load(f) + json_data = json.load(f) + + for rel, data in json_data["relationships"].items(): + # process only non-shading nodes + current_node = "{}:{}".format(container["namespace"], rel) + if current_node in shader_nodes: + continue + print("processing {}".format(rel)) + current_members = set(cmds.ls( + cmds.sets(current_node, query=True) or [], long=True)) + new_members = {"{}".format( + m["name"]) for m in data["members"] or []} + dif = new_members.difference(current_members) + + # add to set + cmds.sets( + dif, forceElement="{}:{}".format(container["namespace"], rel)) # update of reference could result in failed edits - material is not # present because of renaming etc. @@ -120,7 +136,7 @@ class LookLoader(openpype.hosts.maya.api.plugin.ReferenceLoader): cmds.file(cr=reference_node) # cleanReference # reapply shading groups from json representation on orig nodes - openpype.hosts.maya.api.lib.apply_shaders(relationships, + openpype.hosts.maya.api.lib.apply_shaders(json_data, shader_nodes, orig_nodes) @@ -128,12 +144,13 @@ class LookLoader(openpype.hosts.maya.api.plugin.ReferenceLoader): "All successful edits were kept intact.\n", "Failed and removed edits:"] msg.extend(failed_edits) + msg = ScrollMessageBox(QtWidgets.QMessageBox.Warning, "Some reference edit failed", msg) msg.exec_() - attributes = relationships.get("attributes", []) + attributes = json_data.get("attributes", []) # region compute lookup nodes_by_id = defaultdict(list) diff --git a/openpype/hosts/maya/plugins/load/load_redshift_proxy.py b/openpype/hosts/maya/plugins/load/load_redshift_proxy.py new file mode 100644 index 0000000000..4c6a187bc3 --- /dev/null +++ b/openpype/hosts/maya/plugins/load/load_redshift_proxy.py @@ -0,0 +1,146 @@ +# -*- coding: utf-8 -*- +"""Loader for Redshift proxy.""" +from avalon.maya import lib +from avalon import api +from openpype.api import get_project_settings +import os +import maya.cmds as cmds +import clique + + +class RedshiftProxyLoader(api.Loader): + """Load Redshift proxy""" + + families = ["redshiftproxy"] + representations = ["rs"] + + label = "Import Redshift Proxy" + order = -10 + icon = "code-fork" + color = "orange" + + def load(self, context, name=None, namespace=None, options=None): + """Plugin entry point.""" + + from avalon.maya.pipeline import containerise + from openpype.hosts.maya.api.lib import namespaced + + try: + family = context["representation"]["context"]["family"] + except ValueError: + family = "redshiftproxy" + + asset_name = context['asset']["name"] + namespace = namespace or lib.unique_namespace( + asset_name + "_", + prefix="_" if asset_name[0].isdigit() else "", + suffix="_", + ) + + # Ensure Redshift for Maya is loaded. + cmds.loadPlugin("redshift4maya", quiet=True) + + with lib.maintained_selection(): + cmds.namespace(addNamespace=namespace) + with namespaced(namespace, new=False): + nodes, group_node = self.create_rs_proxy( + name, self.fname) + + self[:] = nodes + if not nodes: + return + + # colour the group node + settings = get_project_settings(os.environ['AVALON_PROJECT']) + colors = settings['maya']['load']['colors'] + c = colors.get(family) + if c is not None: + cmds.setAttr("{0}.useOutlinerColor".format(group_node), 1) + cmds.setAttr("{0}.outlinerColor".format(group_node), + c[0], c[1], c[2]) + + return containerise( + name=name, + namespace=namespace, + nodes=nodes, + context=context, + loader=self.__class__.__name__) + + def update(self, container, representation): + + node = container['objectName'] + assert cmds.objExists(node), "Missing container" + + members = cmds.sets(node, query=True) or [] + rs_meshes = cmds.ls(members, type="RedshiftProxyMesh") + assert rs_meshes, "Cannot find RedshiftProxyMesh in container" + + filename = api.get_representation_path(representation) + + for rs_mesh in rs_meshes: + cmds.setAttr("{}.fileName".format(rs_mesh), + filename, + type="string") + + # Update metadata + cmds.setAttr("{}.representation".format(node), + str(representation["_id"]), + type="string") + + def remove(self, container): + + # Delete container and its contents + if cmds.objExists(container['objectName']): + members = cmds.sets(container['objectName'], query=True) or [] + cmds.delete([container['objectName']] + members) + + # Remove the namespace, if empty + namespace = container['namespace'] + if cmds.namespace(exists=namespace): + members = cmds.namespaceInfo(namespace, listNamespace=True) + if not members: + cmds.namespace(removeNamespace=namespace) + else: + self.log.warning("Namespace not deleted because it " + "still has members: %s", namespace) + + def switch(self, container, representation): + self.update(container, representation) + + def create_rs_proxy(self, name, path): + """Creates Redshift Proxies showing a proxy object. + + Args: + name (str): Proxy name. + path (str): Path to proxy file. + + Returns: + (str, str): Name of mesh with Redshift proxy and its parent + transform. + + """ + rs_mesh = cmds.createNode( + 'RedshiftProxyMesh', name="{}_RS".format(name)) + mesh_shape = cmds.createNode("mesh", name="{}_GEOShape".format(name)) + + cmds.setAttr("{}.fileName".format(rs_mesh), + path, + type="string") + + cmds.connectAttr("{}.outMesh".format(rs_mesh), + "{}.inMesh".format(mesh_shape)) + + group_node = cmds.group(empty=True, name="{}_GRP".format(name)) + mesh_transform = cmds.listRelatives(mesh_shape, + parent=True, fullPath=True) + cmds.parent(mesh_transform, group_node) + nodes = [rs_mesh, mesh_shape, group_node] + + # determine if we need to enable animation support + files_in_folder = os.listdir(os.path.dirname(path)) + collections, remainder = clique.assemble(files_in_folder) + + if collections: + cmds.setAttr("{}.useFrameExtension".format(rs_mesh), 1) + + return nodes, group_node diff --git a/openpype/hosts/maya/plugins/publish/collect_look.py b/openpype/hosts/maya/plugins/publish/collect_look.py index acc6d8f128..bf24b463ac 100644 --- a/openpype/hosts/maya/plugins/publish/collect_look.py +++ b/openpype/hosts/maya/plugins/publish/collect_look.py @@ -1,8 +1,10 @@ +# -*- coding: utf-8 -*- +"""Maya look collector.""" import re import os import glob -from maya import cmds +from maya import cmds # noqa import pyblish.api from openpype.hosts.maya.api import lib @@ -16,6 +18,11 @@ SHAPE_ATTRS = ["castsShadows", "doubleSided", "opposite"] +RENDERER_NODE_TYPES = [ + # redshift + "RedshiftMeshParameters" +] + SHAPE_ATTRS = set(SHAPE_ATTRS) @@ -29,7 +36,6 @@ def get_look_attrs(node): list: Attribute names to extract """ - # When referenced get only attributes that are "changed since file open" # which includes any reference edits, otherwise take *all* user defined # attributes @@ -219,9 +225,13 @@ class CollectLook(pyblish.api.InstancePlugin): with lib.renderlayer(instance.data["renderlayer"]): self.collect(instance) - def collect(self, instance): + """Collect looks. + Args: + instance: Instance to collect. + + """ self.log.info("Looking for look associations " "for %s" % instance.data['name']) @@ -235,48 +245,91 @@ class CollectLook(pyblish.api.InstancePlugin): self.log.info("Gathering set relations..") # Ensure iteration happen in a list so we can remove keys from the # dict within the loop - for objset in list(sets): - self.log.debug("From %s.." % objset) + + # skipped types of attribute on render specific nodes + disabled_types = ["message", "TdataCompound"] + + for obj_set in list(sets): + self.log.debug("From {}".format(obj_set)) + + # if node is specified as renderer node type, it will be + # serialized with its attributes. + if cmds.nodeType(obj_set) in RENDERER_NODE_TYPES: + self.log.info("- {} is {}".format( + obj_set, cmds.nodeType(obj_set))) + + node_attrs = [] + + # serialize its attributes so they can be recreated on look + # load. + for attr in cmds.listAttr(obj_set): + # skip publishedNodeInfo attributes as they break + # getAttr() and we don't need them anyway + if attr.startswith("publishedNodeInfo"): + continue + + # skip attributes types defined in 'disabled_type' list + if cmds.getAttr("{}.{}".format(obj_set, attr), type=True) in disabled_types: # noqa + continue + + node_attrs.append(( + attr, + cmds.getAttr("{}.{}".format(obj_set, attr)), + cmds.getAttr( + "{}.{}".format(obj_set, attr), type=True) + )) + + for member in cmds.ls( + cmds.sets(obj_set, query=True), long=True): + member_data = self.collect_member_data(member, + instance_lookup) + if not member_data: + continue + + # Add information of the node to the members list + sets[obj_set]["members"].append(member_data) # Get all nodes of the current objectSet (shadingEngine) - for member in cmds.ls(cmds.sets(objset, query=True), long=True): + for member in cmds.ls(cmds.sets(obj_set, query=True), long=True): member_data = self.collect_member_data(member, instance_lookup) if not member_data: continue # Add information of the node to the members list - sets[objset]["members"].append(member_data) + sets[obj_set]["members"].append(member_data) # Remove sets that didn't have any members assigned in the end # Thus the data will be limited to only what we need. - self.log.info("objset {}".format(sets[objset])) - if not sets[objset]["members"] or (not objset.endswith("SG")): - self.log.info("Removing redundant set information: " - "%s" % objset) - sets.pop(objset, None) + self.log.info("obj_set {}".format(sets[obj_set])) + if not sets[obj_set]["members"]: + self.log.info( + "Removing redundant set information: {}".format(obj_set)) + sets.pop(obj_set, None) self.log.info("Gathering attribute changes to instance members..") attributes = self.collect_attributes_changed(instance) # Store data on the instance - instance.data["lookData"] = {"attributes": attributes, - "relationships": sets} + instance.data["lookData"] = { + "attributes": attributes, + "relationships": sets + } # Collect file nodes used by shading engines (if we have any) - files = list() - looksets = sets.keys() - shaderAttrs = [ - "surfaceShader", - "volumeShader", - "displacementShader", - "aiSurfaceShader", - "aiVolumeShader"] - materials = list() + files = [] + look_sets = sets.keys() + shader_attrs = [ + "surfaceShader", + "volumeShader", + "displacementShader", + "aiSurfaceShader", + "aiVolumeShader"] + if look_sets: + materials = [] - if looksets: - for look in looksets: - for at in shaderAttrs: + for look in look_sets: + for at in shader_attrs: try: con = cmds.listConnections("{}.{}".format(look, at)) except ValueError: @@ -289,12 +342,19 @@ class CollectLook(pyblish.api.InstancePlugin): self.log.info("Found materials:\n{}".format(materials)) - self.log.info("Found the following sets:\n{}".format(looksets)) + self.log.info("Found the following sets:\n{}".format(look_sets)) # Get the entire node chain of the look sets - # history = cmds.listHistory(looksets) - history = list() + # history = cmds.listHistory(look_sets) + history = [] for material in materials: history.extend(cmds.listHistory(material)) + + # handle VrayPluginNodeMtl node - see #1397 + vray_plugin_nodes = cmds.ls( + history, type="VRayPluginNodeMtl", long=True) + for vray_node in vray_plugin_nodes: + history.extend(cmds.listHistory(vray_node)) + files = cmds.ls(history, type="file", long=True) files.extend(cmds.ls(history, type="aiImage", long=True)) @@ -313,7 +373,7 @@ class CollectLook(pyblish.api.InstancePlugin): # Ensure unique shader sets # Add shader sets to the instance for unify ID validation - instance.extend(shader for shader in looksets if shader + instance.extend(shader for shader in look_sets if shader not in instance_lookup) self.log.info("Collected look for %s" % instance) @@ -331,7 +391,7 @@ class CollectLook(pyblish.api.InstancePlugin): dict """ - sets = dict() + sets = {} for node in instance: related_sets = lib.get_related_sets(node) if not related_sets: @@ -427,6 +487,11 @@ class CollectLook(pyblish.api.InstancePlugin): """ self.log.debug("processing: {}".format(node)) + if cmds.nodeType(node) not in ["file", "aiImage"]: + self.log.error( + "Unsupported file node: {}".format(cmds.nodeType(node))) + raise AssertionError("Unsupported file node") + if cmds.nodeType(node) == 'file': self.log.debug(" - file node") attribute = "{}.fileTextureName".format(node) @@ -435,6 +500,7 @@ class CollectLook(pyblish.api.InstancePlugin): self.log.debug("aiImage node") attribute = "{}.filename".format(node) computed_attribute = attribute + source = cmds.getAttr(attribute) self.log.info(" - file source: {}".format(source)) color_space_attr = "{}.colorSpace".format(node) diff --git a/openpype/hosts/maya/plugins/publish/collect_remove_marked.py b/openpype/hosts/maya/plugins/publish/collect_remove_marked.py index a45c8e45a7..69e69f6630 100644 --- a/openpype/hosts/maya/plugins/publish/collect_remove_marked.py +++ b/openpype/hosts/maya/plugins/publish/collect_remove_marked.py @@ -2,14 +2,9 @@ import pyblish.api class CollectRemoveMarked(pyblish.api.ContextPlugin): - """Collect model data + """Remove marked data - Ensures always only a single frame is extracted (current frame). - - Note: - This is a workaround so that the `pype.model` family can use the - same pointcache extractor implementation as animation and pointcaches. - This always enforces the "current" frame to be published. + Remove instances that have 'remove' in their instance.data """ diff --git a/openpype/hosts/maya/plugins/publish/collect_render.py b/openpype/hosts/maya/plugins/publish/collect_render.py index 75749a952e..647a46e240 100644 --- a/openpype/hosts/maya/plugins/publish/collect_render.py +++ b/openpype/hosts/maya/plugins/publish/collect_render.py @@ -358,9 +358,7 @@ class CollectMayaRender(pyblish.api.ContextPlugin): options["extendFrames"] = extend_frames options["overrideExistingFrame"] = override_frames - maya_render_plugin = "MayaPype" - if attributes.get("useMayaBatch", True): - maya_render_plugin = "MayaBatch" + maya_render_plugin = "MayaBatch" options["mayaRenderPlugin"] = maya_render_plugin diff --git a/openpype/hosts/maya/plugins/publish/extract_look.py b/openpype/hosts/maya/plugins/publish/extract_look.py index 79488a372c..bdd061578e 100644 --- a/openpype/hosts/maya/plugins/publish/extract_look.py +++ b/openpype/hosts/maya/plugins/publish/extract_look.py @@ -1,13 +1,14 @@ +# -*- coding: utf-8 -*- +"""Maya look extractor.""" import os import sys import json -import copy import tempfile import contextlib import subprocess from collections import OrderedDict -from maya import cmds +from maya import cmds # noqa import pyblish.api import avalon.maya @@ -22,23 +23,38 @@ HARDLINK = 2 def find_paths_by_hash(texture_hash): - # Find the texture hash key in the dictionary and all paths that - # originate from it. + """Find the texture hash key in the dictionary. + + All paths that originate from it. + + Args: + texture_hash (str): Hash of the texture. + + Return: + str: path to texture if found. + + """ key = "data.sourceHashes.{0}".format(texture_hash) return io.distinct(key, {"type": "version"}) def maketx(source, destination, *args): - """Make .tx using maketx with some default settings. + """Make `.tx` using `maketx` with some default settings. + The settings are based on default as used in Arnold's txManager in the scene. This function requires the `maketx` executable to be on the `PATH`. + Args: source (str): Path to source file. destination (str): Writing destination path. - """ + *args: Additional arguments for `maketx`. + Returns: + str: Output of `maketx` command. + + """ cmd = [ "maketx", "-v", # verbose @@ -56,7 +72,7 @@ def maketx(source, destination, *args): cmd = " ".join(cmd) - CREATE_NO_WINDOW = 0x08000000 + CREATE_NO_WINDOW = 0x08000000 # noqa kwargs = dict(args=cmd, stderr=subprocess.STDOUT) if sys.platform == "win32": @@ -118,12 +134,58 @@ class ExtractLook(openpype.api.Extractor): hosts = ["maya"] families = ["look"] order = pyblish.api.ExtractorOrder + 0.2 + scene_type = "ma" + + @staticmethod + def get_renderer_name(): + """Get renderer name from Maya. + + Returns: + str: Renderer name. + + """ + renderer = cmds.getAttr( + "defaultRenderGlobals.currentRenderer" + ).lower() + # handle various renderman names + if renderer.startswith("renderman"): + renderer = "renderman" + return renderer + + def get_maya_scene_type(self, instance): + """Get Maya scene type from settings. + + Args: + instance (pyblish.api.Instance): Instance with collected + project settings. + + """ + ext_mapping = ( + instance.context.data["project_settings"]["maya"]["ext_mapping"] + ) + if ext_mapping: + self.log.info("Looking in settings for scene type ...") + # use extension mapping for first family found + for family in self.families: + try: + self.scene_type = ext_mapping[family] + self.log.info( + "Using {} as scene type".format(self.scene_type)) + break + except KeyError: + # no preset found + pass def process(self, instance): + """Plugin entry point. + Args: + instance: Instance to process. + + """ # Define extract output file path dir_path = self.staging_dir(instance) - maya_fname = "{0}.ma".format(instance.name) + maya_fname = "{0}.{1}".format(instance.name, self.scene_type) json_fname = "{0}.json".format(instance.name) # Make texture dump folder @@ -148,7 +210,7 @@ class ExtractLook(openpype.api.Extractor): # Collect all unique files used in the resources files = set() - files_metadata = dict() + files_metadata = {} for resource in resources: # Preserve color space values (force value after filepath change) # This will also trigger in the same order at end of context to @@ -162,35 +224,33 @@ class ExtractLook(openpype.api.Extractor): # files.update(os.path.normpath(f)) # Process the resource files - transfers = list() - hardlinks = list() - hashes = dict() - forceCopy = instance.data.get("forceCopy", False) + transfers = [] + hardlinks = [] + hashes = {} + force_copy = instance.data.get("forceCopy", False) self.log.info(files) for filepath in files_metadata: - cspace = files_metadata[filepath]["color_space"] - linearise = False - if do_maketx: - if cspace == "sRGB": - linearise = True - # set its file node to 'raw' as tx will be linearized - files_metadata[filepath]["color_space"] = "raw" + linearize = False + if do_maketx and files_metadata[filepath]["color_space"] == "sRGB": # noqa: E501 + linearize = True + # set its file node to 'raw' as tx will be linearized + files_metadata[filepath]["color_space"] = "raw" - source, mode, hash = self._process_texture( + source, mode, texture_hash = self._process_texture( filepath, do_maketx, staging=dir_path, - linearise=linearise, - force=forceCopy + linearize=linearize, + force=force_copy ) destination = self.resource_destination(instance, source, do_maketx) # Force copy is specified. - if forceCopy: + if force_copy: mode = COPY if mode == COPY: @@ -202,10 +262,10 @@ class ExtractLook(openpype.api.Extractor): # Store the hashes from hash to destination to include in the # database - hashes[hash] = destination + hashes[texture_hash] = destination # Remap the resources to the destination path (change node attributes) - destinations = dict() + destinations = {} remap = OrderedDict() # needs to be ordered, see color space values for resource in resources: source = os.path.normpath(resource["source"]) @@ -222,7 +282,7 @@ class ExtractLook(openpype.api.Extractor): color_space_attr = resource["node"] + ".colorSpace" color_space = cmds.getAttr(color_space_attr) if files_metadata[source]["color_space"] == "raw": - # set colorpsace to raw if we linearized it + # set color space to raw if we linearized it color_space = "Raw" # Remap file node filename to destination attr = resource["attribute"] @@ -267,11 +327,11 @@ class ExtractLook(openpype.api.Extractor): json.dump(data, f) if "files" not in instance.data: - instance.data["files"] = list() + instance.data["files"] = [] if "hardlinks" not in instance.data: - instance.data["hardlinks"] = list() + instance.data["hardlinks"] = [] if "transfers" not in instance.data: - instance.data["transfers"] = list() + instance.data["transfers"] = [] instance.data["files"].append(maya_fname) instance.data["files"].append(json_fname) @@ -311,14 +371,26 @@ class ExtractLook(openpype.api.Extractor): maya_path)) def resource_destination(self, instance, filepath, do_maketx): - anatomy = instance.context.data["anatomy"] + """Get resource destination path. + This is utility function to change path if resource file name is + changed by some external tool like `maketx`. + + Args: + instance: Current Instance. + filepath (str): Resource path + do_maketx (bool): Flag if resource is processed by `maketx`. + + Returns: + str: Path to resource file + + """ resources_dir = instance.data["resourcesDir"] # Compute destination location basename, ext = os.path.splitext(os.path.basename(filepath)) - # If maketx then the texture will always end with .tx + # If `maketx` then the texture will always end with .tx if do_maketx: ext = ".tx" @@ -326,7 +398,7 @@ class ExtractLook(openpype.api.Extractor): resources_dir, basename + ext ) - def _process_texture(self, filepath, do_maketx, staging, linearise, force): + def _process_texture(self, filepath, do_maketx, staging, linearize, force): """Process a single texture file on disk for publishing. This will: 1. Check whether it's already published, if so it will do hardlink @@ -363,7 +435,7 @@ class ExtractLook(openpype.api.Extractor): # Produce .tx file in staging if source file is not .tx converted = os.path.join(staging, "resources", fname + ".tx") - if linearise: + if linearize: self.log.info("tx: converting sRGB -> linear") colorconvert = "--colorconvert sRGB linear" else: diff --git a/openpype/hosts/maya/plugins/publish/extract_redshift_proxy.py b/openpype/hosts/maya/plugins/publish/extract_redshift_proxy.py new file mode 100644 index 0000000000..7c9e201986 --- /dev/null +++ b/openpype/hosts/maya/plugins/publish/extract_redshift_proxy.py @@ -0,0 +1,82 @@ +# -*- coding: utf-8 -*- +"""Redshift Proxy extractor.""" +import os + +import avalon.maya +import openpype.api + +from maya import cmds + + +class ExtractRedshiftProxy(openpype.api.Extractor): + """Extract the content of the instance to a redshift proxy file.""" + + label = "Redshift Proxy (.rs)" + hosts = ["maya"] + families = ["redshiftproxy"] + + def process(self, instance): + """Extractor entry point.""" + + staging_dir = self.staging_dir(instance) + file_name = "{}.rs".format(instance.name) + file_path = os.path.join(staging_dir, file_name) + + anim_on = instance.data["animation"] + rs_options = "exportConnectivity=0;enableCompression=1;keepUnused=0;" + repr_files = file_name + + if not anim_on: + # Remove animation information because it is not required for + # non-animated subsets + instance.data.pop("proxyFrameStart", None) + instance.data.pop("proxyFrameEnd", None) + + else: + start_frame = instance.data["proxyFrameStart"] + end_frame = instance.data["proxyFrameEnd"] + rs_options = "{}startFrame={};endFrame={};frameStep={};".format( + rs_options, start_frame, + end_frame, instance.data["proxyFrameStep"] + ) + + root, ext = os.path.splitext(file_path) + # Padding is taken from number of digits of the end_frame. + # Not sure where Redshift is taking it. + repr_files = [ + "{}.{}{}".format(root, str(frame).rjust(4, "0"), ext) # noqa: E501 + for frame in range( + int(start_frame), + int(end_frame) + 1, + int(instance.data["proxyFrameStep"]), + )] + # vertex_colors = instance.data.get("vertexColors", False) + + # Write out rs file + self.log.info("Writing: '%s'" % file_path) + with avalon.maya.maintained_selection(): + cmds.select(instance.data["setMembers"], noExpand=True) + cmds.file(file_path, + pr=False, + force=True, + type="Redshift Proxy", + exportSelected=True, + options=rs_options) + + if "representations" not in instance.data: + instance.data["representations"] = [] + + self.log.debug("Files: {}".format(repr_files)) + + representation = { + 'name': 'rs', + 'ext': 'rs', + 'files': repr_files, + "stagingDir": staging_dir, + } + if anim_on: + representation["frameStart"] = instance.data["proxyFrameStart"] + instance.data["representations"].append(representation) + + self.log.info("Extracted instance '%s' to: %s" + % (instance.name, staging_dir)) diff --git a/openpype/hosts/maya/plugins/publish/extract_vrayscene.py b/openpype/hosts/maya/plugins/publish/extract_vrayscene.py index d3a3df6b1c..c9edfc8343 100644 --- a/openpype/hosts/maya/plugins/publish/extract_vrayscene.py +++ b/openpype/hosts/maya/plugins/publish/extract_vrayscene.py @@ -5,7 +5,7 @@ import re import avalon.maya import openpype.api -from openpype.hosts.maya.render_setup_tools import export_in_rs_layer +from openpype.hosts.maya.api.render_setup_tools import export_in_rs_layer from maya import cmds diff --git a/openpype/hosts/maya/plugins/publish/validate_look_sets.py b/openpype/hosts/maya/plugins/publish/validate_look_sets.py index 48431d0906..5e737ca876 100644 --- a/openpype/hosts/maya/plugins/publish/validate_look_sets.py +++ b/openpype/hosts/maya/plugins/publish/validate_look_sets.py @@ -73,8 +73,10 @@ class ValidateLookSets(pyblish.api.InstancePlugin): # check if any objectSets are not present ion the relationships missing_sets = [s for s in sets if s not in relationships] if missing_sets: - for set in missing_sets: - if '_SET' not in set: + for missing_set in missing_sets: + cls.log.debug(missing_set) + + if '_SET' not in missing_set: # A set of this node is not coming along, this is wrong! cls.log.error("Missing sets '{}' for node " "'{}'".format(missing_sets, node)) @@ -82,8 +84,8 @@ class ValidateLookSets(pyblish.api.InstancePlugin): continue # Ensure the node is in the sets that are collected - for shaderset, data in relationships.items(): - if shaderset not in sets: + for shader_set, data in relationships.items(): + if shader_set not in sets: # no need to check for a set if the node # isn't in it anyway continue @@ -94,7 +96,7 @@ class ValidateLookSets(pyblish.api.InstancePlugin): # The node is not found in the collected set # relationships cls.log.error("Missing '{}' in collected set node " - "'{}'".format(node, shaderset)) + "'{}'".format(node, shader_set)) invalid.append(node) continue diff --git a/openpype/hosts/maya/plugins/publish/validate_unreal_mesh_triangulated.py b/openpype/hosts/maya/plugins/publish/validate_unreal_mesh_triangulated.py index 1c6aa3078e..b2ef174374 100644 --- a/openpype/hosts/maya/plugins/publish/validate_unreal_mesh_triangulated.py +++ b/openpype/hosts/maya/plugins/publish/validate_unreal_mesh_triangulated.py @@ -8,7 +8,7 @@ import openpype.api class ValidateUnrealMeshTriangulated(pyblish.api.InstancePlugin): """Validate if mesh is made of triangles for Unreal Engine""" - order = openpype.api.ValidateMeshOder + order = openpype.api.ValidateMeshOrder hosts = ["maya"] families = ["unrealStaticMesh"] category = "geometry" diff --git a/openpype/hosts/maya/startup/userSetup.py b/openpype/hosts/maya/startup/userSetup.py index d556a89fa3..6d27c66882 100644 --- a/openpype/hosts/maya/startup/userSetup.py +++ b/openpype/hosts/maya/startup/userSetup.py @@ -10,7 +10,6 @@ print("starting OpenPype usersetup") settings = get_project_settings(os.environ['AVALON_PROJECT']) shelf_preset = settings['maya'].get('project_shelf') - if shelf_preset: project = os.environ["AVALON_PROJECT"] @@ -23,7 +22,7 @@ if shelf_preset: print(import_string) exec(import_string) -cmds.evalDeferred("mlib.shelf(name=shelf_preset['name'], iconPath=icon_path, preset=shelf_preset)") + cmds.evalDeferred("mlib.shelf(name=shelf_preset['name'], iconPath=icon_path, preset=shelf_preset)") print("finished OpenPype usersetup") diff --git a/openpype/hosts/nuke/api/__init__.py b/openpype/hosts/nuke/api/__init__.py index c80507e7ea..bd7a95f916 100644 --- a/openpype/hosts/nuke/api/__init__.py +++ b/openpype/hosts/nuke/api/__init__.py @@ -106,7 +106,7 @@ def on_pyblish_instance_toggled(instance, old_value, new_value): log.info("instance toggle: {}, old_value: {}, new_value:{} ".format( instance, old_value, new_value)) - from avalon.api.nuke import ( + from avalon.nuke import ( viewer_update_and_undo_stop, add_publish_knob ) diff --git a/openpype/hosts/nuke/api/lib.py b/openpype/hosts/nuke/api/lib.py index d95af6ec4c..7ef5401292 100644 --- a/openpype/hosts/nuke/api/lib.py +++ b/openpype/hosts/nuke/api/lib.py @@ -1,6 +1,8 @@ import os import re import sys +import six +import platform from collections import OrderedDict @@ -19,7 +21,6 @@ from openpype.api import ( get_hierarchy, get_asset, get_current_project_settings, - config, ApplicationManager ) @@ -29,36 +30,34 @@ from .utils import set_context_favorites log = Logger().get_logger(__name__) -self = sys.modules[__name__] -self._project = None -self.workfiles_launched = False -self._node_tab_name = "{}".format(os.getenv("AVALON_LABEL") or "Avalon") +opnl = sys.modules[__name__] +opnl._project = None +opnl.project_name = os.getenv("AVALON_PROJECT") +opnl.workfiles_launched = False +opnl._node_tab_name = "{}".format(os.getenv("AVALON_LABEL") or "Avalon") -def get_node_imageio_setting(**kwarg): +def get_created_node_imageio_setting(**kwarg): ''' Get preset data for dataflow (fileType, compression, bitDepth) ''' - log.info(kwarg) - host = str(kwarg.get("host", "nuke")) + log.debug(kwarg) nodeclass = kwarg.get("nodeclass", None) creator = kwarg.get("creator", None) - project_name = os.getenv("AVALON_PROJECT") - assert any([host, nodeclass]), nuke.message( + assert any([creator, nodeclass]), nuke.message( "`{}`: Missing mandatory kwargs `host`, `cls`".format(__file__)) - imageio_nodes = (get_anatomy_settings(project_name) - ["imageio"] - .get(host, None) - ["nodes"] - ["requiredNodes"] - ) + imageio = get_anatomy_settings(opnl.project_name)["imageio"] + imageio_nodes = imageio["nuke"]["nodes"]["requiredNodes"] + imageio_node = None for node in imageio_nodes: log.info(node) - if node["nukeNodeClass"] == nodeclass: - if creator in node["plugins"]: - imageio_node = node + if (node["nukeNodeClass"] != nodeclass) and ( + creator not in node["plugins"]): + continue + + imageio_node = node log.info("ImageIO node: {}".format(imageio_node)) return imageio_node @@ -67,12 +66,9 @@ def get_node_imageio_setting(**kwarg): def get_imageio_input_colorspace(filename): ''' Get input file colorspace based on regex in settings. ''' - imageio_regex_inputs = (get_anatomy_settings(os.getenv("AVALON_PROJECT")) - ["imageio"] - ["nuke"] - ["regexInputs"] - ["inputs"] - ) + imageio_regex_inputs = ( + get_anatomy_settings(opnl.project_name) + ["imageio"]["nuke"]["regexInputs"]["inputs"]) preset_clrsp = None for regexInput in imageio_regex_inputs: @@ -104,40 +100,39 @@ def check_inventory_versions(): """ # get all Loader nodes by avalon attribute metadata for each in nuke.allNodes(): - if each.Class() == 'Read': - container = avalon.nuke.parse_container(each) + container = avalon.nuke.parse_container(each) - if container: - node = nuke.toNode(container["objectName"]) - avalon_knob_data = avalon.nuke.read( - node) + if container: + node = nuke.toNode(container["objectName"]) + avalon_knob_data = avalon.nuke.read( + node) - # get representation from io - representation = io.find_one({ - "type": "representation", - "_id": io.ObjectId(avalon_knob_data["representation"]) - }) + # get representation from io + representation = io.find_one({ + "type": "representation", + "_id": io.ObjectId(avalon_knob_data["representation"]) + }) - # Get start frame from version data - version = io.find_one({ - "type": "version", - "_id": representation["parent"] - }) + # Get start frame from version data + version = io.find_one({ + "type": "version", + "_id": representation["parent"] + }) - # get all versions in list - versions = io.find({ - "type": "version", - "parent": version["parent"] - }).distinct('name') + # get all versions in list + versions = io.find({ + "type": "version", + "parent": version["parent"] + }).distinct('name') - max_version = max(versions) + max_version = max(versions) - # check the available version and do match - # change color of node if not max verion - if version.get("name") not in [max_version]: - node["tile_color"].setValue(int("0xd84f20ff", 16)) - else: - node["tile_color"].setValue(int("0x4ecd25ff", 16)) + # check the available version and do match + # change color of node if not max verion + if version.get("name") not in [max_version]: + node["tile_color"].setValue(int("0xd84f20ff", 16)) + else: + node["tile_color"].setValue(int("0x4ecd25ff", 16)) def writes_version_sync(): @@ -153,34 +148,33 @@ def writes_version_sync(): except Exception: return - for each in nuke.allNodes(): - if each.Class() == 'Write': - # check if the node is avalon tracked - if self._node_tab_name not in each.knobs(): + for each in nuke.allNodes(filter="Write"): + # check if the node is avalon tracked + if opnl._node_tab_name not in each.knobs(): + continue + + avalon_knob_data = avalon.nuke.read( + each) + + try: + if avalon_knob_data['families'] not in ["render"]: + log.debug(avalon_knob_data['families']) continue - avalon_knob_data = avalon.nuke.read( - each) + node_file = each['file'].value() - try: - if avalon_knob_data['families'] not in ["render"]: - log.debug(avalon_knob_data['families']) - continue + node_version = "v" + get_version_from_path(node_file) + log.debug("node_version: {}".format(node_version)) - node_file = each['file'].value() - - node_version = "v" + get_version_from_path(node_file) - log.debug("node_version: {}".format(node_version)) - - node_new_file = node_file.replace(node_version, new_version) - each['file'].setValue(node_new_file) - if not os.path.isdir(os.path.dirname(node_new_file)): - log.warning("Path does not exist! I am creating it.") - os.makedirs(os.path.dirname(node_new_file)) - except Exception as e: - log.warning( - "Write node: `{}` has no version in path: {}".format( - each.name(), e)) + node_new_file = node_file.replace(node_version, new_version) + each['file'].setValue(node_new_file) + if not os.path.isdir(os.path.dirname(node_new_file)): + log.warning("Path does not exist! I am creating it.") + os.makedirs(os.path.dirname(node_new_file)) + except Exception as e: + log.warning( + "Write node: `{}` has no version in path: {}".format( + each.name(), e)) def version_up_script(): @@ -201,24 +195,22 @@ def check_subsetname_exists(nodes, subset_name): Returns: bool: True of False """ - result = next((True for n in nodes - if subset_name in avalon.nuke.read(n).get("subset", "")), False) - return result + return next((True for n in nodes + if subset_name in avalon.nuke.read(n).get("subset", "")), + False) def get_render_path(node): ''' Generate Render path from presets regarding avalon knob data ''' - data = dict() - data['avalon'] = avalon.nuke.read( - node) - + data = {'avalon': avalon.nuke.read(node)} data_preset = { - "class": data['avalon']['family'], - "preset": data['avalon']['families'] + "nodeclass": data['avalon']['family'], + "families": [data['avalon']['families']], + "creator": data['avalon']['creator'] } - nuke_imageio_writes = get_node_imageio_setting(**data_preset) + nuke_imageio_writes = get_created_node_imageio_setting(**data_preset) application = lib.get_application(os.environ["AVALON_APP_NAME"]) data.update({ @@ -324,7 +316,7 @@ def create_write_node(name, data, input=None, prenodes=None, review=True): node (obj): group node with avalon data as Knobs ''' - imageio_writes = get_node_imageio_setting(**data) + imageio_writes = get_created_node_imageio_setting(**data) app_manager = ApplicationManager() app_name = os.environ.get("AVALON_APP_NAME") if app_name: @@ -367,8 +359,7 @@ def create_write_node(name, data, input=None, prenodes=None, review=True): # adding dataflow template log.debug("imageio_writes: `{}`".format(imageio_writes)) for knob in imageio_writes["knobs"]: - if knob["name"] not in ["_id", "_previous"]: - _data.update({knob["name"]: knob["value"]}) + _data.update({knob["name"]: knob["value"]}) _data = anlib.fix_data_for_node_create(_data) @@ -390,16 +381,19 @@ def create_write_node(name, data, input=None, prenodes=None, review=True): "inputName": input.name()}) prev_node = nuke.createNode( "Input", "name {}".format(input.name())) + prev_node.hideControlPanel() else: # generic input node connected to nothing prev_node = nuke.createNode( "Input", "name {}".format("rgba")) + prev_node.hideControlPanel() # creating pre-write nodes `prenodes` if prenodes: for name, klass, properties, set_output_to in prenodes: # create node now_node = nuke.createNode(klass, "name {}".format(name)) + now_node.hideControlPanel() # add data to knob for k, v in properties: @@ -421,17 +415,21 @@ def create_write_node(name, data, input=None, prenodes=None, review=True): for i, node_name in enumerate(set_output_to): input_node = nuke.createNode( "Input", "name {}".format(node_name)) + input_node.hideControlPanel() connections.append({ "node": nuke.toNode(node_name), "inputName": node_name}) now_node.setInput(1, input_node) + elif isinstance(set_output_to, str): input_node = nuke.createNode( "Input", "name {}".format(node_name)) + input_node.hideControlPanel() connections.append({ "node": nuke.toNode(set_output_to), "inputName": set_output_to}) now_node.setInput(0, input_node) + else: now_node.setInput(0, prev_node) @@ -443,7 +441,7 @@ def create_write_node(name, data, input=None, prenodes=None, review=True): "inside_{}".format(name), **_data ) - + write_node.hideControlPanel() # connect to previous node now_node.setInput(0, prev_node) @@ -451,6 +449,7 @@ def create_write_node(name, data, input=None, prenodes=None, review=True): prev_node = now_node now_node = nuke.createNode("Output", "name Output1") + now_node.hideControlPanel() # connect to previous node now_node.setInput(0, prev_node) @@ -498,7 +497,7 @@ def create_write_node(name, data, input=None, prenodes=None, review=True): add_deadline_tab(GN) # open the our Tab as default - GN[self._node_tab_name].setFlag(0) + GN[opnl._node_tab_name].setFlag(0) # set tile color tile_color = _data.get("tile_color", "0xff0000ff") @@ -621,7 +620,7 @@ class WorkfileSettings(object): root_node=None, nodes=None, **kwargs): - self._project = kwargs.get( + opnl._project = kwargs.get( "project") or io.find_one({"type": "project"}) self._asset = kwargs.get("asset_name") or api.Session["AVALON_ASSET"] self._asset_entity = get_asset(self._asset) @@ -664,8 +663,7 @@ class WorkfileSettings(object): ] erased_viewers = [] - for v in [n for n in self._nodes - if "Viewer" in n.Class()]: + for v in nuke.allNodes(filter="Viewer"): v['viewerProcess'].setValue(str(viewer_dict["viewerProcess"])) if str(viewer_dict["viewerProcess"]) \ not in v['viewerProcess'].value(): @@ -709,7 +707,7 @@ class WorkfileSettings(object): log.error(msg) nuke.message(msg) - log.debug(">> root_dict: {}".format(root_dict)) + log.warning(">> root_dict: {}".format(root_dict)) # first set OCIO if self._root_node["colorManagement"].value() \ @@ -731,41 +729,41 @@ class WorkfileSettings(object): # third set ocio custom path if root_dict.get("customOCIOConfigPath"): - self._root_node["customOCIOConfigPath"].setValue( - str(root_dict["customOCIOConfigPath"]).format( - **os.environ - ).replace("\\", "/") - ) - log.debug("nuke.root()['{}'] changed to: {}".format( - "customOCIOConfigPath", root_dict["customOCIOConfigPath"])) - root_dict.pop("customOCIOConfigPath") + unresolved_path = root_dict["customOCIOConfigPath"] + ocio_paths = unresolved_path[platform.system().lower()] + + resolved_path = None + for ocio_p in ocio_paths: + resolved_path = str(ocio_p).format(**os.environ) + if not os.path.exists(resolved_path): + continue + + if resolved_path: + self._root_node["customOCIOConfigPath"].setValue( + str(resolved_path).replace("\\", "/") + ) + log.debug("nuke.root()['{}'] changed to: {}".format( + "customOCIOConfigPath", resolved_path)) + root_dict.pop("customOCIOConfigPath") # then set the rest for knob, value in root_dict.items(): + # skip unfilled ocio config path + # it will be dict in value + if isinstance(value, dict): + continue if self._root_node[knob].value() not in value: self._root_node[knob].setValue(str(value)) log.debug("nuke.root()['{}'] changed to: {}".format( knob, value)) - def set_writes_colorspace(self, write_dict): + def set_writes_colorspace(self): ''' Adds correct colorspace to write node dict - Arguments: - write_dict (dict): nuke write node as dictionary - ''' - # scene will have fixed colorspace following presets for the project - if not isinstance(write_dict, dict): - msg = "set_root_colorspace(): argument should be dictionary" - log.error(msg) - return - from avalon.nuke import read - for node in nuke.allNodes(): - - if node.Class() in ["Viewer", "Dot"]: - continue + for node in nuke.allNodes(filter="Group"): # get data from avalon knob avalon_knob_data = read(node) @@ -781,49 +779,63 @@ class WorkfileSettings(object): if avalon_knob_data.get("families"): families.append(avalon_knob_data.get("families")) - # except disabled nodes but exclude backdrops in test - for fmly, knob in write_dict.items(): - write = None - if (fmly in families): - # Add all nodes in group instances. - if node.Class() == "Group": - node.begin() - for x in nuke.allNodes(): - if x.Class() == "Write": - write = x - node.end() - elif node.Class() == "Write": - write = node - else: - log.warning("Wrong write node Class") + data_preset = { + "nodeclass": avalon_knob_data["family"], + "families": families, + "creator": avalon_knob_data['creator'] + } - write["colorspace"].setValue(str(knob["colorspace"])) - log.info( - "Setting `{0}` to `{1}`".format( - write.name(), - knob["colorspace"])) + nuke_imageio_writes = get_created_node_imageio_setting( + **data_preset) - def set_reads_colorspace(self, reads): + log.debug("nuke_imageio_writes: `{}`".format(nuke_imageio_writes)) + + if not nuke_imageio_writes: + return + + write_node = None + + # get into the group node + node.begin() + for x in nuke.allNodes(): + if x.Class() == "Write": + write_node = x + node.end() + + if not write_node: + return + + # write all knobs to node + for knob in nuke_imageio_writes["knobs"]: + value = knob["value"] + if isinstance(value, six.text_type): + value = str(value) + if str(value).startswith("0x"): + value = int(value, 16) + + write_node[knob["name"]].setValue(value) + + + def set_reads_colorspace(self, read_clrs_inputs): """ Setting colorspace to Read nodes Looping trought all read nodes and tries to set colorspace based on regex rules in presets """ - changes = dict() + changes = {} for n in nuke.allNodes(): file = nuke.filename(n) - if not n.Class() == "Read": + if n.Class() != "Read": continue - # load nuke presets for Read's colorspace - read_clrs_presets = config.get_init_presets()["colorspace"].get( - "nuke", {}).get("read", {}) - # check if any colorspace presets for read is mathing - preset_clrsp = next((read_clrs_presets[k] - for k in read_clrs_presets - if bool(re.search(k, file))), - None) + preset_clrsp = None + + for input in read_clrs_inputs: + if not bool(re.search(input["regex"], file)): + continue + preset_clrsp = input["colorspace"] + log.debug(preset_clrsp) if preset_clrsp is not None: current = n["colorspace"].value() @@ -857,13 +869,15 @@ class WorkfileSettings(object): def set_colorspace(self): ''' Setting colorpace following presets ''' - nuke_colorspace = config.get_init_presets( - )["colorspace"].get("nuke", None) + # get imageio + imageio = get_anatomy_settings(opnl.project_name)["imageio"] + nuke_colorspace = imageio["nuke"] try: - self.set_root_colorspace(nuke_colorspace["root"]) + self.set_root_colorspace(nuke_colorspace["workfile"]) except AttributeError: - msg = "set_colorspace(): missing `root` settings in template" + msg = "set_colorspace(): missing `workfile` settings in template" + nuke.message(msg) try: self.set_viewers_colorspace(nuke_colorspace["viewer"]) @@ -873,15 +887,14 @@ class WorkfileSettings(object): log.error(msg) try: - self.set_writes_colorspace(nuke_colorspace["write"]) - except AttributeError: - msg = "set_colorspace(): missing `write` settings in template" - nuke.message(msg) - log.error(msg) + self.set_writes_colorspace() + except AttributeError as _error: + nuke.message(_error) + log.error(_error) - reads = nuke_colorspace.get("read") - if reads: - self.set_reads_colorspace(reads) + read_clrs_inputs = nuke_colorspace["regexInputs"].get("inputs", []) + if read_clrs_inputs: + self.set_reads_colorspace(read_clrs_inputs) try: for key in nuke_colorspace: @@ -1063,15 +1076,14 @@ class WorkfileSettings(object): def set_favorites(self): work_dir = os.getenv("AVALON_WORKDIR") asset = os.getenv("AVALON_ASSET") - project = os.getenv("AVALON_PROJECT") favorite_items = OrderedDict() # project # get project's root and split to parts projects_root = os.path.normpath(work_dir.split( - project)[0]) + opnl.project_name)[0]) # add project name - project_dir = os.path.join(projects_root, project) + "/" + project_dir = os.path.join(projects_root, opnl.project_name) + "/" # add to favorites favorite_items.update({"Project dir": project_dir.replace("\\", "/")}) @@ -1121,13 +1133,13 @@ def get_write_node_template_attr(node): data['avalon'] = avalon.nuke.read( node) data_preset = { - "class": data['avalon']['family'], - "families": data['avalon']['families'], - "preset": data['avalon']['families'] # omit < 2.0.0v + "nodeclass": data['avalon']['family'], + "families": [data['avalon']['families']], + "creator": data['avalon']['creator'] } # get template data - nuke_imageio_writes = get_node_imageio_setting(**data_preset) + nuke_imageio_writes = get_created_node_imageio_setting(**data_preset) # collecting correct data correct_data = OrderedDict({ @@ -1223,8 +1235,7 @@ class ExporterReview: """ anlib.reset_selection() ipn_orig = None - for v in [n for n in nuke.allNodes() - if "Viewer" == n.Class()]: + for v in nuke.allNodes(filter="Viewer"): ip = v['input_process'].getValue() ipn = v['input_process_node'].getValue() if "VIEWER_INPUT" not in ipn and ip: @@ -1637,8 +1648,8 @@ def launch_workfiles_app(): if not open_at_start: return - if not self.workfiles_launched: - self.workfiles_launched = True + if not opnl.workfiles_launched: + opnl.workfiles_launched = True workfiles.show(os.environ["AVALON_WORKDIR"]) diff --git a/openpype/hosts/nuke/api/menu.py b/openpype/hosts/nuke/api/menu.py index 2317066528..021ea04159 100644 --- a/openpype/hosts/nuke/api/menu.py +++ b/openpype/hosts/nuke/api/menu.py @@ -26,9 +26,9 @@ def install(): menu.addCommand( name, workfiles.show, - index=(rm_item[0]) + index=2 ) - + menu.addSeparator(index=3) # replace reset resolution from avalon core to pype's name = "Reset Resolution" new_name = "Set Resolution" @@ -63,16 +63,7 @@ def install(): # add colorspace menu item name = "Set Colorspace" menu.addCommand( - name, lambda: WorkfileSettings().set_colorspace(), - index=(rm_item[0] + 2) - ) - log.debug("Adding menu item: {}".format(name)) - - # add workfile builder menu item - name = "Build Workfile" - menu.addCommand( - name, lambda: BuildWorkfile().process(), - index=(rm_item[0] + 7) + name, lambda: WorkfileSettings().set_colorspace() ) log.debug("Adding menu item: {}".format(name)) @@ -80,11 +71,20 @@ def install(): name = "Apply All Settings" menu.addCommand( name, - lambda: WorkfileSettings().set_context_settings(), - index=(rm_item[0] + 3) + lambda: WorkfileSettings().set_context_settings() ) log.debug("Adding menu item: {}".format(name)) + menu.addSeparator() + + # add workfile builder menu item + name = "Build Workfile" + menu.addCommand( + name, lambda: BuildWorkfile().process() + ) + log.debug("Adding menu item: {}".format(name)) + + # adding shortcuts add_shortcuts_from_presets() diff --git a/openpype/hosts/nuke/plugins/create/create_write_prerender.py b/openpype/hosts/nuke/plugins/create/create_write_prerender.py index 38d1a0c2ed..6e1a2ddd96 100644 --- a/openpype/hosts/nuke/plugins/create/create_write_prerender.py +++ b/openpype/hosts/nuke/plugins/create/create_write_prerender.py @@ -77,10 +77,14 @@ class CreateWritePrerender(plugin.PypeCreator): write_data = { "nodeclass": self.n_class, "families": [self.family], - "avalon": self.data, - "creator": self.__class__.__name__ + "avalon": self.data } + # add creator data + creator_data = {"creator": self.__class__.__name__} + self.data.update(creator_data) + write_data.update(creator_data) + if self.presets.get('fpath_template'): self.log.info("Adding template path from preset") write_data.update( diff --git a/openpype/hosts/nuke/plugins/create/create_write_render.py b/openpype/hosts/nuke/plugins/create/create_write_render.py index 72f851f19c..04983e9c75 100644 --- a/openpype/hosts/nuke/plugins/create/create_write_render.py +++ b/openpype/hosts/nuke/plugins/create/create_write_render.py @@ -80,10 +80,14 @@ class CreateWriteRender(plugin.PypeCreator): write_data = { "nodeclass": self.n_class, "families": [self.family], - "avalon": self.data, - "creator": self.__class__.__name__ + "avalon": self.data } + # add creator data + creator_data = {"creator": self.__class__.__name__} + self.data.update(creator_data) + write_data.update(creator_data) + if self.presets.get('fpath_template'): self.log.info("Adding template path from preset") write_data.update( diff --git a/openpype/hosts/nuke/plugins/load/load_mov.py b/openpype/hosts/nuke/plugins/load/load_mov.py index 92726913af..8b8c5d0c10 100644 --- a/openpype/hosts/nuke/plugins/load/load_mov.py +++ b/openpype/hosts/nuke/plugins/load/load_mov.py @@ -135,12 +135,14 @@ class LoadMov(api.Loader): read_name = self.node_name_template.format(**name_data) - # Create the Loader with the filename path set + read_node = nuke.createNode( + "Read", + "name {}".format(read_name) + ) + + # to avoid multiple undo steps for rest of process + # we will switch off undo-ing with viewer_update_and_undo_stop(): - read_node = nuke.createNode( - "Read", - "name {}".format(read_name) - ) read_node["file"].setValue(file) read_node["origfirst"].setValue(first) diff --git a/openpype/hosts/nuke/plugins/load/load_sequence.py b/openpype/hosts/nuke/plugins/load/load_sequence.py index df7aa55cd1..71f0b8c298 100644 --- a/openpype/hosts/nuke/plugins/load/load_sequence.py +++ b/openpype/hosts/nuke/plugins/load/load_sequence.py @@ -139,11 +139,15 @@ class LoadSequence(api.Loader): read_name = self.node_name_template.format(**name_data) # Create the Loader with the filename path set + + # TODO: it might be universal read to img/geo/camera + r = nuke.createNode( + "Read", + "name {}".format(read_name)) + + # to avoid multiple undo steps for rest of process + # we will switch off undo-ing with viewer_update_and_undo_stop(): - # TODO: it might be universal read to img/geo/camera - r = nuke.createNode( - "Read", - "name {}".format(read_name)) r["file"].setValue(file) # Set colorspace defined in version data diff --git a/openpype/hosts/nuke/plugins/publish/collect_slate_node.py b/openpype/hosts/nuke/plugins/publish/collect_slate_node.py index 9c7f1b5e95..4257ed3131 100644 --- a/openpype/hosts/nuke/plugins/publish/collect_slate_node.py +++ b/openpype/hosts/nuke/plugins/publish/collect_slate_node.py @@ -34,7 +34,8 @@ class CollectSlate(pyblish.api.InstancePlugin): if slate_node: instance.data["slateNode"] = slate_node instance.data["families"].append("slate") + instance.data["versionData"]["families"].append("slate") self.log.info( "Slate node is in node graph: `{}`".format(slate.name())) self.log.debug( - "__ instance: `{}`".format(instance)) + "__ instance.data: `{}`".format(instance.data)) diff --git a/openpype/hosts/nuke/plugins/publish/precollect_instances.py b/openpype/hosts/nuke/plugins/publish/precollect_instances.py index 92f96ea48d..cdb0589525 100644 --- a/openpype/hosts/nuke/plugins/publish/precollect_instances.py +++ b/openpype/hosts/nuke/plugins/publish/precollect_instances.py @@ -55,11 +55,6 @@ class PreCollectNukeInstances(pyblish.api.ContextPlugin): families_ak = avalon_knob_data.get("families", []) families = list() - if families_ak: - families.append(families_ak.lower()) - - families.append(family) - # except disabled nodes but exclude backdrops in test if ("nukenodes" not in family) and (node["disable"].value()): continue @@ -81,36 +76,33 @@ class PreCollectNukeInstances(pyblish.api.ContextPlugin): # Add all nodes in group instances. if node.Class() == "Group": # only alter families for render family - if "write" in families_ak: + if "write" in families_ak.lower(): target = node["render"].value() if target == "Use existing frames": # Local rendering self.log.info("flagged for no render") - families.append(family) elif target == "Local": # Local rendering self.log.info("flagged for local render") families.append("{}.local".format(family)) + family = families_ak.lower() elif target == "On farm": # Farm rendering self.log.info("flagged for farm render") instance.data["transfer"] = False families.append("{}.farm".format(family)) - - # suffle family to `write` as it is main family - # this will be changed later on in process - if "render" in families: - families.remove("render") - family = "write" - elif "prerender" in families: - families.remove("prerender") - family = "write" + family = families_ak.lower() node.begin() for i in nuke.allNodes(): instance.append(i) node.end() + if not families and families_ak and family not in [ + "render", "prerender"]: + families.append(families_ak.lower()) + + self.log.debug("__ family: `{}`".format(family)) self.log.debug("__ families: `{}`".format(families)) # Get format @@ -124,7 +116,9 @@ class PreCollectNukeInstances(pyblish.api.ContextPlugin): anlib.add_publish_knob(node) # sync workfile version - if not next((f for f in families + _families_test = [family] + families + self.log.debug("__ _families_test: `{}`".format(_families_test)) + if not next((f for f in _families_test if "prerender" in f), None) and self.sync_workfile_version: # get version to instance for integration diff --git a/openpype/hosts/nuke/plugins/publish/precollect_writes.py b/openpype/hosts/nuke/plugins/publish/precollect_writes.py index 57303bd42e..5eaac89e84 100644 --- a/openpype/hosts/nuke/plugins/publish/precollect_writes.py +++ b/openpype/hosts/nuke/plugins/publish/precollect_writes.py @@ -1,4 +1,5 @@ import os +import re import nuke import pyblish.api import openpype.api as pype @@ -14,11 +15,8 @@ class CollectNukeWrites(pyblish.api.InstancePlugin): hosts = ["nuke", "nukeassist"] families = ["write"] - # preset attributes - sync_workfile_version = True - def process(self, instance): - families = instance.data["families"] + _families_test = [instance.data["family"]] + instance.data["families"] node = None for x in instance: @@ -63,7 +61,7 @@ class CollectNukeWrites(pyblish.api.InstancePlugin): int(last_frame) ) - if [fm for fm in families + if [fm for fm in _families_test if fm in ["render", "prerender"]]: if "representations" not in instance.data: instance.data["representations"] = list() @@ -91,9 +89,9 @@ class CollectNukeWrites(pyblish.api.InstancePlugin): collected_frames_len)) # this will only run if slate frame is not already # rendered from previews publishes - if "slate" in instance.data["families"] \ + if "slate" in _families_test \ and (frame_length == collected_frames_len) \ - and ("prerender" not in instance.data["families"]): + and ("prerender" not in _families_test): frame_slate_str = "%0{}d".format( len(str(last_frame))) % (first_frame - 1) slate_frame = collected_frames[0].replace( @@ -107,10 +105,17 @@ class CollectNukeWrites(pyblish.api.InstancePlugin): self.log.debug("couldn't collect frames: {}".format(label)) # Add version data to instance + colorspace = node["colorspace"].value() + + # remove default part of the string + if "default (" in colorspace: + colorspace = re.sub(r"default.\(|\)", "", colorspace) + self.log.debug("colorspace: `{}`".format(colorspace)) + version_data = { "families": [f.replace(".local", "").replace(".farm", "") - for f in families if "write" not in f], - "colorspace": node["colorspace"].value(), + for f in _families_test if "write" not in f], + "colorspace": colorspace } group_node = [x for x in instance if x.Class() == "Group"][0] @@ -135,13 +140,12 @@ class CollectNukeWrites(pyblish.api.InstancePlugin): "frameStartHandle": first_frame, "frameEndHandle": last_frame, "outputType": output_type, - "families": families, - "colorspace": node["colorspace"].value(), + "colorspace": colorspace, "deadlineChunkSize": deadlineChunkSize, "deadlinePriority": deadlinePriority }) - if "prerender" in families: + if "prerender" in _families_test: instance.data.update({ "family": "prerender", "families": [] @@ -166,6 +170,4 @@ class CollectNukeWrites(pyblish.api.InstancePlugin): "filename": api.get_representation_path(repre_doc) }] - self.log.debug("families: {}".format(families)) - self.log.debug("instance.data: {}".format(instance.data)) diff --git a/openpype/hosts/nuke/plugins/publish/validate_rendered_frames.py b/openpype/hosts/nuke/plugins/publish/validate_rendered_frames.py index 21afc5313b..8b71aff1ac 100644 --- a/openpype/hosts/nuke/plugins/publish/validate_rendered_frames.py +++ b/openpype/hosts/nuke/plugins/publish/validate_rendered_frames.py @@ -5,23 +5,50 @@ import clique @pyblish.api.log -class RepairCollectionAction(pyblish.api.Action): - label = "Repair" +class RepairActionBase(pyblish.api.Action): on = "failed" icon = "wrench" + @staticmethod + def get_instance(context, plugin): + # Get the errored instances + failed = [] + for result in context.data["results"]: + if (result["error"] is not None and result["instance"] is not None + and result["instance"] not in failed): + failed.append(result["instance"]) + + # Apply pyblish.logic to get the instances for the plug-in + return pyblish.api.instances_by_plugin(failed, plugin) + + def repair_knob(self, instances, state): + for instance in instances: + files_remove = [os.path.join(instance.data["outputDir"], f) + for r in instance.data.get("representations", []) + for f in r.get("files", []) + ] + self.log.info("Files to be removed: {}".format(files_remove)) + for f in files_remove: + os.remove(f) + self.log.debug("removing file: {}".format(f)) + instance[0]["render"].setValue(state) + self.log.info("Rendering toggled to `{}`".format(state)) + + +class RepairCollectionActionToLocal(RepairActionBase): + label = "Repair > rerender with `Local` machine" + def process(self, context, plugin): - self.log.info(context[0][0]) - files_remove = [os.path.join(context[0].data["outputDir"], f) - for r in context[0].data.get("representations", []) - for f in r.get("files", []) - ] - self.log.info("Files to be removed: {}".format(files_remove)) - for f in files_remove: - os.remove(f) - self.log.debug("removing file: {}".format(f)) - context[0][0]["render"].setValue(True) - self.log.info("Rendering toggled ON") + instances = self.get_instance(context, plugin) + self.repair_knob(instances, "Local") + + +class RepairCollectionActionToFarm(RepairActionBase): + label = "Repair > rerender `On farm` with remote machines" + + def process(self, context, plugin): + instances = self.get_instance(context, plugin) + self.repair_knob(instances, "On farm") class ValidateRenderedFrames(pyblish.api.InstancePlugin): @@ -32,26 +59,28 @@ class ValidateRenderedFrames(pyblish.api.InstancePlugin): label = "Validate rendered frame" hosts = ["nuke", "nukestudio"] - actions = [RepairCollectionAction] + actions = [RepairCollectionActionToLocal, RepairCollectionActionToFarm] + def process(self, instance): - for repre in instance.data.get('representations'): + for repre in instance.data["representations"]: - if not repre.get('files'): + if not repre.get("files"): msg = ("no frames were collected, " "you need to render them") self.log.error(msg) raise ValidationException(msg) collections, remainder = clique.assemble(repre["files"]) - self.log.info('collections: {}'.format(str(collections))) - self.log.info('remainder: {}'.format(str(remainder))) + self.log.info("collections: {}".format(str(collections))) + self.log.info("remainder: {}".format(str(remainder))) collection = collections[0] frame_length = int( - instance.data["frameEndHandle"] - instance.data["frameStartHandle"] + 1 + instance.data["frameEndHandle"] + - instance.data["frameStartHandle"] + 1 ) if frame_length != 1: @@ -65,15 +94,10 @@ class ValidateRenderedFrames(pyblish.api.InstancePlugin): self.log.error(msg) raise ValidationException(msg) - # if len(remainder) != 0: - # msg = "There are some extra files in folder" - # self.log.error(msg) - # raise ValidationException(msg) - collected_frames_len = int(len(collection.indexes)) - self.log.info('frame_length: {}'.format(frame_length)) + self.log.info("frame_length: {}".format(frame_length)) self.log.info( - 'len(collection.indexes): {}'.format(collected_frames_len) + "len(collection.indexes): {}".format(collected_frames_len) ) if ("slate" in instance.data["families"]) \ @@ -84,6 +108,6 @@ class ValidateRenderedFrames(pyblish.api.InstancePlugin): "{} missing frames. Use repair to render all frames" ).format(__name__) - instance.data['collection'] = collection + instance.data["collection"] = collection return diff --git a/openpype/hosts/standalonepublisher/plugins/publish/collect_clear_instances.py b/openpype/hosts/standalonepublisher/plugins/publish/collect_clear_instances.py deleted file mode 100644 index 097e730251..0000000000 --- a/openpype/hosts/standalonepublisher/plugins/publish/collect_clear_instances.py +++ /dev/null @@ -1,21 +0,0 @@ -""" -Optional: - instance.data["remove"] -> mareker for removing -""" -import pyblish.api - - -class CollectClearInstances(pyblish.api.InstancePlugin): - """Clear all marked instances""" - - order = pyblish.api.CollectorOrder + 0.4999 - label = "Clear Instances" - hosts = ["standalonepublisher"] - - def process(self, instance): - self.log.debug( - f"Instance: `{instance}` | " - f"families: `{instance.data['families']}`") - if instance.data.get("remove"): - self.log.info(f"Removing: {instance}") - instance.context.remove(instance) diff --git a/openpype/hosts/tvpaint/api/__init__.py b/openpype/hosts/tvpaint/api/__init__.py index 068559049b..bd9ef51a76 100644 --- a/openpype/hosts/tvpaint/api/__init__.py +++ b/openpype/hosts/tvpaint/api/__init__.py @@ -1,14 +1,15 @@ import os import logging -from avalon.tvpaint.communication_server import register_localization_file -from avalon.tvpaint import pipeline import avalon.api import pyblish.api +from avalon.tvpaint import pipeline +from avalon.tvpaint.communication_server import register_localization_file +from .lib import set_context_settings from openpype.hosts import tvpaint -log = logging.getLogger("openpype.hosts.tvpaint") +log = logging.getLogger(__name__) HOST_DIR = os.path.dirname(os.path.abspath(tvpaint.__file__)) PLUGINS_DIR = os.path.join(HOST_DIR, "plugins") @@ -34,6 +35,18 @@ def on_instance_toggle(instance, old_value, new_value): pipeline._write_instances(current_instances) +def initial_launch(): + # Setup project settings if its the template that's launched. + # TODO also check for template creation when it's possible to define + # templates + last_workfile = os.environ.get("AVALON_LAST_WORKFILE") + if not last_workfile or os.path.exists(last_workfile): + return + + log.info("Setting up project...") + set_context_settings() + + def install(): log.info("OpenPype - Installing TVPaint integration") localization_file = os.path.join(HOST_DIR, "resources", "avalon.loc") @@ -49,6 +62,8 @@ def install(): if on_instance_toggle not in registered_callbacks: pyblish.api.register_callback("instanceToggled", on_instance_toggle) + avalon.api.on("application.launched", initial_launch) + def uninstall(): log.info("OpenPype - Uninstalling TVPaint integration") diff --git a/openpype/hosts/tvpaint/api/lib.py b/openpype/hosts/tvpaint/api/lib.py index 4267129fe6..539cebe646 100644 --- a/openpype/hosts/tvpaint/api/lib.py +++ b/openpype/hosts/tvpaint/api/lib.py @@ -1,5 +1,8 @@ from PIL import Image +import avalon.io +from avalon.tvpaint.lib import execute_george + def composite_images(input_image_paths, output_filepath): """Composite images in order from passed list. @@ -18,3 +21,65 @@ def composite_images(input_image_paths, output_filepath): else: img_obj.alpha_composite(_img_obj) img_obj.save(output_filepath) + + +def set_context_settings(asset_doc=None): + """Set workfile settings by asset document data. + + Change fps, resolution and frame start/end. + """ + if asset_doc is None: + # Use current session asset if not passed + asset_doc = avalon.io.find_one({ + "type": "asset", + "name": avalon.io.Session["AVALON_ASSET"] + }) + + project_doc = avalon.io.find_one({"type": "project"}) + + framerate = asset_doc["data"].get("fps") + if framerate is None: + framerate = project_doc["data"].get("fps") + + if framerate is not None: + execute_george( + "tv_framerate {} \"timestretch\"".format(framerate) + ) + else: + print("Framerate was not found!") + + width_key = "resolutionWidth" + height_key = "resolutionHeight" + + width = asset_doc["data"].get(width_key) + height = asset_doc["data"].get(height_key) + if width is None or height is None: + width = project_doc["data"].get(width_key) + height = project_doc["data"].get(height_key) + + if width is None or height is None: + print("Resolution was not found!") + else: + execute_george("tv_resizepage {} {} 0".format(width, height)) + + frame_start = asset_doc["data"].get("frameStart") + frame_end = asset_doc["data"].get("frameEnd") + + if frame_start is None or frame_end is None: + print("Frame range was not found!") + return + + handles = asset_doc["data"].get("handles") or 0 + handle_start = asset_doc["data"].get("handleStart") + handle_end = asset_doc["data"].get("handleEnd") + + if handle_start is None or handle_end is None: + handle_start = handles + handle_end = handles + + # Always start from 0 Mark In and set only Mark Out + mark_in = 0 + mark_out = mark_in + (frame_end - frame_start) + handle_start + handle_end + + execute_george("tv_markin {} set".format(mark_in)) + execute_george("tv_markout {} set".format(mark_out)) diff --git a/openpype/hosts/tvpaint/plugins/publish/collect_instance_frames.py b/openpype/hosts/tvpaint/plugins/publish/collect_instance_frames.py new file mode 100644 index 0000000000..f291c363b8 --- /dev/null +++ b/openpype/hosts/tvpaint/plugins/publish/collect_instance_frames.py @@ -0,0 +1,37 @@ +import pyblish.api + + +class CollectOutputFrameRange(pyblish.api.ContextPlugin): + """Collect frame start/end from context. + + When instances are collected context does not contain `frameStart` and + `frameEnd` keys yet. They are collected in global plugin + `CollectAvalonEntities`. + """ + label = "Collect output frame range" + order = pyblish.api.CollectorOrder + hosts = ["tvpaint"] + + def process(self, context): + for instance in context: + frame_start = instance.data.get("frameStart") + frame_end = instance.data.get("frameEnd") + if frame_start is not None and frame_end is not None: + self.log.debug( + "Instance {} already has set frames {}-{}".format( + str(instance), frame_start, frame_end + ) + ) + return + + frame_start = context.data.get("frameStart") + frame_end = context.data.get("frameEnd") + + instance.data["frameStart"] = frame_start + instance.data["frameEnd"] = frame_end + + self.log.info( + "Set frames {}-{} on instance {} ".format( + frame_start, frame_end, str(instance) + ) + ) diff --git a/openpype/hosts/tvpaint/plugins/publish/collect_instances.py b/openpype/hosts/tvpaint/plugins/publish/collect_instances.py index 68c142c005..27bd8e9ede 100644 --- a/openpype/hosts/tvpaint/plugins/publish/collect_instances.py +++ b/openpype/hosts/tvpaint/plugins/publish/collect_instances.py @@ -34,8 +34,8 @@ class CollectInstances(pyblish.api.ContextPlugin): instance_data["name"] = name instance_data["label"] = "{} [{}-{}]".format( name, - context.data["sceneFrameStart"], - context.data["sceneFrameEnd"] + context.data["sceneMarkIn"] + 1, + context.data["sceneMarkOut"] + 1 ) active = instance_data.get("active", True) @@ -78,8 +78,13 @@ class CollectInstances(pyblish.api.ContextPlugin): if instance is None: continue - instance.data["frameStart"] = context.data["sceneFrameStart"] - instance.data["frameEnd"] = context.data["sceneFrameEnd"] + any_visible = False + for layer in instance.data["layers"]: + if layer["visible"]: + any_visible = True + break + + instance.data["publish"] = any_visible self.log.debug("Created instance: {}\n{}".format( instance, json.dumps(instance.data, indent=4) @@ -108,7 +113,7 @@ class CollectInstances(pyblish.api.ContextPlugin): group_id = instance_data["group_id"] group_layers = [] for layer in layers_data: - if layer["group_id"] == group_id and layer["visible"]: + if layer["group_id"] == group_id: group_layers.append(layer) if not group_layers: diff --git a/openpype/hosts/tvpaint/plugins/publish/collect_workfile_data.py b/openpype/hosts/tvpaint/plugins/publish/collect_workfile_data.py index e683c66ea9..13c6c9eb78 100644 --- a/openpype/hosts/tvpaint/plugins/publish/collect_workfile_data.py +++ b/openpype/hosts/tvpaint/plugins/publish/collect_workfile_data.py @@ -57,7 +57,10 @@ class CollectWorkfileData(pyblish.api.ContextPlugin): # Collect context from workfile metadata self.log.info("Collecting workfile context") + workfile_context = pipeline.get_current_workfile_context() + # Store workfile context to pyblish context + context.data["workfile_context"] = workfile_context if workfile_context: # Change current context with context from workfile key_map = ( @@ -67,16 +70,27 @@ class CollectWorkfileData(pyblish.api.ContextPlugin): for env_key, key in key_map: avalon.api.Session[env_key] = workfile_context[key] os.environ[env_key] = workfile_context[key] + self.log.info("Context changed to: {}".format(workfile_context)) + + asset_name = workfile_context["asset"] + task_name = workfile_context["task"] + else: + asset_name = current_context["asset"] + task_name = current_context["task"] # Handle older workfiles or workfiles without metadata - self.log.warning( + self.log.warning(( "Workfile does not contain information about context." " Using current Session context." - ) - workfile_context = current_context.copy() + )) - context.data["workfile_context"] = workfile_context - self.log.info("Context changed to: {}".format(workfile_context)) + # Store context asset name + context.data["asset"] = asset_name + self.log.info( + "Context is set to Asset: \"{}\" and Task: \"{}\"".format( + asset_name, task_name + ) + ) # Collect instances self.log.info("Collecting instance data from workfile") @@ -122,36 +136,26 @@ class CollectWorkfileData(pyblish.api.ContextPlugin): width = int(workfile_info_parts.pop(-1)) workfile_path = " ".join(workfile_info_parts).replace("\"", "") - frame_start, frame_end = self.collect_clip_frames() + # Marks return as "{frame - 1} {state} ", example "0 set". + result = lib.execute_george("tv_markin") + mark_in_frame, mark_in_state, _ = result.split(" ") + + result = lib.execute_george("tv_markout") + mark_out_frame, mark_out_state, _ = result.split(" ") + scene_data = { "currentFile": workfile_path, "sceneWidth": width, "sceneHeight": height, "scenePixelAspect": pixel_apsect, - "sceneFrameStart": frame_start, - "sceneFrameEnd": frame_end, "sceneFps": frame_rate, - "sceneFieldOrder": field_order + "sceneFieldOrder": field_order, + "sceneMarkIn": int(mark_in_frame), + "sceneMarkInState": mark_in_state == "set", + "sceneMarkOut": int(mark_out_frame), + "sceneMarkOutState": mark_out_state == "set" } self.log.debug( "Scene data: {}".format(json.dumps(scene_data, indent=4)) ) context.data.update(scene_data) - - def collect_clip_frames(self): - clip_info_str = lib.execute_george("tv_clipinfo") - self.log.debug("Clip info: {}".format(clip_info_str)) - clip_info_items = clip_info_str.split(" ") - # Color index - not used - clip_info_items.pop(-1) - clip_info_items.pop(-1) - - mark_out = int(clip_info_items.pop(-1)) - frame_end = mark_out + 1 - clip_info_items.pop(-1) - - mark_in = int(clip_info_items.pop(-1)) - frame_start = mark_in + 1 - clip_info_items.pop(-1) - - return frame_start, frame_end diff --git a/openpype/hosts/tvpaint/plugins/publish/extract_sequence.py b/openpype/hosts/tvpaint/plugins/publish/extract_sequence.py index 0d125a1a50..007b5c41f1 100644 --- a/openpype/hosts/tvpaint/plugins/publish/extract_sequence.py +++ b/openpype/hosts/tvpaint/plugins/publish/extract_sequence.py @@ -1,8 +1,6 @@ import os import shutil -import time import tempfile -import multiprocessing import pyblish.api from avalon.tvpaint import lib @@ -45,10 +43,64 @@ class ExtractSequence(pyblish.api.Extractor): ) family_lowered = instance.data["family"].lower() - frame_start = instance.data["frameStart"] - frame_end = instance.data["frameEnd"] + mark_in = instance.context.data["sceneMarkIn"] + mark_out = instance.context.data["sceneMarkOut"] + # Frame start/end may be stored as float + frame_start = int(instance.data["frameStart"]) + frame_end = int(instance.data["frameEnd"]) - filename_template = self._get_filename_template(frame_end) + # Handles are not stored per instance but on Context + handle_start = instance.context.data["handleStart"] + handle_end = instance.context.data["handleEnd"] + + # --- Fallbacks ---------------------------------------------------- + # This is required if validations of ranges are ignored. + # - all of this code won't change processing if range to render + # match to range of expected output + + # Prepare output frames + output_frame_start = frame_start - handle_start + output_frame_end = frame_end + handle_end + + # Change output frame start to 0 if handles cause it's negative number + if output_frame_start < 0: + self.log.warning(( + "Frame start with handles has negative value." + " Changed to \"0\". Frames start: {}, Handle Start: {}" + ).format(frame_start, handle_start)) + output_frame_start = 0 + + # Check Marks range and output range + output_range = output_frame_end - output_frame_start + marks_range = mark_out - mark_in + + # Lower Mark Out if mark range is bigger than output + # - do not rendered not used frames + if output_range < marks_range: + new_mark_out = mark_out - (marks_range - output_range) + self.log.warning(( + "Lowering render range to {} frames. Changed Mark Out {} -> {}" + ).format(marks_range + 1, mark_out, new_mark_out)) + # Assign new mark out to variable + mark_out = new_mark_out + + # Lower output frame end so representation has right `frameEnd` value + elif output_range > marks_range: + new_output_frame_end = ( + output_frame_end - (output_range - marks_range) + ) + self.log.warning(( + "Lowering representation range to {} frames." + " Changed frame end {} -> {}" + ).format(output_range + 1, mark_out, new_mark_out)) + output_frame_end = new_output_frame_end + + # ------------------------------------------------------------------- + + filename_template = self._get_filename_template( + # Use the biggest number + max(mark_out, frame_end) + ) ext = os.path.splitext(filename_template)[1].replace(".", "") self.log.debug("Using file template \"{}\"".format(filename_template)) @@ -57,7 +109,9 @@ class ExtractSequence(pyblish.api.Extractor): output_dir = instance.data.get("stagingDir") if not output_dir: # Create temp folder if staging dir is not set - output_dir = tempfile.mkdtemp().replace("\\", "/") + output_dir = ( + tempfile.mkdtemp(prefix="tvpaint_render_") + ).replace("\\", "/") instance.data["stagingDir"] = output_dir self.log.debug( @@ -65,23 +119,36 @@ class ExtractSequence(pyblish.api.Extractor): ) if instance.data["family"] == "review": - repre_files, thumbnail_fullpath = self.render_review( - filename_template, output_dir, frame_start, frame_end + output_filenames, thumbnail_fullpath = self.render_review( + filename_template, output_dir, mark_in, mark_out ) else: # Render output - repre_files, thumbnail_fullpath = self.render( - filename_template, output_dir, frame_start, frame_end, + output_filenames, thumbnail_fullpath = self.render( + filename_template, output_dir, + mark_in, mark_out, filtered_layers ) + # Sequence of one frame + if not output_filenames: + self.log.warning("Extractor did not create any output.") + return + + repre_files = self._rename_output_files( + filename_template, output_dir, + mark_in, mark_out, + output_frame_start, output_frame_end + ) + # Fill tags and new families tags = [] if family_lowered in ("review", "renderlayer"): tags.append("review") # Sequence of one frame - if len(repre_files) == 1: + single_file = len(repre_files) == 1 + if single_file: repre_files = repre_files[0] new_repre = { @@ -89,10 +156,13 @@ class ExtractSequence(pyblish.api.Extractor): "ext": ext, "files": repre_files, "stagingDir": output_dir, - "frameStart": frame_start, - "frameEnd": frame_end, "tags": tags } + + if not single_file: + new_repre["frameStart"] = output_frame_start + new_repre["frameEnd"] = output_frame_end + self.log.debug("Creating new representation: {}".format(new_repre)) instance.data["representations"].append(new_repre) @@ -133,9 +203,45 @@ class ExtractSequence(pyblish.api.Extractor): return "{{frame:0>{}}}".format(frame_padding) + ".png" - def render_review( - self, filename_template, output_dir, frame_start, frame_end + def _rename_output_files( + self, filename_template, output_dir, + mark_in, mark_out, output_frame_start, output_frame_end ): + # Use differnet ranges based on Mark In and output Frame Start values + # - this is to make sure that filename renaming won't affect files that + # are not renamed yet + mark_start_is_less = bool(mark_in < output_frame_start) + if mark_start_is_less: + marks_range = range(mark_out, mark_in - 1, -1) + frames_range = range(output_frame_end, output_frame_start - 1, -1) + else: + # This is less possible situation as frame start will be in most + # cases higher than Mark In. + marks_range = range(mark_in, mark_out + 1) + frames_range = range(output_frame_start, output_frame_end + 1) + + repre_filepaths = [] + for mark, frame in zip(marks_range, frames_range): + new_filename = filename_template.format(frame=frame) + new_filepath = os.path.join(output_dir, new_filename) + + repre_filepaths.append(new_filepath) + + if mark != frame: + old_filename = filename_template.format(frame=mark) + old_filepath = os.path.join(output_dir, old_filename) + os.rename(old_filepath, new_filepath) + + # Reverse repre files order if output + if mark_start_is_less: + repre_filepaths = list(reversed(repre_filepaths)) + + return [ + os.path.basename(path) + for path in repre_filepaths + ] + + def render_review(self, filename_template, output_dir, mark_in, mark_out): """ Export images from TVPaint using `tv_savesequence` command. Args: @@ -144,8 +250,8 @@ class ExtractSequence(pyblish.api.Extractor): keyword argument `{frame}` or index argument (for same value). Extension in template must match `save_mode`. output_dir (str): Directory where files will be stored. - first_frame (int): Starting frame from which export will begin. - last_frame (int): On which frame export will end. + mark_in (int): Starting frame index from which export will begin. + mark_out (int): On which frame index export will end. Retruns: tuple: With 2 items first is list of filenames second is path to @@ -154,10 +260,8 @@ class ExtractSequence(pyblish.api.Extractor): self.log.debug("Preparing data for rendering.") first_frame_filepath = os.path.join( output_dir, - filename_template.format(frame=frame_start) + filename_template.format(frame=mark_in) ) - mark_in = frame_start - 1 - mark_out = frame_end - 1 george_script_lines = [ "tv_SaveMode \"PNG\"", @@ -170,13 +274,22 @@ class ExtractSequence(pyblish.api.Extractor): ] lib.execute_george_through_file("\n".join(george_script_lines)) - output = [] first_frame_filepath = None - for frame in range(frame_start, frame_end + 1): + output_filenames = [] + for frame in range(mark_in, mark_out + 1): filename = filename_template.format(frame=frame) - output.append(filename) + output_filenames.append(filename) + + filepath = os.path.join(output_dir, filename) + if not os.path.exists(filepath): + raise AssertionError( + "Output was not rendered. File was not found {}".format( + filepath + ) + ) + if first_frame_filepath is None: - first_frame_filepath = os.path.join(output_dir, filename) + first_frame_filepath = filepath thumbnail_filepath = os.path.join(output_dir, "thumbnail.jpg") if first_frame_filepath and os.path.exists(first_frame_filepath): @@ -184,11 +297,10 @@ class ExtractSequence(pyblish.api.Extractor): thumbnail_obj = Image.new("RGB", source_img.size, (255, 255, 255)) thumbnail_obj.paste(source_img) thumbnail_obj.save(thumbnail_filepath) - return output, thumbnail_filepath - def render( - self, filename_template, output_dir, frame_start, frame_end, layers - ): + return output_filenames, thumbnail_filepath + + def render(self, filename_template, output_dir, mark_in, mark_out, layers): """ Export images from TVPaint. Args: @@ -197,8 +309,8 @@ class ExtractSequence(pyblish.api.Extractor): keyword argument `{frame}` or index argument (for same value). Extension in template must match `save_mode`. output_dir (str): Directory where files will be stored. - first_frame (int): Starting frame from which export will begin. - last_frame (int): On which frame export will end. + mark_in (int): Starting frame index from which export will begin. + mark_out (int): On which frame index export will end. layers (list): List of layers to be exported. Retruns: @@ -219,14 +331,11 @@ class ExtractSequence(pyblish.api.Extractor): # Sort layer positions in reverse order sorted_positions = list(reversed(sorted(layers_by_position.keys()))) if not sorted_positions: - return + return [], None self.log.debug("Collecting pre/post behavior of individual layers.") behavior_by_layer_id = lib.get_layers_pre_post_behavior(layer_ids) - mark_in_index = frame_start - 1 - mark_out_index = frame_end - 1 - tmp_filename_template = "pos_{pos}." + filename_template files_by_position = {} @@ -239,25 +348,47 @@ class ExtractSequence(pyblish.api.Extractor): tmp_filename_template, output_dir, behavior, - mark_in_index, - mark_out_index + mark_in, + mark_out ) - files_by_position[position] = files_by_frames + if files_by_frames: + files_by_position[position] = files_by_frames + else: + self.log.warning(( + "Skipped layer \"{}\". Probably out of Mark In/Out range." + ).format(layer["name"])) + + if not files_by_position: + layer_names = set(layer["name"] for layer in layers) + joined_names = ", ".join( + ["\"{}\"".format(name) for name in layer_names] + ) + self.log.warning( + "Layers {} do not have content in range {} - {}".format( + joined_names, mark_in, mark_out + ) + ) + return [], None output_filepaths = self._composite_files( files_by_position, - mark_in_index, - mark_out_index, + mark_in, + mark_out, filename_template, output_dir ) self._cleanup_tmp_files(files_by_position) - thumbnail_src_filepath = None - thumbnail_filepath = None - if output_filepaths: - thumbnail_src_filepath = tuple(sorted(output_filepaths))[0] + output_filenames = [ + os.path.basename(filepath) + for filepath in output_filepaths + ] + thumbnail_src_filepath = None + if output_filepaths: + thumbnail_src_filepath = output_filepaths[0] + + thumbnail_filepath = None if thumbnail_src_filepath and os.path.exists(thumbnail_src_filepath): source_img = Image.open(thumbnail_src_filepath) thumbnail_filepath = os.path.join(output_dir, "thumbnail.jpg") @@ -265,11 +396,7 @@ class ExtractSequence(pyblish.api.Extractor): thumbnail_obj.paste(source_img) thumbnail_obj.save(thumbnail_filepath) - repre_files = [ - os.path.basename(path) - for path in output_filepaths - ] - return repre_files, thumbnail_filepath + return output_filenames, thumbnail_filepath def _render_layer( self, @@ -283,6 +410,22 @@ class ExtractSequence(pyblish.api.Extractor): layer_id = layer["layer_id"] frame_start_index = layer["frame_start"] frame_end_index = layer["frame_end"] + + pre_behavior = behavior["pre"] + post_behavior = behavior["post"] + + # Check if layer is before mark in + if frame_end_index < mark_in_index: + # Skip layer if post behavior is "none" + if post_behavior == "none": + return {} + + # Check if layer is after mark out + elif frame_start_index > mark_out_index: + # Skip layer if pre behavior is "none" + if pre_behavior == "none": + return {} + exposure_frames = lib.get_exposure_frames( layer_id, frame_start_index, frame_end_index ) @@ -341,8 +484,6 @@ class ExtractSequence(pyblish.api.Extractor): self.log.debug("Filled frames {}".format(str(_debug_filled_frames))) # Fill frames by pre/post behavior of layer - pre_behavior = behavior["pre"] - post_behavior = behavior["post"] self.log.debug(( "Completing image sequence of layer by pre/post behavior." " PRE: {} | POST: {}" @@ -530,17 +671,12 @@ class ExtractSequence(pyblish.api.Extractor): filepath = position_data[frame_idx] images_by_frame[frame_idx].append(filepath) - process_count = os.cpu_count() - if process_count > 1: - process_count -= 1 - - processes = {} output_filepaths = [] missing_frame_paths = [] random_frame_path = None for frame_idx in sorted(images_by_frame.keys()): image_filepaths = images_by_frame[frame_idx] - output_filename = filename_template.format(frame=frame_idx + 1) + output_filename = filename_template.format(frame=frame_idx) output_filepath = os.path.join(output_dir, output_filename) output_filepaths.append(output_filepath) @@ -553,45 +689,15 @@ class ExtractSequence(pyblish.api.Extractor): if len(image_filepaths) == 1: os.rename(image_filepaths[0], output_filepath) - # Prepare process for compositing of images + # Composite images else: - processes[frame_idx] = multiprocessing.Process( - target=composite_images, - args=(image_filepaths, output_filepath) - ) + composite_images(image_filepaths, output_filepath) # Store path of random output image that will 100% exist after all # multiprocessing as mockup for missing frames if random_frame_path is None: random_frame_path = output_filepath - self.log.info( - "Running {} compositing processes - this mey take a while.".format( - len(processes) - ) - ) - # Wait until all compositing processes are done - running_processes = {} - while True: - for idx in tuple(running_processes.keys()): - process = running_processes[idx] - if not process.is_alive(): - running_processes.pop(idx).join() - - if processes and len(running_processes) != process_count: - indexes = list(processes.keys()) - for _ in range(process_count - len(running_processes)): - if not indexes: - break - idx = indexes.pop(0) - running_processes[idx] = processes.pop(idx) - running_processes[idx].start() - - if not running_processes and not processes: - break - - time.sleep(0.01) - self.log.debug( "Creating transparent images for frames without render {}.".format( str(missing_frame_paths) diff --git a/openpype/hosts/tvpaint/plugins/publish/validate_asset_name.py b/openpype/hosts/tvpaint/plugins/publish/validate_asset_name.py new file mode 100644 index 0000000000..4ce8d5347d --- /dev/null +++ b/openpype/hosts/tvpaint/plugins/publish/validate_asset_name.py @@ -0,0 +1,55 @@ +import pyblish.api +from avalon.tvpaint import pipeline + + +class FixAssetNames(pyblish.api.Action): + """Repair the asset names. + + Change instanace metadata in the workfile. + """ + + label = "Repair" + icon = "wrench" + on = "failed" + + def process(self, context, plugin): + context_asset_name = context.data["asset"] + old_instance_items = pipeline.list_instances() + new_instance_items = [] + for instance_item in old_instance_items: + instance_asset_name = instance_item.get("asset") + if ( + instance_asset_name + and instance_asset_name != context_asset_name + ): + instance_item["asset"] = context_asset_name + new_instance_items.append(instance_item) + pipeline._write_instances(new_instance_items) + + +class ValidateMissingLayers(pyblish.api.ContextPlugin): + """Validate assset name present on instance. + + Asset name on instance should be the same as context's. + """ + + label = "Validate Asset Names" + order = pyblish.api.ValidatorOrder + hosts = ["tvpaint"] + actions = [FixAssetNames] + + def process(self, context): + context_asset_name = context.data["asset"] + for instance in context: + asset_name = instance.data.get("asset") + if asset_name and asset_name == context_asset_name: + continue + + instance_label = ( + instance.data.get("label") or instance.data["name"] + ) + raise AssertionError(( + "Different asset name on instance then context's." + " Instance \"{}\" has asset name: \"{}\"" + " Context asset name is: \"{}\"" + ).format(instance_label, asset_name, context_asset_name)) diff --git a/openpype/hosts/tvpaint/plugins/publish/validate_marks.py b/openpype/hosts/tvpaint/plugins/publish/validate_marks.py new file mode 100644 index 0000000000..e2ef81e4a4 --- /dev/null +++ b/openpype/hosts/tvpaint/plugins/publish/validate_marks.py @@ -0,0 +1,81 @@ +import json + +import pyblish.api +from avalon.tvpaint import lib + + +class ValidateMarksRepair(pyblish.api.Action): + """Repair the marks.""" + + label = "Repair" + icon = "wrench" + on = "failed" + + def process(self, context, plugin): + expected_data = ValidateMarks.get_expected_data(context) + + lib.execute_george( + "tv_markin {} set".format(expected_data["markIn"]) + ) + lib.execute_george( + "tv_markout {} set".format(expected_data["markOut"]) + ) + + +class ValidateMarks(pyblish.api.ContextPlugin): + """Validate mark in and out are enabled and it's duration. + + Mark In/Out does not have to match frameStart and frameEnd but duration is + important. + """ + + label = "Validate Mark In/Out" + order = pyblish.api.ValidatorOrder + optional = True + actions = [ValidateMarksRepair] + + @staticmethod + def get_expected_data(context): + scene_mark_in = context.data["sceneMarkIn"] + + # Data collected in `CollectAvalonEntities` + frame_end = context.data["frameEnd"] + frame_start = context.data["frameStart"] + handle_start = context.data["handleStart"] + handle_end = context.data["handleEnd"] + + # Calculate expeted Mark out (Mark In + duration - 1) + expected_mark_out = ( + scene_mark_in + + (frame_end - frame_start) + + handle_start + handle_end + ) + return { + "markIn": scene_mark_in, + "markInState": True, + "markOut": expected_mark_out, + "markOutState": True + } + + def process(self, context): + current_data = { + "markIn": context.data["sceneMarkIn"], + "markInState": context.data["sceneMarkInState"], + "markOut": context.data["sceneMarkOut"], + "markOutState": context.data["sceneMarkOutState"] + } + expected_data = self.get_expected_data(context) + invalid = {} + for k in current_data.keys(): + if current_data[k] != expected_data[k]: + invalid[k] = { + "current": current_data[k], + "expected": expected_data[k] + } + + if invalid: + raise AssertionError( + "Marks does not match database:\n{}".format( + json.dumps(invalid, sort_keys=True, indent=4) + ) + ) diff --git a/openpype/hosts/tvpaint/plugins/publish/validate_project_settings.py b/openpype/hosts/tvpaint/plugins/publish/validate_project_settings.py index fead3393ae..84c03a9857 100644 --- a/openpype/hosts/tvpaint/plugins/publish/validate_project_settings.py +++ b/openpype/hosts/tvpaint/plugins/publish/validate_project_settings.py @@ -13,8 +13,6 @@ class ValidateProjectSettings(pyblish.api.ContextPlugin): def process(self, context): scene_data = { - "frameStart": context.data.get("sceneFrameStart"), - "frameEnd": context.data.get("sceneFrameEnd"), "fps": context.data.get("sceneFps"), "resolutionWidth": context.data.get("sceneWidth"), "resolutionHeight": context.data.get("sceneHeight"), diff --git a/openpype/hosts/tvpaint/plugins/publish/validate_workfile_project_name.py b/openpype/hosts/tvpaint/plugins/publish/validate_workfile_project_name.py index 7c1032fcad..cc664d8030 100644 --- a/openpype/hosts/tvpaint/plugins/publish/validate_workfile_project_name.py +++ b/openpype/hosts/tvpaint/plugins/publish/validate_workfile_project_name.py @@ -13,7 +13,15 @@ class ValidateWorkfileProjectName(pyblish.api.ContextPlugin): order = pyblish.api.ValidatorOrder def process(self, context): - workfile_context = context.data["workfile_context"] + workfile_context = context.data.get("workfile_context") + # If workfile context is missing than project is matching to + # `AVALON_PROJECT` value for 100% + if not workfile_context: + self.log.info( + "Workfile context (\"workfile_context\") is not filled." + ) + return + workfile_project_name = workfile_context["project"] env_project_name = os.environ["AVALON_PROJECT"] if workfile_project_name == env_project_name: diff --git a/openpype/hosts/unreal/hooks/pre_workfile_preparation.py b/openpype/hosts/unreal/hooks/pre_workfile_preparation.py index c698be63de..f084cccfc3 100644 --- a/openpype/hosts/unreal/hooks/pre_workfile_preparation.py +++ b/openpype/hosts/unreal/hooks/pre_workfile_preparation.py @@ -24,7 +24,7 @@ class UnrealPrelaunchHook(PreLaunchHook): asset_name = self.data["asset_name"] task_name = self.data["task_name"] workdir = self.launch_context.env["AVALON_WORKDIR"] - engine_version = self.app_name.split("_")[-1].replace("-", ".") + engine_version = self.app_name.split("/")[-1].replace("-", ".") unreal_project_name = f"{asset_name}_{task_name}" # Unreal is sensitive about project names longer then 20 chars diff --git a/openpype/hosts/unreal/plugins/load/load_alembic_geometrycache.py b/openpype/hosts/unreal/plugins/load/load_alembic_geometrycache.py new file mode 100644 index 0000000000..a9279bf6e0 --- /dev/null +++ b/openpype/hosts/unreal/plugins/load/load_alembic_geometrycache.py @@ -0,0 +1,162 @@ +import os + +from avalon import api, pipeline +from avalon.unreal import lib +from avalon.unreal import pipeline as unreal_pipeline +import unreal + + +class PointCacheAlembicLoader(api.Loader): + """Load Point Cache from Alembic""" + + families = ["model", "pointcache"] + label = "Import Alembic Point Cache" + representations = ["abc"] + icon = "cube" + color = "orange" + + def load(self, context, name, namespace, data): + """ + Load and containerise representation into Content Browser. + + This is two step process. First, import FBX to temporary path and + then call `containerise()` on it - this moves all content to new + directory and then it will create AssetContainer there and imprint it + with metadata. This will mark this path as container. + + Args: + context (dict): application context + name (str): subset name + namespace (str): in Unreal this is basically path to container. + This is not passed here, so namespace is set + by `containerise()` because only then we know + real path. + data (dict): Those would be data to be imprinted. This is not used + now, data are imprinted by `containerise()`. + + Returns: + list(str): list of container content + """ + + # Create directory for asset and avalon container + root = "/Game/Avalon/Assets" + asset = context.get('asset').get('name') + suffix = "_CON" + if asset: + asset_name = "{}_{}".format(asset, name) + else: + asset_name = "{}".format(name) + + tools = unreal.AssetToolsHelpers().get_asset_tools() + asset_dir, container_name = tools.create_unique_asset_name( + "{}/{}/{}".format(root, asset, name), suffix="") + + container_name += suffix + + unreal.EditorAssetLibrary.make_directory(asset_dir) + + task = unreal.AssetImportTask() + + task.set_editor_property('filename', self.fname) + task.set_editor_property('destination_path', asset_dir) + task.set_editor_property('destination_name', asset_name) + task.set_editor_property('replace_existing', False) + task.set_editor_property('automated', True) + task.set_editor_property('save', True) + + # set import options here + # Unreal 4.24 ignores the settings. It works with Unreal 4.26 + options = unreal.AbcImportSettings() + options.set_editor_property( + 'import_type', unreal.AlembicImportType.GEOMETRY_CACHE) + + options.geometry_cache_settings.set_editor_property( + 'flatten_tracks', False) + + task.options = options + unreal.AssetToolsHelpers.get_asset_tools().import_asset_tasks([task]) # noqa: E501 + + # Create Asset Container + lib.create_avalon_container( + container=container_name, path=asset_dir) + + data = { + "schema": "openpype:container-2.0", + "id": pipeline.AVALON_CONTAINER_ID, + "asset": asset, + "namespace": asset_dir, + "container_name": container_name, + "asset_name": asset_name, + "loader": str(self.__class__.__name__), + "representation": context["representation"]["_id"], + "parent": context["representation"]["parent"], + "family": context["representation"]["context"]["family"] + } + unreal_pipeline.imprint( + "{}/{}".format(asset_dir, container_name), data) + + asset_content = unreal.EditorAssetLibrary.list_assets( + asset_dir, recursive=True, include_folder=True + ) + + for a in asset_content: + unreal.EditorAssetLibrary.save_asset(a) + + return asset_content + + def update(self, container, representation): + name = container["asset_name"] + source_path = api.get_representation_path(representation) + destination_path = container["namespace"] + + task = unreal.AssetImportTask() + + task.set_editor_property('filename', source_path) + task.set_editor_property('destination_path', destination_path) + # strip suffix + task.set_editor_property('destination_name', name) + task.set_editor_property('replace_existing', True) + task.set_editor_property('automated', True) + task.set_editor_property('save', True) + + # set import options here + # Unreal 4.24 ignores the settings. It works with Unreal 4.26 + options = unreal.AbcImportSettings() + options.set_editor_property( + 'import_type', unreal.AlembicImportType.GEOMETRY_CACHE) + + options.geometry_cache_settings.set_editor_property( + 'flatten_tracks', False) + + task.options = options + # do import fbx and replace existing data + unreal.AssetToolsHelpers.get_asset_tools().import_asset_tasks([task]) + container_path = "{}/{}".format(container["namespace"], + container["objectName"]) + # update metadata + unreal_pipeline.imprint( + container_path, + { + "representation": str(representation["_id"]), + "parent": str(representation["parent"]) + }) + + asset_content = unreal.EditorAssetLibrary.list_assets( + destination_path, recursive=True, include_folder=True + ) + + for a in asset_content: + unreal.EditorAssetLibrary.save_asset(a) + + def remove(self, container): + path = container["namespace"] + parent_path = os.path.dirname(path) + + unreal.EditorAssetLibrary.delete_directory(path) + + asset_content = unreal.EditorAssetLibrary.list_assets( + parent_path, recursive=False + ) + + if len(asset_content) == 0: + unreal.EditorAssetLibrary.delete_directory(parent_path) diff --git a/openpype/hosts/unreal/plugins/load/load_alembic_skeletalmesh.py b/openpype/hosts/unreal/plugins/load/load_alembic_skeletalmesh.py new file mode 100644 index 0000000000..b652af0b89 --- /dev/null +++ b/openpype/hosts/unreal/plugins/load/load_alembic_skeletalmesh.py @@ -0,0 +1,156 @@ +import os + +from avalon import api, pipeline +from avalon.unreal import lib +from avalon.unreal import pipeline as unreal_pipeline +import unreal + + +class SkeletalMeshAlembicLoader(api.Loader): + """Load Unreal SkeletalMesh from Alembic""" + + families = ["pointcache"] + label = "Import Alembic Skeletal Mesh" + representations = ["abc"] + icon = "cube" + color = "orange" + + def load(self, context, name, namespace, data): + """ + Load and containerise representation into Content Browser. + + This is two step process. First, import FBX to temporary path and + then call `containerise()` on it - this moves all content to new + directory and then it will create AssetContainer there and imprint it + with metadata. This will mark this path as container. + + Args: + context (dict): application context + name (str): subset name + namespace (str): in Unreal this is basically path to container. + This is not passed here, so namespace is set + by `containerise()` because only then we know + real path. + data (dict): Those would be data to be imprinted. This is not used + now, data are imprinted by `containerise()`. + + Returns: + list(str): list of container content + """ + + # Create directory for asset and avalon container + root = "/Game/Avalon/Assets" + asset = context.get('asset').get('name') + suffix = "_CON" + if asset: + asset_name = "{}_{}".format(asset, name) + else: + asset_name = "{}".format(name) + + tools = unreal.AssetToolsHelpers().get_asset_tools() + asset_dir, container_name = tools.create_unique_asset_name( + "{}/{}/{}".format(root, asset, name), suffix="") + + container_name += suffix + + unreal.EditorAssetLibrary.make_directory(asset_dir) + + task = unreal.AssetImportTask() + + task.set_editor_property('filename', self.fname) + task.set_editor_property('destination_path', asset_dir) + task.set_editor_property('destination_name', asset_name) + task.set_editor_property('replace_existing', False) + task.set_editor_property('automated', True) + task.set_editor_property('save', True) + + # set import options here + # Unreal 4.24 ignores the settings. It works with Unreal 4.26 + options = unreal.AbcImportSettings() + options.set_editor_property( + 'import_type', unreal.AlembicImportType.SKELETAL) + + task.options = options + unreal.AssetToolsHelpers.get_asset_tools().import_asset_tasks([task]) # noqa: E501 + + # Create Asset Container + lib.create_avalon_container( + container=container_name, path=asset_dir) + + data = { + "schema": "openpype:container-2.0", + "id": pipeline.AVALON_CONTAINER_ID, + "asset": asset, + "namespace": asset_dir, + "container_name": container_name, + "asset_name": asset_name, + "loader": str(self.__class__.__name__), + "representation": context["representation"]["_id"], + "parent": context["representation"]["parent"], + "family": context["representation"]["context"]["family"] + } + unreal_pipeline.imprint( + "{}/{}".format(asset_dir, container_name), data) + + asset_content = unreal.EditorAssetLibrary.list_assets( + asset_dir, recursive=True, include_folder=True + ) + + for a in asset_content: + unreal.EditorAssetLibrary.save_asset(a) + + return asset_content + + def update(self, container, representation): + name = container["asset_name"] + source_path = api.get_representation_path(representation) + destination_path = container["namespace"] + + task = unreal.AssetImportTask() + + task.set_editor_property('filename', source_path) + task.set_editor_property('destination_path', destination_path) + # strip suffix + task.set_editor_property('destination_name', name) + task.set_editor_property('replace_existing', True) + task.set_editor_property('automated', True) + task.set_editor_property('save', True) + + # set import options here + # Unreal 4.24 ignores the settings. It works with Unreal 4.26 + options = unreal.AbcImportSettings() + options.set_editor_property( + 'import_type', unreal.AlembicImportType.SKELETAL) + + task.options = options + # do import fbx and replace existing data + unreal.AssetToolsHelpers.get_asset_tools().import_asset_tasks([task]) + container_path = "{}/{}".format(container["namespace"], + container["objectName"]) + # update metadata + unreal_pipeline.imprint( + container_path, + { + "representation": str(representation["_id"]), + "parent": str(representation["parent"]) + }) + + asset_content = unreal.EditorAssetLibrary.list_assets( + destination_path, recursive=True, include_folder=True + ) + + for a in asset_content: + unreal.EditorAssetLibrary.save_asset(a) + + def remove(self, container): + path = container["namespace"] + parent_path = os.path.dirname(path) + + unreal.EditorAssetLibrary.delete_directory(path) + + asset_content = unreal.EditorAssetLibrary.list_assets( + parent_path, recursive=False + ) + + if len(asset_content) == 0: + unreal.EditorAssetLibrary.delete_directory(parent_path) diff --git a/openpype/hosts/unreal/plugins/load/load_alembic_staticmesh.py b/openpype/hosts/unreal/plugins/load/load_alembic_staticmesh.py new file mode 100644 index 0000000000..12b9320f72 --- /dev/null +++ b/openpype/hosts/unreal/plugins/load/load_alembic_staticmesh.py @@ -0,0 +1,156 @@ +import os + +from avalon import api, pipeline +from avalon.unreal import lib +from avalon.unreal import pipeline as unreal_pipeline +import unreal + + +class StaticMeshAlembicLoader(api.Loader): + """Load Unreal StaticMesh from Alembic""" + + families = ["model"] + label = "Import Alembic Static Mesh" + representations = ["abc"] + icon = "cube" + color = "orange" + + def load(self, context, name, namespace, data): + """ + Load and containerise representation into Content Browser. + + This is two step process. First, import FBX to temporary path and + then call `containerise()` on it - this moves all content to new + directory and then it will create AssetContainer there and imprint it + with metadata. This will mark this path as container. + + Args: + context (dict): application context + name (str): subset name + namespace (str): in Unreal this is basically path to container. + This is not passed here, so namespace is set + by `containerise()` because only then we know + real path. + data (dict): Those would be data to be imprinted. This is not used + now, data are imprinted by `containerise()`. + + Returns: + list(str): list of container content + """ + + # Create directory for asset and avalon container + root = "/Game/Avalon/Assets" + asset = context.get('asset').get('name') + suffix = "_CON" + if asset: + asset_name = "{}_{}".format(asset, name) + else: + asset_name = "{}".format(name) + + tools = unreal.AssetToolsHelpers().get_asset_tools() + asset_dir, container_name = tools.create_unique_asset_name( + "{}/{}/{}".format(root, asset, name), suffix="") + + container_name += suffix + + unreal.EditorAssetLibrary.make_directory(asset_dir) + + task = unreal.AssetImportTask() + + task.set_editor_property('filename', self.fname) + task.set_editor_property('destination_path', asset_dir) + task.set_editor_property('destination_name', asset_name) + task.set_editor_property('replace_existing', False) + task.set_editor_property('automated', True) + task.set_editor_property('save', True) + + # set import options here + # Unreal 4.24 ignores the settings. It works with Unreal 4.26 + options = unreal.AbcImportSettings() + options.set_editor_property( + 'import_type', unreal.AlembicImportType.STATIC_MESH) + + task.options = options + unreal.AssetToolsHelpers.get_asset_tools().import_asset_tasks([task]) # noqa: E501 + + # Create Asset Container + lib.create_avalon_container( + container=container_name, path=asset_dir) + + data = { + "schema": "openpype:container-2.0", + "id": pipeline.AVALON_CONTAINER_ID, + "asset": asset, + "namespace": asset_dir, + "container_name": container_name, + "asset_name": asset_name, + "loader": str(self.__class__.__name__), + "representation": context["representation"]["_id"], + "parent": context["representation"]["parent"], + "family": context["representation"]["context"]["family"] + } + unreal_pipeline.imprint( + "{}/{}".format(asset_dir, container_name), data) + + asset_content = unreal.EditorAssetLibrary.list_assets( + asset_dir, recursive=True, include_folder=True + ) + + for a in asset_content: + unreal.EditorAssetLibrary.save_asset(a) + + return asset_content + + def update(self, container, representation): + name = container["asset_name"] + source_path = api.get_representation_path(representation) + destination_path = container["namespace"] + + task = unreal.AssetImportTask() + + task.set_editor_property('filename', source_path) + task.set_editor_property('destination_path', destination_path) + # strip suffix + task.set_editor_property('destination_name', name) + task.set_editor_property('replace_existing', True) + task.set_editor_property('automated', True) + task.set_editor_property('save', True) + + # set import options here + # Unreal 4.24 ignores the settings. It works with Unreal 4.26 + options = unreal.AbcImportSettings() + options.set_editor_property( + 'import_type', unreal.AlembicImportType.STATIC_MESH) + + task.options = options + # do import fbx and replace existing data + unreal.AssetToolsHelpers.get_asset_tools().import_asset_tasks([task]) + container_path = "{}/{}".format(container["namespace"], + container["objectName"]) + # update metadata + unreal_pipeline.imprint( + container_path, + { + "representation": str(representation["_id"]), + "parent": str(representation["parent"]) + }) + + asset_content = unreal.EditorAssetLibrary.list_assets( + destination_path, recursive=True, include_folder=True + ) + + for a in asset_content: + unreal.EditorAssetLibrary.save_asset(a) + + def remove(self, container): + path = container["namespace"] + parent_path = os.path.dirname(path) + + unreal.EditorAssetLibrary.delete_directory(path) + + asset_content = unreal.EditorAssetLibrary.list_assets( + parent_path, recursive=False + ) + + if len(asset_content) == 0: + unreal.EditorAssetLibrary.delete_directory(parent_path) diff --git a/openpype/hosts/unreal/plugins/load/load_staticmeshfbx.py b/openpype/hosts/unreal/plugins/load/load_staticmeshfbx.py index dbea1d5951..dcb566fa4c 100644 --- a/openpype/hosts/unreal/plugins/load/load_staticmeshfbx.py +++ b/openpype/hosts/unreal/plugins/load/load_staticmeshfbx.py @@ -1,7 +1,6 @@ import os from avalon import api, pipeline -from avalon import unreal as avalon_unreal from avalon.unreal import lib from avalon.unreal import pipeline as unreal_pipeline import unreal diff --git a/openpype/launcher_actions.py b/openpype/launcher_actions.py deleted file mode 100644 index cf68dfb5c1..0000000000 --- a/openpype/launcher_actions.py +++ /dev/null @@ -1,30 +0,0 @@ -import os -import sys - -from avalon import api, pipeline - -PACKAGE_DIR = os.path.dirname(__file__) -PLUGINS_DIR = os.path.join(PACKAGE_DIR, "plugins", "launcher") -ACTIONS_DIR = os.path.join(PLUGINS_DIR, "actions") - - -def register_launcher_actions(): - """Register specific actions which should be accessible in the launcher""" - - actions = [] - ext = ".py" - sys.path.append(ACTIONS_DIR) - - for f in os.listdir(ACTIONS_DIR): - file, extention = os.path.splitext(f) - if ext in extention: - module = __import__(file) - klass = getattr(module, file) - actions.append(klass) - - if actions is []: - return - - for action in actions: - print("Using launcher action from config @ '{}'".format(action.name)) - pipeline.register_plugin(api.Action, action) diff --git a/openpype/lib/__init__.py b/openpype/lib/__init__.py index ce8f8ec2b6..1df89dbb21 100644 --- a/openpype/lib/__init__.py +++ b/openpype/lib/__init__.py @@ -6,11 +6,21 @@ import sys import os import site -# add Python version specific vendor folder -site.addsitedir( - os.path.join( - os.getenv("OPENPYPE_ROOT", ""), - "vendor", "python", "python_{}".format(sys.version[0]))) +# Add Python version specific vendor folder +python_version_dir = os.path.join( + os.getenv("OPENPYPE_REPOS_ROOT", ""), + "openpype", "vendor", "python", "python_{}".format(sys.version[0]) +) +# Prepend path in sys paths +sys.path.insert(0, python_version_dir) +site.addsitedir(python_version_dir) + + +from .env_tools import ( + env_value_to_bool, + get_paths_from_environ, + get_global_environments +) from .terminal import Terminal from .execute import ( @@ -33,10 +43,11 @@ from .anatomy import ( from .config import get_datetime_data -from .env_tools import ( - env_value_to_bool, - get_paths_from_environ, - get_global_environments +from .vendor_bin_utils import ( + get_vendor_bin_path, + get_oiio_tools_path, + get_ffmpeg_tool_path, + ffprobe_streams ) from .python_module_tools import ( @@ -68,6 +79,16 @@ from .avalon_context import ( change_timer_to_current_context ) +from .local_settings import ( + IniSettingRegistry, + JSONSettingRegistry, + OpenPypeSecureRegistry, + OpenPypeSettingsRegistry, + get_local_site_id, + change_openpype_mongo_url, + get_openpype_username +) + from .applications import ( ApplicationLaunchFailed, ApplictionExecutableNotFound, @@ -92,6 +113,7 @@ from .plugin_tools import ( TaskNotSetError, get_subset_name, filter_pyblish_plugins, + set_plugin_attributes_from_settings, source_hash, get_unique_layer_name, get_background_layers, @@ -101,26 +123,12 @@ from .plugin_tools import ( should_decompress ) -from .local_settings import ( - IniSettingRegistry, - JSONSettingRegistry, - OpenPypeSecureRegistry, - OpenPypeSettingsRegistry, - get_local_site_id, - change_openpype_mongo_url -) - from .path_tools import ( version_up, get_version_from_path, get_last_version_from_path ) -from .ffmpeg_utils import ( - get_ffmpeg_tool_path, - ffprobe_streams -) - from .editorial import ( is_overlapping_otio_ranges, otio_range_to_frame_range, @@ -143,6 +151,11 @@ __all__ = [ "get_paths_from_environ", "get_global_environments", + "get_vendor_bin_path", + "get_oiio_tools_path", + "get_ffmpeg_tool_path", + "ffprobe_streams", + "modules_from_path", "recursive_bases_from_class", "classes_from_module", @@ -168,6 +181,14 @@ __all__ = [ "change_timer_to_current_context", + "IniSettingRegistry", + "JSONSettingRegistry", + "OpenPypeSecureRegistry", + "OpenPypeSettingsRegistry", + "get_local_site_id", + "change_openpype_mongo_url", + "get_openpype_username", + "ApplicationLaunchFailed", "ApplictionExecutableNotFound", "ApplicationNotFound", @@ -187,6 +208,7 @@ __all__ = [ "TaskNotSetError", "get_subset_name", "filter_pyblish_plugins", + "set_plugin_attributes_from_settings", "source_hash", "get_unique_layer_name", "get_background_layers", @@ -199,9 +221,6 @@ __all__ = [ "get_version_from_path", "get_last_version_from_path", - "ffprobe_streams", - "get_ffmpeg_tool_path", - "terminal", "merge_dict", @@ -216,13 +235,6 @@ __all__ = [ "validate_mongo_connection", "OpenPypeMongoConnection", - "IniSettingRegistry", - "JSONSettingRegistry", - "OpenPypeSecureRegistry", - "OpenPypeSettingsRegistry", - "get_local_site_id", - "change_openpype_mongo_url", - "timeit", "is_overlapping_otio_ranges", diff --git a/openpype/lib/applications.py b/openpype/lib/applications.py index 51c646d494..c5c192f51b 100644 --- a/openpype/lib/applications.py +++ b/openpype/lib/applications.py @@ -25,6 +25,7 @@ from . import ( PypeLogger, Anatomy ) +from .local_settings import get_openpype_username from .avalon_context import ( get_workdir_data, get_workdir_with_workdir_data @@ -179,6 +180,7 @@ class Application: if group.enabled: enabled = data.get("enabled", True) self.enabled = enabled + self.use_python_2 = data["use_python_2"] self.label = data.get("variant_label") or name self.full_name = "/".join((group.name, name)) @@ -261,14 +263,32 @@ class Application: class ApplicationManager: - def __init__(self): - self.log = PypeLogger().get_logger(self.__class__.__name__) + """Load applications and tools and store them by their full name. + + Args: + system_settings (dict): Preloaded system settings. When passed manager + will always use these values. Gives ability to create manager + using different settings. + """ + def __init__(self, system_settings=None): + self.log = PypeLogger.get_logger(self.__class__.__name__) self.app_groups = {} self.applications = {} self.tool_groups = {} self.tools = {} + self._system_settings = system_settings + + self.refresh() + + def set_system_settings(self, system_settings): + """Ability to change init system settings. + + This will trigger refresh of manager. + """ + self._system_settings = system_settings + self.refresh() def refresh(self): @@ -278,9 +298,12 @@ class ApplicationManager: self.tool_groups.clear() self.tools.clear() - settings = get_system_settings( - clear_metadata=False, exclude_locals=False - ) + if self._system_settings is not None: + settings = copy.deepcopy(self._system_settings) + else: + settings = get_system_settings( + clear_metadata=False, exclude_locals=False + ) app_defs = settings["applications"] for group_name, variant_defs in app_defs.items(): @@ -1224,7 +1247,7 @@ def _prepare_last_workfile(data, workdir): file_template = anatomy.templates["work"]["file"] workdir_data.update({ "version": 1, - "user": os.environ.get("OPENPYPE_USERNAME") or getpass.getuser(), + "user": get_openpype_username(), "ext": extensions[0] }) diff --git a/openpype/lib/env_tools.py b/openpype/lib/env_tools.py index 025c13a322..ede14e00b2 100644 --- a/openpype/lib/env_tools.py +++ b/openpype/lib/env_tools.py @@ -1,5 +1,4 @@ import os -from openpype.settings import get_environments def env_value_to_bool(env_key=None, value=None, default=False): @@ -89,6 +88,7 @@ def get_global_environments(env=None): """ import acre from openpype.modules import ModulesManager + from openpype.settings import get_environments if env is None: env = {} diff --git a/openpype/lib/import_utils.py b/openpype/lib/import_utils.py index 5fca0ae5f9..4e72618803 100644 --- a/openpype/lib/import_utils.py +++ b/openpype/lib/import_utils.py @@ -8,7 +8,7 @@ log = Logger().get_logger(__name__) def discover_host_vendor_module(module_name): host = os.environ["AVALON_APP"] - pype_root = os.environ["OPENPYPE_ROOT"] + pype_root = os.environ["OPENPYPE_REPOS_ROOT"] main_module = module_name.split(".")[0] module_path = os.path.join( pype_root, "hosts", host, "vendor", main_module) diff --git a/openpype/lib/local_settings.py b/openpype/lib/local_settings.py index 56bdd047c9..67845c77cf 100644 --- a/openpype/lib/local_settings.py +++ b/openpype/lib/local_settings.py @@ -1,9 +1,11 @@ # -*- coding: utf-8 -*- """Package to deal with saving and retrieving user specific settings.""" import os +import json +import getpass +import platform from datetime import datetime from abc import ABCMeta, abstractmethod -import json # TODO Use pype igniter logic instead of using duplicated code # disable lru cache in Python 2 @@ -24,11 +26,11 @@ try: except ImportError: import ConfigParser as configparser -import platform - import six import appdirs +from openpype.settings import get_local_settings + from .import validate_mongo_connection _PLACEHOLDER = object() @@ -538,3 +540,25 @@ def change_openpype_mongo_url(new_mongo_url): if existing_value is not None: registry.delete_item(key) registry.set_item(key, new_mongo_url) + + +def get_openpype_username(): + """OpenPype username used for templates and publishing. + + May be different than machine's username. + + Always returns "OPENPYPE_USERNAME" environment if is set then tries local + settings and last option is to use `getpass.getuser()` which returns + machine username. + """ + username = os.environ.get("OPENPYPE_USERNAME") + if not username: + local_settings = get_local_settings() + username = ( + local_settings + .get("general", {}) + .get("username") + ) + if not username: + username = getpass.getuser() + return username diff --git a/openpype/lib/log.py b/openpype/lib/log.py index 9745279e28..39b6c67080 100644 --- a/openpype/lib/log.py +++ b/openpype/lib/log.py @@ -123,6 +123,8 @@ class PypeFormatter(logging.Formatter): if record.exc_info is not None: line_len = len(str(record.exc_info[1])) + if line_len > 30: + line_len = 30 out = "{}\n{}\n{}\n{}\n{}".format( out, line_len * "=", diff --git a/openpype/lib/plugin_tools.py b/openpype/lib/plugin_tools.py index eb024383d3..44c688456e 100644 --- a/openpype/lib/plugin_tools.py +++ b/openpype/lib/plugin_tools.py @@ -9,6 +9,7 @@ import tempfile from .execute import run_subprocess from .profiles_filtering import filter_profiles +from .vendor_bin_utils import get_oiio_tools_path from openpype.settings import get_project_settings @@ -127,7 +128,7 @@ def filter_pyblish_plugins(plugins): plugin_kind = file.split(os.path.sep)[-2:-1][0] # TODO: change after all plugins are moved one level up - if host_from_file == "pype": + if host_from_file == "openpype": host_from_file = "global" try: @@ -149,6 +150,95 @@ def filter_pyblish_plugins(plugins): setattr(plugin, option, value) +def set_plugin_attributes_from_settings( + plugins, superclass, host_name=None, project_name=None +): + """Change attribute values on Avalon plugins by project settings. + + This function should be used only in host context. Modify + behavior of plugins. + + Args: + plugins (list): Plugins discovered by origin avalon discover method. + superclass (object): Superclass of plugin type (e.g. Cretor, Loader). + host_name (str): Name of host for which plugins are loaded and from. + Value from environment `AVALON_APP` is used if not entered. + project_name (str): Name of project for which settings will be loaded. + Value from environment `AVALON_PROJECT` is used if not entered. + """ + + # determine host application to use for finding presets + if host_name is None: + host_name = os.environ.get("AVALON_APP") + + if project_name is None: + project_name = os.environ.get("AVALON_PROJECT") + + # map plugin superclass to preset json. Currenly suppoted is load and + # create (avalon.api.Loader and avalon.api.Creator) + plugin_type = None + if superclass.__name__.split(".")[-1] == "Loader": + plugin_type = "load" + elif superclass.__name__.split(".")[-1] == "Creator": + plugin_type = "create" + + if not host_name or not project_name or plugin_type is None: + msg = "Skipped attributes override from settings." + if not host_name: + msg += " Host name is not defined." + + if not project_name: + msg += " Project name is not defined." + + if plugin_type is None: + msg += " Plugin type is unsupported for class {}.".format( + superclass.__name__ + ) + + print(msg) + return + + print(">>> Finding presets for {}:{} ...".format(host_name, plugin_type)) + + project_settings = get_project_settings(project_name) + plugin_type_settings = ( + project_settings + .get(host_name, {}) + .get(plugin_type, {}) + ) + global_type_settings = ( + project_settings + .get("global", {}) + .get(plugin_type, {}) + ) + if not global_type_settings and not plugin_type_settings: + return + + for plugin in plugins: + plugin_name = plugin.__name__ + + plugin_settings = None + # Look for plugin settings in host specific settings + if plugin_name in plugin_type_settings: + plugin_settings = plugin_type_settings[plugin_name] + + # Look for plugin settings in global settings + elif plugin_name in global_type_settings: + plugin_settings = global_type_settings[plugin_name] + + if not plugin_settings: + continue + + print(">>> We have preset for {}".format(plugin_name)) + for option, value in plugin_settings.items(): + if option == "enabled" and value is False: + setattr(plugin, "active", False) + print(" - is disabled by preset") + else: + setattr(plugin, option, value) + print(" - setting `{}`: `{}`".format(option, value)) + + def source_hash(filepath, *args): """Generate simple identifier for a source file. This is used to identify whether a source file has previously been @@ -235,7 +325,7 @@ def oiio_supported(): Returns: (bool) """ - oiio_path = os.getenv("OPENPYPE_OIIO_PATH", "") + oiio_path = get_oiio_tools_path() if not oiio_path or not os.path.exists(oiio_path): log.debug("OIIOTool is not configured or not present at {}". format(oiio_path)) @@ -269,7 +359,7 @@ def decompress(target_dir, file_url, (int(input_frame_end) > int(input_frame_start)) oiio_cmd = [] - oiio_cmd.append(os.getenv("OPENPYPE_OIIO_PATH")) + oiio_cmd.append(get_oiio_tools_path()) oiio_cmd.append("--compression none") @@ -328,7 +418,7 @@ def should_decompress(file_url): """ if oiio_supported(): output = run_subprocess([ - os.getenv("OPENPYPE_OIIO_PATH"), + get_oiio_tools_path(), "--info", "-v", file_url]) return "compression: \"dwaa\"" in output or \ "compression: \"dwab\"" in output diff --git a/openpype/lib/pype_info.py b/openpype/lib/pype_info.py index 93d669eb0d..c56782be9e 100644 --- a/openpype/lib/pype_info.py +++ b/openpype/lib/pype_info.py @@ -28,7 +28,7 @@ def get_pype_info(): "version": get_pype_version(), "version_type": version_type, "executable": executable_args[-1], - "pype_root": os.environ["OPENPYPE_ROOT"], + "pype_root": os.environ["OPENPYPE_REPOS_ROOT"], "mongo_url": os.environ["OPENPYPE_MONGO"] } diff --git a/openpype/lib/ffmpeg_utils.py b/openpype/lib/vendor_bin_utils.py similarity index 50% rename from openpype/lib/ffmpeg_utils.py rename to openpype/lib/vendor_bin_utils.py index ba9f24c5d7..3b923cb608 100644 --- a/openpype/lib/ffmpeg_utils.py +++ b/openpype/lib/vendor_bin_utils.py @@ -1,33 +1,60 @@ import os import logging import json +import platform import subprocess -from . import get_paths_from_environ - log = logging.getLogger("FFmpeg utils") -def get_ffmpeg_tool_path(tool="ffmpeg"): - """Find path to ffmpeg tool in FFMPEG_PATH paths. +def get_vendor_bin_path(bin_app): + """Path to OpenPype vendorized binaries. - Function looks for tool in paths set in FFMPEG_PATH environment. If tool - exists then returns it's full path. + Vendorized executables are expected in specific hierarchy inside build or + in code source. + + "{OPENPYPE_ROOT}/vendor/bin/{name of vendorized app}/{platform}" Args: - tool (string): tool name + bin_app (str): Name of vendorized application. Returns: - (str): tool name itself when tool path was not found. (FFmpeg path - may be set in PATH environment variable) + str: Path to vendorized binaries folder. """ - dir_paths = get_paths_from_environ("FFMPEG_PATH") - for dir_path in dir_paths: - for file_name in os.listdir(dir_path): - base, _ext = os.path.splitext(file_name) - if base.lower() == tool.lower(): - return os.path.join(dir_path, tool) - return tool + return os.path.join( + os.environ["OPENPYPE_ROOT"], + "vendor", + "bin", + bin_app, + platform.system().lower() + ) + + +def get_oiio_tools_path(tool="oiiotool"): + """Path to vendorized OpenImageIO tool executables. + + Args: + tool (string): Tool name (oiiotool, maketx, ...). + Default is "oiiotool". + """ + oiio_dir = get_vendor_bin_path("oiio") + return os.path.join(oiio_dir, tool) + + +def get_ffmpeg_tool_path(tool="ffmpeg"): + """Path to vendorized FFmpeg executable. + + Args: + tool (string): Tool name (ffmpeg, ffprobe, ...). + Default is "ffmpeg". + + Returns: + str: Full path to ffmpeg executable. + """ + ffmpeg_dir = get_vendor_bin_path("ffmpeg") + if platform.system().lower() == "windows": + ffmpeg_dir = os.path.join(ffmpeg_dir, "bin") + return os.path.join(ffmpeg_dir, tool) def ffprobe_streams(path_to_file, logger=None): diff --git a/openpype/modules/__init__.py b/openpype/modules/__init__.py index d7c6d99fe6..bae48c540b 100644 --- a/openpype/modules/__init__.py +++ b/openpype/modules/__init__.py @@ -18,10 +18,6 @@ from .webserver import ( WebServerModule, IWebServerRoutes ) -from .user import ( - UserModule, - IUserModule -) from .idle_manager import ( IdleManager, IIdleManager @@ -60,9 +56,6 @@ __all__ = ( "WebServerModule", "IWebServerRoutes", - "UserModule", - "IUserModule", - "IdleManager", "IIdleManager", diff --git a/openpype/modules/clockify/clockify_api.py b/openpype/modules/clockify/clockify_api.py index 29de5de0c9..3f0a9799b4 100644 --- a/openpype/modules/clockify/clockify_api.py +++ b/openpype/modules/clockify/clockify_api.py @@ -34,7 +34,12 @@ class ClockifyAPI: self.request_counter = 0 self.request_time = time.time() - self.secure_registry = OpenPypeSecureRegistry("clockify") + self._secure_registry = None + + def secure_registry(self): + if self._secure_registry is None: + self._secure_registry = OpenPypeSecureRegistry("clockify") + return self._secure_registry @property def headers(self): diff --git a/openpype/modules/deadline/plugins/publish/submit_aftereffects_deadline.py b/openpype/modules/deadline/plugins/publish/submit_aftereffects_deadline.py index 38a6b9b246..69159fda1a 100644 --- a/openpype/modules/deadline/plugins/publish/submit_aftereffects_deadline.py +++ b/openpype/modules/deadline/plugins/publish/submit_aftereffects_deadline.py @@ -64,7 +64,6 @@ class AfterEffectsSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline "AVALON_ASSET", "AVALON_TASK", "AVALON_APP_NAME", - "OPENPYPE_USERNAME", "OPENPYPE_DEV", "OPENPYPE_LOG_NO_COLORS" ] diff --git a/openpype/modules/deadline/plugins/publish/submit_harmony_deadline.py b/openpype/modules/deadline/plugins/publish/submit_harmony_deadline.py index ba1ffdcf30..37041a84b1 100644 --- a/openpype/modules/deadline/plugins/publish/submit_harmony_deadline.py +++ b/openpype/modules/deadline/plugins/publish/submit_harmony_deadline.py @@ -273,7 +273,6 @@ class HarmonySubmitDeadline( "AVALON_ASSET", "AVALON_TASK", "AVALON_APP_NAME", - "OPENPYPE_USERNAME", "OPENPYPE_DEV", "OPENPYPE_LOG_NO_COLORS" ] diff --git a/openpype/modules/deadline/plugins/publish/submit_maya_deadline.py b/openpype/modules/deadline/plugins/publish/submit_maya_deadline.py index 3aea837bb1..a5841f406c 100644 --- a/openpype/modules/deadline/plugins/publish/submit_maya_deadline.py +++ b/openpype/modules/deadline/plugins/publish/submit_maya_deadline.py @@ -47,7 +47,7 @@ payload_skeleton_template = { "BatchName": None, # Top-level group name "Name": None, # Job name, as seen in Monitor "UserName": None, - "Plugin": "MayaPype", + "Plugin": "MayaBatch", "Frames": "{start}-{end}x{step}", "Comment": None, "Priority": 50, @@ -396,7 +396,7 @@ class MayaSubmitDeadline(pyblish.api.InstancePlugin): step=int(self._instance.data["byFrameStep"])) self.payload_skeleton["JobInfo"]["Plugin"] = self._instance.data.get( - "mayaRenderPlugin", "MayaPype") + "mayaRenderPlugin", "MayaBatch") self.payload_skeleton["JobInfo"]["BatchName"] = filename # Job name, as seen in Monitor @@ -441,7 +441,6 @@ class MayaSubmitDeadline(pyblish.api.InstancePlugin): "AVALON_ASSET", "AVALON_TASK", "AVALON_APP_NAME", - "OPENPYPE_USERNAME", "OPENPYPE_DEV", "OPENPYPE_LOG_NO_COLORS" ] diff --git a/openpype/modules/deadline/plugins/publish/submit_nuke_deadline.py b/openpype/modules/deadline/plugins/publish/submit_nuke_deadline.py index 2e30e624ef..7faa3393e5 100644 --- a/openpype/modules/deadline/plugins/publish/submit_nuke_deadline.py +++ b/openpype/modules/deadline/plugins/publish/submit_nuke_deadline.py @@ -31,6 +31,7 @@ class NukeSubmitDeadline(pyblish.api.InstancePlugin): group = "" department = "" limit_groups = {} + use_gpu = False def process(self, instance): instance.data["toBeRenderedOn"] = "deadline" @@ -206,6 +207,10 @@ class NukeSubmitDeadline(pyblish.api.InstancePlugin): # Resolve relative references "ProjectPath": script_path, "AWSAssetFile0": render_path, + + # using GPU by default + "UseGpu": self.use_gpu, + # Only the specific write node is rendered. "WriteNode": exe_node_name }, @@ -375,7 +380,7 @@ class NukeSubmitDeadline(pyblish.api.InstancePlugin): list: captured groups list """ captured_groups = [] - for lg_name, list_node_class in self.deadline_limit_groups.items(): + for lg_name, list_node_class in self.limit_groups.items(): for node_class in list_node_class: for node in nuke.allNodes(recurseGroups=True): # ignore all nodes not member of defined class diff --git a/openpype/modules/ftrack/event_handlers_server/action_prepare_project.py b/openpype/modules/ftrack/event_handlers_server/action_prepare_project.py index 8248bf532e..12d687bbf2 100644 --- a/openpype/modules/ftrack/event_handlers_server/action_prepare_project.py +++ b/openpype/modules/ftrack/event_handlers_server/action_prepare_project.py @@ -2,9 +2,9 @@ import json from openpype.api import ProjectSettings -from openpype.modules.ftrack.lib import ServerAction -from openpype.modules.ftrack.lib.avalon_sync import ( - get_pype_attr, +from openpype.modules.ftrack.lib import ( + ServerAction, + get_openpype_attr, CUST_ATTR_AUTO_SYNC ) @@ -159,7 +159,7 @@ class PrepareProjectServer(ServerAction): for key, entity in project_anatom_settings["attributes"].items(): attribute_values_by_key[key] = entity.value - cust_attrs, hier_cust_attrs = get_pype_attr(self.session, True) + cust_attrs, hier_cust_attrs = get_openpype_attr(self.session, True) for attr in hier_cust_attrs: key = attr["key"] diff --git a/openpype/modules/ftrack/event_handlers_server/event_sync_to_avalon.py b/openpype/modules/ftrack/event_handlers_server/event_sync_to_avalon.py index 347b227dd3..3bb01798e4 100644 --- a/openpype/modules/ftrack/event_handlers_server/event_sync_to_avalon.py +++ b/openpype/modules/ftrack/event_handlers_server/event_sync_to_avalon.py @@ -18,12 +18,15 @@ from avalon import schema from avalon.api import AvalonMongoDB from openpype.modules.ftrack.lib import ( + get_openpype_attr, + CUST_ATTR_ID_KEY, + CUST_ATTR_AUTO_SYNC, + avalon_sync, + BaseEvent ) from openpype.modules.ftrack.lib.avalon_sync import ( - CUST_ATTR_ID_KEY, - CUST_ATTR_AUTO_SYNC, EntitySchemas ) @@ -125,7 +128,7 @@ class SyncToAvalonEvent(BaseEvent): @property def avalon_cust_attrs(self): if self._avalon_cust_attrs is None: - self._avalon_cust_attrs = avalon_sync.get_pype_attr( + self._avalon_cust_attrs = get_openpype_attr( self.process_session, query_keys=self.cust_attr_query_keys ) return self._avalon_cust_attrs diff --git a/openpype/modules/ftrack/event_handlers_user/action_clean_hierarchical_attributes.py b/openpype/modules/ftrack/event_handlers_user/action_clean_hierarchical_attributes.py index c326c56a7c..45cc9adf55 100644 --- a/openpype/modules/ftrack/event_handlers_user/action_clean_hierarchical_attributes.py +++ b/openpype/modules/ftrack/event_handlers_user/action_clean_hierarchical_attributes.py @@ -1,7 +1,10 @@ import collections import ftrack_api -from openpype.modules.ftrack.lib import BaseAction, statics_icon -from openpype.modules.ftrack.lib.avalon_sync import get_pype_attr +from openpype.modules.ftrack.lib import ( + BaseAction, + statics_icon, + get_openpype_attr +) class CleanHierarchicalAttrsAction(BaseAction): @@ -52,7 +55,7 @@ class CleanHierarchicalAttrsAction(BaseAction): ) entity_ids_joined = ", ".join(all_entities_ids) - attrs, hier_attrs = get_pype_attr(session) + attrs, hier_attrs = get_openpype_attr(session) for attr in hier_attrs: configuration_key = attr["key"] diff --git a/openpype/modules/ftrack/event_handlers_user/action_create_cust_attrs.py b/openpype/modules/ftrack/event_handlers_user/action_create_cust_attrs.py index 63025d35b3..63605eda5e 100644 --- a/openpype/modules/ftrack/event_handlers_user/action_create_cust_attrs.py +++ b/openpype/modules/ftrack/event_handlers_user/action_create_cust_attrs.py @@ -2,10 +2,20 @@ import collections import json import arrow import ftrack_api -from openpype.modules.ftrack.lib import BaseAction, statics_icon -from openpype.modules.ftrack.lib.avalon_sync import ( - CUST_ATTR_ID_KEY, CUST_ATTR_GROUP, default_custom_attributes_definition +from openpype.modules.ftrack.lib import ( + BaseAction, + statics_icon, + + CUST_ATTR_ID_KEY, + CUST_ATTR_GROUP, + CUST_ATTR_TOOLS, + CUST_ATTR_APPLICATIONS, + + default_custom_attributes_definition, + app_definitions_from_app_manager, + tool_definitions_from_app_manager ) + from openpype.api import get_system_settings from openpype.lib import ApplicationManager @@ -370,24 +380,12 @@ class CustomAttributes(BaseAction): exc_info=True ) - def app_defs_from_app_manager(self): - app_definitions = [] - for app_name, app in self.app_manager.applications.items(): - if app.enabled and app.is_host: - app_definitions.append({ - app_name: app.full_label - }) - - if not app_definitions: - app_definitions.append({"empty": "< Empty >"}) - return app_definitions - def applications_attribute(self, event): - apps_data = self.app_defs_from_app_manager() + apps_data = app_definitions_from_app_manager(self.app_manager) applications_custom_attr_data = { "label": "Applications", - "key": "applications", + "key": CUST_ATTR_APPLICATIONS, "type": "enumerator", "entity_type": "show", "group": CUST_ATTR_GROUP, @@ -399,19 +397,11 @@ class CustomAttributes(BaseAction): self.process_attr_data(applications_custom_attr_data, event) def tools_attribute(self, event): - tools_data = [] - for tool_name, tool in self.app_manager.tools.items(): - tools_data.append({ - tool_name: tool.label - }) - - # Make sure there is at least one item - if not tools_data: - tools_data.append({"empty": "< Empty >"}) + tools_data = tool_definitions_from_app_manager(self.app_manager) tools_custom_attr_data = { "label": "Tools", - "key": "tools_env", + "key": CUST_ATTR_TOOLS, "type": "enumerator", "is_hierarchical": True, "group": CUST_ATTR_GROUP, diff --git a/openpype/modules/ftrack/event_handlers_user/action_prepare_project.py b/openpype/modules/ftrack/event_handlers_user/action_prepare_project.py index bd25f995fe..5298c06371 100644 --- a/openpype/modules/ftrack/event_handlers_user/action_prepare_project.py +++ b/openpype/modules/ftrack/event_handlers_user/action_prepare_project.py @@ -4,10 +4,8 @@ from openpype.api import ProjectSettings from openpype.modules.ftrack.lib import ( BaseAction, - statics_icon -) -from openpype.modules.ftrack.lib.avalon_sync import ( - get_pype_attr, + statics_icon, + get_openpype_attr, CUST_ATTR_AUTO_SYNC ) @@ -162,7 +160,7 @@ class PrepareProjectLocal(BaseAction): for key, entity in project_anatom_settings["attributes"].items(): attribute_values_by_key[key] = entity.value - cust_attrs, hier_cust_attrs = get_pype_attr(self.session, True) + cust_attrs, hier_cust_attrs = get_openpype_attr(self.session, True) for attr in hier_cust_attrs: key = attr["key"] diff --git a/openpype/modules/ftrack/ftrack_module.py b/openpype/modules/ftrack/ftrack_module.py index cd383cbdc6..ee139a500e 100644 --- a/openpype/modules/ftrack/ftrack_module.py +++ b/openpype/modules/ftrack/ftrack_module.py @@ -1,4 +1,5 @@ import os +import json import collections from abc import ABCMeta, abstractmethod import six @@ -8,10 +9,10 @@ from openpype.modules import ( ITrayModule, IPluginPaths, ITimersManager, - IUserModule, ILaunchHookPaths, ISettingsChangeListener ) +from openpype.settings import SaveWarningExc FTRACK_MODULE_DIR = os.path.dirname(os.path.abspath(__file__)) @@ -32,7 +33,6 @@ class FtrackModule( ITrayModule, IPluginPaths, ITimersManager, - IUserModule, ILaunchHookPaths, ISettingsChangeListener ): @@ -42,7 +42,17 @@ class FtrackModule( ftrack_settings = settings[self.name] self.enabled = ftrack_settings["enabled"] - self.ftrack_url = ftrack_settings["ftrack_server"].strip("/ ") + # Add http schema + ftrack_url = ftrack_settings["ftrack_server"].strip("/ ") + if ftrack_url: + if "http" not in ftrack_url: + ftrack_url = "https://" + ftrack_url + + # Check if "ftrack.app" is part os url + if "ftrackapp.com" not in ftrack_url: + ftrack_url = ftrack_url + ".ftrackapp.com" + + self.ftrack_url = ftrack_url current_dir = os.path.dirname(os.path.abspath(__file__)) server_event_handlers_paths = [ @@ -113,15 +123,107 @@ class FtrackModule( if self.tray_module: self.tray_module.stop_timer_manager() - def on_pype_user_change(self, username): - """Implementation of IUserModule interface.""" - if self.tray_module: - self.tray_module.changed_user() - - def on_system_settings_save(self, *_args, **_kwargs): + def on_system_settings_save( + self, old_value, new_value, changes, new_value_metadata + ): """Implementation of ISettingsChangeListener interface.""" - # Ignore - return + if not self.ftrack_url: + raise SaveWarningExc(( + "Ftrack URL is not set." + " Can't propagate changes to Ftrack server." + )) + + ftrack_changes = changes.get("modules", {}).get("ftrack", {}) + url_change_msg = None + if "ftrack_server" in ftrack_changes: + url_change_msg = ( + "Ftrack URL was changed." + " This change may need to restart OpenPype to take affect." + ) + + try: + session = self.create_ftrack_session() + except Exception: + self.log.warning("Couldn't create ftrack session.", exc_info=True) + + if url_change_msg: + raise SaveWarningExc(url_change_msg) + + raise SaveWarningExc(( + "Saving of attributes to ftrack wasn't successful," + " try running Create/Update Avalon Attributes in ftrack." + )) + + from .lib import ( + get_openpype_attr, + CUST_ATTR_APPLICATIONS, + CUST_ATTR_TOOLS, + app_definitions_from_app_manager, + tool_definitions_from_app_manager + ) + from openpype.api import ApplicationManager + query_keys = [ + "id", + "key", + "config" + ] + custom_attributes = get_openpype_attr( + session, + split_hierarchical=False, + query_keys=query_keys + ) + app_attribute = None + tool_attribute = None + for custom_attribute in custom_attributes: + key = custom_attribute["key"] + if key == CUST_ATTR_APPLICATIONS: + app_attribute = custom_attribute + elif key == CUST_ATTR_TOOLS: + tool_attribute = custom_attribute + + app_manager = ApplicationManager(new_value_metadata) + missing_attributes = [] + if not app_attribute: + missing_attributes.append(CUST_ATTR_APPLICATIONS) + else: + config = json.loads(app_attribute["config"]) + new_data = app_definitions_from_app_manager(app_manager) + prepared_data = [] + for item in new_data: + for key, label in item.items(): + prepared_data.append({ + "menu": label, + "value": key + }) + + config["data"] = json.dumps(prepared_data) + app_attribute["config"] = json.dumps(config) + + if not tool_attribute: + missing_attributes.append(CUST_ATTR_TOOLS) + else: + config = json.loads(tool_attribute["config"]) + new_data = tool_definitions_from_app_manager(app_manager) + prepared_data = [] + for item in new_data: + for key, label in item.items(): + prepared_data.append({ + "menu": label, + "value": key + }) + config["data"] = json.dumps(prepared_data) + tool_attribute["config"] = json.dumps(config) + + session.commit() + + if missing_attributes: + raise SaveWarningExc(( + "Couldn't find custom attribute/s ({}) to update." + " Try running Create/Update Avalon Attributes in ftrack." + ).format(", ".join(missing_attributes))) + + if url_change_msg: + raise SaveWarningExc(url_change_msg) def on_project_settings_save(self, *_args, **_kwargs): """Implementation of ISettingsChangeListener interface.""" @@ -129,7 +231,7 @@ class FtrackModule( return def on_project_anatomy_save( - self, old_value, new_value, changes, project_name + self, old_value, new_value, changes, project_name, new_value_metadata ): """Implementation of ISettingsChangeListener interface.""" if not project_name: @@ -140,32 +242,49 @@ class FtrackModule( return import ftrack_api - from openpype.modules.ftrack.lib import avalon_sync + from openpype.modules.ftrack.lib import get_openpype_attr + + try: + session = self.create_ftrack_session() + except Exception: + self.log.warning("Couldn't create ftrack session.", exc_info=True) + raise SaveWarningExc(( + "Saving of attributes to ftrack wasn't successful," + " try running Create/Update Avalon Attributes in ftrack." + )) - session = self.create_ftrack_session() project_entity = session.query( "Project where full_name is \"{}\"".format(project_name) ).first() if not project_entity: - self.log.warning(( - "Ftrack project with names \"{}\" was not found." - " Skipping settings attributes change callback." - )) - return + msg = ( + "Ftrack project with name \"{}\" was not found in Ftrack." + " Can't push attribute changes." + ).format(project_name) + self.log.warning(msg) + raise SaveWarningExc(msg) project_id = project_entity["id"] - cust_attr, hier_attr = avalon_sync.get_pype_attr(session) + cust_attr, hier_attr = get_openpype_attr(session) cust_attr_by_key = {attr["key"]: attr for attr in cust_attr} hier_attrs_by_key = {attr["key"]: attr for attr in hier_attr} + + failed = {} + missing = {} for key, value in attributes_changes.items(): configuration = hier_attrs_by_key.get(key) if not configuration: configuration = cust_attr_by_key.get(key) if not configuration: + self.log.warning( + "Custom attribute \"{}\" was not found.".format(key) + ) + missing[key] = value continue + # TODO add add permissions check # TODO add value validations # - value type and list items entity_key = collections.OrderedDict() @@ -179,10 +298,45 @@ class FtrackModule( "value", ftrack_api.symbol.NOT_SET, value - ) ) - session.commit() + try: + session.commit() + self.log.debug( + "Changed project custom attribute \"{}\" to \"{}\"".format( + key, value + ) + ) + except Exception: + self.log.warning( + "Failed to set \"{}\" to \"{}\"".format(key, value), + exc_info=True + ) + session.rollback() + failed[key] = value + + if not failed and not missing: + return + + error_msg = ( + "Values were not updated on Ftrack which may cause issues." + " try running Create/Update Avalon Attributes in ftrack " + " and resave project settings." + ) + if missing: + error_msg += "\nMissing Custom attributes on Ftrack: {}.".format( + ", ".join([ + '"{}"'.format(key) + for key in missing.keys() + ]) + ) + if failed: + joined_failed = ", ".join([ + '"{}": "{}"'.format(key, value) + for key, value in failed.items() + ]) + error_msg += "\nFailed to set: {}".format(joined_failed) + raise SaveWarningExc(error_msg) def create_ftrack_session(self, **session_kwargs): import ftrack_api diff --git a/openpype/modules/ftrack/launch_hooks/pre_python2_vendor.py b/openpype/modules/ftrack/launch_hooks/pre_python2_vendor.py index f14857bc98..d34b6533fb 100644 --- a/openpype/modules/ftrack/launch_hooks/pre_python2_vendor.py +++ b/openpype/modules/ftrack/launch_hooks/pre_python2_vendor.py @@ -8,10 +8,13 @@ class PrePython2Support(PreLaunchHook): Path to vendor modules is added to the beggining of PYTHONPATH. """ - # There will be needed more granular filtering in future - app_groups = ["maya", "nuke", "nukex", "hiero", "nukestudio", "unreal"] def execute(self): + if not self.application.use_python_2: + return + + self.log.info("Adding Ftrack Python 2 packages to PYTHONPATH.") + # Prepare vendor dir path python_2_vendor = os.path.join(FTRACK_MODULE_DIR, "python2_vendor") diff --git a/openpype/modules/ftrack/lib/__init__.py b/openpype/modules/ftrack/lib/__init__.py index 82b6875590..ce6d5284b6 100644 --- a/openpype/modules/ftrack/lib/__init__.py +++ b/openpype/modules/ftrack/lib/__init__.py @@ -1,7 +1,21 @@ +from .constants import ( + CUST_ATTR_ID_KEY, + CUST_ATTR_AUTO_SYNC, + CUST_ATTR_GROUP, + CUST_ATTR_TOOLS, + CUST_ATTR_APPLICATIONS +) from . settings import ( get_ftrack_url_from_settings, get_ftrack_event_mongo_info ) +from .custom_attributes import ( + default_custom_attributes_definition, + app_definitions_from_app_manager, + tool_definitions_from_app_manager, + get_openpype_attr +) + from . import avalon_sync from . import credentials from .ftrack_base_handler import BaseHandler @@ -10,9 +24,20 @@ from .ftrack_action_handler import BaseAction, ServerAction, statics_icon __all__ = ( + "CUST_ATTR_ID_KEY", + "CUST_ATTR_AUTO_SYNC", + "CUST_ATTR_GROUP", + "CUST_ATTR_TOOLS", + "CUST_ATTR_APPLICATIONS", + "get_ftrack_url_from_settings", "get_ftrack_event_mongo_info", + "default_custom_attributes_definition", + "app_definitions_from_app_manager", + "tool_definitions_from_app_manager", + "get_openpype_attr", + "avalon_sync", "credentials", diff --git a/openpype/modules/ftrack/lib/avalon_sync.py b/openpype/modules/ftrack/lib/avalon_sync.py index 79e1366a0d..f58e858a5a 100644 --- a/openpype/modules/ftrack/lib/avalon_sync.py +++ b/openpype/modules/ftrack/lib/avalon_sync.py @@ -14,17 +14,21 @@ else: from avalon.api import AvalonMongoDB import avalon + from openpype.api import ( Logger, Anatomy, get_anatomy_settings ) +from openpype.lib import ApplicationManager + +from .constants import CUST_ATTR_ID_KEY +from .custom_attributes import get_openpype_attr from bson.objectid import ObjectId from bson.errors import InvalidId from pymongo import UpdateOne import ftrack_api -from openpype.lib import ApplicationManager log = Logger.get_logger(__name__) @@ -36,23 +40,6 @@ EntitySchemas = { "config": "openpype:config-2.0" } -# Group name of custom attributes -CUST_ATTR_GROUP = "openpype" - -# name of Custom attribute that stores mongo_id from avalon db -CUST_ATTR_ID_KEY = "avalon_mongo_id" -CUST_ATTR_AUTO_SYNC = "avalon_auto_sync" - - -def default_custom_attributes_definition(): - json_file_path = os.path.join( - os.path.dirname(os.path.abspath(__file__)), - "custom_attributes.json" - ) - with open(json_file_path, "r") as json_stream: - data = json.load(json_stream) - return data - def check_regex(name, entity_type, in_schema=None, schema_patterns=None): schema_name = "asset-3.0" @@ -91,39 +78,6 @@ def join_query_keys(keys): return ",".join(["\"{}\"".format(key) for key in keys]) -def get_pype_attr(session, split_hierarchical=True, query_keys=None): - custom_attributes = [] - hier_custom_attributes = [] - if not query_keys: - query_keys = [ - "id", - "entity_type", - "object_type_id", - "is_hierarchical", - "default" - ] - # TODO remove deprecated "pype" group from query - cust_attrs_query = ( - "select {}" - " from CustomAttributeConfiguration" - # Kept `pype` for Backwards Compatiblity - " where group.name in (\"pype\", \"{}\")" - ).format(", ".join(query_keys), CUST_ATTR_GROUP) - all_avalon_attr = session.query(cust_attrs_query).all() - for cust_attr in all_avalon_attr: - if split_hierarchical and cust_attr["is_hierarchical"]: - hier_custom_attributes.append(cust_attr) - continue - - custom_attributes.append(cust_attr) - - if split_hierarchical: - # return tuple - return custom_attributes, hier_custom_attributes - - return custom_attributes - - def get_python_type_for_custom_attribute(cust_attr, cust_attr_type_name=None): """Python type that should value of custom attribute have. @@ -921,7 +875,7 @@ class SyncEntitiesFactory: def set_cutom_attributes(self): self.log.debug("* Preparing custom attributes") # Get custom attributes and values - custom_attrs, hier_attrs = get_pype_attr( + custom_attrs, hier_attrs = get_openpype_attr( self.session, query_keys=self.cust_attr_query_keys ) ent_types = self.session.query("select id, name from ObjectType").all() @@ -2508,7 +2462,7 @@ class SyncEntitiesFactory: if new_entity_id not in p_chilren: self.entities_dict[parent_id]["children"].append(new_entity_id) - cust_attr, _ = get_pype_attr(self.session) + cust_attr, _ = get_openpype_attr(self.session) for _attr in cust_attr: key = _attr["key"] if key not in av_entity["data"]: diff --git a/openpype/modules/ftrack/lib/constants.py b/openpype/modules/ftrack/lib/constants.py new file mode 100644 index 0000000000..73d5112e6d --- /dev/null +++ b/openpype/modules/ftrack/lib/constants.py @@ -0,0 +1,12 @@ +# Group name of custom attributes +CUST_ATTR_GROUP = "openpype" + +# name of Custom attribute that stores mongo_id from avalon db +CUST_ATTR_ID_KEY = "avalon_mongo_id" +# Auto sync of project +CUST_ATTR_AUTO_SYNC = "avalon_auto_sync" + +# Applications custom attribute name +CUST_ATTR_APPLICATIONS = "applications" +# Environment tools custom attribute +CUST_ATTR_TOOLS = "tools_env" diff --git a/openpype/modules/ftrack/lib/credentials.py b/openpype/modules/ftrack/lib/credentials.py index 2d719347e7..4e29e66382 100644 --- a/openpype/modules/ftrack/lib/credentials.py +++ b/openpype/modules/ftrack/lib/credentials.py @@ -15,7 +15,10 @@ API_KEY_KEY = "api_key" def get_ftrack_hostname(ftrack_server=None): if not ftrack_server: - ftrack_server = os.environ["FTRACK_SERVER"] + ftrack_server = os.environ.get("FTRACK_SERVER") + + if not ftrack_server: + return None if "//" not in ftrack_server: ftrack_server = "//" + ftrack_server @@ -29,17 +32,24 @@ def _get_ftrack_secure_key(hostname, key): def get_credentials(ftrack_server=None): + output = { + USERNAME_KEY: None, + API_KEY_KEY: None + } hostname = get_ftrack_hostname(ftrack_server) + if not hostname: + return output + username_name = _get_ftrack_secure_key(hostname, USERNAME_KEY) api_key_name = _get_ftrack_secure_key(hostname, API_KEY_KEY) username_registry = OpenPypeSecureRegistry(username_name) api_key_registry = OpenPypeSecureRegistry(api_key_name) - return { - USERNAME_KEY: username_registry.get_item(USERNAME_KEY, None), - API_KEY_KEY: api_key_registry.get_item(API_KEY_KEY, None) - } + output[USERNAME_KEY] = username_registry.get_item(USERNAME_KEY, None) + output[API_KEY_KEY] = api_key_registry.get_item(API_KEY_KEY, None) + + return output def save_credentials(username, api_key, ftrack_server=None): @@ -77,9 +87,9 @@ def clear_credentials(ftrack_server=None): def check_credentials(username, api_key, ftrack_server=None): if not ftrack_server: - ftrack_server = os.environ["FTRACK_SERVER"] + ftrack_server = os.environ.get("FTRACK_SERVER") - if not username or not api_key: + if not ftrack_server or not username or not api_key: return False try: diff --git a/openpype/modules/ftrack/lib/custom_attributes.py b/openpype/modules/ftrack/lib/custom_attributes.py new file mode 100644 index 0000000000..33eea32baa --- /dev/null +++ b/openpype/modules/ftrack/lib/custom_attributes.py @@ -0,0 +1,73 @@ +import os +import json + +from .constants import CUST_ATTR_GROUP + + +def default_custom_attributes_definition(): + json_file_path = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + "custom_attributes.json" + ) + with open(json_file_path, "r") as json_stream: + data = json.load(json_stream) + return data + + +def app_definitions_from_app_manager(app_manager): + app_definitions = [] + for app_name, app in app_manager.applications.items(): + if app.enabled and app.is_host: + app_definitions.append({ + app_name: app.full_label + }) + + if not app_definitions: + app_definitions.append({"empty": "< Empty >"}) + return app_definitions + + +def tool_definitions_from_app_manager(app_manager): + tools_data = [] + for tool_name, tool in app_manager.tools.items(): + tools_data.append({ + tool_name: tool.label + }) + + # Make sure there is at least one item + if not tools_data: + tools_data.append({"empty": "< Empty >"}) + return tools_data + + +def get_openpype_attr(session, split_hierarchical=True, query_keys=None): + custom_attributes = [] + hier_custom_attributes = [] + if not query_keys: + query_keys = [ + "id", + "entity_type", + "object_type_id", + "is_hierarchical", + "default" + ] + # TODO remove deprecated "pype" group from query + cust_attrs_query = ( + "select {}" + " from CustomAttributeConfiguration" + # Kept `pype` for Backwards Compatiblity + " where group.name in (\"pype\", \"{}\")" + ).format(", ".join(query_keys), CUST_ATTR_GROUP) + all_avalon_attr = session.query(cust_attrs_query).all() + for cust_attr in all_avalon_attr: + if split_hierarchical and cust_attr["is_hierarchical"]: + hier_custom_attributes.append(cust_attr) + continue + + custom_attributes.append(cust_attr) + + if split_hierarchical: + # return tuple + return custom_attributes, hier_custom_attributes + + return custom_attributes diff --git a/openpype/hosts/maya/plugins/publish/collect_ftrack_family.py b/openpype/modules/ftrack/plugins/publish/collect_ftrack_family.py similarity index 64% rename from openpype/hosts/maya/plugins/publish/collect_ftrack_family.py rename to openpype/modules/ftrack/plugins/publish/collect_ftrack_family.py index b2b66b1875..e6daed9a33 100644 --- a/openpype/hosts/maya/plugins/publish/collect_ftrack_family.py +++ b/openpype/modules/ftrack/plugins/publish/collect_ftrack_family.py @@ -2,14 +2,9 @@ import pyblish.api class CollectFtrackFamilies(pyblish.api.InstancePlugin): - """Collect model data - - Ensures always only a single frame is extracted (current frame). - - Note: - This is a workaround so that the `pype.model` family can use the - same pointcache extractor implementation as animation and pointcaches. - This always enforces the "current" frame to be published. + """Collect family for ftrack publishing + + Add ftrack family to those instance that should be published to ftrack """ @@ -23,6 +18,7 @@ class CollectFtrackFamilies(pyblish.api.InstancePlugin): "rig", "camera" ] + hosts = ["maya"] def process(self, instance): diff --git a/openpype/modules/ftrack/tray/ftrack_tray.py b/openpype/modules/ftrack/tray/ftrack_tray.py index ee27d8b730..34e4646767 100644 --- a/openpype/modules/ftrack/tray/ftrack_tray.py +++ b/openpype/modules/ftrack/tray/ftrack_tray.py @@ -289,12 +289,6 @@ class FtrackTrayWrapper: parent_menu.addMenu(tray_menu) - def tray_start(self): - self.validate() - - def tray_exit(self): - self.stop_action_server() - # Definition of visibility of each menu actions def set_menu_visibility(self): self.tray_server_menu.menuAction().setVisible(self.bool_logged) diff --git a/openpype/modules/ftrack/tray/login_dialog.py b/openpype/modules/ftrack/tray/login_dialog.py index ce91c6d012..a6360a7380 100644 --- a/openpype/modules/ftrack/tray/login_dialog.py +++ b/openpype/modules/ftrack/tray/login_dialog.py @@ -134,11 +134,11 @@ class CredentialsDialog(QtWidgets.QDialog): def fill_ftrack_url(self): url = os.getenv("FTRACK_SERVER") - if url == self.ftsite_input.text(): + checked_url = self.check_url(url) + if checked_url == self.ftsite_input.text(): return - checked_url = self.check_url(url) - self.ftsite_input.setText(checked_url or "") + self.ftsite_input.setText(checked_url or "< Not set >") enabled = bool(checked_url) @@ -147,7 +147,15 @@ class CredentialsDialog(QtWidgets.QDialog): self.api_input.setEnabled(enabled) self.user_input.setEnabled(enabled) - self.ftsite_input.setEnabled(enabled) + + if not url: + self.btn_advanced.hide() + self.btn_simple.hide() + self.btn_ftrack_login.hide() + self.btn_login.hide() + self.note_label.hide() + self.api_input.hide() + self.user_input.hide() def set_advanced_mode(self, is_advanced): self._in_advance_mode = is_advanced @@ -293,10 +301,9 @@ class CredentialsDialog(QtWidgets.QDialog): url = url.strip("/ ") if not url: - self.set_error(( - "You need to specify a valid server URL, " - "for example https://server-name.ftrackapp.com" - )) + self.set_error( + "Ftrack URL is not defined in settings!" + ) return if "http" not in url: diff --git a/openpype/modules/idle_manager/idle_module.py b/openpype/modules/idle_manager/idle_module.py index c06dbed78c..5dd5160aa7 100644 --- a/openpype/modules/idle_manager/idle_module.py +++ b/openpype/modules/idle_manager/idle_module.py @@ -1,3 +1,4 @@ +import platform import collections from abc import ABCMeta, abstractmethod @@ -40,7 +41,12 @@ class IdleManager(PypeModule, ITrayService): name = "idle_manager" def initialize(self, module_settings): - self.enabled = True + enabled = True + # Ignore on MacOs + # - pynput need root permissions and enabled access for application + if platform.system().lower() == "darwin": + enabled = False + self.enabled = enabled self.time_callbacks = collections.defaultdict(list) self.idle_thread = None diff --git a/openpype/modules/launcher_action.py b/openpype/modules/launcher_action.py index da0468d495..5ed8585b6a 100644 --- a/openpype/modules/launcher_action.py +++ b/openpype/modules/launcher_action.py @@ -22,7 +22,6 @@ class LauncherAction(PypeModule, ITrayAction): # Register actions if self.tray_initialized: from openpype.tools.launcher import actions - # actions.register_default_actions() actions.register_config_actions() actions_paths = self.manager.collect_plugin_paths()["actions"] actions.register_actions_from_paths(actions_paths) diff --git a/openpype/modules/settings_action.py b/openpype/modules/settings_action.py index 371e190c12..5651868f68 100644 --- a/openpype/modules/settings_action.py +++ b/openpype/modules/settings_action.py @@ -16,18 +16,20 @@ class ISettingsChangeListener: } """ @abstractmethod - def on_system_settings_save(self, old_value, new_value, changes): + def on_system_settings_save( + self, old_value, new_value, changes, new_value_metadata + ): pass @abstractmethod def on_project_settings_save( - self, old_value, new_value, changes, project_name + self, old_value, new_value, changes, project_name, new_value_metadata ): pass @abstractmethod def on_project_anatomy_save( - self, old_value, new_value, changes, project_name + self, old_value, new_value, changes, project_name, new_value_metadata ): pass @@ -78,16 +80,20 @@ class SettingsAction(PypeModule, ITrayAction): # Store if was visible was_visible = self.settings_window.isVisible() + was_minimized = self.settings_window.isMinimized() # Show settings gui self.settings_window.show() + if was_minimized: + self.settings_window.showNormal() + # Pull window to the front. self.settings_window.raise_() self.settings_window.activateWindow() # Reset content if was not visible - if not was_visible: + if not was_visible and not was_minimized: self.settings_window.reset() diff --git a/openpype/modules/sync_server/providers/gdrive.py b/openpype/modules/sync_server/providers/gdrive.py index f1ea24f601..b67e5a6cfa 100644 --- a/openpype/modules/sync_server/providers/gdrive.py +++ b/openpype/modules/sync_server/providers/gdrive.py @@ -7,7 +7,7 @@ from .abstract_provider import AbstractProvider from googleapiclient.http import MediaFileUpload, MediaIoBaseDownload from openpype.api import Logger from openpype.api import get_system_settings -from ..utils import time_function +from ..utils import time_function, ResumableError import time @@ -63,7 +63,14 @@ class GDriveHandler(AbstractProvider): return self.service = self._get_gd_service() - self.root = self._prepare_root_info() + try: + self.root = self._prepare_root_info() + except errors.HttpError: + log.warning("HttpError in sync loop, " + "trying next loop", + exc_info=True) + raise ResumableError + self._tree = tree self.active = True diff --git a/openpype/modules/sync_server/providers/lib.py b/openpype/modules/sync_server/providers/lib.py index 58947e115d..01a5d50ba5 100644 --- a/openpype/modules/sync_server/providers/lib.py +++ b/openpype/modules/sync_server/providers/lib.py @@ -92,4 +92,4 @@ factory = ProviderFactory() # 7 denotes number of files that could be synced in single loop - learned by # trial and error factory.register_provider('gdrive', GDriveHandler, 7) -factory.register_provider('local_drive', LocalDriveHandler, 10) +factory.register_provider('local_drive', LocalDriveHandler, 50) diff --git a/openpype/modules/sync_server/sync_server.py b/openpype/modules/sync_server/sync_server.py index e97c0e8844..9b305a1b2e 100644 --- a/openpype/modules/sync_server/sync_server.py +++ b/openpype/modules/sync_server/sync_server.py @@ -8,7 +8,7 @@ from concurrent.futures._base import CancelledError from .providers import lib from openpype.lib import PypeLogger -from .utils import SyncStatus +from .utils import SyncStatus, ResumableError log = PypeLogger().get_logger("SyncServer") @@ -232,6 +232,7 @@ class SyncServerThread(threading.Thread): self.loop = None self.is_running = False self.executor = concurrent.futures.ThreadPoolExecutor(max_workers=3) + self.timer = None def run(self): self.is_running = True @@ -266,8 +267,8 @@ class SyncServerThread(threading.Thread): Returns: """ - try: - while self.is_running and not self.module.is_paused(): + while self.is_running and not self.module.is_paused(): + try: import time start_time = None self.module.set_sync_project_settings() # clean cache @@ -384,17 +385,27 @@ class SyncServerThread(threading.Thread): duration = time.time() - start_time log.debug("One loop took {:.2f}s".format(duration)) - await asyncio.sleep(self.module.get_loop_delay(collection)) - except ConnectionResetError: - log.warning("ConnectionResetError in sync loop, trying next loop", - exc_info=True) - except CancelledError: - # just stopping server - pass - except Exception: - self.stop() - log.warning("Unhandled exception in sync loop, stopping server", - exc_info=True) + + delay = self.module.get_loop_delay(collection) + log.debug("Waiting for {} seconds to new loop".format(delay)) + self.timer = asyncio.create_task(self.run_timer(delay)) + await asyncio.gather(self.timer) + + except ConnectionResetError: + log.warning("ConnectionResetError in sync loop, " + "trying next loop", + exc_info=True) + except CancelledError: + # just stopping server + pass + except ResumableError: + log.warning("ResumableError in sync loop, " + "trying next loop", + exc_info=True) + except Exception: + self.stop() + log.warning("Unhandled except. in sync loop, stopping server", + exc_info=True) def stop(self): """Sets is_running flag to false, 'check_shutdown' shuts server down""" @@ -417,6 +428,17 @@ class SyncServerThread(threading.Thread): await asyncio.sleep(0.07) self.loop.stop() + async def run_timer(self, delay): + """Wait for 'delay' seconds to start next loop""" + await asyncio.sleep(delay) + + def reset_timer(self): + """Called when waiting for next loop should be skipped""" + log.debug("Resetting timer") + if self.timer: + self.timer.cancel() + self.timer = None + def _working_sites(self, collection): if self.module.is_project_paused(collection): log.debug("Both sites same, skipping") diff --git a/openpype/modules/sync_server/sync_server_module.py b/openpype/modules/sync_server/sync_server_module.py index 59c3787789..5645cdfbec 100644 --- a/openpype/modules/sync_server/sync_server_module.py +++ b/openpype/modules/sync_server/sync_server_module.py @@ -83,6 +83,7 @@ class SyncServerModule(PypeModule, ITrayModule): DEFAULT_SITE = 'studio' LOCAL_SITE = 'local' LOG_PROGRESS_SEC = 5 # how often log progress to DB + DEFAULT_PRIORITY = 50 # higher is better, allowed range 1 - 1000 name = "sync_server" label = "Sync Queue" @@ -401,6 +402,24 @@ class SyncServerModule(PypeModule, ITrayModule): return remote_site + def reset_timer(self): + """ + Called when waiting for next loop should be skipped. + + In case of user's involvement (reset site), start that right away. + """ + self.sync_server_thread.reset_timer() + + def get_enabled_projects(self): + """Returns list of projects which have SyncServer enabled.""" + enabled_projects = [] + for project in self.connection.projects(): + project_name = project["name"] + project_settings = self.get_sync_project_setting(project_name) + if project_settings: + enabled_projects.append(project_name) + + return enabled_projects """ End of Public API """ def get_local_file_path(self, collection, site_name, file_path): @@ -413,7 +432,7 @@ class SyncServerModule(PypeModule, ITrayModule): return local_file_path def _get_remote_sites_from_settings(self, sync_settings): - if not self.enabled or not sync_settings['enabled']: + if not self.enabled or not sync_settings.get('enabled'): return [] remote_sites = [self.DEFAULT_SITE, self.LOCAL_SITE] @@ -424,7 +443,7 @@ class SyncServerModule(PypeModule, ITrayModule): def _get_enabled_sites_from_settings(self, sync_settings): sites = [self.DEFAULT_SITE] - if self.enabled and sync_settings['enabled']: + if self.enabled and sync_settings.get('enabled'): sites.append(self.LOCAL_SITE) return sites @@ -445,10 +464,16 @@ class SyncServerModule(PypeModule, ITrayModule): if not self.enabled: return + enabled_projects = self.get_enabled_projects() + if not enabled_projects: + self.enabled = False + return + self.lock = threading.Lock() try: self.sync_server_thread = SyncServerThread(self) + from .tray.app import SyncServerWindow self.widget = SyncServerWindow(self) except ValueError: @@ -639,7 +664,7 @@ class SyncServerModule(PypeModule, ITrayModule): self.connection.Session["AVALON_PROJECT"] = collection # retry_cnt - number of attempts to sync specific file before giving up retries_arr = self._get_retries_arr(collection) - query = { + match = { "type": "representation", "$or": [ {"$and": [ @@ -677,10 +702,47 @@ class SyncServerModule(PypeModule, ITrayModule): ]} ] } + + aggr = [ + {"$match": match}, + {'$unwind': '$files'}, + {'$addFields': { + 'order_remote': { + '$filter': {'input': '$files.sites', 'as': 'p', + 'cond': {'$eq': ['$$p.name', remote_site]} + }}, + 'order_local': { + '$filter': {'input': '$files.sites', 'as': 'p', + 'cond': {'$eq': ['$$p.name', active_site]} + }}, + }}, + {'$addFields': { + 'priority': { + '$cond': [ + {'$size': '$order_local.priority'}, + {'$first': '$order_local.priority'}, + {'$cond': [ + {'$size': '$order_remote.priority'}, + {'$first': '$order_remote.priority'}, + self.DEFAULT_PRIORITY]} + ] + }, + }}, + {'$group': { + '_id': '$_id', + # pass through context - same for representation + 'context': {'$addToSet': '$context'}, + 'data': {'$addToSet': '$data'}, + # pass through files as a list + 'files': {'$addToSet': '$files'}, + 'priority': {'$max': "$priority"}, + }}, + {"$sort": {'priority': -1, '_id': 1}}, + ] log.debug("active_site:{} - remote_site:{}".format(active_site, remote_site)) - log.debug("query: {}".format(query)) - representations = self.connection.find(query) + log.debug("query: {}".format(aggr)) + representations = self.connection.aggregate(aggr) return representations @@ -726,7 +788,7 @@ class SyncServerModule(PypeModule, ITrayModule): return SyncStatus.DO_NOTHING def update_db(self, collection, new_file_id, file, representation, - site, error=None, progress=None): + site, error=None, progress=None, priority=None): """ Update 'provider' portion of records in DB with success (file_id) or error (exception) @@ -740,12 +802,16 @@ class SyncServerModule(PypeModule, ITrayModule): site (string): label ('gdrive', 'S3') error (string): exception message progress (float): 0-1 of progress of upload/download + priority (int): 0-100 set priority Returns: None """ representation_id = representation.get("_id") - file_id = file.get("_id") + file_id = None + if file: + file_id = file.get("_id") + query = { "_id": representation_id } @@ -757,6 +823,8 @@ class SyncServerModule(PypeModule, ITrayModule): update["$unset"] = self._get_error_dict("", "", "") elif progress is not None: update["$set"] = self._get_progress_dict(progress) + elif priority is not None: + update["$set"] = self._get_priority_dict(priority, file_id) else: tries = self._get_tries_count(file, site) tries += 1 @@ -764,9 +832,10 @@ class SyncServerModule(PypeModule, ITrayModule): update["$set"] = self._get_error_dict(error, tries) arr_filter = [ - {'s.name': site}, - {'f._id': ObjectId(file_id)} + {'s.name': site} ] + if file_id: + arr_filter.append({'f._id': ObjectId(file_id)}) self.connection.database[collection].update_one( query, @@ -775,7 +844,7 @@ class SyncServerModule(PypeModule, ITrayModule): array_filters=arr_filter ) - if progress is not None: + if progress is not None or priority is not None: return status = 'failed' @@ -1169,6 +1238,21 @@ class SyncServerModule(PypeModule, ITrayModule): val = {"files.$[f].sites.$[s].progress": progress} return val + def _get_priority_dict(self, priority, file_id): + """ + Provide priority metadata to be stored in Db. + Used during upload/download for GUI to show. + Args: + priority: (int) - priority for file(s) + Returns: + (dictionary) + """ + if file_id: + str_key = "files.$[f].sites.$[s].priority" + else: + str_key = "files.$[].sites.$[s].priority" + return {str_key: int(priority)} + def _get_retries_arr(self, project_name): """ Returns array with allowed values in 'tries' field. If repre diff --git a/openpype/modules/sync_server/tray/app.py b/openpype/modules/sync_server/tray/app.py index 25fbf0e49a..b3b6f0a6c3 100644 --- a/openpype/modules/sync_server/tray/app.py +++ b/openpype/modules/sync_server/tray/app.py @@ -7,7 +7,7 @@ from openpype import resources from openpype.modules.sync_server.tray.widgets import ( SyncProjectListWidget, - SyncRepresentationWidget + SyncRepresentationSummaryWidget ) log = PypeLogger().get_logger("SyncServer") @@ -47,7 +47,7 @@ class SyncServerWindow(QtWidgets.QDialog): left_column_layout.addWidget(self.pause_btn) left_column.setLayout(left_column_layout) - repres = SyncRepresentationWidget( + repres = SyncRepresentationSummaryWidget( sync_server, project=self.projects.current_project, parent=self) @@ -78,15 +78,33 @@ class SyncServerWindow(QtWidgets.QDialog): layout.addWidget(footer) self.setLayout(body_layout) - self.setWindowTitle("Sync Server") + self.setWindowTitle("Sync Queue") self.projects.project_changed.connect( lambda: repres.table_view.model().set_project( self.projects.current_project)) self.pause_btn.clicked.connect(self._pause) + self.pause_btn.setAutoDefault(False) + self.pause_btn.setDefault(False) repres.message_generated.connect(self._update_message) + self.representationWidget = repres + + def showEvent(self, event): + self.representationWidget.model.set_project( + self.projects.current_project) + self._set_running(True) + super().showEvent(event) + + def closeEvent(self, event): + self._set_running(False) + super().closeEvent(event) + + def _set_running(self, running): + self.representationWidget.model.is_running = running + self.representationWidget.model.timer.setInterval(0) + def _pause(self): if self.sync_server.is_paused(): self.sync_server.unpause_server() diff --git a/openpype/modules/sync_server/tray/delegates.py b/openpype/modules/sync_server/tray/delegates.py new file mode 100644 index 0000000000..9316ec2c3e --- /dev/null +++ b/openpype/modules/sync_server/tray/delegates.py @@ -0,0 +1,116 @@ +import os +from Qt import QtCore, QtWidgets, QtGui + +from openpype.lib import PypeLogger +from openpype.modules.sync_server.tray import lib + +log = PypeLogger().get_logger("SyncServer") + + +class PriorityDelegate(QtWidgets.QStyledItemDelegate): + """Creates editable line edit to set priority on representation""" + def paint(self, painter, option, index): + super(PriorityDelegate, self).paint(painter, option, index) + + if option.widget.selectionModel().isSelected(index) or \ + option.state & QtWidgets.QStyle.State_MouseOver: + edit_icon = index.data(lib.EditIconRole) + if not edit_icon: + return + + state = QtGui.QIcon.On + mode = QtGui.QIcon.Selected + + icon_side = 16 + icon_rect = QtCore.QRect( + option.rect.left() + option.rect.width() - icon_side - 4, + option.rect.top() + ((option.rect.height() - icon_side) / 2), + icon_side, + icon_side + ) + + edit_icon.paint( + painter, icon_rect, + QtCore.Qt.AlignRight, mode, state + ) + + def createEditor(self, parent, option, index): + editor = PriorityLineEdit( + parent, + option.widget.selectionModel().selectedRows()) + editor.setFocus(True) + return editor + + def setModelData(self, editor, model, index): + for index in editor.selected_idxs: + try: + val = int(editor.text()) + except ValueError: + val = model.sync_server.DEFAULT_PRIORITY + model.set_priority_data(index, val) + + +class PriorityLineEdit(QtWidgets.QLineEdit): + """Special LineEdit to consume Enter and store selected indexes""" + def __init__(self, parent=None, selected_idxs=None): + self.selected_idxs = selected_idxs + super(PriorityLineEdit, self).__init__(parent) + + def keyPressEvent(self, event): + result = super(PriorityLineEdit, self).keyPressEvent(event) + if ( + event.key() in (QtCore.Qt.Key_Return, QtCore.Qt.Key_Enter) + ): + return event.accept() + + return result + + +class ImageDelegate(QtWidgets.QStyledItemDelegate): + """ + Prints icon of site and progress of synchronization + """ + + def __init__(self, parent=None): + super(ImageDelegate, self).__init__(parent) + self.icons = {} + + def paint(self, painter, option, index): + super(ImageDelegate, self).paint(painter, option, index) + option = QtWidgets.QStyleOptionViewItem(option) + option.showDecorationSelected = True + + provider = index.data(lib.ProviderRole) + value = index.data(lib.ProgressRole) + date_value = index.data(lib.DateRole) + is_failed = index.data(lib.FailedRole) + + if not self.icons.get(provider): + resource_path = os.path.dirname(__file__) + resource_path = os.path.join(resource_path, "..", + "providers", "resources") + pix_url = "{}/{}.png".format(resource_path, provider) + pixmap = QtGui.QPixmap(pix_url) + self.icons[provider] = pixmap + else: + pixmap = self.icons[provider] + + padding = 10 + point = QtCore.QPoint(option.rect.x() + padding, + option.rect.y() + + (option.rect.height() - pixmap.height()) / 2) + painter.drawPixmap(point, pixmap) + + overlay_rect = option.rect.translated(0, 0) + overlay_rect.setHeight(overlay_rect.height() * (1.0 - float(value))) + painter.fillRect(overlay_rect, + QtGui.QBrush(QtGui.QColor(0, 0, 0, 100))) + text_rect = option.rect.translated(10, 0) + painter.drawText(text_rect, + QtCore.Qt.AlignCenter, + date_value) + + if is_failed: + overlay_rect = option.rect.translated(0, 0) + painter.fillRect(overlay_rect, + QtGui.QBrush(QtGui.QColor(255, 0, 0, 35))) diff --git a/openpype/modules/sync_server/tray/lib.py b/openpype/modules/sync_server/tray/lib.py index 0282d79ea1..c1f8eaf629 100644 --- a/openpype/modules/sync_server/tray/lib.py +++ b/openpype/modules/sync_server/tray/lib.py @@ -1,4 +1,7 @@ from Qt import QtCore +import attr +import abc +import six from openpype.lib import PypeLogger @@ -20,6 +23,112 @@ ProviderRole = QtCore.Qt.UserRole + 2 ProgressRole = QtCore.Qt.UserRole + 4 DateRole = QtCore.Qt.UserRole + 6 FailedRole = QtCore.Qt.UserRole + 8 +HeaderNameRole = QtCore.Qt.UserRole + 10 +FullItemRole = QtCore.Qt.UserRole + 12 +EditIconRole = QtCore.Qt.UserRole + 14 + + +@six.add_metaclass(abc.ABCMeta) +class AbstractColumnFilter: + + def __init__(self, column_name, dbcon=None): + self.column_name = column_name + self.dbcon = dbcon + self._search_variants = [] + + def search_variants(self): + """ + Returns all flavors of search available for this column, + """ + return self._search_variants + + @abc.abstractmethod + def values(self): + """ + Returns dict of available values for filter {'label':'value'} + """ + pass + + @abc.abstractmethod + def prepare_match_part(self, values): + """ + Prepares format valid for $match part from 'values + + Args: + values (dict): {'label': 'value'} + Returns: + (dict): {'COLUMN_NAME': {'$in': ['val1', 'val2']}} + """ + pass + + +class PredefinedSetFilter(AbstractColumnFilter): + + def __init__(self, column_name, values): + super().__init__(column_name) + self._search_variants = ['checkbox'] + self._values = values + if self._values and \ + list(self._values.keys())[0] == list(self._values.values())[0]: + self._search_variants.append('text') + + def values(self): + return {k: v for k, v in self._values.items()} + + def prepare_match_part(self, values): + return {'$in': list(values.keys())} + + +class RegexTextFilter(AbstractColumnFilter): + + def __init__(self, column_name): + super().__init__(column_name) + self._search_variants = ['text'] + + def values(self): + return {} + + def prepare_match_part(self, values): + """ values = {'text1 text2': 'text1 text2'} """ + if not values: + return {} + + regex_strs = set() + text = list(values.keys())[0] # only single key always expected + for word in text.split(): + regex_strs.add('.*{}.*'.format(word)) + + return {"$regex": "|".join(regex_strs), + "$options": 'i'} + + +class MultiSelectFilter(AbstractColumnFilter): + + def __init__(self, column_name, values=None, dbcon=None): + super().__init__(column_name) + self._values = values + self.dbcon = dbcon + self._search_variants = ['checkbox'] + + def values(self): + if self._values: + return {k: v for k, v in self._values.items()} + + recs = self.dbcon.find({'type': self.column_name}, {"name": 1, + "_id": -1}) + values = {} + for item in recs: + values[item["name"]] = item["name"] + return dict(sorted(values.items(), key=lambda it: it[1])) + + def prepare_match_part(self, values): + return {'$in': list(values.keys())} + + +@attr.s +class FilterDefinition: + type = attr.ib() + values = attr.ib(factory=list) def pretty_size(value, suffix='B'): @@ -50,3 +159,9 @@ def translate_provider_for_icon(sync_server, project, site): if site == sync_server.DEFAULT_SITE: return sync_server.DEFAULT_SITE return sync_server.get_provider_for_site(project, site) + + +def get_item_by_id(model, object_id): + index = model.get_index(object_id) + item = model.data(index, FullItemRole) + return item diff --git a/openpype/modules/sync_server/tray/models.py b/openpype/modules/sync_server/tray/models.py index 3cc53c6ec4..efef039b8b 100644 --- a/openpype/modules/sync_server/tray/models.py +++ b/openpype/modules/sync_server/tray/models.py @@ -6,8 +6,10 @@ from Qt import QtCore from Qt.QtCore import Qt from avalon.tools.delegates import pretty_timestamp +from avalon.vendor import qtawesome from openpype.lib import PypeLogger +from openpype.api import get_local_site_id from openpype.modules.sync_server.tray import lib @@ -41,6 +43,9 @@ class _SyncRepresentationModel(QtCore.QAbstractTableModel): PAGE_SIZE = 20 # default page size to query for REFRESH_SEC = 5000 # in seconds, requery DB for new status + refresh_started = QtCore.Signal() + refresh_finished = QtCore.Signal() + @property def dbcon(self): """ @@ -56,17 +61,52 @@ class _SyncRepresentationModel(QtCore.QAbstractTableModel): """Returns project""" return self._project + @property + def column_filtering(self): + return self._column_filtering + + @property + def is_running(self): + return self._is_running + + @is_running.setter + def is_running(self, state): + self._is_running = state + def rowCount(self, _index): return len(self._data) - def columnCount(self, _index): + def columnCount(self, _index=None): return len(self._header) - def headerData(self, section, orientation, role): + def headerData(self, section, orientation, role=Qt.DisplayRole): + if section >= len(self.COLUMN_LABELS): + return + if role == Qt.DisplayRole: if orientation == Qt.Horizontal: return self.COLUMN_LABELS[section][1] + if role == lib.HeaderNameRole: + if orientation == Qt.Horizontal: + return self.COLUMN_LABELS[section][0] # return name + + @property + def can_edit(self): + """Returns true if some site is user local site, eg. could edit""" + return get_local_site_id() in (self.active_site, self.remote_site) + + def get_column(self, index): + """ + Returns info about column + + Args: + index (QModelIndex) + Returns: + (tuple): (COLUMN_NAME: COLUMN_LABEL) + """ + return self.COLUMN_LABELS[index] + def get_header_index(self, value): """ Returns index of 'value' in headers @@ -94,8 +134,7 @@ class _SyncRepresentationModel(QtCore.QAbstractTableModel): actually queried (scrolled a couple of times to list more than single page of records) """ - if self.sync_server.is_paused() or \ - self.sync_server.is_project_paused(self.project): + if self.is_editing or not self.is_running: return self.refresh_started.emit() self.beginResetModel() @@ -103,10 +142,10 @@ class _SyncRepresentationModel(QtCore.QAbstractTableModel): self._rec_loaded = 0 if not representations: - self.query = self.get_default_query(load_records) + self.query = self.get_query(load_records) representations = self.dbcon.aggregate(self.query) - self.add_page_records(self.local_site, self.remote_site, + self.add_page_records(self.active_site, self.remote_site, representations) self.endResetModel() self.refresh_finished.emit() @@ -138,13 +177,13 @@ class _SyncRepresentationModel(QtCore.QAbstractTableModel): log.debug("fetchMore") items_to_fetch = min(self._total_records - self._rec_loaded, self.PAGE_SIZE) - self.query = self.get_default_query(self._rec_loaded) + self.query = self.get_query(self._rec_loaded) representations = self.dbcon.aggregate(self.query) self.beginInsertRows(index, self._rec_loaded, self._rec_loaded + items_to_fetch - 1) - self.add_page_records(self.local_site, self.remote_site, + self.add_page_records(self.active_site, self.remote_site, representations) self.endInsertRows() @@ -156,6 +195,8 @@ class _SyncRepresentationModel(QtCore.QAbstractTableModel): Sort is happening on a DB side, model is reset, db queried again. + It remembers one last sort, adds it as secondary after new sort. + Args: index (int): column index order (int): 0| @@ -170,8 +211,18 @@ class _SyncRepresentationModel(QtCore.QAbstractTableModel): else: order = -1 - self.sort = {self.SORT_BY_COLUMN[index]: order, '_id': 1} - self.query = self.get_default_query() + backup_sort = dict(self.sort) + + self.sort = {self.SORT_BY_COLUMN[index]: order} # reset + # add last one + for key, val in backup_sort.items(): + if key != '_id' and key != self.SORT_BY_COLUMN[index]: + self.sort[key] = val + break + # add default one + self.sort['_id'] = 1 + + self.query = self.get_query() # import json # log.debug(json.dumps(self.query, indent=4).\ # replace('False', 'false').\ @@ -180,16 +231,86 @@ class _SyncRepresentationModel(QtCore.QAbstractTableModel): representations = self.dbcon.aggregate(self.query) self.refresh(representations) - def set_filter(self, word_filter): + def set_word_filter(self, word_filter): """ Adds text value filtering Args: word_filter (str): string inputted by user """ - self.word_filter = word_filter + self._word_filter = word_filter self.refresh() + def get_filters(self): + """ + Returns all available filter editors per column_name keys. + """ + filters = {} + for column_name, _ in self.COLUMN_LABELS: + filter_rec = self.COLUMN_FILTERS.get(column_name) + if filter_rec: + filter_rec.dbcon = self.dbcon + filters[column_name] = filter_rec + + return filters + + def get_column_filter(self, index): + """ + Returns filter object for column 'index + + Args: + index(int): index of column in header + + Returns: + (AbstractColumnFilter) + """ + column_name = self._header[index] + + filter_rec = self.COLUMN_FILTERS.get(column_name) + if filter_rec: + filter_rec.dbcon = self.dbcon # up-to-date db connection + + return filter_rec + + def set_column_filtering(self, checked_values): + """ + Sets dictionary used in '$match' part of MongoDB aggregate + + Args: + checked_values(dict): key:values ({'status':{1:"Foo",3:"Bar"}} + + Modifies: + self._column_filtering : {'status': {'$in': [1, 2, 3]}} + """ + filtering = {} + for column_name, dict_value in checked_values.items(): + column_f = self.COLUMN_FILTERS.get(column_name) + if not column_f: + continue + column_f.dbcon = self.dbcon + filtering[column_name] = column_f.prepare_match_part(dict_value) + + self._column_filtering = filtering + + def get_column_filter_values(self, index): + """ + Returns list of available values for filtering in the column + + Args: + index(int): index of column in header + + Returns: + (dict) of value: label shown in filtering menu + 'value' is used in MongoDB query, 'label' is human readable for + menu + for some columns ('subset') might be 'value' and 'label' same + """ + filter_rec = self.get_column_filter(index) + if not filter_rec: + return {} + + return filter_rec.values() + def set_project(self, project): """ Changes project, called after project selection is changed @@ -199,7 +320,7 @@ class _SyncRepresentationModel(QtCore.QAbstractTableModel): """ self._project = project self.sync_server.set_sync_project_settings() - self.local_site = self.sync_server.get_active_site(self.project) + self.active_site = self.sync_server.get_active_site(self.project) self.remote_site = self.sync_server.get_remote_site(self.project) self.refresh() @@ -251,7 +372,7 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): ("files_count", "Files"), ("files_size", "Size"), ("priority", "Priority"), - ("state", "Status") + ("status", "Status") ] DEFAULT_SORT = { @@ -259,18 +380,27 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): "_id": 1 } SORT_BY_COLUMN = [ - "context.asset", # asset - "context.subset", # subset - "context.version", # version - "context.representation", # representation + "asset", # asset + "subset", # subset + "version", # version + "representation", # representation "updated_dt_local", # local created_dt "updated_dt_remote", # remote created_dt "files_count", # count of files "files_size", # file size of all files - "context.asset", # priority TODO - "status" # state + "priority", # priority + "status" # status ] + COLUMN_FILTERS = { + 'status': lib.PredefinedSetFilter('status', lib.STATUS), + 'subset': lib.RegexTextFilter('subset'), + 'asset': lib.RegexTextFilter('asset'), + 'representation': lib.MultiSelectFilter('representation') + } + + EDITABLE_COLUMNS = ["priority"] + refresh_started = QtCore.Signal() refresh_finished = QtCore.Signal() @@ -297,34 +427,38 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): files_count = attr.ib(default=None) files_size = attr.ib(default=None) priority = attr.ib(default=None) - state = attr.ib(default=None) + status = attr.ib(default=None) path = attr.ib(default=None) - def __init__(self, sync_server, header, project=None): - super(SyncRepresentationSummaryModel, self).__init__() + def __init__(self, sync_server, header, project=None, parent=None): + super(SyncRepresentationSummaryModel, self).__init__(parent=parent) self._header = header self._data = [] self._project = project self._rec_loaded = 0 self._total_records = 0 # how many documents query actually found - self.word_filter = None + self._word_filter = None + self._column_filtering = {} + self._is_running = False + + self.edit_icon = qtawesome.icon("fa.edit", color="white") + self.is_editing = False + + self._word_filter = None - self._initialized = False if not self._project or self._project == lib.DUMMY_PROJECT: return self.sync_server = sync_server # TODO think about admin mode # this is for regular user, always only single local and single remote - self.local_site = self.sync_server.get_active_site(self.project) + self.active_site = self.sync_server.get_active_site(self.project) self.remote_site = self.sync_server.get_remote_site(self.project) - self.projection = self.get_default_projection() - self.sort = self.DEFAULT_SORT - self.query = self.get_default_query() - self.default_query = list(self.get_default_query()) + self.query = self.get_query() + self.default_query = list(self.get_query()) representations = self.dbcon.aggregate(self.query) self.refresh(representations) @@ -336,6 +470,9 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): def data(self, index, role): item = self._data[index.row()] + if role == lib.FullItemRole: + return item + header_value = self._header[index.column()] if role == lib.ProviderRole: if header_value == 'local_site': @@ -359,16 +496,23 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): if role == lib.FailedRole: if header_value == 'local_site': - return item.state == lib.STATUS[2] and item.local_progress < 1 + return item.status == lib.STATUS[2] and \ + item.local_progress < 1 if header_value == 'remote_site': - return item.state == lib.STATUS[2] and item.remote_progress < 1 + return item.status == lib.STATUS[2] and \ + item.remote_progress < 1 - if role == Qt.DisplayRole: + if role in (Qt.DisplayRole, Qt.EditRole): # because of ImageDelegate if header_value in ['remote_site', 'local_site']: return "" return attr.asdict(item)[self._header[index.column()]] + + if role == lib.EditIconRole: + if self.can_edit and header_value in self.EDITABLE_COLUMNS: + return self.edit_icon + if role == Qt.UserRole: return item._id @@ -397,7 +541,6 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): remote_site) for repre in result.get("paginatedResults"): - context = repre.get("context").pop() files = repre.get("files", []) if isinstance(files, dict): # aggregate returns dictionary files = [files] @@ -420,17 +563,17 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): avg_progress_local = lib.convert_progress( repre.get('avg_progress_local', '0')) - if context.get("version"): - version = "v{:0>3d}".format(context.get("version")) + if repre.get("version"): + version = "v{:0>3d}".format(repre.get("version")) else: version = "master" item = self.SyncRepresentation( repre.get("_id"), - context.get("asset"), - context.get("subset"), + repre.get("asset"), + repre.get("subset"), version, - context.get("representation"), + repre.get("representation"), local_updated, remote_updated, local_site, @@ -441,7 +584,7 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): avg_progress_remote, repre.get("files_count", 1), lib.pretty_size(repre.get("files_size", 0)), - 1, + repre.get("priority"), lib.STATUS[repre.get("status", -1)], files[0].get('path') ) @@ -449,7 +592,7 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): self._data.append(item) self._rec_loaded += 1 - def get_default_query(self, limit=0): + def get_query(self, limit=0): """ Returns basic aggregate query for main table. @@ -461,7 +604,7 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): 'sync_dt' - same for remote side 'local_site' - progress of repr on local side, 1 = finished 'remote_site' - progress on remote side, calculates from files - 'state' - + 'status' - 0 - in progress 1 - failed 2 - queued @@ -481,7 +624,7 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): if limit == 0: limit = SyncRepresentationSummaryModel.PAGE_SIZE - return [ + aggr = [ {"$match": self.get_match_part()}, {'$unwind': '$files'}, # merge potentially unwinded records back to single per repre @@ -492,7 +635,7 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): }}, 'order_local': { '$filter': {'input': '$files.sites', 'as': 'p', - 'cond': {'$eq': ['$$p.name', self.local_site]} + 'cond': {'$eq': ['$$p.name', self.active_site]} }} }}, {'$addFields': { @@ -560,6 +703,16 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): '$cond': [{'$size': "$order_local.paused"}, 1, 0]}, + 'priority': { + '$cond': [ + {'$size': '$order_local.priority'}, + {'$first': '$order_local.priority'}, + {'$cond': [ + {'$size': '$order_remote.priority'}, + {'$first': '$order_remote.priority'}, + self.sync_server.DEFAULT_PRIORITY]} + ] + }, }}, {'$group': { '_id': '$_id', @@ -582,18 +735,29 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): 'failed_local_tries': {'$sum': '$failed_local_tries'}, 'paused_remote': {'$sum': '$paused_remote'}, 'paused_local': {'$sum': '$paused_local'}, - 'updated_dt_local': {'$max': "$updated_dt_local"} + 'updated_dt_local': {'$max': "$updated_dt_local"}, + 'priority': {'$max': "$priority"}, }}, - {"$project": self.projection}, - {"$sort": self.sort}, - { + {"$project": self.projection} + ] + + if self.column_filtering: + aggr.append( + {"$match": self.column_filtering} + ) + + aggr.extend( + [{"$sort": self.sort}, + { '$facet': { 'paginatedResults': [{'$skip': self._rec_loaded}, {'$limit': limit}], 'totalCount': [{'$count': 'count'}] } - } - ] + }] + ) + + return aggr def get_match_part(self): """ @@ -611,25 +775,26 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): """ base_match = { "type": "representation", - 'files.sites.name': {'$all': [self.local_site, + 'files.sites.name': {'$all': [self.active_site, self.remote_site]} } - if not self.word_filter: + if not self._word_filter: return base_match else: - regex_str = '.*{}.*'.format(self.word_filter) + regex_str = '.*{}.*'.format(self._word_filter) base_match['$or'] = [ {'context.subset': {'$regex': regex_str, '$options': 'i'}}, {'context.asset': {'$regex': regex_str, '$options': 'i'}}, {'context.representation': {'$regex': regex_str, '$options': 'i'}}] - if ObjectId.is_valid(self.word_filter): - base_match['$or'] = [{'_id': ObjectId(self.word_filter)}] + if ObjectId.is_valid(self._word_filter): + base_match['$or'] = [{'_id': ObjectId(self._word_filter)}] return base_match - def get_default_projection(self): + @property + def projection(self): """ Projection part for aggregate query. @@ -639,10 +804,10 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): (dict) """ return { - "context.subset": 1, - "context.asset": 1, - "context.version": 1, - "context.representation": 1, + "subset": {"$first": "$context.subset"}, + "asset": {"$first": "$context.asset"}, + "version": {"$first": "$context.version"}, + "representation": {"$first": "$context.representation"}, "data.path": 1, "files": 1, 'files_count': 1, @@ -653,6 +818,7 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): 'updated_dt_local': 1, 'paused_remote': 1, 'paused_local': 1, + 'priority': 1, 'status': { '$switch': { 'branches': [ @@ -699,6 +865,35 @@ class SyncRepresentationSummaryModel(_SyncRepresentationModel): } } + def set_priority_data(self, index, value): + """ + Sets 'priority' flag and value on local site for selected reprs. + + Args: + index (QItemIndex): selected index from View + value (int): priority value + + Updates DB. + Potentially should allow set priority to any site when user + management is implemented. + """ + if not self.can_edit: + return + + repre_id = self.data(index, Qt.UserRole) + + representation = list(self.dbcon.find({"type": "representation", + "_id": repre_id})) + if representation: + self.sync_server.update_db(self.project, None, None, + representation.pop(), + get_local_site_id(), + priority=value) + self.is_editing = False + + # all other approaches messed up selection to 0th index + self.timer.setInterval(0) + class SyncRepresentationDetailModel(_SyncRepresentationModel): """ @@ -721,7 +916,7 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): ("remote_site", "Remote site"), ("files_size", "Size"), ("priority", "Priority"), - ("state", "Status") + ("status", "Status") ] PAGE_SIZE = 30 @@ -733,12 +928,16 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): "updated_dt_local", # local created_dt "updated_dt_remote", # remote created_dt "size", # remote progress - "context.asset", # priority TODO - "status" # state + "priority", # priority + "status" # status ] - refresh_started = QtCore.Signal() - refresh_finished = QtCore.Signal() + COLUMN_FILTERS = { + 'status': lib.PredefinedSetFilter('status', lib.STATUS), + 'file': lib.RegexTextFilter('file'), + } + + EDITABLE_COLUMNS = ["priority"] @attr.s class SyncRepresentationDetail: @@ -759,7 +958,7 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): remote_progress = attr.ib(default=None) size = attr.ib(default=None) priority = attr.ib(default=None) - state = attr.ib(default=None) + status = attr.ib(default=None) tries = attr.ib(default=None) error = attr.ib(default=None) path = attr.ib(default=None) @@ -772,22 +971,23 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): self._project = project self._rec_loaded = 0 self._total_records = 0 # how many documents query actually found - self.word_filter = None + self._word_filter = None self._id = _id - self._initialized = False + self._column_filtering = {} + self._is_running = False + + self.is_editing = False + self.edit_icon = qtawesome.icon("fa.edit", color="white") self.sync_server = sync_server # TODO think about admin mode # this is for regular user, always only single local and single remote - self.local_site = self.sync_server.get_active_site(self.project) + self.active_site = self.sync_server.get_active_site(self.project) self.remote_site = self.sync_server.get_remote_site(self.project) self.sort = self.DEFAULT_SORT - # in case we would like to hide/show some columns - self.projection = self.get_default_projection() - - self.query = self.get_default_query() + self.query = self.get_query() representations = self.dbcon.aggregate(self.query) self.refresh(representations) @@ -798,6 +998,9 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): def data(self, index, role): item = self._data[index.row()] + if role == lib.FullItemRole: + return item + header_value = self._header[index.column()] if role == lib.ProviderRole: if header_value == 'local_site': @@ -821,15 +1024,23 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): if role == lib.FailedRole: if header_value == 'local_site': - return item.state == lib.STATUS[2] and item.local_progress < 1 + return item.status == lib.STATUS[2] and \ + item.local_progress < 1 if header_value == 'remote_site': - return item.state == lib.STATUS[2] and item.remote_progress < 1 + return item.status == lib.STATUS[2] and \ + item.remote_progress < 1 - if role == Qt.DisplayRole: + if role in (Qt.DisplayRole, Qt.EditRole): # because of ImageDelegate if header_value in ['remote_site', 'local_site']: return "" + return attr.asdict(item)[self._header[index.column()]] + + if role == lib.EditIconRole: + if self.can_edit and header_value in self.EDITABLE_COLUMNS: + return self.edit_icon + if role == Qt.UserRole: return item._id @@ -899,7 +1110,7 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): local_progress, remote_progress, lib.pretty_size(file.get('size', 0)), - 1, + repre.get("priority"), lib.STATUS[repre.get("status", -1)], repre.get("tries"), '\n'.join(errors), @@ -909,7 +1120,7 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): self._data.append(item) self._rec_loaded += 1 - def get_default_query(self, limit=0): + def get_query(self, limit=0): """ Gets query that gets used when no extra sorting, filtering or projecting is needed. @@ -923,7 +1134,7 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): if limit == 0: limit = SyncRepresentationSummaryModel.PAGE_SIZE - return [ + aggr = [ {"$match": self.get_match_part()}, {"$unwind": "$files"}, {'$addFields': { @@ -933,7 +1144,7 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): }}, 'order_local': { '$filter': {'input': '$files.sites', 'as': 'p', - 'cond': {'$eq': ['$$p.name', self.local_site]} + 'cond': {'$eq': ['$$p.name', self.active_site]} }} }}, {'$addFields': { @@ -1017,9 +1228,28 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): "$order_remote.tries", [] ]} - ]}} + ]}}, + 'priority': { + '$cond': [ + {'$size': '$order_local.priority'}, + {'$first': '$order_local.priority'}, + {'$cond': [ + {'$size': '$order_remote.priority'}, + {'$first': '$order_remote.priority'}, + self.sync_server.DEFAULT_PRIORITY]} + ] + }, }}, - {"$project": self.projection}, + {"$project": self.projection} + ] + + if self.column_filtering: + aggr.append( + {"$match": self.column_filtering} + ) + print(self.column_filtering) + + aggr.extend([ {"$sort": self.sort}, { '$facet': { @@ -1028,7 +1258,9 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): 'totalCount': [{'$count': 'count'}] } } - ] + ]) + + return aggr def get_match_part(self): """ @@ -1038,20 +1270,21 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): Returns: (dict) """ - if not self.word_filter: + if not self._word_filter: return { "type": "representation", "_id": self._id } else: - regex_str = '.*{}.*'.format(self.word_filter) + regex_str = '.*{}.*'.format(self._word_filter) return { "type": "representation", "_id": self._id, '$or': [{'files.path': {'$regex': regex_str, '$options': 'i'}}] } - def get_default_projection(self): + @property + def projection(self): """ Projection part for aggregate query. @@ -1071,6 +1304,7 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): 'failed_remote_error': 1, 'failed_local_error': 1, 'tries': 1, + 'priority': 1, 'status': { '$switch': { 'branches': [ @@ -1122,3 +1356,37 @@ class SyncRepresentationDetailModel(_SyncRepresentationModel): }, 'data.path': 1 } + + def set_priority_data(self, index, value): + """ + Sets 'priority' flag and value on local site for selected reprs. + + Args: + index (QItemIndex): selected index from View + value (int): priority value + + Updates DB + """ + if not self.can_edit: + return + + file_id = self.data(index, Qt.UserRole) + + updated_file = None + # conversion from cursor to list + representations = list(self.dbcon.find({"type": "representation", + "_id": self._id})) + + representation = representations.pop() + for repre_file in representation["files"]: + if repre_file["_id"] == file_id: + updated_file = repre_file + break + + if representation and updated_file: + self.sync_server.update_db(self.project, None, updated_file, + representation, get_local_site_id(), + priority=value) + self.is_editing = False + # all other approaches messed up selection to 0th index + self.timer.setInterval(0) diff --git a/openpype/modules/sync_server/tray/widgets.py b/openpype/modules/sync_server/tray/widgets.py index 5071ffa2b0..e80f91e09f 100644 --- a/openpype/modules/sync_server/tray/widgets.py +++ b/openpype/modules/sync_server/tray/widgets.py @@ -1,6 +1,7 @@ import os import subprocess import sys +from functools import partial from Qt import QtWidgets, QtCore, QtGui from Qt.QtCore import Qt @@ -14,6 +15,7 @@ from openpype.api import get_local_site_id from openpype.lib import PypeLogger from avalon.tools.delegates import pretty_timestamp +from avalon.vendor import qtawesome from openpype.modules.sync_server.tray.models import ( SyncRepresentationSummaryModel, @@ -21,6 +23,7 @@ from openpype.modules.sync_server.tray.models import ( ) from openpype.modules.sync_server.tray import lib +from openpype.modules.sync_server.tray import delegates log = PypeLogger().get_logger("SyncServer") @@ -40,6 +43,8 @@ class SyncProjectListWidget(ProjectListWidget): self.local_site = None self.icons = {} + self.layout().setContentsMargins(0, 0, 0, 0) + def validate_context_change(self): return True @@ -90,17 +95,19 @@ class SyncProjectListWidget(ProjectListWidget): self.project_name = point_index.data(QtCore.Qt.DisplayRole) - menu = QtWidgets.QMenu() - menu.setStyleSheet(style.load_stylesheet()) + menu = QtWidgets.QMenu(self) actions_mapping = {} - if self.sync_server.is_project_paused(self.project_name): - action = QtWidgets.QAction("Unpause") - actions_mapping[action] = self._unpause - else: - action = QtWidgets.QAction("Pause") - actions_mapping[action] = self._pause - menu.addAction(action) + can_edit = self.model.can_edit + + if can_edit: + if self.sync_server.is_project_paused(self.project_name): + action = QtWidgets.QAction("Unpause") + actions_mapping[action] = self._unpause + else: + action = QtWidgets.QAction("Pause") + actions_mapping[action] = self._pause + menu.addAction(action) if self.local_site == get_local_site_id(): action = QtWidgets.QAction("Clear local project") @@ -132,7 +139,7 @@ class SyncProjectListWidget(ProjectListWidget): self.refresh() -class SyncRepresentationWidget(QtWidgets.QWidget): +class _SyncRepresentationWidget(QtWidgets.QWidget): """ Summary dialog with list of representations that matches current settings 'local_site' and 'remote_site'. @@ -140,87 +147,12 @@ class SyncRepresentationWidget(QtWidgets.QWidget): active_changed = QtCore.Signal() # active index changed message_generated = QtCore.Signal(str) - default_widths = ( - ("asset", 220), - ("subset", 190), - ("version", 55), - ("representation", 95), - ("local_site", 170), - ("remote_site", 170), - ("files_count", 50), - ("files_size", 60), - ("priority", 50), - ("state", 110) - ) + def _selection_changed(self, _new_selected, _all_selected): + idxs = self.selection_model.selectedRows() + self._selected_ids = set() - def __init__(self, sync_server, project=None, parent=None): - super(SyncRepresentationWidget, self).__init__(parent) - - self.sync_server = sync_server - - self._selected_id = None # keep last selected _id - self.representation_id = None - self.site_name = None # to pause/unpause representation - - self.filter = QtWidgets.QLineEdit() - self.filter.setPlaceholderText("Filter representations..") - - self._scrollbar_pos = None - - top_bar_layout = QtWidgets.QHBoxLayout() - top_bar_layout.addWidget(self.filter) - - self.table_view = QtWidgets.QTableView() - headers = [item[0] for item in self.default_widths] - - model = SyncRepresentationSummaryModel(sync_server, headers, project) - self.table_view.setModel(model) - self.table_view.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) - self.table_view.setSelectionMode( - QtWidgets.QAbstractItemView.SingleSelection) - self.table_view.setSelectionBehavior( - QtWidgets.QAbstractItemView.SelectRows) - self.table_view.horizontalHeader().setSortIndicator( - -1, Qt.AscendingOrder) - self.table_view.setSortingEnabled(True) - self.table_view.horizontalHeader().setSortIndicatorShown(True) - self.table_view.setAlternatingRowColors(True) - self.table_view.verticalHeader().hide() - - column = self.table_view.model().get_header_index("local_site") - delegate = ImageDelegate(self) - self.table_view.setItemDelegateForColumn(column, delegate) - - column = self.table_view.model().get_header_index("remote_site") - delegate = ImageDelegate(self) - self.table_view.setItemDelegateForColumn(column, delegate) - - for column_name, width in self.default_widths: - idx = model.get_header_index(column_name) - self.table_view.setColumnWidth(idx, width) - - layout = QtWidgets.QVBoxLayout(self) - layout.setContentsMargins(0, 0, 0, 0) - layout.addLayout(top_bar_layout) - layout.addWidget(self.table_view) - - self.table_view.doubleClicked.connect(self._double_clicked) - self.filter.textChanged.connect(lambda: model.set_filter( - self.filter.text())) - self.table_view.customContextMenuRequested.connect( - self._on_context_menu) - - model.refresh_started.connect(self._save_scrollbar) - model.refresh_finished.connect(self._set_scrollbar) - self.table_view.model().modelReset.connect(self._set_selection) - - self.selection_model = self.table_view.selectionModel() - self.selection_model.selectionChanged.connect(self._selection_changed) - - def _selection_changed(self, _new_selection): - index = self.selection_model.currentIndex() - self._selected_id = \ - self.table_view.model().data(index, Qt.UserRole) + for index in idxs: + self._selected_ids.add(self.model.data(index, Qt.UserRole)) def _set_selection(self): """ @@ -228,151 +160,185 @@ class SyncRepresentationWidget(QtWidgets.QWidget): Keep selection during model refresh. """ - if self._selected_id: - index = self.table_view.model().get_index(self._selected_id) + existing_ids = set() + for selected_id in self._selected_ids: + index = self.model.get_index(selected_id) if index and index.isValid(): mode = QtCore.QItemSelectionModel.Select | \ QtCore.QItemSelectionModel.Rows - self.selection_model.setCurrentIndex(index, mode) - else: - self._selected_id = None + self.selection_model.select(index, mode) + existing_ids.add(selected_id) + + self._selected_ids = existing_ids def _double_clicked(self, index): """ Opens representation dialog with all files after doubleclick """ - _id = self.table_view.model().data(index, Qt.UserRole) - detail_window = SyncServerDetailWindow( - self.sync_server, _id, self.table_view.model().project) - detail_window.exec() + # priority editing + if self.model.can_edit: + column_name = self.model.get_column(index.column()) + if column_name[0] in self.model.EDITABLE_COLUMNS: + self.model.is_editing = True + self.table_view.openPersistentEditor(index) + return + _id = self.model.data(index, Qt.UserRole) + detail_window = SyncServerDetailWindow( + self.sync_server, _id, self.model.project, parent=self) + detail_window.exec() + def _on_context_menu(self, point): """ Shows menu with loader actions on Right-click. + + Supports multiple selects - adds all available actions, each + action handles if it appropriate for item itself, if not it skips. """ + is_multi = len(self._selected_ids) > 1 point_index = self.table_view.indexAt(point) - if not point_index.isValid(): + if not point_index.isValid() and not is_multi: return - self.item = self.table_view.model()._data[point_index.row()] - self.representation_id = self.item._id - log.debug("menu representation _id:: {}". - format(self.representation_id)) + if is_multi: + index = self.model.get_index(list(self._selected_ids)[0]) + item = self.model.data(index, lib.FullItemRole) + else: + item = self.model.data(point_index, lib.FullItemRole) + + can_edit = self.model.can_edit + action_kwarg_map, actions_mapping, menu = self._prepare_menu(item, + is_multi, + can_edit) + + result = menu.exec_(QtGui.QCursor.pos()) + if result: + to_run = actions_mapping[result] + to_run_kwargs = action_kwarg_map.get(result, {}) + if to_run: + to_run(**to_run_kwargs) + + self.model.refresh() + + def _prepare_menu(self, item, is_multi, can_edit): + menu = QtWidgets.QMenu(self) - menu = QtWidgets.QMenu() - menu.setStyleSheet(style.load_stylesheet()) actions_mapping = {} - actions_kwargs_mapping = {} + action_kwarg_map = {} - local_site = self.item.local_site - local_progress = self.item.local_progress - remote_site = self.item.remote_site - remote_progress = self.item.remote_progress + active_site = self.model.active_site + remote_site = self.model.remote_site - for site, progress in {local_site: local_progress, + local_progress = item.local_progress + remote_progress = item.remote_progress + + project = self.model.project + + for site, progress in {active_site: local_progress, remote_site: remote_progress}.items(): - project = self.table_view.model().project - provider = self.sync_server.get_provider_for_site(project, - site) + provider = self.sync_server.get_provider_for_site(project, site) if provider == 'local_drive': if 'studio' in site: txt = " studio version" else: txt = " local version" action = QtWidgets.QAction("Open in explorer" + txt) - if progress == 1.0: + if progress == 1.0 or is_multi: actions_mapping[action] = self._open_in_explorer - actions_kwargs_mapping[action] = {'site': site} + action_kwarg_map[action] = \ + self._get_action_kwargs(site) menu.addAction(action) - # progress smaller then 1.0 --> in progress or queued - if local_progress < 1.0: - self.site_name = local_site - else: - self.site_name = remote_site - - if self.item.state in [lib.STATUS[0], lib.STATUS[1]]: - action = QtWidgets.QAction("Pause") - actions_mapping[action] = self._pause - menu.addAction(action) - - if self.item.state == lib.STATUS[3]: - action = QtWidgets.QAction("Unpause") - actions_mapping[action] = self._unpause - menu.addAction(action) - - # if self.item.state == lib.STATUS[1]: - # action = QtWidgets.QAction("Open error detail") - # actions_mapping[action] = self._show_detail - # menu.addAction(action) - - if remote_progress == 1.0: + if can_edit and (remote_progress == 1.0 or is_multi): action = QtWidgets.QAction("Re-sync Active site") - actions_mapping[action] = self._reset_local_site + action_kwarg_map[action] = self._get_action_kwargs(active_site) + actions_mapping[action] = self._reset_site menu.addAction(action) - if local_progress == 1.0: + if can_edit and (local_progress == 1.0 or is_multi): action = QtWidgets.QAction("Re-sync Remote site") - actions_mapping[action] = self._reset_remote_site + action_kwarg_map[action] = self._get_action_kwargs(remote_site) + actions_mapping[action] = self._reset_site menu.addAction(action) - if local_site != self.sync_server.DEFAULT_SITE: + if can_edit and active_site == get_local_site_id(): action = QtWidgets.QAction("Completely remove from local") + action_kwarg_map[action] = self._get_action_kwargs(active_site) actions_mapping[action] = self._remove_site menu.addAction(action) - else: - action = QtWidgets.QAction("Mark for sync to local") - actions_mapping[action] = self._add_site + + if can_edit: + action = QtWidgets.QAction("Change priority") + action_kwarg_map[action] = self._get_action_kwargs(active_site) + actions_mapping[action] = self._change_priority menu.addAction(action) + # # temp for testing only !!! + # action = QtWidgets.QAction("Download") + # action_kwarg_map[action] = self._get_action_kwargs(active_site) + # actions_mapping[action] = self._add_site + # menu.addAction(action) + if not actions_mapping: action = QtWidgets.QAction("< No action >") actions_mapping[action] = None menu.addAction(action) - result = menu.exec_(QtGui.QCursor.pos()) - if result: - to_run = actions_mapping[result] - to_run_kwargs = actions_kwargs_mapping.get(result, {}) - if to_run: - to_run(**to_run_kwargs) + return action_kwarg_map, actions_mapping, menu - self.table_view.model().refresh() + def _pause(self, selected_ids=None): + log.debug("Pause {}".format(selected_ids)) + for representation_id in selected_ids: + item = lib.get_item_by_id(self.model, representation_id) + if item.status not in [lib.STATUS[0], lib.STATUS[1]]: + continue + for site_name in [self.model.active_site, self.model.remote_site]: + check_progress = self._get_progress(item, site_name) + if check_progress < 1: + self.sync_server.pause_representation(self.model.project, + representation_id, + site_name) - def _pause(self): - self.sync_server.pause_representation(self.table_view.model().project, - self.representation_id, - self.site_name) - self.site_name = None - self.message_generated.emit("Paused {}".format(self.representation_id)) + self.message_generated.emit("Paused {}".format(representation_id)) - def _unpause(self): - self.sync_server.unpause_representation( - self.table_view.model().project, - self.representation_id, - self.site_name) - self.site_name = None - self.message_generated.emit("Unpaused {}".format( - self.representation_id)) + def _unpause(self, selected_ids=None): + log.debug("UnPause {}".format(selected_ids)) + for representation_id in selected_ids: + item = lib.get_item_by_id(self.model, representation_id) + if item.status not in lib.STATUS[3]: + continue + for site_name in [self.model.active_site, self.model.remote_site]: + check_progress = self._get_progress(item, site_name) + if check_progress < 1: + self.sync_server.unpause_representation( + self.model.project, + representation_id, + site_name) + + self.message_generated.emit("Unpause {}".format(representation_id)) # temporary here for testing, will be removed TODO - def _add_site(self): - log.info(self.representation_id) - project_name = self.table_view.model().project - local_site_name = get_local_site_id() - try: - self.sync_server.add_site( - project_name, - self.representation_id, - local_site_name - ) - self.message_generated.emit( - "Site {} added for {}".format(local_site_name, - self.representation_id)) - except ValueError as exp: - self.message_generated.emit("Error {}".format(str(exp))) + def _add_site(self, selected_ids=None, site_name=None): + log.debug("Add site {}:{}".format(selected_ids, site_name)) + for representation_id in selected_ids: + item = lib.get_item_by_id(self.model, representation_id) + if item.local_site == site_name or item.remote_site == site_name: + # site already exists skip + continue - def _remove_site(self): + try: + self.sync_server.add_site( + self.model.project, + representation_id, + site_name) + self.message_generated.emit( + "Site {} added for {}".format(site_name, + representation_id)) + except ValueError as exp: + self.message_generated.emit("Error {}".format(str(exp))) + self.sync_server.reset_timer() + + def _remove_site(self, selected_ids=None, site_name=None): """ Removes site record AND files. @@ -382,65 +348,100 @@ class SyncRepresentationWidget(QtWidgets.QWidget): This could only happen when artist work on local machine, not connected to studio mounted drives. """ - log.info("Removing {}".format(self.representation_id)) - try: - local_site = get_local_site_id() - self.sync_server.remove_site( - self.table_view.model().project, - self.representation_id, - local_site, - True) - self.message_generated.emit("Site {} removed".format(local_site)) - except ValueError as exp: - self.message_generated.emit("Error {}".format(str(exp))) - self.table_view.model().refresh( - load_records=self.table_view.model()._rec_loaded) + log.debug("Remove site {}:{}".format(selected_ids, site_name)) + for representation_id in selected_ids: + log.info("Removing {}".format(representation_id)) + try: + self.sync_server.remove_site( + self.model.project, + representation_id, + site_name, + True) + self.message_generated.emit( + "Site {} removed".format(site_name)) + except ValueError as exp: + self.message_generated.emit("Error {}".format(str(exp))) - def _reset_local_site(self): + self.model.refresh( + load_records=self.model._rec_loaded) + self.sync_server.reset_timer() + + def _reset_site(self, selected_ids=None, site_name=None): """ Removes errors or success metadata for particular file >> forces redo of upload/download """ - self.sync_server.reset_provider_for_file( - self.table_view.model().project, - self.representation_id, - 'local') - self.table_view.model().refresh( - load_records=self.table_view.model()._rec_loaded) + log.debug("Reset site {}:{}".format(selected_ids, site_name)) + for representation_id in selected_ids: + item = lib.get_item_by_id(self.model, representation_id) + check_progress = self._get_progress(item, site_name, True) - def _reset_remote_site(self): - """ - Removes errors or success metadata for particular file >> forces - redo of upload/download - """ - self.sync_server.reset_provider_for_file( - self.table_view.model().project, - self.representation_id, - 'remote') - self.table_view.model().refresh( - load_records=self.table_view.model()._rec_loaded) + # do not reset if opposite side is not fully there + if check_progress != 1: + log.debug("Not fully available {} on other side, skipping". + format(check_progress)) + continue - def _open_in_explorer(self, site): - if not self.item: - return + self.sync_server.reset_provider_for_file( + self.model.project, + representation_id, + site_name=site_name, + force=True) - fpath = self.item.path - project = self.table_view.model().project - fpath = self.sync_server.get_local_file_path(project, - site, - fpath) + self.model.refresh( + load_records=self.model._rec_loaded) + self.sync_server.reset_timer() - fpath = os.path.normpath(os.path.dirname(fpath)) - if os.path.isdir(fpath): - if 'win' in sys.platform: # windows - subprocess.Popen('explorer "%s"' % fpath) - elif sys.platform == 'darwin': # macOS - subprocess.Popen(['open', fpath]) - else: # linux - try: - subprocess.Popen(['xdg-open', fpath]) - except OSError: - raise OSError('unsupported xdg-open call??') + def _open_in_explorer(self, selected_ids=None, site_name=None): + log.debug("Open in Explorer {}:{}".format(selected_ids, site_name)) + for selected_id in selected_ids: + item = lib.get_item_by_id(self.model, selected_id) + if not item: + return + + fpath = item.path + project = self.model.project + fpath = self.sync_server.get_local_file_path(project, + site_name, + fpath) + + fpath = os.path.normpath(os.path.dirname(fpath)) + if os.path.isdir(fpath): + if 'win' in sys.platform: # windows + subprocess.Popen('explorer "%s"' % fpath) + elif sys.platform == 'darwin': # macOS + subprocess.Popen(['open', fpath]) + else: # linux + try: + subprocess.Popen(['xdg-open', fpath]) + except OSError: + raise OSError('unsupported xdg-open call??') + + def _change_priority(self, **kwargs): + """Open editor to change priority on first selected row""" + if self._selected_ids: + # get_index returns dummy index with column equals to 0 + index = self.model.get_index(list(self._selected_ids)[0]) + column_no = self.model.get_header_index("priority") # real column + real_index = self.model.index(index.row(), column_no) + self.model.is_editing = True + self.table_view.openPersistentEditor(real_index) + + def _get_progress(self, item, site_name, opposite=False): + """Returns progress value according to site (side)""" + progress = {'local': item.local_progress, + 'remote': item.remote_progress} + side = 'remote' + if site_name == self.model.active_site: + side = 'local' + if opposite: + side = 'remote' if side == 'local' else 'local' + + return progress[side] + + def _get_action_kwargs(self, site_name): + """Default format of kwargs for action""" + return {"selected_ids": self._selected_ids, "site_name": site_name} def _save_scrollbar(self): self._scrollbar_pos = self.table_view.verticalScrollBar().value() @@ -450,312 +451,125 @@ class SyncRepresentationWidget(QtWidgets.QWidget): self.table_view.verticalScrollBar().setValue(self._scrollbar_pos) -class SyncRepresentationDetailWidget(QtWidgets.QWidget): - """ - Widget to display list of synchronizable files for single repre. - - Args: - _id (str): representation _id - project (str): name of project with repre - parent (QDialog): SyncServerDetailWindow - """ - active_changed = QtCore.Signal() # active index changed +class SyncRepresentationSummaryWidget(_SyncRepresentationWidget): default_widths = ( - ("file", 290), - ("local_site", 185), - ("remote_site", 185), - ("size", 60), - ("priority", 25), - ("state", 110) + ("asset", 190), + ("subset", 170), + ("version", 60), + ("representation", 145), + ("local_site", 160), + ("remote_site", 160), + ("files_count", 50), + ("files_size", 60), + ("priority", 70), + ("status", 110) ) - def __init__(self, sync_server, _id=None, project=None, parent=None): - super(SyncRepresentationDetailWidget, self).__init__(parent) - - log.debug("Representation_id:{}".format(_id)) - self.representation_id = _id - self.item = None # set to item that mouse was clicked over - self.project = project + def __init__(self, sync_server, project=None, parent=None): + super(SyncRepresentationSummaryWidget, self).__init__(parent) self.sync_server = sync_server - self._selected_id = None + self._selected_ids = set() # keep last selected _id - self.filter = QtWidgets.QLineEdit() - self.filter.setPlaceholderText("Filter representation..") + txt_filter = QtWidgets.QLineEdit() + txt_filter.setPlaceholderText("Quick filter representations..") + txt_filter.setClearButtonEnabled(True) + txt_filter.addAction( + qtawesome.icon("fa.filter", color="gray"), + QtWidgets.QLineEdit.LeadingPosition) + self.txt_filter = txt_filter self._scrollbar_pos = None top_bar_layout = QtWidgets.QHBoxLayout() - top_bar_layout.addWidget(self.filter) + top_bar_layout.addWidget(self.txt_filter) - self.table_view = QtWidgets.QTableView() + table_view = QtWidgets.QTableView() headers = [item[0] for item in self.default_widths] - model = SyncRepresentationDetailModel(sync_server, headers, _id, - project) - self.table_view.setModel(model) - self.table_view.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) - self.table_view.setSelectionMode( - QtWidgets.QAbstractItemView.SingleSelection) - self.table_view.setSelectionBehavior( - QtWidgets.QTableView.SelectRows) - self.table_view.horizontalHeader().setSortIndicator(-1, - Qt.AscendingOrder) - self.table_view.setSortingEnabled(True) - self.table_view.horizontalHeader().setSortIndicatorShown(True) - self.table_view.setAlternatingRowColors(True) - self.table_view.verticalHeader().hide() + model = SyncRepresentationSummaryModel(sync_server, headers, project, + parent=self) + table_view.setModel(model) + table_view.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) + table_view.setSelectionMode( + QtWidgets.QAbstractItemView.ExtendedSelection) + table_view.setSelectionBehavior( + QtWidgets.QAbstractItemView.SelectRows) + table_view.horizontalHeader().setSortIndicator( + -1, Qt.AscendingOrder) + table_view.setAlternatingRowColors(True) + table_view.verticalHeader().hide() + table_view.viewport().setAttribute(QtCore.Qt.WA_Hover, True) - column = self.table_view.model().get_header_index("local_site") - delegate = ImageDelegate(self) - self.table_view.setItemDelegateForColumn(column, delegate) + column = table_view.model().get_header_index("local_site") + delegate = delegates.ImageDelegate(self) + table_view.setItemDelegateForColumn(column, delegate) - column = self.table_view.model().get_header_index("remote_site") - delegate = ImageDelegate(self) - self.table_view.setItemDelegateForColumn(column, delegate) + column = table_view.model().get_header_index("remote_site") + delegate = delegates.ImageDelegate(self) + table_view.setItemDelegateForColumn(column, delegate) - for column_name, width in self.default_widths: - idx = model.get_header_index(column_name) - self.table_view.setColumnWidth(idx, width) + column = table_view.model().get_header_index("priority") + priority_delegate = delegates.PriorityDelegate(self) + table_view.setItemDelegateForColumn(column, priority_delegate) layout = QtWidgets.QVBoxLayout(self) layout.setContentsMargins(0, 0, 0, 0) layout.addLayout(top_bar_layout) - layout.addWidget(self.table_view) + layout.addWidget(table_view) - self.filter.textChanged.connect(lambda: model.set_filter( - self.filter.text())) - self.table_view.customContextMenuRequested.connect( - self._on_context_menu) + self.table_view = table_view + self.model = model + + horizontal_header = HorizontalHeader(self) + + table_view.setHorizontalHeader(horizontal_header) + table_view.setSortingEnabled(True) + + for column_name, width in self.default_widths: + idx = model.get_header_index(column_name) + table_view.setColumnWidth(idx, width) + + table_view.doubleClicked.connect(self._double_clicked) + self.txt_filter.textChanged.connect(lambda: model.set_word_filter( + self.txt_filter.text())) + table_view.customContextMenuRequested.connect(self._on_context_menu) model.refresh_started.connect(self._save_scrollbar) model.refresh_finished.connect(self._set_scrollbar) - self.table_view.model().modelReset.connect(self._set_selection) + model.modelReset.connect(self._set_selection) self.selection_model = self.table_view.selectionModel() self.selection_model.selectionChanged.connect(self._selection_changed) - def _selection_changed(self): - index = self.selection_model.currentIndex() - self._selected_id = self.table_view.model().data(index, Qt.UserRole) + def _prepare_menu(self, item, is_multi, can_edit): + action_kwarg_map, actions_mapping, menu = \ + super()._prepare_menu(item, is_multi, can_edit) - def _set_selection(self): - """ - Sets selection to 'self._selected_id' if exists. - - Keep selection during model refresh. - """ - if self._selected_id: - index = self.table_view.model().get_index(self._selected_id) - if index and index.isValid(): - mode = QtCore.QItemSelectionModel.Select | \ - QtCore.QItemSelectionModel.Rows - self.selection_model.setCurrentIndex(index, mode) - else: - self._selected_id = None - - def _show_detail(self): - """ - Shows windows with error message for failed sync of a file. - """ - dt = max(self.item.created_dt, self.item.sync_dt) - detail_window = SyncRepresentationErrorWindow(self.item._id, - self.project, - dt, - self.item.tries, - self.item.error) - detail_window.exec() - - def _on_context_menu(self, point): - """ - Shows menu with loader actions on Right-click. - """ - point_index = self.table_view.indexAt(point) - if not point_index.isValid(): - return - - self.item = self.table_view.model()._data[point_index.row()] - - menu = QtWidgets.QMenu() - menu.setStyleSheet(style.load_stylesheet()) - actions_mapping = {} - actions_kwargs_mapping = {} - - local_site = self.item.local_site - local_progress = self.item.local_progress - remote_site = self.item.remote_site - remote_progress = self.item.remote_progress - - for site, progress in {local_site: local_progress, - remote_site: remote_progress}.items(): - project = self.table_view.model().project - provider = self.sync_server.get_provider_for_site(project, - site) - if provider == 'local_drive': - if 'studio' in site: - txt = " studio version" - else: - txt = " local version" - action = QtWidgets.QAction("Open in explorer" + txt) - if progress == 1: - actions_mapping[action] = self._open_in_explorer - actions_kwargs_mapping[action] = {'site': site} - menu.addAction(action) - - if self.item.state == lib.STATUS[2]: - action = QtWidgets.QAction("Open error detail") - actions_mapping[action] = self._show_detail + if can_edit and ( + item.status in [lib.STATUS[0], lib.STATUS[1]] or is_multi): + action = QtWidgets.QAction("Pause in queue") + actions_mapping[action] = self._pause + # pause handles which site_name it will pause itself + action_kwarg_map[action] = {"selected_ids": self._selected_ids} menu.addAction(action) - if float(remote_progress) == 1.0: - action = QtWidgets.QAction("Re-sync active site") - actions_mapping[action] = self._reset_local_site + if can_edit and (item.status == lib.STATUS[3] or is_multi): + action = QtWidgets.QAction("Unpause in queue") + actions_mapping[action] = self._unpause + action_kwarg_map[action] = {"selected_ids": self._selected_ids} menu.addAction(action) - if float(local_progress) == 1.0: - action = QtWidgets.QAction("Re-sync remote site") - actions_mapping[action] = self._reset_remote_site - menu.addAction(action) - - if not actions_mapping: - action = QtWidgets.QAction("< No action >") - actions_mapping[action] = None - menu.addAction(action) - - result = menu.exec_(QtGui.QCursor.pos()) - if result: - to_run = actions_mapping[result] - to_run_kwargs = actions_kwargs_mapping.get(result, {}) - if to_run: - to_run(**to_run_kwargs) - - def _reset_local_site(self): - """ - Removes errors or success metadata for particular file >> forces - redo of upload/download - """ - self.sync_server.reset_provider_for_file( - self.table_view.model().project, - self.representation_id, - 'local', - self.item._id) - self.table_view.model().refresh( - load_records=self.table_view.model()._rec_loaded) - - def _reset_remote_site(self): - """ - Removes errors or success metadata for particular file >> forces - redo of upload/download - """ - self.sync_server.reset_provider_for_file( - self.table_view.model().project, - self.representation_id, - 'remote', - self.item._id) - self.table_view.model().refresh( - load_records=self.table_view.model()._rec_loaded) - - def _open_in_explorer(self, site): - if not self.item: - return - - fpath = self.item.path - project = self.project - fpath = self.sync_server.get_local_file_path(project, site, fpath) - - fpath = os.path.normpath(os.path.dirname(fpath)) - if os.path.isdir(fpath): - if 'win' in sys.platform: # windows - subprocess.Popen('explorer "%s"' % fpath) - elif sys.platform == 'darwin': # macOS - subprocess.Popen(['open', fpath]) - else: # linux - try: - subprocess.Popen(['xdg-open', fpath]) - except OSError: - raise OSError('unsupported xdg-open call??') - - def _save_scrollbar(self): - self._scrollbar_pos = self.table_view.verticalScrollBar().value() - - def _set_scrollbar(self): - if self._scrollbar_pos: - self.table_view.verticalScrollBar().setValue(self._scrollbar_pos) - - -class SyncRepresentationErrorWidget(QtWidgets.QWidget): - """ - Dialog to show when sync error happened, prints error message - """ - - def __init__(self, _id, dt, tries, msg, parent=None): - super(SyncRepresentationErrorWidget, self).__init__(parent) - - layout = QtWidgets.QHBoxLayout(self) - - txts = [] - txts.append("{}: {}".format("Last update date", pretty_timestamp(dt))) - txts.append("{}: {}".format("Retries", str(tries))) - txts.append("{}: {}".format("Error message", msg)) - - text_area = QtWidgets.QPlainTextEdit("\n\n".join(txts)) - text_area.setReadOnly(True) - layout.addWidget(text_area) - - -class ImageDelegate(QtWidgets.QStyledItemDelegate): - """ - Prints icon of site and progress of synchronization - """ - - def __init__(self, parent=None): - super(ImageDelegate, self).__init__(parent) - self.icons = {} - - def paint(self, painter, option, index): - super(ImageDelegate, self).paint(painter, option, index) - option = QtWidgets.QStyleOptionViewItem(option) - option.showDecorationSelected = True - - provider = index.data(lib.ProviderRole) - value = index.data(lib.ProgressRole) - date_value = index.data(lib.DateRole) - is_failed = index.data(lib.FailedRole) - - if not self.icons.get(provider): - resource_path = os.path.dirname(__file__) - resource_path = os.path.join(resource_path, "..", - "providers", "resources") - pix_url = "{}/{}.png".format(resource_path, provider) - pixmap = QtGui.QPixmap(pix_url) - self.icons[provider] = pixmap - else: - pixmap = self.icons[provider] - - padding = 10 - point = QtCore.QPoint(option.rect.x() + padding, - option.rect.y() + - (option.rect.height() - pixmap.height()) / 2) - painter.drawPixmap(point, pixmap) - - overlay_rect = option.rect.translated(0, 0) - overlay_rect.setHeight(overlay_rect.height() * (1.0 - float(value))) - painter.fillRect(overlay_rect, - QtGui.QBrush(QtGui.QColor(0, 0, 0, 100))) - text_rect = option.rect.translated(10, 0) - painter.drawText(text_rect, - QtCore.Qt.AlignCenter, - date_value) - - if is_failed: - overlay_rect = option.rect.translated(0, 0) - painter.fillRect(overlay_rect, - QtGui.QBrush(QtGui.QColor(255, 0, 0, 35))) + return action_kwarg_map, actions_mapping, menu class SyncServerDetailWindow(QtWidgets.QDialog): + """Wrapper window for SyncRepresentationDetailWidget + + Creates standalone window with list of files for selected repre_id. + """ def __init__(self, sync_server, _id, project, parent=None): log.debug( "!!! SyncServerDetailWindow _id:: {}".format(_id)) @@ -792,8 +606,171 @@ class SyncServerDetailWindow(QtWidgets.QDialog): self.setWindowTitle("Sync Representation Detail") +class SyncRepresentationDetailWidget(_SyncRepresentationWidget): + """ + Widget to display list of synchronizable files for single repre. + + Args: + _id (str): representation _id + project (str): name of project with repre + parent (QDialog): SyncServerDetailWindow + """ + active_changed = QtCore.Signal() # active index changed + + default_widths = ( + ("file", 290), + ("local_site", 185), + ("remote_site", 185), + ("size", 60), + ("priority", 60), + ("status", 110) + ) + + def __init__(self, sync_server, _id=None, project=None, parent=None): + super(SyncRepresentationDetailWidget, self).__init__(parent) + + log.debug("Representation_id:{}".format(_id)) + self.project = project + + self.sync_server = sync_server + + self.representation_id = _id + self._selected_ids = set() + + self.txt_filter = QtWidgets.QLineEdit() + self.txt_filter.setPlaceholderText("Quick filter representation..") + self.txt_filter.setClearButtonEnabled(True) + self.txt_filter.addAction(qtawesome.icon("fa.filter", color="gray"), + QtWidgets.QLineEdit.LeadingPosition) + + self._scrollbar_pos = None + + top_bar_layout = QtWidgets.QHBoxLayout() + top_bar_layout.addWidget(self.txt_filter) + + table_view = QtWidgets.QTableView() + headers = [item[0] for item in self.default_widths] + + model = SyncRepresentationDetailModel(sync_server, headers, _id, + project) + model.is_running = True + + table_view.setModel(model) + table_view.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) + table_view.setSelectionMode( + QtWidgets.QAbstractItemView.ExtendedSelection) + table_view.setSelectionBehavior( + QtWidgets.QTableView.SelectRows) + table_view.horizontalHeader().setSortIndicator(-1, Qt.AscendingOrder) + table_view.horizontalHeader().setSortIndicatorShown(True) + table_view.setAlternatingRowColors(True) + table_view.verticalHeader().hide() + + column = model.get_header_index("local_site") + delegate = delegates.ImageDelegate(self) + table_view.setItemDelegateForColumn(column, delegate) + + column = model.get_header_index("remote_site") + delegate = delegates.ImageDelegate(self) + table_view.setItemDelegateForColumn(column, delegate) + + if model.can_edit: + column = table_view.model().get_header_index("priority") + priority_delegate = delegates.PriorityDelegate(self) + table_view.setItemDelegateForColumn(column, priority_delegate) + + layout = QtWidgets.QVBoxLayout(self) + layout.setContentsMargins(0, 0, 0, 0) + layout.addLayout(top_bar_layout) + layout.addWidget(table_view) + + self.model = model + + self.selection_model = table_view.selectionModel() + self.selection_model.selectionChanged.connect(self._selection_changed) + + horizontal_header = HorizontalHeader(self) + + table_view.setHorizontalHeader(horizontal_header) + table_view.setSortingEnabled(True) + + for column_name, width in self.default_widths: + idx = model.get_header_index(column_name) + table_view.setColumnWidth(idx, width) + + self.table_view = table_view + + self.txt_filter.textChanged.connect(lambda: model.set_word_filter( + self.txt_filter.text())) + table_view.doubleClicked.connect(self._double_clicked) + table_view.customContextMenuRequested.connect(self._on_context_menu) + + model.refresh_started.connect(self._save_scrollbar) + model.refresh_finished.connect(self._set_scrollbar) + model.modelReset.connect(self._set_selection) + + def _double_clicked(self, index): + """ + Opens representation dialog with all files after doubleclick + """ + # priority editing + if self.model.can_edit: + column_name = self.model.get_column(index.column()) + if column_name[0] in self.model.EDITABLE_COLUMNS: + self.model.is_editing = True + self.table_view.openPersistentEditor(index) + return + + def _show_detail(self, selected_ids=None): + """ + Shows windows with error message for failed sync of a file. + """ + detail_window = SyncRepresentationErrorWindow(self.model, selected_ids) + + detail_window.exec() + + def _prepare_menu(self, item, is_multi, can_edit): + """Adds view (and model) dependent actions to default ones""" + action_kwarg_map, actions_mapping, menu = \ + super()._prepare_menu(item, is_multi, can_edit) + + if item.status == lib.STATUS[2] or is_multi: + action = QtWidgets.QAction("Open error detail") + actions_mapping[action] = self._show_detail + action_kwarg_map[action] = {"selected_ids": self._selected_ids} + + menu.addAction(action) + + return action_kwarg_map, actions_mapping, menu + + def _reset_site(self, selected_ids=None, site_name=None): + """ + Removes errors or success metadata for particular file >> forces + redo of upload/download + """ + for file_id in selected_ids: + item = lib.get_item_by_id(self.model, file_id) + check_progress = self._get_progress(item, site_name, True) + + # do not reset if opposite side is not fully there + if check_progress != 1: + log.debug("Not fully available {} on other side, skipping". + format(check_progress)) + continue + + self.sync_server.reset_provider_for_file( + self.model.project, + self.representation_id, + site_name=site_name, + file_id=file_id, + force=True) + self.model.refresh( + load_records=self.model._rec_loaded) + + class SyncRepresentationErrorWindow(QtWidgets.QDialog): - def __init__(self, _id, project, dt, tries, msg, parent=None): + """Wrapper window to show errors during sync on file(s)""" + def __init__(self, model, selected_ids, parent=None): super(SyncRepresentationErrorWindow, self).__init__(parent) self.setWindowFlags(QtCore.Qt.Window) self.setFocusPolicy(QtCore.Qt.StrongFocus) @@ -804,7 +781,8 @@ class SyncRepresentationErrorWindow(QtWidgets.QDialog): body = QtWidgets.QWidget() - container = SyncRepresentationErrorWidget(_id, dt, tries, msg, + container = SyncRepresentationErrorWidget(model, + selected_ids, parent=self) body_layout = QtWidgets.QHBoxLayout(body) body_layout.addWidget(container) @@ -818,3 +796,299 @@ class SyncRepresentationErrorWindow(QtWidgets.QDialog): self.setLayout(body_layout) self.setWindowTitle("Sync Representation Error Detail") + + +class SyncRepresentationErrorWidget(QtWidgets.QWidget): + """ + Dialog to show when sync error happened, prints formatted error message + """ + def __init__(self, model, selected_ids, parent=None): + super(SyncRepresentationErrorWidget, self).__init__(parent) + + layout = QtWidgets.QVBoxLayout(self) + + no_errors = True + for file_id in selected_ids: + item = lib.get_item_by_id(model, file_id) + if not item.created_dt or not item.sync_dt or not item.error: + continue + + no_errors = False + dt = max(item.created_dt, item.sync_dt) + + txts = [] + txts.append("{}: {}
".format("Last update date", + pretty_timestamp(dt))) + txts.append("{}: {}
".format("Retries", + str(item.tries))) + txts.append("{}: {}
".format("Error message", + item.error)) + + text_area = QtWidgets.QTextEdit("\n\n".join(txts)) + text_area.setReadOnly(True) + layout.addWidget(text_area) + + if no_errors: + text_area = QtWidgets.QTextEdit() + text_area.setText("

No errors located

") + text_area.setReadOnly(True) + layout.addWidget(text_area) + + +class HorizontalHeader(QtWidgets.QHeaderView): + """Reiplemented QHeaderView to contain clickable changeable button""" + def __init__(self, parent=None): + super(HorizontalHeader, self).__init__(QtCore.Qt.Horizontal, parent) + self._parent = parent + self.checked_values = {} + + self.setModel(self._parent.model) + + self.setSectionsClickable(True) + + self.menu_items_dict = {} + self.menu = None + self.header_cells = [] + self.filter_buttons = {} + + self.filter_icon = qtawesome.icon("fa.filter", color="gray") + self.filter_set_icon = qtawesome.icon("fa.filter", color="white") + + self.init_layout() + + self._resetting = False + + @property + def model(self): + """Keep model synchronized with parent widget""" + return self._parent.model + + def init_layout(self): + """Initial preparation of header's content""" + for column_idx in range(self.model.columnCount()): + column_name, column_label = self.model.get_column(column_idx) + filter_rec = self.model.get_filters().get(column_name) + if not filter_rec: + continue + + icon = self.filter_icon + button = QtWidgets.QPushButton(icon, "", self) + + button.setFixedSize(24, 24) + button.setStyleSheet( + "QPushButton::menu-indicator{width:0px;}" + "QPushButton{border: none;background: transparent;}") + button.clicked.connect(partial(self._get_menu, + column_name, column_idx)) + button.setFlat(True) + self.filter_buttons[column_name] = button + + def showEvent(self, event): + """Paint header""" + super(HorizontalHeader, self).showEvent(event) + + for i in range(len(self.header_cells)): + cell_content = self.header_cells[i] + cell_content.setGeometry(self.sectionViewportPosition(i), 0, + self.sectionSize(i) - 1, self.height()) + + cell_content.show() + + def _set_filter_icon(self, column_name): + """Set different states of button depending on its engagement""" + button = self.filter_buttons.get(column_name) + if button: + if self.checked_values.get(column_name): + button.setIcon(self.filter_set_icon) + else: + button.setIcon(self.filter_icon) + + def _reset_filter(self, column_name): + """ + Remove whole column from filter >> not in $match at all (faster) + """ + self._resetting = True # mark changes to consume them + if self.checked_values.get(column_name) is not None: + self.checked_values.pop(column_name) + self._set_filter_icon(column_name) + self._filter_and_refresh_model_and_menu(column_name, True, True) + self._resetting = False + + def _apply_filter(self, column_name, values, state): + """ + Sets 'values' to specific 'state' (checked/unchecked), + sends to model. + """ + if self._resetting: # event triggered by _resetting, skip it + return + + self._update_checked_values(column_name, values, state) + self._set_filter_icon(column_name) + self._filter_and_refresh_model_and_menu(column_name, True, False) + + def _apply_text_filter(self, column_name, items, line_edit): + """ + Resets all checkboxes, prefers inserted text. + """ + le_text = line_edit.text() + self._update_checked_values(column_name, items, 0) # reset other + if self.checked_values.get(column_name) is not None or \ + le_text == '': + self.checked_values.pop(column_name) # reset during typing + + if le_text: + self._update_checked_values(column_name, {le_text: le_text}, 2) + self._set_filter_icon(column_name) + self._filter_and_refresh_model_and_menu(column_name, True, True) + + def _filter_and_refresh_model_and_menu(self, column_name, + model=True, menu=True): + """ + Refresh model and its content and possibly menu for big changes. + """ + if model: + self.model.set_column_filtering(self.checked_values) + self.model.refresh() + if menu: + self._menu_refresh(column_name) + + def _get_menu(self, column_name, index): + """Prepares content of menu for 'column_name'""" + menu = QtWidgets.QMenu(self) + filter_rec = self.model.get_filters()[column_name] + self.menu_items_dict[column_name] = filter_rec.values() + + # text filtering only if labels same as values, not if codes are used + if 'text' in filter_rec.search_variants(): + line_edit = QtWidgets.QLineEdit(menu) + line_edit.setClearButtonEnabled(True) + line_edit.addAction(self.filter_icon, + QtWidgets.QLineEdit.LeadingPosition) + + line_edit.setFixedHeight(line_edit.height()) + txt = "" + if self.checked_values.get(column_name): + txt = list(self.checked_values.get(column_name).keys())[0] + line_edit.setText(txt) + + action_le = QtWidgets.QWidgetAction(menu) + action_le.setDefaultWidget(line_edit) + line_edit.textChanged.connect( + partial(self._apply_text_filter, column_name, + filter_rec.values(), line_edit)) + menu.addAction(action_le) + menu.addSeparator() + + if 'checkbox' in filter_rec.search_variants(): + action_all = QtWidgets.QAction("All", self) + action_all.triggered.connect(partial(self._reset_filter, + column_name)) + menu.addAction(action_all) + + action_none = QtWidgets.QAction("Unselect all", self) + state_unchecked = 0 + action_none.triggered.connect(partial(self._apply_filter, + column_name, + filter_rec.values(), + state_unchecked)) + menu.addAction(action_none) + menu.addSeparator() + + # nothing explicitly >> ALL implicitly >> first time + if self.checked_values.get(column_name) is None: + checked_keys = self.menu_items_dict[column_name].keys() + else: + checked_keys = self.checked_values[column_name] + + for value, label in self.menu_items_dict[column_name].items(): + checkbox = QtWidgets.QCheckBox(str(label), menu) + + # temp + checkbox.setStyleSheet("QCheckBox{spacing: 5px;" + "padding:5px 5px 5px 5px;}") + if value in checked_keys: + checkbox.setChecked(True) + + action = QtWidgets.QWidgetAction(menu) + action.setDefaultWidget(checkbox) + + checkbox.stateChanged.connect(partial(self._apply_filter, + column_name, {value: label})) + menu.addAction(action) + + self.menu = menu + + self._show_menu(index, menu) + + def _show_menu(self, index, menu): + """Shows 'menu' under header column of 'index'""" + global_pos_point = self.mapToGlobal( + QtCore.QPoint(self.sectionViewportPosition(index), 0)) + menu.setMinimumWidth(self.sectionSize(index)) + menu.setMinimumHeight(self.height()) + menu.exec_(QtCore.QPoint(global_pos_point.x(), + global_pos_point.y() + self.height())) + + def _menu_refresh(self, column_name): + """ + Reset boxes after big change - word filtering or reset + """ + for action in self.menu.actions(): + if not isinstance(action, QtWidgets.QWidgetAction): + continue + + widget = action.defaultWidget() + if not isinstance(widget, QtWidgets.QCheckBox): + continue + + if not self.checked_values.get(column_name) or \ + widget.text() in self.checked_values[column_name].values(): + widget.setChecked(True) + else: + widget.setChecked(False) + + def _update_checked_values(self, column_name, values, state): + """ + Modify dictionary of set values in columns for filtering. + + Modifies 'self.checked_values' + """ + copy_menu_items = dict(self.menu_items_dict[column_name]) + checked = self.checked_values.get(column_name, copy_menu_items) + set_items = dict(values.items()) # prevent dict change during loop + for value, label in set_items.items(): + if state == 2 and label: # checked + checked[value] = label + elif state == 0 and checked.get(value): + checked.pop(value) + + self.checked_values[column_name] = checked + + def paintEvent(self, event): + self._fix_size() + super(HorizontalHeader, self).paintEvent(event) + + def _fix_size(self): + for column_idx in range(self.model.columnCount()): + vis_index = self.visualIndex(column_idx) + index = self.logicalIndex(vis_index) + section_width = self.sectionSize(index) + + column_name = self.model.headerData(column_idx, + QtCore.Qt.Horizontal, + lib.HeaderNameRole) + button = self.filter_buttons.get(column_name) + if not button: + continue + + pos_x = self.sectionViewportPosition( + index) + section_width - self.height() + + pos_y = 0 + if button.height() < self.height(): + pos_y = int((self.height() - button.height()) / 2) + button.setGeometry( + pos_x, + pos_y, + self.height(), + self.height()) diff --git a/openpype/modules/sync_server/utils.py b/openpype/modules/sync_server/utils.py index 36f3444399..fa6e63b029 100644 --- a/openpype/modules/sync_server/utils.py +++ b/openpype/modules/sync_server/utils.py @@ -3,6 +3,11 @@ from openpype.api import Logger log = Logger().get_logger("SyncServer") +class ResumableError(Exception): + """Error which could be temporary, skip current loop, try next time""" + pass + + class SyncStatus: DO_NOTHING = 0 DO_UPLOAD = 1 diff --git a/openpype/modules/user/__init__.py b/openpype/modules/user/__init__.py deleted file mode 100644 index a97ac0eef6..0000000000 --- a/openpype/modules/user/__init__.py +++ /dev/null @@ -1,10 +0,0 @@ -from .user_module import ( - UserModule, - IUserModule -) - - -__all__ = ( - "UserModule", - "IUserModule" -) diff --git a/openpype/modules/user/rest_api.py b/openpype/modules/user/rest_api.py deleted file mode 100644 index 566425a19b..0000000000 --- a/openpype/modules/user/rest_api.py +++ /dev/null @@ -1,35 +0,0 @@ -import json -from aiohttp.web_response import Response - - -class UserModuleRestApi: - def __init__(self, user_module, server_manager): - self.module = user_module - self.server_manager = server_manager - - self.prefix = "/user" - - self.register() - - def register(self): - self.server_manager.add_route( - "GET", - self.prefix + "/username", - self.get_username - ) - self.server_manager.add_route( - "GET", - self.prefix + "/show_widget", - self.show_user_widget - ) - - async def get_username(self, request): - return Response( - status=200, - body=json.dumps(self.module.cred, indent=4), - content_type="application/json" - ) - - async def show_user_widget(self, request): - self.module.action_show_widget.trigger() - return Response(status=200) diff --git a/openpype/modules/user/user_module.py b/openpype/modules/user/user_module.py deleted file mode 100644 index 7d257f1781..0000000000 --- a/openpype/modules/user/user_module.py +++ /dev/null @@ -1,169 +0,0 @@ -import os -import json -import getpass - -from abc import ABCMeta, abstractmethod - -import six -import appdirs - -from .. import ( - PypeModule, - ITrayModule, - IWebServerRoutes -) - - -@six.add_metaclass(ABCMeta) -class IUserModule: - """Interface for other modules to use user change callbacks.""" - - @abstractmethod - def on_pype_user_change(self, username): - """What should happen on Pype user change.""" - pass - - -class UserModule(PypeModule, ITrayModule, IWebServerRoutes): - cred_folder_path = os.path.normpath( - appdirs.user_data_dir('pype-app', 'pype') - ) - cred_filename = 'user_info.json' - env_name = "OPENPYPE_USERNAME" - - name = "user" - - def initialize(self, modules_settings): - user_settings = modules_settings[self.name] - self.enabled = user_settings["enabled"] - - self.callbacks_on_user_change = [] - self.cred = {} - self.cred_path = os.path.normpath(os.path.join( - self.cred_folder_path, self.cred_filename - )) - - # Tray attributes - self.widget_login = None - self.action_show_widget = None - - self.rest_api_obj = None - - def tray_init(self): - from .widget_user import UserWidget - self.widget_login = UserWidget(self) - - self.load_credentials() - - def register_callback_on_user_change(self, callback): - self.callbacks_on_user_change.append(callback) - - def tray_start(self): - """Store credentials to env and preset them to widget""" - username = "" - if self.cred: - username = self.cred.get("username") or "" - - os.environ[self.env_name] = username - self.widget_login.set_user(username) - - def tray_exit(self): - """Nothing special for User.""" - return - - def get_user(self): - return self.cred.get("username") or getpass.getuser() - - def webserver_initialization(self, server_manager): - """Implementation of IWebServerRoutes interface.""" - from .rest_api import UserModuleRestApi - - self.rest_api_obj = UserModuleRestApi(self, server_manager) - - def connect_with_modules(self, enabled_modules): - for module in enabled_modules: - if isinstance(module, IUserModule): - self.callbacks_on_user_change.append( - module.on_pype_user_change - ) - - # Definition of Tray menu - def tray_menu(self, parent_menu): - from Qt import QtWidgets - """Add menu or action to Tray(or parent)'s menu""" - action = QtWidgets.QAction("Username", parent_menu) - action.triggered.connect(self.show_widget) - parent_menu.addAction(action) - parent_menu.addSeparator() - - self.action_show_widget = action - - def load_credentials(self): - """Get credentials from JSON file """ - credentials = {} - try: - file = open(self.cred_path, "r") - credentials = json.load(file) - file.close() - - self.cred = credentials - username = credentials.get("username") - if username: - self.log.debug("Loaded Username \"{}\"".format(username)) - else: - self.log.debug("Pype Username is not set") - - return credentials - - except FileNotFoundError: - return self.save_credentials(getpass.getuser()) - - except json.decoder.JSONDecodeError: - self.log.warning(( - "File where users credentials should be stored" - " has invalid json format. Loading system username." - )) - return self.save_credentials(getpass.getuser()) - - def change_credentials(self, username): - self.save_credentials(username) - for callback in self.callbacks_on_user_change: - try: - callback(username) - except Exception: - self.log.warning( - "Failed to execute callback \"{}\".".format( - str(callback) - ), - exc_info=True - ) - - def save_credentials(self, username): - """Save credentials to JSON file, env and widget""" - if username is None: - username = "" - - username = str(username).strip() - - self.cred = {"username": username} - os.environ[self.env_name] = username - if self.widget_login: - self.widget_login.set_user(username) - try: - file = open(self.cred_path, "w") - file.write(json.dumps(self.cred)) - file.close() - self.log.debug("Username \"{}\" stored".format(username)) - except Exception: - self.log.error( - "Could not store username to file \"{}\"".format( - self.cred_path - ), - exc_info=True - ) - - return self.cred - - def show_widget(self): - """Show dialog to enter credentials""" - self.widget_login.show() diff --git a/openpype/modules/user/widget_user.py b/openpype/modules/user/widget_user.py deleted file mode 100644 index f8ecadf56b..0000000000 --- a/openpype/modules/user/widget_user.py +++ /dev/null @@ -1,88 +0,0 @@ -from Qt import QtCore, QtGui, QtWidgets -from avalon import style -from openpype import resources - - -class UserWidget(QtWidgets.QWidget): - - MIN_WIDTH = 300 - - def __init__(self, module): - - super(UserWidget, self).__init__() - - self.module = module - - # Style - icon = QtGui.QIcon(resources.pype_icon_filepath()) - self.setWindowIcon(icon) - self.setWindowTitle("Username Settings") - self.setMinimumWidth(self.MIN_WIDTH) - self.setStyleSheet(style.load_stylesheet()) - - self.setWindowFlags( - QtCore.Qt.WindowCloseButtonHint | - QtCore.Qt.WindowMinimizeButtonHint - ) - - self.setLayout(self._main()) - - def show(self, *args, **kwargs): - super().show(*args, **kwargs) - # Move widget to center of active screen on show - screen = QtWidgets.QApplication.desktop().screen() - screen_center = lambda self: ( - screen.rect().center() - self.rect().center() - ) - self.move(screen_center(self)) - - def _main(self): - main_layout = QtWidgets.QVBoxLayout() - - form_layout = QtWidgets.QFormLayout() - form_layout.setContentsMargins(10, 15, 10, 5) - - label_username = QtWidgets.QLabel("Username:") - label_username.setCursor(QtGui.QCursor(QtCore.Qt.ArrowCursor)) - label_username.setTextFormat(QtCore.Qt.RichText) - - input_username = QtWidgets.QLineEdit() - input_username.setPlaceholderText( - QtCore.QCoreApplication.translate("main", "e.g. John Smith") - ) - - form_layout.addRow(label_username, input_username) - - btn_save = QtWidgets.QPushButton("Save") - btn_save.clicked.connect(self.click_save) - - btn_cancel = QtWidgets.QPushButton("Cancel") - btn_cancel.clicked.connect(self.close) - - btn_group = QtWidgets.QHBoxLayout() - btn_group.addStretch(1) - btn_group.addWidget(btn_save) - btn_group.addWidget(btn_cancel) - - main_layout.addLayout(form_layout) - main_layout.addLayout(btn_group) - - self.input_username = input_username - - return main_layout - - def set_user(self, username): - self.input_username.setText(username) - - def click_save(self): - # all what should happen - validations and saving into appsdir - username = self.input_username.text() - self.module.change_credentials(username) - self._close_widget() - - def closeEvent(self, event): - event.ignore() - self._close_widget() - - def _close_widget(self): - self.hide() diff --git a/openpype/plugins/publish/collect_current_pype_user.py b/openpype/plugins/publish/collect_current_pype_user.py index de4e950d56..1a52a59012 100644 --- a/openpype/plugins/publish/collect_current_pype_user.py +++ b/openpype/plugins/publish/collect_current_pype_user.py @@ -1,6 +1,7 @@ import os import getpass import pyblish.api +from openpype.lib import get_openpype_username class CollectCurrentUserPype(pyblish.api.ContextPlugin): @@ -11,9 +12,6 @@ class CollectCurrentUserPype(pyblish.api.ContextPlugin): label = "Collect Pype User" def process(self, context): - user = os.getenv("OPENPYPE_USERNAME", "").strip() - if not user: - user = context.data.get("user", getpass.getuser()) - + user = get_openpype_username() context.data["user"] = user - self.log.debug("Colected user \"{}\"".format(user)) + self.log.debug("Collected user \"{}\"".format(user)) diff --git a/openpype/plugins/publish/collect_hierarchy.py b/openpype/plugins/publish/collect_hierarchy.py index 390ce443b6..1aa10fcb9b 100644 --- a/openpype/plugins/publish/collect_hierarchy.py +++ b/openpype/plugins/publish/collect_hierarchy.py @@ -15,7 +15,7 @@ class CollectHierarchy(pyblish.api.ContextPlugin): label = "Collect Hierarchy" order = pyblish.api.CollectorOrder - 0.57 families = ["shot"] - hosts = ["resolve"] + hosts = ["resolve", "hiero"] def process(self, context): temp_context = {} diff --git a/openpype/plugins/publish/collect_otio_frame_ranges.py b/openpype/plugins/publish/collect_otio_frame_ranges.py index 53cc249033..e1b8b95a46 100644 --- a/openpype/plugins/publish/collect_otio_frame_ranges.py +++ b/openpype/plugins/publish/collect_otio_frame_ranges.py @@ -20,7 +20,7 @@ class CollectOcioFrameRanges(pyblish.api.InstancePlugin): label = "Collect OTIO Frame Ranges" order = pyblish.api.CollectorOrder - 0.58 families = ["shot", "clip"] - hosts = ["resolve"] + hosts = ["resolve", "hiero"] def process(self, instance): # get basic variables diff --git a/openpype/plugins/publish/collect_otio_review.py b/openpype/plugins/publish/collect_otio_review.py index 0c7eeaea44..e2375c70c9 100644 --- a/openpype/plugins/publish/collect_otio_review.py +++ b/openpype/plugins/publish/collect_otio_review.py @@ -22,7 +22,7 @@ class CollectOcioReview(pyblish.api.InstancePlugin): label = "Collect OTIO Review" order = pyblish.api.CollectorOrder - 0.57 families = ["clip"] - hosts = ["resolve"] + hosts = ["resolve", "hiero"] def process(self, instance): # get basic variables @@ -88,6 +88,7 @@ class CollectOcioReview(pyblish.api.InstancePlugin): otio_review_clips.append(otio_gap) if otio_review_clips: + instance.data["label"] += " (review)" instance.data["families"] += ["review", "ftrack"] instance.data["otioReviewClips"] = otio_review_clips self.log.info( diff --git a/openpype/plugins/publish/collect_otio_subset_resources.py b/openpype/plugins/publish/collect_otio_subset_resources.py index a0c6b9339b..d687c1920a 100644 --- a/openpype/plugins/publish/collect_otio_subset_resources.py +++ b/openpype/plugins/publish/collect_otio_subset_resources.py @@ -19,7 +19,7 @@ class CollectOcioSubsetResources(pyblish.api.InstancePlugin): label = "Collect OTIO Subset Resources" order = pyblish.api.CollectorOrder - 0.57 families = ["clip"] - hosts = ["resolve"] + hosts = ["resolve", "hiero"] def process(self, instance): if not instance.data.get("representations"): @@ -48,8 +48,8 @@ class CollectOcioSubsetResources(pyblish.api.InstancePlugin): trimmed_media_range) a_frame_start, a_frame_end = openpype.lib.otio_range_to_frame_range( otio_avalable_range) - a_frame_start_h, a_frame_end_h = openpype.lib.otio_range_to_frame_range( - trimmed_media_range_h) + a_frame_start_h, a_frame_end_h = openpype.lib.\ + otio_range_to_frame_range(trimmed_media_range_h) # fix frame_start and frame_end frame to be in range of media if a_frame_start_h < a_frame_start: @@ -80,6 +80,7 @@ class CollectOcioSubsetResources(pyblish.api.InstancePlugin): media_ref = otio_clip.media_reference metadata = media_ref.metadata + is_sequence = None # check in two way if it is sequence if hasattr(otio.schema, "ImageSequenceReference"): # for OpenTimelineIO 0.13 and newer @@ -116,7 +117,7 @@ class CollectOcioSubsetResources(pyblish.api.InstancePlugin): # `ImageSequenceReference` path = media_ref.target_url collection_data = openpype.lib.make_sequence_collection( - path, trimmed_media_range, metadata) + path, trimmed_media_range_h, metadata) self.staging_dir, collection = collection_data self.log.debug(collection) @@ -126,7 +127,7 @@ class CollectOcioSubsetResources(pyblish.api.InstancePlugin): dirname, filename = os.path.split(media_ref.target_url) self.staging_dir = dirname - self.log.debug(path) + self.log.debug(filename) repre = self._create_representation( frame_start, frame_end, file=filename) diff --git a/openpype/plugins/publish/collect_scene_version.py b/openpype/plugins/publish/collect_scene_version.py index f58bd0dd9d..669e6752f3 100644 --- a/openpype/plugins/publish/collect_scene_version.py +++ b/openpype/plugins/publish/collect_scene_version.py @@ -19,7 +19,7 @@ class CollectSceneVersion(pyblish.api.ContextPlugin): if "unreal" in pyblish.api.registered_hosts(): return - assert context.data.get('currentFile'), "Cannot get curren file" + assert context.data.get('currentFile'), "Cannot get current file" filename = os.path.basename(context.data.get('currentFile')) if '' in filename: diff --git a/openpype/plugins/publish/extract_hierarchy_avalon.py b/openpype/plugins/publish/extract_hierarchy_avalon.py index dd1f09bafa..e263edd931 100644 --- a/openpype/plugins/publish/extract_hierarchy_avalon.py +++ b/openpype/plugins/publish/extract_hierarchy_avalon.py @@ -2,7 +2,6 @@ import pyblish.api from avalon import io from copy import deepcopy - class ExtractHierarchyToAvalon(pyblish.api.ContextPlugin): """Create entities in Avalon based on collected data.""" @@ -100,13 +99,20 @@ class ExtractHierarchyToAvalon(pyblish.api.ContextPlugin): if entity: # Do not override data, only update cur_entity_data = entity.get("data") or {} + entity_tasks = cur_entity_data["tasks"] or {} + + # create tasks as dict by default + if not entity_tasks: + cur_entity_data["tasks"] = entity_tasks + new_tasks = data.pop("tasks", {}) if "tasks" not in cur_entity_data and not new_tasks: continue for task_name in new_tasks: - if task_name in cur_entity_data["tasks"].keys(): + if task_name in entity_tasks.keys(): continue - cur_entity_data["tasks"][task_name] = new_tasks[task_name] + cur_entity_data["tasks"][task_name] = new_tasks[ + task_name] cur_entity_data.update(data) data = cur_entity_data else: diff --git a/openpype/plugins/publish/extract_otio_file.py b/openpype/plugins/publish/extract_otio_file.py index 146f3b88ec..3bd217d5d4 100644 --- a/openpype/plugins/publish/extract_otio_file.py +++ b/openpype/plugins/publish/extract_otio_file.py @@ -12,7 +12,7 @@ class ExtractOTIOFile(openpype.api.Extractor): label = "Extract OTIO file" order = pyblish.api.ExtractorOrder - 0.45 families = ["workfile"] - hosts = ["resolve"] + hosts = ["resolve", "hiero"] def process(self, instance): # create representation data diff --git a/openpype/plugins/publish/extract_otio_review.py b/openpype/plugins/publish/extract_otio_review.py index 91a680ddb0..07fe6f2731 100644 --- a/openpype/plugins/publish/extract_otio_review.py +++ b/openpype/plugins/publish/extract_otio_review.py @@ -40,8 +40,8 @@ class ExtractOTIOReview(openpype.api.Extractor): order = api.ExtractorOrder - 0.45 label = "Extract OTIO review" - hosts = ["resolve"] families = ["review"] + hosts = ["resolve", "hiero"] # plugin default attributes temp_file_head = "tempFile." @@ -188,7 +188,7 @@ class ExtractOTIOReview(openpype.api.Extractor): # creating and registering representation representation = self._create_representation(start, duration) instance.data["representations"].append(representation) - self.log.info(f"Adding representation: {representation}") + self.log.info("Adding representation: {}".format(representation)) def _create_representation(self, start, duration): """ @@ -388,7 +388,7 @@ class ExtractOTIOReview(openpype.api.Extractor): (int(end_offset + duration) + 1)): seq_number = padding.format(start_frame + index) self.log.debug( - f"index: `{index}` | seq_number: `{seq_number}`") + "index: `{}` | seq_number: `{}`".format(index, seq_number)) new_frames.append(int(seq_number)) new_frames += self.used_frames self.used_frames = new_frames diff --git a/openpype/plugins/publish/extract_review.py b/openpype/plugins/publish/extract_review.py index 23c8ed2a8e..f341ba197f 100644 --- a/openpype/plugins/publish/extract_review.py +++ b/openpype/plugins/publish/extract_review.py @@ -2,12 +2,18 @@ import os import re import copy import json -import pyblish.api + import clique + +import pyblish.api import openpype.api -import openpype.lib -from openpype.lib import should_decompress, \ - get_decompress_dir, decompress +from openpype.lib import ( + get_ffmpeg_tool_path, + ffprobe_streams, + should_decompress, + get_decompress_dir, + decompress +) class ExtractReview(pyblish.api.InstancePlugin): @@ -43,17 +49,11 @@ class ExtractReview(pyblish.api.InstancePlugin): supported_exts = image_exts + video_exts # FFmpeg tools paths - ffmpeg_path = openpype.lib.get_ffmpeg_tool_path("ffmpeg") + ffmpeg_path = get_ffmpeg_tool_path("ffmpeg") # Preset attributes profiles = None - # Legacy attributes - outputs = {} - ext_filter = [] - to_width = 1920 - to_height = 1080 - def process(self, instance): self.log.debug(instance.data["representations"]) # Skip review when requested. @@ -72,10 +72,6 @@ class ExtractReview(pyblish.api.InstancePlugin): ).format(instance_label)) return - # Use legacy processing when `profiles` is not set. - if self.profiles is None: - return self.legacy_process(instance) - # Run processing self.main_process(instance) @@ -337,10 +333,24 @@ class ExtractReview(pyblish.api.InstancePlugin): # Get FFmpeg arguments from profile presets out_def_ffmpeg_args = output_def.get("ffmpeg_args") or {} - ffmpeg_input_args = out_def_ffmpeg_args.get("input") or [] - ffmpeg_output_args = out_def_ffmpeg_args.get("output") or [] - ffmpeg_video_filters = out_def_ffmpeg_args.get("video_filters") or [] - ffmpeg_audio_filters = out_def_ffmpeg_args.get("audio_filters") or [] + _ffmpeg_input_args = out_def_ffmpeg_args.get("input") or [] + _ffmpeg_output_args = out_def_ffmpeg_args.get("output") or [] + _ffmpeg_video_filters = out_def_ffmpeg_args.get("video_filters") or [] + _ffmpeg_audio_filters = out_def_ffmpeg_args.get("audio_filters") or [] + + # Cleanup empty strings + ffmpeg_input_args = [ + value for value in _ffmpeg_input_args if value.strip() + ] + ffmpeg_output_args = [ + value for value in _ffmpeg_output_args if value.strip() + ] + ffmpeg_video_filters = [ + value for value in _ffmpeg_video_filters if value.strip() + ] + ffmpeg_audio_filters = [ + value for value in _ffmpeg_audio_filters if value.strip() + ] if isinstance(new_repre['files'], list): input_files_urls = [os.path.join(new_repre["stagingDir"], f) for f @@ -708,6 +718,105 @@ class ExtractReview(pyblish.api.InstancePlugin): return audio_in_args, audio_filters, audio_out_args + def get_letterbox_filters( + self, + letter_box_def, + input_res_ratio, + output_res_ratio, + pixel_aspect, + scale_factor_by_width, + scale_factor_by_height + ): + output = [] + + ratio = letter_box_def["ratio"] + state = letter_box_def["state"] + fill_color = letter_box_def["fill_color"] + f_red, f_green, f_blue, f_alpha = fill_color + fill_color_hex = "{0:0>2X}{1:0>2X}{2:0>2X}".format( + f_red, f_green, f_blue + ) + fill_color_alpha = float(f_alpha) / 255 + + line_thickness = letter_box_def["line_thickness"] + line_color = letter_box_def["line_color"] + l_red, l_green, l_blue, l_alpha = line_color + line_color_hex = "{0:0>2X}{1:0>2X}{2:0>2X}".format( + l_red, l_green, l_blue + ) + line_color_alpha = float(l_alpha) / 255 + + if input_res_ratio == output_res_ratio: + ratio /= pixel_aspect + elif input_res_ratio < output_res_ratio: + ratio /= scale_factor_by_width + else: + ratio /= scale_factor_by_height + + if state == "letterbox": + if fill_color_alpha > 0: + top_box = ( + "drawbox=0:0:iw:round((ih-(iw*(1/{})))/2):t=fill:c={}@{}" + ).format(ratio, fill_color_hex, fill_color_alpha) + + bottom_box = ( + "drawbox=0:ih-round((ih-(iw*(1/{0})))/2)" + ":iw:round((ih-(iw*(1/{0})))/2):t=fill:c={1}@{2}" + ).format(ratio, fill_color_hex, fill_color_alpha) + + output.extend([top_box, bottom_box]) + + if line_color_alpha > 0 and line_thickness > 0: + top_line = ( + "drawbox=0:round((ih-(iw*(1/{0})))/2)-{1}:iw:{1}:" + "t=fill:c={2}@{3}" + ).format( + ratio, line_thickness, line_color_hex, line_color_alpha + ) + bottom_line = ( + "drawbox=0:ih-round((ih-(iw*(1/{})))/2)" + ":iw:{}:t=fill:c={}@{}" + ).format( + ratio, line_thickness, line_color_hex, line_color_alpha + ) + output.extend([top_line, bottom_line]) + + elif state == "pillar": + if fill_color_alpha > 0: + left_box = ( + "drawbox=0:0:round((iw-(ih*{}))/2):ih:t=fill:c={}@{}" + ).format(ratio, fill_color_hex, fill_color_alpha) + + right_box = ( + "drawbox=iw-round((iw-(ih*{0}))/2))" + ":0:round((iw-(ih*{0}))/2):ih:t=fill:c={1}@{2}" + ).format(ratio, fill_color_hex, fill_color_alpha) + + output.extend([left_box, right_box]) + + if line_color_alpha > 0 and line_thickness > 0: + left_line = ( + "drawbox=round((iw-(ih*{}))/2):0:{}:ih:t=fill:c={}@{}" + ).format( + ratio, line_thickness, line_color_hex, line_color_alpha + ) + + right_line = ( + "drawbox=iw-round((iw-(ih*{}))/2))" + ":0:{}:ih:t=fill:c={}@{}" + ).format( + ratio, line_thickness, line_color_hex, line_color_alpha + ) + + output.extend([left_line, right_line]) + + else: + raise ValueError( + "Letterbox state \"{}\" is not recognized".format(state) + ) + + return output + def rescaling_filters(self, temp_data, output_def, new_repre): """Prepare vieo filters based on tags in new representation. @@ -719,14 +828,15 @@ class ExtractReview(pyblish.api.InstancePlugin): """ filters = [] - letter_box = output_def.get("letter_box") + letter_box_def = output_def["letter_box"] + letter_box_enabled = letter_box_def["enabled"] # Get instance data pixel_aspect = temp_data["pixel_aspect"] # NOTE Skipped using instance's resolution full_input_path_single_file = temp_data["full_input_path_single_file"] - input_data = openpype.lib.ffprobe_streams( + input_data = ffprobe_streams( full_input_path_single_file, self.log )[0] input_width = int(input_data["width"]) @@ -799,7 +909,7 @@ class ExtractReview(pyblish.api.InstancePlugin): if ( output_width == input_width and output_height == input_height - and not letter_box + and not letter_box_enabled and pixel_aspect == 1 ): self.log.debug( @@ -838,30 +948,24 @@ class ExtractReview(pyblish.api.InstancePlugin): ) # letter_box - if letter_box: - if input_res_ratio == output_res_ratio: - letter_box /= pixel_aspect - elif input_res_ratio < output_res_ratio: - letter_box /= scale_factor_by_width - else: - letter_box /= scale_factor_by_height - - scale_filter = "scale={}x{}:flags=lanczos".format( - output_width, output_height + if letter_box_enabled: + filters.extend([ + "scale={}x{}:flags=lanczos".format( + output_width, output_height + ), + "setsar=1" + ]) + filters.extend( + self.get_letterbox_filters( + letter_box_def, + input_res_ratio, + output_res_ratio, + pixel_aspect, + scale_factor_by_width, + scale_factor_by_height + ) ) - top_box = ( - "drawbox=0:0:iw:round((ih-(iw*(1/{})))/2):t=fill:c=black" - ).format(letter_box) - - bottom_box = ( - "drawbox=0:ih-round((ih-(iw*(1/{0})))/2)" - ":iw:round((ih-(iw*(1/{0})))/2):t=fill:c=black" - ).format(letter_box) - - # Add letter box filters - filters.extend([scale_filter, "setsar=1", top_box, bottom_box]) - # scaling none square pixels and 1920 width if ( input_height != output_height @@ -1253,438 +1357,6 @@ class ExtractReview(pyblish.api.InstancePlugin): return filtered_outputs - def legacy_process(self, instance): - self.log.warning("Legacy review presets are used.") - - output_profiles = self.outputs or {} - - inst_data = instance.data - context_data = instance.context.data - fps = float(inst_data.get("fps")) - frame_start = inst_data.get("frameStart") - frame_end = inst_data.get("frameEnd") - handle_start = inst_data.get("handleStart", - context_data.get("handleStart")) - handle_end = inst_data.get("handleEnd", - context_data.get("handleEnd")) - pixel_aspect = inst_data.get("pixelAspect", 1) - resolution_width = inst_data.get("resolutionWidth", self.to_width) - resolution_height = inst_data.get("resolutionHeight", self.to_height) - self.log.debug("Families In: `{}`".format(inst_data["families"])) - self.log.debug("__ frame_start: {}".format(frame_start)) - self.log.debug("__ frame_end: {}".format(frame_end)) - self.log.debug("__ handle_start: {}".format(handle_start)) - self.log.debug("__ handle_end: {}".format(handle_end)) - - # get representation and loop them - representations = inst_data["representations"] - - ffmpeg_path = openpype.lib.get_ffmpeg_tool_path("ffmpeg") - - # filter out mov and img sequences - representations_new = representations[:] - for repre in representations: - - if repre['ext'] not in self.ext_filter: - continue - - tags = repre.get("tags", []) - - if inst_data.get("multipartExr") is True: - # ffmpeg doesn't support multipart exrs - continue - - if "thumbnail" in tags: - continue - - self.log.info("Try repre: {}".format(repre)) - - if "review" not in tags: - continue - - staging_dir = repre["stagingDir"] - - # iterating preset output profiles - for name, profile in output_profiles.items(): - repre_new = repre.copy() - ext = profile.get("ext", None) - p_tags = profile.get('tags', []) - - # append repre tags into profile tags - for t in tags: - if t not in p_tags: - p_tags.append(t) - - self.log.info("p_tags: `{}`".format(p_tags)) - - # adding control for presets to be sequence - # or single file - is_sequence = ("sequence" in p_tags) and (ext in ( - "png", "jpg", "jpeg")) - - # no handles switch from profile tags - no_handles = "no-handles" in p_tags - - self.log.debug("Profile name: {}".format(name)) - - if not ext: - ext = "mov" - self.log.warning( - str("`ext` attribute not in output " - "profile. Setting to default ext: `mov`")) - - self.log.debug( - "instance.families: {}".format( - instance.data['families'])) - self.log.debug( - "profile.families: {}".format(profile['families'])) - - profile_family_check = False - for _family in profile['families']: - if _family in instance.data['families']: - profile_family_check = True - break - - if not profile_family_check: - continue - - if isinstance(repre["files"], list): - collections, remainder = clique.assemble( - repre["files"]) - - full_input_path = os.path.join( - staging_dir, collections[0].format( - '{head}{padding}{tail}') - ) - - filename = collections[0].format('{head}') - if filename.endswith('.'): - filename = filename[:-1] - else: - full_input_path = os.path.join( - staging_dir, repre["files"]) - filename = repre["files"].split(".")[0] - - repr_file = filename + "_{0}.{1}".format(name, ext) - full_output_path = os.path.join( - staging_dir, repr_file) - - if is_sequence: - filename_base = filename + "_{0}".format(name) - repr_file = filename_base + ".%08d.{0}".format( - ext) - repre_new["sequence_file"] = repr_file - full_output_path = os.path.join( - staging_dir, filename_base, repr_file) - - self.log.info("input {}".format(full_input_path)) - self.log.info("output {}".format(full_output_path)) - - new_tags = [x for x in tags if x != "delete"] - - # add families - [instance.data["families"].append(t) - for t in p_tags - if t not in instance.data["families"]] - - # add to - [new_tags.append(t) for t in p_tags - if t not in new_tags] - - self.log.info("new_tags: `{}`".format(new_tags)) - - input_args = [] - output_args = [] - - # overrides output file - input_args.append("-y") - - # preset's input data - input_args.extend(profile.get('input', [])) - - # necessary input data - # adds start arg only if image sequence - - frame_start_handle = frame_start - handle_start - frame_end_handle = frame_end + handle_end - if isinstance(repre["files"], list): - if frame_start_handle != repre.get( - "detectedStart", frame_start_handle): - frame_start_handle = repre.get("detectedStart") - - # exclude handle if no handles defined - if no_handles: - frame_start_handle = frame_start - frame_end_handle = frame_end - - input_args.append( - "-start_number {0} -framerate {1}".format( - frame_start_handle, fps)) - else: - if no_handles: - start_sec = float(handle_start) / fps - input_args.append("-ss {:0.2f}".format(start_sec)) - frame_start_handle = frame_start - frame_end_handle = frame_end - - input_args.append("-i {}".format(full_input_path)) - - for audio in instance.data.get("audio", []): - offset_frames = ( - instance.data.get("frameStartFtrack") - - audio["offset"] - ) - offset_seconds = offset_frames / fps - - if offset_seconds > 0: - input_args.append("-ss") - else: - input_args.append("-itsoffset") - - input_args.append(str(abs(offset_seconds))) - - input_args.extend( - ["-i", audio["filename"]] - ) - - # Need to merge audio if there are more - # than 1 input. - if len(instance.data["audio"]) > 1: - input_args.extend( - [ - "-filter_complex", - "amerge", - "-ac", - "2" - ] - ) - - codec_args = profile.get('codec', []) - output_args.extend(codec_args) - # preset's output data - output_args.extend(profile.get('output', [])) - - # defining image ratios - resolution_ratio = ( - float(resolution_width) * pixel_aspect) / resolution_height - delivery_ratio = float(self.to_width) / float(self.to_height) - self.log.debug( - "__ resolution_ratio: `{}`".format(resolution_ratio)) - self.log.debug( - "__ delivery_ratio: `{}`".format(delivery_ratio)) - - # get scale factor - scale_factor = float(self.to_height) / ( - resolution_height * pixel_aspect) - - # shorten two decimals long float number for testing conditions - resolution_ratio_test = float( - "{:0.2f}".format(resolution_ratio)) - delivery_ratio_test = float( - "{:0.2f}".format(delivery_ratio)) - - if resolution_ratio_test != delivery_ratio_test: - scale_factor = float(self.to_width) / ( - resolution_width * pixel_aspect) - if int(scale_factor * 100) == 100: - scale_factor = ( - float(self.to_height) / resolution_height - ) - - self.log.debug("__ scale_factor: `{}`".format(scale_factor)) - - # letter_box - lb = profile.get('letter_box', 0) - if lb != 0: - ffmpeg_width = self.to_width - ffmpeg_height = self.to_height - if "reformat" not in p_tags: - lb /= pixel_aspect - if resolution_ratio_test != delivery_ratio_test: - ffmpeg_width = resolution_width - ffmpeg_height = int( - resolution_height * pixel_aspect) - else: - if resolution_ratio_test != delivery_ratio_test: - lb /= scale_factor - else: - lb /= pixel_aspect - - output_args.append(str( - "-filter:v scale={0}x{1}:flags=lanczos," - "setsar=1,drawbox=0:0:iw:" - "round((ih-(iw*(1/{2})))/2):t=fill:" - "c=black,drawbox=0:ih-round((ih-(iw*(" - "1/{2})))/2):iw:round((ih-(iw*(1/{2})))" - "/2):t=fill:c=black").format( - ffmpeg_width, ffmpeg_height, lb)) - - # In case audio is longer than video. - output_args.append("-shortest") - - if no_handles: - duration_sec = float( - frame_end_handle - frame_start_handle + 1) / fps - - output_args.append("-t {:0.2f}".format(duration_sec)) - - # output filename - output_args.append(full_output_path) - - self.log.debug( - "__ pixel_aspect: `{}`".format(pixel_aspect)) - self.log.debug( - "__ resolution_width: `{}`".format( - resolution_width)) - self.log.debug( - "__ resolution_height: `{}`".format( - resolution_height)) - - # scaling none square pixels and 1920 width - if "reformat" in p_tags: - if resolution_ratio_test < delivery_ratio_test: - self.log.debug("lower then delivery") - width_scale = int(self.to_width * scale_factor) - width_half_pad = int(( - self.to_width - width_scale) / 2) - height_scale = self.to_height - height_half_pad = 0 - else: - self.log.debug("heigher then delivery") - width_scale = self.to_width - width_half_pad = 0 - scale_factor = float(self.to_width) / (float( - resolution_width) * pixel_aspect) - self.log.debug( - "__ scale_factor: `{}`".format( - scale_factor)) - height_scale = int( - resolution_height * scale_factor) - height_half_pad = int( - (self.to_height - height_scale) / 2) - - self.log.debug( - "__ width_scale: `{}`".format(width_scale)) - self.log.debug( - "__ width_half_pad: `{}`".format( - width_half_pad)) - self.log.debug( - "__ height_scale: `{}`".format( - height_scale)) - self.log.debug( - "__ height_half_pad: `{}`".format( - height_half_pad)) - - scaling_arg = str( - "scale={0}x{1}:flags=lanczos," - "pad={2}:{3}:{4}:{5}:black,setsar=1" - ).format(width_scale, height_scale, - self.to_width, self.to_height, - width_half_pad, - height_half_pad - ) - - vf_back = self.add_video_filter_args( - output_args, scaling_arg) - # add it to output_args - output_args.insert(0, vf_back) - - # baking lut file application - lut_path = instance.data.get("lutPath") - if lut_path and ("bake-lut" in p_tags): - # removing Gama info as it is all baked in lut - gamma = next((g for g in input_args - if "-gamma" in g), None) - if gamma: - input_args.remove(gamma) - - # create lut argument - lut_arg = "lut3d=file='{}'".format( - lut_path.replace( - "\\", "/").replace(":/", "\\:/") - ) - lut_arg += ",colormatrix=bt601:bt709" - - vf_back = self.add_video_filter_args( - output_args, lut_arg) - # add it to output_args - output_args.insert(0, vf_back) - self.log.info("Added Lut to ffmpeg command") - self.log.debug( - "_ output_args: `{}`".format(output_args)) - - if is_sequence: - stg_dir = os.path.dirname(full_output_path) - - if not os.path.exists(stg_dir): - self.log.debug( - "creating dir: {}".format(stg_dir)) - os.mkdir(stg_dir) - - mov_args = [ - "\"{}\"".format(ffmpeg_path), - " ".join(input_args), - " ".join(output_args) - ] - subprcs_cmd = " ".join(mov_args) - - # run subprocess - self.log.debug("Executing: {}".format(subprcs_cmd)) - openpype.api.run_subprocess( - subprcs_cmd, shell=True, logger=self.log - ) - - # create representation data - repre_new.update({ - 'name': name, - 'ext': ext, - 'files': repr_file, - "tags": new_tags, - "outputName": name, - "codec": codec_args, - "_profile": profile, - "resolutionHeight": resolution_height, - "resolutionWidth": resolution_width, - "frameStartFtrack": frame_start_handle, - "frameEndFtrack": frame_end_handle - }) - if is_sequence: - repre_new.update({ - "stagingDir": stg_dir, - "files": os.listdir(stg_dir) - }) - if no_handles: - repre_new.update({ - "outputName": name + "_noHandles", - "frameStartFtrack": frame_start, - "frameEndFtrack": frame_end - }) - if repre_new.get('preview'): - repre_new.pop("preview") - if repre_new.get('thumbnail'): - repre_new.pop("thumbnail") - - # adding representation - self.log.debug("Adding: {}".format(repre_new)) - representations_new.append(repre_new) - - for repre in representations_new: - if "delete" in repre.get("tags", []): - representations_new.remove(repre) - if "clean_name" in repre.get("tags", []): - repre_new.pop("outputName") - - instance.data.update({ - "reviewToWidth": self.to_width, - "reviewToHeight": self.to_height - }) - - self.log.debug( - "new representations: {}".format(representations_new)) - instance.data["representations"] = representations_new - - self.log.debug("Families Out: `{}`".format(instance.data["families"])) - def add_video_filter_args(self, args, inserting_arg): """ Fixing video filter arguments to be one long string diff --git a/openpype/plugins/publish/extract_scanline_exr.py b/openpype/plugins/publish/extract_scanline_exr.py index 404aa65ac2..a7f7de5188 100644 --- a/openpype/plugins/publish/extract_scanline_exr.py +++ b/openpype/plugins/publish/extract_scanline_exr.py @@ -45,7 +45,7 @@ class ExtractScanlineExr(pyblish.api.InstancePlugin): stagingdir = os.path.normpath(repre.get("stagingDir")) - oiio_tool_path = os.getenv("OPENPYPE_OIIO_PATH", "") + oiio_tool_path = openpype.lib.get_oiio_tools_path() if not os.path.exists(oiio_tool_path): self.log.error( "OIIO tool not found in {}".format(oiio_tool_path)) diff --git a/openpype/plugins/publish/integrate_new.py b/openpype/plugins/publish/integrate_new.py index ea90f284b2..ab9b85983b 100644 --- a/openpype/plugins/publish/integrate_new.py +++ b/openpype/plugins/publish/integrate_new.py @@ -93,7 +93,8 @@ class IntegrateAssetNew(pyblish.api.InstancePlugin): "harmony.palette", "editorial", "background", - "camerarig" + "camerarig", + "redshiftproxy" ] exclude_families = ["clip"] db_representation_context_keys = [ diff --git a/openpype/pype_commands.py b/openpype/pype_commands.py index a2d97429d3..981cca82dc 100644 --- a/openpype/pype_commands.py +++ b/openpype/pype_commands.py @@ -119,26 +119,3 @@ class PypeCommands: def validate_jsons(self): pass - @staticmethod - def generate_zip(out_path: str): - """Generate zip file from current sources. - - Args: - out_path (str): Path to generated zip file. - - """ - from igniter import bootstrap_repos - - # create zip file - bs = bootstrap_repos.BootstrapRepos() - if out_path: - out_path = Path(out_path) - bs.data_dir = out_path.parent - - print(f">>> Creating zip in {bs.data_dir} ...") - repo_file = bs.create_version_from_live_code() - if not repo_file: - print("!!! Error while creating zip file.") - exit(1) - - print(f">>> Created {repo_file}") diff --git a/openpype/settings/__init__.py b/openpype/settings/__init__.py index b4187829fc..b5810deef4 100644 --- a/openpype/settings/__init__.py +++ b/openpype/settings/__init__.py @@ -1,9 +1,13 @@ +from .exceptions import ( + SaveWarningExc +) from .lib import ( get_system_settings, get_project_settings, get_current_project_settings, get_anatomy_settings, - get_environments + get_environments, + get_local_settings ) from .entities import ( SystemSettings, @@ -12,11 +16,14 @@ from .entities import ( __all__ = ( + "SaveWarningExc", + "get_system_settings", "get_project_settings", "get_current_project_settings", "get_anatomy_settings", "get_environments", + "get_local_settings", "SystemSettings", "ProjectSettings" diff --git a/openpype/settings/defaults/project_anatomy/attributes.json b/openpype/settings/defaults/project_anatomy/attributes.json index 987021f25b..921d12e32a 100644 --- a/openpype/settings/defaults/project_anatomy/attributes.json +++ b/openpype/settings/defaults/project_anatomy/attributes.json @@ -10,17 +10,17 @@ "resolutionHeight": 1080, "pixelAspect": 1.0, "applications": [ - "maya_2020", - "nuke_12-2", - "nukex_12-2", - "hiero_12-2", - "resolve_16", - "houdini_18-5", - "blender_2-90", - "harmony_20", - "photoshop_2021", - "aftereffects_2021", - "unreal_4-24" + "maya/2020", + "nuke/12-2", + "nukex/12-2", + "hiero/12-2", + "resolve/16", + "houdini/18-5", + "blender/2-91", + "harmony/20", + "photoshop/2021", + "aftereffects/2021", + "unreal/4-26" ], "tools_env": [] } \ No newline at end of file diff --git a/openpype/settings/defaults/project_anatomy/imageio.json b/openpype/settings/defaults/project_anatomy/imageio.json index 4e98463ee4..ff16c22663 100644 --- a/openpype/settings/defaults/project_anatomy/imageio.json +++ b/openpype/settings/defaults/project_anatomy/imageio.json @@ -25,6 +25,9 @@ } }, "nuke": { + "viewer": { + "viewerProcess": "sRGB" + }, "workfile": { "colorManagement": "Nuke", "OCIO_config": "nuke-default", @@ -102,7 +105,7 @@ }, { "name": "tile_color", - "value": "0xff0000ff" + "value": "0xadab1dff" }, { "name": "channels", diff --git a/openpype/settings/defaults/project_settings/deadline.json b/openpype/settings/defaults/project_settings/deadline.json index 9ff551491c..03f3e19a64 100644 --- a/openpype/settings/defaults/project_settings/deadline.json +++ b/openpype/settings/defaults/project_settings/deadline.json @@ -21,6 +21,7 @@ "secondary_pool": "", "group": "", "department": "", + "use_gpu": true, "limit_groups": {} }, "HarmonySubmitDeadline": { diff --git a/openpype/settings/defaults/project_settings/global.json b/openpype/settings/defaults/project_settings/global.json index ca1b258e72..61db35ba79 100644 --- a/openpype/settings/defaults/project_settings/global.json +++ b/openpype/settings/defaults/project_settings/global.json @@ -26,11 +26,11 @@ "ftrackreview" ], "ffmpeg_args": { - "video_filters": [], - "audio_filters": [], - "input": [ - "-gamma 2.2" + "video_filters": [ + "eq=gamma=2.2" ], + "audio_filters": [], + "input": [], "output": [ "-pix_fmt yuv420p", "-crf 18", @@ -45,7 +45,25 @@ ] }, "width": 0, - "height": 0 + "height": 0, + "letter_box": { + "enabled": false, + "ratio": 0.0, + "state": "letterbox", + "fill_color": [ + 0, + 0, + 0, + 255 + ], + "line_thickness": 0, + "line_color": [ + 255, + 0, + 0, + 255 + ] + } } } } diff --git a/openpype/settings/defaults/project_settings/hiero.json b/openpype/settings/defaults/project_settings/hiero.json index b69bc66457..44b27fc16f 100644 --- a/openpype/settings/defaults/project_settings/hiero.json +++ b/openpype/settings/defaults/project_settings/hiero.json @@ -17,6 +17,28 @@ "handleEnd": 10 } }, + "load": { + "LoadClip": { + "enabled": true, + "families": [ + "render2d", + "source", + "plate", + "render", + "review" + ], + "representations": [ + "exr", + "dpx", + "jpg", + "jpeg", + "png", + "h264", + "mov" + ], + "clip_name_template": "{asset}_{subset}_{representation}" + } + }, "publish": { "CollectInstanceVersion": { "enabled": false diff --git a/openpype/settings/defaults/project_settings/maya.json b/openpype/settings/defaults/project_settings/maya.json index a524ec45ae..8600e49518 100644 --- a/openpype/settings/defaults/project_settings/maya.json +++ b/openpype/settings/defaults/project_settings/maya.json @@ -8,6 +8,13 @@ "yetiRig": "ma" }, "create": { + "CreateLook": { + "enabled": true, + "make_tx": true, + "defaults": [ + "Main" + ] + }, "CreateAnimation": { "enabled": true, "defaults": [ @@ -38,12 +45,6 @@ "Main" ] }, - "CreateLook": { - "enabled": true, - "defaults": [ - "Main" - ] - }, "CreateMayaScene": { "enabled": true, "defaults": [ @@ -381,10 +382,6 @@ "optional": true, "active": true, "bake_attributes": [] - }, - "MayaSubmitDeadline": { - "enabled": true, - "tile_assembler_plugin": "DraftTileAssembler" } }, "load": { diff --git a/openpype/settings/defaults/project_settings/nuke.json b/openpype/settings/defaults/project_settings/nuke.json index 852e041805..bb5232cea7 100644 --- a/openpype/settings/defaults/project_settings/nuke.json +++ b/openpype/settings/defaults/project_settings/nuke.json @@ -86,12 +86,6 @@ }, "ExtractSlateFrame": { "viewer_lut_raw": false - }, - "NukeSubmitDeadline": { - "deadline_priority": 50, - "deadline_pool": "", - "deadline_pool_secondary": "", - "deadline_chunk_size": 1 } }, "load": { diff --git a/openpype/settings/defaults/project_settings/tvpaint.json b/openpype/settings/defaults/project_settings/tvpaint.json index d4130c88be..4a424b1c03 100644 --- a/openpype/settings/defaults/project_settings/tvpaint.json +++ b/openpype/settings/defaults/project_settings/tvpaint.json @@ -1,6 +1,16 @@ { "publish": { - "ValidateMissingLayers": { + "ValidateProjectSettings": { + "enabled": true, + "optional": true, + "active": true + }, + "ValidateMarks": { + "enabled": true, + "optional": true, + "active": true + }, + "ValidateAssetName": { "enabled": true, "optional": true, "active": true diff --git a/openpype/settings/defaults/system_settings/applications.json b/openpype/settings/defaults/system_settings/applications.json index bd2987c153..e77b5d0ce5 100644 --- a/openpype/settings/defaults/system_settings/applications.json +++ b/openpype/settings/defaults/system_settings/applications.json @@ -6,9 +6,9 @@ "host_name": "maya", "environment": { "PYTHONPATH": [ - "{OPENPYPE_ROOT}/openpype/hosts/maya/startup", - "{OPENPYPE_ROOT}/repos/avalon-core/setup/maya", - "{OPENPYPE_ROOT}/repos/maya-look-assigner", + "{OPENPYPE_REPOS_ROOT}/openpype/hosts/maya/startup", + "{OPENPYPE_REPOS_ROOT}/repos/avalon-core/setup/maya", + "{OPENPYPE_REPOS_ROOT}/repos/maya-look-assigner", "{PYTHONPATH}" ], "MAYA_DISABLE_CLIC_IPM": "Yes", @@ -19,7 +19,28 @@ "OPENPYPE_LOG_NO_COLORS": "Yes" }, "variants": { + "2022": { + "use_python_2": false, + "executables": { + "windows": [ + "C:\\Program Files\\Autodesk\\Maya2022\\bin\\maya.exe" + ], + "darwin": [], + "linux": [ + "/usr/autodesk/maya2022/bin/maya" + ] + }, + "arguments": { + "windows": [], + "darwin": [], + "linux": [] + }, + "environment": { + "MAYA_VERSION": "2022" + } + }, "2020": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Autodesk\\Maya2020\\bin\\maya.exe" @@ -39,6 +60,7 @@ } }, "2019": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Autodesk\\Maya2019\\bin\\maya.exe" @@ -58,6 +80,7 @@ } }, "2018": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Autodesk\\Maya2018\\bin\\maya.exe" @@ -75,6 +98,9 @@ "environment": { "MAYA_VERSION": "2018" } + }, + "__dynamic_keys_labels__": { + "2022": "2022 (Testing Only)" } } }, @@ -85,8 +111,8 @@ "host_name": "nuke", "environment": { "NUKE_PATH": [ - "{OPENPYPE_ROOT}/repos/avalon-core/setup/nuke/nuke_path", - "{OPENPYPE_ROOT}/openpype/hosts/nuke/startup", + "{OPENPYPE_REPOS_ROOT}/repos/avalon-core/setup/nuke/nuke_path", + "{OPENPYPE_REPOS_ROOT}/openpype/hosts/nuke/startup", "{OPENPYPE_STUDIO_PLUGINS}/nuke" ], "PATH": { @@ -95,7 +121,26 @@ "LOGLEVEL": "DEBUG" }, "variants": { + "13-0": { + "use_python_2": false, + "executables": { + "windows": [ + "C:\\Program Files\\Nuke13.0v1\\Nuke13.0.exe" + ], + "darwin": [], + "linux": [ + "/usr/local/Nuke13.0v1/Nuke13.0" + ] + }, + "arguments": { + "windows": [], + "darwin": [], + "linux": [] + }, + "environment": {} + }, "12-2": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke12.2v3\\Nuke12.2.exe" @@ -113,6 +158,7 @@ "environment": {} }, "12-0": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke12.0v1\\Nuke12.0.exe" @@ -130,6 +176,7 @@ "environment": {} }, "11-3": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke11.3v1\\Nuke11.3.exe" @@ -147,6 +194,7 @@ "environment": {} }, "11-2": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke11.2v2\\Nuke11.2.exe" @@ -162,9 +210,11 @@ "environment": {} }, "__dynamic_keys_labels__": { + "13-0": "13.0 (Testing only)", "12-2": "12.2", "12-0": "12.0", - "11-3": "11.3" + "11-3": "11.3", + "11-2": "11.2" } } }, @@ -175,8 +225,8 @@ "host_name": "nuke", "environment": { "NUKE_PATH": [ - "{OPENPYPE_ROOT}/repos/avalon-core/setup/nuke/nuke_path", - "{OPENPYPE_ROOT}/openpype/hosts/nuke/startup", + "{OPENPYPE_REPOS_ROOT}/repos/avalon-core/setup/nuke/nuke_path", + "{OPENPYPE_REPOS_ROOT}/openpype/hosts/nuke/startup", "{OPENPYPE_STUDIO_PLUGINS}/nuke" ], "PATH": { @@ -185,7 +235,32 @@ "LOGLEVEL": "DEBUG" }, "variants": { + "13-0": { + "use_python_2": false, + "executables": { + "windows": [ + "C:\\Program Files\\Nuke13.0v1\\Nuke13.0.exe" + ], + "darwin": [], + "linux": [ + "/usr/local/Nuke13.0v1/Nuke13.0" + ] + }, + "arguments": { + "windows": [ + "--nukex" + ], + "darwin": [ + "--nukex" + ], + "linux": [ + "--nukex" + ] + }, + "environment": {} + }, "12-2": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke12.2v3\\Nuke12.2.exe" @@ -209,6 +284,7 @@ "environment": {} }, "12-0": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke12.0v1\\Nuke12.0.exe" @@ -232,6 +308,7 @@ "environment": {} }, "11-3": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke11.3v1\\Nuke11.3.exe" @@ -255,6 +332,7 @@ "environment": {} }, "11-2": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke11.2v2\\Nuke11.2.exe" @@ -276,6 +354,7 @@ "environment": {} }, "__dynamic_keys_labels__": { + "13-0": "13.0 (Testing only)", "12-2": "12.2", "12-0": "12.0", "11-3": "11.3", @@ -290,7 +369,7 @@ "host_name": "hiero", "environment": { "HIERO_PLUGIN_PATH": [ - "{OPENPYPE_ROOT}/openpype/hosts/hiero/startup" + "{OPENPYPE_REPOS_ROOT}/openpype/hosts/hiero/startup" ], "PATH": { "windows": "C:/Program Files (x86)/QuickTime/QTSystem/;{PATH}" @@ -300,7 +379,32 @@ "LOGLEVEL": "DEBUG" }, "variants": { + "13-0": { + "use_python_2": false, + "executables": { + "windows": [ + "C:\\Program Files\\Nuke13.0v1\\Nuke13.0.exe" + ], + "darwin": [], + "linux": [ + "/usr/local/Nuke13.0v1/Nuke13.0" + ] + }, + "arguments": { + "windows": [ + "--studio" + ], + "darwin": [ + "--studio" + ], + "linux": [ + "--studio" + ] + }, + "environment": {} + }, "12-2": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke12.2v3\\Nuke12.2.exe" @@ -324,6 +428,7 @@ "environment": {} }, "12-0": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke12.0v1\\Nuke12.0.exe" @@ -347,6 +452,7 @@ "environment": {} }, "11-3": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke11.3v1\\Nuke11.3.exe" @@ -370,6 +476,7 @@ "environment": {} }, "11-2": { + "use_python_2": true, "executables": { "windows": [], "darwin": [], @@ -389,6 +496,7 @@ "environment": {} }, "__dynamic_keys_labels__": { + "13-0": "13.0 (Testing only)", "12-2": "12.2", "12-0": "12.0", "11-3": "11.3", @@ -403,7 +511,7 @@ "host_name": "hiero", "environment": { "HIERO_PLUGIN_PATH": [ - "{OPENPYPE_ROOT}/openpype/hosts/hiero/startup" + "{OPENPYPE_REPOS_ROOT}/openpype/hosts/hiero/startup" ], "PATH": { "windows": "C:/Program Files (x86)/QuickTime/QTSystem/;{PATH}" @@ -413,7 +521,32 @@ "LOGLEVEL": "DEBUG" }, "variants": { + "13-0": { + "use_python_2": false, + "executables": { + "windows": [ + "C:\\Program Files\\Nuke13.0v1\\Nuke13.0.exe" + ], + "darwin": [], + "linux": [ + "/usr/local/Nuke13.0v1/Nuke13.0" + ] + }, + "arguments": { + "windows": [ + "--hiero" + ], + "darwin": [ + "--hiero" + ], + "linux": [ + "--hiero" + ] + }, + "environment": {} + }, "12-2": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke12.2v3\\Nuke12.2.exe" @@ -437,6 +570,7 @@ "environment": {} }, "12-0": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke12.0v1\\Nuke12.0.exe" @@ -460,6 +594,7 @@ "environment": {} }, "11-3": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke11.3v1\\Nuke11.3.exe" @@ -483,6 +618,7 @@ "environment": {} }, "11-2": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Nuke11.2v2\\Nuke11.2.exe" @@ -504,6 +640,7 @@ "environment": {} }, "__dynamic_keys_labels__": { + "13-0": "13.0 (Testing only)", "12-2": "12.2", "12-0": "12.0", "11-3": "11.3", @@ -544,6 +681,7 @@ "16": { "enabled": true, "variant_label": "16", + "use_python_2": false, "executables": { "windows": [], "darwin": [], @@ -559,6 +697,7 @@ "9": { "enabled": true, "variant_label": "9", + "use_python_2": false, "executables": { "windows": [ "C:\\Program Files\\Blackmagic Design\\Fusion 9\\Fusion.exe" @@ -614,7 +753,7 @@ "{PYTHON36_RESOLVE}/Scripts", "{PATH}" ], - "PRE_PYTHON_SCRIPT": "{OPENPYPE_ROOT}/openpype/resolve/preload_console.py", + "PRE_PYTHON_SCRIPT": "{OPENPYPE_REPOS_ROOT}/openpype/resolve/preload_console.py", "OPENPYPE_LOG_NO_COLORS": "True", "RESOLVE_DEV": "True" }, @@ -622,6 +761,7 @@ "16": { "enabled": true, "variant_label": "16", + "use_python_2": false, "executables": { "windows": [ "C:/Program Files/Blackmagic Design/DaVinci Resolve/Resolve.exe" @@ -645,18 +785,19 @@ "host_name": "houdini", "environment": { "HOUDINI_PATH": { - "darwin": "{OPENPYPE_ROOT}/openpype/hosts/houdini/startup:&", - "linux": "{OPENPYPE_ROOT}/openpype/hosts/houdini/startup:&", - "windows": "{OPENPYPE_ROOT}/openpype/hosts/houdini/startup;&" + "darwin": "{OPENPYPE_REPOS_ROOT}/openpype/hosts/houdini/startup:&", + "linux": "{OPENPYPE_REPOS_ROOT}/openpype/hosts/houdini/startup:&", + "windows": "{OPENPYPE_REPOS_ROOT}/openpype/hosts/houdini/startup;&" }, "HOUDINI_MENU_PATH": { - "darwin": "{OPENPYPE_ROOT}/openpype/hosts/houdini/startup:&", - "linux": "{OPENPYPE_ROOT}/openpype/hosts/houdini/startup:&", - "windows": "{OPENPYPE_ROOT}/openpype/hosts/houdini/startup;&" + "darwin": "{OPENPYPE_REPOS_ROOT}/openpype/hosts/houdini/startup:&", + "linux": "{OPENPYPE_REPOS_ROOT}/openpype/hosts/houdini/startup:&", + "windows": "{OPENPYPE_REPOS_ROOT}/openpype/hosts/houdini/startup;&" } }, "variants": { "18-5": { + "use_python_2": true, "executables": { "windows": [ "C:\\Program Files\\Side Effects Software\\Houdini 18.5.499\\bin\\houdini.exe" @@ -672,6 +813,7 @@ "environment": {} }, "18": { + "use_python_2": true, "executables": { "windows": [], "darwin": [], @@ -685,6 +827,7 @@ "environment": {} }, "17": { + "use_python_2": true, "executables": { "windows": [], "darwin": [], @@ -710,15 +853,16 @@ "icon": "{}/app_icons/blender.png", "host_name": "blender", "environment": { - "BLENDER_USER_SCRIPTS": "{OPENPYPE_ROOT}/repos/avalon-core/setup/blender", + "BLENDER_USER_SCRIPTS": "{OPENPYPE_REPOS_ROOT}/repos/avalon-core/setup/blender", "PYTHONPATH": [ - "{OPENPYPE_ROOT}/repos/avalon-core/setup/blender", + "{OPENPYPE_REPOS_ROOT}/repos/avalon-core/setup/blender", "{PYTHONPATH}" ], "QT_PREFERRED_BINDING": "PySide2" }, "variants": { "2-83": { + "use_python_2": false, "executables": { "windows": [ "C:\\Program Files\\Blender Foundation\\Blender 2.83\\blender.exe" @@ -740,6 +884,7 @@ "environment": {} }, "2-90": { + "use_python_2": false, "executables": { "windows": [ "C:\\Program Files\\Blender Foundation\\Blender 2.90\\blender.exe" @@ -760,9 +905,32 @@ }, "environment": {} }, + "2-91": { + "use_python_2": false, + "executables": { + "windows": [ + "C:\\Program Files\\Blender Foundation\\Blender 2.91\\blender.exe" + ], + "darwin": [], + "linux": [] + }, + "arguments": { + "windows": [ + "--python-use-system-env" + ], + "darwin": [ + "--python-use-system-env" + ], + "linux": [ + "--python-use-system-env" + ] + }, + "environment": {} + }, "__dynamic_keys_labels__": { "2-83": "2.83", - "2-90": "2.90" + "2-90": "2.90", + "2-91": "2.91" } } }, @@ -773,12 +941,13 @@ "host_name": "harmony", "environment": { "AVALON_HARMONY_WORKFILES_ON_LAUNCH": "1", - "LIB_OPENHARMONY_PATH": "{OPENPYPE_ROOT}/pype/vendor/OpenHarmony" + "LIB_OPENHARMONY_PATH": "{OPENPYPE_REPOS_ROOT}/pype/vendor/OpenHarmony" }, "variants": { "20": { "enabled": true, "variant_label": "20", + "use_python_2": false, "executables": { "windows": [], "darwin": [], @@ -794,6 +963,7 @@ "17": { "enabled": true, "variant_label": "17", + "use_python_2": false, "executables": { "windows": [], "darwin": [ @@ -820,6 +990,7 @@ }, "variants": { "animation_11-64bits": { + "use_python_2": false, "executables": { "windows": [ "C:\\Program Files\\TVPaint Developpement\\TVPaint Animation 11 (64bits)\\TVPaint Animation 11 (64bits).exe" @@ -835,6 +1006,7 @@ "environment": {} }, "animation_11-32bits": { + "use_python_2": false, "executables": { "windows": [ "C:\\Program Files (x86)\\TVPaint Developpement\\TVPaint Animation 11 (32bits)\\TVPaint Animation 11 (32bits).exe" @@ -870,6 +1042,7 @@ "2020": { "enabled": true, "variant_label": "2020", + "use_python_2": false, "executables": { "windows": [ "C:\\Program Files\\Adobe\\Adobe Photoshop 2020\\Photoshop.exe" @@ -887,6 +1060,7 @@ "2021": { "enabled": true, "variant_label": "2021", + "use_python_2": false, "executables": { "windows": [ "C:\\Program Files\\Adobe\\Adobe Photoshop 2021\\Photoshop.exe" @@ -918,6 +1092,7 @@ "2020": { "enabled": true, "variant_label": "2020", + "use_python_2": false, "executables": { "windows": [ "" @@ -935,6 +1110,7 @@ "2021": { "enabled": true, "variant_label": "2021", + "use_python_2": false, "executables": { "windows": [ "C:\\Program Files\\Adobe\\Adobe After Effects 2021\\Support Files\\AfterFX.exe" @@ -957,12 +1133,13 @@ "icon": "app_icons/celaction.png", "host_name": "celaction", "environment": { - "CELACTION_TEMPLATE": "{OPENPYPE_ROOT}/openpype/hosts/celaction/celaction_template_scene.scn" + "CELACTION_TEMPLATE": "{OPENPYPE_REPOS_ROOT}/openpype/hosts/celaction/celaction_template_scene.scn" }, "variants": { "local": { "enabled": true, "variant_label": "Local", + "use_python_2": false, "executables": { "windows": [], "darwin": [], @@ -983,12 +1160,12 @@ "icon": "{}/app_icons/ue4.png'", "host_name": "unreal", "environment": { - "AVALON_UNREAL_PLUGIN": "{OPENPYPE_ROOT}/repos/avalon-unreal-integration", - "OPENPYPE_LOG_NO_COLORS": "True", - "QT_PREFERRED_BINDING": "PySide" + "AVALON_UNREAL_PLUGIN": "{OPENPYPE_REPOS_ROOT}/repos/avalon-unreal-integration", + "OPENPYPE_LOG_NO_COLORS": "True" }, "variants": { - "4-24": { + "4-26": { + "use_python_2": false, "executables": { "windows": [], "darwin": [], @@ -1008,6 +1185,7 @@ "environment": {}, "variants": { "python_3-7": { + "use_python_2": true, "executables": { "windows": [], "darwin": [], @@ -1021,6 +1199,7 @@ "environment": {} }, "python_2-7": { + "use_python_2": true, "executables": { "windows": [], "darwin": [], @@ -1034,6 +1213,7 @@ "environment": {} }, "terminal": { + "use_python_2": true, "executables": { "windows": [], "darwin": [], @@ -1060,6 +1240,7 @@ "environment": {}, "variants": { "1-1": { + "use_python_2": false, "executables": { "windows": [], "darwin": [], diff --git a/openpype/settings/defaults/system_settings/general.json b/openpype/settings/defaults/system_settings/general.json index d93d2a0c3a..d03fedf3c9 100644 --- a/openpype/settings/defaults/system_settings/general.json +++ b/openpype/settings/defaults/system_settings/general.json @@ -1,18 +1,10 @@ { "studio_name": "Studio name", "studio_code": "stu", + "admin_password": "", "environment": { - "FFMPEG_PATH": { - "windows": "{OPENPYPE_ROOT}/vendor/bin/ffmpeg_exec/windows/bin", - "darwin": "{OPENPYPE_ROOT}/vendor/bin/ffmpeg_exec/darwin/bin", - "linux": ":{OPENPYPE_ROOT}/vendor/bin/ffmpeg_exec/linux" - }, - "OPENPYPE_OCIO_CONFIG": "{STUDIO_SOFT}/OpenColorIO-Configs", "__environment_keys__": { - "global": [ - "FFMPEG_PATH", - "OPENPYPE_OCIO_CONFIG" - ] + "global": [] } }, "openpype_path": { diff --git a/openpype/settings/defaults/system_settings/modules.json b/openpype/settings/defaults/system_settings/modules.json index b3065058a1..6e4b493116 100644 --- a/openpype/settings/defaults/system_settings/modules.json +++ b/openpype/settings/defaults/system_settings/modules.json @@ -161,9 +161,6 @@ "log_viewer": { "enabled": true }, - "user": { - "enabled": true - }, "standalonepublish_tool": { "enabled": true } diff --git a/openpype/settings/entities/base_entity.py b/openpype/settings/entities/base_entity.py index b5c42e1da0..2b9fd02904 100644 --- a/openpype/settings/entities/base_entity.py +++ b/openpype/settings/entities/base_entity.py @@ -457,25 +457,16 @@ class BaseItemEntity(BaseEntity): pass @property - def can_discard_changes(self): - """Result defines if `discard_changes` will be processed. - - Also can be used as validation before the method is called. - """ + def _can_discard_changes(self): + """Defines if `discard_changes` will be processed.""" return self.has_unsaved_changes @property - def can_add_to_studio_default(self): - """Result defines if `add_to_studio_default` will be processed. - - Also can be used as validation before the method is called. - """ + def _can_add_to_studio_default(self): + """Defines if `add_to_studio_default` will be processed.""" if self._override_state is not OverrideState.STUDIO: return False - if self.is_dynamic_item or self.is_in_dynamic_item: - return False - # Skip if entity is under group if self.group_item: return False @@ -487,30 +478,18 @@ class BaseItemEntity(BaseEntity): return True @property - def can_remove_from_studio_default(self): - """Result defines if `remove_from_studio_default` can be triggered. - - This can be also used as validation before the method is called. - """ + def _can_remove_from_studio_default(self): + """Defines if `remove_from_studio_default` can be processed.""" if self._override_state is not OverrideState.STUDIO: return False - if self.is_dynamic_item or self.is_in_dynamic_item: - return False - if not self.has_studio_override: return False return True @property - def can_add_to_project_override(self): - """Result defines if `add_to_project_override` can be triggered. - - Also can be used as validation before the method is called. - """ - if self.is_dynamic_item or self.is_in_dynamic_item: - return False - + def _can_add_to_project_override(self): + """Defines if `add_to_project_override` can be processed.""" # Show only when project overrides are set if self._override_state is not OverrideState.PROJECT: return False @@ -525,14 +504,8 @@ class BaseItemEntity(BaseEntity): return True @property - def can_remove_from_project_override(self): - """Result defines if `remove_from_project_override` can be triggered. - - This can be also used as validation before the method is called. - """ - if self.is_dynamic_item or self.is_in_dynamic_item: - return False - + def _can_remove_from_project_override(self): + """Defines if `remove_from_project_override` can be processed.""" if self._override_state is not OverrideState.PROJECT: return False @@ -544,6 +517,54 @@ class BaseItemEntity(BaseEntity): return False return True + @property + def can_trigger_discard_changes(self): + """Defines if can trigger `discard_changes`. + + Also can be used as validation before the method is called. + """ + return self._can_discard_changes + + @property + def can_trigger_add_to_studio_default(self): + """Defines if can trigger `add_to_studio_default`. + + Also can be used as validation before the method is called. + """ + if self.is_dynamic_item or self.is_in_dynamic_item: + return False + return self._can_add_to_studio_default + + @property + def can_trigger_remove_from_studio_default(self): + """Defines if can trigger `remove_from_studio_default`. + + Also can be used as validation before the method is called. + """ + if self.is_dynamic_item or self.is_in_dynamic_item: + return False + return self._can_remove_from_studio_default + + @property + def can_trigger_add_to_project_override(self): + """Defines if can trigger `add_to_project_override`. + + Also can be used as validation before the method is called. + """ + if self.is_dynamic_item or self.is_in_dynamic_item: + return False + return self._can_add_to_project_override + + @property + def can_trigger_remove_from_project_override(self): + """Defines if can trigger `remove_from_project_override`. + + Also can be used as validation before the method is called. + """ + if self.is_dynamic_item or self.is_in_dynamic_item: + return False + return self._can_remove_from_project_override + def discard_changes(self, on_change_trigger=None): """Discard changes on entity and it's children. @@ -568,7 +589,7 @@ class BaseItemEntity(BaseEntity): """ initialized = False if on_change_trigger is None: - if not self.can_discard_changes: + if not self.can_trigger_discard_changes: return initialized = True @@ -588,7 +609,7 @@ class BaseItemEntity(BaseEntity): def add_to_studio_default(self, on_change_trigger=None): initialized = False if on_change_trigger is None: - if not self.can_add_to_studio_default: + if not self.can_trigger_add_to_studio_default: return initialized = True @@ -625,7 +646,7 @@ class BaseItemEntity(BaseEntity): """ initialized = False if on_change_trigger is None: - if not self.can_remove_from_studio_default: + if not self.can_trigger_remove_from_studio_default: return initialized = True @@ -649,7 +670,7 @@ class BaseItemEntity(BaseEntity): def add_to_project_override(self, on_change_trigger=None): initialized = False if on_change_trigger is None: - if not self.can_add_to_project_override: + if not self.can_trigger_add_to_project_override: return initialized = True @@ -689,7 +710,7 @@ class BaseItemEntity(BaseEntity): initialized = False if on_change_trigger is None: - if not self.can_remove_from_project_override: + if not self.can_trigger_remove_from_project_override: return initialized = True on_change_trigger = [] diff --git a/openpype/settings/entities/dict_immutable_keys_entity.py b/openpype/settings/entities/dict_immutable_keys_entity.py index d5563f80d6..052bbda4d0 100644 --- a/openpype/settings/entities/dict_immutable_keys_entity.py +++ b/openpype/settings/entities/dict_immutable_keys_entity.py @@ -353,6 +353,20 @@ class DictImmutableKeysEntity(ItemEntity): for key in METADATA_KEYS: if key in value: metadata[key] = value.pop(key) + + old_metadata = metadata.get(M_OVERRIDEN_KEY) + if old_metadata: + old_metadata_set = set(old_metadata) + new_metadata = [] + for key in self.non_gui_children.keys(): + if key in old_metadata: + new_metadata.append(key) + old_metadata_set.remove(key) + + for key in old_metadata_set: + new_metadata.append(key) + metadata[M_OVERRIDEN_KEY] = new_metadata + return value, metadata def update_default_value(self, value): @@ -458,6 +472,9 @@ class DictImmutableKeysEntity(ItemEntity): for child_obj in self.non_gui_children.values(): child_obj.add_to_studio_default(on_change_trigger) self._ignore_child_changes = False + + self._update_current_metadata() + self.parent.on_child_change(self) def _remove_from_studio_default(self, on_change_trigger): @@ -471,6 +488,9 @@ class DictImmutableKeysEntity(ItemEntity): for child_obj in self.non_gui_children.values(): child_obj.add_to_project_override(_on_change_trigger) self._ignore_child_changes = False + + self._update_current_metadata() + self.parent.on_child_change(self) def _remove_from_project_override(self, on_change_trigger): diff --git a/openpype/settings/entities/dict_mutable_keys_entity.py b/openpype/settings/entities/dict_mutable_keys_entity.py index 7ba44ed0df..1f037ba5b4 100644 --- a/openpype/settings/entities/dict_mutable_keys_entity.py +++ b/openpype/settings/entities/dict_mutable_keys_entity.py @@ -251,8 +251,18 @@ class DictMutableKeysEntity(EndpointEntity): ) raise EntitySchemaError(self, reason) - for child_obj in self.children_by_key.values(): - child_obj.schema_validations() + # Validate object type schema + child_validated = False + for child_entity in self.children_by_key.values(): + child_entity.schema_validations() + child_validated = True + break + + if not child_validated: + key = "__tmp__" + tmp_child = self._add_key(key) + tmp_child.schema_validations() + self.children_by_key.pop(key) def get_child_path(self, child_obj): result_key = None @@ -277,21 +287,24 @@ class DictMutableKeysEntity(EndpointEntity): self.on_change() - def _metadata_for_current_state(self): + def _get_metadata_for_state(self, state): if ( - self._override_state is OverrideState.PROJECT + state is OverrideState.PROJECT and self._project_override_value is not NOT_SET ): return self._project_override_metadata if ( - self._override_state >= OverrideState.STUDIO + state >= OverrideState.STUDIO and self._studio_override_value is not NOT_SET ): return self._studio_override_metadata return self._default_metadata + def _metadata_for_current_state(self): + return self._get_metadata_for_state(self._override_state) + def set_override_state(self, state): # Trigger override state change of root if is not same if self.root_item.override_state is not state: @@ -519,6 +532,9 @@ class DictMutableKeysEntity(EndpointEntity): self.had_project_override = value is not NOT_SET def _discard_changes(self, on_change_trigger): + if not self._can_discard_changes: + return + self.set_override_state(self._override_state) on_change_trigger.append(self.on_change) @@ -527,6 +543,9 @@ class DictMutableKeysEntity(EndpointEntity): self.on_change() def _remove_from_studio_default(self, on_change_trigger): + if not self._can_remove_from_studio_default: + return + value = self._default_value if value is NOT_SET: value = self.value_on_not_set @@ -536,13 +555,23 @@ class DictMutableKeysEntity(EndpointEntity): # Simulate `clear` method without triggering value change for key in tuple(self.children_by_key.keys()): - child_obj = self.children_by_key.pop(key) + self.children_by_key.pop(key) + + metadata = self._get_metadata_for_state(OverrideState.DEFAULTS) + metadata_labels = metadata.get(M_DYNAMIC_KEY_LABEL) or {} + children_label_by_id = {} # Create new children for _key, _value in new_value.items(): - child_obj = self._add_key(_key) - child_obj.update_default_value(_value) - child_obj.set_override_state(self._override_state) + child_entity = self._add_key(_key) + child_entity.update_default_value(_value) + label = metadata_labels.get(_key) + if label: + children_label_by_id[child_entity.id] = label + + child_entity.set_override_state(self._override_state) + + self.children_label_by_id = children_label_by_id self._ignore_child_changes = False @@ -555,10 +584,7 @@ class DictMutableKeysEntity(EndpointEntity): self.on_change() def _remove_from_project_override(self, on_change_trigger): - if self._override_state is not OverrideState.PROJECT: - return - - if not self.has_project_override: + if not self._can_remove_from_project_override: return if self._has_studio_override: @@ -574,15 +600,26 @@ class DictMutableKeysEntity(EndpointEntity): # Simulate `clear` method without triggering value change for key in tuple(self.children_by_key.keys()): - child_obj = self.children_by_key.pop(key) + self.children_by_key.pop(key) + + metadata = self._get_metadata_for_state(OverrideState.STUDIO) + metadata_labels = metadata.get(M_DYNAMIC_KEY_LABEL) or {} + children_label_by_id = {} # Create new children for _key, _value in new_value.items(): - child_obj = self._add_key(_key) - child_obj.update_default_value(_value) + child_entity = self._add_key(_key) + child_entity.update_default_value(_value) if self._has_studio_override: - child_obj.update_studio_value(_value) - child_obj.set_override_state(self._override_state) + child_entity.update_studio_value(_value) + + label = metadata_labels.get(_key) + if label: + children_label_by_id[child_entity.id] = label + + child_entity.set_override_state(self._override_state) + + self.children_label_by_id = children_label_by_id self._ignore_child_changes = False diff --git a/openpype/settings/entities/input_entities.py b/openpype/settings/entities/input_entities.py index e406c7797a..1b2e10ca1d 100644 --- a/openpype/settings/entities/input_entities.py +++ b/openpype/settings/entities/input_entities.py @@ -251,6 +251,9 @@ class InputEntity(EndpointEntity): self._current_value = copy.deepcopy(value) def _discard_changes(self, on_change_trigger=None): + if not self._can_discard_changes: + return + self._value_is_modified = False if self._override_state >= OverrideState.PROJECT: self._has_project_override = self.had_project_override @@ -286,6 +289,9 @@ class InputEntity(EndpointEntity): self.on_change() def _remove_from_studio_default(self, on_change_trigger): + if not self._can_remove_from_studio_default: + return + value = self._default_value if value is NOT_SET: value = self.value_on_not_set @@ -301,10 +307,7 @@ class InputEntity(EndpointEntity): self.on_change() def _remove_from_project_override(self, on_change_trigger): - if self._override_state is not OverrideState.PROJECT: - return - - if not self._has_project_override: + if not self._can_remove_from_project_override: return self._has_project_override = False @@ -376,7 +379,10 @@ class BoolEntity(InputEntity): def _item_initalization(self): self.valid_value_types = (bool, ) - self.value_on_not_set = True + value_on_not_set = self.convert_to_valid_type( + self.schema_data.get("default", True) + ) + self.value_on_not_set = value_on_not_set class TextEntity(InputEntity): diff --git a/openpype/settings/entities/item_entities.py b/openpype/settings/entities/item_entities.py index 56e7d1c7b2..c3c6c598f6 100644 --- a/openpype/settings/entities/item_entities.py +++ b/openpype/settings/entities/item_entities.py @@ -453,4 +453,5 @@ class ListStrictEntity(ItemEntity): def reset_callbacks(self): super(ListStrictEntity, self).reset_callbacks() - self.child_obj.reset_callbacks() + for child_obj in self.children: + child_obj.reset_callbacks() diff --git a/openpype/settings/entities/list_entity.py b/openpype/settings/entities/list_entity.py index c6155b78f8..aff3bf0156 100644 --- a/openpype/settings/entities/list_entity.py +++ b/openpype/settings/entities/list_entity.py @@ -59,8 +59,7 @@ class ListEntity(EndpointEntity): ) def append(self, item): - child_obj = self._add_new_item() - child_obj.set_override_state(self._override_state) + child_obj = self.add_new_item(trigger_change=False) child_obj.set(item) self.on_change() @@ -92,8 +91,7 @@ class ListEntity(EndpointEntity): raise ValueError("ListEntity.remove(x): x not in ListEntity") def insert(self, idx, item): - child_obj = self._add_new_item(idx) - child_obj.set_override_state(self._override_state) + child_obj = self.add_new_item(idx, trigger_change=False) child_obj.set(item) self.on_change() @@ -105,10 +103,16 @@ class ListEntity(EndpointEntity): self.children.insert(idx, child_obj) return child_obj - def add_new_item(self, idx=None): + def add_new_item(self, idx=None, trigger_change=True): child_obj = self._add_new_item(idx) child_obj.set_override_state(self._override_state) - self.on_change() + if self._override_state is OverrideState.STUDIO: + child_obj.add_to_studio_default([]) + elif self._override_state is OverrideState.PROJECT: + child_obj.add_to_project_default([]) + + if trigger_change: + self.on_change() return child_obj def swap_items(self, item_1, item_2): @@ -167,8 +171,18 @@ class ListEntity(EndpointEntity): ) raise EntitySchemaError(self, reason) - for child_obj in self.children: - child_obj.schema_validations() + # Validate object type schema + child_validated = False + for child_entity in self.children: + child_entity.schema_validations() + child_validated = True + break + + if not child_validated: + idx = 0 + tmp_child = self._add_new_item(idx) + tmp_child.schema_validations() + self.children.pop(idx) def get_child_path(self, child_obj): result_idx = None @@ -343,7 +357,7 @@ class ListEntity(EndpointEntity): return output def _discard_changes(self, on_change_trigger): - if self._override_state is OverrideState.NOT_DEFINED: + if not self._can_discard_changes: return not_set = object() @@ -405,7 +419,7 @@ class ListEntity(EndpointEntity): self.on_change() def _remove_from_studio_default(self, on_change_trigger): - if self._override_state is not OverrideState.STUDIO: + if not self._can_remove_from_studio_default: return value = self._default_value @@ -433,10 +447,7 @@ class ListEntity(EndpointEntity): self.on_change() def _remove_from_project_override(self, on_change_trigger): - if self._override_state is not OverrideState.PROJECT: - return - - if not self.has_project_override: + if not self._can_remove_from_project_override: return if self._has_studio_override: diff --git a/openpype/settings/entities/root_entities.py b/openpype/settings/entities/root_entities.py index eed3d47f46..b89473d9fb 100644 --- a/openpype/settings/entities/root_entities.py +++ b/openpype/settings/entities/root_entities.py @@ -23,6 +23,7 @@ from openpype.settings.constants import ( PROJECT_ANATOMY_KEY, KEY_REGEX ) +from openpype.settings.exceptions import SaveWarningExc from openpype.settings.lib import ( DEFAULTS_DIR, @@ -724,8 +725,19 @@ class ProjectSettings(RootEntity): project_settings = settings_value.get(PROJECT_SETTINGS_KEY) or {} project_anatomy = settings_value.get(PROJECT_ANATOMY_KEY) or {} - save_project_settings(self.project_name, project_settings) - save_project_anatomy(self.project_name, project_anatomy) + warnings = [] + try: + save_project_settings(self.project_name, project_settings) + except SaveWarningExc as exc: + warnings.extend(exc.warnings) + + try: + save_project_anatomy(self.project_name, project_anatomy) + except SaveWarningExc as exc: + warnings.extend(exc.warnings) + + if warnings: + raise SaveWarningExc(warnings) def _validate_defaults_to_save(self, value): """Valiations of default values before save.""" diff --git a/openpype/settings/entities/schemas/projects_schema/schema_project_deadline.json b/openpype/settings/entities/schemas/projects_schema/schema_project_deadline.json index f46221ba63..1346fb3dad 100644 --- a/openpype/settings/entities/schemas/projects_schema/schema_project_deadline.json +++ b/openpype/settings/entities/schemas/projects_schema/schema_project_deadline.json @@ -128,6 +128,11 @@ "key": "department", "label": "Department" }, + { + "type": "boolean", + "key": "use_gpu", + "label": "Use GPU" + }, { "type": "dict-modifiable", "key": "limit_groups", diff --git a/openpype/settings/entities/schemas/projects_schema/schema_project_hiero.json b/openpype/settings/entities/schemas/projects_schema/schema_project_hiero.json index d2191a45a0..f717eff7dd 100644 --- a/openpype/settings/entities/schemas/projects_schema/schema_project_hiero.json +++ b/openpype/settings/entities/schemas/projects_schema/schema_project_hiero.json @@ -120,6 +120,45 @@ } ] }, + { + "type": "dict", + "collapsible": true, + "key": "load", + "label": "Loader plugins", + "children": [ + { + "type": "dict", + "collapsible": true, + "key": "LoadClip", + "label": "Load Clip", + "checkbox_key": "enabled", + "children": [ + { + "type": "boolean", + "key": "enabled", + "label": "Enabled" + }, + { + "type": "list", + "key": "families", + "label": "Families", + "object_type": "text" + }, + { + "type": "list", + "key": "representations", + "label": "Representations", + "object_type": "text" + }, + { + "type": "text", + "key": "clip_name_template", + "label": "Clip name template" + } + ] + } + ] + }, { "type": "dict", "collapsible": true, diff --git a/openpype/settings/entities/schemas/projects_schema/schema_project_syncserver.json b/openpype/settings/entities/schemas/projects_schema/schema_project_syncserver.json index fd728f3982..ea1b8fc9da 100644 --- a/openpype/settings/entities/schemas/projects_schema/schema_project_syncserver.json +++ b/openpype/settings/entities/schemas/projects_schema/schema_project_syncserver.json @@ -1,7 +1,7 @@ { "type": "dict", "key": "sync_server", - "label": "Sync Server (currently unused)", + "label": "Site Sync (beta testing)", "collapsible": true, "checkbox_key": "enabled", "is_file": true, diff --git a/openpype/settings/entities/schemas/projects_schema/schema_project_tvpaint.json b/openpype/settings/entities/schemas/projects_schema/schema_project_tvpaint.json index b9fe26a57c..ab404f03ff 100644 --- a/openpype/settings/entities/schemas/projects_schema/schema_project_tvpaint.json +++ b/openpype/settings/entities/schemas/projects_schema/schema_project_tvpaint.json @@ -17,8 +17,31 @@ "name": "template_publish_plugin", "template_data": [ { - "key": "ValidateMissingLayers", - "label": "ValidateMissingLayers" + "key": "ValidateProjectSettings", + "label": "ValidateProjectSettings", + "docstring": "Validate if FPS and Resolution match shot data" + } + ] + }, + { + "type": "schema_template", + "name": "template_publish_plugin", + "template_data": [ + { + "key": "ValidateMarks", + "label": "Validate MarkIn/Out", + "docstring": "Validate MarkIn/Out match Frame start/end on shot data" + } + ] + }, + { + "type": "schema_template", + "name": "template_publish_plugin", + "template_data": [ + { + "key": "ValidateAssetName", + "label": "ValidateAssetName", + "docstring": "Validate if shot on instances metadata is same as workfiles shot" } ] } diff --git a/openpype/settings/entities/schemas/projects_schema/schemas/schema_anatomy_imageio.json b/openpype/settings/entities/schemas/projects_schema/schemas/schema_anatomy_imageio.json index b48f90bd91..3c589f9492 100644 --- a/openpype/settings/entities/schemas/projects_schema/schemas/schema_anatomy_imageio.json +++ b/openpype/settings/entities/schemas/projects_schema/schemas/schema_anatomy_imageio.json @@ -118,6 +118,19 @@ "type": "dict", "label": "Nuke", "children": [ + { + "key": "viewer", + "type": "dict", + "label": "Viewer", + "collapsible": false, + "children": [ + { + "type": "text", + "key": "viewerProcess", + "label": "Viewer Process" + } + ] + }, { "key": "workfile", "type": "dict", @@ -234,8 +247,7 @@ "label": "Used in plugins", "object_type": { "type": "text", - "key": "pluginClass", - "label": "Plugin Class" + "key": "pluginClass" } }, { @@ -282,8 +294,7 @@ "label": "Used in plugins", "object_type": { "type": "text", - "key": "pluginClass", - "label": "Plugin Class" + "key": "pluginClass" } }, { diff --git a/openpype/settings/entities/schemas/projects_schema/schemas/schema_global_publish.json b/openpype/settings/entities/schemas/projects_schema/schemas/schema_global_publish.json index 3c079a130d..1bd028ac79 100644 --- a/openpype/settings/entities/schemas/projects_schema/schemas/schema_global_publish.json +++ b/openpype/settings/entities/schemas/projects_schema/schemas/schema_global_publish.json @@ -203,6 +203,69 @@ "default": 0, "minimum": 0, "maximum": 100000 + }, + { + "key": "letter_box", + "label": "Letter box", + "type": "dict", + "checkbox_key": "enabled", + "children": [ + { + "type": "boolean", + "key": "enabled", + "label": "Enabled", + "default": false + }, + { + "key": "ratio", + "label": "Ratio", + "type": "number", + "decimal": 4, + "default": 0, + "minimum": 0, + "maximum": 10000 + }, + { + "key": "state", + "label": "Type", + "type": "enum", + "enum_items": [ + { + "letterbox": "Letterbox" + }, + { + "pillar": "Pillar" + } + ] + }, + { + "type": "schema_template", + "name": "template_rgba_color", + "template_data": [ + { + "label": "Fill Color", + "name": "fill_color" + } + ] + }, + { + "key": "line_thickness", + "label": "Line Thickness", + "type": "number", + "minimum": 0, + "maximum": 1000 + }, + { + "type": "schema_template", + "name": "template_rgba_color", + "template_data": [ + { + "label": "Line Color", + "name": "line_color" + } + ] + } + ] } ] } diff --git a/openpype/settings/entities/schemas/projects_schema/schemas/schema_maya_create.json b/openpype/settings/entities/schemas/projects_schema/schemas/schema_maya_create.json index 575e04c85d..d728f1def3 100644 --- a/openpype/settings/entities/schemas/projects_schema/schemas/schema_maya_create.json +++ b/openpype/settings/entities/schemas/projects_schema/schemas/schema_maya_create.json @@ -4,6 +4,31 @@ "key": "create", "label": "Creator plugins", "children": [ + { + "type": "dict", + "collapsible": true, + "key": "CreateLook", + "label": "Create Look", + "checkbox_key": "enabled", + "children": [ + { + "type": "boolean", + "key": "enabled", + "label": "Enabled" + }, + { + "type": "boolean", + "key": "make_tx", + "label": "Make tx files" + }, + { + "type": "list", + "key": "defaults", + "label": "Default Subsets", + "object_type": "text" + } + ] + }, { "type": "schema_template", "name": "template_create_plugin", @@ -28,10 +53,6 @@ "key": "CreateLayout", "label": "Create Layout" }, - { - "key": "CreateLook", - "label": "Create Look" - }, { "key": "CreateMayaScene", "label": "Create Maya Scene" diff --git a/openpype/settings/entities/schemas/projects_schema/schemas/schema_maya_publish.json b/openpype/settings/entities/schemas/projects_schema/schemas/schema_maya_publish.json index 9d2e39edde..95b02a7936 100644 --- a/openpype/settings/entities/schemas/projects_schema/schemas/schema_maya_publish.json +++ b/openpype/settings/entities/schemas/projects_schema/schemas/schema_maya_publish.json @@ -283,34 +283,6 @@ "is_list": true } ] - }, - { - "type": "dict", - "collapsible": true, - "key": "MayaSubmitDeadline", - "label": "Submit maya job to deadline", - "checkbox_key": "enabled", - "children": [ - { - "type": "boolean", - "key": "enabled", - "label": "Enabled" - }, - { - "type": "enum", - "key": "tile_assembler_plugin", - "label": "Tile Assembler Plugin", - "multiselection": false, - "enum_items": [ - { - "DraftTileAssembler": "Draft Tile Assembler" - }, - { - "oiio": "Open Image IO" - } - ] - } - ] } ] } diff --git a/openpype/settings/entities/schemas/projects_schema/schemas/schema_nuke_publish.json b/openpype/settings/entities/schemas/projects_schema/schemas/schema_nuke_publish.json index 0e3770ac78..087e6c13a9 100644 --- a/openpype/settings/entities/schemas/projects_schema/schemas/schema_nuke_publish.json +++ b/openpype/settings/entities/schemas/projects_schema/schemas/schema_nuke_publish.json @@ -146,35 +146,6 @@ "label": "Viewer LUT raw" } ] - }, - { - "type": "dict", - "collapsible": true, - "key": "NukeSubmitDeadline", - "label": "NukeSubmitDeadline", - "is_group": true, - "children": [ - { - "type": "number", - "key": "deadline_priority", - "label": "deadline_priority" - }, - { - "type": "text", - "key": "deadline_pool", - "label": "deadline_pool" - }, - { - "type": "text", - "key": "deadline_pool_secondary", - "label": "deadline_pool_secondary" - }, - { - "type": "number", - "key": "deadline_chunk_size", - "label": "deadline_chunk_size" - } - ] } ] } diff --git a/openpype/settings/entities/schemas/projects_schema/schemas/schema_publish_gui_filter.json b/openpype/settings/entities/schemas/projects_schema/schemas/schema_publish_gui_filter.json index 1539bd0738..f27ca9586f 100644 --- a/openpype/settings/entities/schemas/projects_schema/schemas/schema_publish_gui_filter.json +++ b/openpype/settings/entities/schemas/projects_schema/schemas/schema_publish_gui_filter.json @@ -4,7 +4,6 @@ "key": "filters", "label": "Publish GUI Filters", "object_type": { - "type": "raw-json", - "label": "Plugins" + "type": "raw-json" } } diff --git a/openpype/settings/entities/schemas/projects_schema/schemas/template_rgba_color.json b/openpype/settings/entities/schemas/projects_schema/schemas/template_rgba_color.json new file mode 100644 index 0000000000..ffe530175a --- /dev/null +++ b/openpype/settings/entities/schemas/projects_schema/schemas/template_rgba_color.json @@ -0,0 +1,33 @@ +[ + { + "type": "list-strict", + "key": "{name}", + "label": "{label}", + "object_types": [ + { + "label": "R", + "type": "number", + "minimum": 0, + "maximum": 255 + }, + { + "label": "G", + "type": "number", + "minimum": 0, + "maximum": 255 + }, + { + "label": "B", + "type": "number", + "minimum": 0, + "maximum": 255 + }, + { + "label": "A", + "type": "number", + "minimum": 0, + "maximum": 255 + } + ] + } +] diff --git a/openpype/settings/entities/schemas/system_schema/host_settings/schema_blender.json b/openpype/settings/entities/schemas/system_schema/host_settings/schema_blender.json index e6e7381e9f..e72b1fac5b 100644 --- a/openpype/settings/entities/schemas/system_schema/host_settings/schema_blender.json +++ b/openpype/settings/entities/schemas/system_schema/host_settings/schema_blender.json @@ -28,7 +28,6 @@ "object_type": { "type": "dict", "collapsible": true, - "checkbox_key": "enabled", "children": [ { "type": "schema_template", diff --git a/openpype/settings/entities/schemas/system_schema/host_settings/schema_djv.json b/openpype/settings/entities/schemas/system_schema/host_settings/schema_djv.json index a95cedf7c3..229ca42b04 100644 --- a/openpype/settings/entities/schemas/system_schema/host_settings/schema_djv.json +++ b/openpype/settings/entities/schemas/system_schema/host_settings/schema_djv.json @@ -28,7 +28,6 @@ "object_type": { "type": "dict", "collapsible": true, - "checkbox_key": "enabled", "children": [ { "type": "schema_template", diff --git a/openpype/settings/entities/schemas/system_schema/host_settings/schema_houdini.json b/openpype/settings/entities/schemas/system_schema/host_settings/schema_houdini.json index 22a5b2e737..ee88d90e8e 100644 --- a/openpype/settings/entities/schemas/system_schema/host_settings/schema_houdini.json +++ b/openpype/settings/entities/schemas/system_schema/host_settings/schema_houdini.json @@ -28,7 +28,6 @@ "object_type": { "type": "dict", "collapsible": true, - "checkbox_key": "enabled", "children": [ { "type": "schema_template", diff --git a/openpype/settings/entities/schemas/system_schema/host_settings/schema_maya.json b/openpype/settings/entities/schemas/system_schema/host_settings/schema_maya.json index 7c33671fa7..9a81eda88d 100644 --- a/openpype/settings/entities/schemas/system_schema/host_settings/schema_maya.json +++ b/openpype/settings/entities/schemas/system_schema/host_settings/schema_maya.json @@ -28,7 +28,6 @@ "object_type": { "type": "dict", "collapsible": true, - "checkbox_key": "enabled", "children": [ { "type": "schema_template", diff --git a/openpype/settings/entities/schemas/system_schema/host_settings/schema_shell.json b/openpype/settings/entities/schemas/system_schema/host_settings/schema_shell.json index e344f98594..fcbb415b12 100644 --- a/openpype/settings/entities/schemas/system_schema/host_settings/schema_shell.json +++ b/openpype/settings/entities/schemas/system_schema/host_settings/schema_shell.json @@ -24,7 +24,6 @@ "object_type": { "type": "dict", "collapsible": true, - "checkbox_key": "enabled", "children": [ { "type": "schema_template", diff --git a/openpype/settings/entities/schemas/system_schema/host_settings/schema_tvpaint.json b/openpype/settings/entities/schemas/system_schema/host_settings/schema_tvpaint.json index eac09be113..3c13336eb1 100644 --- a/openpype/settings/entities/schemas/system_schema/host_settings/schema_tvpaint.json +++ b/openpype/settings/entities/schemas/system_schema/host_settings/schema_tvpaint.json @@ -28,7 +28,6 @@ "object_type": { "type": "dict", "collapsible": true, - "checkbox_key": "enabled", "children": [ { "type": "schema_template", diff --git a/openpype/settings/entities/schemas/system_schema/host_settings/schema_unreal.json b/openpype/settings/entities/schemas/system_schema/host_settings/schema_unreal.json index c5096197d6..1752899533 100644 --- a/openpype/settings/entities/schemas/system_schema/host_settings/schema_unreal.json +++ b/openpype/settings/entities/schemas/system_schema/host_settings/schema_unreal.json @@ -28,7 +28,6 @@ "object_type": { "type": "dict", "collapsible": true, - "checkbox_key": "enabled", "children": [ { "type": "schema_template", diff --git a/openpype/settings/entities/schemas/system_schema/host_settings/template_host_variant_items.json b/openpype/settings/entities/schemas/system_schema/host_settings/template_host_variant_items.json index bba4634c46..472840d8fc 100644 --- a/openpype/settings/entities/schemas/system_schema/host_settings/template_host_variant_items.json +++ b/openpype/settings/entities/schemas/system_schema/host_settings/template_host_variant_items.json @@ -1,4 +1,10 @@ [ + { + "type": "boolean", + "key": "use_python_2", + "label": "Use Python 2", + "default": false + }, { "type": "path", "key": "executables", diff --git a/openpype/settings/entities/schemas/system_schema/host_settings/template_nuke.json b/openpype/settings/entities/schemas/system_schema/host_settings/template_nuke.json index 3f25c7d72f..0055d0b191 100644 --- a/openpype/settings/entities/schemas/system_schema/host_settings/template_nuke.json +++ b/openpype/settings/entities/schemas/system_schema/host_settings/template_nuke.json @@ -29,7 +29,6 @@ "object_type": { "type": "dict", "collapsible": true, - "checkbox_key": "enabled", "children": [ { "type": "schema_template", diff --git a/openpype/settings/entities/schemas/system_schema/schema_general.json b/openpype/settings/entities/schemas/system_schema/schema_general.json index fd650b4a1e..568ccad5b9 100644 --- a/openpype/settings/entities/schemas/system_schema/schema_general.json +++ b/openpype/settings/entities/schemas/system_schema/schema_general.json @@ -18,6 +18,18 @@ { "type": "splitter" }, + { + "type": "label", + "label": "This is NOT a securely stored password!. It only acts as a simple barrier to stop users from accessing studio wide settings." + }, + { + "type": "text", + "key": "admin_password", + "label": "Admin password" + }, + { + "type": "splitter" + }, { "key": "environment", "label": "Environment", diff --git a/openpype/settings/entities/schemas/system_schema/schema_modules.json b/openpype/settings/entities/schemas/system_schema/schema_modules.json index 8512514ff3..878958b12d 100644 --- a/openpype/settings/entities/schemas/system_schema/schema_modules.json +++ b/openpype/settings/entities/schemas/system_schema/schema_modules.json @@ -82,7 +82,7 @@ }, { "type": "dict", "key": "sync_server", - "label": "Sync Server", + "label": "Site Sync", "collapsible": true, "checkbox_key": "enabled", "children": [{ @@ -154,20 +154,6 @@ } ] }, - { - "type": "dict", - "key": "user", - "label": "User setting", - "collapsible": true, - "checkbox_key": "enabled", - "children": [ - { - "type": "boolean", - "key": "enabled", - "label": "Enabled" - } - ] - }, { "type": "dict", "key": "standalonepublish_tool", diff --git a/openpype/settings/exceptions.py b/openpype/settings/exceptions.py new file mode 100644 index 0000000000..a06138eeaf --- /dev/null +++ b/openpype/settings/exceptions.py @@ -0,0 +1,11 @@ +class SaveSettingsValidation(Exception): + pass + + +class SaveWarningExc(SaveSettingsValidation): + def __init__(self, warnings): + if isinstance(warnings, str): + warnings = [warnings] + self.warnings = warnings + msg = " | ".join(warnings) + super(SaveWarningExc, self).__init__(msg) diff --git a/openpype/settings/handlers.py b/openpype/settings/handlers.py index b3e1b1b1e1..65ec7291d3 100644 --- a/openpype/settings/handlers.py +++ b/openpype/settings/handlers.py @@ -12,7 +12,8 @@ from .constants import ( SYSTEM_SETTINGS_KEY, PROJECT_SETTINGS_KEY, PROJECT_ANATOMY_KEY, - LOCAL_SETTING_KEY + LOCAL_SETTING_KEY, + M_OVERRIDEN_KEY ) from .lib import load_json_file @@ -167,6 +168,7 @@ class CacheValues: class MongoSettingsHandler(SettingsHandler): """Settings handler that use mongo for storing and loading of settings.""" + global_general_keys = ("openpype_path", "admin_password") def __init__(self): # Get mongo connection @@ -225,13 +227,106 @@ class MongoSettingsHandler(SettingsHandler): self._prepare_project_settings_keys() return self._attribute_keys - def _prepare_global_settings(self, data): + def _extract_global_settings(self, data): + """Extract global settings data from system settings overrides. + + This is now limited to "general" key in system settings which must be + set as group in schemas. + + Returns: + dict: Global settings extracted from system settings data. + """ output = {} - # Add "openpype_path" key to global settings if is set - if "general" in data and "openpype_path" in data["general"]: - output["openpype_path"] = data["general"]["openpype_path"] + if "general" not in data: + return output + + general_data = data["general"] + + # Add predefined keys to global settings if are set + for key in self.global_general_keys: + if key not in general_data: + continue + # Pop key from values + output[key] = general_data.pop(key) + # Pop key from overriden metadata + if ( + M_OVERRIDEN_KEY in general_data + and key in general_data[M_OVERRIDEN_KEY] + ): + general_data[M_OVERRIDEN_KEY].remove(key) return output + def _apply_global_settings( + self, system_settings_document, globals_document + ): + """Apply global settings data to system settings. + + Applification is skipped if document with global settings is not + available or does not have set data in. + + System settings document is "faked" like it exists if global document + has set values. + + Args: + system_settings_document (dict): System settings document from + MongoDB. + globals_document (dict): Global settings document from MongoDB. + + Returns: + Merged document which has applied global settings data. + """ + # Skip if globals document is not available + if ( + not globals_document + or "data" not in globals_document + or not globals_document["data"] + ): + return system_settings_document + + globals_data = globals_document["data"] + # Check if data contain any key from predefined keys + any_key_found = False + if globals_data: + for key in self.global_general_keys: + if key in globals_data: + any_key_found = True + break + + # Skip if any key from predefined key was not found in globals + if not any_key_found: + return system_settings_document + + # "Fake" system settings document if document does not exist + # - global settings document may exist but system settings not yet + if not system_settings_document: + system_settings_document = {} + + if "data" in system_settings_document: + system_settings_data = system_settings_document["data"] + else: + system_settings_data = {} + system_settings_document["data"] = system_settings_data + + if "general" in system_settings_data: + system_general = system_settings_data["general"] + else: + system_general = {} + system_settings_data["general"] = system_general + + overriden_keys = system_general.get(M_OVERRIDEN_KEY) or [] + for key in self.global_general_keys: + if key not in globals_data: + continue + + system_general[key] = globals_data[key] + if key not in overriden_keys: + overriden_keys.append(key) + + if overriden_keys: + system_general[M_OVERRIDEN_KEY] = overriden_keys + + return system_settings_document + def save_studio_settings(self, data): """Save studio overrides of system settings. @@ -243,23 +338,29 @@ class MongoSettingsHandler(SettingsHandler): Args: data(dict): Data of studio overrides with override metadata. """ - # Store system settings + # Update cache self.system_settings_cache.update_data(data) + + # Get copy of just updated cache + system_settings_data = self.system_settings_cache.data_copy() + + # Extract global settings from system settings + global_settings = self._extract_global_settings( + system_settings_data + ) + + # Store system settings self.collection.replace_one( { "type": SYSTEM_SETTINGS_KEY }, { "type": SYSTEM_SETTINGS_KEY, - "data": self.system_settings_cache.data + "data": system_settings_data }, upsert=True ) - # Get global settings from system settings - global_settings = self._prepare_global_settings( - self.system_settings_cache.data - ) # Store global settings self.collection.replace_one( { @@ -418,11 +519,27 @@ class MongoSettingsHandler(SettingsHandler): def get_studio_system_settings_overrides(self): """Studio overrides of system settings.""" if self.system_settings_cache.is_outdated: - document = self.collection.find_one({ - "type": SYSTEM_SETTINGS_KEY + system_settings_document = None + globals_document = None + docs = self.collection.find({ + # Use `$or` as system settings may have more filters in future + "$or": [ + {"type": GLOBAL_SETTINGS_KEY}, + {"type": SYSTEM_SETTINGS_KEY}, + ] }) + for doc in docs: + doc_type = doc["type"] + if doc_type == GLOBAL_SETTINGS_KEY: + globals_document = doc + elif doc_type == SYSTEM_SETTINGS_KEY: + system_settings_document = doc - self.system_settings_cache.update_from_document(document) + merged_document = self._apply_global_settings( + system_settings_document, globals_document + ) + + self.system_settings_cache.update_from_document(merged_document) return self.system_settings_cache.data_copy() def _get_project_settings_overrides(self, project_name): diff --git a/openpype/settings/lib.py b/openpype/settings/lib.py index 3bf2141808..f61166fa69 100644 --- a/openpype/settings/lib.py +++ b/openpype/settings/lib.py @@ -4,6 +4,9 @@ import functools import logging import platform import copy +from .exceptions import ( + SaveWarningExc +) from .constants import ( M_OVERRIDEN_KEY, M_ENVIRONMENT_KEY, @@ -101,8 +104,14 @@ def save_studio_settings(data): For saving of data cares registered Settings handler. + Warning messages are not logged as module raising them should log it within + it's logger. + Args: data(dict): Overrides data with metadata defying studio overrides. + + Raises: + SaveWarningExc: If any module raises the exception. """ # Notify Pype modules from openpype.modules import ModulesManager, ISettingsChangeListener @@ -110,15 +119,25 @@ def save_studio_settings(data): old_data = get_system_settings() default_values = get_default_settings()[SYSTEM_SETTINGS_KEY] new_data = apply_overrides(default_values, copy.deepcopy(data)) + new_data_with_metadata = copy.deepcopy(new_data) clear_metadata_from_settings(new_data) changes = calculate_changes(old_data, new_data) modules_manager = ModulesManager(_system_settings=new_data) + + warnings = [] for module in modules_manager.get_enabled_modules(): if isinstance(module, ISettingsChangeListener): - module.on_system_settings_save(old_data, new_data, changes) + try: + module.on_system_settings_save( + old_data, new_data, changes, new_data_with_metadata + ) + except SaveWarningExc as exc: + warnings.extend(exc.warnings) - return _SETTINGS_HANDLER.save_studio_settings(data) + _SETTINGS_HANDLER.save_studio_settings(data) + if warnings: + raise SaveWarningExc(warnings) @require_handler @@ -130,10 +149,16 @@ def save_project_settings(project_name, overrides): For saving of data cares registered Settings handler. + Warning messages are not logged as module raising them should log it within + it's logger. + Args: project_name (str): Project name for which overrides are passed. Default project's value is None. overrides(dict): Overrides data with metadata defying studio overrides. + + Raises: + SaveWarningExc: If any module raises the exception. """ # Notify Pype modules from openpype.modules import ModulesManager, ISettingsChangeListener @@ -151,17 +176,29 @@ def save_project_settings(project_name, overrides): old_data = get_default_project_settings(exclude_locals=True) new_data = apply_overrides(default_values, copy.deepcopy(overrides)) + new_data_with_metadata = copy.deepcopy(new_data) clear_metadata_from_settings(new_data) changes = calculate_changes(old_data, new_data) modules_manager = ModulesManager() + warnings = [] for module in modules_manager.get_enabled_modules(): if isinstance(module, ISettingsChangeListener): - module.on_project_settings_save( - old_data, new_data, project_name, changes - ) + try: + module.on_project_settings_save( + old_data, + new_data, + project_name, + changes, + new_data_with_metadata + ) + except SaveWarningExc as exc: + warnings.extend(exc.warnings) - return _SETTINGS_HANDLER.save_project_settings(project_name, overrides) + _SETTINGS_HANDLER.save_project_settings(project_name, overrides) + + if warnings: + raise SaveWarningExc(warnings) @require_handler @@ -173,10 +210,16 @@ def save_project_anatomy(project_name, anatomy_data): For saving of data cares registered Settings handler. + Warning messages are not logged as module raising them should log it within + it's logger. + Args: project_name (str): Project name for which overrides are passed. Default project's value is None. overrides(dict): Overrides data with metadata defying studio overrides. + + Raises: + SaveWarningExc: If any module raises the exception. """ # Notify Pype modules from openpype.modules import ModulesManager, ISettingsChangeListener @@ -194,17 +237,29 @@ def save_project_anatomy(project_name, anatomy_data): old_data = get_default_anatomy_settings(exclude_locals=True) new_data = apply_overrides(default_values, copy.deepcopy(anatomy_data)) + new_data_with_metadata = copy.deepcopy(new_data) clear_metadata_from_settings(new_data) changes = calculate_changes(old_data, new_data) modules_manager = ModulesManager() + warnings = [] for module in modules_manager.get_enabled_modules(): if isinstance(module, ISettingsChangeListener): - module.on_project_anatomy_save( - old_data, new_data, changes, project_name - ) + try: + module.on_project_anatomy_save( + old_data, + new_data, + changes, + project_name, + new_data_with_metadata + ) + except SaveWarningExc as exc: + warnings.extend(exc.warnings) - return _SETTINGS_HANDLER.save_project_anatomy(project_name, anatomy_data) + _SETTINGS_HANDLER.save_project_anatomy(project_name, anatomy_data) + + if warnings: + raise SaveWarningExc(warnings) @require_handler diff --git a/openpype/tools/launcher/actions.py b/openpype/tools/launcher/actions.py index 6261fe91ca..72c7aece72 100644 --- a/openpype/tools/launcher/actions.py +++ b/openpype/tools/launcher/actions.py @@ -1,7 +1,7 @@ import os -import importlib -from avalon import api, lib, style +from avalon import api, style +from openpype import PLUGINS_DIR from openpype.api import Logger, resources from openpype.lib import ( ApplictionExecutableNotFound, @@ -10,81 +10,6 @@ from openpype.lib import ( from Qt import QtWidgets, QtGui -class ProjectManagerAction(api.Action): - name = "projectmanager" - label = "Project Manager" - icon = "gear" - order = 999 # at the end - - def is_compatible(self, session): - return "AVALON_PROJECT" in session - - def process(self, session, **kwargs): - return lib.launch( - executable="python", - args=[ - "-u", "-m", "avalon.tools.projectmanager", - session['AVALON_PROJECT'] - ] - ) - - -class LoaderAction(api.Action): - name = "loader" - label = "Loader" - icon = "cloud-download" - order = 998 - - def is_compatible(self, session): - return "AVALON_PROJECT" in session - - def process(self, session, **kwargs): - return lib.launch( - executable="python", - args=[ - "-u", "-m", "avalon.tools.loader", session['AVALON_PROJECT'] - ] - ) - - -class LoaderLibrary(api.Action): - name = "loader_os" - label = "Library Loader" - icon = "book" - order = 997 # at the end - - def is_compatible(self, session): - return True - - def process(self, session, **kwargs): - return lib.launch( - executable="python", - args=["-u", "-m", "avalon.tools.libraryloader"] - ) - - -def register_default_actions(): - """Register default actions for Launcher""" - api.register_plugin(api.Action, ProjectManagerAction) - api.register_plugin(api.Action, LoaderAction) - api.register_plugin(api.Action, LoaderLibrary) - - -def register_config_actions(): - """Register actions from the configuration for Launcher""" - - module_name = os.environ["AVALON_CONFIG"] - config = importlib.import_module(module_name) - if not hasattr(config, "register_launcher_actions"): - print( - "Current configuration `%s` has no 'register_launcher_actions'" - % config.__name__ - ) - return - - config.register_launcher_actions() - - def register_actions_from_paths(paths): if not paths: return @@ -106,6 +31,13 @@ def register_actions_from_paths(paths): api.register_plugin_path(api.Action, path) +def register_config_actions(): + """Register actions from the configuration for Launcher""" + + actions_dir = os.path.join(PLUGINS_DIR, "actions") + register_actions_from_paths([actions_dir]) + + def register_environment_actions(): """Register actions from AVALON_ACTIONS for Launcher.""" diff --git a/openpype/tools/settings/__init__.py b/openpype/tools/settings/__init__.py index 3f47d1c2c3..547f4097a2 100644 --- a/openpype/tools/settings/__init__.py +++ b/openpype/tools/settings/__init__.py @@ -1,5 +1,7 @@ import sys from Qt import QtWidgets, QtGui +from .lib import is_password_required +from .widgets import PasswordDialog from .local_settings import LocalSettingsWindow from .settings import ( style, @@ -24,13 +26,14 @@ def main(user_role=None): widget = MainWidget(user_role) widget.show() - widget.reset() sys.exit(app.exec_()) __all__ = ( + "is_password_required", "style", + "PasswordDialog", "MainWidget", "ProjectListWidget", "LocalSettingsWindow", diff --git a/openpype/tools/settings/lib.py b/openpype/tools/settings/lib.py new file mode 100644 index 0000000000..0317941021 --- /dev/null +++ b/openpype/tools/settings/lib.py @@ -0,0 +1,16 @@ +def is_password_required(): + from openpype.settings import ( + get_system_settings, + get_local_settings + ) + + system_settings = get_system_settings() + password = system_settings["general"].get("admin_password") + if not password: + return False + + local_settings = get_local_settings() + is_admin = local_settings.get("general", {}).get("is_admin", False) + if is_admin: + return False + return True diff --git a/openpype/tools/settings/local_settings/general_widget.py b/openpype/tools/settings/local_settings/general_widget.py index e820d8ab8b..d01c16ff82 100644 --- a/openpype/tools/settings/local_settings/general_widget.py +++ b/openpype/tools/settings/local_settings/general_widget.py @@ -1,20 +1,86 @@ -from Qt import QtWidgets +import getpass + +from Qt import QtWidgets, QtCore +from openpype.tools.settings import ( + is_password_required, + PasswordDialog +) class LocalGeneralWidgets(QtWidgets.QWidget): def __init__(self, parent): super(LocalGeneralWidgets, self).__init__(parent) + self._loading_local_settings = False + + username_input = QtWidgets.QLineEdit(self) + username_input.setPlaceholderText(getpass.getuser()) + + is_admin_input = QtWidgets.QCheckBox(self) + + layout = QtWidgets.QFormLayout(self) + layout.setContentsMargins(0, 0, 0, 0) + + layout.addRow("OpenPype Username", username_input) + layout.addRow("Admin permissions", is_admin_input) + + is_admin_input.stateChanged.connect(self._on_admin_check_change) + + self.username_input = username_input + self.is_admin_input = is_admin_input def update_local_settings(self, value): - return + self._loading_local_settings = True - # RETURNING EARLY TO HIDE WIDGET WITHOUT CONTENT + username = "" + is_admin = False + if value: + username = value.get("username", username) + is_admin = value.get("is_admin", is_admin) + + self.username_input.setText(username) + + if self.is_admin_input.isChecked() != is_admin: + # Use state as `stateChanged` is connected to callbacks + if is_admin: + state = QtCore.Qt.Checked + else: + state = QtCore.Qt.Unchecked + self.is_admin_input.setCheckState(state) + + self._loading_local_settings = False + + def _on_admin_check_change(self): + if self._loading_local_settings: + return + + if not self.is_admin_input.isChecked(): + return + + if not is_password_required(): + return + + dialog = PasswordDialog(self, False) + dialog.setModal(True) + dialog.exec_() + result = dialog.result() + if self.is_admin_input.isChecked() != result: + # Use state as `stateChanged` is connected to callbacks + if result: + state = QtCore.Qt.Checked + else: + state = QtCore.Qt.Unchecked + self.is_admin_input.setCheckState(state) def settings_value(self): # Add changed # If these have changed then output = {} - # TEMPORARILY EMPTY AS THERE IS NOTHING TO PUT HERE + username = self.username_input.text() + if username: + output["username"] = username + is_admin = self.is_admin_input.isChecked() + if is_admin: + output["is_admin"] = is_admin return output diff --git a/openpype/tools/settings/local_settings/window.py b/openpype/tools/settings/local_settings/window.py index a12a2289b5..e117e7fa5d 100644 --- a/openpype/tools/settings/local_settings/window.py +++ b/openpype/tools/settings/local_settings/window.py @@ -80,7 +80,6 @@ class LocalSettingsWidget(QtWidgets.QWidget): general_widget = LocalGeneralWidgets(general_content) general_layout.addWidget(general_widget) - general_expand_widget.hide() self.main_layout.addWidget(general_expand_widget) @@ -127,9 +126,9 @@ class LocalSettingsWidget(QtWidgets.QWidget): self.system_settings.reset() self.project_settings.reset() - # self.general_widget.update_local_settings( - # value.get(LOCAL_GENERAL_KEY) - # ) + self.general_widget.update_local_settings( + value.get(LOCAL_GENERAL_KEY) + ) self.app_widget.update_local_settings( value.get(LOCAL_APPS_KEY) ) @@ -139,9 +138,9 @@ class LocalSettingsWidget(QtWidgets.QWidget): def settings_value(self): output = {} - # general_value = self.general_widget.settings_value() - # if general_value: - # output[LOCAL_GENERAL_KEY] = general_value + general_value = self.general_widget.settings_value() + if general_value: + output[LOCAL_GENERAL_KEY] = general_value app_value = self.app_widget.settings_value() if app_value: @@ -157,6 +156,8 @@ class LocalSettingsWindow(QtWidgets.QWidget): def __init__(self, parent=None): super(LocalSettingsWindow, self).__init__(parent) + self._reset_on_show = True + self.resize(1000, 600) self.setWindowTitle("OpenPype Local settings") @@ -194,9 +195,14 @@ class LocalSettingsWindow(QtWidgets.QWidget): self.reset_btn = reset_btn self.save_btn = save_btn - self.reset() + def showEvent(self, event): + super(LocalSettingsWindow, self).showEvent(event) + if self._reset_on_show: + self.reset() def reset(self): + if self._reset_on_show: + self._reset_on_show = False value = get_local_settings() self.settings_widget.update_local_settings(value) diff --git a/openpype/tools/settings/resources/__init__.py b/openpype/tools/settings/resources/__init__.py new file mode 100644 index 0000000000..83ce1a286f --- /dev/null +++ b/openpype/tools/settings/resources/__init__.py @@ -0,0 +1,8 @@ +import os + + +RESOURCES_DIR = os.path.dirname(os.path.abspath(__file__)) + + +def get_resource(*args): + return os.path.normpath(os.path.join(RESOURCES_DIR, *args)) diff --git a/openpype/tools/settings/resources/images/eye.png b/openpype/tools/settings/resources/images/eye.png new file mode 100644 index 0000000000000000000000000000000000000000..5a683e29748b35b3b64a200cb9723e82df45f4b9 GIT binary patch literal 2152 zcmai0dstIt93Gi@K}1AK5$ilhQ4HAG#Z7kHAlarv9U_+)52cRn3=U&EhwZ>N#7GK* zAtv}_f~X1RrMQNGK3E`_G;gFyW#kPtEFnU861>%SHUdqpKh8P(zW4pT=l6Sm-}jy6 zgoQ43ndmu@!C<(A$Ry$5Ii0@7zXa}AO`<^t_f`G3=Ox+lsoQqojl#IUJPsC?Dy)e-<~A9e{EIA z2qq1LIz@%4?PUQu2WliVlu2p87RQ4Ii{Ql?4G!$IKw#_O@p{Yvv6%v`A@WrELObEHO$y>1b71p>Qv?|~M!;a?Aj0(E^f7>A#^Nq7WiXsF zanP8j8p2@s=#T9iz0>8ZP<}T^%toqu=t8RV^cK;{W+B5aNrsb!i zj#T(0_uXz<(-bA}mF~T3cAV1g z`Q!@km7S*cAZ64)V9FAjd+^XsnOp`qd~uScqb=LTmL7JgneuAyqOcKHsI zId_6EJKHtG1L8K2p7W|o#06JKkN4dAK2^PY`sYoHems9H*`u;L2;Qe1qt=XRWoK4c z`=&9kMh#ub+j{HsTW6HhTip6)ZL8lR4v5`)as0-YCoL1&PUoDzxHdO^#@V&rp%2R- zuB+yu0Kf=!mq?PT=Hn*Dh_bC}42 zBhD+UzbsjhRc@WzTWj`@CfA(1(RHi*$1^4K;J~`G$2^Z7-)Oxf_?o*@>!JCD(-;^r z`2OYW?Rz-3!XuvbRSo+JR^__%tSZa@t-tu#u55D+bRgEl*?s+Lc0h);Az-T8?$|6{ zJ+Arl8p=;4AFQq(TOmE3{!#a#ika5AuQkmri;m>QzT?^#0DqM#>kQg9C5Ul7FTy@qaAA}HTsH7rzZRX#RRxAbp literal 0 HcmV?d00001 diff --git a/openpype/tools/settings/settings/widgets/base.py b/openpype/tools/settings/settings/widgets/base.py index 4010b8ab20..3d633a100e 100644 --- a/openpype/tools/settings/settings/widgets/base.py +++ b/openpype/tools/settings/settings/widgets/base.py @@ -71,7 +71,7 @@ class BaseWidget(QtWidgets.QWidget): def _discard_changes_action(self, menu, actions_mapping): # TODO use better condition as unsaved changes may be caused due to # changes in schema. - if not self.entity.can_discard_changes: + if not self.entity.can_trigger_discard_changes: return def discard_changes(): @@ -86,7 +86,7 @@ class BaseWidget(QtWidgets.QWidget): def _add_to_studio_default(self, menu, actions_mapping): """Set values as studio overrides.""" # Skip if not in studio overrides - if not self.entity.can_add_to_studio_default: + if not self.entity.can_trigger_add_to_studio_default: return action = QtWidgets.QAction("Add to studio default") @@ -94,7 +94,7 @@ class BaseWidget(QtWidgets.QWidget): menu.addAction(action) def _remove_from_studio_default_action(self, menu, actions_mapping): - if not self.entity.can_remove_from_studio_default: + if not self.entity.can_trigger_remove_from_studio_default: return def remove_from_studio_default(): @@ -106,7 +106,7 @@ class BaseWidget(QtWidgets.QWidget): menu.addAction(action) def _add_to_project_override_action(self, menu, actions_mapping): - if not self.entity.can_add_to_project_override: + if not self.entity.can_trigger_add_to_project_override: return action = QtWidgets.QAction("Add to project project override") @@ -114,7 +114,7 @@ class BaseWidget(QtWidgets.QWidget): menu.addAction(action) def _remove_from_project_override_action(self, menu, actions_mapping): - if not self.entity.can_remove_from_project_override: + if not self.entity.can_trigger_remove_from_project_override: return def remove_from_project_override(): diff --git a/openpype/tools/settings/settings/widgets/categories.py b/openpype/tools/settings/settings/widgets/categories.py index 9d286485a3..ab28620fc5 100644 --- a/openpype/tools/settings/settings/widgets/categories.py +++ b/openpype/tools/settings/settings/widgets/categories.py @@ -27,7 +27,7 @@ from openpype.settings.entities import ( SchemaError ) -from openpype.settings.lib import get_system_settings +from openpype.settings import SaveWarningExc from .widgets import ProjectListWidget from . import lib @@ -272,6 +272,22 @@ class SettingsCategoryWidget(QtWidgets.QWidget): # not required. self.reset() + except SaveWarningExc as exc: + warnings = [ + "Settings were saved but few issues happened." + ] + for item in exc.warnings: + warnings.append(item.replace("\n", "
")) + + msg = "

".join(warnings) + + dialog = QtWidgets.QMessageBox(self) + dialog.setText(msg) + dialog.setIcon(QtWidgets.QMessageBox.Warning) + dialog.exec_() + + self.reset() + except Exception as exc: formatted_traceback = traceback.format_exception(*sys.exc_info()) dialog = QtWidgets.QMessageBox(self) @@ -302,9 +318,14 @@ class SettingsCategoryWidget(QtWidgets.QWidget): "`create_root_entity` method not implemented" ) + def _on_reset_start(self): + return + def reset(self): self.set_state(CategoryState.Working) + self._on_reset_start() + self.input_fields = [] while self.content_layout.count() != 0: @@ -469,7 +490,6 @@ class ProjectWidget(SettingsCategoryWidget): def ui_tweaks(self): project_list_widget = ProjectListWidget(self) - project_list_widget.refresh() self.main_layout.insertWidget(0, project_list_widget, 0) @@ -485,6 +505,9 @@ class ProjectWidget(SettingsCategoryWidget): if self is saved_tab_widget: return + def _on_reset_start(self): + self.project_list_widget.refresh() + def _on_reset_crash(self): self.project_list_widget.setEnabled(False) super(ProjectWidget, self)._on_reset_crash() diff --git a/openpype/tools/settings/settings/widgets/dict_mutable_widget.py b/openpype/tools/settings/settings/widgets/dict_mutable_widget.py index 9bea89c0d6..ff4905c480 100644 --- a/openpype/tools/settings/settings/widgets/dict_mutable_widget.py +++ b/openpype/tools/settings/settings/widgets/dict_mutable_widget.py @@ -36,6 +36,7 @@ class ModifiableDictEmptyItem(QtWidgets.QWidget): super(ModifiableDictEmptyItem, self).__init__(parent) self.entity_widget = entity_widget self.collapsible_key = entity_widget.entity.collapsible_key + self.ignore_input_changes = entity_widget.ignore_input_changes self.is_duplicated = False self.key_is_valid = False @@ -101,6 +102,10 @@ class ModifiableDictEmptyItem(QtWidgets.QWidget): def _on_key_change(self): key = self.key_input.text() self.key_is_valid = KEY_REGEX.match(key) + + if self.ignore_input_changes: + return + self.is_duplicated = self.entity_widget.is_key_duplicated(key) key_input_state = "" # Collapsible key and empty key are not invalid @@ -355,6 +360,7 @@ class ModifiableDictItem(QtWidgets.QWidget): def set_label(self, label): if self.key_label_input and label is not None: self.key_label_input.setText(label) + self.update_key_label() def set_as_required(self, key): self.key_input.setText(key) @@ -386,6 +392,9 @@ class ModifiableDictItem(QtWidgets.QWidget): self.set_edit_mode(False) def _on_key_label_change(self): + if self.ignore_input_changes: + return + label = self.key_label_value() self.entity_widget.change_label(label, self) self.update_key_label() @@ -393,6 +402,10 @@ class ModifiableDictItem(QtWidgets.QWidget): def _on_key_change(self): key = self.key_value() self.key_is_valid = KEY_REGEX.match(key) + + if self.ignore_input_changes: + return + is_key_duplicated = self.entity_widget.validate_key_duplication( self.temp_key, key, self ) @@ -422,7 +435,7 @@ class ModifiableDictItem(QtWidgets.QWidget): self.wrapper_widget.label_widget.setText(label) def on_add_clicked(self): - widget = self.entity_widget.add_new_key(None, None, self) + widget = self.entity_widget.add_new_key(None, None) widget.key_input.setFocus(True) def on_edit_pressed(self): @@ -621,7 +634,7 @@ class DictMutableKeysWidget(BaseWidget): # TODO implement pass - def add_new_key(self, key, label=None, after_widget=None): + def add_new_key(self, key, label=None): uuid_key = None entity_key = key if not key: @@ -641,7 +654,7 @@ class DictMutableKeysWidget(BaseWidget): # Backup solution (for testing) if input_field is None: - input_field = self.add_widget_for_child(child_entity, after_widget) + input_field = self.add_widget_for_child(child_entity) if key: # Happens when created from collapsible key items where key @@ -719,29 +732,16 @@ class DictMutableKeysWidget(BaseWidget): return self.entity.set_child_label(entity, label) - def add_widget_for_child( - self, child_entity, after_widget=None, first=False - ): - if first: - new_widget_index = 0 - else: - new_widget_index = len(self.input_fields) - - if self.input_fields and not first: - if not after_widget: - after_widget = self.input_fields[-1] - - for idx in range(self.content_layout.count()): - item = self.content_layout.itemAt(idx) - if item.widget() is after_widget: - new_widget_index = idx + 1 - break - + def add_widget_for_child(self, child_entity): input_field = ModifiableDictItem( self.entity.collapsible_key, child_entity, self ) self.input_fields.append(input_field) + + new_widget_index = self.content_layout.count() - 1 + self.content_layout.insertWidget(new_widget_index, input_field) + return input_field def remove_row(self, widget): @@ -810,21 +810,15 @@ class DictMutableKeysWidget(BaseWidget): for key, child_entity in self.entity.items(): found = False - previous_input = None for input_field in self.input_fields: - if input_field.entity is not child_entity: - previous_input = input_field - else: + if input_field.entity is child_entity: found = True break if not found: changed = True - args = [previous_input] - if previous_input is None: - args.append(True) - _input_field = self.add_widget_for_child(child_entity, *args) + _input_field = self.add_widget_for_child(child_entity) _input_field.origin_key = key _input_field.set_key(key) if self.entity.collapsible_key: @@ -855,9 +849,8 @@ class DictMutableKeysWidget(BaseWidget): if keys_order: last_required = keys_order[-1] for key in self.entity.keys(): - if key in keys_order: - continue - keys_order.append(key) + if key not in keys_order: + keys_order.append(key) for key in keys_order: child_entity = self.entity[key] diff --git a/openpype/tools/settings/settings/widgets/multiselection_combobox.py b/openpype/tools/settings/settings/widgets/multiselection_combobox.py index da9cdd75cf..30ecb7b84b 100644 --- a/openpype/tools/settings/settings/widgets/multiselection_combobox.py +++ b/openpype/tools/settings/settings/widgets/multiselection_combobox.py @@ -262,7 +262,10 @@ class MultiSelectionComboBox(QtWidgets.QComboBox): self.lines[line] = [item] line += 1 else: - self.lines[line].append(item) + if line in self.lines: + self.lines[line].append(item) + else: + self.lines[line] = [item] left_x = left_x + width + self.item_spacing self.update() diff --git a/openpype/tools/settings/settings/widgets/widgets.py b/openpype/tools/settings/settings/widgets/widgets.py index aa79cc4b62..249b4e305d 100644 --- a/openpype/tools/settings/settings/widgets/widgets.py +++ b/openpype/tools/settings/settings/widgets/widgets.py @@ -661,8 +661,14 @@ class ProjectListWidget(QtWidgets.QWidget): self.current_project = None if self.dbcon: - for project_name in self.dbcon.database.collection_names(): - items.append(project_name) + database = self.dbcon.database + for project_name in database.collection_names(): + project_doc = database[project_name].find_one( + {"type": "project"}, + {"name": 1} + ) + if project_doc: + items.append(project_doc["name"]) for item in items: model.appendRow(QtGui.QStandardItem(item)) diff --git a/openpype/tools/settings/settings/widgets/window.py b/openpype/tools/settings/settings/widgets/window.py index 96275facff..495f909e51 100644 --- a/openpype/tools/settings/settings/widgets/window.py +++ b/openpype/tools/settings/settings/widgets/window.py @@ -1,4 +1,4 @@ -from Qt import QtWidgets, QtGui +from Qt import QtWidgets, QtGui, QtCore from .categories import ( CategoryState, SystemWidget, @@ -7,6 +7,11 @@ from .categories import ( from .widgets import ShadowWidget from .. import style +from openpype.tools.settings import ( + is_password_required, + PasswordDialog +) + class MainWidget(QtWidgets.QWidget): widget_width = 1000 @@ -14,6 +19,12 @@ class MainWidget(QtWidgets.QWidget): def __init__(self, user_role, parent=None): super(MainWidget, self).__init__(parent) + + self._user_passed = False + self._reset_on_show = True + + self._password_dialog = None + self.setObjectName("MainWidget") self.setWindowTitle("OpenPype Settings") @@ -44,6 +55,7 @@ class MainWidget(QtWidgets.QWidget): self.setLayout(layout) self._shadow_widget = ShadowWidget("Working...", self) + self._shadow_widget.setVisible(False) for tab_widget in tab_widgets: tab_widget.saved.connect(self._on_tab_save) @@ -75,6 +87,48 @@ class MainWidget(QtWidgets.QWidget): if app: app.processEvents() + def showEvent(self, event): + super(MainWidget, self).showEvent(event) + if self._reset_on_show: + self.reset() + + def _show_password_dialog(self): + if self._password_dialog: + self._password_dialog.open() + + def _on_password_dialog_close(self, password_passed): + # Store result for future settings reset + self._user_passed = password_passed + # Remove reference to password dialog + self._password_dialog = None + if password_passed: + self.reset() + else: + self.close() + def reset(self): + if self._password_dialog: + return + + if not self._user_passed: + self._user_passed = not is_password_required() + + self._on_state_change() + + if not self._user_passed: + # Avoid doubled dialog + dialog = PasswordDialog(self) + dialog.setModal(True) + dialog.finished.connect(self._on_password_dialog_close) + + self._password_dialog = dialog + + QtCore.QTimer.singleShot(100, self._show_password_dialog) + + return + + if self._reset_on_show: + self._reset_on_show = False + for tab_widget in self.tab_widgets: tab_widget.reset() diff --git a/openpype/tools/settings/widgets.py b/openpype/tools/settings/widgets.py new file mode 100644 index 0000000000..e2662f350f --- /dev/null +++ b/openpype/tools/settings/widgets.py @@ -0,0 +1,164 @@ +from Qt import QtWidgets, QtCore, QtGui + +from .resources import get_resource + +from openpype.api import get_system_settings +from openpype.settings.lib import ( + get_local_settings, + save_local_settings +) + + +class PressHoverButton(QtWidgets.QPushButton): + _mouse_pressed = False + _mouse_hovered = False + change_state = QtCore.Signal(bool) + + def mousePressEvent(self, event): + self._mouse_pressed = True + self._mouse_hovered = True + self.change_state.emit(self._mouse_hovered) + super(PressHoverButton, self).mousePressEvent(event) + + def mouseReleaseEvent(self, event): + self._mouse_pressed = False + self._mouse_hovered = False + self.change_state.emit(self._mouse_hovered) + super(PressHoverButton, self).mouseReleaseEvent(event) + + def mouseMoveEvent(self, event): + mouse_pos = self.mapFromGlobal(QtGui.QCursor.pos()) + under_mouse = self.rect().contains(mouse_pos) + if under_mouse != self._mouse_hovered: + self._mouse_hovered = under_mouse + self.change_state.emit(self._mouse_hovered) + + super(PressHoverButton, self).mouseMoveEvent(event) + + +class PasswordDialog(QtWidgets.QDialog): + """Stupidly simple dialog to compare password from general settings.""" + finished = QtCore.Signal(bool) + + def __init__(self, parent=None, allow_remember=True): + super(PasswordDialog, self).__init__(parent) + + self.setWindowTitle("Settings Password") + self.resize(300, 120) + + system_settings = get_system_settings() + + self._expected_result = ( + system_settings["general"].get("admin_password") + ) + self._final_result = None + self._allow_remember = allow_remember + + # Password input + password_widget = QtWidgets.QWidget(self) + + password_label = QtWidgets.QLabel("Password:", password_widget) + + password_input = QtWidgets.QLineEdit(password_widget) + password_input.setEchoMode(QtWidgets.QLineEdit.Password) + + show_password_icon_path = get_resource("images", "eye.png") + show_password_icon = QtGui.QIcon(show_password_icon_path) + show_password_btn = PressHoverButton(password_widget) + show_password_btn.setIcon(show_password_icon) + show_password_btn.setStyleSheet(( + "border: none;padding:0.1em;" + )) + show_password_btn.setFocusPolicy(QtCore.Qt.ClickFocus) + + password_layout = QtWidgets.QHBoxLayout(password_widget) + password_layout.setContentsMargins(0, 0, 0, 0) + password_layout.addWidget(password_label) + password_layout.addWidget(password_input) + password_layout.addWidget(show_password_btn) + + message_label = QtWidgets.QLabel("", self) + + # Buttons + buttons_widget = QtWidgets.QWidget(self) + + remember_checkbox = QtWidgets.QCheckBox("Remember", buttons_widget) + remember_checkbox.setVisible(allow_remember) + remember_checkbox.setStyleSheet(( + "spacing: 0.5em;" + )) + + ok_btn = QtWidgets.QPushButton("Ok", buttons_widget) + cancel_btn = QtWidgets.QPushButton("Cancel", buttons_widget) + + buttons_layout = QtWidgets.QHBoxLayout(buttons_widget) + buttons_layout.setContentsMargins(0, 0, 0, 0) + buttons_layout.addWidget(remember_checkbox) + buttons_layout.addStretch(1) + buttons_layout.addWidget(ok_btn) + buttons_layout.addWidget(cancel_btn) + + # Main layout + layout = QtWidgets.QVBoxLayout(self) + layout.addSpacing(10) + layout.addWidget(password_widget, 0) + layout.addWidget(message_label, 0) + layout.addStretch(1) + layout.addWidget(buttons_widget, 0) + + ok_btn.clicked.connect(self._on_ok_click) + cancel_btn.clicked.connect(self._on_cancel_click) + show_password_btn.change_state.connect(self._on_show_password) + + self.password_input = password_input + self.remember_checkbox = remember_checkbox + self.message_label = message_label + + def remember_password(self): + if not self._allow_remember: + return False + return self.remember_checkbox.isChecked() + + def result(self): + if self._final_result is None: + return False + return self._final_result == self._expected_result + + def keyPressEvent(self, event): + if event.key() in (QtCore.Qt.Key_Return, QtCore.Qt.Key_Enter): + self._on_ok_click() + return event.accept() + super(PasswordDialog, self).keyPressEvent(event) + + def closeEvent(self, event): + super(PasswordDialog, self).closeEvent(event) + self.finished.emit(self.result()) + + def _on_ok_click(self): + input_value = self.password_input.text() + if input_value != self._expected_result: + self.message_label.setText("Invalid password. Try it again...") + self.password_input.setFocus() + return + + if self.remember_password(): + local_settings = get_local_settings() + if "general" not in local_settings: + local_settings["general"] = {} + + local_settings["general"]["is_admin"] = True + + save_local_settings(local_settings) + + self._final_result = input_value + self.close() + + def _on_show_password(self, show_password): + if show_password: + echo_mode = QtWidgets.QLineEdit.Normal + else: + echo_mode = QtWidgets.QLineEdit.Password + self.password_input.setEchoMode(echo_mode) + + def _on_cancel_click(self): + self.close() diff --git a/openpype/tools/tray/pype_info_widget.py b/openpype/tools/tray/pype_info_widget.py index a70a360378..bbb92f175f 100644 --- a/openpype/tools/tray/pype_info_widget.py +++ b/openpype/tools/tray/pype_info_widget.py @@ -111,6 +111,13 @@ class EnvironmentsView(QtWidgets.QTreeView): else: return super(EnvironmentsView, self).keyPressEvent(event) + def wheelEvent(self, event): + if not self.hasFocus(): + event.ignore() + return + return super(EnvironmentsView, self).wheelEvent(event) + + class ClickableWidget(QtWidgets.QWidget): clicked = QtCore.Signal() @@ -195,8 +202,6 @@ class CollapsibleWidget(QtWidgets.QWidget): class PypeInfoWidget(QtWidgets.QWidget): - not_applicable = "N/A" - def __init__(self, parent=None): super(PypeInfoWidget, self).__init__(parent) @@ -206,17 +211,21 @@ class PypeInfoWidget(QtWidgets.QWidget): self.setWindowIcon(icon) self.setWindowTitle("OpenPype info") + scroll_area = QtWidgets.QScrollArea(self) + info_widget = PypeInfoSubWidget(scroll_area) + + scroll_area.setWidget(info_widget) + scroll_area.setWidgetResizable(True) + main_layout = QtWidgets.QVBoxLayout(self) - main_layout.setAlignment(QtCore.Qt.AlignTop) - main_layout.addWidget(self._create_openpype_info_widget(), 0) - main_layout.addWidget(self._create_separator(), 0) - main_layout.addWidget(self._create_workstation_widget(), 0) - main_layout.addWidget(self._create_separator(), 0) - main_layout.addWidget(self._create_local_settings_widget(), 0) - main_layout.addWidget(self._create_separator(), 0) - main_layout.addWidget(self._create_environ_widget(), 1) + main_layout.addWidget(scroll_area, 1) main_layout.addWidget(self._create_btns_section(), 0) + self.resize(740, 540) + + self.scroll_area = scroll_area + self.info_widget = info_widget + def _create_btns_section(self): btns_widget = QtWidgets.QWidget(self) btns_layout = QtWidgets.QHBoxLayout(btns_widget) @@ -268,6 +277,24 @@ class PypeInfoWidget(QtWidgets.QWidget): mime_data ) + +class PypeInfoSubWidget(QtWidgets.QWidget): + not_applicable = "N/A" + + def __init__(self, parent=None): + super(PypeInfoSubWidget, self).__init__(parent) + + main_layout = QtWidgets.QVBoxLayout(self) + main_layout.setContentsMargins(0, 0, 0, 0) + main_layout.setAlignment(QtCore.Qt.AlignTop) + main_layout.addWidget(self._create_openpype_info_widget(), 0) + main_layout.addWidget(self._create_separator(), 0) + main_layout.addWidget(self._create_workstation_widget(), 0) + main_layout.addWidget(self._create_separator(), 0) + main_layout.addWidget(self._create_local_settings_widget(), 0) + main_layout.addWidget(self._create_separator(), 0) + main_layout.addWidget(self._create_environ_widget(), 1) + def _create_separator(self): separator_widget = QtWidgets.QWidget(self) separator_widget.setStyleSheet("background: #222222;") @@ -322,6 +349,7 @@ class PypeInfoWidget(QtWidgets.QWidget): ) wokstation_info_widget.set_content_widget(info_widget) + wokstation_info_widget.toggle_content() return wokstation_info_widget @@ -342,6 +370,7 @@ class PypeInfoWidget(QtWidgets.QWidget): env_widget = CollapsibleWidget("Environments", self) env_view = EnvironmentsView(env_widget) + env_view.setMinimumHeight(300) env_widget.set_content_widget(env_view) diff --git a/openpype/vendor/python/python_2/dns/__init__.py b/openpype/vendor/python/python_2/dns/__init__.py new file mode 100644 index 0000000000..c1ce8e6061 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/__init__.py @@ -0,0 +1,56 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009, 2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""dnspython DNS toolkit""" + +__all__ = [ + 'dnssec', + 'e164', + 'edns', + 'entropy', + 'exception', + 'flags', + 'hash', + 'inet', + 'ipv4', + 'ipv6', + 'message', + 'name', + 'namedict', + 'node', + 'opcode', + 'query', + 'rcode', + 'rdata', + 'rdataclass', + 'rdataset', + 'rdatatype', + 'renderer', + 'resolver', + 'reversename', + 'rrset', + 'set', + 'tokenizer', + 'tsig', + 'tsigkeyring', + 'ttl', + 'rdtypes', + 'update', + 'version', + 'wiredata', + 'zone', +] diff --git a/openpype/vendor/python/python_2/dns/_compat.py b/openpype/vendor/python/python_2/dns/_compat.py new file mode 100644 index 0000000000..ca0931c2b5 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/_compat.py @@ -0,0 +1,59 @@ +import sys +import decimal +from decimal import Context + +PY3 = sys.version_info[0] == 3 +PY2 = sys.version_info[0] == 2 + + +if PY3: + long = int + xrange = range +else: + long = long # pylint: disable=long-builtin + xrange = xrange # pylint: disable=xrange-builtin + +# unicode / binary types +if PY3: + text_type = str + binary_type = bytes + string_types = (str,) + unichr = chr + def maybe_decode(x): + return x.decode() + def maybe_encode(x): + return x.encode() + def maybe_chr(x): + return x + def maybe_ord(x): + return x +else: + text_type = unicode # pylint: disable=unicode-builtin, undefined-variable + binary_type = str + string_types = ( + basestring, # pylint: disable=basestring-builtin, undefined-variable + ) + unichr = unichr # pylint: disable=unichr-builtin + def maybe_decode(x): + return x + def maybe_encode(x): + return x + def maybe_chr(x): + return chr(x) + def maybe_ord(x): + return ord(x) + + +def round_py2_compat(what): + """ + Python 2 and Python 3 use different rounding strategies in round(). This + function ensures that results are python2/3 compatible and backward + compatible with previous py2 releases + :param what: float + :return: rounded long + """ + d = Context( + prec=len(str(long(what))), # round to integer with max precision + rounding=decimal.ROUND_HALF_UP + ).create_decimal(str(what)) # str(): python 2.6 compat + return long(d) diff --git a/openpype/vendor/python/python_2/dns/dnssec.py b/openpype/vendor/python/python_2/dns/dnssec.py new file mode 100644 index 0000000000..35da6b5a81 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/dnssec.py @@ -0,0 +1,519 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Common DNSSEC-related functions and constants.""" + +from io import BytesIO +import struct +import time + +import dns.exception +import dns.name +import dns.node +import dns.rdataset +import dns.rdata +import dns.rdatatype +import dns.rdataclass +from ._compat import string_types + + +class UnsupportedAlgorithm(dns.exception.DNSException): + """The DNSSEC algorithm is not supported.""" + + +class ValidationFailure(dns.exception.DNSException): + """The DNSSEC signature is invalid.""" + + +#: RSAMD5 +RSAMD5 = 1 +#: DH +DH = 2 +#: DSA +DSA = 3 +#: ECC +ECC = 4 +#: RSASHA1 +RSASHA1 = 5 +#: DSANSEC3SHA1 +DSANSEC3SHA1 = 6 +#: RSASHA1NSEC3SHA1 +RSASHA1NSEC3SHA1 = 7 +#: RSASHA256 +RSASHA256 = 8 +#: RSASHA512 +RSASHA512 = 10 +#: ECDSAP256SHA256 +ECDSAP256SHA256 = 13 +#: ECDSAP384SHA384 +ECDSAP384SHA384 = 14 +#: INDIRECT +INDIRECT = 252 +#: PRIVATEDNS +PRIVATEDNS = 253 +#: PRIVATEOID +PRIVATEOID = 254 + +_algorithm_by_text = { + 'RSAMD5': RSAMD5, + 'DH': DH, + 'DSA': DSA, + 'ECC': ECC, + 'RSASHA1': RSASHA1, + 'DSANSEC3SHA1': DSANSEC3SHA1, + 'RSASHA1NSEC3SHA1': RSASHA1NSEC3SHA1, + 'RSASHA256': RSASHA256, + 'RSASHA512': RSASHA512, + 'INDIRECT': INDIRECT, + 'ECDSAP256SHA256': ECDSAP256SHA256, + 'ECDSAP384SHA384': ECDSAP384SHA384, + 'PRIVATEDNS': PRIVATEDNS, + 'PRIVATEOID': PRIVATEOID, +} + +# We construct the inverse mapping programmatically to ensure that we +# cannot make any mistakes (e.g. omissions, cut-and-paste errors) that +# would cause the mapping not to be true inverse. + +_algorithm_by_value = {y: x for x, y in _algorithm_by_text.items()} + + +def algorithm_from_text(text): + """Convert text into a DNSSEC algorithm value. + + Returns an ``int``. + """ + + value = _algorithm_by_text.get(text.upper()) + if value is None: + value = int(text) + return value + + +def algorithm_to_text(value): + """Convert a DNSSEC algorithm value to text + + Returns a ``str``. + """ + + text = _algorithm_by_value.get(value) + if text is None: + text = str(value) + return text + + +def _to_rdata(record, origin): + s = BytesIO() + record.to_wire(s, origin=origin) + return s.getvalue() + + +def key_id(key, origin=None): + """Return the key id (a 16-bit number) for the specified key. + + Note the *origin* parameter of this function is historical and + is not needed. + + Returns an ``int`` between 0 and 65535. + """ + + rdata = _to_rdata(key, origin) + rdata = bytearray(rdata) + if key.algorithm == RSAMD5: + return (rdata[-3] << 8) + rdata[-2] + else: + total = 0 + for i in range(len(rdata) // 2): + total += (rdata[2 * i] << 8) + \ + rdata[2 * i + 1] + if len(rdata) % 2 != 0: + total += rdata[len(rdata) - 1] << 8 + total += ((total >> 16) & 0xffff) + return total & 0xffff + + +def make_ds(name, key, algorithm, origin=None): + """Create a DS record for a DNSSEC key. + + *name* is the owner name of the DS record. + + *key* is a ``dns.rdtypes.ANY.DNSKEY``. + + *algorithm* is a string describing which hash algorithm to use. The + currently supported hashes are "SHA1" and "SHA256". Case does not + matter for these strings. + + *origin* is a ``dns.name.Name`` and will be used as the origin + if *key* is a relative name. + + Returns a ``dns.rdtypes.ANY.DS``. + """ + + if algorithm.upper() == 'SHA1': + dsalg = 1 + hash = SHA1.new() + elif algorithm.upper() == 'SHA256': + dsalg = 2 + hash = SHA256.new() + else: + raise UnsupportedAlgorithm('unsupported algorithm "%s"' % algorithm) + + if isinstance(name, string_types): + name = dns.name.from_text(name, origin) + hash.update(name.canonicalize().to_wire()) + hash.update(_to_rdata(key, origin)) + digest = hash.digest() + + dsrdata = struct.pack("!HBB", key_id(key), key.algorithm, dsalg) + digest + return dns.rdata.from_wire(dns.rdataclass.IN, dns.rdatatype.DS, dsrdata, 0, + len(dsrdata)) + + +def _find_candidate_keys(keys, rrsig): + candidate_keys = [] + value = keys.get(rrsig.signer) + if value is None: + return None + if isinstance(value, dns.node.Node): + try: + rdataset = value.find_rdataset(dns.rdataclass.IN, + dns.rdatatype.DNSKEY) + except KeyError: + return None + else: + rdataset = value + for rdata in rdataset: + if rdata.algorithm == rrsig.algorithm and \ + key_id(rdata) == rrsig.key_tag: + candidate_keys.append(rdata) + return candidate_keys + + +def _is_rsa(algorithm): + return algorithm in (RSAMD5, RSASHA1, + RSASHA1NSEC3SHA1, RSASHA256, + RSASHA512) + + +def _is_dsa(algorithm): + return algorithm in (DSA, DSANSEC3SHA1) + + +def _is_ecdsa(algorithm): + return _have_ecdsa and (algorithm in (ECDSAP256SHA256, ECDSAP384SHA384)) + + +def _is_md5(algorithm): + return algorithm == RSAMD5 + + +def _is_sha1(algorithm): + return algorithm in (DSA, RSASHA1, + DSANSEC3SHA1, RSASHA1NSEC3SHA1) + + +def _is_sha256(algorithm): + return algorithm in (RSASHA256, ECDSAP256SHA256) + + +def _is_sha384(algorithm): + return algorithm == ECDSAP384SHA384 + + +def _is_sha512(algorithm): + return algorithm == RSASHA512 + + +def _make_hash(algorithm): + if _is_md5(algorithm): + return MD5.new() + if _is_sha1(algorithm): + return SHA1.new() + if _is_sha256(algorithm): + return SHA256.new() + if _is_sha384(algorithm): + return SHA384.new() + if _is_sha512(algorithm): + return SHA512.new() + raise ValidationFailure('unknown hash for algorithm %u' % algorithm) + + +def _make_algorithm_id(algorithm): + if _is_md5(algorithm): + oid = [0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x02, 0x05] + elif _is_sha1(algorithm): + oid = [0x2b, 0x0e, 0x03, 0x02, 0x1a] + elif _is_sha256(algorithm): + oid = [0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x01] + elif _is_sha512(algorithm): + oid = [0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x03] + else: + raise ValidationFailure('unknown algorithm %u' % algorithm) + olen = len(oid) + dlen = _make_hash(algorithm).digest_size + idbytes = [0x30] + [8 + olen + dlen] + \ + [0x30, olen + 4] + [0x06, olen] + oid + \ + [0x05, 0x00] + [0x04, dlen] + return struct.pack('!%dB' % len(idbytes), *idbytes) + + +def _validate_rrsig(rrset, rrsig, keys, origin=None, now=None): + """Validate an RRset against a single signature rdata + + The owner name of *rrsig* is assumed to be the same as the owner name + of *rrset*. + + *rrset* is the RRset to validate. It can be a ``dns.rrset.RRset`` or + a ``(dns.name.Name, dns.rdataset.Rdataset)`` tuple. + + *rrsig* is a ``dns.rdata.Rdata``, the signature to validate. + + *keys* is the key dictionary, used to find the DNSKEY associated with + a given name. The dictionary is keyed by a ``dns.name.Name``, and has + ``dns.node.Node`` or ``dns.rdataset.Rdataset`` values. + + *origin* is a ``dns.name.Name``, the origin to use for relative names. + + *now* is an ``int``, the time to use when validating the signatures, + in seconds since the UNIX epoch. The default is the current time. + """ + + if isinstance(origin, string_types): + origin = dns.name.from_text(origin, dns.name.root) + + candidate_keys = _find_candidate_keys(keys, rrsig) + if candidate_keys is None: + raise ValidationFailure('unknown key') + + for candidate_key in candidate_keys: + # For convenience, allow the rrset to be specified as a (name, + # rdataset) tuple as well as a proper rrset + if isinstance(rrset, tuple): + rrname = rrset[0] + rdataset = rrset[1] + else: + rrname = rrset.name + rdataset = rrset + + if now is None: + now = time.time() + if rrsig.expiration < now: + raise ValidationFailure('expired') + if rrsig.inception > now: + raise ValidationFailure('not yet valid') + + hash = _make_hash(rrsig.algorithm) + + if _is_rsa(rrsig.algorithm): + keyptr = candidate_key.key + (bytes_,) = struct.unpack('!B', keyptr[0:1]) + keyptr = keyptr[1:] + if bytes_ == 0: + (bytes_,) = struct.unpack('!H', keyptr[0:2]) + keyptr = keyptr[2:] + rsa_e = keyptr[0:bytes_] + rsa_n = keyptr[bytes_:] + try: + pubkey = CryptoRSA.construct( + (number.bytes_to_long(rsa_n), + number.bytes_to_long(rsa_e))) + except ValueError: + raise ValidationFailure('invalid public key') + sig = rrsig.signature + elif _is_dsa(rrsig.algorithm): + keyptr = candidate_key.key + (t,) = struct.unpack('!B', keyptr[0:1]) + keyptr = keyptr[1:] + octets = 64 + t * 8 + dsa_q = keyptr[0:20] + keyptr = keyptr[20:] + dsa_p = keyptr[0:octets] + keyptr = keyptr[octets:] + dsa_g = keyptr[0:octets] + keyptr = keyptr[octets:] + dsa_y = keyptr[0:octets] + pubkey = CryptoDSA.construct( + (number.bytes_to_long(dsa_y), + number.bytes_to_long(dsa_g), + number.bytes_to_long(dsa_p), + number.bytes_to_long(dsa_q))) + sig = rrsig.signature[1:] + elif _is_ecdsa(rrsig.algorithm): + # use ecdsa for NIST-384p -- not currently supported by pycryptodome + + keyptr = candidate_key.key + + if rrsig.algorithm == ECDSAP256SHA256: + curve = ecdsa.curves.NIST256p + key_len = 32 + elif rrsig.algorithm == ECDSAP384SHA384: + curve = ecdsa.curves.NIST384p + key_len = 48 + + x = number.bytes_to_long(keyptr[0:key_len]) + y = number.bytes_to_long(keyptr[key_len:key_len * 2]) + if not ecdsa.ecdsa.point_is_valid(curve.generator, x, y): + raise ValidationFailure('invalid ECDSA key') + point = ecdsa.ellipticcurve.Point(curve.curve, x, y, curve.order) + verifying_key = ecdsa.keys.VerifyingKey.from_public_point(point, + curve) + pubkey = ECKeyWrapper(verifying_key, key_len) + r = rrsig.signature[:key_len] + s = rrsig.signature[key_len:] + sig = ecdsa.ecdsa.Signature(number.bytes_to_long(r), + number.bytes_to_long(s)) + + else: + raise ValidationFailure('unknown algorithm %u' % rrsig.algorithm) + + hash.update(_to_rdata(rrsig, origin)[:18]) + hash.update(rrsig.signer.to_digestable(origin)) + + if rrsig.labels < len(rrname) - 1: + suffix = rrname.split(rrsig.labels + 1)[1] + rrname = dns.name.from_text('*', suffix) + rrnamebuf = rrname.to_digestable(origin) + rrfixed = struct.pack('!HHI', rdataset.rdtype, rdataset.rdclass, + rrsig.original_ttl) + rrlist = sorted(rdataset) + for rr in rrlist: + hash.update(rrnamebuf) + hash.update(rrfixed) + rrdata = rr.to_digestable(origin) + rrlen = struct.pack('!H', len(rrdata)) + hash.update(rrlen) + hash.update(rrdata) + + try: + if _is_rsa(rrsig.algorithm): + verifier = pkcs1_15.new(pubkey) + # will raise ValueError if verify fails: + verifier.verify(hash, sig) + elif _is_dsa(rrsig.algorithm): + verifier = DSS.new(pubkey, 'fips-186-3') + verifier.verify(hash, sig) + elif _is_ecdsa(rrsig.algorithm): + digest = hash.digest() + if not pubkey.verify(digest, sig): + raise ValueError + else: + # Raise here for code clarity; this won't actually ever happen + # since if the algorithm is really unknown we'd already have + # raised an exception above + raise ValidationFailure('unknown algorithm %u' % rrsig.algorithm) + # If we got here, we successfully verified so we can return without error + return + except ValueError: + # this happens on an individual validation failure + continue + # nothing verified -- raise failure: + raise ValidationFailure('verify failure') + + +def _validate(rrset, rrsigset, keys, origin=None, now=None): + """Validate an RRset. + + *rrset* is the RRset to validate. It can be a ``dns.rrset.RRset`` or + a ``(dns.name.Name, dns.rdataset.Rdataset)`` tuple. + + *rrsigset* is the signature RRset to be validated. It can be a + ``dns.rrset.RRset`` or a ``(dns.name.Name, dns.rdataset.Rdataset)`` tuple. + + *keys* is the key dictionary, used to find the DNSKEY associated with + a given name. The dictionary is keyed by a ``dns.name.Name``, and has + ``dns.node.Node`` or ``dns.rdataset.Rdataset`` values. + + *origin* is a ``dns.name.Name``, the origin to use for relative names. + + *now* is an ``int``, the time to use when validating the signatures, + in seconds since the UNIX epoch. The default is the current time. + """ + + if isinstance(origin, string_types): + origin = dns.name.from_text(origin, dns.name.root) + + if isinstance(rrset, tuple): + rrname = rrset[0] + else: + rrname = rrset.name + + if isinstance(rrsigset, tuple): + rrsigname = rrsigset[0] + rrsigrdataset = rrsigset[1] + else: + rrsigname = rrsigset.name + rrsigrdataset = rrsigset + + rrname = rrname.choose_relativity(origin) + rrsigname = rrsigname.choose_relativity(origin) + if rrname != rrsigname: + raise ValidationFailure("owner names do not match") + + for rrsig in rrsigrdataset: + try: + _validate_rrsig(rrset, rrsig, keys, origin, now) + return + except ValidationFailure: + pass + raise ValidationFailure("no RRSIGs validated") + + +def _need_pycrypto(*args, **kwargs): + raise NotImplementedError("DNSSEC validation requires pycryptodome/pycryptodomex") + + +try: + try: + # test we're using pycryptodome, not pycrypto (which misses SHA1 for example) + from Crypto.Hash import MD5, SHA1, SHA256, SHA384, SHA512 + from Crypto.PublicKey import RSA as CryptoRSA, DSA as CryptoDSA + from Crypto.Signature import pkcs1_15, DSS + from Crypto.Util import number + except ImportError: + from Cryptodome.Hash import MD5, SHA1, SHA256, SHA384, SHA512 + from Cryptodome.PublicKey import RSA as CryptoRSA, DSA as CryptoDSA + from Cryptodome.Signature import pkcs1_15, DSS + from Cryptodome.Util import number +except ImportError: + validate = _need_pycrypto + validate_rrsig = _need_pycrypto + _have_pycrypto = False + _have_ecdsa = False +else: + validate = _validate + validate_rrsig = _validate_rrsig + _have_pycrypto = True + + try: + import ecdsa + import ecdsa.ecdsa + import ecdsa.ellipticcurve + import ecdsa.keys + except ImportError: + _have_ecdsa = False + else: + _have_ecdsa = True + + class ECKeyWrapper(object): + + def __init__(self, key, key_len): + self.key = key + self.key_len = key_len + + def verify(self, digest, sig): + diglong = number.bytes_to_long(digest) + return self.key.pubkey.verifies(diglong, sig) diff --git a/openpype/vendor/python/python_2/dns/e164.py b/openpype/vendor/python/python_2/dns/e164.py new file mode 100644 index 0000000000..758c47a784 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/e164.py @@ -0,0 +1,105 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2006-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS E.164 helpers.""" + +import dns.exception +import dns.name +import dns.resolver +from ._compat import string_types, maybe_decode + +#: The public E.164 domain. +public_enum_domain = dns.name.from_text('e164.arpa.') + + +def from_e164(text, origin=public_enum_domain): + """Convert an E.164 number in textual form into a Name object whose + value is the ENUM domain name for that number. + + Non-digits in the text are ignored, i.e. "16505551212", + "+1.650.555.1212" and "1 (650) 555-1212" are all the same. + + *text*, a ``text``, is an E.164 number in textual form. + + *origin*, a ``dns.name.Name``, the domain in which the number + should be constructed. The default is ``e164.arpa.``. + + Returns a ``dns.name.Name``. + """ + + parts = [d for d in text if d.isdigit()] + parts.reverse() + return dns.name.from_text('.'.join(parts), origin=origin) + + +def to_e164(name, origin=public_enum_domain, want_plus_prefix=True): + """Convert an ENUM domain name into an E.164 number. + + Note that dnspython does not have any information about preferred + number formats within national numbering plans, so all numbers are + emitted as a simple string of digits, prefixed by a '+' (unless + *want_plus_prefix* is ``False``). + + *name* is a ``dns.name.Name``, the ENUM domain name. + + *origin* is a ``dns.name.Name``, a domain containing the ENUM + domain name. The name is relativized to this domain before being + converted to text. If ``None``, no relativization is done. + + *want_plus_prefix* is a ``bool``. If True, add a '+' to the beginning of + the returned number. + + Returns a ``text``. + + """ + if origin is not None: + name = name.relativize(origin) + dlabels = [d for d in name.labels if d.isdigit() and len(d) == 1] + if len(dlabels) != len(name.labels): + raise dns.exception.SyntaxError('non-digit labels in ENUM domain name') + dlabels.reverse() + text = b''.join(dlabels) + if want_plus_prefix: + text = b'+' + text + return maybe_decode(text) + + +def query(number, domains, resolver=None): + """Look for NAPTR RRs for the specified number in the specified domains. + + e.g. lookup('16505551212', ['e164.dnspython.org.', 'e164.arpa.']) + + *number*, a ``text`` is the number to look for. + + *domains* is an iterable containing ``dns.name.Name`` values. + + *resolver*, a ``dns.resolver.Resolver``, is the resolver to use. If + ``None``, the default resolver is used. + """ + + if resolver is None: + resolver = dns.resolver.get_default_resolver() + e_nx = dns.resolver.NXDOMAIN() + for domain in domains: + if isinstance(domain, string_types): + domain = dns.name.from_text(domain) + qname = dns.e164.from_e164(number, domain) + try: + return resolver.query(qname, 'NAPTR') + except dns.resolver.NXDOMAIN as e: + e_nx += e + raise e_nx diff --git a/openpype/vendor/python/python_2/dns/edns.py b/openpype/vendor/python/python_2/dns/edns.py new file mode 100644 index 0000000000..5660f7bb7a --- /dev/null +++ b/openpype/vendor/python/python_2/dns/edns.py @@ -0,0 +1,269 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2009-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""EDNS Options""" + +from __future__ import absolute_import + +import math +import struct + +import dns.inet + +#: NSID +NSID = 3 +#: DAU +DAU = 5 +#: DHU +DHU = 6 +#: N3U +N3U = 7 +#: ECS (client-subnet) +ECS = 8 +#: EXPIRE +EXPIRE = 9 +#: COOKIE +COOKIE = 10 +#: KEEPALIVE +KEEPALIVE = 11 +#: PADDING +PADDING = 12 +#: CHAIN +CHAIN = 13 + +class Option(object): + + """Base class for all EDNS option types.""" + + def __init__(self, otype): + """Initialize an option. + + *otype*, an ``int``, is the option type. + """ + self.otype = otype + + def to_wire(self, file): + """Convert an option to wire format. + """ + raise NotImplementedError + + @classmethod + def from_wire(cls, otype, wire, current, olen): + """Build an EDNS option object from wire format. + + *otype*, an ``int``, is the option type. + + *wire*, a ``binary``, is the wire-format message. + + *current*, an ``int``, is the offset in *wire* of the beginning + of the rdata. + + *olen*, an ``int``, is the length of the wire-format option data + + Returns a ``dns.edns.Option``. + """ + + raise NotImplementedError + + def _cmp(self, other): + """Compare an EDNS option with another option of the same type. + + Returns < 0 if < *other*, 0 if == *other*, and > 0 if > *other*. + """ + raise NotImplementedError + + def __eq__(self, other): + if not isinstance(other, Option): + return False + if self.otype != other.otype: + return False + return self._cmp(other) == 0 + + def __ne__(self, other): + if not isinstance(other, Option): + return False + if self.otype != other.otype: + return False + return self._cmp(other) != 0 + + def __lt__(self, other): + if not isinstance(other, Option) or \ + self.otype != other.otype: + return NotImplemented + return self._cmp(other) < 0 + + def __le__(self, other): + if not isinstance(other, Option) or \ + self.otype != other.otype: + return NotImplemented + return self._cmp(other) <= 0 + + def __ge__(self, other): + if not isinstance(other, Option) or \ + self.otype != other.otype: + return NotImplemented + return self._cmp(other) >= 0 + + def __gt__(self, other): + if not isinstance(other, Option) or \ + self.otype != other.otype: + return NotImplemented + return self._cmp(other) > 0 + + +class GenericOption(Option): + + """Generic Option Class + + This class is used for EDNS option types for which we have no better + implementation. + """ + + def __init__(self, otype, data): + super(GenericOption, self).__init__(otype) + self.data = data + + def to_wire(self, file): + file.write(self.data) + + def to_text(self): + return "Generic %d" % self.otype + + @classmethod + def from_wire(cls, otype, wire, current, olen): + return cls(otype, wire[current: current + olen]) + + def _cmp(self, other): + if self.data == other.data: + return 0 + if self.data > other.data: + return 1 + return -1 + + +class ECSOption(Option): + """EDNS Client Subnet (ECS, RFC7871)""" + + def __init__(self, address, srclen=None, scopelen=0): + """*address*, a ``text``, is the client address information. + + *srclen*, an ``int``, the source prefix length, which is the + leftmost number of bits of the address to be used for the + lookup. The default is 24 for IPv4 and 56 for IPv6. + + *scopelen*, an ``int``, the scope prefix length. This value + must be 0 in queries, and should be set in responses. + """ + + super(ECSOption, self).__init__(ECS) + af = dns.inet.af_for_address(address) + + if af == dns.inet.AF_INET6: + self.family = 2 + if srclen is None: + srclen = 56 + elif af == dns.inet.AF_INET: + self.family = 1 + if srclen is None: + srclen = 24 + else: + raise ValueError('Bad ip family') + + self.address = address + self.srclen = srclen + self.scopelen = scopelen + + addrdata = dns.inet.inet_pton(af, address) + nbytes = int(math.ceil(srclen/8.0)) + + # Truncate to srclen and pad to the end of the last octet needed + # See RFC section 6 + self.addrdata = addrdata[:nbytes] + nbits = srclen % 8 + if nbits != 0: + last = struct.pack('B', ord(self.addrdata[-1:]) & (0xff << nbits)) + self.addrdata = self.addrdata[:-1] + last + + def to_text(self): + return "ECS {}/{} scope/{}".format(self.address, self.srclen, + self.scopelen) + + def to_wire(self, file): + file.write(struct.pack('!H', self.family)) + file.write(struct.pack('!BB', self.srclen, self.scopelen)) + file.write(self.addrdata) + + @classmethod + def from_wire(cls, otype, wire, cur, olen): + family, src, scope = struct.unpack('!HBB', wire[cur:cur+4]) + cur += 4 + + addrlen = int(math.ceil(src/8.0)) + + if family == 1: + af = dns.inet.AF_INET + pad = 4 - addrlen + elif family == 2: + af = dns.inet.AF_INET6 + pad = 16 - addrlen + else: + raise ValueError('unsupported family') + + addr = dns.inet.inet_ntop(af, wire[cur:cur+addrlen] + b'\x00' * pad) + return cls(addr, src, scope) + + def _cmp(self, other): + if self.addrdata == other.addrdata: + return 0 + if self.addrdata > other.addrdata: + return 1 + return -1 + +_type_to_class = { + ECS: ECSOption +} + +def get_option_class(otype): + """Return the class for the specified option type. + + The GenericOption class is used if a more specific class is not + known. + """ + + cls = _type_to_class.get(otype) + if cls is None: + cls = GenericOption + return cls + + +def option_from_wire(otype, wire, current, olen): + """Build an EDNS option object from wire format. + + *otype*, an ``int``, is the option type. + + *wire*, a ``binary``, is the wire-format message. + + *current*, an ``int``, is the offset in *wire* of the beginning + of the rdata. + + *olen*, an ``int``, is the length of the wire-format option data + + Returns an instance of a subclass of ``dns.edns.Option``. + """ + + cls = get_option_class(otype) + return cls.from_wire(otype, wire, current, olen) diff --git a/openpype/vendor/python/python_2/dns/entropy.py b/openpype/vendor/python/python_2/dns/entropy.py new file mode 100644 index 0000000000..00c6a4b389 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/entropy.py @@ -0,0 +1,148 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2009-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import os +import random +import time +from ._compat import long, binary_type +try: + import threading as _threading +except ImportError: + import dummy_threading as _threading + + +class EntropyPool(object): + + # This is an entropy pool for Python implementations that do not + # have a working SystemRandom. I'm not sure there are any, but + # leaving this code doesn't hurt anything as the library code + # is used if present. + + def __init__(self, seed=None): + self.pool_index = 0 + self.digest = None + self.next_byte = 0 + self.lock = _threading.Lock() + try: + import hashlib + self.hash = hashlib.sha1() + self.hash_len = 20 + except ImportError: + try: + import sha + self.hash = sha.new() + self.hash_len = 20 + except ImportError: + import md5 # pylint: disable=import-error + self.hash = md5.new() + self.hash_len = 16 + self.pool = bytearray(b'\0' * self.hash_len) + if seed is not None: + self.stir(bytearray(seed)) + self.seeded = True + self.seed_pid = os.getpid() + else: + self.seeded = False + self.seed_pid = 0 + + def stir(self, entropy, already_locked=False): + if not already_locked: + self.lock.acquire() + try: + for c in entropy: + if self.pool_index == self.hash_len: + self.pool_index = 0 + b = c & 0xff + self.pool[self.pool_index] ^= b + self.pool_index += 1 + finally: + if not already_locked: + self.lock.release() + + def _maybe_seed(self): + if not self.seeded or self.seed_pid != os.getpid(): + try: + seed = os.urandom(16) + except Exception: + try: + r = open('/dev/urandom', 'rb', 0) + try: + seed = r.read(16) + finally: + r.close() + except Exception: + seed = str(time.time()) + self.seeded = True + self.seed_pid = os.getpid() + self.digest = None + seed = bytearray(seed) + self.stir(seed, True) + + def random_8(self): + self.lock.acquire() + try: + self._maybe_seed() + if self.digest is None or self.next_byte == self.hash_len: + self.hash.update(binary_type(self.pool)) + self.digest = bytearray(self.hash.digest()) + self.stir(self.digest, True) + self.next_byte = 0 + value = self.digest[self.next_byte] + self.next_byte += 1 + finally: + self.lock.release() + return value + + def random_16(self): + return self.random_8() * 256 + self.random_8() + + def random_32(self): + return self.random_16() * 65536 + self.random_16() + + def random_between(self, first, last): + size = last - first + 1 + if size > long(4294967296): + raise ValueError('too big') + if size > 65536: + rand = self.random_32 + max = long(4294967295) + elif size > 256: + rand = self.random_16 + max = 65535 + else: + rand = self.random_8 + max = 255 + return first + size * rand() // (max + 1) + +pool = EntropyPool() + +try: + system_random = random.SystemRandom() +except Exception: + system_random = None + +def random_16(): + if system_random is not None: + return system_random.randrange(0, 65536) + else: + return pool.random_16() + +def between(first, last): + if system_random is not None: + return system_random.randrange(first, last + 1) + else: + return pool.random_between(first, last) diff --git a/openpype/vendor/python/python_2/dns/exception.py b/openpype/vendor/python/python_2/dns/exception.py new file mode 100644 index 0000000000..71ff04f148 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/exception.py @@ -0,0 +1,128 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Common DNS Exceptions. + +Dnspython modules may also define their own exceptions, which will +always be subclasses of ``DNSException``. +""" + +class DNSException(Exception): + """Abstract base class shared by all dnspython exceptions. + + It supports two basic modes of operation: + + a) Old/compatible mode is used if ``__init__`` was called with + empty *kwargs*. In compatible mode all *args* are passed + to the standard Python Exception class as before and all *args* are + printed by the standard ``__str__`` implementation. Class variable + ``msg`` (or doc string if ``msg`` is ``None``) is returned from ``str()`` + if *args* is empty. + + b) New/parametrized mode is used if ``__init__`` was called with + non-empty *kwargs*. + In the new mode *args* must be empty and all kwargs must match + those set in class variable ``supp_kwargs``. All kwargs are stored inside + ``self.kwargs`` and used in a new ``__str__`` implementation to construct + a formatted message based on the ``fmt`` class variable, a ``string``. + + In the simplest case it is enough to override the ``supp_kwargs`` + and ``fmt`` class variables to get nice parametrized messages. + """ + + msg = None # non-parametrized message + supp_kwargs = set() # accepted parameters for _fmt_kwargs (sanity check) + fmt = None # message parametrized with results from _fmt_kwargs + + def __init__(self, *args, **kwargs): + self._check_params(*args, **kwargs) + if kwargs: + self.kwargs = self._check_kwargs(**kwargs) + self.msg = str(self) + else: + self.kwargs = dict() # defined but empty for old mode exceptions + if self.msg is None: + # doc string is better implicit message than empty string + self.msg = self.__doc__ + if args: + super(DNSException, self).__init__(*args) + else: + super(DNSException, self).__init__(self.msg) + + def _check_params(self, *args, **kwargs): + """Old exceptions supported only args and not kwargs. + + For sanity we do not allow to mix old and new behavior.""" + if args or kwargs: + assert bool(args) != bool(kwargs), \ + 'keyword arguments are mutually exclusive with positional args' + + def _check_kwargs(self, **kwargs): + if kwargs: + assert set(kwargs.keys()) == self.supp_kwargs, \ + 'following set of keyword args is required: %s' % ( + self.supp_kwargs) + return kwargs + + def _fmt_kwargs(self, **kwargs): + """Format kwargs before printing them. + + Resulting dictionary has to have keys necessary for str.format call + on fmt class variable. + """ + fmtargs = {} + for kw, data in kwargs.items(): + if isinstance(data, (list, set)): + # convert list of to list of str() + fmtargs[kw] = list(map(str, data)) + if len(fmtargs[kw]) == 1: + # remove list brackets [] from single-item lists + fmtargs[kw] = fmtargs[kw].pop() + else: + fmtargs[kw] = data + return fmtargs + + def __str__(self): + if self.kwargs and self.fmt: + # provide custom message constructed from keyword arguments + fmtargs = self._fmt_kwargs(**self.kwargs) + return self.fmt.format(**fmtargs) + else: + # print *args directly in the same way as old DNSException + return super(DNSException, self).__str__() + + +class FormError(DNSException): + """DNS message is malformed.""" + + +class SyntaxError(DNSException): + """Text input is malformed.""" + + +class UnexpectedEnd(SyntaxError): + """Text input ended unexpectedly.""" + + +class TooBig(DNSException): + """The DNS message is too big.""" + + +class Timeout(DNSException): + """The DNS operation timed out.""" + supp_kwargs = {'timeout'} + fmt = "The DNS operation timed out after {timeout} seconds" diff --git a/openpype/vendor/python/python_2/dns/flags.py b/openpype/vendor/python/python_2/dns/flags.py new file mode 100644 index 0000000000..0119dec71f --- /dev/null +++ b/openpype/vendor/python/python_2/dns/flags.py @@ -0,0 +1,130 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Message Flags.""" + +# Standard DNS flags + +#: Query Response +QR = 0x8000 +#: Authoritative Answer +AA = 0x0400 +#: Truncated Response +TC = 0x0200 +#: Recursion Desired +RD = 0x0100 +#: Recursion Available +RA = 0x0080 +#: Authentic Data +AD = 0x0020 +#: Checking Disabled +CD = 0x0010 + +# EDNS flags + +#: DNSSEC answer OK +DO = 0x8000 + +_by_text = { + 'QR': QR, + 'AA': AA, + 'TC': TC, + 'RD': RD, + 'RA': RA, + 'AD': AD, + 'CD': CD +} + +_edns_by_text = { + 'DO': DO +} + + +# We construct the inverse mappings programmatically to ensure that we +# cannot make any mistakes (e.g. omissions, cut-and-paste errors) that +# would cause the mappings not to be true inverses. + +_by_value = {y: x for x, y in _by_text.items()} + +_edns_by_value = {y: x for x, y in _edns_by_text.items()} + + +def _order_flags(table): + order = list(table.items()) + order.sort() + order.reverse() + return order + +_flags_order = _order_flags(_by_value) + +_edns_flags_order = _order_flags(_edns_by_value) + + +def _from_text(text, table): + flags = 0 + tokens = text.split() + for t in tokens: + flags = flags | table[t.upper()] + return flags + + +def _to_text(flags, table, order): + text_flags = [] + for k, v in order: + if flags & k != 0: + text_flags.append(v) + return ' '.join(text_flags) + + +def from_text(text): + """Convert a space-separated list of flag text values into a flags + value. + + Returns an ``int`` + """ + + return _from_text(text, _by_text) + + +def to_text(flags): + """Convert a flags value into a space-separated list of flag text + values. + + Returns a ``text``. + """ + + return _to_text(flags, _by_value, _flags_order) + + +def edns_from_text(text): + """Convert a space-separated list of EDNS flag text values into a EDNS + flags value. + + Returns an ``int`` + """ + + return _from_text(text, _edns_by_text) + + +def edns_to_text(flags): + """Convert an EDNS flags value into a space-separated list of EDNS flag + text values. + + Returns a ``text``. + """ + + return _to_text(flags, _edns_by_value, _edns_flags_order) diff --git a/openpype/vendor/python/python_2/dns/grange.py b/openpype/vendor/python/python_2/dns/grange.py new file mode 100644 index 0000000000..ffe8be7c46 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/grange.py @@ -0,0 +1,69 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2012-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS GENERATE range conversion.""" + +import dns + +def from_text(text): + """Convert the text form of a range in a ``$GENERATE`` statement to an + integer. + + *text*, a ``str``, the textual range in ``$GENERATE`` form. + + Returns a tuple of three ``int`` values ``(start, stop, step)``. + """ + + # TODO, figure out the bounds on start, stop and step. + step = 1 + cur = '' + state = 0 + # state 0 1 2 3 4 + # x - y / z + + if text and text[0] == '-': + raise dns.exception.SyntaxError("Start cannot be a negative number") + + for c in text: + if c == '-' and state == 0: + start = int(cur) + cur = '' + state = 2 + elif c == '/': + stop = int(cur) + cur = '' + state = 4 + elif c.isdigit(): + cur += c + else: + raise dns.exception.SyntaxError("Could not parse %s" % (c)) + + if state in (1, 3): + raise dns.exception.SyntaxError() + + if state == 2: + stop = int(cur) + + if state == 4: + step = int(cur) + + assert step >= 1 + assert start >= 0 + assert start <= stop + # TODO, can start == stop? + + return (start, stop, step) diff --git a/openpype/vendor/python/python_2/dns/hash.py b/openpype/vendor/python/python_2/dns/hash.py new file mode 100644 index 0000000000..1713e62894 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/hash.py @@ -0,0 +1,37 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Hashing backwards compatibility wrapper""" + +import hashlib +import warnings + +warnings.warn( + "dns.hash module will be removed in future versions. Please use hashlib instead.", + DeprecationWarning) + +hashes = {} +hashes['MD5'] = hashlib.md5 +hashes['SHA1'] = hashlib.sha1 +hashes['SHA224'] = hashlib.sha224 +hashes['SHA256'] = hashlib.sha256 +hashes['SHA384'] = hashlib.sha384 +hashes['SHA512'] = hashlib.sha512 + + +def get(algorithm): + return hashes[algorithm.upper()] diff --git a/openpype/vendor/python/python_2/dns/inet.py b/openpype/vendor/python/python_2/dns/inet.py new file mode 100644 index 0000000000..c8d7c1b404 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/inet.py @@ -0,0 +1,124 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Generic Internet address helper functions.""" + +import socket + +import dns.ipv4 +import dns.ipv6 + +from ._compat import maybe_ord + +# We assume that AF_INET is always defined. + +AF_INET = socket.AF_INET + +# AF_INET6 might not be defined in the socket module, but we need it. +# We'll try to use the socket module's value, and if it doesn't work, +# we'll use our own value. + +try: + AF_INET6 = socket.AF_INET6 +except AttributeError: + AF_INET6 = 9999 + + +def inet_pton(family, text): + """Convert the textual form of a network address into its binary form. + + *family* is an ``int``, the address family. + + *text* is a ``text``, the textual address. + + Raises ``NotImplementedError`` if the address family specified is not + implemented. + + Returns a ``binary``. + """ + + if family == AF_INET: + return dns.ipv4.inet_aton(text) + elif family == AF_INET6: + return dns.ipv6.inet_aton(text) + else: + raise NotImplementedError + + +def inet_ntop(family, address): + """Convert the binary form of a network address into its textual form. + + *family* is an ``int``, the address family. + + *address* is a ``binary``, the network address in binary form. + + Raises ``NotImplementedError`` if the address family specified is not + implemented. + + Returns a ``text``. + """ + + if family == AF_INET: + return dns.ipv4.inet_ntoa(address) + elif family == AF_INET6: + return dns.ipv6.inet_ntoa(address) + else: + raise NotImplementedError + + +def af_for_address(text): + """Determine the address family of a textual-form network address. + + *text*, a ``text``, the textual address. + + Raises ``ValueError`` if the address family cannot be determined + from the input. + + Returns an ``int``. + """ + + try: + dns.ipv4.inet_aton(text) + return AF_INET + except Exception: + try: + dns.ipv6.inet_aton(text) + return AF_INET6 + except: + raise ValueError + + +def is_multicast(text): + """Is the textual-form network address a multicast address? + + *text*, a ``text``, the textual address. + + Raises ``ValueError`` if the address family cannot be determined + from the input. + + Returns a ``bool``. + """ + + try: + first = maybe_ord(dns.ipv4.inet_aton(text)[0]) + return first >= 224 and first <= 239 + except Exception: + try: + first = maybe_ord(dns.ipv6.inet_aton(text)[0]) + return first == 255 + except Exception: + raise ValueError diff --git a/openpype/vendor/python/python_2/dns/ipv4.py b/openpype/vendor/python/python_2/dns/ipv4.py new file mode 100644 index 0000000000..8fc4f7dcfd --- /dev/null +++ b/openpype/vendor/python/python_2/dns/ipv4.py @@ -0,0 +1,63 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""IPv4 helper functions.""" + +import struct + +import dns.exception +from ._compat import binary_type + +def inet_ntoa(address): + """Convert an IPv4 address in binary form to text form. + + *address*, a ``binary``, the IPv4 address in binary form. + + Returns a ``text``. + """ + + if len(address) != 4: + raise dns.exception.SyntaxError + if not isinstance(address, bytearray): + address = bytearray(address) + return ('%u.%u.%u.%u' % (address[0], address[1], + address[2], address[3])) + +def inet_aton(text): + """Convert an IPv4 address in text form to binary form. + + *text*, a ``text``, the IPv4 address in textual form. + + Returns a ``binary``. + """ + + if not isinstance(text, binary_type): + text = text.encode() + parts = text.split(b'.') + if len(parts) != 4: + raise dns.exception.SyntaxError + for part in parts: + if not part.isdigit(): + raise dns.exception.SyntaxError + if len(part) > 1 and part[0] == '0': + # No leading zeros + raise dns.exception.SyntaxError + try: + bytes = [int(part) for part in parts] + return struct.pack('BBBB', *bytes) + except: + raise dns.exception.SyntaxError diff --git a/openpype/vendor/python/python_2/dns/ipv6.py b/openpype/vendor/python/python_2/dns/ipv6.py new file mode 100644 index 0000000000..128e56c8f1 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/ipv6.py @@ -0,0 +1,181 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""IPv6 helper functions.""" + +import re +import binascii + +import dns.exception +import dns.ipv4 +from ._compat import xrange, binary_type, maybe_decode + +_leading_zero = re.compile(r'0+([0-9a-f]+)') + +def inet_ntoa(address): + """Convert an IPv6 address in binary form to text form. + + *address*, a ``binary``, the IPv6 address in binary form. + + Raises ``ValueError`` if the address isn't 16 bytes long. + Returns a ``text``. + """ + + if len(address) != 16: + raise ValueError("IPv6 addresses are 16 bytes long") + hex = binascii.hexlify(address) + chunks = [] + i = 0 + l = len(hex) + while i < l: + chunk = maybe_decode(hex[i : i + 4]) + # strip leading zeros. we do this with an re instead of + # with lstrip() because lstrip() didn't support chars until + # python 2.2.2 + m = _leading_zero.match(chunk) + if not m is None: + chunk = m.group(1) + chunks.append(chunk) + i += 4 + # + # Compress the longest subsequence of 0-value chunks to :: + # + best_start = 0 + best_len = 0 + start = -1 + last_was_zero = False + for i in xrange(8): + if chunks[i] != '0': + if last_was_zero: + end = i + current_len = end - start + if current_len > best_len: + best_start = start + best_len = current_len + last_was_zero = False + elif not last_was_zero: + start = i + last_was_zero = True + if last_was_zero: + end = 8 + current_len = end - start + if current_len > best_len: + best_start = start + best_len = current_len + if best_len > 1: + if best_start == 0 and \ + (best_len == 6 or + best_len == 5 and chunks[5] == 'ffff'): + # We have an embedded IPv4 address + if best_len == 6: + prefix = '::' + else: + prefix = '::ffff:' + hex = prefix + dns.ipv4.inet_ntoa(address[12:]) + else: + hex = ':'.join(chunks[:best_start]) + '::' + \ + ':'.join(chunks[best_start + best_len:]) + else: + hex = ':'.join(chunks) + return hex + +_v4_ending = re.compile(br'(.*):(\d+\.\d+\.\d+\.\d+)$') +_colon_colon_start = re.compile(br'::.*') +_colon_colon_end = re.compile(br'.*::$') + +def inet_aton(text): + """Convert an IPv6 address in text form to binary form. + + *text*, a ``text``, the IPv6 address in textual form. + + Returns a ``binary``. + """ + + # + # Our aim here is not something fast; we just want something that works. + # + if not isinstance(text, binary_type): + text = text.encode() + + if text == b'::': + text = b'0::' + # + # Get rid of the icky dot-quad syntax if we have it. + # + m = _v4_ending.match(text) + if not m is None: + b = bytearray(dns.ipv4.inet_aton(m.group(2))) + text = (u"{}:{:02x}{:02x}:{:02x}{:02x}".format(m.group(1).decode(), + b[0], b[1], b[2], + b[3])).encode() + # + # Try to turn '::' into ':'; if no match try to + # turn '::' into ':' + # + m = _colon_colon_start.match(text) + if not m is None: + text = text[1:] + else: + m = _colon_colon_end.match(text) + if not m is None: + text = text[:-1] + # + # Now canonicalize into 8 chunks of 4 hex digits each + # + chunks = text.split(b':') + l = len(chunks) + if l > 8: + raise dns.exception.SyntaxError + seen_empty = False + canonical = [] + for c in chunks: + if c == b'': + if seen_empty: + raise dns.exception.SyntaxError + seen_empty = True + for i in xrange(0, 8 - l + 1): + canonical.append(b'0000') + else: + lc = len(c) + if lc > 4: + raise dns.exception.SyntaxError + if lc != 4: + c = (b'0' * (4 - lc)) + c + canonical.append(c) + if l < 8 and not seen_empty: + raise dns.exception.SyntaxError + text = b''.join(canonical) + + # + # Finally we can go to binary. + # + try: + return binascii.unhexlify(text) + except (binascii.Error, TypeError): + raise dns.exception.SyntaxError + +_mapped_prefix = b'\x00' * 10 + b'\xff\xff' + +def is_mapped(address): + """Is the specified address a mapped IPv4 address? + + *address*, a ``binary`` is an IPv6 address in binary form. + + Returns a ``bool``. + """ + + return address.startswith(_mapped_prefix) diff --git a/openpype/vendor/python/python_2/dns/message.py b/openpype/vendor/python/python_2/dns/message.py new file mode 100644 index 0000000000..9d2b2f43c9 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/message.py @@ -0,0 +1,1175 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Messages""" + +from __future__ import absolute_import + +from io import StringIO +import struct +import time + +import dns.edns +import dns.exception +import dns.flags +import dns.name +import dns.opcode +import dns.entropy +import dns.rcode +import dns.rdata +import dns.rdataclass +import dns.rdatatype +import dns.rrset +import dns.renderer +import dns.tsig +import dns.wiredata + +from ._compat import long, xrange, string_types + + +class ShortHeader(dns.exception.FormError): + """The DNS packet passed to from_wire() is too short.""" + + +class TrailingJunk(dns.exception.FormError): + """The DNS packet passed to from_wire() has extra junk at the end of it.""" + + +class UnknownHeaderField(dns.exception.DNSException): + """The header field name was not recognized when converting from text + into a message.""" + + +class BadEDNS(dns.exception.FormError): + """An OPT record occurred somewhere other than the start of + the additional data section.""" + + +class BadTSIG(dns.exception.FormError): + """A TSIG record occurred somewhere other than the end of + the additional data section.""" + + +class UnknownTSIGKey(dns.exception.DNSException): + """A TSIG with an unknown key was received.""" + + +#: The question section number +QUESTION = 0 + +#: The answer section number +ANSWER = 1 + +#: The authority section number +AUTHORITY = 2 + +#: The additional section number +ADDITIONAL = 3 + +class Message(object): + """A DNS message.""" + + def __init__(self, id=None): + if id is None: + self.id = dns.entropy.random_16() + else: + self.id = id + self.flags = 0 + self.question = [] + self.answer = [] + self.authority = [] + self.additional = [] + self.edns = -1 + self.ednsflags = 0 + self.payload = 0 + self.options = [] + self.request_payload = 0 + self.keyring = None + self.keyname = None + self.keyalgorithm = dns.tsig.default_algorithm + self.request_mac = b'' + self.other_data = b'' + self.tsig_error = 0 + self.fudge = 300 + self.original_id = self.id + self.mac = b'' + self.xfr = False + self.origin = None + self.tsig_ctx = None + self.had_tsig = False + self.multi = False + self.first = True + self.index = {} + + def __repr__(self): + return '' + + def __str__(self): + return self.to_text() + + def to_text(self, origin=None, relativize=True, **kw): + """Convert the message to text. + + The *origin*, *relativize*, and any other keyword + arguments are passed to the RRset ``to_wire()`` method. + + Returns a ``text``. + """ + + s = StringIO() + s.write(u'id %d\n' % self.id) + s.write(u'opcode %s\n' % + dns.opcode.to_text(dns.opcode.from_flags(self.flags))) + rc = dns.rcode.from_flags(self.flags, self.ednsflags) + s.write(u'rcode %s\n' % dns.rcode.to_text(rc)) + s.write(u'flags %s\n' % dns.flags.to_text(self.flags)) + if self.edns >= 0: + s.write(u'edns %s\n' % self.edns) + if self.ednsflags != 0: + s.write(u'eflags %s\n' % + dns.flags.edns_to_text(self.ednsflags)) + s.write(u'payload %d\n' % self.payload) + for opt in self.options: + s.write(u'option %s\n' % opt.to_text()) + is_update = dns.opcode.is_update(self.flags) + if is_update: + s.write(u';ZONE\n') + else: + s.write(u';QUESTION\n') + for rrset in self.question: + s.write(rrset.to_text(origin, relativize, **kw)) + s.write(u'\n') + if is_update: + s.write(u';PREREQ\n') + else: + s.write(u';ANSWER\n') + for rrset in self.answer: + s.write(rrset.to_text(origin, relativize, **kw)) + s.write(u'\n') + if is_update: + s.write(u';UPDATE\n') + else: + s.write(u';AUTHORITY\n') + for rrset in self.authority: + s.write(rrset.to_text(origin, relativize, **kw)) + s.write(u'\n') + s.write(u';ADDITIONAL\n') + for rrset in self.additional: + s.write(rrset.to_text(origin, relativize, **kw)) + s.write(u'\n') + # + # We strip off the final \n so the caller can print the result without + # doing weird things to get around eccentricities in Python print + # formatting + # + return s.getvalue()[:-1] + + def __eq__(self, other): + """Two messages are equal if they have the same content in the + header, question, answer, and authority sections. + + Returns a ``bool``. + """ + + if not isinstance(other, Message): + return False + if self.id != other.id: + return False + if self.flags != other.flags: + return False + for n in self.question: + if n not in other.question: + return False + for n in other.question: + if n not in self.question: + return False + for n in self.answer: + if n not in other.answer: + return False + for n in other.answer: + if n not in self.answer: + return False + for n in self.authority: + if n not in other.authority: + return False + for n in other.authority: + if n not in self.authority: + return False + return True + + def __ne__(self, other): + return not self.__eq__(other) + + def is_response(self, other): + """Is this message a response to *other*? + + Returns a ``bool``. + """ + + if other.flags & dns.flags.QR == 0 or \ + self.id != other.id or \ + dns.opcode.from_flags(self.flags) != \ + dns.opcode.from_flags(other.flags): + return False + if dns.rcode.from_flags(other.flags, other.ednsflags) != \ + dns.rcode.NOERROR: + return True + if dns.opcode.is_update(self.flags): + return True + for n in self.question: + if n not in other.question: + return False + for n in other.question: + if n not in self.question: + return False + return True + + def section_number(self, section): + """Return the "section number" of the specified section for use + in indexing. The question section is 0, the answer section is 1, + the authority section is 2, and the additional section is 3. + + *section* is one of the section attributes of this message. + + Raises ``ValueError`` if the section isn't known. + + Returns an ``int``. + """ + + if section is self.question: + return QUESTION + elif section is self.answer: + return ANSWER + elif section is self.authority: + return AUTHORITY + elif section is self.additional: + return ADDITIONAL + else: + raise ValueError('unknown section') + + def section_from_number(self, number): + """Return the "section number" of the specified section for use + in indexing. The question section is 0, the answer section is 1, + the authority section is 2, and the additional section is 3. + + *section* is one of the section attributes of this message. + + Raises ``ValueError`` if the section isn't known. + + Returns an ``int``. + """ + + if number == QUESTION: + return self.question + elif number == ANSWER: + return self.answer + elif number == AUTHORITY: + return self.authority + elif number == ADDITIONAL: + return self.additional + else: + raise ValueError('unknown section') + + def find_rrset(self, section, name, rdclass, rdtype, + covers=dns.rdatatype.NONE, deleting=None, create=False, + force_unique=False): + """Find the RRset with the given attributes in the specified section. + + *section*, an ``int`` section number, or one of the section + attributes of this message. This specifies the + the section of the message to search. For example:: + + my_message.find_rrset(my_message.answer, name, rdclass, rdtype) + my_message.find_rrset(dns.message.ANSWER, name, rdclass, rdtype) + + *name*, a ``dns.name.Name``, the name of the RRset. + + *rdclass*, an ``int``, the class of the RRset. + + *rdtype*, an ``int``, the type of the RRset. + + *covers*, an ``int`` or ``None``, the covers value of the RRset. + The default is ``None``. + + *deleting*, an ``int`` or ``None``, the deleting value of the RRset. + The default is ``None``. + + *create*, a ``bool``. If ``True``, create the RRset if it is not found. + The created RRset is appended to *section*. + + *force_unique*, a ``bool``. If ``True`` and *create* is also ``True``, + create a new RRset regardless of whether a matching RRset exists + already. The default is ``False``. This is useful when creating + DDNS Update messages, as order matters for them. + + Raises ``KeyError`` if the RRset was not found and create was + ``False``. + + Returns a ``dns.rrset.RRset object``. + """ + + if isinstance(section, int): + section_number = section + section = self.section_from_number(section_number) + else: + section_number = self.section_number(section) + key = (section_number, name, rdclass, rdtype, covers, deleting) + if not force_unique: + if self.index is not None: + rrset = self.index.get(key) + if rrset is not None: + return rrset + else: + for rrset in section: + if rrset.match(name, rdclass, rdtype, covers, deleting): + return rrset + if not create: + raise KeyError + rrset = dns.rrset.RRset(name, rdclass, rdtype, covers, deleting) + section.append(rrset) + if self.index is not None: + self.index[key] = rrset + return rrset + + def get_rrset(self, section, name, rdclass, rdtype, + covers=dns.rdatatype.NONE, deleting=None, create=False, + force_unique=False): + """Get the RRset with the given attributes in the specified section. + + If the RRset is not found, None is returned. + + *section*, an ``int`` section number, or one of the section + attributes of this message. This specifies the + the section of the message to search. For example:: + + my_message.get_rrset(my_message.answer, name, rdclass, rdtype) + my_message.get_rrset(dns.message.ANSWER, name, rdclass, rdtype) + + *name*, a ``dns.name.Name``, the name of the RRset. + + *rdclass*, an ``int``, the class of the RRset. + + *rdtype*, an ``int``, the type of the RRset. + + *covers*, an ``int`` or ``None``, the covers value of the RRset. + The default is ``None``. + + *deleting*, an ``int`` or ``None``, the deleting value of the RRset. + The default is ``None``. + + *create*, a ``bool``. If ``True``, create the RRset if it is not found. + The created RRset is appended to *section*. + + *force_unique*, a ``bool``. If ``True`` and *create* is also ``True``, + create a new RRset regardless of whether a matching RRset exists + already. The default is ``False``. This is useful when creating + DDNS Update messages, as order matters for them. + + Returns a ``dns.rrset.RRset object`` or ``None``. + """ + + try: + rrset = self.find_rrset(section, name, rdclass, rdtype, covers, + deleting, create, force_unique) + except KeyError: + rrset = None + return rrset + + def to_wire(self, origin=None, max_size=0, **kw): + """Return a string containing the message in DNS compressed wire + format. + + Additional keyword arguments are passed to the RRset ``to_wire()`` + method. + + *origin*, a ``dns.name.Name`` or ``None``, the origin to be appended + to any relative names. + + *max_size*, an ``int``, the maximum size of the wire format + output; default is 0, which means "the message's request + payload, if nonzero, or 65535". + + Raises ``dns.exception.TooBig`` if *max_size* was exceeded. + + Returns a ``binary``. + """ + + if max_size == 0: + if self.request_payload != 0: + max_size = self.request_payload + else: + max_size = 65535 + if max_size < 512: + max_size = 512 + elif max_size > 65535: + max_size = 65535 + r = dns.renderer.Renderer(self.id, self.flags, max_size, origin) + for rrset in self.question: + r.add_question(rrset.name, rrset.rdtype, rrset.rdclass) + for rrset in self.answer: + r.add_rrset(dns.renderer.ANSWER, rrset, **kw) + for rrset in self.authority: + r.add_rrset(dns.renderer.AUTHORITY, rrset, **kw) + if self.edns >= 0: + r.add_edns(self.edns, self.ednsflags, self.payload, self.options) + for rrset in self.additional: + r.add_rrset(dns.renderer.ADDITIONAL, rrset, **kw) + r.write_header() + if self.keyname is not None: + r.add_tsig(self.keyname, self.keyring[self.keyname], + self.fudge, self.original_id, self.tsig_error, + self.other_data, self.request_mac, + self.keyalgorithm) + self.mac = r.mac + return r.get_wire() + + def use_tsig(self, keyring, keyname=None, fudge=300, + original_id=None, tsig_error=0, other_data=b'', + algorithm=dns.tsig.default_algorithm): + """When sending, a TSIG signature using the specified keyring + and keyname should be added. + + See the documentation of the Message class for a complete + description of the keyring dictionary. + + *keyring*, a ``dict``, the TSIG keyring to use. If a + *keyring* is specified but a *keyname* is not, then the key + used will be the first key in the *keyring*. Note that the + order of keys in a dictionary is not defined, so applications + should supply a keyname when a keyring is used, unless they + know the keyring contains only one key. + + *keyname*, a ``dns.name.Name`` or ``None``, the name of the TSIG key + to use; defaults to ``None``. The key must be defined in the keyring. + + *fudge*, an ``int``, the TSIG time fudge. + + *original_id*, an ``int``, the TSIG original id. If ``None``, + the message's id is used. + + *tsig_error*, an ``int``, the TSIG error code. + + *other_data*, a ``binary``, the TSIG other data. + + *algorithm*, a ``dns.name.Name``, the TSIG algorithm to use. + """ + + self.keyring = keyring + if keyname is None: + self.keyname = list(self.keyring.keys())[0] + else: + if isinstance(keyname, string_types): + keyname = dns.name.from_text(keyname) + self.keyname = keyname + self.keyalgorithm = algorithm + self.fudge = fudge + if original_id is None: + self.original_id = self.id + else: + self.original_id = original_id + self.tsig_error = tsig_error + self.other_data = other_data + + def use_edns(self, edns=0, ednsflags=0, payload=1280, request_payload=None, + options=None): + """Configure EDNS behavior. + + *edns*, an ``int``, is the EDNS level to use. Specifying + ``None``, ``False``, or ``-1`` means "do not use EDNS", and in this case + the other parameters are ignored. Specifying ``True`` is + equivalent to specifying 0, i.e. "use EDNS0". + + *ednsflags*, an ``int``, the EDNS flag values. + + *payload*, an ``int``, is the EDNS sender's payload field, which is the + maximum size of UDP datagram the sender can handle. I.e. how big + a response to this message can be. + + *request_payload*, an ``int``, is the EDNS payload size to use when + sending this message. If not specified, defaults to the value of + *payload*. + + *options*, a list of ``dns.edns.Option`` objects or ``None``, the EDNS + options. + """ + + if edns is None or edns is False: + edns = -1 + if edns is True: + edns = 0 + if request_payload is None: + request_payload = payload + if edns < 0: + ednsflags = 0 + payload = 0 + request_payload = 0 + options = [] + else: + # make sure the EDNS version in ednsflags agrees with edns + ednsflags &= long(0xFF00FFFF) + ednsflags |= (edns << 16) + if options is None: + options = [] + self.edns = edns + self.ednsflags = ednsflags + self.payload = payload + self.options = options + self.request_payload = request_payload + + def want_dnssec(self, wanted=True): + """Enable or disable 'DNSSEC desired' flag in requests. + + *wanted*, a ``bool``. If ``True``, then DNSSEC data is + desired in the response, EDNS is enabled if required, and then + the DO bit is set. If ``False``, the DO bit is cleared if + EDNS is enabled. + """ + + if wanted: + if self.edns < 0: + self.use_edns() + self.ednsflags |= dns.flags.DO + elif self.edns >= 0: + self.ednsflags &= ~dns.flags.DO + + def rcode(self): + """Return the rcode. + + Returns an ``int``. + """ + return dns.rcode.from_flags(self.flags, self.ednsflags) + + def set_rcode(self, rcode): + """Set the rcode. + + *rcode*, an ``int``, is the rcode to set. + """ + (value, evalue) = dns.rcode.to_flags(rcode) + self.flags &= 0xFFF0 + self.flags |= value + self.ednsflags &= long(0x00FFFFFF) + self.ednsflags |= evalue + if self.ednsflags != 0 and self.edns < 0: + self.edns = 0 + + def opcode(self): + """Return the opcode. + + Returns an ``int``. + """ + return dns.opcode.from_flags(self.flags) + + def set_opcode(self, opcode): + """Set the opcode. + + *opcode*, an ``int``, is the opcode to set. + """ + self.flags &= 0x87FF + self.flags |= dns.opcode.to_flags(opcode) + + +class _WireReader(object): + + """Wire format reader. + + wire: a binary, is the wire-format message. + message: The message object being built + current: When building a message object from wire format, this + variable contains the offset from the beginning of wire of the next octet + to be read. + updating: Is the message a dynamic update? + one_rr_per_rrset: Put each RR into its own RRset? + ignore_trailing: Ignore trailing junk at end of request? + zone_rdclass: The class of the zone in messages which are + DNS dynamic updates. + """ + + def __init__(self, wire, message, question_only=False, + one_rr_per_rrset=False, ignore_trailing=False): + self.wire = dns.wiredata.maybe_wrap(wire) + self.message = message + self.current = 0 + self.updating = False + self.zone_rdclass = dns.rdataclass.IN + self.question_only = question_only + self.one_rr_per_rrset = one_rr_per_rrset + self.ignore_trailing = ignore_trailing + + def _get_question(self, qcount): + """Read the next *qcount* records from the wire data and add them to + the question section. + """ + + if self.updating and qcount > 1: + raise dns.exception.FormError + + for i in xrange(0, qcount): + (qname, used) = dns.name.from_wire(self.wire, self.current) + if self.message.origin is not None: + qname = qname.relativize(self.message.origin) + self.current = self.current + used + (rdtype, rdclass) = \ + struct.unpack('!HH', + self.wire[self.current:self.current + 4]) + self.current = self.current + 4 + self.message.find_rrset(self.message.question, qname, + rdclass, rdtype, create=True, + force_unique=True) + if self.updating: + self.zone_rdclass = rdclass + + def _get_section(self, section, count): + """Read the next I{count} records from the wire data and add them to + the specified section. + + section: the section of the message to which to add records + count: the number of records to read + """ + + if self.updating or self.one_rr_per_rrset: + force_unique = True + else: + force_unique = False + seen_opt = False + for i in xrange(0, count): + rr_start = self.current + (name, used) = dns.name.from_wire(self.wire, self.current) + absolute_name = name + if self.message.origin is not None: + name = name.relativize(self.message.origin) + self.current = self.current + used + (rdtype, rdclass, ttl, rdlen) = \ + struct.unpack('!HHIH', + self.wire[self.current:self.current + 10]) + self.current = self.current + 10 + if rdtype == dns.rdatatype.OPT: + if section is not self.message.additional or seen_opt: + raise BadEDNS + self.message.payload = rdclass + self.message.ednsflags = ttl + self.message.edns = (ttl & 0xff0000) >> 16 + self.message.options = [] + current = self.current + optslen = rdlen + while optslen > 0: + (otype, olen) = \ + struct.unpack('!HH', + self.wire[current:current + 4]) + current = current + 4 + opt = dns.edns.option_from_wire( + otype, self.wire, current, olen) + self.message.options.append(opt) + current = current + olen + optslen = optslen - 4 - olen + seen_opt = True + elif rdtype == dns.rdatatype.TSIG: + if not (section is self.message.additional and + i == (count - 1)): + raise BadTSIG + if self.message.keyring is None: + raise UnknownTSIGKey('got signed message without keyring') + secret = self.message.keyring.get(absolute_name) + if secret is None: + raise UnknownTSIGKey("key '%s' unknown" % name) + self.message.keyname = absolute_name + (self.message.keyalgorithm, self.message.mac) = \ + dns.tsig.get_algorithm_and_mac(self.wire, self.current, + rdlen) + self.message.tsig_ctx = \ + dns.tsig.validate(self.wire, + absolute_name, + secret, + int(time.time()), + self.message.request_mac, + rr_start, + self.current, + rdlen, + self.message.tsig_ctx, + self.message.multi, + self.message.first) + self.message.had_tsig = True + else: + if ttl < 0: + ttl = 0 + if self.updating and \ + (rdclass == dns.rdataclass.ANY or + rdclass == dns.rdataclass.NONE): + deleting = rdclass + rdclass = self.zone_rdclass + else: + deleting = None + if deleting == dns.rdataclass.ANY or \ + (deleting == dns.rdataclass.NONE and + section is self.message.answer): + covers = dns.rdatatype.NONE + rd = None + else: + rd = dns.rdata.from_wire(rdclass, rdtype, self.wire, + self.current, rdlen, + self.message.origin) + covers = rd.covers() + if self.message.xfr and rdtype == dns.rdatatype.SOA: + force_unique = True + rrset = self.message.find_rrset(section, name, + rdclass, rdtype, covers, + deleting, True, force_unique) + if rd is not None: + rrset.add(rd, ttl) + self.current = self.current + rdlen + + def read(self): + """Read a wire format DNS message and build a dns.message.Message + object.""" + + l = len(self.wire) + if l < 12: + raise ShortHeader + (self.message.id, self.message.flags, qcount, ancount, + aucount, adcount) = struct.unpack('!HHHHHH', self.wire[:12]) + self.current = 12 + if dns.opcode.is_update(self.message.flags): + self.updating = True + self._get_question(qcount) + if self.question_only: + return + self._get_section(self.message.answer, ancount) + self._get_section(self.message.authority, aucount) + self._get_section(self.message.additional, adcount) + if not self.ignore_trailing and self.current != l: + raise TrailingJunk + if self.message.multi and self.message.tsig_ctx and \ + not self.message.had_tsig: + self.message.tsig_ctx.update(self.wire) + + +def from_wire(wire, keyring=None, request_mac=b'', xfr=False, origin=None, + tsig_ctx=None, multi=False, first=True, + question_only=False, one_rr_per_rrset=False, + ignore_trailing=False): + """Convert a DNS wire format message into a message + object. + + *keyring*, a ``dict``, the keyring to use if the message is signed. + + *request_mac*, a ``binary``. If the message is a response to a + TSIG-signed request, *request_mac* should be set to the MAC of + that request. + + *xfr*, a ``bool``, should be set to ``True`` if this message is part of + a zone transfer. + + *origin*, a ``dns.name.Name`` or ``None``. If the message is part + of a zone transfer, *origin* should be the origin name of the + zone. + + *tsig_ctx*, a ``hmac.HMAC`` objext, the ongoing TSIG context, used + when validating zone transfers. + + *multi*, a ``bool``, should be set to ``True`` if this message + part of a multiple message sequence. + + *first*, a ``bool``, should be set to ``True`` if this message is + stand-alone, or the first message in a multi-message sequence. + + *question_only*, a ``bool``. If ``True``, read only up to + the end of the question section. + + *one_rr_per_rrset*, a ``bool``. If ``True``, put each RR into its + own RRset. + + *ignore_trailing*, a ``bool``. If ``True``, ignore trailing + junk at end of the message. + + Raises ``dns.message.ShortHeader`` if the message is less than 12 octets + long. + + Raises ``dns.messaage.TrailingJunk`` if there were octets in the message + past the end of the proper DNS message, and *ignore_trailing* is ``False``. + + Raises ``dns.message.BadEDNS`` if an OPT record was in the + wrong section, or occurred more than once. + + Raises ``dns.message.BadTSIG`` if a TSIG record was not the last + record of the additional data section. + + Returns a ``dns.message.Message``. + """ + + m = Message(id=0) + m.keyring = keyring + m.request_mac = request_mac + m.xfr = xfr + m.origin = origin + m.tsig_ctx = tsig_ctx + m.multi = multi + m.first = first + + reader = _WireReader(wire, m, question_only, one_rr_per_rrset, + ignore_trailing) + reader.read() + + return m + + +class _TextReader(object): + + """Text format reader. + + tok: the tokenizer. + message: The message object being built. + updating: Is the message a dynamic update? + zone_rdclass: The class of the zone in messages which are + DNS dynamic updates. + last_name: The most recently read name when building a message object. + """ + + def __init__(self, text, message): + self.message = message + self.tok = dns.tokenizer.Tokenizer(text) + self.last_name = None + self.zone_rdclass = dns.rdataclass.IN + self.updating = False + + def _header_line(self, section): + """Process one line from the text format header section.""" + + token = self.tok.get() + what = token.value + if what == 'id': + self.message.id = self.tok.get_int() + elif what == 'flags': + while True: + token = self.tok.get() + if not token.is_identifier(): + self.tok.unget(token) + break + self.message.flags = self.message.flags | \ + dns.flags.from_text(token.value) + if dns.opcode.is_update(self.message.flags): + self.updating = True + elif what == 'edns': + self.message.edns = self.tok.get_int() + self.message.ednsflags = self.message.ednsflags | \ + (self.message.edns << 16) + elif what == 'eflags': + if self.message.edns < 0: + self.message.edns = 0 + while True: + token = self.tok.get() + if not token.is_identifier(): + self.tok.unget(token) + break + self.message.ednsflags = self.message.ednsflags | \ + dns.flags.edns_from_text(token.value) + elif what == 'payload': + self.message.payload = self.tok.get_int() + if self.message.edns < 0: + self.message.edns = 0 + elif what == 'opcode': + text = self.tok.get_string() + self.message.flags = self.message.flags | \ + dns.opcode.to_flags(dns.opcode.from_text(text)) + elif what == 'rcode': + text = self.tok.get_string() + self.message.set_rcode(dns.rcode.from_text(text)) + else: + raise UnknownHeaderField + self.tok.get_eol() + + def _question_line(self, section): + """Process one line from the text format question section.""" + + token = self.tok.get(want_leading=True) + if not token.is_whitespace(): + self.last_name = dns.name.from_text(token.value, None) + name = self.last_name + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + # Class + try: + rdclass = dns.rdataclass.from_text(token.value) + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + except dns.exception.SyntaxError: + raise dns.exception.SyntaxError + except Exception: + rdclass = dns.rdataclass.IN + # Type + rdtype = dns.rdatatype.from_text(token.value) + self.message.find_rrset(self.message.question, name, + rdclass, rdtype, create=True, + force_unique=True) + if self.updating: + self.zone_rdclass = rdclass + self.tok.get_eol() + + def _rr_line(self, section): + """Process one line from the text format answer, authority, or + additional data sections. + """ + + deleting = None + # Name + token = self.tok.get(want_leading=True) + if not token.is_whitespace(): + self.last_name = dns.name.from_text(token.value, None) + name = self.last_name + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + # TTL + try: + ttl = int(token.value, 0) + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + except dns.exception.SyntaxError: + raise dns.exception.SyntaxError + except Exception: + ttl = 0 + # Class + try: + rdclass = dns.rdataclass.from_text(token.value) + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + if rdclass == dns.rdataclass.ANY or rdclass == dns.rdataclass.NONE: + deleting = rdclass + rdclass = self.zone_rdclass + except dns.exception.SyntaxError: + raise dns.exception.SyntaxError + except Exception: + rdclass = dns.rdataclass.IN + # Type + rdtype = dns.rdatatype.from_text(token.value) + token = self.tok.get() + if not token.is_eol_or_eof(): + self.tok.unget(token) + rd = dns.rdata.from_text(rdclass, rdtype, self.tok, None) + covers = rd.covers() + else: + rd = None + covers = dns.rdatatype.NONE + rrset = self.message.find_rrset(section, name, + rdclass, rdtype, covers, + deleting, True, self.updating) + if rd is not None: + rrset.add(rd, ttl) + + def read(self): + """Read a text format DNS message and build a dns.message.Message + object.""" + + line_method = self._header_line + section = None + while 1: + token = self.tok.get(True, True) + if token.is_eol_or_eof(): + break + if token.is_comment(): + u = token.value.upper() + if u == 'HEADER': + line_method = self._header_line + elif u == 'QUESTION' or u == 'ZONE': + line_method = self._question_line + section = self.message.question + elif u == 'ANSWER' or u == 'PREREQ': + line_method = self._rr_line + section = self.message.answer + elif u == 'AUTHORITY' or u == 'UPDATE': + line_method = self._rr_line + section = self.message.authority + elif u == 'ADDITIONAL': + line_method = self._rr_line + section = self.message.additional + self.tok.get_eol() + continue + self.tok.unget(token) + line_method(section) + + +def from_text(text): + """Convert the text format message into a message object. + + *text*, a ``text``, the text format message. + + Raises ``dns.message.UnknownHeaderField`` if a header is unknown. + + Raises ``dns.exception.SyntaxError`` if the text is badly formed. + + Returns a ``dns.message.Message object`` + """ + + # 'text' can also be a file, but we don't publish that fact + # since it's an implementation detail. The official file + # interface is from_file(). + + m = Message() + + reader = _TextReader(text, m) + reader.read() + + return m + + +def from_file(f): + """Read the next text format message from the specified file. + + *f*, a ``file`` or ``text``. If *f* is text, it is treated as the + pathname of a file to open. + + Raises ``dns.message.UnknownHeaderField`` if a header is unknown. + + Raises ``dns.exception.SyntaxError`` if the text is badly formed. + + Returns a ``dns.message.Message object`` + """ + + str_type = string_types + opts = 'rU' + + if isinstance(f, str_type): + f = open(f, opts) + want_close = True + else: + want_close = False + + try: + m = from_text(f) + finally: + if want_close: + f.close() + return m + + +def make_query(qname, rdtype, rdclass=dns.rdataclass.IN, use_edns=None, + want_dnssec=False, ednsflags=None, payload=None, + request_payload=None, options=None): + """Make a query message. + + The query name, type, and class may all be specified either + as objects of the appropriate type, or as strings. + + The query will have a randomly chosen query id, and its DNS flags + will be set to dns.flags.RD. + + qname, a ``dns.name.Name`` or ``text``, the query name. + + *rdtype*, an ``int`` or ``text``, the desired rdata type. + + *rdclass*, an ``int`` or ``text``, the desired rdata class; the default + is class IN. + + *use_edns*, an ``int``, ``bool`` or ``None``. The EDNS level to use; the + default is None (no EDNS). + See the description of dns.message.Message.use_edns() for the possible + values for use_edns and their meanings. + + *want_dnssec*, a ``bool``. If ``True``, DNSSEC data is desired. + + *ednsflags*, an ``int``, the EDNS flag values. + + *payload*, an ``int``, is the EDNS sender's payload field, which is the + maximum size of UDP datagram the sender can handle. I.e. how big + a response to this message can be. + + *request_payload*, an ``int``, is the EDNS payload size to use when + sending this message. If not specified, defaults to the value of + *payload*. + + *options*, a list of ``dns.edns.Option`` objects or ``None``, the EDNS + options. + + Returns a ``dns.message.Message`` + """ + + if isinstance(qname, string_types): + qname = dns.name.from_text(qname) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + if isinstance(rdclass, string_types): + rdclass = dns.rdataclass.from_text(rdclass) + m = Message() + m.flags |= dns.flags.RD + m.find_rrset(m.question, qname, rdclass, rdtype, create=True, + force_unique=True) + # only pass keywords on to use_edns if they have been set to a + # non-None value. Setting a field will turn EDNS on if it hasn't + # been configured. + kwargs = {} + if ednsflags is not None: + kwargs['ednsflags'] = ednsflags + if use_edns is None: + use_edns = 0 + if payload is not None: + kwargs['payload'] = payload + if use_edns is None: + use_edns = 0 + if request_payload is not None: + kwargs['request_payload'] = request_payload + if use_edns is None: + use_edns = 0 + if options is not None: + kwargs['options'] = options + if use_edns is None: + use_edns = 0 + kwargs['edns'] = use_edns + m.use_edns(**kwargs) + m.want_dnssec(want_dnssec) + return m + + +def make_response(query, recursion_available=False, our_payload=8192, + fudge=300): + """Make a message which is a response for the specified query. + The message returned is really a response skeleton; it has all + of the infrastructure required of a response, but none of the + content. + + The response's question section is a shallow copy of the query's + question section, so the query's question RRsets should not be + changed. + + *query*, a ``dns.message.Message``, the query to respond to. + + *recursion_available*, a ``bool``, should RA be set in the response? + + *our_payload*, an ``int``, the payload size to advertise in EDNS + responses. + + *fudge*, an ``int``, the TSIG time fudge. + + Returns a ``dns.message.Message`` object. + """ + + if query.flags & dns.flags.QR: + raise dns.exception.FormError('specified query message is not a query') + response = dns.message.Message(query.id) + response.flags = dns.flags.QR | (query.flags & dns.flags.RD) + if recursion_available: + response.flags |= dns.flags.RA + response.set_opcode(query.opcode()) + response.question = list(query.question) + if query.edns >= 0: + response.use_edns(0, 0, our_payload, query.payload) + if query.had_tsig: + response.use_tsig(query.keyring, query.keyname, fudge, None, 0, b'', + query.keyalgorithm) + response.request_mac = query.mac + return response diff --git a/openpype/vendor/python/python_2/dns/name.py b/openpype/vendor/python/python_2/dns/name.py new file mode 100644 index 0000000000..0bcfd83432 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/name.py @@ -0,0 +1,994 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Names. +""" + +from io import BytesIO +import struct +import sys +import copy +import encodings.idna +try: + import idna + have_idna_2008 = True +except ImportError: + have_idna_2008 = False + +import dns.exception +import dns.wiredata + +from ._compat import long, binary_type, text_type, unichr, maybe_decode + +try: + maxint = sys.maxint # pylint: disable=sys-max-int +except AttributeError: + maxint = (1 << (8 * struct.calcsize("P"))) // 2 - 1 + + +# fullcompare() result values + +#: The compared names have no relationship to each other. +NAMERELN_NONE = 0 +#: the first name is a superdomain of the second. +NAMERELN_SUPERDOMAIN = 1 +#: The first name is a subdomain of the second. +NAMERELN_SUBDOMAIN = 2 +#: The compared names are equal. +NAMERELN_EQUAL = 3 +#: The compared names have a common ancestor. +NAMERELN_COMMONANCESTOR = 4 + + +class EmptyLabel(dns.exception.SyntaxError): + """A DNS label is empty.""" + + +class BadEscape(dns.exception.SyntaxError): + """An escaped code in a text format of DNS name is invalid.""" + + +class BadPointer(dns.exception.FormError): + """A DNS compression pointer points forward instead of backward.""" + + +class BadLabelType(dns.exception.FormError): + """The label type in DNS name wire format is unknown.""" + + +class NeedAbsoluteNameOrOrigin(dns.exception.DNSException): + """An attempt was made to convert a non-absolute name to + wire when there was also a non-absolute (or missing) origin.""" + + +class NameTooLong(dns.exception.FormError): + """A DNS name is > 255 octets long.""" + + +class LabelTooLong(dns.exception.SyntaxError): + """A DNS label is > 63 octets long.""" + + +class AbsoluteConcatenation(dns.exception.DNSException): + """An attempt was made to append anything other than the + empty name to an absolute DNS name.""" + + +class NoParent(dns.exception.DNSException): + """An attempt was made to get the parent of the root name + or the empty name.""" + +class NoIDNA2008(dns.exception.DNSException): + """IDNA 2008 processing was requested but the idna module is not + available.""" + + +class IDNAException(dns.exception.DNSException): + """IDNA processing raised an exception.""" + + supp_kwargs = {'idna_exception'} + fmt = "IDNA processing exception: {idna_exception}" + + +class IDNACodec(object): + """Abstract base class for IDNA encoder/decoders.""" + + def __init__(self): + pass + + def encode(self, label): + raise NotImplementedError + + def decode(self, label): + # We do not apply any IDNA policy on decode; we just + downcased = label.lower() + if downcased.startswith(b'xn--'): + try: + label = downcased[4:].decode('punycode') + except Exception as e: + raise IDNAException(idna_exception=e) + else: + label = maybe_decode(label) + return _escapify(label, True) + + +class IDNA2003Codec(IDNACodec): + """IDNA 2003 encoder/decoder.""" + + def __init__(self, strict_decode=False): + """Initialize the IDNA 2003 encoder/decoder. + + *strict_decode* is a ``bool``. If `True`, then IDNA2003 checking + is done when decoding. This can cause failures if the name + was encoded with IDNA2008. The default is `False`. + """ + + super(IDNA2003Codec, self).__init__() + self.strict_decode = strict_decode + + def encode(self, label): + """Encode *label*.""" + + if label == '': + return b'' + try: + return encodings.idna.ToASCII(label) + except UnicodeError: + raise LabelTooLong + + def decode(self, label): + """Decode *label*.""" + if not self.strict_decode: + return super(IDNA2003Codec, self).decode(label) + if label == b'': + return u'' + try: + return _escapify(encodings.idna.ToUnicode(label), True) + except Exception as e: + raise IDNAException(idna_exception=e) + + +class IDNA2008Codec(IDNACodec): + """IDNA 2008 encoder/decoder. + + *uts_46* is a ``bool``. If True, apply Unicode IDNA + compatibility processing as described in Unicode Technical + Standard #46 (http://unicode.org/reports/tr46/). + If False, do not apply the mapping. The default is False. + + *transitional* is a ``bool``: If True, use the + "transitional" mode described in Unicode Technical Standard + #46. The default is False. + + *allow_pure_ascii* is a ``bool``. If True, then a label which + consists of only ASCII characters is allowed. This is less + strict than regular IDNA 2008, but is also necessary for mixed + names, e.g. a name with starting with "_sip._tcp." and ending + in an IDN suffix which would otherwise be disallowed. The + default is False. + + *strict_decode* is a ``bool``: If True, then IDNA2008 checking + is done when decoding. This can cause failures if the name + was encoded with IDNA2003. The default is False. + """ + + def __init__(self, uts_46=False, transitional=False, + allow_pure_ascii=False, strict_decode=False): + """Initialize the IDNA 2008 encoder/decoder.""" + super(IDNA2008Codec, self).__init__() + self.uts_46 = uts_46 + self.transitional = transitional + self.allow_pure_ascii = allow_pure_ascii + self.strict_decode = strict_decode + + def is_all_ascii(self, label): + for c in label: + if ord(c) > 0x7f: + return False + return True + + def encode(self, label): + if label == '': + return b'' + if self.allow_pure_ascii and self.is_all_ascii(label): + return label.encode('ascii') + if not have_idna_2008: + raise NoIDNA2008 + try: + if self.uts_46: + label = idna.uts46_remap(label, False, self.transitional) + return idna.alabel(label) + except idna.IDNAError as e: + raise IDNAException(idna_exception=e) + + def decode(self, label): + if not self.strict_decode: + return super(IDNA2008Codec, self).decode(label) + if label == b'': + return u'' + if not have_idna_2008: + raise NoIDNA2008 + try: + if self.uts_46: + label = idna.uts46_remap(label, False, False) + return _escapify(idna.ulabel(label), True) + except idna.IDNAError as e: + raise IDNAException(idna_exception=e) + +_escaped = bytearray(b'"().;\\@$') + +IDNA_2003_Practical = IDNA2003Codec(False) +IDNA_2003_Strict = IDNA2003Codec(True) +IDNA_2003 = IDNA_2003_Practical +IDNA_2008_Practical = IDNA2008Codec(True, False, True, False) +IDNA_2008_UTS_46 = IDNA2008Codec(True, False, False, False) +IDNA_2008_Strict = IDNA2008Codec(False, False, False, True) +IDNA_2008_Transitional = IDNA2008Codec(True, True, False, False) +IDNA_2008 = IDNA_2008_Practical + +def _escapify(label, unicode_mode=False): + """Escape the characters in label which need it. + @param unicode_mode: escapify only special and whitespace (<= 0x20) + characters + @returns: the escaped string + @rtype: string""" + if not unicode_mode: + text = '' + if isinstance(label, text_type): + label = label.encode() + for c in bytearray(label): + if c in _escaped: + text += '\\' + chr(c) + elif c > 0x20 and c < 0x7F: + text += chr(c) + else: + text += '\\%03d' % c + return text.encode() + + text = u'' + if isinstance(label, binary_type): + label = label.decode() + for c in label: + if c > u'\x20' and c < u'\x7f': + text += c + else: + if c >= u'\x7f': + text += c + else: + text += u'\\%03d' % ord(c) + return text + +def _validate_labels(labels): + """Check for empty labels in the middle of a label sequence, + labels that are too long, and for too many labels. + + Raises ``dns.name.NameTooLong`` if the name as a whole is too long. + + Raises ``dns.name.EmptyLabel`` if a label is empty (i.e. the root + label) and appears in a position other than the end of the label + sequence + + """ + + l = len(labels) + total = 0 + i = -1 + j = 0 + for label in labels: + ll = len(label) + total += ll + 1 + if ll > 63: + raise LabelTooLong + if i < 0 and label == b'': + i = j + j += 1 + if total > 255: + raise NameTooLong + if i >= 0 and i != l - 1: + raise EmptyLabel + + +def _maybe_convert_to_binary(label): + """If label is ``text``, convert it to ``binary``. If it is already + ``binary`` just return it. + + """ + + if isinstance(label, binary_type): + return label + if isinstance(label, text_type): + return label.encode() + raise ValueError + + +class Name(object): + + """A DNS name. + + The dns.name.Name class represents a DNS name as a tuple of + labels. Each label is a `binary` in DNS wire format. Instances + of the class are immutable. + """ + + __slots__ = ['labels'] + + def __init__(self, labels): + """*labels* is any iterable whose values are ``text`` or ``binary``. + """ + + labels = [_maybe_convert_to_binary(x) for x in labels] + super(Name, self).__setattr__('labels', tuple(labels)) + _validate_labels(self.labels) + + def __setattr__(self, name, value): + # Names are immutable + raise TypeError("object doesn't support attribute assignment") + + def __copy__(self): + return Name(self.labels) + + def __deepcopy__(self, memo): + return Name(copy.deepcopy(self.labels, memo)) + + def __getstate__(self): + # Names can be pickled + return {'labels': self.labels} + + def __setstate__(self, state): + super(Name, self).__setattr__('labels', state['labels']) + _validate_labels(self.labels) + + def is_absolute(self): + """Is the most significant label of this name the root label? + + Returns a ``bool``. + """ + + return len(self.labels) > 0 and self.labels[-1] == b'' + + def is_wild(self): + """Is this name wild? (I.e. Is the least significant label '*'?) + + Returns a ``bool``. + """ + + return len(self.labels) > 0 and self.labels[0] == b'*' + + def __hash__(self): + """Return a case-insensitive hash of the name. + + Returns an ``int``. + """ + + h = long(0) + for label in self.labels: + for c in bytearray(label.lower()): + h += (h << 3) + c + return int(h % maxint) + + def fullcompare(self, other): + """Compare two names, returning a 3-tuple + ``(relation, order, nlabels)``. + + *relation* describes the relation ship between the names, + and is one of: ``dns.name.NAMERELN_NONE``, + ``dns.name.NAMERELN_SUPERDOMAIN``, ``dns.name.NAMERELN_SUBDOMAIN``, + ``dns.name.NAMERELN_EQUAL``, or ``dns.name.NAMERELN_COMMONANCESTOR``. + + *order* is < 0 if *self* < *other*, > 0 if *self* > *other*, and == + 0 if *self* == *other*. A relative name is always less than an + absolute name. If both names have the same relativity, then + the DNSSEC order relation is used to order them. + + *nlabels* is the number of significant labels that the two names + have in common. + + Here are some examples. Names ending in "." are absolute names, + those not ending in "." are relative names. + + ============= ============= =========== ===== ======= + self other relation order nlabels + ============= ============= =========== ===== ======= + www.example. www.example. equal 0 3 + www.example. example. subdomain > 0 2 + example. www.example. superdomain < 0 2 + example1.com. example2.com. common anc. < 0 2 + example1 example2. none < 0 0 + example1. example2 none > 0 0 + ============= ============= =========== ===== ======= + """ + + sabs = self.is_absolute() + oabs = other.is_absolute() + if sabs != oabs: + if sabs: + return (NAMERELN_NONE, 1, 0) + else: + return (NAMERELN_NONE, -1, 0) + l1 = len(self.labels) + l2 = len(other.labels) + ldiff = l1 - l2 + if ldiff < 0: + l = l1 + else: + l = l2 + + order = 0 + nlabels = 0 + namereln = NAMERELN_NONE + while l > 0: + l -= 1 + l1 -= 1 + l2 -= 1 + label1 = self.labels[l1].lower() + label2 = other.labels[l2].lower() + if label1 < label2: + order = -1 + if nlabels > 0: + namereln = NAMERELN_COMMONANCESTOR + return (namereln, order, nlabels) + elif label1 > label2: + order = 1 + if nlabels > 0: + namereln = NAMERELN_COMMONANCESTOR + return (namereln, order, nlabels) + nlabels += 1 + order = ldiff + if ldiff < 0: + namereln = NAMERELN_SUPERDOMAIN + elif ldiff > 0: + namereln = NAMERELN_SUBDOMAIN + else: + namereln = NAMERELN_EQUAL + return (namereln, order, nlabels) + + def is_subdomain(self, other): + """Is self a subdomain of other? + + Note that the notion of subdomain includes equality, e.g. + "dnpython.org" is a subdomain of itself. + + Returns a ``bool``. + """ + + (nr, o, nl) = self.fullcompare(other) + if nr == NAMERELN_SUBDOMAIN or nr == NAMERELN_EQUAL: + return True + return False + + def is_superdomain(self, other): + """Is self a superdomain of other? + + Note that the notion of superdomain includes equality, e.g. + "dnpython.org" is a superdomain of itself. + + Returns a ``bool``. + """ + + (nr, o, nl) = self.fullcompare(other) + if nr == NAMERELN_SUPERDOMAIN or nr == NAMERELN_EQUAL: + return True + return False + + def canonicalize(self): + """Return a name which is equal to the current name, but is in + DNSSEC canonical form. + """ + + return Name([x.lower() for x in self.labels]) + + def __eq__(self, other): + if isinstance(other, Name): + return self.fullcompare(other)[1] == 0 + else: + return False + + def __ne__(self, other): + if isinstance(other, Name): + return self.fullcompare(other)[1] != 0 + else: + return True + + def __lt__(self, other): + if isinstance(other, Name): + return self.fullcompare(other)[1] < 0 + else: + return NotImplemented + + def __le__(self, other): + if isinstance(other, Name): + return self.fullcompare(other)[1] <= 0 + else: + return NotImplemented + + def __ge__(self, other): + if isinstance(other, Name): + return self.fullcompare(other)[1] >= 0 + else: + return NotImplemented + + def __gt__(self, other): + if isinstance(other, Name): + return self.fullcompare(other)[1] > 0 + else: + return NotImplemented + + def __repr__(self): + return '' + + def __str__(self): + return self.to_text(False) + + def to_text(self, omit_final_dot=False): + """Convert name to DNS text format. + + *omit_final_dot* is a ``bool``. If True, don't emit the final + dot (denoting the root label) for absolute names. The default + is False. + + Returns a ``text``. + """ + + if len(self.labels) == 0: + return maybe_decode(b'@') + if len(self.labels) == 1 and self.labels[0] == b'': + return maybe_decode(b'.') + if omit_final_dot and self.is_absolute(): + l = self.labels[:-1] + else: + l = self.labels + s = b'.'.join(map(_escapify, l)) + return maybe_decode(s) + + def to_unicode(self, omit_final_dot=False, idna_codec=None): + """Convert name to Unicode text format. + + IDN ACE labels are converted to Unicode. + + *omit_final_dot* is a ``bool``. If True, don't emit the final + dot (denoting the root label) for absolute names. The default + is False. + *idna_codec* specifies the IDNA encoder/decoder. If None, the + dns.name.IDNA_2003_Practical encoder/decoder is used. + The IDNA_2003_Practical decoder does + not impose any policy, it just decodes punycode, so if you + don't want checking for compliance, you can use this decoder + for IDNA2008 as well. + + Returns a ``text``. + """ + + if len(self.labels) == 0: + return u'@' + if len(self.labels) == 1 and self.labels[0] == b'': + return u'.' + if omit_final_dot and self.is_absolute(): + l = self.labels[:-1] + else: + l = self.labels + if idna_codec is None: + idna_codec = IDNA_2003_Practical + return u'.'.join([idna_codec.decode(x) for x in l]) + + def to_digestable(self, origin=None): + """Convert name to a format suitable for digesting in hashes. + + The name is canonicalized and converted to uncompressed wire + format. All names in wire format are absolute. If the name + is a relative name, then an origin must be supplied. + + *origin* is a ``dns.name.Name`` or ``None``. If the name is + relative and origin is not ``None``, then origin will be appended + to the name. + + Raises ``dns.name.NeedAbsoluteNameOrOrigin`` if the name is + relative and no origin was provided. + + Returns a ``binary``. + """ + + if not self.is_absolute(): + if origin is None or not origin.is_absolute(): + raise NeedAbsoluteNameOrOrigin + labels = list(self.labels) + labels.extend(list(origin.labels)) + else: + labels = self.labels + dlabels = [struct.pack('!B%ds' % len(x), len(x), x.lower()) + for x in labels] + return b''.join(dlabels) + + def to_wire(self, file=None, compress=None, origin=None): + """Convert name to wire format, possibly compressing it. + + *file* is the file where the name is emitted (typically a + BytesIO file). If ``None`` (the default), a ``binary`` + containing the wire name will be returned. + + *compress*, a ``dict``, is the compression table to use. If + ``None`` (the default), names will not be compressed. + + *origin* is a ``dns.name.Name`` or ``None``. If the name is + relative and origin is not ``None``, then *origin* will be appended + to it. + + Raises ``dns.name.NeedAbsoluteNameOrOrigin`` if the name is + relative and no origin was provided. + + Returns a ``binary`` or ``None``. + """ + + if file is None: + file = BytesIO() + want_return = True + else: + want_return = False + + if not self.is_absolute(): + if origin is None or not origin.is_absolute(): + raise NeedAbsoluteNameOrOrigin + labels = list(self.labels) + labels.extend(list(origin.labels)) + else: + labels = self.labels + i = 0 + for label in labels: + n = Name(labels[i:]) + i += 1 + if compress is not None: + pos = compress.get(n) + else: + pos = None + if pos is not None: + value = 0xc000 + pos + s = struct.pack('!H', value) + file.write(s) + break + else: + if compress is not None and len(n) > 1: + pos = file.tell() + if pos <= 0x3fff: + compress[n] = pos + l = len(label) + file.write(struct.pack('!B', l)) + if l > 0: + file.write(label) + if want_return: + return file.getvalue() + + def __len__(self): + """The length of the name (in labels). + + Returns an ``int``. + """ + + return len(self.labels) + + def __getitem__(self, index): + return self.labels[index] + + def __add__(self, other): + return self.concatenate(other) + + def __sub__(self, other): + return self.relativize(other) + + def split(self, depth): + """Split a name into a prefix and suffix names at the specified depth. + + *depth* is an ``int`` specifying the number of labels in the suffix + + Raises ``ValueError`` if *depth* was not >= 0 and <= the length of the + name. + + Returns the tuple ``(prefix, suffix)``. + """ + + l = len(self.labels) + if depth == 0: + return (self, dns.name.empty) + elif depth == l: + return (dns.name.empty, self) + elif depth < 0 or depth > l: + raise ValueError( + 'depth must be >= 0 and <= the length of the name') + return (Name(self[: -depth]), Name(self[-depth:])) + + def concatenate(self, other): + """Return a new name which is the concatenation of self and other. + + Raises ``dns.name.AbsoluteConcatenation`` if the name is + absolute and *other* is not the empty name. + + Returns a ``dns.name.Name``. + """ + + if self.is_absolute() and len(other) > 0: + raise AbsoluteConcatenation + labels = list(self.labels) + labels.extend(list(other.labels)) + return Name(labels) + + def relativize(self, origin): + """If the name is a subdomain of *origin*, return a new name which is + the name relative to origin. Otherwise return the name. + + For example, relativizing ``www.dnspython.org.`` to origin + ``dnspython.org.`` returns the name ``www``. Relativizing ``example.`` + to origin ``dnspython.org.`` returns ``example.``. + + Returns a ``dns.name.Name``. + """ + + if origin is not None and self.is_subdomain(origin): + return Name(self[: -len(origin)]) + else: + return self + + def derelativize(self, origin): + """If the name is a relative name, return a new name which is the + concatenation of the name and origin. Otherwise return the name. + + For example, derelativizing ``www`` to origin ``dnspython.org.`` + returns the name ``www.dnspython.org.``. Derelativizing ``example.`` + to origin ``dnspython.org.`` returns ``example.``. + + Returns a ``dns.name.Name``. + """ + + if not self.is_absolute(): + return self.concatenate(origin) + else: + return self + + def choose_relativity(self, origin=None, relativize=True): + """Return a name with the relativity desired by the caller. + + If *origin* is ``None``, then the name is returned. + Otherwise, if *relativize* is ``True`` the name is + relativized, and if *relativize* is ``False`` the name is + derelativized. + + Returns a ``dns.name.Name``. + """ + + if origin: + if relativize: + return self.relativize(origin) + else: + return self.derelativize(origin) + else: + return self + + def parent(self): + """Return the parent of the name. + + For example, the parent of ``www.dnspython.org.`` is ``dnspython.org``. + + Raises ``dns.name.NoParent`` if the name is either the root name or the + empty name, and thus has no parent. + + Returns a ``dns.name.Name``. + """ + + if self == root or self == empty: + raise NoParent + return Name(self.labels[1:]) + +#: The root name, '.' +root = Name([b'']) + +#: The empty name. +empty = Name([]) + +def from_unicode(text, origin=root, idna_codec=None): + """Convert unicode text into a Name object. + + Labels are encoded in IDN ACE form according to rules specified by + the IDNA codec. + + *text*, a ``text``, is the text to convert into a name. + + *origin*, a ``dns.name.Name``, specifies the origin to + append to non-absolute names. The default is the root name. + + *idna_codec*, a ``dns.name.IDNACodec``, specifies the IDNA + encoder/decoder. If ``None``, the default IDNA 2003 encoder/decoder + is used. + + Returns a ``dns.name.Name``. + """ + + if not isinstance(text, text_type): + raise ValueError("input to from_unicode() must be a unicode string") + if not (origin is None or isinstance(origin, Name)): + raise ValueError("origin must be a Name or None") + labels = [] + label = u'' + escaping = False + edigits = 0 + total = 0 + if idna_codec is None: + idna_codec = IDNA_2003 + if text == u'@': + text = u'' + if text: + if text == u'.': + return Name([b'']) # no Unicode "u" on this constant! + for c in text: + if escaping: + if edigits == 0: + if c.isdigit(): + total = int(c) + edigits += 1 + else: + label += c + escaping = False + else: + if not c.isdigit(): + raise BadEscape + total *= 10 + total += int(c) + edigits += 1 + if edigits == 3: + escaping = False + label += unichr(total) + elif c in [u'.', u'\u3002', u'\uff0e', u'\uff61']: + if len(label) == 0: + raise EmptyLabel + labels.append(idna_codec.encode(label)) + label = u'' + elif c == u'\\': + escaping = True + edigits = 0 + total = 0 + else: + label += c + if escaping: + raise BadEscape + if len(label) > 0: + labels.append(idna_codec.encode(label)) + else: + labels.append(b'') + + if (len(labels) == 0 or labels[-1] != b'') and origin is not None: + labels.extend(list(origin.labels)) + return Name(labels) + + +def from_text(text, origin=root, idna_codec=None): + """Convert text into a Name object. + + *text*, a ``text``, is the text to convert into a name. + + *origin*, a ``dns.name.Name``, specifies the origin to + append to non-absolute names. The default is the root name. + + *idna_codec*, a ``dns.name.IDNACodec``, specifies the IDNA + encoder/decoder. If ``None``, the default IDNA 2003 encoder/decoder + is used. + + Returns a ``dns.name.Name``. + """ + + if isinstance(text, text_type): + return from_unicode(text, origin, idna_codec) + if not isinstance(text, binary_type): + raise ValueError("input to from_text() must be a string") + if not (origin is None or isinstance(origin, Name)): + raise ValueError("origin must be a Name or None") + labels = [] + label = b'' + escaping = False + edigits = 0 + total = 0 + if text == b'@': + text = b'' + if text: + if text == b'.': + return Name([b'']) + for c in bytearray(text): + byte_ = struct.pack('!B', c) + if escaping: + if edigits == 0: + if byte_.isdigit(): + total = int(byte_) + edigits += 1 + else: + label += byte_ + escaping = False + else: + if not byte_.isdigit(): + raise BadEscape + total *= 10 + total += int(byte_) + edigits += 1 + if edigits == 3: + escaping = False + label += struct.pack('!B', total) + elif byte_ == b'.': + if len(label) == 0: + raise EmptyLabel + labels.append(label) + label = b'' + elif byte_ == b'\\': + escaping = True + edigits = 0 + total = 0 + else: + label += byte_ + if escaping: + raise BadEscape + if len(label) > 0: + labels.append(label) + else: + labels.append(b'') + if (len(labels) == 0 or labels[-1] != b'') and origin is not None: + labels.extend(list(origin.labels)) + return Name(labels) + + +def from_wire(message, current): + """Convert possibly compressed wire format into a Name. + + *message* is a ``binary`` containing an entire DNS message in DNS + wire form. + + *current*, an ``int``, is the offset of the beginning of the name + from the start of the message + + Raises ``dns.name.BadPointer`` if a compression pointer did not + point backwards in the message. + + Raises ``dns.name.BadLabelType`` if an invalid label type was encountered. + + Returns a ``(dns.name.Name, int)`` tuple consisting of the name + that was read and the number of bytes of the wire format message + which were consumed reading it. + """ + + if not isinstance(message, binary_type): + raise ValueError("input to from_wire() must be a byte string") + message = dns.wiredata.maybe_wrap(message) + labels = [] + biggest_pointer = current + hops = 0 + count = message[current] + current += 1 + cused = 1 + while count != 0: + if count < 64: + labels.append(message[current: current + count].unwrap()) + current += count + if hops == 0: + cused += count + elif count >= 192: + current = (count & 0x3f) * 256 + message[current] + if hops == 0: + cused += 1 + if current >= biggest_pointer: + raise BadPointer + biggest_pointer = current + hops += 1 + else: + raise BadLabelType + count = message[current] + current += 1 + if hops == 0: + cused += 1 + labels.append('') + return (Name(labels), cused) diff --git a/openpype/vendor/python/python_2/dns/namedict.py b/openpype/vendor/python/python_2/dns/namedict.py new file mode 100644 index 0000000000..37a13104e6 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/namedict.py @@ -0,0 +1,108 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# Copyright (C) 2016 Coresec Systems AB +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND CORESEC SYSTEMS AB DISCLAIMS ALL +# WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL CORESEC +# SYSTEMS AB BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS +# OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, +# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION +# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS name dictionary""" + +import collections +import dns.name +from ._compat import xrange + + +class NameDict(collections.MutableMapping): + """A dictionary whose keys are dns.name.Name objects. + + In addition to being like a regular Python dictionary, this + dictionary can also get the deepest match for a given key. + """ + + __slots__ = ["max_depth", "max_depth_items", "__store"] + + def __init__(self, *args, **kwargs): + super(NameDict, self).__init__() + self.__store = dict() + #: the maximum depth of the keys that have ever been added + self.max_depth = 0 + #: the number of items of maximum depth + self.max_depth_items = 0 + self.update(dict(*args, **kwargs)) + + def __update_max_depth(self, key): + if len(key) == self.max_depth: + self.max_depth_items = self.max_depth_items + 1 + elif len(key) > self.max_depth: + self.max_depth = len(key) + self.max_depth_items = 1 + + def __getitem__(self, key): + return self.__store[key] + + def __setitem__(self, key, value): + if not isinstance(key, dns.name.Name): + raise ValueError('NameDict key must be a name') + self.__store[key] = value + self.__update_max_depth(key) + + def __delitem__(self, key): + value = self.__store.pop(key) + if len(value) == self.max_depth: + self.max_depth_items = self.max_depth_items - 1 + if self.max_depth_items == 0: + self.max_depth = 0 + for k in self.__store: + self.__update_max_depth(k) + + def __iter__(self): + return iter(self.__store) + + def __len__(self): + return len(self.__store) + + def has_key(self, key): + return key in self.__store + + def get_deepest_match(self, name): + """Find the deepest match to *fname* in the dictionary. + + The deepest match is the longest name in the dictionary which is + a superdomain of *name*. Note that *superdomain* includes matching + *name* itself. + + *name*, a ``dns.name.Name``, the name to find. + + Returns a ``(key, value)`` where *key* is the deepest + ``dns.name.Name``, and *value* is the value associated with *key*. + """ + + depth = len(name) + if depth > self.max_depth: + depth = self.max_depth + for i in xrange(-depth, 0): + n = dns.name.Name(name[i:]) + if n in self: + return (n, self[n]) + v = self[dns.name.empty] + return (dns.name.empty, v) diff --git a/openpype/vendor/python/python_2/dns/node.py b/openpype/vendor/python/python_2/dns/node.py new file mode 100644 index 0000000000..8a7f19f523 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/node.py @@ -0,0 +1,182 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS nodes. A node is a set of rdatasets.""" + +from io import StringIO + +import dns.rdataset +import dns.rdatatype +import dns.renderer + + +class Node(object): + + """A Node is a set of rdatasets.""" + + __slots__ = ['rdatasets'] + + def __init__(self): + #: the set of rdatsets, represented as a list. + self.rdatasets = [] + + def to_text(self, name, **kw): + """Convert a node to text format. + + Each rdataset at the node is printed. Any keyword arguments + to this method are passed on to the rdataset's to_text() method. + + *name*, a ``dns.name.Name`` or ``text``, the owner name of the rdatasets. + + Returns a ``text``. + """ + + s = StringIO() + for rds in self.rdatasets: + if len(rds) > 0: + s.write(rds.to_text(name, **kw)) + s.write(u'\n') + return s.getvalue()[:-1] + + def __repr__(self): + return '' + + def __eq__(self, other): + # + # This is inefficient. Good thing we don't need to do it much. + # + for rd in self.rdatasets: + if rd not in other.rdatasets: + return False + for rd in other.rdatasets: + if rd not in self.rdatasets: + return False + return True + + def __ne__(self, other): + return not self.__eq__(other) + + def __len__(self): + return len(self.rdatasets) + + def __iter__(self): + return iter(self.rdatasets) + + def find_rdataset(self, rdclass, rdtype, covers=dns.rdatatype.NONE, + create=False): + """Find an rdataset matching the specified properties in the + current node. + + *rdclass*, an ``int``, the class of the rdataset. + + *rdtype*, an ``int``, the type of the rdataset. + + *covers*, an ``int``, the covered type. Usually this value is + dns.rdatatype.NONE, but if the rdtype is dns.rdatatype.SIG or + dns.rdatatype.RRSIG, then the covers value will be the rdata + type the SIG/RRSIG covers. The library treats the SIG and RRSIG + types as if they were a family of + types, e.g. RRSIG(A), RRSIG(NS), RRSIG(SOA). This makes RRSIGs much + easier to work with than if RRSIGs covering different rdata + types were aggregated into a single RRSIG rdataset. + + *create*, a ``bool``. If True, create the rdataset if it is not found. + + Raises ``KeyError`` if an rdataset of the desired type and class does + not exist and *create* is not ``True``. + + Returns a ``dns.rdataset.Rdataset``. + """ + + for rds in self.rdatasets: + if rds.match(rdclass, rdtype, covers): + return rds + if not create: + raise KeyError + rds = dns.rdataset.Rdataset(rdclass, rdtype) + self.rdatasets.append(rds) + return rds + + def get_rdataset(self, rdclass, rdtype, covers=dns.rdatatype.NONE, + create=False): + """Get an rdataset matching the specified properties in the + current node. + + None is returned if an rdataset of the specified type and + class does not exist and *create* is not ``True``. + + *rdclass*, an ``int``, the class of the rdataset. + + *rdtype*, an ``int``, the type of the rdataset. + + *covers*, an ``int``, the covered type. Usually this value is + dns.rdatatype.NONE, but if the rdtype is dns.rdatatype.SIG or + dns.rdatatype.RRSIG, then the covers value will be the rdata + type the SIG/RRSIG covers. The library treats the SIG and RRSIG + types as if they were a family of + types, e.g. RRSIG(A), RRSIG(NS), RRSIG(SOA). This makes RRSIGs much + easier to work with than if RRSIGs covering different rdata + types were aggregated into a single RRSIG rdataset. + + *create*, a ``bool``. If True, create the rdataset if it is not found. + + Returns a ``dns.rdataset.Rdataset`` or ``None``. + """ + + try: + rds = self.find_rdataset(rdclass, rdtype, covers, create) + except KeyError: + rds = None + return rds + + def delete_rdataset(self, rdclass, rdtype, covers=dns.rdatatype.NONE): + """Delete the rdataset matching the specified properties in the + current node. + + If a matching rdataset does not exist, it is not an error. + + *rdclass*, an ``int``, the class of the rdataset. + + *rdtype*, an ``int``, the type of the rdataset. + + *covers*, an ``int``, the covered type. + """ + + rds = self.get_rdataset(rdclass, rdtype, covers) + if rds is not None: + self.rdatasets.remove(rds) + + def replace_rdataset(self, replacement): + """Replace an rdataset. + + It is not an error if there is no rdataset matching *replacement*. + + Ownership of the *replacement* object is transferred to the node; + in other words, this method does not store a copy of *replacement* + at the node, it stores *replacement* itself. + + *replacement*, a ``dns.rdataset.Rdataset``. + + Raises ``ValueError`` if *replacement* is not a + ``dns.rdataset.Rdataset``. + """ + + if not isinstance(replacement, dns.rdataset.Rdataset): + raise ValueError('replacement is not an rdataset') + self.delete_rdataset(replacement.rdclass, replacement.rdtype, + replacement.covers) + self.rdatasets.append(replacement) diff --git a/openpype/vendor/python/python_2/dns/opcode.py b/openpype/vendor/python/python_2/dns/opcode.py new file mode 100644 index 0000000000..c0735ba47b --- /dev/null +++ b/openpype/vendor/python/python_2/dns/opcode.py @@ -0,0 +1,119 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Opcodes.""" + +import dns.exception + +#: Query +QUERY = 0 +#: Inverse Query (historical) +IQUERY = 1 +#: Server Status (unspecified and unimplemented anywhere) +STATUS = 2 +#: Notify +NOTIFY = 4 +#: Dynamic Update +UPDATE = 5 + +_by_text = { + 'QUERY': QUERY, + 'IQUERY': IQUERY, + 'STATUS': STATUS, + 'NOTIFY': NOTIFY, + 'UPDATE': UPDATE +} + +# We construct the inverse mapping programmatically to ensure that we +# cannot make any mistakes (e.g. omissions, cut-and-paste errors) that +# would cause the mapping not to be true inverse. + +_by_value = {y: x for x, y in _by_text.items()} + + +class UnknownOpcode(dns.exception.DNSException): + """An DNS opcode is unknown.""" + + +def from_text(text): + """Convert text into an opcode. + + *text*, a ``text``, the textual opcode + + Raises ``dns.opcode.UnknownOpcode`` if the opcode is unknown. + + Returns an ``int``. + """ + + if text.isdigit(): + value = int(text) + if value >= 0 and value <= 15: + return value + value = _by_text.get(text.upper()) + if value is None: + raise UnknownOpcode + return value + + +def from_flags(flags): + """Extract an opcode from DNS message flags. + + *flags*, an ``int``, the DNS flags. + + Returns an ``int``. + """ + + return (flags & 0x7800) >> 11 + + +def to_flags(value): + """Convert an opcode to a value suitable for ORing into DNS message + flags. + + *value*, an ``int``, the DNS opcode value. + + Returns an ``int``. + """ + + return (value << 11) & 0x7800 + + +def to_text(value): + """Convert an opcode to text. + + *value*, an ``int`` the opcode value, + + Raises ``dns.opcode.UnknownOpcode`` if the opcode is unknown. + + Returns a ``text``. + """ + + text = _by_value.get(value) + if text is None: + text = str(value) + return text + + +def is_update(flags): + """Is the opcode in flags UPDATE? + + *flags*, an ``int``, the DNS message flags. + + Returns a ``bool``. + """ + + return from_flags(flags) == UPDATE diff --git a/openpype/vendor/python/python_2/dns/py.typed b/openpype/vendor/python/python_2/dns/py.typed new file mode 100644 index 0000000000..e69de29bb2 diff --git a/openpype/vendor/python/python_2/dns/query.py b/openpype/vendor/python/python_2/dns/query.py new file mode 100644 index 0000000000..c0c517ccd4 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/query.py @@ -0,0 +1,683 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Talk to a DNS server.""" + +from __future__ import generators + +import errno +import select +import socket +import struct +import sys +import time + +import dns.exception +import dns.inet +import dns.name +import dns.message +import dns.rcode +import dns.rdataclass +import dns.rdatatype +from ._compat import long, string_types, PY3 + +if PY3: + select_error = OSError +else: + select_error = select.error + +# Function used to create a socket. Can be overridden if needed in special +# situations. +socket_factory = socket.socket + +class UnexpectedSource(dns.exception.DNSException): + """A DNS query response came from an unexpected address or port.""" + + +class BadResponse(dns.exception.FormError): + """A DNS query response does not respond to the question asked.""" + + +class TransferError(dns.exception.DNSException): + """A zone transfer response got a non-zero rcode.""" + + def __init__(self, rcode): + message = 'Zone transfer error: %s' % dns.rcode.to_text(rcode) + super(TransferError, self).__init__(message) + self.rcode = rcode + + +def _compute_expiration(timeout): + if timeout is None: + return None + else: + return time.time() + timeout + +# This module can use either poll() or select() as the "polling backend". +# +# A backend function takes an fd, bools for readability, writablity, and +# error detection, and a timeout. + +def _poll_for(fd, readable, writable, error, timeout): + """Poll polling backend.""" + + event_mask = 0 + if readable: + event_mask |= select.POLLIN + if writable: + event_mask |= select.POLLOUT + if error: + event_mask |= select.POLLERR + + pollable = select.poll() + pollable.register(fd, event_mask) + + if timeout: + event_list = pollable.poll(long(timeout * 1000)) + else: + event_list = pollable.poll() + + return bool(event_list) + + +def _select_for(fd, readable, writable, error, timeout): + """Select polling backend.""" + + rset, wset, xset = [], [], [] + + if readable: + rset = [fd] + if writable: + wset = [fd] + if error: + xset = [fd] + + if timeout is None: + (rcount, wcount, xcount) = select.select(rset, wset, xset) + else: + (rcount, wcount, xcount) = select.select(rset, wset, xset, timeout) + + return bool((rcount or wcount or xcount)) + + +def _wait_for(fd, readable, writable, error, expiration): + # Use the selected polling backend to wait for any of the specified + # events. An "expiration" absolute time is converted into a relative + # timeout. + + done = False + while not done: + if expiration is None: + timeout = None + else: + timeout = expiration - time.time() + if timeout <= 0.0: + raise dns.exception.Timeout + try: + if not _polling_backend(fd, readable, writable, error, timeout): + raise dns.exception.Timeout + except select_error as e: + if e.args[0] != errno.EINTR: + raise e + done = True + + +def _set_polling_backend(fn): + # Internal API. Do not use. + + global _polling_backend + + _polling_backend = fn + +if hasattr(select, 'poll'): + # Prefer poll() on platforms that support it because it has no + # limits on the maximum value of a file descriptor (plus it will + # be more efficient for high values). + _polling_backend = _poll_for +else: + _polling_backend = _select_for + + +def _wait_for_readable(s, expiration): + _wait_for(s, True, False, True, expiration) + + +def _wait_for_writable(s, expiration): + _wait_for(s, False, True, True, expiration) + + +def _addresses_equal(af, a1, a2): + # Convert the first value of the tuple, which is a textual format + # address into binary form, so that we are not confused by different + # textual representations of the same address + try: + n1 = dns.inet.inet_pton(af, a1[0]) + n2 = dns.inet.inet_pton(af, a2[0]) + except dns.exception.SyntaxError: + return False + return n1 == n2 and a1[1:] == a2[1:] + + +def _destination_and_source(af, where, port, source, source_port): + # Apply defaults and compute destination and source tuples + # suitable for use in connect(), sendto(), or bind(). + if af is None: + try: + af = dns.inet.af_for_address(where) + except Exception: + af = dns.inet.AF_INET + if af == dns.inet.AF_INET: + destination = (where, port) + if source is not None or source_port != 0: + if source is None: + source = '0.0.0.0' + source = (source, source_port) + elif af == dns.inet.AF_INET6: + destination = (where, port, 0, 0) + if source is not None or source_port != 0: + if source is None: + source = '::' + source = (source, source_port, 0, 0) + return (af, destination, source) + + +def send_udp(sock, what, destination, expiration=None): + """Send a DNS message to the specified UDP socket. + + *sock*, a ``socket``. + + *what*, a ``binary`` or ``dns.message.Message``, the message to send. + + *destination*, a destination tuple appropriate for the address family + of the socket, specifying where to send the query. + + *expiration*, a ``float`` or ``None``, the absolute time at which + a timeout exception should be raised. If ``None``, no timeout will + occur. + + Returns an ``(int, float)`` tuple of bytes sent and the sent time. + """ + + if isinstance(what, dns.message.Message): + what = what.to_wire() + _wait_for_writable(sock, expiration) + sent_time = time.time() + n = sock.sendto(what, destination) + return (n, sent_time) + + +def receive_udp(sock, destination, expiration=None, + ignore_unexpected=False, one_rr_per_rrset=False, + keyring=None, request_mac=b'', ignore_trailing=False): + """Read a DNS message from a UDP socket. + + *sock*, a ``socket``. + + *destination*, a destination tuple appropriate for the address family + of the socket, specifying where the associated query was sent. + + *expiration*, a ``float`` or ``None``, the absolute time at which + a timeout exception should be raised. If ``None``, no timeout will + occur. + + *ignore_unexpected*, a ``bool``. If ``True``, ignore responses from + unexpected sources. + + *one_rr_per_rrset*, a ``bool``. If ``True``, put each RR into its own + RRset. + + *keyring*, a ``dict``, the keyring to use for TSIG. + + *request_mac*, a ``binary``, the MAC of the request (for TSIG). + + *ignore_trailing*, a ``bool``. If ``True``, ignore trailing + junk at end of the received message. + + Raises if the message is malformed, if network errors occur, of if + there is a timeout. + + Returns a ``dns.message.Message`` object. + """ + + wire = b'' + while 1: + _wait_for_readable(sock, expiration) + (wire, from_address) = sock.recvfrom(65535) + if _addresses_equal(sock.family, from_address, destination) or \ + (dns.inet.is_multicast(destination[0]) and + from_address[1:] == destination[1:]): + break + if not ignore_unexpected: + raise UnexpectedSource('got a response from ' + '%s instead of %s' % (from_address, + destination)) + received_time = time.time() + r = dns.message.from_wire(wire, keyring=keyring, request_mac=request_mac, + one_rr_per_rrset=one_rr_per_rrset, + ignore_trailing=ignore_trailing) + return (r, received_time) + +def udp(q, where, timeout=None, port=53, af=None, source=None, source_port=0, + ignore_unexpected=False, one_rr_per_rrset=False, ignore_trailing=False): + """Return the response obtained after sending a query via UDP. + + *q*, a ``dns.message.Message``, the query to send + + *where*, a ``text`` containing an IPv4 or IPv6 address, where + to send the message. + + *timeout*, a ``float`` or ``None``, the number of seconds to wait before the + query times out. If ``None``, the default, wait forever. + + *port*, an ``int``, the port send the message to. The default is 53. + + *af*, an ``int``, the address family to use. The default is ``None``, + which causes the address family to use to be inferred from the form of + *where*. If the inference attempt fails, AF_INET is used. This + parameter is historical; you need never set it. + + *source*, a ``text`` containing an IPv4 or IPv6 address, specifying + the source address. The default is the wildcard address. + + *source_port*, an ``int``, the port from which to send the message. + The default is 0. + + *ignore_unexpected*, a ``bool``. If ``True``, ignore responses from + unexpected sources. + + *one_rr_per_rrset*, a ``bool``. If ``True``, put each RR into its own + RRset. + + *ignore_trailing*, a ``bool``. If ``True``, ignore trailing + junk at end of the received message. + + Returns a ``dns.message.Message``. + """ + + wire = q.to_wire() + (af, destination, source) = _destination_and_source(af, where, port, + source, source_port) + s = socket_factory(af, socket.SOCK_DGRAM, 0) + received_time = None + sent_time = None + try: + expiration = _compute_expiration(timeout) + s.setblocking(0) + if source is not None: + s.bind(source) + (_, sent_time) = send_udp(s, wire, destination, expiration) + (r, received_time) = receive_udp(s, destination, expiration, + ignore_unexpected, one_rr_per_rrset, + q.keyring, q.mac, ignore_trailing) + finally: + if sent_time is None or received_time is None: + response_time = 0 + else: + response_time = received_time - sent_time + s.close() + r.time = response_time + if not q.is_response(r): + raise BadResponse + return r + + +def _net_read(sock, count, expiration): + """Read the specified number of bytes from sock. Keep trying until we + either get the desired amount, or we hit EOF. + A Timeout exception will be raised if the operation is not completed + by the expiration time. + """ + s = b'' + while count > 0: + _wait_for_readable(sock, expiration) + n = sock.recv(count) + if n == b'': + raise EOFError + count = count - len(n) + s = s + n + return s + + +def _net_write(sock, data, expiration): + """Write the specified data to the socket. + A Timeout exception will be raised if the operation is not completed + by the expiration time. + """ + current = 0 + l = len(data) + while current < l: + _wait_for_writable(sock, expiration) + current += sock.send(data[current:]) + + +def send_tcp(sock, what, expiration=None): + """Send a DNS message to the specified TCP socket. + + *sock*, a ``socket``. + + *what*, a ``binary`` or ``dns.message.Message``, the message to send. + + *expiration*, a ``float`` or ``None``, the absolute time at which + a timeout exception should be raised. If ``None``, no timeout will + occur. + + Returns an ``(int, float)`` tuple of bytes sent and the sent time. + """ + + if isinstance(what, dns.message.Message): + what = what.to_wire() + l = len(what) + # copying the wire into tcpmsg is inefficient, but lets us + # avoid writev() or doing a short write that would get pushed + # onto the net + tcpmsg = struct.pack("!H", l) + what + _wait_for_writable(sock, expiration) + sent_time = time.time() + _net_write(sock, tcpmsg, expiration) + return (len(tcpmsg), sent_time) + +def receive_tcp(sock, expiration=None, one_rr_per_rrset=False, + keyring=None, request_mac=b'', ignore_trailing=False): + """Read a DNS message from a TCP socket. + + *sock*, a ``socket``. + + *expiration*, a ``float`` or ``None``, the absolute time at which + a timeout exception should be raised. If ``None``, no timeout will + occur. + + *one_rr_per_rrset*, a ``bool``. If ``True``, put each RR into its own + RRset. + + *keyring*, a ``dict``, the keyring to use for TSIG. + + *request_mac*, a ``binary``, the MAC of the request (for TSIG). + + *ignore_trailing*, a ``bool``. If ``True``, ignore trailing + junk at end of the received message. + + Raises if the message is malformed, if network errors occur, of if + there is a timeout. + + Returns a ``dns.message.Message`` object. + """ + + ldata = _net_read(sock, 2, expiration) + (l,) = struct.unpack("!H", ldata) + wire = _net_read(sock, l, expiration) + received_time = time.time() + r = dns.message.from_wire(wire, keyring=keyring, request_mac=request_mac, + one_rr_per_rrset=one_rr_per_rrset, + ignore_trailing=ignore_trailing) + return (r, received_time) + +def _connect(s, address): + try: + s.connect(address) + except socket.error: + (ty, v) = sys.exc_info()[:2] + + if hasattr(v, 'errno'): + v_err = v.errno + else: + v_err = v[0] + if v_err not in [errno.EINPROGRESS, errno.EWOULDBLOCK, errno.EALREADY]: + raise v + + +def tcp(q, where, timeout=None, port=53, af=None, source=None, source_port=0, + one_rr_per_rrset=False, ignore_trailing=False): + """Return the response obtained after sending a query via TCP. + + *q*, a ``dns.message.Message``, the query to send + + *where*, a ``text`` containing an IPv4 or IPv6 address, where + to send the message. + + *timeout*, a ``float`` or ``None``, the number of seconds to wait before the + query times out. If ``None``, the default, wait forever. + + *port*, an ``int``, the port send the message to. The default is 53. + + *af*, an ``int``, the address family to use. The default is ``None``, + which causes the address family to use to be inferred from the form of + *where*. If the inference attempt fails, AF_INET is used. This + parameter is historical; you need never set it. + + *source*, a ``text`` containing an IPv4 or IPv6 address, specifying + the source address. The default is the wildcard address. + + *source_port*, an ``int``, the port from which to send the message. + The default is 0. + + *one_rr_per_rrset*, a ``bool``. If ``True``, put each RR into its own + RRset. + + *ignore_trailing*, a ``bool``. If ``True``, ignore trailing + junk at end of the received message. + + Returns a ``dns.message.Message``. + """ + + wire = q.to_wire() + (af, destination, source) = _destination_and_source(af, where, port, + source, source_port) + s = socket_factory(af, socket.SOCK_STREAM, 0) + begin_time = None + received_time = None + try: + expiration = _compute_expiration(timeout) + s.setblocking(0) + begin_time = time.time() + if source is not None: + s.bind(source) + _connect(s, destination) + send_tcp(s, wire, expiration) + (r, received_time) = receive_tcp(s, expiration, one_rr_per_rrset, + q.keyring, q.mac, ignore_trailing) + finally: + if begin_time is None or received_time is None: + response_time = 0 + else: + response_time = received_time - begin_time + s.close() + r.time = response_time + if not q.is_response(r): + raise BadResponse + return r + + +def xfr(where, zone, rdtype=dns.rdatatype.AXFR, rdclass=dns.rdataclass.IN, + timeout=None, port=53, keyring=None, keyname=None, relativize=True, + af=None, lifetime=None, source=None, source_port=0, serial=0, + use_udp=False, keyalgorithm=dns.tsig.default_algorithm): + """Return a generator for the responses to a zone transfer. + + *where*. If the inference attempt fails, AF_INET is used. This + parameter is historical; you need never set it. + + *zone*, a ``dns.name.Name`` or ``text``, the name of the zone to transfer. + + *rdtype*, an ``int`` or ``text``, the type of zone transfer. The + default is ``dns.rdatatype.AXFR``. ``dns.rdatatype.IXFR`` can be + used to do an incremental transfer instead. + + *rdclass*, an ``int`` or ``text``, the class of the zone transfer. + The default is ``dns.rdataclass.IN``. + + *timeout*, a ``float``, the number of seconds to wait for each + response message. If None, the default, wait forever. + + *port*, an ``int``, the port send the message to. The default is 53. + + *keyring*, a ``dict``, the keyring to use for TSIG. + + *keyname*, a ``dns.name.Name`` or ``text``, the name of the TSIG + key to use. + + *relativize*, a ``bool``. If ``True``, all names in the zone will be + relativized to the zone origin. It is essential that the + relativize setting matches the one specified to + ``dns.zone.from_xfr()`` if using this generator to make a zone. + + *af*, an ``int``, the address family to use. The default is ``None``, + which causes the address family to use to be inferred from the form of + *where*. If the inference attempt fails, AF_INET is used. This + parameter is historical; you need never set it. + + *lifetime*, a ``float``, the total number of seconds to spend + doing the transfer. If ``None``, the default, then there is no + limit on the time the transfer may take. + + *source*, a ``text`` containing an IPv4 or IPv6 address, specifying + the source address. The default is the wildcard address. + + *source_port*, an ``int``, the port from which to send the message. + The default is 0. + + *serial*, an ``int``, the SOA serial number to use as the base for + an IXFR diff sequence (only meaningful if *rdtype* is + ``dns.rdatatype.IXFR``). + + *use_udp*, a ``bool``. If ``True``, use UDP (only meaningful for IXFR). + + *keyalgorithm*, a ``dns.name.Name`` or ``text``, the TSIG algorithm to use. + + Raises on errors, and so does the generator. + + Returns a generator of ``dns.message.Message`` objects. + """ + + if isinstance(zone, string_types): + zone = dns.name.from_text(zone) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + q = dns.message.make_query(zone, rdtype, rdclass) + if rdtype == dns.rdatatype.IXFR: + rrset = dns.rrset.from_text(zone, 0, 'IN', 'SOA', + '. . %u 0 0 0 0' % serial) + q.authority.append(rrset) + if keyring is not None: + q.use_tsig(keyring, keyname, algorithm=keyalgorithm) + wire = q.to_wire() + (af, destination, source) = _destination_and_source(af, where, port, + source, source_port) + if use_udp: + if rdtype != dns.rdatatype.IXFR: + raise ValueError('cannot do a UDP AXFR') + s = socket_factory(af, socket.SOCK_DGRAM, 0) + else: + s = socket_factory(af, socket.SOCK_STREAM, 0) + s.setblocking(0) + if source is not None: + s.bind(source) + expiration = _compute_expiration(lifetime) + _connect(s, destination) + l = len(wire) + if use_udp: + _wait_for_writable(s, expiration) + s.send(wire) + else: + tcpmsg = struct.pack("!H", l) + wire + _net_write(s, tcpmsg, expiration) + done = False + delete_mode = True + expecting_SOA = False + soa_rrset = None + if relativize: + origin = zone + oname = dns.name.empty + else: + origin = None + oname = zone + tsig_ctx = None + first = True + while not done: + mexpiration = _compute_expiration(timeout) + if mexpiration is None or mexpiration > expiration: + mexpiration = expiration + if use_udp: + _wait_for_readable(s, expiration) + (wire, from_address) = s.recvfrom(65535) + else: + ldata = _net_read(s, 2, mexpiration) + (l,) = struct.unpack("!H", ldata) + wire = _net_read(s, l, mexpiration) + is_ixfr = (rdtype == dns.rdatatype.IXFR) + r = dns.message.from_wire(wire, keyring=q.keyring, request_mac=q.mac, + xfr=True, origin=origin, tsig_ctx=tsig_ctx, + multi=True, first=first, + one_rr_per_rrset=is_ixfr) + rcode = r.rcode() + if rcode != dns.rcode.NOERROR: + raise TransferError(rcode) + tsig_ctx = r.tsig_ctx + first = False + answer_index = 0 + if soa_rrset is None: + if not r.answer or r.answer[0].name != oname: + raise dns.exception.FormError( + "No answer or RRset not for qname") + rrset = r.answer[0] + if rrset.rdtype != dns.rdatatype.SOA: + raise dns.exception.FormError("first RRset is not an SOA") + answer_index = 1 + soa_rrset = rrset.copy() + if rdtype == dns.rdatatype.IXFR: + if soa_rrset[0].serial <= serial: + # + # We're already up-to-date. + # + done = True + else: + expecting_SOA = True + # + # Process SOAs in the answer section (other than the initial + # SOA in the first message). + # + for rrset in r.answer[answer_index:]: + if done: + raise dns.exception.FormError("answers after final SOA") + if rrset.rdtype == dns.rdatatype.SOA and rrset.name == oname: + if expecting_SOA: + if rrset[0].serial != serial: + raise dns.exception.FormError( + "IXFR base serial mismatch") + expecting_SOA = False + elif rdtype == dns.rdatatype.IXFR: + delete_mode = not delete_mode + # + # If this SOA RRset is equal to the first we saw then we're + # finished. If this is an IXFR we also check that we're seeing + # the record in the expected part of the response. + # + if rrset == soa_rrset and \ + (rdtype == dns.rdatatype.AXFR or + (rdtype == dns.rdatatype.IXFR and delete_mode)): + done = True + elif expecting_SOA: + # + # We made an IXFR request and are expecting another + # SOA RR, but saw something else, so this must be an + # AXFR response. + # + rdtype = dns.rdatatype.AXFR + expecting_SOA = False + if done and q.keyring and not r.had_tsig: + raise dns.exception.FormError("missing TSIG") + yield r + s.close() diff --git a/openpype/vendor/python/python_2/dns/rcode.py b/openpype/vendor/python/python_2/dns/rcode.py new file mode 100644 index 0000000000..5191e1b18c --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rcode.py @@ -0,0 +1,144 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Result Codes.""" + +import dns.exception +from ._compat import long + +#: No error +NOERROR = 0 +#: Form error +FORMERR = 1 +#: Server failure +SERVFAIL = 2 +#: Name does not exist ("Name Error" in RFC 1025 terminology). +NXDOMAIN = 3 +#: Not implemented +NOTIMP = 4 +#: Refused +REFUSED = 5 +#: Name exists. +YXDOMAIN = 6 +#: RRset exists. +YXRRSET = 7 +#: RRset does not exist. +NXRRSET = 8 +#: Not authoritative. +NOTAUTH = 9 +#: Name not in zone. +NOTZONE = 10 +#: Bad EDNS version. +BADVERS = 16 + +_by_text = { + 'NOERROR': NOERROR, + 'FORMERR': FORMERR, + 'SERVFAIL': SERVFAIL, + 'NXDOMAIN': NXDOMAIN, + 'NOTIMP': NOTIMP, + 'REFUSED': REFUSED, + 'YXDOMAIN': YXDOMAIN, + 'YXRRSET': YXRRSET, + 'NXRRSET': NXRRSET, + 'NOTAUTH': NOTAUTH, + 'NOTZONE': NOTZONE, + 'BADVERS': BADVERS +} + +# We construct the inverse mapping programmatically to ensure that we +# cannot make any mistakes (e.g. omissions, cut-and-paste errors) that +# would cause the mapping not to be a true inverse. + +_by_value = {y: x for x, y in _by_text.items()} + + +class UnknownRcode(dns.exception.DNSException): + """A DNS rcode is unknown.""" + + +def from_text(text): + """Convert text into an rcode. + + *text*, a ``text``, the textual rcode or an integer in textual form. + + Raises ``dns.rcode.UnknownRcode`` if the rcode mnemonic is unknown. + + Returns an ``int``. + """ + + if text.isdigit(): + v = int(text) + if v >= 0 and v <= 4095: + return v + v = _by_text.get(text.upper()) + if v is None: + raise UnknownRcode + return v + + +def from_flags(flags, ednsflags): + """Return the rcode value encoded by flags and ednsflags. + + *flags*, an ``int``, the DNS flags field. + + *ednsflags*, an ``int``, the EDNS flags field. + + Raises ``ValueError`` if rcode is < 0 or > 4095 + + Returns an ``int``. + """ + + value = (flags & 0x000f) | ((ednsflags >> 20) & 0xff0) + if value < 0 or value > 4095: + raise ValueError('rcode must be >= 0 and <= 4095') + return value + + +def to_flags(value): + """Return a (flags, ednsflags) tuple which encodes the rcode. + + *value*, an ``int``, the rcode. + + Raises ``ValueError`` if rcode is < 0 or > 4095. + + Returns an ``(int, int)`` tuple. + """ + + if value < 0 or value > 4095: + raise ValueError('rcode must be >= 0 and <= 4095') + v = value & 0xf + ev = long(value & 0xff0) << 20 + return (v, ev) + + +def to_text(value): + """Convert rcode into text. + + *value*, and ``int``, the rcode. + + Raises ``ValueError`` if rcode is < 0 or > 4095. + + Returns a ``text``. + """ + + if value < 0 or value > 4095: + raise ValueError('rcode must be >= 0 and <= 4095') + text = _by_value.get(value) + if text is None: + text = str(value) + return text diff --git a/openpype/vendor/python/python_2/dns/rdata.py b/openpype/vendor/python/python_2/dns/rdata.py new file mode 100644 index 0000000000..ea1971dc5f --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdata.py @@ -0,0 +1,456 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS rdata.""" + +from io import BytesIO +import base64 +import binascii + +import dns.exception +import dns.name +import dns.rdataclass +import dns.rdatatype +import dns.tokenizer +import dns.wiredata +from ._compat import xrange, string_types, text_type + +try: + import threading as _threading +except ImportError: + import dummy_threading as _threading + +_hex_chunksize = 32 + + +def _hexify(data, chunksize=_hex_chunksize): + """Convert a binary string into its hex encoding, broken up into chunks + of chunksize characters separated by a space. + """ + + line = binascii.hexlify(data) + return b' '.join([line[i:i + chunksize] + for i + in range(0, len(line), chunksize)]).decode() + +_base64_chunksize = 32 + + +def _base64ify(data, chunksize=_base64_chunksize): + """Convert a binary string into its base64 encoding, broken up into chunks + of chunksize characters separated by a space. + """ + + line = base64.b64encode(data) + return b' '.join([line[i:i + chunksize] + for i + in range(0, len(line), chunksize)]).decode() + +__escaped = bytearray(b'"\\') + +def _escapify(qstring): + """Escape the characters in a quoted string which need it.""" + + if isinstance(qstring, text_type): + qstring = qstring.encode() + if not isinstance(qstring, bytearray): + qstring = bytearray(qstring) + + text = '' + for c in qstring: + if c in __escaped: + text += '\\' + chr(c) + elif c >= 0x20 and c < 0x7F: + text += chr(c) + else: + text += '\\%03d' % c + return text + + +def _truncate_bitmap(what): + """Determine the index of greatest byte that isn't all zeros, and + return the bitmap that contains all the bytes less than that index. + """ + + for i in xrange(len(what) - 1, -1, -1): + if what[i] != 0: + return what[0: i + 1] + return what[0:1] + + +class Rdata(object): + """Base class for all DNS rdata types.""" + + __slots__ = ['rdclass', 'rdtype'] + + def __init__(self, rdclass, rdtype): + """Initialize an rdata. + + *rdclass*, an ``int`` is the rdataclass of the Rdata. + *rdtype*, an ``int`` is the rdatatype of the Rdata. + """ + + self.rdclass = rdclass + self.rdtype = rdtype + + def covers(self): + """Return the type a Rdata covers. + + DNS SIG/RRSIG rdatas apply to a specific type; this type is + returned by the covers() function. If the rdata type is not + SIG or RRSIG, dns.rdatatype.NONE is returned. This is useful when + creating rdatasets, allowing the rdataset to contain only RRSIGs + of a particular type, e.g. RRSIG(NS). + + Returns an ``int``. + """ + + return dns.rdatatype.NONE + + def extended_rdatatype(self): + """Return a 32-bit type value, the least significant 16 bits of + which are the ordinary DNS type, and the upper 16 bits of which are + the "covered" type, if any. + + Returns an ``int``. + """ + + return self.covers() << 16 | self.rdtype + + def to_text(self, origin=None, relativize=True, **kw): + """Convert an rdata to text format. + + Returns a ``text``. + """ + + raise NotImplementedError + + def to_wire(self, file, compress=None, origin=None): + """Convert an rdata to wire format. + + Returns a ``binary``. + """ + + raise NotImplementedError + + def to_digestable(self, origin=None): + """Convert rdata to a format suitable for digesting in hashes. This + is also the DNSSEC canonical form. + + Returns a ``binary``. + """ + + f = BytesIO() + self.to_wire(f, None, origin) + return f.getvalue() + + def validate(self): + """Check that the current contents of the rdata's fields are + valid. + + If you change an rdata by assigning to its fields, + it is a good idea to call validate() when you are done making + changes. + + Raises various exceptions if there are problems. + + Returns ``None``. + """ + + dns.rdata.from_text(self.rdclass, self.rdtype, self.to_text()) + + def __repr__(self): + covers = self.covers() + if covers == dns.rdatatype.NONE: + ctext = '' + else: + ctext = '(' + dns.rdatatype.to_text(covers) + ')' + return '' + + def __str__(self): + return self.to_text() + + def _cmp(self, other): + """Compare an rdata with another rdata of the same rdtype and + rdclass. + + Return < 0 if self < other in the DNSSEC ordering, 0 if self + == other, and > 0 if self > other. + + """ + our = self.to_digestable(dns.name.root) + their = other.to_digestable(dns.name.root) + if our == their: + return 0 + elif our > their: + return 1 + else: + return -1 + + def __eq__(self, other): + if not isinstance(other, Rdata): + return False + if self.rdclass != other.rdclass or self.rdtype != other.rdtype: + return False + return self._cmp(other) == 0 + + def __ne__(self, other): + if not isinstance(other, Rdata): + return True + if self.rdclass != other.rdclass or self.rdtype != other.rdtype: + return True + return self._cmp(other) != 0 + + def __lt__(self, other): + if not isinstance(other, Rdata) or \ + self.rdclass != other.rdclass or self.rdtype != other.rdtype: + + return NotImplemented + return self._cmp(other) < 0 + + def __le__(self, other): + if not isinstance(other, Rdata) or \ + self.rdclass != other.rdclass or self.rdtype != other.rdtype: + return NotImplemented + return self._cmp(other) <= 0 + + def __ge__(self, other): + if not isinstance(other, Rdata) or \ + self.rdclass != other.rdclass or self.rdtype != other.rdtype: + return NotImplemented + return self._cmp(other) >= 0 + + def __gt__(self, other): + if not isinstance(other, Rdata) or \ + self.rdclass != other.rdclass or self.rdtype != other.rdtype: + return NotImplemented + return self._cmp(other) > 0 + + def __hash__(self): + return hash(self.to_digestable(dns.name.root)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + raise NotImplementedError + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + raise NotImplementedError + + def choose_relativity(self, origin=None, relativize=True): + """Convert any domain names in the rdata to the specified + relativization. + """ + +class GenericRdata(Rdata): + + """Generic Rdata Class + + This class is used for rdata types for which we have no better + implementation. It implements the DNS "unknown RRs" scheme. + """ + + __slots__ = ['data'] + + def __init__(self, rdclass, rdtype, data): + super(GenericRdata, self).__init__(rdclass, rdtype) + self.data = data + + def to_text(self, origin=None, relativize=True, **kw): + return r'\# %d ' % len(self.data) + _hexify(self.data) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + token = tok.get() + if not token.is_identifier() or token.value != r'\#': + raise dns.exception.SyntaxError( + r'generic rdata does not start with \#') + length = tok.get_int() + chunks = [] + while 1: + token = tok.get() + if token.is_eol_or_eof(): + break + chunks.append(token.value.encode()) + hex = b''.join(chunks) + data = binascii.unhexlify(hex) + if len(data) != length: + raise dns.exception.SyntaxError( + 'generic rdata hex data has wrong length') + return cls(rdclass, rdtype, data) + + def to_wire(self, file, compress=None, origin=None): + file.write(self.data) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + return cls(rdclass, rdtype, wire[current: current + rdlen]) + +_rdata_modules = {} +_module_prefix = 'dns.rdtypes' +_import_lock = _threading.Lock() + +def get_rdata_class(rdclass, rdtype): + + def import_module(name): + with _import_lock: + mod = __import__(name) + components = name.split('.') + for comp in components[1:]: + mod = getattr(mod, comp) + return mod + + mod = _rdata_modules.get((rdclass, rdtype)) + rdclass_text = dns.rdataclass.to_text(rdclass) + rdtype_text = dns.rdatatype.to_text(rdtype) + rdtype_text = rdtype_text.replace('-', '_') + if not mod: + mod = _rdata_modules.get((dns.rdatatype.ANY, rdtype)) + if not mod: + try: + mod = import_module('.'.join([_module_prefix, + rdclass_text, rdtype_text])) + _rdata_modules[(rdclass, rdtype)] = mod + except ImportError: + try: + mod = import_module('.'.join([_module_prefix, + 'ANY', rdtype_text])) + _rdata_modules[(dns.rdataclass.ANY, rdtype)] = mod + except ImportError: + mod = None + if mod: + cls = getattr(mod, rdtype_text) + else: + cls = GenericRdata + return cls + + +def from_text(rdclass, rdtype, tok, origin=None, relativize=True): + """Build an rdata object from text format. + + This function attempts to dynamically load a class which + implements the specified rdata class and type. If there is no + class-and-type-specific implementation, the GenericRdata class + is used. + + Once a class is chosen, its from_text() class method is called + with the parameters to this function. + + If *tok* is a ``text``, then a tokenizer is created and the string + is used as its input. + + *rdclass*, an ``int``, the rdataclass. + + *rdtype*, an ``int``, the rdatatype. + + *tok*, a ``dns.tokenizer.Tokenizer`` or a ``text``. + + *origin*, a ``dns.name.Name`` (or ``None``), the + origin to use for relative names. + + *relativize*, a ``bool``. If true, name will be relativized to + the specified origin. + + Returns an instance of the chosen Rdata subclass. + """ + + if isinstance(tok, string_types): + tok = dns.tokenizer.Tokenizer(tok) + cls = get_rdata_class(rdclass, rdtype) + if cls != GenericRdata: + # peek at first token + token = tok.get() + tok.unget(token) + if token.is_identifier() and \ + token.value == r'\#': + # + # Known type using the generic syntax. Extract the + # wire form from the generic syntax, and then run + # from_wire on it. + # + rdata = GenericRdata.from_text(rdclass, rdtype, tok, origin, + relativize) + return from_wire(rdclass, rdtype, rdata.data, 0, len(rdata.data), + origin) + return cls.from_text(rdclass, rdtype, tok, origin, relativize) + + +def from_wire(rdclass, rdtype, wire, current, rdlen, origin=None): + """Build an rdata object from wire format + + This function attempts to dynamically load a class which + implements the specified rdata class and type. If there is no + class-and-type-specific implementation, the GenericRdata class + is used. + + Once a class is chosen, its from_wire() class method is called + with the parameters to this function. + + *rdclass*, an ``int``, the rdataclass. + + *rdtype*, an ``int``, the rdatatype. + + *wire*, a ``binary``, the wire-format message. + + *current*, an ``int``, the offset in wire of the beginning of + the rdata. + + *rdlen*, an ``int``, the length of the wire-format rdata + + *origin*, a ``dns.name.Name`` (or ``None``). If not ``None``, + then names will be relativized to this origin. + + Returns an instance of the chosen Rdata subclass. + """ + + wire = dns.wiredata.maybe_wrap(wire) + cls = get_rdata_class(rdclass, rdtype) + return cls.from_wire(rdclass, rdtype, wire, current, rdlen, origin) + + +class RdatatypeExists(dns.exception.DNSException): + """DNS rdatatype already exists.""" + supp_kwargs = {'rdclass', 'rdtype'} + fmt = "The rdata type with class {rdclass} and rdtype {rdtype} " + \ + "already exists." + + +def register_type(implementation, rdtype, rdtype_text, is_singleton=False, + rdclass=dns.rdataclass.IN): + """Dynamically register a module to handle an rdatatype. + + *implementation*, a module implementing the type in the usual dnspython + way. + + *rdtype*, an ``int``, the rdatatype to register. + + *rdtype_text*, a ``text``, the textual form of the rdatatype. + + *is_singleton*, a ``bool``, indicating if the type is a singleton (i.e. + RRsets of the type can have only one member.) + + *rdclass*, the rdataclass of the type, or ``dns.rdataclass.ANY`` if + it applies to all classes. + """ + + existing_cls = get_rdata_class(rdclass, rdtype) + if existing_cls != GenericRdata: + raise RdatatypeExists(rdclass=rdclass, rdtype=rdtype) + _rdata_modules[(rdclass, rdtype)] = implementation + dns.rdatatype.register_type(rdtype, rdtype_text, is_singleton) diff --git a/openpype/vendor/python/python_2/dns/rdataclass.py b/openpype/vendor/python/python_2/dns/rdataclass.py new file mode 100644 index 0000000000..b88aa85b7b --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdataclass.py @@ -0,0 +1,122 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Rdata Classes.""" + +import re + +import dns.exception + +RESERVED0 = 0 +IN = 1 +CH = 3 +HS = 4 +NONE = 254 +ANY = 255 + +_by_text = { + 'RESERVED0': RESERVED0, + 'IN': IN, + 'CH': CH, + 'HS': HS, + 'NONE': NONE, + 'ANY': ANY +} + +# We construct the inverse mapping programmatically to ensure that we +# cannot make any mistakes (e.g. omissions, cut-and-paste errors) that +# would cause the mapping not to be true inverse. + +_by_value = {y: x for x, y in _by_text.items()} + +# Now that we've built the inverse map, we can add class aliases to +# the _by_text mapping. + +_by_text.update({ + 'INTERNET': IN, + 'CHAOS': CH, + 'HESIOD': HS +}) + +_metaclasses = { + NONE: True, + ANY: True +} + +_unknown_class_pattern = re.compile('CLASS([0-9]+)$', re.I) + + +class UnknownRdataclass(dns.exception.DNSException): + """A DNS class is unknown.""" + + +def from_text(text): + """Convert text into a DNS rdata class value. + + The input text can be a defined DNS RR class mnemonic or + instance of the DNS generic class syntax. + + For example, "IN" and "CLASS1" will both result in a value of 1. + + Raises ``dns.rdatatype.UnknownRdataclass`` if the class is unknown. + + Raises ``ValueError`` if the rdata class value is not >= 0 and <= 65535. + + Returns an ``int``. + """ + + value = _by_text.get(text.upper()) + if value is None: + match = _unknown_class_pattern.match(text) + if match is None: + raise UnknownRdataclass + value = int(match.group(1)) + if value < 0 or value > 65535: + raise ValueError("class must be between >= 0 and <= 65535") + return value + + +def to_text(value): + """Convert a DNS rdata type value to text. + + If the value has a known mnemonic, it will be used, otherwise the + DNS generic class syntax will be used. + + Raises ``ValueError`` if the rdata class value is not >= 0 and <= 65535. + + Returns a ``str``. + """ + + if value < 0 or value > 65535: + raise ValueError("class must be between >= 0 and <= 65535") + text = _by_value.get(value) + if text is None: + text = 'CLASS' + repr(value) + return text + + +def is_metaclass(rdclass): + """True if the specified class is a metaclass. + + The currently defined metaclasses are ANY and NONE. + + *rdclass* is an ``int``. + """ + + if rdclass in _metaclasses: + return True + return False diff --git a/openpype/vendor/python/python_2/dns/rdataset.py b/openpype/vendor/python/python_2/dns/rdataset.py new file mode 100644 index 0000000000..f1afe24198 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdataset.py @@ -0,0 +1,347 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS rdatasets (an rdataset is a set of rdatas of a given type and class)""" + +import random +from io import StringIO +import struct + +import dns.exception +import dns.rdatatype +import dns.rdataclass +import dns.rdata +import dns.set +from ._compat import string_types + +# define SimpleSet here for backwards compatibility +SimpleSet = dns.set.Set + + +class DifferingCovers(dns.exception.DNSException): + """An attempt was made to add a DNS SIG/RRSIG whose covered type + is not the same as that of the other rdatas in the rdataset.""" + + +class IncompatibleTypes(dns.exception.DNSException): + """An attempt was made to add DNS RR data of an incompatible type.""" + + +class Rdataset(dns.set.Set): + + """A DNS rdataset.""" + + __slots__ = ['rdclass', 'rdtype', 'covers', 'ttl'] + + def __init__(self, rdclass, rdtype, covers=dns.rdatatype.NONE, ttl=0): + """Create a new rdataset of the specified class and type. + + *rdclass*, an ``int``, the rdataclass. + + *rdtype*, an ``int``, the rdatatype. + + *covers*, an ``int``, the covered rdatatype. + + *ttl*, an ``int``, the TTL. + """ + + super(Rdataset, self).__init__() + self.rdclass = rdclass + self.rdtype = rdtype + self.covers = covers + self.ttl = ttl + + def _clone(self): + obj = super(Rdataset, self)._clone() + obj.rdclass = self.rdclass + obj.rdtype = self.rdtype + obj.covers = self.covers + obj.ttl = self.ttl + return obj + + def update_ttl(self, ttl): + """Perform TTL minimization. + + Set the TTL of the rdataset to be the lesser of the set's current + TTL or the specified TTL. If the set contains no rdatas, set the TTL + to the specified TTL. + + *ttl*, an ``int``. + """ + + if len(self) == 0: + self.ttl = ttl + elif ttl < self.ttl: + self.ttl = ttl + + def add(self, rd, ttl=None): + """Add the specified rdata to the rdataset. + + If the optional *ttl* parameter is supplied, then + ``self.update_ttl(ttl)`` will be called prior to adding the rdata. + + *rd*, a ``dns.rdata.Rdata``, the rdata + + *ttl*, an ``int``, the TTL. + + Raises ``dns.rdataset.IncompatibleTypes`` if the type and class + do not match the type and class of the rdataset. + + Raises ``dns.rdataset.DifferingCovers`` if the type is a signature + type and the covered type does not match that of the rdataset. + """ + + # + # If we're adding a signature, do some special handling to + # check that the signature covers the same type as the + # other rdatas in this rdataset. If this is the first rdata + # in the set, initialize the covers field. + # + if self.rdclass != rd.rdclass or self.rdtype != rd.rdtype: + raise IncompatibleTypes + if ttl is not None: + self.update_ttl(ttl) + if self.rdtype == dns.rdatatype.RRSIG or \ + self.rdtype == dns.rdatatype.SIG: + covers = rd.covers() + if len(self) == 0 and self.covers == dns.rdatatype.NONE: + self.covers = covers + elif self.covers != covers: + raise DifferingCovers + if dns.rdatatype.is_singleton(rd.rdtype) and len(self) > 0: + self.clear() + super(Rdataset, self).add(rd) + + def union_update(self, other): + self.update_ttl(other.ttl) + super(Rdataset, self).union_update(other) + + def intersection_update(self, other): + self.update_ttl(other.ttl) + super(Rdataset, self).intersection_update(other) + + def update(self, other): + """Add all rdatas in other to self. + + *other*, a ``dns.rdataset.Rdataset``, the rdataset from which + to update. + """ + + self.update_ttl(other.ttl) + super(Rdataset, self).update(other) + + def __repr__(self): + if self.covers == 0: + ctext = '' + else: + ctext = '(' + dns.rdatatype.to_text(self.covers) + ')' + return '' + + def __str__(self): + return self.to_text() + + def __eq__(self, other): + if not isinstance(other, Rdataset): + return False + if self.rdclass != other.rdclass or \ + self.rdtype != other.rdtype or \ + self.covers != other.covers: + return False + return super(Rdataset, self).__eq__(other) + + def __ne__(self, other): + return not self.__eq__(other) + + def to_text(self, name=None, origin=None, relativize=True, + override_rdclass=None, **kw): + """Convert the rdataset into DNS master file format. + + See ``dns.name.Name.choose_relativity`` for more information + on how *origin* and *relativize* determine the way names + are emitted. + + Any additional keyword arguments are passed on to the rdata + ``to_text()`` method. + + *name*, a ``dns.name.Name``. If name is not ``None``, emit RRs with + *name* as the owner name. + + *origin*, a ``dns.name.Name`` or ``None``, the origin for relative + names. + + *relativize*, a ``bool``. If ``True``, names will be relativized + to *origin*. + """ + + if name is not None: + name = name.choose_relativity(origin, relativize) + ntext = str(name) + pad = ' ' + else: + ntext = '' + pad = '' + s = StringIO() + if override_rdclass is not None: + rdclass = override_rdclass + else: + rdclass = self.rdclass + if len(self) == 0: + # + # Empty rdatasets are used for the question section, and in + # some dynamic updates, so we don't need to print out the TTL + # (which is meaningless anyway). + # + s.write(u'{}{}{} {}\n'.format(ntext, pad, + dns.rdataclass.to_text(rdclass), + dns.rdatatype.to_text(self.rdtype))) + else: + for rd in self: + s.write(u'%s%s%d %s %s %s\n' % + (ntext, pad, self.ttl, dns.rdataclass.to_text(rdclass), + dns.rdatatype.to_text(self.rdtype), + rd.to_text(origin=origin, relativize=relativize, + **kw))) + # + # We strip off the final \n for the caller's convenience in printing + # + return s.getvalue()[:-1] + + def to_wire(self, name, file, compress=None, origin=None, + override_rdclass=None, want_shuffle=True): + """Convert the rdataset to wire format. + + *name*, a ``dns.name.Name`` is the owner name to use. + + *file* is the file where the name is emitted (typically a + BytesIO file). + + *compress*, a ``dict``, is the compression table to use. If + ``None`` (the default), names will not be compressed. + + *origin* is a ``dns.name.Name`` or ``None``. If the name is + relative and origin is not ``None``, then *origin* will be appended + to it. + + *override_rdclass*, an ``int``, is used as the class instead of the + class of the rdataset. This is useful when rendering rdatasets + associated with dynamic updates. + + *want_shuffle*, a ``bool``. If ``True``, then the order of the + Rdatas within the Rdataset will be shuffled before rendering. + + Returns an ``int``, the number of records emitted. + """ + + if override_rdclass is not None: + rdclass = override_rdclass + want_shuffle = False + else: + rdclass = self.rdclass + file.seek(0, 2) + if len(self) == 0: + name.to_wire(file, compress, origin) + stuff = struct.pack("!HHIH", self.rdtype, rdclass, 0, 0) + file.write(stuff) + return 1 + else: + if want_shuffle: + l = list(self) + random.shuffle(l) + else: + l = self + for rd in l: + name.to_wire(file, compress, origin) + stuff = struct.pack("!HHIH", self.rdtype, rdclass, + self.ttl, 0) + file.write(stuff) + start = file.tell() + rd.to_wire(file, compress, origin) + end = file.tell() + assert end - start < 65536 + file.seek(start - 2) + stuff = struct.pack("!H", end - start) + file.write(stuff) + file.seek(0, 2) + return len(self) + + def match(self, rdclass, rdtype, covers): + """Returns ``True`` if this rdataset matches the specified class, + type, and covers. + """ + if self.rdclass == rdclass and \ + self.rdtype == rdtype and \ + self.covers == covers: + return True + return False + + +def from_text_list(rdclass, rdtype, ttl, text_rdatas): + """Create an rdataset with the specified class, type, and TTL, and with + the specified list of rdatas in text format. + + Returns a ``dns.rdataset.Rdataset`` object. + """ + + if isinstance(rdclass, string_types): + rdclass = dns.rdataclass.from_text(rdclass) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + r = Rdataset(rdclass, rdtype) + r.update_ttl(ttl) + for t in text_rdatas: + rd = dns.rdata.from_text(r.rdclass, r.rdtype, t) + r.add(rd) + return r + + +def from_text(rdclass, rdtype, ttl, *text_rdatas): + """Create an rdataset with the specified class, type, and TTL, and with + the specified rdatas in text format. + + Returns a ``dns.rdataset.Rdataset`` object. + """ + + return from_text_list(rdclass, rdtype, ttl, text_rdatas) + + +def from_rdata_list(ttl, rdatas): + """Create an rdataset with the specified TTL, and with + the specified list of rdata objects. + + Returns a ``dns.rdataset.Rdataset`` object. + """ + + if len(rdatas) == 0: + raise ValueError("rdata list must not be empty") + r = None + for rd in rdatas: + if r is None: + r = Rdataset(rd.rdclass, rd.rdtype) + r.update_ttl(ttl) + r.add(rd) + return r + + +def from_rdata(ttl, *rdatas): + """Create an rdataset with the specified TTL, and with + the specified rdata objects. + + Returns a ``dns.rdataset.Rdataset`` object. + """ + + return from_rdata_list(ttl, rdatas) diff --git a/openpype/vendor/python/python_2/dns/rdatatype.py b/openpype/vendor/python/python_2/dns/rdatatype.py new file mode 100644 index 0000000000..b247bc9c42 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdatatype.py @@ -0,0 +1,287 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Rdata Types.""" + +import re + +import dns.exception + +NONE = 0 +A = 1 +NS = 2 +MD = 3 +MF = 4 +CNAME = 5 +SOA = 6 +MB = 7 +MG = 8 +MR = 9 +NULL = 10 +WKS = 11 +PTR = 12 +HINFO = 13 +MINFO = 14 +MX = 15 +TXT = 16 +RP = 17 +AFSDB = 18 +X25 = 19 +ISDN = 20 +RT = 21 +NSAP = 22 +NSAP_PTR = 23 +SIG = 24 +KEY = 25 +PX = 26 +GPOS = 27 +AAAA = 28 +LOC = 29 +NXT = 30 +SRV = 33 +NAPTR = 35 +KX = 36 +CERT = 37 +A6 = 38 +DNAME = 39 +OPT = 41 +APL = 42 +DS = 43 +SSHFP = 44 +IPSECKEY = 45 +RRSIG = 46 +NSEC = 47 +DNSKEY = 48 +DHCID = 49 +NSEC3 = 50 +NSEC3PARAM = 51 +TLSA = 52 +HIP = 55 +CDS = 59 +CDNSKEY = 60 +OPENPGPKEY = 61 +CSYNC = 62 +SPF = 99 +UNSPEC = 103 +EUI48 = 108 +EUI64 = 109 +TKEY = 249 +TSIG = 250 +IXFR = 251 +AXFR = 252 +MAILB = 253 +MAILA = 254 +ANY = 255 +URI = 256 +CAA = 257 +AVC = 258 +TA = 32768 +DLV = 32769 + +_by_text = { + 'NONE': NONE, + 'A': A, + 'NS': NS, + 'MD': MD, + 'MF': MF, + 'CNAME': CNAME, + 'SOA': SOA, + 'MB': MB, + 'MG': MG, + 'MR': MR, + 'NULL': NULL, + 'WKS': WKS, + 'PTR': PTR, + 'HINFO': HINFO, + 'MINFO': MINFO, + 'MX': MX, + 'TXT': TXT, + 'RP': RP, + 'AFSDB': AFSDB, + 'X25': X25, + 'ISDN': ISDN, + 'RT': RT, + 'NSAP': NSAP, + 'NSAP-PTR': NSAP_PTR, + 'SIG': SIG, + 'KEY': KEY, + 'PX': PX, + 'GPOS': GPOS, + 'AAAA': AAAA, + 'LOC': LOC, + 'NXT': NXT, + 'SRV': SRV, + 'NAPTR': NAPTR, + 'KX': KX, + 'CERT': CERT, + 'A6': A6, + 'DNAME': DNAME, + 'OPT': OPT, + 'APL': APL, + 'DS': DS, + 'SSHFP': SSHFP, + 'IPSECKEY': IPSECKEY, + 'RRSIG': RRSIG, + 'NSEC': NSEC, + 'DNSKEY': DNSKEY, + 'DHCID': DHCID, + 'NSEC3': NSEC3, + 'NSEC3PARAM': NSEC3PARAM, + 'TLSA': TLSA, + 'HIP': HIP, + 'CDS': CDS, + 'CDNSKEY': CDNSKEY, + 'OPENPGPKEY': OPENPGPKEY, + 'CSYNC': CSYNC, + 'SPF': SPF, + 'UNSPEC': UNSPEC, + 'EUI48': EUI48, + 'EUI64': EUI64, + 'TKEY': TKEY, + 'TSIG': TSIG, + 'IXFR': IXFR, + 'AXFR': AXFR, + 'MAILB': MAILB, + 'MAILA': MAILA, + 'ANY': ANY, + 'URI': URI, + 'CAA': CAA, + 'AVC': AVC, + 'TA': TA, + 'DLV': DLV, +} + +# We construct the inverse mapping programmatically to ensure that we +# cannot make any mistakes (e.g. omissions, cut-and-paste errors) that +# would cause the mapping not to be true inverse. + +_by_value = {y: x for x, y in _by_text.items()} + +_metatypes = { + OPT: True +} + +_singletons = { + SOA: True, + NXT: True, + DNAME: True, + NSEC: True, + CNAME: True, +} + +_unknown_type_pattern = re.compile('TYPE([0-9]+)$', re.I) + + +class UnknownRdatatype(dns.exception.DNSException): + """DNS resource record type is unknown.""" + + +def from_text(text): + """Convert text into a DNS rdata type value. + + The input text can be a defined DNS RR type mnemonic or + instance of the DNS generic type syntax. + + For example, "NS" and "TYPE2" will both result in a value of 2. + + Raises ``dns.rdatatype.UnknownRdatatype`` if the type is unknown. + + Raises ``ValueError`` if the rdata type value is not >= 0 and <= 65535. + + Returns an ``int``. + """ + + value = _by_text.get(text.upper()) + if value is None: + match = _unknown_type_pattern.match(text) + if match is None: + raise UnknownRdatatype + value = int(match.group(1)) + if value < 0 or value > 65535: + raise ValueError("type must be between >= 0 and <= 65535") + return value + + +def to_text(value): + """Convert a DNS rdata type value to text. + + If the value has a known mnemonic, it will be used, otherwise the + DNS generic type syntax will be used. + + Raises ``ValueError`` if the rdata type value is not >= 0 and <= 65535. + + Returns a ``str``. + """ + + if value < 0 or value > 65535: + raise ValueError("type must be between >= 0 and <= 65535") + text = _by_value.get(value) + if text is None: + text = 'TYPE' + repr(value) + return text + + +def is_metatype(rdtype): + """True if the specified type is a metatype. + + *rdtype* is an ``int``. + + The currently defined metatypes are TKEY, TSIG, IXFR, AXFR, MAILA, + MAILB, ANY, and OPT. + + Returns a ``bool``. + """ + + if rdtype >= TKEY and rdtype <= ANY or rdtype in _metatypes: + return True + return False + + +def is_singleton(rdtype): + """Is the specified type a singleton type? + + Singleton types can only have a single rdata in an rdataset, or a single + RR in an RRset. + + The currently defined singleton types are CNAME, DNAME, NSEC, NXT, and + SOA. + + *rdtype* is an ``int``. + + Returns a ``bool``. + """ + + if rdtype in _singletons: + return True + return False + + +def register_type(rdtype, rdtype_text, is_singleton=False): # pylint: disable=redefined-outer-name + """Dynamically register an rdatatype. + + *rdtype*, an ``int``, the rdatatype to register. + + *rdtype_text*, a ``text``, the textual form of the rdatatype. + + *is_singleton*, a ``bool``, indicating if the type is a singleton (i.e. + RRsets of the type can have only one member.) + """ + + _by_text[rdtype_text] = rdtype + _by_value[rdtype] = rdtype_text + if is_singleton: + _singletons[rdtype] = True diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/AFSDB.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/AFSDB.py new file mode 100644 index 0000000000..c6a700cf56 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/AFSDB.py @@ -0,0 +1,55 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.mxbase + + +class AFSDB(dns.rdtypes.mxbase.UncompressedDowncasingMX): + + """AFSDB record + + @ivar subtype: the subtype value + @type subtype: int + @ivar hostname: the hostname name + @type hostname: dns.name.Name object""" + + # Use the property mechanism to make "subtype" an alias for the + # "preference" attribute, and "hostname" an alias for the "exchange" + # attribute. + # + # This lets us inherit the UncompressedMX implementation but lets + # the caller use appropriate attribute names for the rdata type. + # + # We probably lose some performance vs. a cut-and-paste + # implementation, but this way we don't copy code, and that's + # good. + + def get_subtype(self): + return self.preference + + def set_subtype(self, subtype): + self.preference = subtype + + subtype = property(get_subtype, set_subtype) + + def get_hostname(self): + return self.exchange + + def set_hostname(self, hostname): + self.exchange = hostname + + hostname = property(get_hostname, set_hostname) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/AVC.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/AVC.py new file mode 100644 index 0000000000..7f340b39d2 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/AVC.py @@ -0,0 +1,25 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2016 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.txtbase + + +class AVC(dns.rdtypes.txtbase.TXTBase): + + """AVC record + + @see: U{http://www.iana.org/assignments/dns-parameters/AVC/avc-completed-template}""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/CAA.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CAA.py new file mode 100644 index 0000000000..0acf201ab1 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CAA.py @@ -0,0 +1,75 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.tokenizer + + +class CAA(dns.rdata.Rdata): + + """CAA (Certification Authority Authorization) record + + @ivar flags: the flags + @type flags: int + @ivar tag: the tag + @type tag: string + @ivar value: the value + @type value: string + @see: RFC 6844""" + + __slots__ = ['flags', 'tag', 'value'] + + def __init__(self, rdclass, rdtype, flags, tag, value): + super(CAA, self).__init__(rdclass, rdtype) + self.flags = flags + self.tag = tag + self.value = value + + def to_text(self, origin=None, relativize=True, **kw): + return '%u %s "%s"' % (self.flags, + dns.rdata._escapify(self.tag), + dns.rdata._escapify(self.value)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + flags = tok.get_uint8() + tag = tok.get_string().encode() + if len(tag) > 255: + raise dns.exception.SyntaxError("tag too long") + if not tag.isalnum(): + raise dns.exception.SyntaxError("tag is not alphanumeric") + value = tok.get_string().encode() + return cls(rdclass, rdtype, flags, tag, value) + + def to_wire(self, file, compress=None, origin=None): + file.write(struct.pack('!B', self.flags)) + l = len(self.tag) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(self.tag) + file.write(self.value) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (flags, l) = struct.unpack('!BB', wire[current: current + 2]) + current += 2 + tag = wire[current: current + l] + value = wire[current + l:current + rdlen - 2] + return cls(rdclass, rdtype, flags, tag, value) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/CDNSKEY.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CDNSKEY.py new file mode 100644 index 0000000000..653ae1be16 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CDNSKEY.py @@ -0,0 +1,27 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2004-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.dnskeybase +from dns.rdtypes.dnskeybase import flags_to_text_set, flags_from_text_set + + +__all__ = ['flags_to_text_set', 'flags_from_text_set'] + + +class CDNSKEY(dns.rdtypes.dnskeybase.DNSKEYBase): + + """CDNSKEY record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/CDS.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CDS.py new file mode 100644 index 0000000000..a63041dd79 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CDS.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.dsbase + + +class CDS(dns.rdtypes.dsbase.DSBase): + + """CDS record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/CERT.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CERT.py new file mode 100644 index 0000000000..eea27b52c3 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CERT.py @@ -0,0 +1,123 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct +import base64 + +import dns.exception +import dns.dnssec +import dns.rdata +import dns.tokenizer + +_ctype_by_value = { + 1: 'PKIX', + 2: 'SPKI', + 3: 'PGP', + 253: 'URI', + 254: 'OID', +} + +_ctype_by_name = { + 'PKIX': 1, + 'SPKI': 2, + 'PGP': 3, + 'URI': 253, + 'OID': 254, +} + + +def _ctype_from_text(what): + v = _ctype_by_name.get(what) + if v is not None: + return v + return int(what) + + +def _ctype_to_text(what): + v = _ctype_by_value.get(what) + if v is not None: + return v + return str(what) + + +class CERT(dns.rdata.Rdata): + + """CERT record + + @ivar certificate_type: certificate type + @type certificate_type: int + @ivar key_tag: key tag + @type key_tag: int + @ivar algorithm: algorithm + @type algorithm: int + @ivar certificate: the certificate or CRL + @type certificate: string + @see: RFC 2538""" + + __slots__ = ['certificate_type', 'key_tag', 'algorithm', 'certificate'] + + def __init__(self, rdclass, rdtype, certificate_type, key_tag, algorithm, + certificate): + super(CERT, self).__init__(rdclass, rdtype) + self.certificate_type = certificate_type + self.key_tag = key_tag + self.algorithm = algorithm + self.certificate = certificate + + def to_text(self, origin=None, relativize=True, **kw): + certificate_type = _ctype_to_text(self.certificate_type) + return "%s %d %s %s" % (certificate_type, self.key_tag, + dns.dnssec.algorithm_to_text(self.algorithm), + dns.rdata._base64ify(self.certificate)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + certificate_type = _ctype_from_text(tok.get_string()) + key_tag = tok.get_uint16() + algorithm = dns.dnssec.algorithm_from_text(tok.get_string()) + if algorithm < 0 or algorithm > 255: + raise dns.exception.SyntaxError("bad algorithm type") + chunks = [] + while 1: + t = tok.get().unescape() + if t.is_eol_or_eof(): + break + if not t.is_identifier(): + raise dns.exception.SyntaxError + chunks.append(t.value.encode()) + b64 = b''.join(chunks) + certificate = base64.b64decode(b64) + return cls(rdclass, rdtype, certificate_type, key_tag, + algorithm, certificate) + + def to_wire(self, file, compress=None, origin=None): + prefix = struct.pack("!HHB", self.certificate_type, self.key_tag, + self.algorithm) + file.write(prefix) + file.write(self.certificate) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + prefix = wire[current: current + 5].unwrap() + current += 5 + rdlen -= 5 + if rdlen < 0: + raise dns.exception.FormError + (certificate_type, key_tag, algorithm) = struct.unpack("!HHB", prefix) + certificate = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, certificate_type, key_tag, algorithm, + certificate) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/CNAME.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CNAME.py new file mode 100644 index 0000000000..11d42aa7fd --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CNAME.py @@ -0,0 +1,27 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.nsbase + + +class CNAME(dns.rdtypes.nsbase.NSBase): + + """CNAME record + + Note: although CNAME is officially a singleton type, dnspython allows + non-singleton CNAME rdatasets because such sets have been commonly + used by BIND and other nameservers for load balancing.""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/CSYNC.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CSYNC.py new file mode 100644 index 0000000000..06292fb28c --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/CSYNC.py @@ -0,0 +1,126 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2004-2007, 2009-2011, 2016 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.rdatatype +import dns.name +from dns._compat import xrange + +class CSYNC(dns.rdata.Rdata): + + """CSYNC record + + @ivar serial: the SOA serial number + @type serial: int + @ivar flags: the CSYNC flags + @type flags: int + @ivar windows: the windowed bitmap list + @type windows: list of (window number, string) tuples""" + + __slots__ = ['serial', 'flags', 'windows'] + + def __init__(self, rdclass, rdtype, serial, flags, windows): + super(CSYNC, self).__init__(rdclass, rdtype) + self.serial = serial + self.flags = flags + self.windows = windows + + def to_text(self, origin=None, relativize=True, **kw): + text = '' + for (window, bitmap) in self.windows: + bits = [] + for i in xrange(0, len(bitmap)): + byte = bitmap[i] + for j in xrange(0, 8): + if byte & (0x80 >> j): + bits.append(dns.rdatatype.to_text(window * 256 + + i * 8 + j)) + text += (' ' + ' '.join(bits)) + return '%d %d%s' % (self.serial, self.flags, text) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + serial = tok.get_uint32() + flags = tok.get_uint16() + rdtypes = [] + while 1: + token = tok.get().unescape() + if token.is_eol_or_eof(): + break + nrdtype = dns.rdatatype.from_text(token.value) + if nrdtype == 0: + raise dns.exception.SyntaxError("CSYNC with bit 0") + if nrdtype > 65535: + raise dns.exception.SyntaxError("CSYNC with bit > 65535") + rdtypes.append(nrdtype) + rdtypes.sort() + window = 0 + octets = 0 + prior_rdtype = 0 + bitmap = bytearray(b'\0' * 32) + windows = [] + for nrdtype in rdtypes: + if nrdtype == prior_rdtype: + continue + prior_rdtype = nrdtype + new_window = nrdtype // 256 + if new_window != window: + windows.append((window, bitmap[0:octets])) + bitmap = bytearray(b'\0' * 32) + window = new_window + offset = nrdtype % 256 + byte = offset // 8 + bit = offset % 8 + octets = byte + 1 + bitmap[byte] = bitmap[byte] | (0x80 >> bit) + + windows.append((window, bitmap[0:octets])) + return cls(rdclass, rdtype, serial, flags, windows) + + def to_wire(self, file, compress=None, origin=None): + file.write(struct.pack('!IH', self.serial, self.flags)) + for (window, bitmap) in self.windows: + file.write(struct.pack('!BB', window, len(bitmap))) + file.write(bitmap) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + if rdlen < 6: + raise dns.exception.FormError("CSYNC too short") + (serial, flags) = struct.unpack("!IH", wire[current: current + 6]) + current += 6 + rdlen -= 6 + windows = [] + while rdlen > 0: + if rdlen < 3: + raise dns.exception.FormError("CSYNC too short") + window = wire[current] + octets = wire[current + 1] + if octets == 0 or octets > 32: + raise dns.exception.FormError("bad CSYNC octets") + current += 2 + rdlen -= 2 + if rdlen < octets: + raise dns.exception.FormError("bad CSYNC bitmap length") + bitmap = bytearray(wire[current: current + octets].unwrap()) + current += octets + rdlen -= octets + windows.append((window, bitmap)) + return cls(rdclass, rdtype, serial, flags, windows) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/DLV.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/DLV.py new file mode 100644 index 0000000000..1635212583 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/DLV.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.dsbase + + +class DLV(dns.rdtypes.dsbase.DSBase): + + """DLV record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/DNAME.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/DNAME.py new file mode 100644 index 0000000000..2499283cfa --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/DNAME.py @@ -0,0 +1,26 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.nsbase + + +class DNAME(dns.rdtypes.nsbase.UncompressedNS): + + """DNAME record""" + + def to_digestable(self, origin=None): + return self.target.to_digestable(origin) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/DNSKEY.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/DNSKEY.py new file mode 100644 index 0000000000..e36f7bc5b1 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/DNSKEY.py @@ -0,0 +1,27 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2004-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.dnskeybase +from dns.rdtypes.dnskeybase import flags_to_text_set, flags_from_text_set + + +__all__ = ['flags_to_text_set', 'flags_from_text_set'] + + +class DNSKEY(dns.rdtypes.dnskeybase.DNSKEYBase): + + """DNSKEY record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/DS.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/DS.py new file mode 100644 index 0000000000..7d457b2281 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/DS.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.dsbase + + +class DS(dns.rdtypes.dsbase.DSBase): + + """DS record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/EUI48.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/EUI48.py new file mode 100644 index 0000000000..aa260e205d --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/EUI48.py @@ -0,0 +1,29 @@ +# Copyright (C) 2015 Red Hat, Inc. +# Author: Petr Spacek +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED 'AS IS' AND RED HAT DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.euibase + + +class EUI48(dns.rdtypes.euibase.EUIBase): + + """EUI48 record + + @ivar fingerprint: 48-bit Extended Unique Identifier (EUI-48) + @type fingerprint: string + @see: rfc7043.txt""" + + byte_len = 6 # 0123456789ab (in hex) + text_len = byte_len * 3 - 1 # 01-23-45-67-89-ab diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/EUI64.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/EUI64.py new file mode 100644 index 0000000000..5eba350d8f --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/EUI64.py @@ -0,0 +1,29 @@ +# Copyright (C) 2015 Red Hat, Inc. +# Author: Petr Spacek +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED 'AS IS' AND RED HAT DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.euibase + + +class EUI64(dns.rdtypes.euibase.EUIBase): + + """EUI64 record + + @ivar fingerprint: 64-bit Extended Unique Identifier (EUI-64) + @type fingerprint: string + @see: rfc7043.txt""" + + byte_len = 8 # 0123456789abcdef (in hex) + text_len = byte_len * 3 - 1 # 01-23-45-67-89-ab-cd-ef diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/GPOS.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/GPOS.py new file mode 100644 index 0000000000..422822f03b --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/GPOS.py @@ -0,0 +1,162 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.tokenizer +from dns._compat import long, text_type + + +def _validate_float_string(what): + if what[0] == b'-'[0] or what[0] == b'+'[0]: + what = what[1:] + if what.isdigit(): + return + (left, right) = what.split(b'.') + if left == b'' and right == b'': + raise dns.exception.FormError + if not left == b'' and not left.decode().isdigit(): + raise dns.exception.FormError + if not right == b'' and not right.decode().isdigit(): + raise dns.exception.FormError + + +def _sanitize(value): + if isinstance(value, text_type): + return value.encode() + return value + + +class GPOS(dns.rdata.Rdata): + + """GPOS record + + @ivar latitude: latitude + @type latitude: string + @ivar longitude: longitude + @type longitude: string + @ivar altitude: altitude + @type altitude: string + @see: RFC 1712""" + + __slots__ = ['latitude', 'longitude', 'altitude'] + + def __init__(self, rdclass, rdtype, latitude, longitude, altitude): + super(GPOS, self).__init__(rdclass, rdtype) + if isinstance(latitude, float) or \ + isinstance(latitude, int) or \ + isinstance(latitude, long): + latitude = str(latitude) + if isinstance(longitude, float) or \ + isinstance(longitude, int) or \ + isinstance(longitude, long): + longitude = str(longitude) + if isinstance(altitude, float) or \ + isinstance(altitude, int) or \ + isinstance(altitude, long): + altitude = str(altitude) + latitude = _sanitize(latitude) + longitude = _sanitize(longitude) + altitude = _sanitize(altitude) + _validate_float_string(latitude) + _validate_float_string(longitude) + _validate_float_string(altitude) + self.latitude = latitude + self.longitude = longitude + self.altitude = altitude + + def to_text(self, origin=None, relativize=True, **kw): + return '{} {} {}'.format(self.latitude.decode(), + self.longitude.decode(), + self.altitude.decode()) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + latitude = tok.get_string() + longitude = tok.get_string() + altitude = tok.get_string() + tok.get_eol() + return cls(rdclass, rdtype, latitude, longitude, altitude) + + def to_wire(self, file, compress=None, origin=None): + l = len(self.latitude) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(self.latitude) + l = len(self.longitude) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(self.longitude) + l = len(self.altitude) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(self.altitude) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + l = wire[current] + current += 1 + rdlen -= 1 + if l > rdlen: + raise dns.exception.FormError + latitude = wire[current: current + l].unwrap() + current += l + rdlen -= l + l = wire[current] + current += 1 + rdlen -= 1 + if l > rdlen: + raise dns.exception.FormError + longitude = wire[current: current + l].unwrap() + current += l + rdlen -= l + l = wire[current] + current += 1 + rdlen -= 1 + if l != rdlen: + raise dns.exception.FormError + altitude = wire[current: current + l].unwrap() + return cls(rdclass, rdtype, latitude, longitude, altitude) + + def _get_float_latitude(self): + return float(self.latitude) + + def _set_float_latitude(self, value): + self.latitude = str(value) + + float_latitude = property(_get_float_latitude, _set_float_latitude, + doc="latitude as a floating point value") + + def _get_float_longitude(self): + return float(self.longitude) + + def _set_float_longitude(self, value): + self.longitude = str(value) + + float_longitude = property(_get_float_longitude, _set_float_longitude, + doc="longitude as a floating point value") + + def _get_float_altitude(self): + return float(self.altitude) + + def _set_float_altitude(self, value): + self.altitude = str(value) + + float_altitude = property(_get_float_altitude, _set_float_altitude, + doc="altitude as a floating point value") diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/HINFO.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/HINFO.py new file mode 100644 index 0000000000..e4e0b34a49 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/HINFO.py @@ -0,0 +1,86 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.tokenizer +from dns._compat import text_type + + +class HINFO(dns.rdata.Rdata): + + """HINFO record + + @ivar cpu: the CPU type + @type cpu: string + @ivar os: the OS type + @type os: string + @see: RFC 1035""" + + __slots__ = ['cpu', 'os'] + + def __init__(self, rdclass, rdtype, cpu, os): + super(HINFO, self).__init__(rdclass, rdtype) + if isinstance(cpu, text_type): + self.cpu = cpu.encode() + else: + self.cpu = cpu + if isinstance(os, text_type): + self.os = os.encode() + else: + self.os = os + + def to_text(self, origin=None, relativize=True, **kw): + return '"{}" "{}"'.format(dns.rdata._escapify(self.cpu), + dns.rdata._escapify(self.os)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + cpu = tok.get_string() + os = tok.get_string() + tok.get_eol() + return cls(rdclass, rdtype, cpu, os) + + def to_wire(self, file, compress=None, origin=None): + l = len(self.cpu) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(self.cpu) + l = len(self.os) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(self.os) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + l = wire[current] + current += 1 + rdlen -= 1 + if l > rdlen: + raise dns.exception.FormError + cpu = wire[current:current + l].unwrap() + current += l + rdlen -= l + l = wire[current] + current += 1 + rdlen -= 1 + if l != rdlen: + raise dns.exception.FormError + os = wire[current: current + l].unwrap() + return cls(rdclass, rdtype, cpu, os) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/HIP.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/HIP.py new file mode 100644 index 0000000000..7c876b2d2f --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/HIP.py @@ -0,0 +1,115 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2010, 2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct +import base64 +import binascii + +import dns.exception +import dns.rdata +import dns.rdatatype + + +class HIP(dns.rdata.Rdata): + + """HIP record + + @ivar hit: the host identity tag + @type hit: string + @ivar algorithm: the public key cryptographic algorithm + @type algorithm: int + @ivar key: the public key + @type key: string + @ivar servers: the rendezvous servers + @type servers: list of dns.name.Name objects + @see: RFC 5205""" + + __slots__ = ['hit', 'algorithm', 'key', 'servers'] + + def __init__(self, rdclass, rdtype, hit, algorithm, key, servers): + super(HIP, self).__init__(rdclass, rdtype) + self.hit = hit + self.algorithm = algorithm + self.key = key + self.servers = servers + + def to_text(self, origin=None, relativize=True, **kw): + hit = binascii.hexlify(self.hit).decode() + key = base64.b64encode(self.key).replace(b'\n', b'').decode() + text = u'' + servers = [] + for server in self.servers: + servers.append(server.choose_relativity(origin, relativize)) + if len(servers) > 0: + text += (u' ' + u' '.join((x.to_unicode() for x in servers))) + return u'%u %s %s%s' % (self.algorithm, hit, key, text) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + algorithm = tok.get_uint8() + hit = binascii.unhexlify(tok.get_string().encode()) + if len(hit) > 255: + raise dns.exception.SyntaxError("HIT too long") + key = base64.b64decode(tok.get_string().encode()) + servers = [] + while 1: + token = tok.get() + if token.is_eol_or_eof(): + break + server = dns.name.from_text(token.value, origin) + server.choose_relativity(origin, relativize) + servers.append(server) + return cls(rdclass, rdtype, hit, algorithm, key, servers) + + def to_wire(self, file, compress=None, origin=None): + lh = len(self.hit) + lk = len(self.key) + file.write(struct.pack("!BBH", lh, self.algorithm, lk)) + file.write(self.hit) + file.write(self.key) + for server in self.servers: + server.to_wire(file, None, origin) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (lh, algorithm, lk) = struct.unpack('!BBH', + wire[current: current + 4]) + current += 4 + rdlen -= 4 + hit = wire[current: current + lh].unwrap() + current += lh + rdlen -= lh + key = wire[current: current + lk].unwrap() + current += lk + rdlen -= lk + servers = [] + while rdlen > 0: + (server, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + current += cused + rdlen -= cused + if origin is not None: + server = server.relativize(origin) + servers.append(server) + return cls(rdclass, rdtype, hit, algorithm, key, servers) + + def choose_relativity(self, origin=None, relativize=True): + servers = [] + for server in self.servers: + server = server.choose_relativity(origin, relativize) + servers.append(server) + self.servers = servers diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/ISDN.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/ISDN.py new file mode 100644 index 0000000000..f5f5f8b9ea --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/ISDN.py @@ -0,0 +1,99 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.tokenizer +from dns._compat import text_type + + +class ISDN(dns.rdata.Rdata): + + """ISDN record + + @ivar address: the ISDN address + @type address: string + @ivar subaddress: the ISDN subaddress (or '' if not present) + @type subaddress: string + @see: RFC 1183""" + + __slots__ = ['address', 'subaddress'] + + def __init__(self, rdclass, rdtype, address, subaddress): + super(ISDN, self).__init__(rdclass, rdtype) + if isinstance(address, text_type): + self.address = address.encode() + else: + self.address = address + if isinstance(address, text_type): + self.subaddress = subaddress.encode() + else: + self.subaddress = subaddress + + def to_text(self, origin=None, relativize=True, **kw): + if self.subaddress: + return '"{}" "{}"'.format(dns.rdata._escapify(self.address), + dns.rdata._escapify(self.subaddress)) + else: + return '"%s"' % dns.rdata._escapify(self.address) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + address = tok.get_string() + t = tok.get() + if not t.is_eol_or_eof(): + tok.unget(t) + subaddress = tok.get_string() + else: + tok.unget(t) + subaddress = '' + tok.get_eol() + return cls(rdclass, rdtype, address, subaddress) + + def to_wire(self, file, compress=None, origin=None): + l = len(self.address) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(self.address) + l = len(self.subaddress) + if l > 0: + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(self.subaddress) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + l = wire[current] + current += 1 + rdlen -= 1 + if l > rdlen: + raise dns.exception.FormError + address = wire[current: current + l].unwrap() + current += l + rdlen -= l + if rdlen > 0: + l = wire[current] + current += 1 + rdlen -= 1 + if l != rdlen: + raise dns.exception.FormError + subaddress = wire[current: current + l].unwrap() + else: + subaddress = '' + return cls(rdclass, rdtype, address, subaddress) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/LOC.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/LOC.py new file mode 100644 index 0000000000..da9bb03a95 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/LOC.py @@ -0,0 +1,327 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +from __future__ import division + +import struct + +import dns.exception +import dns.rdata +from dns._compat import long, xrange, round_py2_compat + + +_pows = tuple(long(10**i) for i in range(0, 11)) + +# default values are in centimeters +_default_size = 100.0 +_default_hprec = 1000000.0 +_default_vprec = 1000.0 + + +def _exponent_of(what, desc): + if what == 0: + return 0 + exp = None + for i in xrange(len(_pows)): + if what // _pows[i] == long(0): + exp = i - 1 + break + if exp is None or exp < 0: + raise dns.exception.SyntaxError("%s value out of bounds" % desc) + return exp + + +def _float_to_tuple(what): + if what < 0: + sign = -1 + what *= -1 + else: + sign = 1 + what = round_py2_compat(what * 3600000) + degrees = int(what // 3600000) + what -= degrees * 3600000 + minutes = int(what // 60000) + what -= minutes * 60000 + seconds = int(what // 1000) + what -= int(seconds * 1000) + what = int(what) + return (degrees, minutes, seconds, what, sign) + + +def _tuple_to_float(what): + value = float(what[0]) + value += float(what[1]) / 60.0 + value += float(what[2]) / 3600.0 + value += float(what[3]) / 3600000.0 + return float(what[4]) * value + + +def _encode_size(what, desc): + what = long(what) + exponent = _exponent_of(what, desc) & 0xF + base = what // pow(10, exponent) & 0xF + return base * 16 + exponent + + +def _decode_size(what, desc): + exponent = what & 0x0F + if exponent > 9: + raise dns.exception.SyntaxError("bad %s exponent" % desc) + base = (what & 0xF0) >> 4 + if base > 9: + raise dns.exception.SyntaxError("bad %s base" % desc) + return long(base) * pow(10, exponent) + + +class LOC(dns.rdata.Rdata): + + """LOC record + + @ivar latitude: latitude + @type latitude: (int, int, int, int, sign) tuple specifying the degrees, minutes, + seconds, milliseconds, and sign of the coordinate. + @ivar longitude: longitude + @type longitude: (int, int, int, int, sign) tuple specifying the degrees, + minutes, seconds, milliseconds, and sign of the coordinate. + @ivar altitude: altitude + @type altitude: float + @ivar size: size of the sphere + @type size: float + @ivar horizontal_precision: horizontal precision + @type horizontal_precision: float + @ivar vertical_precision: vertical precision + @type vertical_precision: float + @see: RFC 1876""" + + __slots__ = ['latitude', 'longitude', 'altitude', 'size', + 'horizontal_precision', 'vertical_precision'] + + def __init__(self, rdclass, rdtype, latitude, longitude, altitude, + size=_default_size, hprec=_default_hprec, + vprec=_default_vprec): + """Initialize a LOC record instance. + + The parameters I{latitude} and I{longitude} may be either a 4-tuple + of integers specifying (degrees, minutes, seconds, milliseconds), + or they may be floating point values specifying the number of + degrees. The other parameters are floats. Size, horizontal precision, + and vertical precision are specified in centimeters.""" + + super(LOC, self).__init__(rdclass, rdtype) + if isinstance(latitude, int) or isinstance(latitude, long): + latitude = float(latitude) + if isinstance(latitude, float): + latitude = _float_to_tuple(latitude) + self.latitude = latitude + if isinstance(longitude, int) or isinstance(longitude, long): + longitude = float(longitude) + if isinstance(longitude, float): + longitude = _float_to_tuple(longitude) + self.longitude = longitude + self.altitude = float(altitude) + self.size = float(size) + self.horizontal_precision = float(hprec) + self.vertical_precision = float(vprec) + + def to_text(self, origin=None, relativize=True, **kw): + if self.latitude[4] > 0: + lat_hemisphere = 'N' + else: + lat_hemisphere = 'S' + if self.longitude[4] > 0: + long_hemisphere = 'E' + else: + long_hemisphere = 'W' + text = "%d %d %d.%03d %s %d %d %d.%03d %s %0.2fm" % ( + self.latitude[0], self.latitude[1], + self.latitude[2], self.latitude[3], lat_hemisphere, + self.longitude[0], self.longitude[1], self.longitude[2], + self.longitude[3], long_hemisphere, + self.altitude / 100.0 + ) + + # do not print default values + if self.size != _default_size or \ + self.horizontal_precision != _default_hprec or \ + self.vertical_precision != _default_vprec: + text += " {:0.2f}m {:0.2f}m {:0.2f}m".format( + self.size / 100.0, self.horizontal_precision / 100.0, + self.vertical_precision / 100.0 + ) + return text + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + latitude = [0, 0, 0, 0, 1] + longitude = [0, 0, 0, 0, 1] + size = _default_size + hprec = _default_hprec + vprec = _default_vprec + + latitude[0] = tok.get_int() + t = tok.get_string() + if t.isdigit(): + latitude[1] = int(t) + t = tok.get_string() + if '.' in t: + (seconds, milliseconds) = t.split('.') + if not seconds.isdigit(): + raise dns.exception.SyntaxError( + 'bad latitude seconds value') + latitude[2] = int(seconds) + if latitude[2] >= 60: + raise dns.exception.SyntaxError('latitude seconds >= 60') + l = len(milliseconds) + if l == 0 or l > 3 or not milliseconds.isdigit(): + raise dns.exception.SyntaxError( + 'bad latitude milliseconds value') + if l == 1: + m = 100 + elif l == 2: + m = 10 + else: + m = 1 + latitude[3] = m * int(milliseconds) + t = tok.get_string() + elif t.isdigit(): + latitude[2] = int(t) + t = tok.get_string() + if t == 'S': + latitude[4] = -1 + elif t != 'N': + raise dns.exception.SyntaxError('bad latitude hemisphere value') + + longitude[0] = tok.get_int() + t = tok.get_string() + if t.isdigit(): + longitude[1] = int(t) + t = tok.get_string() + if '.' in t: + (seconds, milliseconds) = t.split('.') + if not seconds.isdigit(): + raise dns.exception.SyntaxError( + 'bad longitude seconds value') + longitude[2] = int(seconds) + if longitude[2] >= 60: + raise dns.exception.SyntaxError('longitude seconds >= 60') + l = len(milliseconds) + if l == 0 or l > 3 or not milliseconds.isdigit(): + raise dns.exception.SyntaxError( + 'bad longitude milliseconds value') + if l == 1: + m = 100 + elif l == 2: + m = 10 + else: + m = 1 + longitude[3] = m * int(milliseconds) + t = tok.get_string() + elif t.isdigit(): + longitude[2] = int(t) + t = tok.get_string() + if t == 'W': + longitude[4] = -1 + elif t != 'E': + raise dns.exception.SyntaxError('bad longitude hemisphere value') + + t = tok.get_string() + if t[-1] == 'm': + t = t[0: -1] + altitude = float(t) * 100.0 # m -> cm + + token = tok.get().unescape() + if not token.is_eol_or_eof(): + value = token.value + if value[-1] == 'm': + value = value[0: -1] + size = float(value) * 100.0 # m -> cm + token = tok.get().unescape() + if not token.is_eol_or_eof(): + value = token.value + if value[-1] == 'm': + value = value[0: -1] + hprec = float(value) * 100.0 # m -> cm + token = tok.get().unescape() + if not token.is_eol_or_eof(): + value = token.value + if value[-1] == 'm': + value = value[0: -1] + vprec = float(value) * 100.0 # m -> cm + tok.get_eol() + + return cls(rdclass, rdtype, latitude, longitude, altitude, + size, hprec, vprec) + + def to_wire(self, file, compress=None, origin=None): + milliseconds = (self.latitude[0] * 3600000 + + self.latitude[1] * 60000 + + self.latitude[2] * 1000 + + self.latitude[3]) * self.latitude[4] + latitude = long(0x80000000) + milliseconds + milliseconds = (self.longitude[0] * 3600000 + + self.longitude[1] * 60000 + + self.longitude[2] * 1000 + + self.longitude[3]) * self.longitude[4] + longitude = long(0x80000000) + milliseconds + altitude = long(self.altitude) + long(10000000) + size = _encode_size(self.size, "size") + hprec = _encode_size(self.horizontal_precision, "horizontal precision") + vprec = _encode_size(self.vertical_precision, "vertical precision") + wire = struct.pack("!BBBBIII", 0, size, hprec, vprec, latitude, + longitude, altitude) + file.write(wire) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (version, size, hprec, vprec, latitude, longitude, altitude) = \ + struct.unpack("!BBBBIII", wire[current: current + rdlen]) + if latitude > long(0x80000000): + latitude = float(latitude - long(0x80000000)) / 3600000 + else: + latitude = -1 * float(long(0x80000000) - latitude) / 3600000 + if latitude < -90.0 or latitude > 90.0: + raise dns.exception.FormError("bad latitude") + if longitude > long(0x80000000): + longitude = float(longitude - long(0x80000000)) / 3600000 + else: + longitude = -1 * float(long(0x80000000) - longitude) / 3600000 + if longitude < -180.0 or longitude > 180.0: + raise dns.exception.FormError("bad longitude") + altitude = float(altitude) - 10000000.0 + size = _decode_size(size, "size") + hprec = _decode_size(hprec, "horizontal precision") + vprec = _decode_size(vprec, "vertical precision") + return cls(rdclass, rdtype, latitude, longitude, altitude, + size, hprec, vprec) + + def _get_float_latitude(self): + return _tuple_to_float(self.latitude) + + def _set_float_latitude(self, value): + self.latitude = _float_to_tuple(value) + + float_latitude = property(_get_float_latitude, _set_float_latitude, + doc="latitude as a floating point value") + + def _get_float_longitude(self): + return _tuple_to_float(self.longitude) + + def _set_float_longitude(self, value): + self.longitude = _float_to_tuple(value) + + float_longitude = property(_get_float_longitude, _set_float_longitude, + doc="longitude as a floating point value") diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/MX.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/MX.py new file mode 100644 index 0000000000..0a06494f73 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/MX.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.mxbase + + +class MX(dns.rdtypes.mxbase.MXBase): + + """MX record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/NS.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/NS.py new file mode 100644 index 0000000000..f9fcf637f7 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/NS.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.nsbase + + +class NS(dns.rdtypes.nsbase.NSBase): + + """NS record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC.py new file mode 100644 index 0000000000..4e3da7296b --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC.py @@ -0,0 +1,128 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2004-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.rdatatype +import dns.name +from dns._compat import xrange + + +class NSEC(dns.rdata.Rdata): + + """NSEC record + + @ivar next: the next name + @type next: dns.name.Name object + @ivar windows: the windowed bitmap list + @type windows: list of (window number, string) tuples""" + + __slots__ = ['next', 'windows'] + + def __init__(self, rdclass, rdtype, next, windows): + super(NSEC, self).__init__(rdclass, rdtype) + self.next = next + self.windows = windows + + def to_text(self, origin=None, relativize=True, **kw): + next = self.next.choose_relativity(origin, relativize) + text = '' + for (window, bitmap) in self.windows: + bits = [] + for i in xrange(0, len(bitmap)): + byte = bitmap[i] + for j in xrange(0, 8): + if byte & (0x80 >> j): + bits.append(dns.rdatatype.to_text(window * 256 + + i * 8 + j)) + text += (' ' + ' '.join(bits)) + return '{}{}'.format(next, text) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + next = tok.get_name() + next = next.choose_relativity(origin, relativize) + rdtypes = [] + while 1: + token = tok.get().unescape() + if token.is_eol_or_eof(): + break + nrdtype = dns.rdatatype.from_text(token.value) + if nrdtype == 0: + raise dns.exception.SyntaxError("NSEC with bit 0") + if nrdtype > 65535: + raise dns.exception.SyntaxError("NSEC with bit > 65535") + rdtypes.append(nrdtype) + rdtypes.sort() + window = 0 + octets = 0 + prior_rdtype = 0 + bitmap = bytearray(b'\0' * 32) + windows = [] + for nrdtype in rdtypes: + if nrdtype == prior_rdtype: + continue + prior_rdtype = nrdtype + new_window = nrdtype // 256 + if new_window != window: + windows.append((window, bitmap[0:octets])) + bitmap = bytearray(b'\0' * 32) + window = new_window + offset = nrdtype % 256 + byte = offset // 8 + bit = offset % 8 + octets = byte + 1 + bitmap[byte] = bitmap[byte] | (0x80 >> bit) + + windows.append((window, bitmap[0:octets])) + return cls(rdclass, rdtype, next, windows) + + def to_wire(self, file, compress=None, origin=None): + self.next.to_wire(file, None, origin) + for (window, bitmap) in self.windows: + file.write(struct.pack('!BB', window, len(bitmap))) + file.write(bitmap) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (next, cused) = dns.name.from_wire(wire[: current + rdlen], current) + current += cused + rdlen -= cused + windows = [] + while rdlen > 0: + if rdlen < 3: + raise dns.exception.FormError("NSEC too short") + window = wire[current] + octets = wire[current + 1] + if octets == 0 or octets > 32: + raise dns.exception.FormError("bad NSEC octets") + current += 2 + rdlen -= 2 + if rdlen < octets: + raise dns.exception.FormError("bad NSEC bitmap length") + bitmap = bytearray(wire[current: current + octets].unwrap()) + current += octets + rdlen -= octets + windows.append((window, bitmap)) + if origin is not None: + next = next.relativize(origin) + return cls(rdclass, rdtype, next, windows) + + def choose_relativity(self, origin=None, relativize=True): + self.next = self.next.choose_relativity(origin, relativize) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC3.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC3.py new file mode 100644 index 0000000000..1c281c4a4d --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC3.py @@ -0,0 +1,196 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2004-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import base64 +import binascii +import string +import struct + +import dns.exception +import dns.rdata +import dns.rdatatype +from dns._compat import xrange, text_type, PY3 + +# pylint: disable=deprecated-string-function +if PY3: + b32_hex_to_normal = bytes.maketrans(b'0123456789ABCDEFGHIJKLMNOPQRSTUV', + b'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567') + b32_normal_to_hex = bytes.maketrans(b'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567', + b'0123456789ABCDEFGHIJKLMNOPQRSTUV') +else: + b32_hex_to_normal = string.maketrans('0123456789ABCDEFGHIJKLMNOPQRSTUV', + 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567') + b32_normal_to_hex = string.maketrans('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567', + '0123456789ABCDEFGHIJKLMNOPQRSTUV') +# pylint: enable=deprecated-string-function + + +# hash algorithm constants +SHA1 = 1 + +# flag constants +OPTOUT = 1 + + +class NSEC3(dns.rdata.Rdata): + + """NSEC3 record + + @ivar algorithm: the hash algorithm number + @type algorithm: int + @ivar flags: the flags + @type flags: int + @ivar iterations: the number of iterations + @type iterations: int + @ivar salt: the salt + @type salt: string + @ivar next: the next name hash + @type next: string + @ivar windows: the windowed bitmap list + @type windows: list of (window number, string) tuples""" + + __slots__ = ['algorithm', 'flags', 'iterations', 'salt', 'next', 'windows'] + + def __init__(self, rdclass, rdtype, algorithm, flags, iterations, salt, + next, windows): + super(NSEC3, self).__init__(rdclass, rdtype) + self.algorithm = algorithm + self.flags = flags + self.iterations = iterations + if isinstance(salt, text_type): + self.salt = salt.encode() + else: + self.salt = salt + self.next = next + self.windows = windows + + def to_text(self, origin=None, relativize=True, **kw): + next = base64.b32encode(self.next).translate( + b32_normal_to_hex).lower().decode() + if self.salt == b'': + salt = '-' + else: + salt = binascii.hexlify(self.salt).decode() + text = u'' + for (window, bitmap) in self.windows: + bits = [] + for i in xrange(0, len(bitmap)): + byte = bitmap[i] + for j in xrange(0, 8): + if byte & (0x80 >> j): + bits.append(dns.rdatatype.to_text(window * 256 + + i * 8 + j)) + text += (u' ' + u' '.join(bits)) + return u'%u %u %u %s %s%s' % (self.algorithm, self.flags, + self.iterations, salt, next, text) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + algorithm = tok.get_uint8() + flags = tok.get_uint8() + iterations = tok.get_uint16() + salt = tok.get_string() + if salt == u'-': + salt = b'' + else: + salt = binascii.unhexlify(salt.encode('ascii')) + next = tok.get_string().encode( + 'ascii').upper().translate(b32_hex_to_normal) + next = base64.b32decode(next) + rdtypes = [] + while 1: + token = tok.get().unescape() + if token.is_eol_or_eof(): + break + nrdtype = dns.rdatatype.from_text(token.value) + if nrdtype == 0: + raise dns.exception.SyntaxError("NSEC3 with bit 0") + if nrdtype > 65535: + raise dns.exception.SyntaxError("NSEC3 with bit > 65535") + rdtypes.append(nrdtype) + rdtypes.sort() + window = 0 + octets = 0 + prior_rdtype = 0 + bitmap = bytearray(b'\0' * 32) + windows = [] + for nrdtype in rdtypes: + if nrdtype == prior_rdtype: + continue + prior_rdtype = nrdtype + new_window = nrdtype // 256 + if new_window != window: + if octets != 0: + windows.append((window, bitmap[0:octets])) + bitmap = bytearray(b'\0' * 32) + window = new_window + offset = nrdtype % 256 + byte = offset // 8 + bit = offset % 8 + octets = byte + 1 + bitmap[byte] = bitmap[byte] | (0x80 >> bit) + if octets != 0: + windows.append((window, bitmap[0:octets])) + return cls(rdclass, rdtype, algorithm, flags, iterations, salt, next, + windows) + + def to_wire(self, file, compress=None, origin=None): + l = len(self.salt) + file.write(struct.pack("!BBHB", self.algorithm, self.flags, + self.iterations, l)) + file.write(self.salt) + l = len(self.next) + file.write(struct.pack("!B", l)) + file.write(self.next) + for (window, bitmap) in self.windows: + file.write(struct.pack("!BB", window, len(bitmap))) + file.write(bitmap) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (algorithm, flags, iterations, slen) = \ + struct.unpack('!BBHB', wire[current: current + 5]) + + current += 5 + rdlen -= 5 + salt = wire[current: current + slen].unwrap() + current += slen + rdlen -= slen + nlen = wire[current] + current += 1 + rdlen -= 1 + next = wire[current: current + nlen].unwrap() + current += nlen + rdlen -= nlen + windows = [] + while rdlen > 0: + if rdlen < 3: + raise dns.exception.FormError("NSEC3 too short") + window = wire[current] + octets = wire[current + 1] + if octets == 0 or octets > 32: + raise dns.exception.FormError("bad NSEC3 octets") + current += 2 + rdlen -= 2 + if rdlen < octets: + raise dns.exception.FormError("bad NSEC3 bitmap length") + bitmap = bytearray(wire[current: current + octets].unwrap()) + current += octets + rdlen -= octets + windows.append((window, bitmap)) + return cls(rdclass, rdtype, algorithm, flags, iterations, salt, next, + windows) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC3PARAM.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC3PARAM.py new file mode 100644 index 0000000000..87c36e5675 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/NSEC3PARAM.py @@ -0,0 +1,90 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2004-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct +import binascii + +import dns.exception +import dns.rdata +from dns._compat import text_type + + +class NSEC3PARAM(dns.rdata.Rdata): + + """NSEC3PARAM record + + @ivar algorithm: the hash algorithm number + @type algorithm: int + @ivar flags: the flags + @type flags: int + @ivar iterations: the number of iterations + @type iterations: int + @ivar salt: the salt + @type salt: string""" + + __slots__ = ['algorithm', 'flags', 'iterations', 'salt'] + + def __init__(self, rdclass, rdtype, algorithm, flags, iterations, salt): + super(NSEC3PARAM, self).__init__(rdclass, rdtype) + self.algorithm = algorithm + self.flags = flags + self.iterations = iterations + if isinstance(salt, text_type): + self.salt = salt.encode() + else: + self.salt = salt + + def to_text(self, origin=None, relativize=True, **kw): + if self.salt == b'': + salt = '-' + else: + salt = binascii.hexlify(self.salt).decode() + return '%u %u %u %s' % (self.algorithm, self.flags, self.iterations, + salt) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + algorithm = tok.get_uint8() + flags = tok.get_uint8() + iterations = tok.get_uint16() + salt = tok.get_string() + if salt == '-': + salt = '' + else: + salt = binascii.unhexlify(salt.encode()) + tok.get_eol() + return cls(rdclass, rdtype, algorithm, flags, iterations, salt) + + def to_wire(self, file, compress=None, origin=None): + l = len(self.salt) + file.write(struct.pack("!BBHB", self.algorithm, self.flags, + self.iterations, l)) + file.write(self.salt) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (algorithm, flags, iterations, slen) = \ + struct.unpack('!BBHB', + wire[current: current + 5]) + current += 5 + rdlen -= 5 + salt = wire[current: current + slen].unwrap() + current += slen + rdlen -= slen + if rdlen != 0: + raise dns.exception.FormError + return cls(rdclass, rdtype, algorithm, flags, iterations, salt) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/OPENPGPKEY.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/OPENPGPKEY.py new file mode 100644 index 0000000000..a066cf98df --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/OPENPGPKEY.py @@ -0,0 +1,60 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2016 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import base64 + +import dns.exception +import dns.rdata +import dns.tokenizer + +class OPENPGPKEY(dns.rdata.Rdata): + + """OPENPGPKEY record + + @ivar key: the key + @type key: bytes + @see: RFC 7929 + """ + + def __init__(self, rdclass, rdtype, key): + super(OPENPGPKEY, self).__init__(rdclass, rdtype) + self.key = key + + def to_text(self, origin=None, relativize=True, **kw): + return dns.rdata._base64ify(self.key) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + chunks = [] + while 1: + t = tok.get().unescape() + if t.is_eol_or_eof(): + break + if not t.is_identifier(): + raise dns.exception.SyntaxError + chunks.append(t.value.encode()) + b64 = b''.join(chunks) + key = base64.b64decode(b64) + return cls(rdclass, rdtype, key) + + def to_wire(self, file, compress=None, origin=None): + file.write(self.key) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + key = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, key) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/PTR.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/PTR.py new file mode 100644 index 0000000000..20cd50761d --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/PTR.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.nsbase + + +class PTR(dns.rdtypes.nsbase.NSBase): + + """PTR record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/RP.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/RP.py new file mode 100644 index 0000000000..8f07be9071 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/RP.py @@ -0,0 +1,82 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.exception +import dns.rdata +import dns.name + + +class RP(dns.rdata.Rdata): + + """RP record + + @ivar mbox: The responsible person's mailbox + @type mbox: dns.name.Name object + @ivar txt: The owner name of a node with TXT records, or the root name + if no TXT records are associated with this RP. + @type txt: dns.name.Name object + @see: RFC 1183""" + + __slots__ = ['mbox', 'txt'] + + def __init__(self, rdclass, rdtype, mbox, txt): + super(RP, self).__init__(rdclass, rdtype) + self.mbox = mbox + self.txt = txt + + def to_text(self, origin=None, relativize=True, **kw): + mbox = self.mbox.choose_relativity(origin, relativize) + txt = self.txt.choose_relativity(origin, relativize) + return "{} {}".format(str(mbox), str(txt)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + mbox = tok.get_name() + txt = tok.get_name() + mbox = mbox.choose_relativity(origin, relativize) + txt = txt.choose_relativity(origin, relativize) + tok.get_eol() + return cls(rdclass, rdtype, mbox, txt) + + def to_wire(self, file, compress=None, origin=None): + self.mbox.to_wire(file, None, origin) + self.txt.to_wire(file, None, origin) + + def to_digestable(self, origin=None): + return self.mbox.to_digestable(origin) + \ + self.txt.to_digestable(origin) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (mbox, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + current += cused + rdlen -= cused + if rdlen <= 0: + raise dns.exception.FormError + (txt, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + if cused != rdlen: + raise dns.exception.FormError + if origin is not None: + mbox = mbox.relativize(origin) + txt = txt.relativize(origin) + return cls(rdclass, rdtype, mbox, txt) + + def choose_relativity(self, origin=None, relativize=True): + self.mbox = self.mbox.choose_relativity(origin, relativize) + self.txt = self.txt.choose_relativity(origin, relativize) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/RRSIG.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/RRSIG.py new file mode 100644 index 0000000000..d3756ece4e --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/RRSIG.py @@ -0,0 +1,158 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2004-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import base64 +import calendar +import struct +import time + +import dns.dnssec +import dns.exception +import dns.rdata +import dns.rdatatype + + +class BadSigTime(dns.exception.DNSException): + + """Time in DNS SIG or RRSIG resource record cannot be parsed.""" + + +def sigtime_to_posixtime(what): + if len(what) != 14: + raise BadSigTime + year = int(what[0:4]) + month = int(what[4:6]) + day = int(what[6:8]) + hour = int(what[8:10]) + minute = int(what[10:12]) + second = int(what[12:14]) + return calendar.timegm((year, month, day, hour, minute, second, + 0, 0, 0)) + + +def posixtime_to_sigtime(what): + return time.strftime('%Y%m%d%H%M%S', time.gmtime(what)) + + +class RRSIG(dns.rdata.Rdata): + + """RRSIG record + + @ivar type_covered: the rdata type this signature covers + @type type_covered: int + @ivar algorithm: the algorithm used for the sig + @type algorithm: int + @ivar labels: number of labels + @type labels: int + @ivar original_ttl: the original TTL + @type original_ttl: long + @ivar expiration: signature expiration time + @type expiration: long + @ivar inception: signature inception time + @type inception: long + @ivar key_tag: the key tag + @type key_tag: int + @ivar signer: the signer + @type signer: dns.name.Name object + @ivar signature: the signature + @type signature: string""" + + __slots__ = ['type_covered', 'algorithm', 'labels', 'original_ttl', + 'expiration', 'inception', 'key_tag', 'signer', + 'signature'] + + def __init__(self, rdclass, rdtype, type_covered, algorithm, labels, + original_ttl, expiration, inception, key_tag, signer, + signature): + super(RRSIG, self).__init__(rdclass, rdtype) + self.type_covered = type_covered + self.algorithm = algorithm + self.labels = labels + self.original_ttl = original_ttl + self.expiration = expiration + self.inception = inception + self.key_tag = key_tag + self.signer = signer + self.signature = signature + + def covers(self): + return self.type_covered + + def to_text(self, origin=None, relativize=True, **kw): + return '%s %d %d %d %s %s %d %s %s' % ( + dns.rdatatype.to_text(self.type_covered), + self.algorithm, + self.labels, + self.original_ttl, + posixtime_to_sigtime(self.expiration), + posixtime_to_sigtime(self.inception), + self.key_tag, + self.signer.choose_relativity(origin, relativize), + dns.rdata._base64ify(self.signature) + ) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + type_covered = dns.rdatatype.from_text(tok.get_string()) + algorithm = dns.dnssec.algorithm_from_text(tok.get_string()) + labels = tok.get_int() + original_ttl = tok.get_ttl() + expiration = sigtime_to_posixtime(tok.get_string()) + inception = sigtime_to_posixtime(tok.get_string()) + key_tag = tok.get_int() + signer = tok.get_name() + signer = signer.choose_relativity(origin, relativize) + chunks = [] + while 1: + t = tok.get().unescape() + if t.is_eol_or_eof(): + break + if not t.is_identifier(): + raise dns.exception.SyntaxError + chunks.append(t.value.encode()) + b64 = b''.join(chunks) + signature = base64.b64decode(b64) + return cls(rdclass, rdtype, type_covered, algorithm, labels, + original_ttl, expiration, inception, key_tag, signer, + signature) + + def to_wire(self, file, compress=None, origin=None): + header = struct.pack('!HBBIIIH', self.type_covered, + self.algorithm, self.labels, + self.original_ttl, self.expiration, + self.inception, self.key_tag) + file.write(header) + self.signer.to_wire(file, None, origin) + file.write(self.signature) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + header = struct.unpack('!HBBIIIH', wire[current: current + 18]) + current += 18 + rdlen -= 18 + (signer, cused) = dns.name.from_wire(wire[: current + rdlen], current) + current += cused + rdlen -= cused + if origin is not None: + signer = signer.relativize(origin) + signature = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, header[0], header[1], header[2], + header[3], header[4], header[5], header[6], signer, + signature) + + def choose_relativity(self, origin=None, relativize=True): + self.signer = self.signer.choose_relativity(origin, relativize) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/RT.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/RT.py new file mode 100644 index 0000000000..d0feb79e9d --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/RT.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.mxbase + + +class RT(dns.rdtypes.mxbase.UncompressedDowncasingMX): + + """RT record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/SOA.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/SOA.py new file mode 100644 index 0000000000..aec81cad8a --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/SOA.py @@ -0,0 +1,116 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.name + + +class SOA(dns.rdata.Rdata): + + """SOA record + + @ivar mname: the SOA MNAME (master name) field + @type mname: dns.name.Name object + @ivar rname: the SOA RNAME (responsible name) field + @type rname: dns.name.Name object + @ivar serial: The zone's serial number + @type serial: int + @ivar refresh: The zone's refresh value (in seconds) + @type refresh: int + @ivar retry: The zone's retry value (in seconds) + @type retry: int + @ivar expire: The zone's expiration value (in seconds) + @type expire: int + @ivar minimum: The zone's negative caching time (in seconds, called + "minimum" for historical reasons) + @type minimum: int + @see: RFC 1035""" + + __slots__ = ['mname', 'rname', 'serial', 'refresh', 'retry', 'expire', + 'minimum'] + + def __init__(self, rdclass, rdtype, mname, rname, serial, refresh, retry, + expire, minimum): + super(SOA, self).__init__(rdclass, rdtype) + self.mname = mname + self.rname = rname + self.serial = serial + self.refresh = refresh + self.retry = retry + self.expire = expire + self.minimum = minimum + + def to_text(self, origin=None, relativize=True, **kw): + mname = self.mname.choose_relativity(origin, relativize) + rname = self.rname.choose_relativity(origin, relativize) + return '%s %s %d %d %d %d %d' % ( + mname, rname, self.serial, self.refresh, self.retry, + self.expire, self.minimum) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + mname = tok.get_name() + rname = tok.get_name() + mname = mname.choose_relativity(origin, relativize) + rname = rname.choose_relativity(origin, relativize) + serial = tok.get_uint32() + refresh = tok.get_ttl() + retry = tok.get_ttl() + expire = tok.get_ttl() + minimum = tok.get_ttl() + tok.get_eol() + return cls(rdclass, rdtype, mname, rname, serial, refresh, retry, + expire, minimum) + + def to_wire(self, file, compress=None, origin=None): + self.mname.to_wire(file, compress, origin) + self.rname.to_wire(file, compress, origin) + five_ints = struct.pack('!IIIII', self.serial, self.refresh, + self.retry, self.expire, self.minimum) + file.write(five_ints) + + def to_digestable(self, origin=None): + return self.mname.to_digestable(origin) + \ + self.rname.to_digestable(origin) + \ + struct.pack('!IIIII', self.serial, self.refresh, + self.retry, self.expire, self.minimum) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (mname, cused) = dns.name.from_wire(wire[: current + rdlen], current) + current += cused + rdlen -= cused + (rname, cused) = dns.name.from_wire(wire[: current + rdlen], current) + current += cused + rdlen -= cused + if rdlen != 20: + raise dns.exception.FormError + five_ints = struct.unpack('!IIIII', + wire[current: current + rdlen]) + if origin is not None: + mname = mname.relativize(origin) + rname = rname.relativize(origin) + return cls(rdclass, rdtype, mname, rname, + five_ints[0], five_ints[1], five_ints[2], five_ints[3], + five_ints[4]) + + def choose_relativity(self, origin=None, relativize=True): + self.mname = self.mname.choose_relativity(origin, relativize) + self.rname = self.rname.choose_relativity(origin, relativize) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/SPF.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/SPF.py new file mode 100644 index 0000000000..41dee62387 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/SPF.py @@ -0,0 +1,25 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2006, 2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.txtbase + + +class SPF(dns.rdtypes.txtbase.TXTBase): + + """SPF record + + @see: RFC 4408""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/SSHFP.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/SSHFP.py new file mode 100644 index 0000000000..c18311e906 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/SSHFP.py @@ -0,0 +1,79 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2005-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct +import binascii + +import dns.rdata +import dns.rdatatype + + +class SSHFP(dns.rdata.Rdata): + + """SSHFP record + + @ivar algorithm: the algorithm + @type algorithm: int + @ivar fp_type: the digest type + @type fp_type: int + @ivar fingerprint: the fingerprint + @type fingerprint: string + @see: draft-ietf-secsh-dns-05.txt""" + + __slots__ = ['algorithm', 'fp_type', 'fingerprint'] + + def __init__(self, rdclass, rdtype, algorithm, fp_type, + fingerprint): + super(SSHFP, self).__init__(rdclass, rdtype) + self.algorithm = algorithm + self.fp_type = fp_type + self.fingerprint = fingerprint + + def to_text(self, origin=None, relativize=True, **kw): + return '%d %d %s' % (self.algorithm, + self.fp_type, + dns.rdata._hexify(self.fingerprint, + chunksize=128)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + algorithm = tok.get_uint8() + fp_type = tok.get_uint8() + chunks = [] + while 1: + t = tok.get().unescape() + if t.is_eol_or_eof(): + break + if not t.is_identifier(): + raise dns.exception.SyntaxError + chunks.append(t.value.encode()) + fingerprint = b''.join(chunks) + fingerprint = binascii.unhexlify(fingerprint) + return cls(rdclass, rdtype, algorithm, fp_type, fingerprint) + + def to_wire(self, file, compress=None, origin=None): + header = struct.pack("!BB", self.algorithm, self.fp_type) + file.write(header) + file.write(self.fingerprint) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + header = struct.unpack("!BB", wire[current: current + 2]) + current += 2 + rdlen -= 2 + fingerprint = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, header[0], header[1], fingerprint) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/TLSA.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/TLSA.py new file mode 100644 index 0000000000..a135c2b3da --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/TLSA.py @@ -0,0 +1,84 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2005-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct +import binascii + +import dns.rdata +import dns.rdatatype + + +class TLSA(dns.rdata.Rdata): + + """TLSA record + + @ivar usage: The certificate usage + @type usage: int + @ivar selector: The selector field + @type selector: int + @ivar mtype: The 'matching type' field + @type mtype: int + @ivar cert: The 'Certificate Association Data' field + @type cert: string + @see: RFC 6698""" + + __slots__ = ['usage', 'selector', 'mtype', 'cert'] + + def __init__(self, rdclass, rdtype, usage, selector, + mtype, cert): + super(TLSA, self).__init__(rdclass, rdtype) + self.usage = usage + self.selector = selector + self.mtype = mtype + self.cert = cert + + def to_text(self, origin=None, relativize=True, **kw): + return '%d %d %d %s' % (self.usage, + self.selector, + self.mtype, + dns.rdata._hexify(self.cert, + chunksize=128)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + usage = tok.get_uint8() + selector = tok.get_uint8() + mtype = tok.get_uint8() + cert_chunks = [] + while 1: + t = tok.get().unescape() + if t.is_eol_or_eof(): + break + if not t.is_identifier(): + raise dns.exception.SyntaxError + cert_chunks.append(t.value.encode()) + cert = b''.join(cert_chunks) + cert = binascii.unhexlify(cert) + return cls(rdclass, rdtype, usage, selector, mtype, cert) + + def to_wire(self, file, compress=None, origin=None): + header = struct.pack("!BBB", self.usage, self.selector, self.mtype) + file.write(header) + file.write(self.cert) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + header = struct.unpack("!BBB", wire[current: current + 3]) + current += 3 + rdlen -= 3 + cert = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, header[0], header[1], header[2], cert) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/TXT.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/TXT.py new file mode 100644 index 0000000000..c5ae919c5e --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/TXT.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.txtbase + + +class TXT(dns.rdtypes.txtbase.TXTBase): + + """TXT record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/URI.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/URI.py new file mode 100644 index 0000000000..f5b65ed6a9 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/URI.py @@ -0,0 +1,82 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# Copyright (C) 2015 Red Hat, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.name +from dns._compat import text_type + + +class URI(dns.rdata.Rdata): + + """URI record + + @ivar priority: the priority + @type priority: int + @ivar weight: the weight + @type weight: int + @ivar target: the target host + @type target: dns.name.Name object + @see: draft-faltstrom-uri-13""" + + __slots__ = ['priority', 'weight', 'target'] + + def __init__(self, rdclass, rdtype, priority, weight, target): + super(URI, self).__init__(rdclass, rdtype) + self.priority = priority + self.weight = weight + if len(target) < 1: + raise dns.exception.SyntaxError("URI target cannot be empty") + if isinstance(target, text_type): + self.target = target.encode() + else: + self.target = target + + def to_text(self, origin=None, relativize=True, **kw): + return '%d %d "%s"' % (self.priority, self.weight, + self.target.decode()) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + priority = tok.get_uint16() + weight = tok.get_uint16() + target = tok.get().unescape() + if not (target.is_quoted_string() or target.is_identifier()): + raise dns.exception.SyntaxError("URI target must be a string") + tok.get_eol() + return cls(rdclass, rdtype, priority, weight, target.value) + + def to_wire(self, file, compress=None, origin=None): + two_ints = struct.pack("!HH", self.priority, self.weight) + file.write(two_ints) + file.write(self.target) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + if rdlen < 5: + raise dns.exception.FormError('URI RR is shorter than 5 octets') + + (priority, weight) = struct.unpack('!HH', wire[current: current + 4]) + current += 4 + rdlen -= 4 + target = wire[current: current + rdlen] + current += rdlen + + return cls(rdclass, rdtype, priority, weight, target) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/X25.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/X25.py new file mode 100644 index 0000000000..e530a2c2a6 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/X25.py @@ -0,0 +1,66 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.tokenizer +from dns._compat import text_type + + +class X25(dns.rdata.Rdata): + + """X25 record + + @ivar address: the PSDN address + @type address: string + @see: RFC 1183""" + + __slots__ = ['address'] + + def __init__(self, rdclass, rdtype, address): + super(X25, self).__init__(rdclass, rdtype) + if isinstance(address, text_type): + self.address = address.encode() + else: + self.address = address + + def to_text(self, origin=None, relativize=True, **kw): + return '"%s"' % dns.rdata._escapify(self.address) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + address = tok.get_string() + tok.get_eol() + return cls(rdclass, rdtype, address) + + def to_wire(self, file, compress=None, origin=None): + l = len(self.address) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(self.address) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + l = wire[current] + current += 1 + rdlen -= 1 + if l != rdlen: + raise dns.exception.FormError + address = wire[current: current + l].unwrap() + return cls(rdclass, rdtype, address) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/ANY/__init__.py b/openpype/vendor/python/python_2/dns/rdtypes/ANY/__init__.py new file mode 100644 index 0000000000..ca41ef8055 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/ANY/__init__.py @@ -0,0 +1,57 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Class ANY (generic) rdata type classes.""" + +__all__ = [ + 'AFSDB', + 'AVC', + 'CAA', + 'CDNSKEY', + 'CDS', + 'CERT', + 'CNAME', + 'CSYNC', + 'DLV', + 'DNAME', + 'DNSKEY', + 'DS', + 'EUI48', + 'EUI64', + 'GPOS', + 'HINFO', + 'HIP', + 'ISDN', + 'LOC', + 'MX', + 'NS', + 'NSEC', + 'NSEC3', + 'NSEC3PARAM', + 'OPENPGPKEY', + 'PTR', + 'RP', + 'RRSIG', + 'RT', + 'SOA', + 'SPF', + 'SSHFP', + 'TLSA', + 'TXT', + 'URI', + 'X25', +] diff --git a/openpype/vendor/python/python_2/dns/rdtypes/CH/A.py b/openpype/vendor/python/python_2/dns/rdtypes/CH/A.py new file mode 100644 index 0000000000..e65d192d82 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/CH/A.py @@ -0,0 +1,70 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.mxbase +import struct + +class A(dns.rdtypes.mxbase.MXBase): + + """A record for Chaosnet + @ivar domain: the domain of the address + @type domain: dns.name.Name object + @ivar address: the 16-bit address + @type address: int""" + + __slots__ = ['domain', 'address'] + + def __init__(self, rdclass, rdtype, address, domain): + super(A, self).__init__(rdclass, rdtype, address, domain) + self.domain = domain + self.address = address + + def to_text(self, origin=None, relativize=True, **kw): + domain = self.domain.choose_relativity(origin, relativize) + return '%s %o' % (domain, self.address) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + domain = tok.get_name() + address = tok.get_uint16(base=8) + domain = domain.choose_relativity(origin, relativize) + tok.get_eol() + return cls(rdclass, rdtype, address, domain) + + def to_wire(self, file, compress=None, origin=None): + self.domain.to_wire(file, compress, origin) + pref = struct.pack("!H", self.address) + file.write(pref) + + def to_digestable(self, origin=None): + return self.domain.to_digestable(origin) + \ + struct.pack("!H", self.address) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (domain, cused) = dns.name.from_wire(wire[: current + rdlen-2], + current) + current += cused + (address,) = struct.unpack('!H', wire[current: current + 2]) + if cused+2 != rdlen: + raise dns.exception.FormError + if origin is not None: + domain = domain.relativize(origin) + return cls(rdclass, rdtype, address, domain) + + def choose_relativity(self, origin=None, relativize=True): + self.domain = self.domain.choose_relativity(origin, relativize) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/CH/__init__.py b/openpype/vendor/python/python_2/dns/rdtypes/CH/__init__.py new file mode 100644 index 0000000000..7184a7332a --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/CH/__init__.py @@ -0,0 +1,22 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Class CH rdata type classes.""" + +__all__ = [ + 'A', +] diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/A.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/A.py new file mode 100644 index 0000000000..8998982462 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/A.py @@ -0,0 +1,54 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.exception +import dns.ipv4 +import dns.rdata +import dns.tokenizer + + +class A(dns.rdata.Rdata): + + """A record. + + @ivar address: an IPv4 address + @type address: string (in the standard "dotted quad" format)""" + + __slots__ = ['address'] + + def __init__(self, rdclass, rdtype, address): + super(A, self).__init__(rdclass, rdtype) + # check that it's OK + dns.ipv4.inet_aton(address) + self.address = address + + def to_text(self, origin=None, relativize=True, **kw): + return self.address + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + address = tok.get_identifier() + tok.get_eol() + return cls(rdclass, rdtype, address) + + def to_wire(self, file, compress=None, origin=None): + file.write(dns.ipv4.inet_aton(self.address)) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + address = dns.ipv4.inet_ntoa(wire[current: current + rdlen]) + return cls(rdclass, rdtype, address) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/AAAA.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/AAAA.py new file mode 100644 index 0000000000..a77c5bf2a5 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/AAAA.py @@ -0,0 +1,55 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.exception +import dns.inet +import dns.rdata +import dns.tokenizer + + +class AAAA(dns.rdata.Rdata): + + """AAAA record. + + @ivar address: an IPv6 address + @type address: string (in the standard IPv6 format)""" + + __slots__ = ['address'] + + def __init__(self, rdclass, rdtype, address): + super(AAAA, self).__init__(rdclass, rdtype) + # check that it's OK + dns.inet.inet_pton(dns.inet.AF_INET6, address) + self.address = address + + def to_text(self, origin=None, relativize=True, **kw): + return self.address + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + address = tok.get_identifier() + tok.get_eol() + return cls(rdclass, rdtype, address) + + def to_wire(self, file, compress=None, origin=None): + file.write(dns.inet.inet_pton(dns.inet.AF_INET6, self.address)) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + address = dns.inet.inet_ntop(dns.inet.AF_INET6, + wire[current: current + rdlen]) + return cls(rdclass, rdtype, address) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/APL.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/APL.py new file mode 100644 index 0000000000..48faf88ab7 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/APL.py @@ -0,0 +1,165 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import binascii +import codecs +import struct + +import dns.exception +import dns.inet +import dns.rdata +import dns.tokenizer +from dns._compat import xrange, maybe_chr + + +class APLItem(object): + + """An APL list item. + + @ivar family: the address family (IANA address family registry) + @type family: int + @ivar negation: is this item negated? + @type negation: bool + @ivar address: the address + @type address: string + @ivar prefix: the prefix length + @type prefix: int + """ + + __slots__ = ['family', 'negation', 'address', 'prefix'] + + def __init__(self, family, negation, address, prefix): + self.family = family + self.negation = negation + self.address = address + self.prefix = prefix + + def __str__(self): + if self.negation: + return "!%d:%s/%s" % (self.family, self.address, self.prefix) + else: + return "%d:%s/%s" % (self.family, self.address, self.prefix) + + def to_wire(self, file): + if self.family == 1: + address = dns.inet.inet_pton(dns.inet.AF_INET, self.address) + elif self.family == 2: + address = dns.inet.inet_pton(dns.inet.AF_INET6, self.address) + else: + address = binascii.unhexlify(self.address) + # + # Truncate least significant zero bytes. + # + last = 0 + for i in xrange(len(address) - 1, -1, -1): + if address[i] != maybe_chr(0): + last = i + 1 + break + address = address[0: last] + l = len(address) + assert l < 128 + if self.negation: + l |= 0x80 + header = struct.pack('!HBB', self.family, self.prefix, l) + file.write(header) + file.write(address) + + +class APL(dns.rdata.Rdata): + + """APL record. + + @ivar items: a list of APL items + @type items: list of APL_Item + @see: RFC 3123""" + + __slots__ = ['items'] + + def __init__(self, rdclass, rdtype, items): + super(APL, self).__init__(rdclass, rdtype) + self.items = items + + def to_text(self, origin=None, relativize=True, **kw): + return ' '.join(map(str, self.items)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + items = [] + while 1: + token = tok.get().unescape() + if token.is_eol_or_eof(): + break + item = token.value + if item[0] == '!': + negation = True + item = item[1:] + else: + negation = False + (family, rest) = item.split(':', 1) + family = int(family) + (address, prefix) = rest.split('/', 1) + prefix = int(prefix) + item = APLItem(family, negation, address, prefix) + items.append(item) + + return cls(rdclass, rdtype, items) + + def to_wire(self, file, compress=None, origin=None): + for item in self.items: + item.to_wire(file) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + + items = [] + while 1: + if rdlen == 0: + break + if rdlen < 4: + raise dns.exception.FormError + header = struct.unpack('!HBB', wire[current: current + 4]) + afdlen = header[2] + if afdlen > 127: + negation = True + afdlen -= 128 + else: + negation = False + current += 4 + rdlen -= 4 + if rdlen < afdlen: + raise dns.exception.FormError + address = wire[current: current + afdlen].unwrap() + l = len(address) + if header[0] == 1: + if l < 4: + address += b'\x00' * (4 - l) + address = dns.inet.inet_ntop(dns.inet.AF_INET, address) + elif header[0] == 2: + if l < 16: + address += b'\x00' * (16 - l) + address = dns.inet.inet_ntop(dns.inet.AF_INET6, address) + else: + # + # This isn't really right according to the RFC, but it + # seems better than throwing an exception + # + address = codecs.encode(address, 'hex_codec') + current += afdlen + rdlen -= afdlen + item = APLItem(header[0], negation, address, header[1]) + items.append(item) + return cls(rdclass, rdtype, items) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/DHCID.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/DHCID.py new file mode 100644 index 0000000000..cec64590f0 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/DHCID.py @@ -0,0 +1,61 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2006, 2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import base64 + +import dns.exception + + +class DHCID(dns.rdata.Rdata): + + """DHCID record + + @ivar data: the data (the content of the RR is opaque as far as the + DNS is concerned) + @type data: string + @see: RFC 4701""" + + __slots__ = ['data'] + + def __init__(self, rdclass, rdtype, data): + super(DHCID, self).__init__(rdclass, rdtype) + self.data = data + + def to_text(self, origin=None, relativize=True, **kw): + return dns.rdata._base64ify(self.data) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + chunks = [] + while 1: + t = tok.get().unescape() + if t.is_eol_or_eof(): + break + if not t.is_identifier(): + raise dns.exception.SyntaxError + chunks.append(t.value.encode()) + b64 = b''.join(chunks) + data = base64.b64decode(b64) + return cls(rdclass, rdtype, data) + + def to_wire(self, file, compress=None, origin=None): + file.write(self.data) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + data = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, data) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/IPSECKEY.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/IPSECKEY.py new file mode 100644 index 0000000000..8f49ba137d --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/IPSECKEY.py @@ -0,0 +1,150 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2006, 2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct +import base64 + +import dns.exception +import dns.inet +import dns.name + + +class IPSECKEY(dns.rdata.Rdata): + + """IPSECKEY record + + @ivar precedence: the precedence for this key data + @type precedence: int + @ivar gateway_type: the gateway type + @type gateway_type: int + @ivar algorithm: the algorithm to use + @type algorithm: int + @ivar gateway: the public key + @type gateway: None, IPv4 address, IPV6 address, or domain name + @ivar key: the public key + @type key: string + @see: RFC 4025""" + + __slots__ = ['precedence', 'gateway_type', 'algorithm', 'gateway', 'key'] + + def __init__(self, rdclass, rdtype, precedence, gateway_type, algorithm, + gateway, key): + super(IPSECKEY, self).__init__(rdclass, rdtype) + if gateway_type == 0: + if gateway != '.' and gateway is not None: + raise SyntaxError('invalid gateway for gateway type 0') + gateway = None + elif gateway_type == 1: + # check that it's OK + dns.inet.inet_pton(dns.inet.AF_INET, gateway) + elif gateway_type == 2: + # check that it's OK + dns.inet.inet_pton(dns.inet.AF_INET6, gateway) + elif gateway_type == 3: + pass + else: + raise SyntaxError( + 'invalid IPSECKEY gateway type: %d' % gateway_type) + self.precedence = precedence + self.gateway_type = gateway_type + self.algorithm = algorithm + self.gateway = gateway + self.key = key + + def to_text(self, origin=None, relativize=True, **kw): + if self.gateway_type == 0: + gateway = '.' + elif self.gateway_type == 1: + gateway = self.gateway + elif self.gateway_type == 2: + gateway = self.gateway + elif self.gateway_type == 3: + gateway = str(self.gateway.choose_relativity(origin, relativize)) + else: + raise ValueError('invalid gateway type') + return '%d %d %d %s %s' % (self.precedence, self.gateway_type, + self.algorithm, gateway, + dns.rdata._base64ify(self.key)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + precedence = tok.get_uint8() + gateway_type = tok.get_uint8() + algorithm = tok.get_uint8() + if gateway_type == 3: + gateway = tok.get_name().choose_relativity(origin, relativize) + else: + gateway = tok.get_string() + chunks = [] + while 1: + t = tok.get().unescape() + if t.is_eol_or_eof(): + break + if not t.is_identifier(): + raise dns.exception.SyntaxError + chunks.append(t.value.encode()) + b64 = b''.join(chunks) + key = base64.b64decode(b64) + return cls(rdclass, rdtype, precedence, gateway_type, algorithm, + gateway, key) + + def to_wire(self, file, compress=None, origin=None): + header = struct.pack("!BBB", self.precedence, self.gateway_type, + self.algorithm) + file.write(header) + if self.gateway_type == 0: + pass + elif self.gateway_type == 1: + file.write(dns.inet.inet_pton(dns.inet.AF_INET, self.gateway)) + elif self.gateway_type == 2: + file.write(dns.inet.inet_pton(dns.inet.AF_INET6, self.gateway)) + elif self.gateway_type == 3: + self.gateway.to_wire(file, None, origin) + else: + raise ValueError('invalid gateway type') + file.write(self.key) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + if rdlen < 3: + raise dns.exception.FormError + header = struct.unpack('!BBB', wire[current: current + 3]) + gateway_type = header[1] + current += 3 + rdlen -= 3 + if gateway_type == 0: + gateway = None + elif gateway_type == 1: + gateway = dns.inet.inet_ntop(dns.inet.AF_INET, + wire[current: current + 4]) + current += 4 + rdlen -= 4 + elif gateway_type == 2: + gateway = dns.inet.inet_ntop(dns.inet.AF_INET6, + wire[current: current + 16]) + current += 16 + rdlen -= 16 + elif gateway_type == 3: + (gateway, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + current += cused + rdlen -= cused + else: + raise dns.exception.FormError('invalid IPSECKEY gateway type') + key = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, header[0], gateway_type, header[2], + gateway, key) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/KX.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/KX.py new file mode 100644 index 0000000000..1318a582e7 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/KX.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.mxbase + + +class KX(dns.rdtypes.mxbase.UncompressedMX): + + """KX record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/NAPTR.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/NAPTR.py new file mode 100644 index 0000000000..32fa4745ea --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/NAPTR.py @@ -0,0 +1,127 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.name +import dns.rdata +from dns._compat import xrange, text_type + + +def _write_string(file, s): + l = len(s) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(s) + + +def _sanitize(value): + if isinstance(value, text_type): + return value.encode() + return value + + +class NAPTR(dns.rdata.Rdata): + + """NAPTR record + + @ivar order: order + @type order: int + @ivar preference: preference + @type preference: int + @ivar flags: flags + @type flags: string + @ivar service: service + @type service: string + @ivar regexp: regular expression + @type regexp: string + @ivar replacement: replacement name + @type replacement: dns.name.Name object + @see: RFC 3403""" + + __slots__ = ['order', 'preference', 'flags', 'service', 'regexp', + 'replacement'] + + def __init__(self, rdclass, rdtype, order, preference, flags, service, + regexp, replacement): + super(NAPTR, self).__init__(rdclass, rdtype) + self.flags = _sanitize(flags) + self.service = _sanitize(service) + self.regexp = _sanitize(regexp) + self.order = order + self.preference = preference + self.replacement = replacement + + def to_text(self, origin=None, relativize=True, **kw): + replacement = self.replacement.choose_relativity(origin, relativize) + return '%d %d "%s" "%s" "%s" %s' % \ + (self.order, self.preference, + dns.rdata._escapify(self.flags), + dns.rdata._escapify(self.service), + dns.rdata._escapify(self.regexp), + replacement) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + order = tok.get_uint16() + preference = tok.get_uint16() + flags = tok.get_string() + service = tok.get_string() + regexp = tok.get_string() + replacement = tok.get_name() + replacement = replacement.choose_relativity(origin, relativize) + tok.get_eol() + return cls(rdclass, rdtype, order, preference, flags, service, + regexp, replacement) + + def to_wire(self, file, compress=None, origin=None): + two_ints = struct.pack("!HH", self.order, self.preference) + file.write(two_ints) + _write_string(file, self.flags) + _write_string(file, self.service) + _write_string(file, self.regexp) + self.replacement.to_wire(file, compress, origin) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (order, preference) = struct.unpack('!HH', wire[current: current + 4]) + current += 4 + rdlen -= 4 + strings = [] + for i in xrange(3): + l = wire[current] + current += 1 + rdlen -= 1 + if l > rdlen or rdlen < 0: + raise dns.exception.FormError + s = wire[current: current + l].unwrap() + current += l + rdlen -= l + strings.append(s) + (replacement, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + if cused != rdlen: + raise dns.exception.FormError + if origin is not None: + replacement = replacement.relativize(origin) + return cls(rdclass, rdtype, order, preference, strings[0], strings[1], + strings[2], replacement) + + def choose_relativity(self, origin=None, relativize=True): + self.replacement = self.replacement.choose_relativity(origin, + relativize) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/NSAP.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/NSAP.py new file mode 100644 index 0000000000..336befc7f2 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/NSAP.py @@ -0,0 +1,60 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import binascii + +import dns.exception +import dns.rdata +import dns.tokenizer + + +class NSAP(dns.rdata.Rdata): + + """NSAP record. + + @ivar address: a NASP + @type address: string + @see: RFC 1706""" + + __slots__ = ['address'] + + def __init__(self, rdclass, rdtype, address): + super(NSAP, self).__init__(rdclass, rdtype) + self.address = address + + def to_text(self, origin=None, relativize=True, **kw): + return "0x%s" % binascii.hexlify(self.address).decode() + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + address = tok.get_string() + tok.get_eol() + if address[0:2] != '0x': + raise dns.exception.SyntaxError('string does not start with 0x') + address = address[2:].replace('.', '') + if len(address) % 2 != 0: + raise dns.exception.SyntaxError('hexstring has odd length') + address = binascii.unhexlify(address.encode()) + return cls(rdclass, rdtype, address) + + def to_wire(self, file, compress=None, origin=None): + file.write(self.address) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + address = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, address) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/NSAP_PTR.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/NSAP_PTR.py new file mode 100644 index 0000000000..a5b66c803f --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/NSAP_PTR.py @@ -0,0 +1,23 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import dns.rdtypes.nsbase + + +class NSAP_PTR(dns.rdtypes.nsbase.UncompressedNS): + + """NSAP-PTR record""" diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/PX.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/PX.py new file mode 100644 index 0000000000..2dbaee6ce8 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/PX.py @@ -0,0 +1,89 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.name + + +class PX(dns.rdata.Rdata): + + """PX record. + + @ivar preference: the preference value + @type preference: int + @ivar map822: the map822 name + @type map822: dns.name.Name object + @ivar mapx400: the mapx400 name + @type mapx400: dns.name.Name object + @see: RFC 2163""" + + __slots__ = ['preference', 'map822', 'mapx400'] + + def __init__(self, rdclass, rdtype, preference, map822, mapx400): + super(PX, self).__init__(rdclass, rdtype) + self.preference = preference + self.map822 = map822 + self.mapx400 = mapx400 + + def to_text(self, origin=None, relativize=True, **kw): + map822 = self.map822.choose_relativity(origin, relativize) + mapx400 = self.mapx400.choose_relativity(origin, relativize) + return '%d %s %s' % (self.preference, map822, mapx400) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + preference = tok.get_uint16() + map822 = tok.get_name() + map822 = map822.choose_relativity(origin, relativize) + mapx400 = tok.get_name(None) + mapx400 = mapx400.choose_relativity(origin, relativize) + tok.get_eol() + return cls(rdclass, rdtype, preference, map822, mapx400) + + def to_wire(self, file, compress=None, origin=None): + pref = struct.pack("!H", self.preference) + file.write(pref) + self.map822.to_wire(file, None, origin) + self.mapx400.to_wire(file, None, origin) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (preference, ) = struct.unpack('!H', wire[current: current + 2]) + current += 2 + rdlen -= 2 + (map822, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + if cused > rdlen: + raise dns.exception.FormError + current += cused + rdlen -= cused + if origin is not None: + map822 = map822.relativize(origin) + (mapx400, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + if cused != rdlen: + raise dns.exception.FormError + if origin is not None: + mapx400 = mapx400.relativize(origin) + return cls(rdclass, rdtype, preference, map822, mapx400) + + def choose_relativity(self, origin=None, relativize=True): + self.map822 = self.map822.choose_relativity(origin, relativize) + self.mapx400 = self.mapx400.choose_relativity(origin, relativize) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/SRV.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/SRV.py new file mode 100644 index 0000000000..b2c1bc9f0b --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/SRV.py @@ -0,0 +1,83 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct + +import dns.exception +import dns.rdata +import dns.name + + +class SRV(dns.rdata.Rdata): + + """SRV record + + @ivar priority: the priority + @type priority: int + @ivar weight: the weight + @type weight: int + @ivar port: the port of the service + @type port: int + @ivar target: the target host + @type target: dns.name.Name object + @see: RFC 2782""" + + __slots__ = ['priority', 'weight', 'port', 'target'] + + def __init__(self, rdclass, rdtype, priority, weight, port, target): + super(SRV, self).__init__(rdclass, rdtype) + self.priority = priority + self.weight = weight + self.port = port + self.target = target + + def to_text(self, origin=None, relativize=True, **kw): + target = self.target.choose_relativity(origin, relativize) + return '%d %d %d %s' % (self.priority, self.weight, self.port, + target) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + priority = tok.get_uint16() + weight = tok.get_uint16() + port = tok.get_uint16() + target = tok.get_name(None) + target = target.choose_relativity(origin, relativize) + tok.get_eol() + return cls(rdclass, rdtype, priority, weight, port, target) + + def to_wire(self, file, compress=None, origin=None): + three_ints = struct.pack("!HHH", self.priority, self.weight, self.port) + file.write(three_ints) + self.target.to_wire(file, compress, origin) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (priority, weight, port) = struct.unpack('!HHH', + wire[current: current + 6]) + current += 6 + rdlen -= 6 + (target, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + if cused != rdlen: + raise dns.exception.FormError + if origin is not None: + target = target.relativize(origin) + return cls(rdclass, rdtype, priority, weight, port, target) + + def choose_relativity(self, origin=None, relativize=True): + self.target = self.target.choose_relativity(origin, relativize) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/WKS.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/WKS.py new file mode 100644 index 0000000000..96f98ada70 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/WKS.py @@ -0,0 +1,107 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import socket +import struct + +import dns.ipv4 +import dns.rdata +from dns._compat import xrange + +_proto_tcp = socket.getprotobyname('tcp') +_proto_udp = socket.getprotobyname('udp') + + +class WKS(dns.rdata.Rdata): + + """WKS record + + @ivar address: the address + @type address: string + @ivar protocol: the protocol + @type protocol: int + @ivar bitmap: the bitmap + @type bitmap: string + @see: RFC 1035""" + + __slots__ = ['address', 'protocol', 'bitmap'] + + def __init__(self, rdclass, rdtype, address, protocol, bitmap): + super(WKS, self).__init__(rdclass, rdtype) + self.address = address + self.protocol = protocol + if not isinstance(bitmap, bytearray): + self.bitmap = bytearray(bitmap) + else: + self.bitmap = bitmap + + def to_text(self, origin=None, relativize=True, **kw): + bits = [] + for i in xrange(0, len(self.bitmap)): + byte = self.bitmap[i] + for j in xrange(0, 8): + if byte & (0x80 >> j): + bits.append(str(i * 8 + j)) + text = ' '.join(bits) + return '%s %d %s' % (self.address, self.protocol, text) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + address = tok.get_string() + protocol = tok.get_string() + if protocol.isdigit(): + protocol = int(protocol) + else: + protocol = socket.getprotobyname(protocol) + bitmap = bytearray() + while 1: + token = tok.get().unescape() + if token.is_eol_or_eof(): + break + if token.value.isdigit(): + serv = int(token.value) + else: + if protocol != _proto_udp and protocol != _proto_tcp: + raise NotImplementedError("protocol must be TCP or UDP") + if protocol == _proto_udp: + protocol_text = "udp" + else: + protocol_text = "tcp" + serv = socket.getservbyname(token.value, protocol_text) + i = serv // 8 + l = len(bitmap) + if l < i + 1: + for j in xrange(l, i + 1): + bitmap.append(0) + bitmap[i] = bitmap[i] | (0x80 >> (serv % 8)) + bitmap = dns.rdata._truncate_bitmap(bitmap) + return cls(rdclass, rdtype, address, protocol, bitmap) + + def to_wire(self, file, compress=None, origin=None): + file.write(dns.ipv4.inet_aton(self.address)) + protocol = struct.pack('!B', self.protocol) + file.write(protocol) + file.write(self.bitmap) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + address = dns.ipv4.inet_ntoa(wire[current: current + 4]) + protocol, = struct.unpack('!B', wire[current + 4: current + 5]) + current += 5 + rdlen -= 5 + bitmap = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, address, protocol, bitmap) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/IN/__init__.py b/openpype/vendor/python/python_2/dns/rdtypes/IN/__init__.py new file mode 100644 index 0000000000..d7e69c9f60 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/IN/__init__.py @@ -0,0 +1,33 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Class IN rdata type classes.""" + +__all__ = [ + 'A', + 'AAAA', + 'APL', + 'DHCID', + 'IPSECKEY', + 'KX', + 'NAPTR', + 'NSAP', + 'NSAP_PTR', + 'PX', + 'SRV', + 'WKS', +] diff --git a/openpype/vendor/python/python_2/dns/rdtypes/__init__.py b/openpype/vendor/python/python_2/dns/rdtypes/__init__.py new file mode 100644 index 0000000000..1ac137f1fe --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/__init__.py @@ -0,0 +1,27 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS rdata type classes""" + +__all__ = [ + 'ANY', + 'IN', + 'CH', + 'euibase', + 'mxbase', + 'nsbase', +] diff --git a/openpype/vendor/python/python_2/dns/rdtypes/dnskeybase.py b/openpype/vendor/python/python_2/dns/rdtypes/dnskeybase.py new file mode 100644 index 0000000000..3e7e87ef15 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/dnskeybase.py @@ -0,0 +1,138 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2004-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import base64 +import struct + +import dns.exception +import dns.dnssec +import dns.rdata + +# wildcard import +__all__ = ["SEP", "REVOKE", "ZONE", + "flags_to_text_set", "flags_from_text_set"] + +# flag constants +SEP = 0x0001 +REVOKE = 0x0080 +ZONE = 0x0100 + +_flag_by_text = { + 'SEP': SEP, + 'REVOKE': REVOKE, + 'ZONE': ZONE +} + +# We construct the inverse mapping programmatically to ensure that we +# cannot make any mistakes (e.g. omissions, cut-and-paste errors) that +# would cause the mapping not to be true inverse. +_flag_by_value = {y: x for x, y in _flag_by_text.items()} + + +def flags_to_text_set(flags): + """Convert a DNSKEY flags value to set texts + @rtype: set([string])""" + + flags_set = set() + mask = 0x1 + while mask <= 0x8000: + if flags & mask: + text = _flag_by_value.get(mask) + if not text: + text = hex(mask) + flags_set.add(text) + mask <<= 1 + return flags_set + + +def flags_from_text_set(texts_set): + """Convert set of DNSKEY flag mnemonic texts to DNSKEY flag value + @rtype: int""" + + flags = 0 + for text in texts_set: + try: + flags += _flag_by_text[text] + except KeyError: + raise NotImplementedError( + "DNSKEY flag '%s' is not supported" % text) + return flags + + +class DNSKEYBase(dns.rdata.Rdata): + + """Base class for rdata that is like a DNSKEY record + + @ivar flags: the key flags + @type flags: int + @ivar protocol: the protocol for which this key may be used + @type protocol: int + @ivar algorithm: the algorithm used for the key + @type algorithm: int + @ivar key: the public key + @type key: string""" + + __slots__ = ['flags', 'protocol', 'algorithm', 'key'] + + def __init__(self, rdclass, rdtype, flags, protocol, algorithm, key): + super(DNSKEYBase, self).__init__(rdclass, rdtype) + self.flags = flags + self.protocol = protocol + self.algorithm = algorithm + self.key = key + + def to_text(self, origin=None, relativize=True, **kw): + return '%d %d %d %s' % (self.flags, self.protocol, self.algorithm, + dns.rdata._base64ify(self.key)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + flags = tok.get_uint16() + protocol = tok.get_uint8() + algorithm = dns.dnssec.algorithm_from_text(tok.get_string()) + chunks = [] + while 1: + t = tok.get().unescape() + if t.is_eol_or_eof(): + break + if not t.is_identifier(): + raise dns.exception.SyntaxError + chunks.append(t.value.encode()) + b64 = b''.join(chunks) + key = base64.b64decode(b64) + return cls(rdclass, rdtype, flags, protocol, algorithm, key) + + def to_wire(self, file, compress=None, origin=None): + header = struct.pack("!HBB", self.flags, self.protocol, self.algorithm) + file.write(header) + file.write(self.key) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + if rdlen < 4: + raise dns.exception.FormError + header = struct.unpack('!HBB', wire[current: current + 4]) + current += 4 + rdlen -= 4 + key = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, header[0], header[1], header[2], + key) + + def flags_to_text_set(self): + """Convert a DNSKEY flags value to set texts + @rtype: set([string])""" + return flags_to_text_set(self.flags) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/dsbase.py b/openpype/vendor/python/python_2/dns/rdtypes/dsbase.py new file mode 100644 index 0000000000..26ae9d5c7d --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/dsbase.py @@ -0,0 +1,85 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2010, 2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import struct +import binascii + +import dns.rdata +import dns.rdatatype + + +class DSBase(dns.rdata.Rdata): + + """Base class for rdata that is like a DS record + + @ivar key_tag: the key tag + @type key_tag: int + @ivar algorithm: the algorithm + @type algorithm: int + @ivar digest_type: the digest type + @type digest_type: int + @ivar digest: the digest + @type digest: int + @see: draft-ietf-dnsext-delegation-signer-14.txt""" + + __slots__ = ['key_tag', 'algorithm', 'digest_type', 'digest'] + + def __init__(self, rdclass, rdtype, key_tag, algorithm, digest_type, + digest): + super(DSBase, self).__init__(rdclass, rdtype) + self.key_tag = key_tag + self.algorithm = algorithm + self.digest_type = digest_type + self.digest = digest + + def to_text(self, origin=None, relativize=True, **kw): + return '%d %d %d %s' % (self.key_tag, self.algorithm, + self.digest_type, + dns.rdata._hexify(self.digest, + chunksize=128)) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + key_tag = tok.get_uint16() + algorithm = tok.get_uint8() + digest_type = tok.get_uint8() + chunks = [] + while 1: + t = tok.get().unescape() + if t.is_eol_or_eof(): + break + if not t.is_identifier(): + raise dns.exception.SyntaxError + chunks.append(t.value.encode()) + digest = b''.join(chunks) + digest = binascii.unhexlify(digest) + return cls(rdclass, rdtype, key_tag, algorithm, digest_type, + digest) + + def to_wire(self, file, compress=None, origin=None): + header = struct.pack("!HBB", self.key_tag, self.algorithm, + self.digest_type) + file.write(header) + file.write(self.digest) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + header = struct.unpack("!HBB", wire[current: current + 4]) + current += 4 + rdlen -= 4 + digest = wire[current: current + rdlen].unwrap() + return cls(rdclass, rdtype, header[0], header[1], header[2], digest) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/euibase.py b/openpype/vendor/python/python_2/dns/rdtypes/euibase.py new file mode 100644 index 0000000000..cc5fdaa63b --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/euibase.py @@ -0,0 +1,71 @@ +# Copyright (C) 2015 Red Hat, Inc. +# Author: Petr Spacek +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED 'AS IS' AND RED HAT DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +import binascii + +import dns.rdata +from dns._compat import xrange + + +class EUIBase(dns.rdata.Rdata): + + """EUIxx record + + @ivar fingerprint: xx-bit Extended Unique Identifier (EUI-xx) + @type fingerprint: string + @see: rfc7043.txt""" + + __slots__ = ['eui'] + # define these in subclasses + # byte_len = 6 # 0123456789ab (in hex) + # text_len = byte_len * 3 - 1 # 01-23-45-67-89-ab + + def __init__(self, rdclass, rdtype, eui): + super(EUIBase, self).__init__(rdclass, rdtype) + if len(eui) != self.byte_len: + raise dns.exception.FormError('EUI%s rdata has to have %s bytes' + % (self.byte_len * 8, self.byte_len)) + self.eui = eui + + def to_text(self, origin=None, relativize=True, **kw): + return dns.rdata._hexify(self.eui, chunksize=2).replace(' ', '-') + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + text = tok.get_string() + tok.get_eol() + if len(text) != cls.text_len: + raise dns.exception.SyntaxError( + 'Input text must have %s characters' % cls.text_len) + expected_dash_idxs = xrange(2, cls.byte_len * 3 - 1, 3) + for i in expected_dash_idxs: + if text[i] != '-': + raise dns.exception.SyntaxError('Dash expected at position %s' + % i) + text = text.replace('-', '') + try: + data = binascii.unhexlify(text.encode()) + except (ValueError, TypeError) as ex: + raise dns.exception.SyntaxError('Hex decoding error: %s' % str(ex)) + return cls(rdclass, rdtype, data) + + def to_wire(self, file, compress=None, origin=None): + file.write(self.eui) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + eui = wire[current:current + rdlen].unwrap() + return cls(rdclass, rdtype, eui) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/mxbase.py b/openpype/vendor/python/python_2/dns/rdtypes/mxbase.py new file mode 100644 index 0000000000..9a3fa62360 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/mxbase.py @@ -0,0 +1,103 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""MX-like base classes.""" + +from io import BytesIO +import struct + +import dns.exception +import dns.rdata +import dns.name + + +class MXBase(dns.rdata.Rdata): + + """Base class for rdata that is like an MX record. + + @ivar preference: the preference value + @type preference: int + @ivar exchange: the exchange name + @type exchange: dns.name.Name object""" + + __slots__ = ['preference', 'exchange'] + + def __init__(self, rdclass, rdtype, preference, exchange): + super(MXBase, self).__init__(rdclass, rdtype) + self.preference = preference + self.exchange = exchange + + def to_text(self, origin=None, relativize=True, **kw): + exchange = self.exchange.choose_relativity(origin, relativize) + return '%d %s' % (self.preference, exchange) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + preference = tok.get_uint16() + exchange = tok.get_name() + exchange = exchange.choose_relativity(origin, relativize) + tok.get_eol() + return cls(rdclass, rdtype, preference, exchange) + + def to_wire(self, file, compress=None, origin=None): + pref = struct.pack("!H", self.preference) + file.write(pref) + self.exchange.to_wire(file, compress, origin) + + def to_digestable(self, origin=None): + return struct.pack("!H", self.preference) + \ + self.exchange.to_digestable(origin) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (preference, ) = struct.unpack('!H', wire[current: current + 2]) + current += 2 + rdlen -= 2 + (exchange, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + if cused != rdlen: + raise dns.exception.FormError + if origin is not None: + exchange = exchange.relativize(origin) + return cls(rdclass, rdtype, preference, exchange) + + def choose_relativity(self, origin=None, relativize=True): + self.exchange = self.exchange.choose_relativity(origin, relativize) + + +class UncompressedMX(MXBase): + + """Base class for rdata that is like an MX record, but whose name + is not compressed when converted to DNS wire format, and whose + digestable form is not downcased.""" + + def to_wire(self, file, compress=None, origin=None): + super(UncompressedMX, self).to_wire(file, None, origin) + + def to_digestable(self, origin=None): + f = BytesIO() + self.to_wire(f, None, origin) + return f.getvalue() + + +class UncompressedDowncasingMX(MXBase): + + """Base class for rdata that is like an MX record, but whose name + is not compressed when convert to DNS wire format.""" + + def to_wire(self, file, compress=None, origin=None): + super(UncompressedDowncasingMX, self).to_wire(file, None, origin) diff --git a/openpype/vendor/python/python_2/dns/rdtypes/nsbase.py b/openpype/vendor/python/python_2/dns/rdtypes/nsbase.py new file mode 100644 index 0000000000..97a2232638 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/nsbase.py @@ -0,0 +1,83 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""NS-like base classes.""" + +from io import BytesIO + +import dns.exception +import dns.rdata +import dns.name + + +class NSBase(dns.rdata.Rdata): + + """Base class for rdata that is like an NS record. + + @ivar target: the target name of the rdata + @type target: dns.name.Name object""" + + __slots__ = ['target'] + + def __init__(self, rdclass, rdtype, target): + super(NSBase, self).__init__(rdclass, rdtype) + self.target = target + + def to_text(self, origin=None, relativize=True, **kw): + target = self.target.choose_relativity(origin, relativize) + return str(target) + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + target = tok.get_name() + target = target.choose_relativity(origin, relativize) + tok.get_eol() + return cls(rdclass, rdtype, target) + + def to_wire(self, file, compress=None, origin=None): + self.target.to_wire(file, compress, origin) + + def to_digestable(self, origin=None): + return self.target.to_digestable(origin) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + (target, cused) = dns.name.from_wire(wire[: current + rdlen], + current) + if cused != rdlen: + raise dns.exception.FormError + if origin is not None: + target = target.relativize(origin) + return cls(rdclass, rdtype, target) + + def choose_relativity(self, origin=None, relativize=True): + self.target = self.target.choose_relativity(origin, relativize) + + +class UncompressedNS(NSBase): + + """Base class for rdata that is like an NS record, but whose name + is not compressed when convert to DNS wire format, and whose + digestable form is not downcased.""" + + def to_wire(self, file, compress=None, origin=None): + super(UncompressedNS, self).to_wire(file, None, origin) + + def to_digestable(self, origin=None): + f = BytesIO() + self.to_wire(f, None, origin) + return f.getvalue() diff --git a/openpype/vendor/python/python_2/dns/rdtypes/txtbase.py b/openpype/vendor/python/python_2/dns/rdtypes/txtbase.py new file mode 100644 index 0000000000..645a57ecfc --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rdtypes/txtbase.py @@ -0,0 +1,97 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2006-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""TXT-like base class.""" + +import struct + +import dns.exception +import dns.rdata +import dns.tokenizer +from dns._compat import binary_type, string_types + + +class TXTBase(dns.rdata.Rdata): + + """Base class for rdata that is like a TXT record + + @ivar strings: the strings + @type strings: list of binary + @see: RFC 1035""" + + __slots__ = ['strings'] + + def __init__(self, rdclass, rdtype, strings): + super(TXTBase, self).__init__(rdclass, rdtype) + if isinstance(strings, binary_type) or \ + isinstance(strings, string_types): + strings = [strings] + self.strings = [] + for string in strings: + if isinstance(string, string_types): + string = string.encode() + self.strings.append(string) + + def to_text(self, origin=None, relativize=True, **kw): + txt = '' + prefix = '' + for s in self.strings: + txt += '{}"{}"'.format(prefix, dns.rdata._escapify(s)) + prefix = ' ' + return txt + + @classmethod + def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True): + strings = [] + while 1: + token = tok.get().unescape() + if token.is_eol_or_eof(): + break + if not (token.is_quoted_string() or token.is_identifier()): + raise dns.exception.SyntaxError("expected a string") + if len(token.value) > 255: + raise dns.exception.SyntaxError("string too long") + value = token.value + if isinstance(value, binary_type): + strings.append(value) + else: + strings.append(value.encode()) + if len(strings) == 0: + raise dns.exception.UnexpectedEnd + return cls(rdclass, rdtype, strings) + + def to_wire(self, file, compress=None, origin=None): + for s in self.strings: + l = len(s) + assert l < 256 + file.write(struct.pack('!B', l)) + file.write(s) + + @classmethod + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin=None): + strings = [] + while rdlen > 0: + l = wire[current] + current += 1 + rdlen -= 1 + if l > rdlen: + raise dns.exception.FormError + s = wire[current: current + l].unwrap() + current += l + rdlen -= l + strings.append(s) + return cls(rdclass, rdtype, strings) diff --git a/openpype/vendor/python/python_2/dns/renderer.py b/openpype/vendor/python/python_2/dns/renderer.py new file mode 100644 index 0000000000..d7ef8c7f09 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/renderer.py @@ -0,0 +1,291 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Help for building DNS wire format messages""" + +from io import BytesIO +import struct +import random +import time + +import dns.exception +import dns.tsig +from ._compat import long + + +QUESTION = 0 +ANSWER = 1 +AUTHORITY = 2 +ADDITIONAL = 3 + + +class Renderer(object): + """Helper class for building DNS wire-format messages. + + Most applications can use the higher-level L{dns.message.Message} + class and its to_wire() method to generate wire-format messages. + This class is for those applications which need finer control + over the generation of messages. + + Typical use:: + + r = dns.renderer.Renderer(id=1, flags=0x80, max_size=512) + r.add_question(qname, qtype, qclass) + r.add_rrset(dns.renderer.ANSWER, rrset_1) + r.add_rrset(dns.renderer.ANSWER, rrset_2) + r.add_rrset(dns.renderer.AUTHORITY, ns_rrset) + r.add_edns(0, 0, 4096) + r.add_rrset(dns.renderer.ADDTIONAL, ad_rrset_1) + r.add_rrset(dns.renderer.ADDTIONAL, ad_rrset_2) + r.write_header() + r.add_tsig(keyname, secret, 300, 1, 0, '', request_mac) + wire = r.get_wire() + + output, a BytesIO, where rendering is written + + id: the message id + + flags: the message flags + + max_size: the maximum size of the message + + origin: the origin to use when rendering relative names + + compress: the compression table + + section: an int, the section currently being rendered + + counts: list of the number of RRs in each section + + mac: the MAC of the rendered message (if TSIG was used) + """ + + def __init__(self, id=None, flags=0, max_size=65535, origin=None): + """Initialize a new renderer.""" + + self.output = BytesIO() + if id is None: + self.id = random.randint(0, 65535) + else: + self.id = id + self.flags = flags + self.max_size = max_size + self.origin = origin + self.compress = {} + self.section = QUESTION + self.counts = [0, 0, 0, 0] + self.output.write(b'\x00' * 12) + self.mac = '' + + def _rollback(self, where): + """Truncate the output buffer at offset *where*, and remove any + compression table entries that pointed beyond the truncation + point. + """ + + self.output.seek(where) + self.output.truncate() + keys_to_delete = [] + for k, v in self.compress.items(): + if v >= where: + keys_to_delete.append(k) + for k in keys_to_delete: + del self.compress[k] + + def _set_section(self, section): + """Set the renderer's current section. + + Sections must be rendered order: QUESTION, ANSWER, AUTHORITY, + ADDITIONAL. Sections may be empty. + + Raises dns.exception.FormError if an attempt was made to set + a section value less than the current section. + """ + + if self.section != section: + if self.section > section: + raise dns.exception.FormError + self.section = section + + def add_question(self, qname, rdtype, rdclass=dns.rdataclass.IN): + """Add a question to the message.""" + + self._set_section(QUESTION) + before = self.output.tell() + qname.to_wire(self.output, self.compress, self.origin) + self.output.write(struct.pack("!HH", rdtype, rdclass)) + after = self.output.tell() + if after >= self.max_size: + self._rollback(before) + raise dns.exception.TooBig + self.counts[QUESTION] += 1 + + def add_rrset(self, section, rrset, **kw): + """Add the rrset to the specified section. + + Any keyword arguments are passed on to the rdataset's to_wire() + routine. + """ + + self._set_section(section) + before = self.output.tell() + n = rrset.to_wire(self.output, self.compress, self.origin, **kw) + after = self.output.tell() + if after >= self.max_size: + self._rollback(before) + raise dns.exception.TooBig + self.counts[section] += n + + def add_rdataset(self, section, name, rdataset, **kw): + """Add the rdataset to the specified section, using the specified + name as the owner name. + + Any keyword arguments are passed on to the rdataset's to_wire() + routine. + """ + + self._set_section(section) + before = self.output.tell() + n = rdataset.to_wire(name, self.output, self.compress, self.origin, + **kw) + after = self.output.tell() + if after >= self.max_size: + self._rollback(before) + raise dns.exception.TooBig + self.counts[section] += n + + def add_edns(self, edns, ednsflags, payload, options=None): + """Add an EDNS OPT record to the message.""" + + # make sure the EDNS version in ednsflags agrees with edns + ednsflags &= long(0xFF00FFFF) + ednsflags |= (edns << 16) + self._set_section(ADDITIONAL) + before = self.output.tell() + self.output.write(struct.pack('!BHHIH', 0, dns.rdatatype.OPT, payload, + ednsflags, 0)) + if options is not None: + lstart = self.output.tell() + for opt in options: + stuff = struct.pack("!HH", opt.otype, 0) + self.output.write(stuff) + start = self.output.tell() + opt.to_wire(self.output) + end = self.output.tell() + assert end - start < 65536 + self.output.seek(start - 2) + stuff = struct.pack("!H", end - start) + self.output.write(stuff) + self.output.seek(0, 2) + lend = self.output.tell() + assert lend - lstart < 65536 + self.output.seek(lstart - 2) + stuff = struct.pack("!H", lend - lstart) + self.output.write(stuff) + self.output.seek(0, 2) + after = self.output.tell() + if after >= self.max_size: + self._rollback(before) + raise dns.exception.TooBig + self.counts[ADDITIONAL] += 1 + + def add_tsig(self, keyname, secret, fudge, id, tsig_error, other_data, + request_mac, algorithm=dns.tsig.default_algorithm): + """Add a TSIG signature to the message.""" + + s = self.output.getvalue() + (tsig_rdata, self.mac, ctx) = dns.tsig.sign(s, + keyname, + secret, + int(time.time()), + fudge, + id, + tsig_error, + other_data, + request_mac, + algorithm=algorithm) + self._write_tsig(tsig_rdata, keyname) + + def add_multi_tsig(self, ctx, keyname, secret, fudge, id, tsig_error, + other_data, request_mac, + algorithm=dns.tsig.default_algorithm): + """Add a TSIG signature to the message. Unlike add_tsig(), this can be + used for a series of consecutive DNS envelopes, e.g. for a zone + transfer over TCP [RFC2845, 4.4]. + + For the first message in the sequence, give ctx=None. For each + subsequent message, give the ctx that was returned from the + add_multi_tsig() call for the previous message.""" + + s = self.output.getvalue() + (tsig_rdata, self.mac, ctx) = dns.tsig.sign(s, + keyname, + secret, + int(time.time()), + fudge, + id, + tsig_error, + other_data, + request_mac, + ctx=ctx, + first=ctx is None, + multi=True, + algorithm=algorithm) + self._write_tsig(tsig_rdata, keyname) + return ctx + + def _write_tsig(self, tsig_rdata, keyname): + self._set_section(ADDITIONAL) + before = self.output.tell() + + keyname.to_wire(self.output, self.compress, self.origin) + self.output.write(struct.pack('!HHIH', dns.rdatatype.TSIG, + dns.rdataclass.ANY, 0, 0)) + rdata_start = self.output.tell() + self.output.write(tsig_rdata) + + after = self.output.tell() + assert after - rdata_start < 65536 + if after >= self.max_size: + self._rollback(before) + raise dns.exception.TooBig + + self.output.seek(rdata_start - 2) + self.output.write(struct.pack('!H', after - rdata_start)) + self.counts[ADDITIONAL] += 1 + self.output.seek(10) + self.output.write(struct.pack('!H', self.counts[ADDITIONAL])) + self.output.seek(0, 2) + + def write_header(self): + """Write the DNS message header. + + Writing the DNS message header is done after all sections + have been rendered, but before the optional TSIG signature + is added. + """ + + self.output.seek(0) + self.output.write(struct.pack('!HHHHHH', self.id, self.flags, + self.counts[0], self.counts[1], + self.counts[2], self.counts[3])) + self.output.seek(0, 2) + + def get_wire(self): + """Return the wire format message.""" + + return self.output.getvalue() diff --git a/openpype/vendor/python/python_2/dns/resolver.py b/openpype/vendor/python/python_2/dns/resolver.py new file mode 100644 index 0000000000..806e5b2b45 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/resolver.py @@ -0,0 +1,1383 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS stub resolver.""" + +import socket +import sys +import time +import random + +try: + import threading as _threading +except ImportError: + import dummy_threading as _threading + +import dns.exception +import dns.flags +import dns.ipv4 +import dns.ipv6 +import dns.message +import dns.name +import dns.query +import dns.rcode +import dns.rdataclass +import dns.rdatatype +import dns.reversename +import dns.tsig +from ._compat import xrange, string_types + +if sys.platform == 'win32': + try: + import winreg as _winreg + except ImportError: + import _winreg # pylint: disable=import-error + +class NXDOMAIN(dns.exception.DNSException): + """The DNS query name does not exist.""" + supp_kwargs = {'qnames', 'responses'} + fmt = None # we have our own __str__ implementation + + def _check_kwargs(self, qnames, responses=None): + if not isinstance(qnames, (list, tuple, set)): + raise AttributeError("qnames must be a list, tuple or set") + if len(qnames) == 0: + raise AttributeError("qnames must contain at least one element") + if responses is None: + responses = {} + elif not isinstance(responses, dict): + raise AttributeError("responses must be a dict(qname=response)") + kwargs = dict(qnames=qnames, responses=responses) + return kwargs + + def __str__(self): + if 'qnames' not in self.kwargs: + return super(NXDOMAIN, self).__str__() + qnames = self.kwargs['qnames'] + if len(qnames) > 1: + msg = 'None of DNS query names exist' + else: + msg = 'The DNS query name does not exist' + qnames = ', '.join(map(str, qnames)) + return "{}: {}".format(msg, qnames) + + def canonical_name(self): + if not 'qnames' in self.kwargs: + raise TypeError("parametrized exception required") + IN = dns.rdataclass.IN + CNAME = dns.rdatatype.CNAME + cname = None + for qname in self.kwargs['qnames']: + response = self.kwargs['responses'][qname] + for answer in response.answer: + if answer.rdtype != CNAME or answer.rdclass != IN: + continue + cname = answer.items[0].target.to_text() + if cname is not None: + return dns.name.from_text(cname) + return self.kwargs['qnames'][0] + canonical_name = property(canonical_name, doc=( + "Return the unresolved canonical name.")) + + def __add__(self, e_nx): + """Augment by results from another NXDOMAIN exception.""" + qnames0 = list(self.kwargs.get('qnames', [])) + responses0 = dict(self.kwargs.get('responses', {})) + responses1 = e_nx.kwargs.get('responses', {}) + for qname1 in e_nx.kwargs.get('qnames', []): + if qname1 not in qnames0: + qnames0.append(qname1) + if qname1 in responses1: + responses0[qname1] = responses1[qname1] + return NXDOMAIN(qnames=qnames0, responses=responses0) + + def qnames(self): + """All of the names that were tried. + + Returns a list of ``dns.name.Name``. + """ + return self.kwargs['qnames'] + + def responses(self): + """A map from queried names to their NXDOMAIN responses. + + Returns a dict mapping a ``dns.name.Name`` to a + ``dns.message.Message``. + """ + return self.kwargs['responses'] + + def response(self, qname): + """The response for query *qname*. + + Returns a ``dns.message.Message``. + """ + return self.kwargs['responses'][qname] + + +class YXDOMAIN(dns.exception.DNSException): + """The DNS query name is too long after DNAME substitution.""" + +# The definition of the Timeout exception has moved from here to the +# dns.exception module. We keep dns.resolver.Timeout defined for +# backwards compatibility. + +Timeout = dns.exception.Timeout + + +class NoAnswer(dns.exception.DNSException): + """The DNS response does not contain an answer to the question.""" + fmt = 'The DNS response does not contain an answer ' + \ + 'to the question: {query}' + supp_kwargs = {'response'} + + def _fmt_kwargs(self, **kwargs): + return super(NoAnswer, self)._fmt_kwargs( + query=kwargs['response'].question) + + +class NoNameservers(dns.exception.DNSException): + """All nameservers failed to answer the query. + + errors: list of servers and respective errors + The type of errors is + [(server IP address, any object convertible to string)]. + Non-empty errors list will add explanatory message () + """ + + msg = "All nameservers failed to answer the query." + fmt = "%s {query}: {errors}" % msg[:-1] + supp_kwargs = {'request', 'errors'} + + def _fmt_kwargs(self, **kwargs): + srv_msgs = [] + for err in kwargs['errors']: + srv_msgs.append('Server {} {} port {} answered {}'.format(err[0], + 'TCP' if err[1] else 'UDP', err[2], err[3])) + return super(NoNameservers, self)._fmt_kwargs( + query=kwargs['request'].question, errors='; '.join(srv_msgs)) + + +class NotAbsolute(dns.exception.DNSException): + """An absolute domain name is required but a relative name was provided.""" + + +class NoRootSOA(dns.exception.DNSException): + """There is no SOA RR at the DNS root name. This should never happen!""" + + +class NoMetaqueries(dns.exception.DNSException): + """DNS metaqueries are not allowed.""" + + +class Answer(object): + """DNS stub resolver answer. + + Instances of this class bundle up the result of a successful DNS + resolution. + + For convenience, the answer object implements much of the sequence + protocol, forwarding to its ``rrset`` attribute. E.g. + ``for a in answer`` is equivalent to ``for a in answer.rrset``. + ``answer[i]`` is equivalent to ``answer.rrset[i]``, and + ``answer[i:j]`` is equivalent to ``answer.rrset[i:j]``. + + Note that CNAMEs or DNAMEs in the response may mean that answer + RRset's name might not be the query name. + """ + + def __init__(self, qname, rdtype, rdclass, response, + raise_on_no_answer=True): + self.qname = qname + self.rdtype = rdtype + self.rdclass = rdclass + self.response = response + min_ttl = -1 + rrset = None + for count in xrange(0, 15): + try: + rrset = response.find_rrset(response.answer, qname, + rdclass, rdtype) + if min_ttl == -1 or rrset.ttl < min_ttl: + min_ttl = rrset.ttl + break + except KeyError: + if rdtype != dns.rdatatype.CNAME: + try: + crrset = response.find_rrset(response.answer, + qname, + rdclass, + dns.rdatatype.CNAME) + if min_ttl == -1 or crrset.ttl < min_ttl: + min_ttl = crrset.ttl + for rd in crrset: + qname = rd.target + break + continue + except KeyError: + if raise_on_no_answer: + raise NoAnswer(response=response) + if raise_on_no_answer: + raise NoAnswer(response=response) + if rrset is None and raise_on_no_answer: + raise NoAnswer(response=response) + self.canonical_name = qname + self.rrset = rrset + if rrset is None: + while 1: + # Look for a SOA RR whose owner name is a superdomain + # of qname. + try: + srrset = response.find_rrset(response.authority, qname, + rdclass, dns.rdatatype.SOA) + if min_ttl == -1 or srrset.ttl < min_ttl: + min_ttl = srrset.ttl + if srrset[0].minimum < min_ttl: + min_ttl = srrset[0].minimum + break + except KeyError: + try: + qname = qname.parent() + except dns.name.NoParent: + break + self.expiration = time.time() + min_ttl + + def __getattr__(self, attr): + if attr == 'name': + return self.rrset.name + elif attr == 'ttl': + return self.rrset.ttl + elif attr == 'covers': + return self.rrset.covers + elif attr == 'rdclass': + return self.rrset.rdclass + elif attr == 'rdtype': + return self.rrset.rdtype + else: + raise AttributeError(attr) + + def __len__(self): + return self.rrset and len(self.rrset) or 0 + + def __iter__(self): + return self.rrset and iter(self.rrset) or iter(tuple()) + + def __getitem__(self, i): + if self.rrset is None: + raise IndexError + return self.rrset[i] + + def __delitem__(self, i): + if self.rrset is None: + raise IndexError + del self.rrset[i] + + +class Cache(object): + """Simple thread-safe DNS answer cache.""" + + def __init__(self, cleaning_interval=300.0): + """*cleaning_interval*, a ``float`` is the number of seconds between + periodic cleanings. + """ + + self.data = {} + self.cleaning_interval = cleaning_interval + self.next_cleaning = time.time() + self.cleaning_interval + self.lock = _threading.Lock() + + def _maybe_clean(self): + """Clean the cache if it's time to do so.""" + + now = time.time() + if self.next_cleaning <= now: + keys_to_delete = [] + for (k, v) in self.data.items(): + if v.expiration <= now: + keys_to_delete.append(k) + for k in keys_to_delete: + del self.data[k] + now = time.time() + self.next_cleaning = now + self.cleaning_interval + + def get(self, key): + """Get the answer associated with *key*. + + Returns None if no answer is cached for the key. + + *key*, a ``(dns.name.Name, int, int)`` tuple whose values are the + query name, rdtype, and rdclass respectively. + + Returns a ``dns.resolver.Answer`` or ``None``. + """ + + try: + self.lock.acquire() + self._maybe_clean() + v = self.data.get(key) + if v is None or v.expiration <= time.time(): + return None + return v + finally: + self.lock.release() + + def put(self, key, value): + """Associate key and value in the cache. + + *key*, a ``(dns.name.Name, int, int)`` tuple whose values are the + query name, rdtype, and rdclass respectively. + + *value*, a ``dns.resolver.Answer``, the answer. + """ + + try: + self.lock.acquire() + self._maybe_clean() + self.data[key] = value + finally: + self.lock.release() + + def flush(self, key=None): + """Flush the cache. + + If *key* is not ``None``, only that item is flushed. Otherwise + the entire cache is flushed. + + *key*, a ``(dns.name.Name, int, int)`` tuple whose values are the + query name, rdtype, and rdclass respectively. + """ + + try: + self.lock.acquire() + if key is not None: + if key in self.data: + del self.data[key] + else: + self.data = {} + self.next_cleaning = time.time() + self.cleaning_interval + finally: + self.lock.release() + + +class LRUCacheNode(object): + """LRUCache node.""" + + def __init__(self, key, value): + self.key = key + self.value = value + self.prev = self + self.next = self + + def link_before(self, node): + self.prev = node.prev + self.next = node + node.prev.next = self + node.prev = self + + def link_after(self, node): + self.prev = node + self.next = node.next + node.next.prev = self + node.next = self + + def unlink(self): + self.next.prev = self.prev + self.prev.next = self.next + + +class LRUCache(object): + """Thread-safe, bounded, least-recently-used DNS answer cache. + + This cache is better than the simple cache (above) if you're + running a web crawler or other process that does a lot of + resolutions. The LRUCache has a maximum number of nodes, and when + it is full, the least-recently used node is removed to make space + for a new one. + """ + + def __init__(self, max_size=100000): + """*max_size*, an ``int``, is the maximum number of nodes to cache; + it must be greater than 0. + """ + + self.data = {} + self.set_max_size(max_size) + self.sentinel = LRUCacheNode(None, None) + self.lock = _threading.Lock() + + def set_max_size(self, max_size): + if max_size < 1: + max_size = 1 + self.max_size = max_size + + def get(self, key): + """Get the answer associated with *key*. + + Returns None if no answer is cached for the key. + + *key*, a ``(dns.name.Name, int, int)`` tuple whose values are the + query name, rdtype, and rdclass respectively. + + Returns a ``dns.resolver.Answer`` or ``None``. + """ + + try: + self.lock.acquire() + node = self.data.get(key) + if node is None: + return None + # Unlink because we're either going to move the node to the front + # of the LRU list or we're going to free it. + node.unlink() + if node.value.expiration <= time.time(): + del self.data[node.key] + return None + node.link_after(self.sentinel) + return node.value + finally: + self.lock.release() + + def put(self, key, value): + """Associate key and value in the cache. + + *key*, a ``(dns.name.Name, int, int)`` tuple whose values are the + query name, rdtype, and rdclass respectively. + + *value*, a ``dns.resolver.Answer``, the answer. + """ + + try: + self.lock.acquire() + node = self.data.get(key) + if node is not None: + node.unlink() + del self.data[node.key] + while len(self.data) >= self.max_size: + node = self.sentinel.prev + node.unlink() + del self.data[node.key] + node = LRUCacheNode(key, value) + node.link_after(self.sentinel) + self.data[key] = node + finally: + self.lock.release() + + def flush(self, key=None): + """Flush the cache. + + If *key* is not ``None``, only that item is flushed. Otherwise + the entire cache is flushed. + + *key*, a ``(dns.name.Name, int, int)`` tuple whose values are the + query name, rdtype, and rdclass respectively. + """ + + try: + self.lock.acquire() + if key is not None: + node = self.data.get(key) + if node is not None: + node.unlink() + del self.data[node.key] + else: + node = self.sentinel.next + while node != self.sentinel: + next = node.next + node.prev = None + node.next = None + node = next + self.data = {} + finally: + self.lock.release() + + +class Resolver(object): + """DNS stub resolver.""" + + def __init__(self, filename='/etc/resolv.conf', configure=True): + """*filename*, a ``text`` or file object, specifying a file + in standard /etc/resolv.conf format. This parameter is meaningful + only when *configure* is true and the platform is POSIX. + + *configure*, a ``bool``. If True (the default), the resolver + instance is configured in the normal fashion for the operating + system the resolver is running on. (I.e. by reading a + /etc/resolv.conf file on POSIX systems and from the registry + on Windows systems.) + """ + + self.domain = None + self.nameservers = None + self.nameserver_ports = None + self.port = None + self.search = None + self.timeout = None + self.lifetime = None + self.keyring = None + self.keyname = None + self.keyalgorithm = None + self.edns = None + self.ednsflags = None + self.payload = None + self.cache = None + self.flags = None + self.retry_servfail = False + self.rotate = False + + self.reset() + if configure: + if sys.platform == 'win32': + self.read_registry() + elif filename: + self.read_resolv_conf(filename) + + def reset(self): + """Reset all resolver configuration to the defaults.""" + + self.domain = \ + dns.name.Name(dns.name.from_text(socket.gethostname())[1:]) + if len(self.domain) == 0: + self.domain = dns.name.root + self.nameservers = [] + self.nameserver_ports = {} + self.port = 53 + self.search = [] + self.timeout = 2.0 + self.lifetime = 30.0 + self.keyring = None + self.keyname = None + self.keyalgorithm = dns.tsig.default_algorithm + self.edns = -1 + self.ednsflags = 0 + self.payload = 0 + self.cache = None + self.flags = None + self.retry_servfail = False + self.rotate = False + + def read_resolv_conf(self, f): + """Process *f* as a file in the /etc/resolv.conf format. If f is + a ``text``, it is used as the name of the file to open; otherwise it + is treated as the file itself.""" + + if isinstance(f, string_types): + try: + f = open(f, 'r') + except IOError: + # /etc/resolv.conf doesn't exist, can't be read, etc. + # We'll just use the default resolver configuration. + self.nameservers = ['127.0.0.1'] + return + want_close = True + else: + want_close = False + try: + for l in f: + if len(l) == 0 or l[0] == '#' or l[0] == ';': + continue + tokens = l.split() + + # Any line containing less than 2 tokens is malformed + if len(tokens) < 2: + continue + + if tokens[0] == 'nameserver': + self.nameservers.append(tokens[1]) + elif tokens[0] == 'domain': + self.domain = dns.name.from_text(tokens[1]) + elif tokens[0] == 'search': + for suffix in tokens[1:]: + self.search.append(dns.name.from_text(suffix)) + elif tokens[0] == 'options': + if 'rotate' in tokens[1:]: + self.rotate = True + finally: + if want_close: + f.close() + if len(self.nameservers) == 0: + self.nameservers.append('127.0.0.1') + + def _determine_split_char(self, entry): + # + # The windows registry irritatingly changes the list element + # delimiter in between ' ' and ',' (and vice-versa) in various + # versions of windows. + # + if entry.find(' ') >= 0: + split_char = ' ' + elif entry.find(',') >= 0: + split_char = ',' + else: + # probably a singleton; treat as a space-separated list. + split_char = ' ' + return split_char + + def _config_win32_nameservers(self, nameservers): + # we call str() on nameservers to convert it from unicode to ascii + nameservers = str(nameservers) + split_char = self._determine_split_char(nameservers) + ns_list = nameservers.split(split_char) + for ns in ns_list: + if ns not in self.nameservers: + self.nameservers.append(ns) + + def _config_win32_domain(self, domain): + # we call str() on domain to convert it from unicode to ascii + self.domain = dns.name.from_text(str(domain)) + + def _config_win32_search(self, search): + # we call str() on search to convert it from unicode to ascii + search = str(search) + split_char = self._determine_split_char(search) + search_list = search.split(split_char) + for s in search_list: + if s not in self.search: + self.search.append(dns.name.from_text(s)) + + def _config_win32_fromkey(self, key, always_try_domain): + try: + servers, rtype = _winreg.QueryValueEx(key, 'NameServer') + except WindowsError: # pylint: disable=undefined-variable + servers = None + if servers: + self._config_win32_nameservers(servers) + if servers or always_try_domain: + try: + dom, rtype = _winreg.QueryValueEx(key, 'Domain') + if dom: + self._config_win32_domain(dom) + except WindowsError: # pylint: disable=undefined-variable + pass + else: + try: + servers, rtype = _winreg.QueryValueEx(key, 'DhcpNameServer') + except WindowsError: # pylint: disable=undefined-variable + servers = None + if servers: + self._config_win32_nameservers(servers) + try: + dom, rtype = _winreg.QueryValueEx(key, 'DhcpDomain') + if dom: + self._config_win32_domain(dom) + except WindowsError: # pylint: disable=undefined-variable + pass + try: + search, rtype = _winreg.QueryValueEx(key, 'SearchList') + except WindowsError: # pylint: disable=undefined-variable + search = None + if search: + self._config_win32_search(search) + + def read_registry(self): + """Extract resolver configuration from the Windows registry.""" + + lm = _winreg.ConnectRegistry(None, _winreg.HKEY_LOCAL_MACHINE) + want_scan = False + try: + try: + # XP, 2000 + tcp_params = _winreg.OpenKey(lm, + r'SYSTEM\CurrentControlSet' + r'\Services\Tcpip\Parameters') + want_scan = True + except EnvironmentError: + # ME + tcp_params = _winreg.OpenKey(lm, + r'SYSTEM\CurrentControlSet' + r'\Services\VxD\MSTCP') + try: + self._config_win32_fromkey(tcp_params, True) + finally: + tcp_params.Close() + if want_scan: + interfaces = _winreg.OpenKey(lm, + r'SYSTEM\CurrentControlSet' + r'\Services\Tcpip\Parameters' + r'\Interfaces') + try: + i = 0 + while True: + try: + guid = _winreg.EnumKey(interfaces, i) + i += 1 + key = _winreg.OpenKey(interfaces, guid) + if not self._win32_is_nic_enabled(lm, guid, key): + continue + try: + self._config_win32_fromkey(key, False) + finally: + key.Close() + except EnvironmentError: + break + finally: + interfaces.Close() + finally: + lm.Close() + + def _win32_is_nic_enabled(self, lm, guid, interface_key): + # Look in the Windows Registry to determine whether the network + # interface corresponding to the given guid is enabled. + # + # (Code contributed by Paul Marks, thanks!) + # + try: + # This hard-coded location seems to be consistent, at least + # from Windows 2000 through Vista. + connection_key = _winreg.OpenKey( + lm, + r'SYSTEM\CurrentControlSet\Control\Network' + r'\{4D36E972-E325-11CE-BFC1-08002BE10318}' + r'\%s\Connection' % guid) + + try: + # The PnpInstanceID points to a key inside Enum + (pnp_id, ttype) = _winreg.QueryValueEx( + connection_key, 'PnpInstanceID') + + if ttype != _winreg.REG_SZ: + raise ValueError + + device_key = _winreg.OpenKey( + lm, r'SYSTEM\CurrentControlSet\Enum\%s' % pnp_id) + + try: + # Get ConfigFlags for this device + (flags, ttype) = _winreg.QueryValueEx( + device_key, 'ConfigFlags') + + if ttype != _winreg.REG_DWORD: + raise ValueError + + # Based on experimentation, bit 0x1 indicates that the + # device is disabled. + return not flags & 0x1 + + finally: + device_key.Close() + finally: + connection_key.Close() + except (EnvironmentError, ValueError): + # Pre-vista, enabled interfaces seem to have a non-empty + # NTEContextList; this was how dnspython detected enabled + # nics before the code above was contributed. We've retained + # the old method since we don't know if the code above works + # on Windows 95/98/ME. + try: + (nte, ttype) = _winreg.QueryValueEx(interface_key, + 'NTEContextList') + return nte is not None + except WindowsError: # pylint: disable=undefined-variable + return False + + def _compute_timeout(self, start, lifetime=None): + lifetime = self.lifetime if lifetime is None else lifetime + now = time.time() + duration = now - start + if duration < 0: + if duration < -1: + # Time going backwards is bad. Just give up. + raise Timeout(timeout=duration) + else: + # Time went backwards, but only a little. This can + # happen, e.g. under vmware with older linux kernels. + # Pretend it didn't happen. + now = start + if duration >= lifetime: + raise Timeout(timeout=duration) + return min(lifetime - duration, self.timeout) + + def query(self, qname, rdtype=dns.rdatatype.A, rdclass=dns.rdataclass.IN, + tcp=False, source=None, raise_on_no_answer=True, source_port=0, + lifetime=None): + """Query nameservers to find the answer to the question. + + The *qname*, *rdtype*, and *rdclass* parameters may be objects + of the appropriate type, or strings that can be converted into objects + of the appropriate type. + + *qname*, a ``dns.name.Name`` or ``text``, the query name. + + *rdtype*, an ``int`` or ``text``, the query type. + + *rdclass*, an ``int`` or ``text``, the query class. + + *tcp*, a ``bool``. If ``True``, use TCP to make the query. + + *source*, a ``text`` or ``None``. If not ``None``, bind to this IP + address when making queries. + + *raise_on_no_answer*, a ``bool``. If ``True``, raise + ``dns.resolver.NoAnswer`` if there's no answer to the question. + + *source_port*, an ``int``, the port from which to send the message. + + *lifetime*, a ``float``, how long query should run before timing out. + + Raises ``dns.exception.Timeout`` if no answers could be found + in the specified lifetime. + + Raises ``dns.resolver.NXDOMAIN`` if the query name does not exist. + + Raises ``dns.resolver.YXDOMAIN`` if the query name is too long after + DNAME substitution. + + Raises ``dns.resolver.NoAnswer`` if *raise_on_no_answer* is + ``True`` and the query name exists but has no RRset of the + desired type and class. + + Raises ``dns.resolver.NoNameservers`` if no non-broken + nameservers are available to answer the question. + + Returns a ``dns.resolver.Answer`` instance. + """ + + if isinstance(qname, string_types): + qname = dns.name.from_text(qname, None) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + if dns.rdatatype.is_metatype(rdtype): + raise NoMetaqueries + if isinstance(rdclass, string_types): + rdclass = dns.rdataclass.from_text(rdclass) + if dns.rdataclass.is_metaclass(rdclass): + raise NoMetaqueries + qnames_to_try = [] + if qname.is_absolute(): + qnames_to_try.append(qname) + else: + if len(qname) > 1: + qnames_to_try.append(qname.concatenate(dns.name.root)) + if self.search: + for suffix in self.search: + qnames_to_try.append(qname.concatenate(suffix)) + else: + qnames_to_try.append(qname.concatenate(self.domain)) + all_nxdomain = True + nxdomain_responses = {} + start = time.time() + _qname = None # make pylint happy + for _qname in qnames_to_try: + if self.cache: + answer = self.cache.get((_qname, rdtype, rdclass)) + if answer is not None: + if answer.rrset is None and raise_on_no_answer: + raise NoAnswer(response=answer.response) + else: + return answer + request = dns.message.make_query(_qname, rdtype, rdclass) + if self.keyname is not None: + request.use_tsig(self.keyring, self.keyname, + algorithm=self.keyalgorithm) + request.use_edns(self.edns, self.ednsflags, self.payload) + if self.flags is not None: + request.flags = self.flags + response = None + # + # make a copy of the servers list so we can alter it later. + # + nameservers = self.nameservers[:] + errors = [] + if self.rotate: + random.shuffle(nameservers) + backoff = 0.10 + while response is None: + if len(nameservers) == 0: + raise NoNameservers(request=request, errors=errors) + for nameserver in nameservers[:]: + timeout = self._compute_timeout(start, lifetime) + port = self.nameserver_ports.get(nameserver, self.port) + try: + tcp_attempt = tcp + if tcp: + response = dns.query.tcp(request, nameserver, + timeout, port, + source=source, + source_port=source_port) + else: + response = dns.query.udp(request, nameserver, + timeout, port, + source=source, + source_port=source_port) + if response.flags & dns.flags.TC: + # Response truncated; retry with TCP. + tcp_attempt = True + timeout = self._compute_timeout(start, lifetime) + response = \ + dns.query.tcp(request, nameserver, + timeout, port, + source=source, + source_port=source_port) + except (socket.error, dns.exception.Timeout) as ex: + # + # Communication failure or timeout. Go to the + # next server + # + errors.append((nameserver, tcp_attempt, port, ex, + response)) + response = None + continue + except dns.query.UnexpectedSource as ex: + # + # Who knows? Keep going. + # + errors.append((nameserver, tcp_attempt, port, ex, + response)) + response = None + continue + except dns.exception.FormError as ex: + # + # We don't understand what this server is + # saying. Take it out of the mix and + # continue. + # + nameservers.remove(nameserver) + errors.append((nameserver, tcp_attempt, port, ex, + response)) + response = None + continue + except EOFError as ex: + # + # We're using TCP and they hung up on us. + # Probably they don't support TCP (though + # they're supposed to!). Take it out of the + # mix and continue. + # + nameservers.remove(nameserver) + errors.append((nameserver, tcp_attempt, port, ex, + response)) + response = None + continue + rcode = response.rcode() + if rcode == dns.rcode.YXDOMAIN: + ex = YXDOMAIN() + errors.append((nameserver, tcp_attempt, port, ex, + response)) + raise ex + if rcode == dns.rcode.NOERROR or \ + rcode == dns.rcode.NXDOMAIN: + break + # + # We got a response, but we're not happy with the + # rcode in it. Remove the server from the mix if + # the rcode isn't SERVFAIL. + # + if rcode != dns.rcode.SERVFAIL or not self.retry_servfail: + nameservers.remove(nameserver) + errors.append((nameserver, tcp_attempt, port, + dns.rcode.to_text(rcode), response)) + response = None + if response is not None: + break + # + # All nameservers failed! + # + if len(nameservers) > 0: + # + # But we still have servers to try. Sleep a bit + # so we don't pound them! + # + timeout = self._compute_timeout(start, lifetime) + sleep_time = min(timeout, backoff) + backoff *= 2 + time.sleep(sleep_time) + if response.rcode() == dns.rcode.NXDOMAIN: + nxdomain_responses[_qname] = response + continue + all_nxdomain = False + break + if all_nxdomain: + raise NXDOMAIN(qnames=qnames_to_try, responses=nxdomain_responses) + answer = Answer(_qname, rdtype, rdclass, response, + raise_on_no_answer) + if self.cache: + self.cache.put((_qname, rdtype, rdclass), answer) + return answer + + def use_tsig(self, keyring, keyname=None, + algorithm=dns.tsig.default_algorithm): + """Add a TSIG signature to the query. + + See the documentation of the Message class for a complete + description of the keyring dictionary. + + *keyring*, a ``dict``, the TSIG keyring to use. If a + *keyring* is specified but a *keyname* is not, then the key + used will be the first key in the *keyring*. Note that the + order of keys in a dictionary is not defined, so applications + should supply a keyname when a keyring is used, unless they + know the keyring contains only one key. + + *keyname*, a ``dns.name.Name`` or ``None``, the name of the TSIG key + to use; defaults to ``None``. The key must be defined in the keyring. + + *algorithm*, a ``dns.name.Name``, the TSIG algorithm to use. + """ + + self.keyring = keyring + if keyname is None: + self.keyname = list(self.keyring.keys())[0] + else: + self.keyname = keyname + self.keyalgorithm = algorithm + + def use_edns(self, edns, ednsflags, payload): + """Configure EDNS behavior. + + *edns*, an ``int``, is the EDNS level to use. Specifying + ``None``, ``False``, or ``-1`` means "do not use EDNS", and in this case + the other parameters are ignored. Specifying ``True`` is + equivalent to specifying 0, i.e. "use EDNS0". + + *ednsflags*, an ``int``, the EDNS flag values. + + *payload*, an ``int``, is the EDNS sender's payload field, which is the + maximum size of UDP datagram the sender can handle. I.e. how big + a response to this message can be. + """ + + if edns is None: + edns = -1 + self.edns = edns + self.ednsflags = ednsflags + self.payload = payload + + def set_flags(self, flags): + """Overrides the default flags with your own. + + *flags*, an ``int``, the message flags to use. + """ + + self.flags = flags + + +#: The default resolver. +default_resolver = None + + +def get_default_resolver(): + """Get the default resolver, initializing it if necessary.""" + if default_resolver is None: + reset_default_resolver() + return default_resolver + + +def reset_default_resolver(): + """Re-initialize default resolver. + + Note that the resolver configuration (i.e. /etc/resolv.conf on UNIX + systems) will be re-read immediately. + """ + + global default_resolver + default_resolver = Resolver() + + +def query(qname, rdtype=dns.rdatatype.A, rdclass=dns.rdataclass.IN, + tcp=False, source=None, raise_on_no_answer=True, + source_port=0, lifetime=None): + """Query nameservers to find the answer to the question. + + This is a convenience function that uses the default resolver + object to make the query. + + See ``dns.resolver.Resolver.query`` for more information on the + parameters. + """ + + return get_default_resolver().query(qname, rdtype, rdclass, tcp, source, + raise_on_no_answer, source_port, + lifetime) + + +def zone_for_name(name, rdclass=dns.rdataclass.IN, tcp=False, resolver=None): + """Find the name of the zone which contains the specified name. + + *name*, an absolute ``dns.name.Name`` or ``text``, the query name. + + *rdclass*, an ``int``, the query class. + + *tcp*, a ``bool``. If ``True``, use TCP to make the query. + + *resolver*, a ``dns.resolver.Resolver`` or ``None``, the resolver to use. + If ``None``, the default resolver is used. + + Raises ``dns.resolver.NoRootSOA`` if there is no SOA RR at the DNS + root. (This is only likely to happen if you're using non-default + root servers in your network and they are misconfigured.) + + Returns a ``dns.name.Name``. + """ + + if isinstance(name, string_types): + name = dns.name.from_text(name, dns.name.root) + if resolver is None: + resolver = get_default_resolver() + if not name.is_absolute(): + raise NotAbsolute(name) + while 1: + try: + answer = resolver.query(name, dns.rdatatype.SOA, rdclass, tcp) + if answer.rrset.name == name: + return name + # otherwise we were CNAMEd or DNAMEd and need to look higher + except (dns.resolver.NXDOMAIN, dns.resolver.NoAnswer): + pass + try: + name = name.parent() + except dns.name.NoParent: + raise NoRootSOA + +# +# Support for overriding the system resolver for all python code in the +# running process. +# + +_protocols_for_socktype = { + socket.SOCK_DGRAM: [socket.SOL_UDP], + socket.SOCK_STREAM: [socket.SOL_TCP], +} + +_resolver = None +_original_getaddrinfo = socket.getaddrinfo +_original_getnameinfo = socket.getnameinfo +_original_getfqdn = socket.getfqdn +_original_gethostbyname = socket.gethostbyname +_original_gethostbyname_ex = socket.gethostbyname_ex +_original_gethostbyaddr = socket.gethostbyaddr + + +def _getaddrinfo(host=None, service=None, family=socket.AF_UNSPEC, socktype=0, + proto=0, flags=0): + if flags & (socket.AI_ADDRCONFIG | socket.AI_V4MAPPED) != 0: + raise NotImplementedError + if host is None and service is None: + raise socket.gaierror(socket.EAI_NONAME) + v6addrs = [] + v4addrs = [] + canonical_name = None + try: + # Is host None or a V6 address literal? + if host is None: + canonical_name = 'localhost' + if flags & socket.AI_PASSIVE != 0: + v6addrs.append('::') + v4addrs.append('0.0.0.0') + else: + v6addrs.append('::1') + v4addrs.append('127.0.0.1') + else: + parts = host.split('%') + if len(parts) == 2: + ahost = parts[0] + else: + ahost = host + addr = dns.ipv6.inet_aton(ahost) + v6addrs.append(host) + canonical_name = host + except Exception: + try: + # Is it a V4 address literal? + addr = dns.ipv4.inet_aton(host) + v4addrs.append(host) + canonical_name = host + except Exception: + if flags & socket.AI_NUMERICHOST == 0: + try: + if family == socket.AF_INET6 or family == socket.AF_UNSPEC: + v6 = _resolver.query(host, dns.rdatatype.AAAA, + raise_on_no_answer=False) + # Note that setting host ensures we query the same name + # for A as we did for AAAA. + host = v6.qname + canonical_name = v6.canonical_name.to_text(True) + if v6.rrset is not None: + for rdata in v6.rrset: + v6addrs.append(rdata.address) + if family == socket.AF_INET or family == socket.AF_UNSPEC: + v4 = _resolver.query(host, dns.rdatatype.A, + raise_on_no_answer=False) + host = v4.qname + canonical_name = v4.canonical_name.to_text(True) + if v4.rrset is not None: + for rdata in v4.rrset: + v4addrs.append(rdata.address) + except dns.resolver.NXDOMAIN: + raise socket.gaierror(socket.EAI_NONAME) + except Exception: + raise socket.gaierror(socket.EAI_SYSTEM) + port = None + try: + # Is it a port literal? + if service is None: + port = 0 + else: + port = int(service) + except Exception: + if flags & socket.AI_NUMERICSERV == 0: + try: + port = socket.getservbyname(service) + except Exception: + pass + if port is None: + raise socket.gaierror(socket.EAI_NONAME) + tuples = [] + if socktype == 0: + socktypes = [socket.SOCK_DGRAM, socket.SOCK_STREAM] + else: + socktypes = [socktype] + if flags & socket.AI_CANONNAME != 0: + cname = canonical_name + else: + cname = '' + if family == socket.AF_INET6 or family == socket.AF_UNSPEC: + for addr in v6addrs: + for socktype in socktypes: + for proto in _protocols_for_socktype[socktype]: + tuples.append((socket.AF_INET6, socktype, proto, + cname, (addr, port, 0, 0))) + if family == socket.AF_INET or family == socket.AF_UNSPEC: + for addr in v4addrs: + for socktype in socktypes: + for proto in _protocols_for_socktype[socktype]: + tuples.append((socket.AF_INET, socktype, proto, + cname, (addr, port))) + if len(tuples) == 0: + raise socket.gaierror(socket.EAI_NONAME) + return tuples + + +def _getnameinfo(sockaddr, flags=0): + host = sockaddr[0] + port = sockaddr[1] + if len(sockaddr) == 4: + scope = sockaddr[3] + family = socket.AF_INET6 + else: + scope = None + family = socket.AF_INET + tuples = _getaddrinfo(host, port, family, socket.SOCK_STREAM, + socket.SOL_TCP, 0) + if len(tuples) > 1: + raise socket.error('sockaddr resolved to multiple addresses') + addr = tuples[0][4][0] + if flags & socket.NI_DGRAM: + pname = 'udp' + else: + pname = 'tcp' + qname = dns.reversename.from_address(addr) + if flags & socket.NI_NUMERICHOST == 0: + try: + answer = _resolver.query(qname, 'PTR') + hostname = answer.rrset[0].target.to_text(True) + except (dns.resolver.NXDOMAIN, dns.resolver.NoAnswer): + if flags & socket.NI_NAMEREQD: + raise socket.gaierror(socket.EAI_NONAME) + hostname = addr + if scope is not None: + hostname += '%' + str(scope) + else: + hostname = addr + if scope is not None: + hostname += '%' + str(scope) + if flags & socket.NI_NUMERICSERV: + service = str(port) + else: + service = socket.getservbyport(port, pname) + return (hostname, service) + + +def _getfqdn(name=None): + if name is None: + name = socket.gethostname() + try: + return _getnameinfo(_getaddrinfo(name, 80)[0][4])[0] + except Exception: + return name + + +def _gethostbyname(name): + return _gethostbyname_ex(name)[2][0] + + +def _gethostbyname_ex(name): + aliases = [] + addresses = [] + tuples = _getaddrinfo(name, 0, socket.AF_INET, socket.SOCK_STREAM, + socket.SOL_TCP, socket.AI_CANONNAME) + canonical = tuples[0][3] + for item in tuples: + addresses.append(item[4][0]) + # XXX we just ignore aliases + return (canonical, aliases, addresses) + + +def _gethostbyaddr(ip): + try: + dns.ipv6.inet_aton(ip) + sockaddr = (ip, 80, 0, 0) + family = socket.AF_INET6 + except Exception: + sockaddr = (ip, 80) + family = socket.AF_INET + (name, port) = _getnameinfo(sockaddr, socket.NI_NAMEREQD) + aliases = [] + addresses = [] + tuples = _getaddrinfo(name, 0, family, socket.SOCK_STREAM, socket.SOL_TCP, + socket.AI_CANONNAME) + canonical = tuples[0][3] + for item in tuples: + addresses.append(item[4][0]) + # XXX we just ignore aliases + return (canonical, aliases, addresses) + + +def override_system_resolver(resolver=None): + """Override the system resolver routines in the socket module with + versions which use dnspython's resolver. + + This can be useful in testing situations where you want to control + the resolution behavior of python code without having to change + the system's resolver settings (e.g. /etc/resolv.conf). + + The resolver to use may be specified; if it's not, the default + resolver will be used. + + resolver, a ``dns.resolver.Resolver`` or ``None``, the resolver to use. + """ + + if resolver is None: + resolver = get_default_resolver() + global _resolver + _resolver = resolver + socket.getaddrinfo = _getaddrinfo + socket.getnameinfo = _getnameinfo + socket.getfqdn = _getfqdn + socket.gethostbyname = _gethostbyname + socket.gethostbyname_ex = _gethostbyname_ex + socket.gethostbyaddr = _gethostbyaddr + + +def restore_system_resolver(): + """Undo the effects of prior override_system_resolver().""" + + global _resolver + _resolver = None + socket.getaddrinfo = _original_getaddrinfo + socket.getnameinfo = _original_getnameinfo + socket.getfqdn = _original_getfqdn + socket.gethostbyname = _original_gethostbyname + socket.gethostbyname_ex = _original_gethostbyname_ex + socket.gethostbyaddr = _original_gethostbyaddr diff --git a/openpype/vendor/python/python_2/dns/reversename.py b/openpype/vendor/python/python_2/dns/reversename.py new file mode 100644 index 0000000000..8f095fa91e --- /dev/null +++ b/openpype/vendor/python/python_2/dns/reversename.py @@ -0,0 +1,96 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2006-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Reverse Map Names.""" + +import binascii + +import dns.name +import dns.ipv6 +import dns.ipv4 + +from dns._compat import PY3 + +ipv4_reverse_domain = dns.name.from_text('in-addr.arpa.') +ipv6_reverse_domain = dns.name.from_text('ip6.arpa.') + + +def from_address(text): + """Convert an IPv4 or IPv6 address in textual form into a Name object whose + value is the reverse-map domain name of the address. + + *text*, a ``text``, is an IPv4 or IPv6 address in textual form + (e.g. '127.0.0.1', '::1') + + Raises ``dns.exception.SyntaxError`` if the address is badly formed. + + Returns a ``dns.name.Name``. + """ + + try: + v6 = dns.ipv6.inet_aton(text) + if dns.ipv6.is_mapped(v6): + if PY3: + parts = ['%d' % byte for byte in v6[12:]] + else: + parts = ['%d' % ord(byte) for byte in v6[12:]] + origin = ipv4_reverse_domain + else: + parts = [x for x in str(binascii.hexlify(v6).decode())] + origin = ipv6_reverse_domain + except Exception: + parts = ['%d' % + byte for byte in bytearray(dns.ipv4.inet_aton(text))] + origin = ipv4_reverse_domain + parts.reverse() + return dns.name.from_text('.'.join(parts), origin=origin) + + +def to_address(name): + """Convert a reverse map domain name into textual address form. + + *name*, a ``dns.name.Name``, an IPv4 or IPv6 address in reverse-map name + form. + + Raises ``dns.exception.SyntaxError`` if the name does not have a + reverse-map form. + + Returns a ``text``. + """ + + if name.is_subdomain(ipv4_reverse_domain): + name = name.relativize(ipv4_reverse_domain) + labels = list(name.labels) + labels.reverse() + text = b'.'.join(labels) + # run through inet_aton() to check syntax and make pretty. + return dns.ipv4.inet_ntoa(dns.ipv4.inet_aton(text)) + elif name.is_subdomain(ipv6_reverse_domain): + name = name.relativize(ipv6_reverse_domain) + labels = list(name.labels) + labels.reverse() + parts = [] + i = 0 + l = len(labels) + while i < l: + parts.append(b''.join(labels[i:i + 4])) + i += 4 + text = b':'.join(parts) + # run through inet_aton() to check syntax and make pretty. + return dns.ipv6.inet_ntoa(dns.ipv6.inet_aton(text)) + else: + raise dns.exception.SyntaxError('unknown reverse-map address family') diff --git a/openpype/vendor/python/python_2/dns/rrset.py b/openpype/vendor/python/python_2/dns/rrset.py new file mode 100644 index 0000000000..a53ec324b8 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/rrset.py @@ -0,0 +1,189 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS RRsets (an RRset is a named rdataset)""" + + +import dns.name +import dns.rdataset +import dns.rdataclass +import dns.renderer +from ._compat import string_types + + +class RRset(dns.rdataset.Rdataset): + + """A DNS RRset (named rdataset). + + RRset inherits from Rdataset, and RRsets can be treated as + Rdatasets in most cases. There are, however, a few notable + exceptions. RRsets have different to_wire() and to_text() method + arguments, reflecting the fact that RRsets always have an owner + name. + """ + + __slots__ = ['name', 'deleting'] + + def __init__(self, name, rdclass, rdtype, covers=dns.rdatatype.NONE, + deleting=None): + """Create a new RRset.""" + + super(RRset, self).__init__(rdclass, rdtype, covers) + self.name = name + self.deleting = deleting + + def _clone(self): + obj = super(RRset, self)._clone() + obj.name = self.name + obj.deleting = self.deleting + return obj + + def __repr__(self): + if self.covers == 0: + ctext = '' + else: + ctext = '(' + dns.rdatatype.to_text(self.covers) + ')' + if self.deleting is not None: + dtext = ' delete=' + dns.rdataclass.to_text(self.deleting) + else: + dtext = '' + return '' + + def __str__(self): + return self.to_text() + + def __eq__(self, other): + if not isinstance(other, RRset): + return False + if self.name != other.name: + return False + return super(RRset, self).__eq__(other) + + def match(self, name, rdclass, rdtype, covers, deleting=None): + """Returns ``True`` if this rrset matches the specified class, type, + covers, and deletion state. + """ + + if not super(RRset, self).match(rdclass, rdtype, covers): + return False + if self.name != name or self.deleting != deleting: + return False + return True + + def to_text(self, origin=None, relativize=True, **kw): + """Convert the RRset into DNS master file format. + + See ``dns.name.Name.choose_relativity`` for more information + on how *origin* and *relativize* determine the way names + are emitted. + + Any additional keyword arguments are passed on to the rdata + ``to_text()`` method. + + *origin*, a ``dns.name.Name`` or ``None``, the origin for relative + names. + + *relativize*, a ``bool``. If ``True``, names will be relativized + to *origin*. + """ + + return super(RRset, self).to_text(self.name, origin, relativize, + self.deleting, **kw) + + def to_wire(self, file, compress=None, origin=None, **kw): + """Convert the RRset to wire format. + + All keyword arguments are passed to ``dns.rdataset.to_wire()``; see + that function for details. + + Returns an ``int``, the number of records emitted. + """ + + return super(RRset, self).to_wire(self.name, file, compress, origin, + self.deleting, **kw) + + def to_rdataset(self): + """Convert an RRset into an Rdataset. + + Returns a ``dns.rdataset.Rdataset``. + """ + return dns.rdataset.from_rdata_list(self.ttl, list(self)) + + +def from_text_list(name, ttl, rdclass, rdtype, text_rdatas, + idna_codec=None): + """Create an RRset with the specified name, TTL, class, and type, and with + the specified list of rdatas in text format. + + Returns a ``dns.rrset.RRset`` object. + """ + + if isinstance(name, string_types): + name = dns.name.from_text(name, None, idna_codec=idna_codec) + if isinstance(rdclass, string_types): + rdclass = dns.rdataclass.from_text(rdclass) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + r = RRset(name, rdclass, rdtype) + r.update_ttl(ttl) + for t in text_rdatas: + rd = dns.rdata.from_text(r.rdclass, r.rdtype, t) + r.add(rd) + return r + + +def from_text(name, ttl, rdclass, rdtype, *text_rdatas): + """Create an RRset with the specified name, TTL, class, and type and with + the specified rdatas in text format. + + Returns a ``dns.rrset.RRset`` object. + """ + + return from_text_list(name, ttl, rdclass, rdtype, text_rdatas) + + +def from_rdata_list(name, ttl, rdatas, idna_codec=None): + """Create an RRset with the specified name and TTL, and with + the specified list of rdata objects. + + Returns a ``dns.rrset.RRset`` object. + """ + + if isinstance(name, string_types): + name = dns.name.from_text(name, None, idna_codec=idna_codec) + + if len(rdatas) == 0: + raise ValueError("rdata list must not be empty") + r = None + for rd in rdatas: + if r is None: + r = RRset(name, rd.rdclass, rd.rdtype) + r.update_ttl(ttl) + r.add(rd) + return r + + +def from_rdata(name, ttl, *rdatas): + """Create an RRset with the specified name and TTL, and with + the specified rdata objects. + + Returns a ``dns.rrset.RRset`` object. + """ + + return from_rdata_list(name, ttl, rdatas) diff --git a/openpype/vendor/python/python_2/dns/set.py b/openpype/vendor/python/python_2/dns/set.py new file mode 100644 index 0000000000..81329bf457 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/set.py @@ -0,0 +1,261 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +class Set(object): + + """A simple set class. + + This class was originally used to deal with sets being missing in + ancient versions of python, but dnspython will continue to use it + as these sets are based on lists and are thus indexable, and this + ability is widely used in dnspython applications. + """ + + __slots__ = ['items'] + + def __init__(self, items=None): + """Initialize the set. + + *items*, an iterable or ``None``, the initial set of items. + """ + + self.items = [] + if items is not None: + for item in items: + self.add(item) + + def __repr__(self): + return "dns.simpleset.Set(%s)" % repr(self.items) + + def add(self, item): + """Add an item to the set. + """ + + if item not in self.items: + self.items.append(item) + + def remove(self, item): + """Remove an item from the set. + """ + + self.items.remove(item) + + def discard(self, item): + """Remove an item from the set if present. + """ + + try: + self.items.remove(item) + except ValueError: + pass + + def _clone(self): + """Make a (shallow) copy of the set. + + There is a 'clone protocol' that subclasses of this class + should use. To make a copy, first call your super's _clone() + method, and use the object returned as the new instance. Then + make shallow copies of the attributes defined in the subclass. + + This protocol allows us to write the set algorithms that + return new instances (e.g. union) once, and keep using them in + subclasses. + """ + + cls = self.__class__ + obj = cls.__new__(cls) + obj.items = list(self.items) + return obj + + def __copy__(self): + """Make a (shallow) copy of the set. + """ + + return self._clone() + + def copy(self): + """Make a (shallow) copy of the set. + """ + + return self._clone() + + def union_update(self, other): + """Update the set, adding any elements from other which are not + already in the set. + """ + + if not isinstance(other, Set): + raise ValueError('other must be a Set instance') + if self is other: + return + for item in other.items: + self.add(item) + + def intersection_update(self, other): + """Update the set, removing any elements from other which are not + in both sets. + """ + + if not isinstance(other, Set): + raise ValueError('other must be a Set instance') + if self is other: + return + # we make a copy of the list so that we can remove items from + # the list without breaking the iterator. + for item in list(self.items): + if item not in other.items: + self.items.remove(item) + + def difference_update(self, other): + """Update the set, removing any elements from other which are in + the set. + """ + + if not isinstance(other, Set): + raise ValueError('other must be a Set instance') + if self is other: + self.items = [] + else: + for item in other.items: + self.discard(item) + + def union(self, other): + """Return a new set which is the union of ``self`` and ``other``. + + Returns the same Set type as this set. + """ + + obj = self._clone() + obj.union_update(other) + return obj + + def intersection(self, other): + """Return a new set which is the intersection of ``self`` and + ``other``. + + Returns the same Set type as this set. + """ + + obj = self._clone() + obj.intersection_update(other) + return obj + + def difference(self, other): + """Return a new set which ``self`` - ``other``, i.e. the items + in ``self`` which are not also in ``other``. + + Returns the same Set type as this set. + """ + + obj = self._clone() + obj.difference_update(other) + return obj + + def __or__(self, other): + return self.union(other) + + def __and__(self, other): + return self.intersection(other) + + def __add__(self, other): + return self.union(other) + + def __sub__(self, other): + return self.difference(other) + + def __ior__(self, other): + self.union_update(other) + return self + + def __iand__(self, other): + self.intersection_update(other) + return self + + def __iadd__(self, other): + self.union_update(other) + return self + + def __isub__(self, other): + self.difference_update(other) + return self + + def update(self, other): + """Update the set, adding any elements from other which are not + already in the set. + + *other*, the collection of items with which to update the set, which + may be any iterable type. + """ + + for item in other: + self.add(item) + + def clear(self): + """Make the set empty.""" + self.items = [] + + def __eq__(self, other): + # Yes, this is inefficient but the sets we're dealing with are + # usually quite small, so it shouldn't hurt too much. + for item in self.items: + if item not in other.items: + return False + for item in other.items: + if item not in self.items: + return False + return True + + def __ne__(self, other): + return not self.__eq__(other) + + def __len__(self): + return len(self.items) + + def __iter__(self): + return iter(self.items) + + def __getitem__(self, i): + return self.items[i] + + def __delitem__(self, i): + del self.items[i] + + def issubset(self, other): + """Is this set a subset of *other*? + + Returns a ``bool``. + """ + + if not isinstance(other, Set): + raise ValueError('other must be a Set instance') + for item in self.items: + if item not in other.items: + return False + return True + + def issuperset(self, other): + """Is this set a superset of *other*? + + Returns a ``bool``. + """ + + if not isinstance(other, Set): + raise ValueError('other must be a Set instance') + for item in other.items: + if item not in self.items: + return False + return True diff --git a/openpype/vendor/python/python_2/dns/tokenizer.py b/openpype/vendor/python/python_2/dns/tokenizer.py new file mode 100644 index 0000000000..880b71ce7a --- /dev/null +++ b/openpype/vendor/python/python_2/dns/tokenizer.py @@ -0,0 +1,571 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""Tokenize DNS master file format""" + +from io import StringIO +import sys + +import dns.exception +import dns.name +import dns.ttl +from ._compat import long, text_type, binary_type + +_DELIMITERS = { + ' ': True, + '\t': True, + '\n': True, + ';': True, + '(': True, + ')': True, + '"': True} + +_QUOTING_DELIMITERS = {'"': True} + +EOF = 0 +EOL = 1 +WHITESPACE = 2 +IDENTIFIER = 3 +QUOTED_STRING = 4 +COMMENT = 5 +DELIMITER = 6 + + +class UngetBufferFull(dns.exception.DNSException): + """An attempt was made to unget a token when the unget buffer was full.""" + + +class Token(object): + """A DNS master file format token. + + ttype: The token type + value: The token value + has_escape: Does the token value contain escapes? + """ + + def __init__(self, ttype, value='', has_escape=False): + """Initialize a token instance.""" + + self.ttype = ttype + self.value = value + self.has_escape = has_escape + + def is_eof(self): + return self.ttype == EOF + + def is_eol(self): + return self.ttype == EOL + + def is_whitespace(self): + return self.ttype == WHITESPACE + + def is_identifier(self): + return self.ttype == IDENTIFIER + + def is_quoted_string(self): + return self.ttype == QUOTED_STRING + + def is_comment(self): + return self.ttype == COMMENT + + def is_delimiter(self): + return self.ttype == DELIMITER + + def is_eol_or_eof(self): + return self.ttype == EOL or self.ttype == EOF + + def __eq__(self, other): + if not isinstance(other, Token): + return False + return (self.ttype == other.ttype and + self.value == other.value) + + def __ne__(self, other): + if not isinstance(other, Token): + return True + return (self.ttype != other.ttype or + self.value != other.value) + + def __str__(self): + return '%d "%s"' % (self.ttype, self.value) + + def unescape(self): + if not self.has_escape: + return self + unescaped = '' + l = len(self.value) + i = 0 + while i < l: + c = self.value[i] + i += 1 + if c == '\\': + if i >= l: + raise dns.exception.UnexpectedEnd + c = self.value[i] + i += 1 + if c.isdigit(): + if i >= l: + raise dns.exception.UnexpectedEnd + c2 = self.value[i] + i += 1 + if i >= l: + raise dns.exception.UnexpectedEnd + c3 = self.value[i] + i += 1 + if not (c2.isdigit() and c3.isdigit()): + raise dns.exception.SyntaxError + c = chr(int(c) * 100 + int(c2) * 10 + int(c3)) + unescaped += c + return Token(self.ttype, unescaped) + + # compatibility for old-style tuple tokens + + def __len__(self): + return 2 + + def __iter__(self): + return iter((self.ttype, self.value)) + + def __getitem__(self, i): + if i == 0: + return self.ttype + elif i == 1: + return self.value + else: + raise IndexError + + +class Tokenizer(object): + """A DNS master file format tokenizer. + + A token object is basically a (type, value) tuple. The valid + types are EOF, EOL, WHITESPACE, IDENTIFIER, QUOTED_STRING, + COMMENT, and DELIMITER. + + file: The file to tokenize + + ungotten_char: The most recently ungotten character, or None. + + ungotten_token: The most recently ungotten token, or None. + + multiline: The current multiline level. This value is increased + by one every time a '(' delimiter is read, and decreased by one every time + a ')' delimiter is read. + + quoting: This variable is true if the tokenizer is currently + reading a quoted string. + + eof: This variable is true if the tokenizer has encountered EOF. + + delimiters: The current delimiter dictionary. + + line_number: The current line number + + filename: A filename that will be returned by the where() method. + """ + + def __init__(self, f=sys.stdin, filename=None): + """Initialize a tokenizer instance. + + f: The file to tokenize. The default is sys.stdin. + This parameter may also be a string, in which case the tokenizer + will take its input from the contents of the string. + + filename: the name of the filename that the where() method + will return. + """ + + if isinstance(f, text_type): + f = StringIO(f) + if filename is None: + filename = '' + elif isinstance(f, binary_type): + f = StringIO(f.decode()) + if filename is None: + filename = '' + else: + if filename is None: + if f is sys.stdin: + filename = '' + else: + filename = '' + self.file = f + self.ungotten_char = None + self.ungotten_token = None + self.multiline = 0 + self.quoting = False + self.eof = False + self.delimiters = _DELIMITERS + self.line_number = 1 + self.filename = filename + + def _get_char(self): + """Read a character from input. + """ + + if self.ungotten_char is None: + if self.eof: + c = '' + else: + c = self.file.read(1) + if c == '': + self.eof = True + elif c == '\n': + self.line_number += 1 + else: + c = self.ungotten_char + self.ungotten_char = None + return c + + def where(self): + """Return the current location in the input. + + Returns a (string, int) tuple. The first item is the filename of + the input, the second is the current line number. + """ + + return (self.filename, self.line_number) + + def _unget_char(self, c): + """Unget a character. + + The unget buffer for characters is only one character large; it is + an error to try to unget a character when the unget buffer is not + empty. + + c: the character to unget + raises UngetBufferFull: there is already an ungotten char + """ + + if self.ungotten_char is not None: + raise UngetBufferFull + self.ungotten_char = c + + def skip_whitespace(self): + """Consume input until a non-whitespace character is encountered. + + The non-whitespace character is then ungotten, and the number of + whitespace characters consumed is returned. + + If the tokenizer is in multiline mode, then newlines are whitespace. + + Returns the number of characters skipped. + """ + + skipped = 0 + while True: + c = self._get_char() + if c != ' ' and c != '\t': + if (c != '\n') or not self.multiline: + self._unget_char(c) + return skipped + skipped += 1 + + def get(self, want_leading=False, want_comment=False): + """Get the next token. + + want_leading: If True, return a WHITESPACE token if the + first character read is whitespace. The default is False. + + want_comment: If True, return a COMMENT token if the + first token read is a comment. The default is False. + + Raises dns.exception.UnexpectedEnd: input ended prematurely + + Raises dns.exception.SyntaxError: input was badly formed + + Returns a Token. + """ + + if self.ungotten_token is not None: + token = self.ungotten_token + self.ungotten_token = None + if token.is_whitespace(): + if want_leading: + return token + elif token.is_comment(): + if want_comment: + return token + else: + return token + skipped = self.skip_whitespace() + if want_leading and skipped > 0: + return Token(WHITESPACE, ' ') + token = '' + ttype = IDENTIFIER + has_escape = False + while True: + c = self._get_char() + if c == '' or c in self.delimiters: + if c == '' and self.quoting: + raise dns.exception.UnexpectedEnd + if token == '' and ttype != QUOTED_STRING: + if c == '(': + self.multiline += 1 + self.skip_whitespace() + continue + elif c == ')': + if self.multiline <= 0: + raise dns.exception.SyntaxError + self.multiline -= 1 + self.skip_whitespace() + continue + elif c == '"': + if not self.quoting: + self.quoting = True + self.delimiters = _QUOTING_DELIMITERS + ttype = QUOTED_STRING + continue + else: + self.quoting = False + self.delimiters = _DELIMITERS + self.skip_whitespace() + continue + elif c == '\n': + return Token(EOL, '\n') + elif c == ';': + while 1: + c = self._get_char() + if c == '\n' or c == '': + break + token += c + if want_comment: + self._unget_char(c) + return Token(COMMENT, token) + elif c == '': + if self.multiline: + raise dns.exception.SyntaxError( + 'unbalanced parentheses') + return Token(EOF) + elif self.multiline: + self.skip_whitespace() + token = '' + continue + else: + return Token(EOL, '\n') + else: + # This code exists in case we ever want a + # delimiter to be returned. It never produces + # a token currently. + token = c + ttype = DELIMITER + else: + self._unget_char(c) + break + elif self.quoting: + if c == '\\': + c = self._get_char() + if c == '': + raise dns.exception.UnexpectedEnd + if c.isdigit(): + c2 = self._get_char() + if c2 == '': + raise dns.exception.UnexpectedEnd + c3 = self._get_char() + if c == '': + raise dns.exception.UnexpectedEnd + if not (c2.isdigit() and c3.isdigit()): + raise dns.exception.SyntaxError + c = chr(int(c) * 100 + int(c2) * 10 + int(c3)) + elif c == '\n': + raise dns.exception.SyntaxError('newline in quoted string') + elif c == '\\': + # + # It's an escape. Put it and the next character into + # the token; it will be checked later for goodness. + # + token += c + has_escape = True + c = self._get_char() + if c == '' or c == '\n': + raise dns.exception.UnexpectedEnd + token += c + if token == '' and ttype != QUOTED_STRING: + if self.multiline: + raise dns.exception.SyntaxError('unbalanced parentheses') + ttype = EOF + return Token(ttype, token, has_escape) + + def unget(self, token): + """Unget a token. + + The unget buffer for tokens is only one token large; it is + an error to try to unget a token when the unget buffer is not + empty. + + token: the token to unget + + Raises UngetBufferFull: there is already an ungotten token + """ + + if self.ungotten_token is not None: + raise UngetBufferFull + self.ungotten_token = token + + def next(self): + """Return the next item in an iteration. + + Returns a Token. + """ + + token = self.get() + if token.is_eof(): + raise StopIteration + return token + + __next__ = next + + def __iter__(self): + return self + + # Helpers + + def get_int(self, base=10): + """Read the next token and interpret it as an integer. + + Raises dns.exception.SyntaxError if not an integer. + + Returns an int. + """ + + token = self.get().unescape() + if not token.is_identifier(): + raise dns.exception.SyntaxError('expecting an identifier') + if not token.value.isdigit(): + raise dns.exception.SyntaxError('expecting an integer') + return int(token.value, base) + + def get_uint8(self): + """Read the next token and interpret it as an 8-bit unsigned + integer. + + Raises dns.exception.SyntaxError if not an 8-bit unsigned integer. + + Returns an int. + """ + + value = self.get_int() + if value < 0 or value > 255: + raise dns.exception.SyntaxError( + '%d is not an unsigned 8-bit integer' % value) + return value + + def get_uint16(self, base=10): + """Read the next token and interpret it as a 16-bit unsigned + integer. + + Raises dns.exception.SyntaxError if not a 16-bit unsigned integer. + + Returns an int. + """ + + value = self.get_int(base=base) + if value < 0 or value > 65535: + if base == 8: + raise dns.exception.SyntaxError( + '%o is not an octal unsigned 16-bit integer' % value) + else: + raise dns.exception.SyntaxError( + '%d is not an unsigned 16-bit integer' % value) + return value + + def get_uint32(self): + """Read the next token and interpret it as a 32-bit unsigned + integer. + + Raises dns.exception.SyntaxError if not a 32-bit unsigned integer. + + Returns an int. + """ + + token = self.get().unescape() + if not token.is_identifier(): + raise dns.exception.SyntaxError('expecting an identifier') + if not token.value.isdigit(): + raise dns.exception.SyntaxError('expecting an integer') + value = long(token.value) + if value < 0 or value > long(4294967296): + raise dns.exception.SyntaxError( + '%d is not an unsigned 32-bit integer' % value) + return value + + def get_string(self, origin=None): + """Read the next token and interpret it as a string. + + Raises dns.exception.SyntaxError if not a string. + + Returns a string. + """ + + token = self.get().unescape() + if not (token.is_identifier() or token.is_quoted_string()): + raise dns.exception.SyntaxError('expecting a string') + return token.value + + def get_identifier(self, origin=None): + """Read the next token, which should be an identifier. + + Raises dns.exception.SyntaxError if not an identifier. + + Returns a string. + """ + + token = self.get().unescape() + if not token.is_identifier(): + raise dns.exception.SyntaxError('expecting an identifier') + return token.value + + def get_name(self, origin=None): + """Read the next token and interpret it as a DNS name. + + Raises dns.exception.SyntaxError if not a name. + + Returns a dns.name.Name. + """ + + token = self.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError('expecting an identifier') + return dns.name.from_text(token.value, origin) + + def get_eol(self): + """Read the next token and raise an exception if it isn't EOL or + EOF. + + Returns a string. + """ + + token = self.get() + if not token.is_eol_or_eof(): + raise dns.exception.SyntaxError( + 'expected EOL or EOF, got %d "%s"' % (token.ttype, + token.value)) + return token.value + + def get_ttl(self): + """Read the next token and interpret it as a DNS TTL. + + Raises dns.exception.SyntaxError or dns.ttl.BadTTL if not an + identifier or badly formed. + + Returns an int. + """ + + token = self.get().unescape() + if not token.is_identifier(): + raise dns.exception.SyntaxError('expecting an identifier') + return dns.ttl.from_text(token.value) diff --git a/openpype/vendor/python/python_2/dns/tsig.py b/openpype/vendor/python/python_2/dns/tsig.py new file mode 100644 index 0000000000..3daa387855 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/tsig.py @@ -0,0 +1,236 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2001-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS TSIG support.""" + +import hashlib +import hmac +import struct + +import dns.exception +import dns.rdataclass +import dns.name +from ._compat import long, string_types, text_type + +class BadTime(dns.exception.DNSException): + + """The current time is not within the TSIG's validity time.""" + + +class BadSignature(dns.exception.DNSException): + + """The TSIG signature fails to verify.""" + + +class PeerError(dns.exception.DNSException): + + """Base class for all TSIG errors generated by the remote peer""" + + +class PeerBadKey(PeerError): + + """The peer didn't know the key we used""" + + +class PeerBadSignature(PeerError): + + """The peer didn't like the signature we sent""" + + +class PeerBadTime(PeerError): + + """The peer didn't like the time we sent""" + + +class PeerBadTruncation(PeerError): + + """The peer didn't like amount of truncation in the TSIG we sent""" + +# TSIG Algorithms + +HMAC_MD5 = dns.name.from_text("HMAC-MD5.SIG-ALG.REG.INT") +HMAC_SHA1 = dns.name.from_text("hmac-sha1") +HMAC_SHA224 = dns.name.from_text("hmac-sha224") +HMAC_SHA256 = dns.name.from_text("hmac-sha256") +HMAC_SHA384 = dns.name.from_text("hmac-sha384") +HMAC_SHA512 = dns.name.from_text("hmac-sha512") + +_hashes = { + HMAC_SHA224: hashlib.sha224, + HMAC_SHA256: hashlib.sha256, + HMAC_SHA384: hashlib.sha384, + HMAC_SHA512: hashlib.sha512, + HMAC_SHA1: hashlib.sha1, + HMAC_MD5: hashlib.md5, +} + +default_algorithm = HMAC_MD5 + +BADSIG = 16 +BADKEY = 17 +BADTIME = 18 +BADTRUNC = 22 + + +def sign(wire, keyname, secret, time, fudge, original_id, error, + other_data, request_mac, ctx=None, multi=False, first=True, + algorithm=default_algorithm): + """Return a (tsig_rdata, mac, ctx) tuple containing the HMAC TSIG rdata + for the input parameters, the HMAC MAC calculated by applying the + TSIG signature algorithm, and the TSIG digest context. + @rtype: (string, string, hmac.HMAC object) + @raises ValueError: I{other_data} is too long + @raises NotImplementedError: I{algorithm} is not supported + """ + + if isinstance(other_data, text_type): + other_data = other_data.encode() + (algorithm_name, digestmod) = get_algorithm(algorithm) + if first: + ctx = hmac.new(secret, digestmod=digestmod) + ml = len(request_mac) + if ml > 0: + ctx.update(struct.pack('!H', ml)) + ctx.update(request_mac) + id = struct.pack('!H', original_id) + ctx.update(id) + ctx.update(wire[2:]) + if first: + ctx.update(keyname.to_digestable()) + ctx.update(struct.pack('!H', dns.rdataclass.ANY)) + ctx.update(struct.pack('!I', 0)) + long_time = time + long(0) + upper_time = (long_time >> 32) & long(0xffff) + lower_time = long_time & long(0xffffffff) + time_mac = struct.pack('!HIH', upper_time, lower_time, fudge) + pre_mac = algorithm_name + time_mac + ol = len(other_data) + if ol > 65535: + raise ValueError('TSIG Other Data is > 65535 bytes') + post_mac = struct.pack('!HH', error, ol) + other_data + if first: + ctx.update(pre_mac) + ctx.update(post_mac) + else: + ctx.update(time_mac) + mac = ctx.digest() + mpack = struct.pack('!H', len(mac)) + tsig_rdata = pre_mac + mpack + mac + id + post_mac + if multi: + ctx = hmac.new(secret, digestmod=digestmod) + ml = len(mac) + ctx.update(struct.pack('!H', ml)) + ctx.update(mac) + else: + ctx = None + return (tsig_rdata, mac, ctx) + + +def hmac_md5(wire, keyname, secret, time, fudge, original_id, error, + other_data, request_mac, ctx=None, multi=False, first=True, + algorithm=default_algorithm): + return sign(wire, keyname, secret, time, fudge, original_id, error, + other_data, request_mac, ctx, multi, first, algorithm) + + +def validate(wire, keyname, secret, now, request_mac, tsig_start, tsig_rdata, + tsig_rdlen, ctx=None, multi=False, first=True): + """Validate the specified TSIG rdata against the other input parameters. + + @raises FormError: The TSIG is badly formed. + @raises BadTime: There is too much time skew between the client and the + server. + @raises BadSignature: The TSIG signature did not validate + @rtype: hmac.HMAC object""" + + (adcount,) = struct.unpack("!H", wire[10:12]) + if adcount == 0: + raise dns.exception.FormError + adcount -= 1 + new_wire = wire[0:10] + struct.pack("!H", adcount) + wire[12:tsig_start] + current = tsig_rdata + (aname, used) = dns.name.from_wire(wire, current) + current = current + used + (upper_time, lower_time, fudge, mac_size) = \ + struct.unpack("!HIHH", wire[current:current + 10]) + time = ((upper_time + long(0)) << 32) + (lower_time + long(0)) + current += 10 + mac = wire[current:current + mac_size] + current += mac_size + (original_id, error, other_size) = \ + struct.unpack("!HHH", wire[current:current + 6]) + current += 6 + other_data = wire[current:current + other_size] + current += other_size + if current != tsig_rdata + tsig_rdlen: + raise dns.exception.FormError + if error != 0: + if error == BADSIG: + raise PeerBadSignature + elif error == BADKEY: + raise PeerBadKey + elif error == BADTIME: + raise PeerBadTime + elif error == BADTRUNC: + raise PeerBadTruncation + else: + raise PeerError('unknown TSIG error code %d' % error) + time_low = time - fudge + time_high = time + fudge + if now < time_low or now > time_high: + raise BadTime + (junk, our_mac, ctx) = sign(new_wire, keyname, secret, time, fudge, + original_id, error, other_data, + request_mac, ctx, multi, first, aname) + if our_mac != mac: + raise BadSignature + return ctx + + +def get_algorithm(algorithm): + """Returns the wire format string and the hash module to use for the + specified TSIG algorithm + + @rtype: (string, hash constructor) + @raises NotImplementedError: I{algorithm} is not supported + """ + + if isinstance(algorithm, string_types): + algorithm = dns.name.from_text(algorithm) + + try: + return (algorithm.to_digestable(), _hashes[algorithm]) + except KeyError: + raise NotImplementedError("TSIG algorithm " + str(algorithm) + + " is not supported") + + +def get_algorithm_and_mac(wire, tsig_rdata, tsig_rdlen): + """Return the tsig algorithm for the specified tsig_rdata + @raises FormError: The TSIG is badly formed. + """ + current = tsig_rdata + (aname, used) = dns.name.from_wire(wire, current) + current = current + used + (upper_time, lower_time, fudge, mac_size) = \ + struct.unpack("!HIHH", wire[current:current + 10]) + current += 10 + mac = wire[current:current + mac_size] + current += mac_size + if current > tsig_rdata + tsig_rdlen: + raise dns.exception.FormError + return (aname, mac) diff --git a/openpype/vendor/python/python_2/dns/tsigkeyring.py b/openpype/vendor/python/python_2/dns/tsigkeyring.py new file mode 100644 index 0000000000..5e5fe1cbe4 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/tsigkeyring.py @@ -0,0 +1,50 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""A place to store TSIG keys.""" + +from dns._compat import maybe_decode, maybe_encode + +import base64 + +import dns.name + + +def from_text(textring): + """Convert a dictionary containing (textual DNS name, base64 secret) pairs + into a binary keyring which has (dns.name.Name, binary secret) pairs. + @rtype: dict""" + + keyring = {} + for keytext in textring: + keyname = dns.name.from_text(keytext) + secret = base64.decodestring(maybe_encode(textring[keytext])) + keyring[keyname] = secret + return keyring + + +def to_text(keyring): + """Convert a dictionary containing (dns.name.Name, binary secret) pairs + into a text keyring which has (textual DNS name, base64 secret) pairs. + @rtype: dict""" + + textring = {} + for keyname in keyring: + keytext = maybe_decode(keyname.to_text()) + secret = maybe_decode(base64.encodestring(keyring[keyname])) + textring[keytext] = secret + return textring diff --git a/openpype/vendor/python/python_2/dns/ttl.py b/openpype/vendor/python/python_2/dns/ttl.py new file mode 100644 index 0000000000..4be16bee5b --- /dev/null +++ b/openpype/vendor/python/python_2/dns/ttl.py @@ -0,0 +1,70 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS TTL conversion.""" + +import dns.exception +from ._compat import long + + +class BadTTL(dns.exception.SyntaxError): + """DNS TTL value is not well-formed.""" + + +def from_text(text): + """Convert the text form of a TTL to an integer. + + The BIND 8 units syntax for TTLs (e.g. '1w6d4h3m10s') is supported. + + *text*, a ``text``, the textual TTL. + + Raises ``dns.ttl.BadTTL`` if the TTL is not well-formed. + + Returns an ``int``. + """ + + if text.isdigit(): + total = long(text) + else: + if not text[0].isdigit(): + raise BadTTL + total = long(0) + current = long(0) + for c in text: + if c.isdigit(): + current *= 10 + current += long(c) + else: + c = c.lower() + if c == 'w': + total += current * long(604800) + elif c == 'd': + total += current * long(86400) + elif c == 'h': + total += current * long(3600) + elif c == 'm': + total += current * long(60) + elif c == 's': + total += current + else: + raise BadTTL("unknown unit '%s'" % c) + current = 0 + if not current == 0: + raise BadTTL("trailing integer") + if total < long(0) or total > long(2147483647): + raise BadTTL("TTL should be between 0 and 2^31 - 1 (inclusive)") + return total diff --git a/openpype/vendor/python/python_2/dns/update.py b/openpype/vendor/python/python_2/dns/update.py new file mode 100644 index 0000000000..96a00d5dbe --- /dev/null +++ b/openpype/vendor/python/python_2/dns/update.py @@ -0,0 +1,279 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Dynamic Update Support""" + + +import dns.message +import dns.name +import dns.opcode +import dns.rdata +import dns.rdataclass +import dns.rdataset +import dns.tsig +from ._compat import string_types + + +class Update(dns.message.Message): + + def __init__(self, zone, rdclass=dns.rdataclass.IN, keyring=None, + keyname=None, keyalgorithm=dns.tsig.default_algorithm): + """Initialize a new DNS Update object. + + See the documentation of the Message class for a complete + description of the keyring dictionary. + + *zone*, a ``dns.name.Name`` or ``text``, the zone which is being + updated. + + *rdclass*, an ``int`` or ``text``, the class of the zone. + + *keyring*, a ``dict``, the TSIG keyring to use. If a + *keyring* is specified but a *keyname* is not, then the key + used will be the first key in the *keyring*. Note that the + order of keys in a dictionary is not defined, so applications + should supply a keyname when a keyring is used, unless they + know the keyring contains only one key. + + *keyname*, a ``dns.name.Name`` or ``None``, the name of the TSIG key + to use; defaults to ``None``. The key must be defined in the keyring. + + *keyalgorithm*, a ``dns.name.Name``, the TSIG algorithm to use. + """ + super(Update, self).__init__() + self.flags |= dns.opcode.to_flags(dns.opcode.UPDATE) + if isinstance(zone, string_types): + zone = dns.name.from_text(zone) + self.origin = zone + if isinstance(rdclass, string_types): + rdclass = dns.rdataclass.from_text(rdclass) + self.zone_rdclass = rdclass + self.find_rrset(self.question, self.origin, rdclass, dns.rdatatype.SOA, + create=True, force_unique=True) + if keyring is not None: + self.use_tsig(keyring, keyname, algorithm=keyalgorithm) + + def _add_rr(self, name, ttl, rd, deleting=None, section=None): + """Add a single RR to the update section.""" + + if section is None: + section = self.authority + covers = rd.covers() + rrset = self.find_rrset(section, name, self.zone_rdclass, rd.rdtype, + covers, deleting, True, True) + rrset.add(rd, ttl) + + def _add(self, replace, section, name, *args): + """Add records. + + *replace* is the replacement mode. If ``False``, + RRs are added to an existing RRset; if ``True``, the RRset + is replaced with the specified contents. The second + argument is the section to add to. The third argument + is always a name. The other arguments can be: + + - rdataset... + + - ttl, rdata... + + - ttl, rdtype, string... + """ + + if isinstance(name, string_types): + name = dns.name.from_text(name, None) + if isinstance(args[0], dns.rdataset.Rdataset): + for rds in args: + if replace: + self.delete(name, rds.rdtype) + for rd in rds: + self._add_rr(name, rds.ttl, rd, section=section) + else: + args = list(args) + ttl = int(args.pop(0)) + if isinstance(args[0], dns.rdata.Rdata): + if replace: + self.delete(name, args[0].rdtype) + for rd in args: + self._add_rr(name, ttl, rd, section=section) + else: + rdtype = args.pop(0) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + if replace: + self.delete(name, rdtype) + for s in args: + rd = dns.rdata.from_text(self.zone_rdclass, rdtype, s, + self.origin) + self._add_rr(name, ttl, rd, section=section) + + def add(self, name, *args): + """Add records. + + The first argument is always a name. The other + arguments can be: + + - rdataset... + + - ttl, rdata... + + - ttl, rdtype, string... + """ + + self._add(False, self.authority, name, *args) + + def delete(self, name, *args): + """Delete records. + + The first argument is always a name. The other + arguments can be: + + - *empty* + + - rdataset... + + - rdata... + + - rdtype, [string...] + """ + + if isinstance(name, string_types): + name = dns.name.from_text(name, None) + if len(args) == 0: + self.find_rrset(self.authority, name, dns.rdataclass.ANY, + dns.rdatatype.ANY, dns.rdatatype.NONE, + dns.rdatatype.ANY, True, True) + elif isinstance(args[0], dns.rdataset.Rdataset): + for rds in args: + for rd in rds: + self._add_rr(name, 0, rd, dns.rdataclass.NONE) + else: + args = list(args) + if isinstance(args[0], dns.rdata.Rdata): + for rd in args: + self._add_rr(name, 0, rd, dns.rdataclass.NONE) + else: + rdtype = args.pop(0) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + if len(args) == 0: + self.find_rrset(self.authority, name, + self.zone_rdclass, rdtype, + dns.rdatatype.NONE, + dns.rdataclass.ANY, + True, True) + else: + for s in args: + rd = dns.rdata.from_text(self.zone_rdclass, rdtype, s, + self.origin) + self._add_rr(name, 0, rd, dns.rdataclass.NONE) + + def replace(self, name, *args): + """Replace records. + + The first argument is always a name. The other + arguments can be: + + - rdataset... + + - ttl, rdata... + + - ttl, rdtype, string... + + Note that if you want to replace the entire node, you should do + a delete of the name followed by one or more calls to add. + """ + + self._add(True, self.authority, name, *args) + + def present(self, name, *args): + """Require that an owner name (and optionally an rdata type, + or specific rdataset) exists as a prerequisite to the + execution of the update. + + The first argument is always a name. + The other arguments can be: + + - rdataset... + + - rdata... + + - rdtype, string... + """ + + if isinstance(name, string_types): + name = dns.name.from_text(name, None) + if len(args) == 0: + self.find_rrset(self.answer, name, + dns.rdataclass.ANY, dns.rdatatype.ANY, + dns.rdatatype.NONE, None, + True, True) + elif isinstance(args[0], dns.rdataset.Rdataset) or \ + isinstance(args[0], dns.rdata.Rdata) or \ + len(args) > 1: + if not isinstance(args[0], dns.rdataset.Rdataset): + # Add a 0 TTL + args = list(args) + args.insert(0, 0) + self._add(False, self.answer, name, *args) + else: + rdtype = args[0] + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + self.find_rrset(self.answer, name, + dns.rdataclass.ANY, rdtype, + dns.rdatatype.NONE, None, + True, True) + + def absent(self, name, rdtype=None): + """Require that an owner name (and optionally an rdata type) does + not exist as a prerequisite to the execution of the update.""" + + if isinstance(name, string_types): + name = dns.name.from_text(name, None) + if rdtype is None: + self.find_rrset(self.answer, name, + dns.rdataclass.NONE, dns.rdatatype.ANY, + dns.rdatatype.NONE, None, + True, True) + else: + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + self.find_rrset(self.answer, name, + dns.rdataclass.NONE, rdtype, + dns.rdatatype.NONE, None, + True, True) + + def to_wire(self, origin=None, max_size=65535): + """Return a string containing the update in DNS compressed wire + format. + + *origin*, a ``dns.name.Name`` or ``None``, the origin to be + appended to any relative names. If *origin* is ``None``, then + the origin of the ``dns.update.Update`` message object is used + (i.e. the *zone* parameter passed when the Update object was + created). + + *max_size*, an ``int``, the maximum size of the wire format + output; default is 0, which means "the message's request + payload, if nonzero, or 65535". + + Returns a ``binary``. + """ + + if origin is None: + origin = self.origin + return super(Update, self).to_wire(origin, max_size) diff --git a/openpype/vendor/python/python_2/dns/version.py b/openpype/vendor/python/python_2/dns/version.py new file mode 100644 index 0000000000..f116904b46 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/version.py @@ -0,0 +1,43 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""dnspython release version information.""" + +#: MAJOR +MAJOR = 1 +#: MINOR +MINOR = 16 +#: MICRO +MICRO = 0 +#: RELEASELEVEL +RELEASELEVEL = 0x0f +#: SERIAL +SERIAL = 0 + +if RELEASELEVEL == 0x0f: + #: version + version = '%d.%d.%d' % (MAJOR, MINOR, MICRO) +elif RELEASELEVEL == 0x00: + version = '%d.%d.%dx%d' % \ + (MAJOR, MINOR, MICRO, SERIAL) +else: + version = '%d.%d.%d%x%d' % \ + (MAJOR, MINOR, MICRO, RELEASELEVEL, SERIAL) + +#: hexversion +hexversion = MAJOR << 24 | MINOR << 16 | MICRO << 8 | RELEASELEVEL << 4 | \ + SERIAL diff --git a/openpype/vendor/python/python_2/dns/wiredata.py b/openpype/vendor/python/python_2/dns/wiredata.py new file mode 100644 index 0000000000..ea3c1e67d6 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/wiredata.py @@ -0,0 +1,103 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2011,2017 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Wire Data Helper""" + +import dns.exception +from ._compat import binary_type, string_types, PY2 + +# Figure out what constant python passes for an unspecified slice bound. +# It's supposed to be sys.maxint, yet on 64-bit windows sys.maxint is 2^31 - 1 +# but Python uses 2^63 - 1 as the constant. Rather than making pointless +# extra comparisons, duplicating code, or weakening WireData, we just figure +# out what constant Python will use. + + +class _SliceUnspecifiedBound(binary_type): + + def __getitem__(self, key): + return key.stop + + if PY2: + def __getslice__(self, i, j): # pylint: disable=getslice-method + return self.__getitem__(slice(i, j)) + +_unspecified_bound = _SliceUnspecifiedBound()[1:] + + +class WireData(binary_type): + # WireData is a binary type with stricter slicing + + def __getitem__(self, key): + try: + if isinstance(key, slice): + # make sure we are not going outside of valid ranges, + # do stricter control of boundaries than python does + # by default + start = key.start + stop = key.stop + + if PY2: + if stop == _unspecified_bound: + # handle the case where the right bound is unspecified + stop = len(self) + + if start < 0 or stop < 0: + raise dns.exception.FormError + # If it's not an empty slice, access left and right bounds + # to make sure they're valid + if start != stop: + super(WireData, self).__getitem__(start) + super(WireData, self).__getitem__(stop - 1) + else: + for index in (start, stop): + if index is None: + continue + elif abs(index) > len(self): + raise dns.exception.FormError + + return WireData(super(WireData, self).__getitem__( + slice(start, stop))) + return bytearray(self.unwrap())[key] + except IndexError: + raise dns.exception.FormError + + if PY2: + def __getslice__(self, i, j): # pylint: disable=getslice-method + return self.__getitem__(slice(i, j)) + + def __iter__(self): + i = 0 + while 1: + try: + yield self[i] + i += 1 + except dns.exception.FormError: + raise StopIteration + + def unwrap(self): + return binary_type(self) + + +def maybe_wrap(wire): + if isinstance(wire, WireData): + return wire + elif isinstance(wire, binary_type): + return WireData(wire) + elif isinstance(wire, string_types): + return WireData(wire.encode()) + raise ValueError("unhandled type %s" % type(wire)) diff --git a/openpype/vendor/python/python_2/dns/zone.py b/openpype/vendor/python/python_2/dns/zone.py new file mode 100644 index 0000000000..1e2fe78168 --- /dev/null +++ b/openpype/vendor/python/python_2/dns/zone.py @@ -0,0 +1,1127 @@ +# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license + +# Copyright (C) 2003-2007, 2009-2011 Nominum, Inc. +# +# Permission to use, copy, modify, and distribute this software and its +# documentation for any purpose with or without fee is hereby granted, +# provided that the above copyright notice and this permission notice +# appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +"""DNS Zones.""" + +from __future__ import generators + +import sys +import re +import os +from io import BytesIO + +import dns.exception +import dns.name +import dns.node +import dns.rdataclass +import dns.rdatatype +import dns.rdata +import dns.rdtypes.ANY.SOA +import dns.rrset +import dns.tokenizer +import dns.ttl +import dns.grange +from ._compat import string_types, text_type, PY3 + + +class BadZone(dns.exception.DNSException): + + """The DNS zone is malformed.""" + + +class NoSOA(BadZone): + + """The DNS zone has no SOA RR at its origin.""" + + +class NoNS(BadZone): + + """The DNS zone has no NS RRset at its origin.""" + + +class UnknownOrigin(BadZone): + + """The DNS zone's origin is unknown.""" + + +class Zone(object): + + """A DNS zone. + + A Zone is a mapping from names to nodes. The zone object may be + treated like a Python dictionary, e.g. zone[name] will retrieve + the node associated with that name. The I{name} may be a + dns.name.Name object, or it may be a string. In the either case, + if the name is relative it is treated as relative to the origin of + the zone. + + @ivar rdclass: The zone's rdata class; the default is class IN. + @type rdclass: int + @ivar origin: The origin of the zone. + @type origin: dns.name.Name object + @ivar nodes: A dictionary mapping the names of nodes in the zone to the + nodes themselves. + @type nodes: dict + @ivar relativize: should names in the zone be relativized? + @type relativize: bool + @cvar node_factory: the factory used to create a new node + @type node_factory: class or callable + """ + + node_factory = dns.node.Node + + __slots__ = ['rdclass', 'origin', 'nodes', 'relativize'] + + def __init__(self, origin, rdclass=dns.rdataclass.IN, relativize=True): + """Initialize a zone object. + + @param origin: The origin of the zone. + @type origin: dns.name.Name object + @param rdclass: The zone's rdata class; the default is class IN. + @type rdclass: int""" + + if origin is not None: + if isinstance(origin, string_types): + origin = dns.name.from_text(origin) + elif not isinstance(origin, dns.name.Name): + raise ValueError("origin parameter must be convertible to a " + "DNS name") + if not origin.is_absolute(): + raise ValueError("origin parameter must be an absolute name") + self.origin = origin + self.rdclass = rdclass + self.nodes = {} + self.relativize = relativize + + def __eq__(self, other): + """Two zones are equal if they have the same origin, class, and + nodes. + @rtype: bool + """ + + if not isinstance(other, Zone): + return False + if self.rdclass != other.rdclass or \ + self.origin != other.origin or \ + self.nodes != other.nodes: + return False + return True + + def __ne__(self, other): + """Are two zones not equal? + @rtype: bool + """ + + return not self.__eq__(other) + + def _validate_name(self, name): + if isinstance(name, string_types): + name = dns.name.from_text(name, None) + elif not isinstance(name, dns.name.Name): + raise KeyError("name parameter must be convertible to a DNS name") + if name.is_absolute(): + if not name.is_subdomain(self.origin): + raise KeyError( + "name parameter must be a subdomain of the zone origin") + if self.relativize: + name = name.relativize(self.origin) + return name + + def __getitem__(self, key): + key = self._validate_name(key) + return self.nodes[key] + + def __setitem__(self, key, value): + key = self._validate_name(key) + self.nodes[key] = value + + def __delitem__(self, key): + key = self._validate_name(key) + del self.nodes[key] + + def __iter__(self): + return self.nodes.__iter__() + + def iterkeys(self): + if PY3: + return self.nodes.keys() # pylint: disable=dict-keys-not-iterating + else: + return self.nodes.iterkeys() # pylint: disable=dict-iter-method + + def keys(self): + return self.nodes.keys() # pylint: disable=dict-keys-not-iterating + + def itervalues(self): + if PY3: + return self.nodes.values() # pylint: disable=dict-values-not-iterating + else: + return self.nodes.itervalues() # pylint: disable=dict-iter-method + + def values(self): + return self.nodes.values() # pylint: disable=dict-values-not-iterating + + def items(self): + return self.nodes.items() # pylint: disable=dict-items-not-iterating + + iteritems = items + + def get(self, key): + key = self._validate_name(key) + return self.nodes.get(key) + + def __contains__(self, other): + return other in self.nodes + + def find_node(self, name, create=False): + """Find a node in the zone, possibly creating it. + + @param name: the name of the node to find + @type name: dns.name.Name object or string + @param create: should the node be created if it doesn't exist? + @type create: bool + @raises KeyError: the name is not known and create was not specified. + @rtype: dns.node.Node object + """ + + name = self._validate_name(name) + node = self.nodes.get(name) + if node is None: + if not create: + raise KeyError + node = self.node_factory() + self.nodes[name] = node + return node + + def get_node(self, name, create=False): + """Get a node in the zone, possibly creating it. + + This method is like L{find_node}, except it returns None instead + of raising an exception if the node does not exist and creation + has not been requested. + + @param name: the name of the node to find + @type name: dns.name.Name object or string + @param create: should the node be created if it doesn't exist? + @type create: bool + @rtype: dns.node.Node object or None + """ + + try: + node = self.find_node(name, create) + except KeyError: + node = None + return node + + def delete_node(self, name): + """Delete the specified node if it exists. + + It is not an error if the node does not exist. + """ + + name = self._validate_name(name) + if name in self.nodes: + del self.nodes[name] + + def find_rdataset(self, name, rdtype, covers=dns.rdatatype.NONE, + create=False): + """Look for rdata with the specified name and type in the zone, + and return an rdataset encapsulating it. + + The I{name}, I{rdtype}, and I{covers} parameters may be + strings, in which case they will be converted to their proper + type. + + The rdataset returned is not a copy; changes to it will change + the zone. + + KeyError is raised if the name or type are not found. + Use L{get_rdataset} if you want to have None returned instead. + + @param name: the owner name to look for + @type name: DNS.name.Name object or string + @param rdtype: the rdata type desired + @type rdtype: int or string + @param covers: the covered type (defaults to None) + @type covers: int or string + @param create: should the node and rdataset be created if they do not + exist? + @type create: bool + @raises KeyError: the node or rdata could not be found + @rtype: dns.rdataset.Rdataset object + """ + + name = self._validate_name(name) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + if isinstance(covers, string_types): + covers = dns.rdatatype.from_text(covers) + node = self.find_node(name, create) + return node.find_rdataset(self.rdclass, rdtype, covers, create) + + def get_rdataset(self, name, rdtype, covers=dns.rdatatype.NONE, + create=False): + """Look for rdata with the specified name and type in the zone, + and return an rdataset encapsulating it. + + The I{name}, I{rdtype}, and I{covers} parameters may be + strings, in which case they will be converted to their proper + type. + + The rdataset returned is not a copy; changes to it will change + the zone. + + None is returned if the name or type are not found. + Use L{find_rdataset} if you want to have KeyError raised instead. + + @param name: the owner name to look for + @type name: DNS.name.Name object or string + @param rdtype: the rdata type desired + @type rdtype: int or string + @param covers: the covered type (defaults to None) + @type covers: int or string + @param create: should the node and rdataset be created if they do not + exist? + @type create: bool + @rtype: dns.rdataset.Rdataset object or None + """ + + try: + rdataset = self.find_rdataset(name, rdtype, covers, create) + except KeyError: + rdataset = None + return rdataset + + def delete_rdataset(self, name, rdtype, covers=dns.rdatatype.NONE): + """Delete the rdataset matching I{rdtype} and I{covers}, if it + exists at the node specified by I{name}. + + The I{name}, I{rdtype}, and I{covers} parameters may be + strings, in which case they will be converted to their proper + type. + + It is not an error if the node does not exist, or if there is no + matching rdataset at the node. + + If the node has no rdatasets after the deletion, it will itself + be deleted. + + @param name: the owner name to look for + @type name: DNS.name.Name object or string + @param rdtype: the rdata type desired + @type rdtype: int or string + @param covers: the covered type (defaults to None) + @type covers: int or string + """ + + name = self._validate_name(name) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + if isinstance(covers, string_types): + covers = dns.rdatatype.from_text(covers) + node = self.get_node(name) + if node is not None: + node.delete_rdataset(self.rdclass, rdtype, covers) + if len(node) == 0: + self.delete_node(name) + + def replace_rdataset(self, name, replacement): + """Replace an rdataset at name. + + It is not an error if there is no rdataset matching I{replacement}. + + Ownership of the I{replacement} object is transferred to the zone; + in other words, this method does not store a copy of I{replacement} + at the node, it stores I{replacement} itself. + + If the I{name} node does not exist, it is created. + + @param name: the owner name + @type name: DNS.name.Name object or string + @param replacement: the replacement rdataset + @type replacement: dns.rdataset.Rdataset + """ + + if replacement.rdclass != self.rdclass: + raise ValueError('replacement.rdclass != zone.rdclass') + node = self.find_node(name, True) + node.replace_rdataset(replacement) + + def find_rrset(self, name, rdtype, covers=dns.rdatatype.NONE): + """Look for rdata with the specified name and type in the zone, + and return an RRset encapsulating it. + + The I{name}, I{rdtype}, and I{covers} parameters may be + strings, in which case they will be converted to their proper + type. + + This method is less efficient than the similar + L{find_rdataset} because it creates an RRset instead of + returning the matching rdataset. It may be more convenient + for some uses since it returns an object which binds the owner + name to the rdata. + + This method may not be used to create new nodes or rdatasets; + use L{find_rdataset} instead. + + KeyError is raised if the name or type are not found. + Use L{get_rrset} if you want to have None returned instead. + + @param name: the owner name to look for + @type name: DNS.name.Name object or string + @param rdtype: the rdata type desired + @type rdtype: int or string + @param covers: the covered type (defaults to None) + @type covers: int or string + @raises KeyError: the node or rdata could not be found + @rtype: dns.rrset.RRset object + """ + + name = self._validate_name(name) + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + if isinstance(covers, string_types): + covers = dns.rdatatype.from_text(covers) + rdataset = self.nodes[name].find_rdataset(self.rdclass, rdtype, covers) + rrset = dns.rrset.RRset(name, self.rdclass, rdtype, covers) + rrset.update(rdataset) + return rrset + + def get_rrset(self, name, rdtype, covers=dns.rdatatype.NONE): + """Look for rdata with the specified name and type in the zone, + and return an RRset encapsulating it. + + The I{name}, I{rdtype}, and I{covers} parameters may be + strings, in which case they will be converted to their proper + type. + + This method is less efficient than the similar L{get_rdataset} + because it creates an RRset instead of returning the matching + rdataset. It may be more convenient for some uses since it + returns an object which binds the owner name to the rdata. + + This method may not be used to create new nodes or rdatasets; + use L{find_rdataset} instead. + + None is returned if the name or type are not found. + Use L{find_rrset} if you want to have KeyError raised instead. + + @param name: the owner name to look for + @type name: DNS.name.Name object or string + @param rdtype: the rdata type desired + @type rdtype: int or string + @param covers: the covered type (defaults to None) + @type covers: int or string + @rtype: dns.rrset.RRset object + """ + + try: + rrset = self.find_rrset(name, rdtype, covers) + except KeyError: + rrset = None + return rrset + + def iterate_rdatasets(self, rdtype=dns.rdatatype.ANY, + covers=dns.rdatatype.NONE): + """Return a generator which yields (name, rdataset) tuples for + all rdatasets in the zone which have the specified I{rdtype} + and I{covers}. If I{rdtype} is dns.rdatatype.ANY, the default, + then all rdatasets will be matched. + + @param rdtype: int or string + @type rdtype: int or string + @param covers: the covered type (defaults to None) + @type covers: int or string + """ + + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + if isinstance(covers, string_types): + covers = dns.rdatatype.from_text(covers) + for (name, node) in self.iteritems(): # pylint: disable=dict-iter-method + for rds in node: + if rdtype == dns.rdatatype.ANY or \ + (rds.rdtype == rdtype and rds.covers == covers): + yield (name, rds) + + def iterate_rdatas(self, rdtype=dns.rdatatype.ANY, + covers=dns.rdatatype.NONE): + """Return a generator which yields (name, ttl, rdata) tuples for + all rdatas in the zone which have the specified I{rdtype} + and I{covers}. If I{rdtype} is dns.rdatatype.ANY, the default, + then all rdatas will be matched. + + @param rdtype: int or string + @type rdtype: int or string + @param covers: the covered type (defaults to None) + @type covers: int or string + """ + + if isinstance(rdtype, string_types): + rdtype = dns.rdatatype.from_text(rdtype) + if isinstance(covers, string_types): + covers = dns.rdatatype.from_text(covers) + for (name, node) in self.iteritems(): # pylint: disable=dict-iter-method + for rds in node: + if rdtype == dns.rdatatype.ANY or \ + (rds.rdtype == rdtype and rds.covers == covers): + for rdata in rds: + yield (name, rds.ttl, rdata) + + def to_file(self, f, sorted=True, relativize=True, nl=None): + """Write a zone to a file. + + @param f: file or string. If I{f} is a string, it is treated + as the name of a file to open. + @param sorted: if True, the file will be written with the + names sorted in DNSSEC order from least to greatest. Otherwise + the names will be written in whatever order they happen to have + in the zone's dictionary. + @param relativize: if True, domain names in the output will be + relativized to the zone's origin (if possible). + @type relativize: bool + @param nl: The end of line string. If not specified, the + output will use the platform's native end-of-line marker (i.e. + LF on POSIX, CRLF on Windows, CR on Macintosh). + @type nl: string or None + """ + + if isinstance(f, string_types): + f = open(f, 'wb') + want_close = True + else: + want_close = False + + # must be in this way, f.encoding may contain None, or even attribute + # may not be there + file_enc = getattr(f, 'encoding', None) + if file_enc is None: + file_enc = 'utf-8' + + if nl is None: + nl_b = os.linesep.encode(file_enc) # binary mode, '\n' is not enough + nl = u'\n' + elif isinstance(nl, string_types): + nl_b = nl.encode(file_enc) + else: + nl_b = nl + nl = nl.decode() + + try: + if sorted: + names = list(self.keys()) + names.sort() + else: + names = self.iterkeys() # pylint: disable=dict-iter-method + for n in names: + l = self[n].to_text(n, origin=self.origin, + relativize=relativize) + if isinstance(l, text_type): + l_b = l.encode(file_enc) + else: + l_b = l + l = l.decode() + + try: + f.write(l_b) + f.write(nl_b) + except TypeError: # textual mode + f.write(l) + f.write(nl) + finally: + if want_close: + f.close() + + def to_text(self, sorted=True, relativize=True, nl=None): + """Return a zone's text as though it were written to a file. + + @param sorted: if True, the file will be written with the + names sorted in DNSSEC order from least to greatest. Otherwise + the names will be written in whatever order they happen to have + in the zone's dictionary. + @param relativize: if True, domain names in the output will be + relativized to the zone's origin (if possible). + @type relativize: bool + @param nl: The end of line string. If not specified, the + output will use the platform's native end-of-line marker (i.e. + LF on POSIX, CRLF on Windows, CR on Macintosh). + @type nl: string or None + """ + temp_buffer = BytesIO() + self.to_file(temp_buffer, sorted, relativize, nl) + return_value = temp_buffer.getvalue() + temp_buffer.close() + return return_value + + def check_origin(self): + """Do some simple checking of the zone's origin. + + @raises dns.zone.NoSOA: there is no SOA RR + @raises dns.zone.NoNS: there is no NS RRset + @raises KeyError: there is no origin node + """ + if self.relativize: + name = dns.name.empty + else: + name = self.origin + if self.get_rdataset(name, dns.rdatatype.SOA) is None: + raise NoSOA + if self.get_rdataset(name, dns.rdatatype.NS) is None: + raise NoNS + + +class _MasterReader(object): + + """Read a DNS master file + + @ivar tok: The tokenizer + @type tok: dns.tokenizer.Tokenizer object + @ivar last_ttl: The last seen explicit TTL for an RR + @type last_ttl: int + @ivar last_ttl_known: Has last TTL been detected + @type last_ttl_known: bool + @ivar default_ttl: The default TTL from a $TTL directive or SOA RR + @type default_ttl: int + @ivar default_ttl_known: Has default TTL been detected + @type default_ttl_known: bool + @ivar last_name: The last name read + @type last_name: dns.name.Name object + @ivar current_origin: The current origin + @type current_origin: dns.name.Name object + @ivar relativize: should names in the zone be relativized? + @type relativize: bool + @ivar zone: the zone + @type zone: dns.zone.Zone object + @ivar saved_state: saved reader state (used when processing $INCLUDE) + @type saved_state: list of (tokenizer, current_origin, last_name, file, + last_ttl, last_ttl_known, default_ttl, default_ttl_known) tuples. + @ivar current_file: the file object of the $INCLUDed file being parsed + (None if no $INCLUDE is active). + @ivar allow_include: is $INCLUDE allowed? + @type allow_include: bool + @ivar check_origin: should sanity checks of the origin node be done? + The default is True. + @type check_origin: bool + """ + + def __init__(self, tok, origin, rdclass, relativize, zone_factory=Zone, + allow_include=False, check_origin=True): + if isinstance(origin, string_types): + origin = dns.name.from_text(origin) + self.tok = tok + self.current_origin = origin + self.relativize = relativize + self.last_ttl = 0 + self.last_ttl_known = False + self.default_ttl = 0 + self.default_ttl_known = False + self.last_name = self.current_origin + self.zone = zone_factory(origin, rdclass, relativize=relativize) + self.saved_state = [] + self.current_file = None + self.allow_include = allow_include + self.check_origin = check_origin + + def _eat_line(self): + while 1: + token = self.tok.get() + if token.is_eol_or_eof(): + break + + def _rr_line(self): + """Process one line from a DNS master file.""" + # Name + if self.current_origin is None: + raise UnknownOrigin + token = self.tok.get(want_leading=True) + if not token.is_whitespace(): + self.last_name = dns.name.from_text( + token.value, self.current_origin) + else: + token = self.tok.get() + if token.is_eol_or_eof(): + # treat leading WS followed by EOL/EOF as if they were EOL/EOF. + return + self.tok.unget(token) + name = self.last_name + if not name.is_subdomain(self.zone.origin): + self._eat_line() + return + if self.relativize: + name = name.relativize(self.zone.origin) + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + # TTL + try: + ttl = dns.ttl.from_text(token.value) + self.last_ttl = ttl + self.last_ttl_known = True + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + except dns.ttl.BadTTL: + if not (self.last_ttl_known or self.default_ttl_known): + raise dns.exception.SyntaxError("Missing default TTL value") + if self.default_ttl_known: + ttl = self.default_ttl + else: + ttl = self.last_ttl + # Class + try: + rdclass = dns.rdataclass.from_text(token.value) + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + except dns.exception.SyntaxError: + raise dns.exception.SyntaxError + except Exception: + rdclass = self.zone.rdclass + if rdclass != self.zone.rdclass: + raise dns.exception.SyntaxError("RR class is not zone's class") + # Type + try: + rdtype = dns.rdatatype.from_text(token.value) + except: + raise dns.exception.SyntaxError( + "unknown rdatatype '%s'" % token.value) + n = self.zone.nodes.get(name) + if n is None: + n = self.zone.node_factory() + self.zone.nodes[name] = n + try: + rd = dns.rdata.from_text(rdclass, rdtype, self.tok, + self.current_origin, False) + except dns.exception.SyntaxError: + # Catch and reraise. + (ty, va) = sys.exc_info()[:2] + raise va + except: + # All exceptions that occur in the processing of rdata + # are treated as syntax errors. This is not strictly + # correct, but it is correct almost all of the time. + # We convert them to syntax errors so that we can emit + # helpful filename:line info. + (ty, va) = sys.exc_info()[:2] + raise dns.exception.SyntaxError( + "caught exception {}: {}".format(str(ty), str(va))) + + if not self.default_ttl_known and isinstance(rd, dns.rdtypes.ANY.SOA.SOA): + # The pre-RFC2308 and pre-BIND9 behavior inherits the zone default + # TTL from the SOA minttl if no $TTL statement is present before the + # SOA is parsed. + self.default_ttl = rd.minimum + self.default_ttl_known = True + + rd.choose_relativity(self.zone.origin, self.relativize) + covers = rd.covers() + rds = n.find_rdataset(rdclass, rdtype, covers, True) + rds.add(rd, ttl) + + def _parse_modify(self, side): + # Here we catch everything in '{' '}' in a group so we can replace it + # with ''. + is_generate1 = re.compile("^.*\$({(\+|-?)(\d+),(\d+),(.)}).*$") + is_generate2 = re.compile("^.*\$({(\+|-?)(\d+)}).*$") + is_generate3 = re.compile("^.*\$({(\+|-?)(\d+),(\d+)}).*$") + # Sometimes there are modifiers in the hostname. These come after + # the dollar sign. They are in the form: ${offset[,width[,base]]}. + # Make names + g1 = is_generate1.match(side) + if g1: + mod, sign, offset, width, base = g1.groups() + if sign == '': + sign = '+' + g2 = is_generate2.match(side) + if g2: + mod, sign, offset = g2.groups() + if sign == '': + sign = '+' + width = 0 + base = 'd' + g3 = is_generate3.match(side) + if g3: + mod, sign, offset, width = g1.groups() + if sign == '': + sign = '+' + width = g1.groups()[2] + base = 'd' + + if not (g1 or g2 or g3): + mod = '' + sign = '+' + offset = 0 + width = 0 + base = 'd' + + if base != 'd': + raise NotImplementedError() + + return mod, sign, offset, width, base + + def _generate_line(self): + # range lhs [ttl] [class] type rhs [ comment ] + """Process one line containing the GENERATE statement from a DNS + master file.""" + if self.current_origin is None: + raise UnknownOrigin + + token = self.tok.get() + # Range (required) + try: + start, stop, step = dns.grange.from_text(token.value) + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + except: + raise dns.exception.SyntaxError + + # lhs (required) + try: + lhs = token.value + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + except: + raise dns.exception.SyntaxError + + # TTL + try: + ttl = dns.ttl.from_text(token.value) + self.last_ttl = ttl + self.last_ttl_known = True + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + except dns.ttl.BadTTL: + if not (self.last_ttl_known or self.default_ttl_known): + raise dns.exception.SyntaxError("Missing default TTL value") + if self.default_ttl_known: + ttl = self.default_ttl + else: + ttl = self.last_ttl + # Class + try: + rdclass = dns.rdataclass.from_text(token.value) + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + except dns.exception.SyntaxError: + raise dns.exception.SyntaxError + except Exception: + rdclass = self.zone.rdclass + if rdclass != self.zone.rdclass: + raise dns.exception.SyntaxError("RR class is not zone's class") + # Type + try: + rdtype = dns.rdatatype.from_text(token.value) + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError + except Exception: + raise dns.exception.SyntaxError("unknown rdatatype '%s'" % + token.value) + + # lhs (required) + try: + rhs = token.value + except: + raise dns.exception.SyntaxError + + lmod, lsign, loffset, lwidth, lbase = self._parse_modify(lhs) + rmod, rsign, roffset, rwidth, rbase = self._parse_modify(rhs) + for i in range(start, stop + 1, step): + # +1 because bind is inclusive and python is exclusive + + if lsign == u'+': + lindex = i + int(loffset) + elif lsign == u'-': + lindex = i - int(loffset) + + if rsign == u'-': + rindex = i - int(roffset) + elif rsign == u'+': + rindex = i + int(roffset) + + lzfindex = str(lindex).zfill(int(lwidth)) + rzfindex = str(rindex).zfill(int(rwidth)) + + name = lhs.replace(u'$%s' % (lmod), lzfindex) + rdata = rhs.replace(u'$%s' % (rmod), rzfindex) + + self.last_name = dns.name.from_text(name, self.current_origin) + name = self.last_name + if not name.is_subdomain(self.zone.origin): + self._eat_line() + return + if self.relativize: + name = name.relativize(self.zone.origin) + + n = self.zone.nodes.get(name) + if n is None: + n = self.zone.node_factory() + self.zone.nodes[name] = n + try: + rd = dns.rdata.from_text(rdclass, rdtype, rdata, + self.current_origin, False) + except dns.exception.SyntaxError: + # Catch and reraise. + (ty, va) = sys.exc_info()[:2] + raise va + except: + # All exceptions that occur in the processing of rdata + # are treated as syntax errors. This is not strictly + # correct, but it is correct almost all of the time. + # We convert them to syntax errors so that we can emit + # helpful filename:line info. + (ty, va) = sys.exc_info()[:2] + raise dns.exception.SyntaxError("caught exception %s: %s" % + (str(ty), str(va))) + + rd.choose_relativity(self.zone.origin, self.relativize) + covers = rd.covers() + rds = n.find_rdataset(rdclass, rdtype, covers, True) + rds.add(rd, ttl) + + def read(self): + """Read a DNS master file and build a zone object. + + @raises dns.zone.NoSOA: No SOA RR was found at the zone origin + @raises dns.zone.NoNS: No NS RRset was found at the zone origin + """ + + try: + while 1: + token = self.tok.get(True, True) + if token.is_eof(): + if self.current_file is not None: + self.current_file.close() + if len(self.saved_state) > 0: + (self.tok, + self.current_origin, + self.last_name, + self.current_file, + self.last_ttl, + self.last_ttl_known, + self.default_ttl, + self.default_ttl_known) = self.saved_state.pop(-1) + continue + break + elif token.is_eol(): + continue + elif token.is_comment(): + self.tok.get_eol() + continue + elif token.value[0] == u'$': + c = token.value.upper() + if c == u'$TTL': + token = self.tok.get() + if not token.is_identifier(): + raise dns.exception.SyntaxError("bad $TTL") + self.default_ttl = dns.ttl.from_text(token.value) + self.default_ttl_known = True + self.tok.get_eol() + elif c == u'$ORIGIN': + self.current_origin = self.tok.get_name() + self.tok.get_eol() + if self.zone.origin is None: + self.zone.origin = self.current_origin + elif c == u'$INCLUDE' and self.allow_include: + token = self.tok.get() + filename = token.value + token = self.tok.get() + if token.is_identifier(): + new_origin =\ + dns.name.from_text(token.value, + self.current_origin) + self.tok.get_eol() + elif not token.is_eol_or_eof(): + raise dns.exception.SyntaxError( + "bad origin in $INCLUDE") + else: + new_origin = self.current_origin + self.saved_state.append((self.tok, + self.current_origin, + self.last_name, + self.current_file, + self.last_ttl, + self.last_ttl_known, + self.default_ttl, + self.default_ttl_known)) + self.current_file = open(filename, 'r') + self.tok = dns.tokenizer.Tokenizer(self.current_file, + filename) + self.current_origin = new_origin + elif c == u'$GENERATE': + self._generate_line() + else: + raise dns.exception.SyntaxError( + "Unknown master file directive '" + c + "'") + continue + self.tok.unget(token) + self._rr_line() + except dns.exception.SyntaxError as detail: + (filename, line_number) = self.tok.where() + if detail is None: + detail = "syntax error" + raise dns.exception.SyntaxError( + "%s:%d: %s" % (filename, line_number, detail)) + + # Now that we're done reading, do some basic checking of the zone. + if self.check_origin: + self.zone.check_origin() + + +def from_text(text, origin=None, rdclass=dns.rdataclass.IN, + relativize=True, zone_factory=Zone, filename=None, + allow_include=False, check_origin=True): + """Build a zone object from a master file format string. + + @param text: the master file format input + @type text: string. + @param origin: The origin of the zone; if not specified, the first + $ORIGIN statement in the master file will determine the origin of the + zone. + @type origin: dns.name.Name object or string + @param rdclass: The zone's rdata class; the default is class IN. + @type rdclass: int + @param relativize: should names be relativized? The default is True + @type relativize: bool + @param zone_factory: The zone factory to use + @type zone_factory: function returning a Zone + @param filename: The filename to emit when describing where an error + occurred; the default is ''. + @type filename: string + @param allow_include: is $INCLUDE allowed? + @type allow_include: bool + @param check_origin: should sanity checks of the origin node be done? + The default is True. + @type check_origin: bool + @raises dns.zone.NoSOA: No SOA RR was found at the zone origin + @raises dns.zone.NoNS: No NS RRset was found at the zone origin + @rtype: dns.zone.Zone object + """ + + # 'text' can also be a file, but we don't publish that fact + # since it's an implementation detail. The official file + # interface is from_file(). + + if filename is None: + filename = '' + tok = dns.tokenizer.Tokenizer(text, filename) + reader = _MasterReader(tok, origin, rdclass, relativize, zone_factory, + allow_include=allow_include, + check_origin=check_origin) + reader.read() + return reader.zone + + +def from_file(f, origin=None, rdclass=dns.rdataclass.IN, + relativize=True, zone_factory=Zone, filename=None, + allow_include=True, check_origin=True): + """Read a master file and build a zone object. + + @param f: file or string. If I{f} is a string, it is treated + as the name of a file to open. + @param origin: The origin of the zone; if not specified, the first + $ORIGIN statement in the master file will determine the origin of the + zone. + @type origin: dns.name.Name object or string + @param rdclass: The zone's rdata class; the default is class IN. + @type rdclass: int + @param relativize: should names be relativized? The default is True + @type relativize: bool + @param zone_factory: The zone factory to use + @type zone_factory: function returning a Zone + @param filename: The filename to emit when describing where an error + occurred; the default is '', or the value of I{f} if I{f} is a + string. + @type filename: string + @param allow_include: is $INCLUDE allowed? + @type allow_include: bool + @param check_origin: should sanity checks of the origin node be done? + The default is True. + @type check_origin: bool + @raises dns.zone.NoSOA: No SOA RR was found at the zone origin + @raises dns.zone.NoNS: No NS RRset was found at the zone origin + @rtype: dns.zone.Zone object + """ + + str_type = string_types + if PY3: + opts = 'r' + else: + opts = 'rU' + + if isinstance(f, str_type): + if filename is None: + filename = f + f = open(f, opts) + want_close = True + else: + if filename is None: + filename = '' + want_close = False + + try: + z = from_text(f, origin, rdclass, relativize, zone_factory, + filename, allow_include, check_origin) + finally: + if want_close: + f.close() + return z + + +def from_xfr(xfr, zone_factory=Zone, relativize=True, check_origin=True): + """Convert the output of a zone transfer generator into a zone object. + + @param xfr: The xfr generator + @type xfr: generator of dns.message.Message objects + @param relativize: should names be relativized? The default is True. + It is essential that the relativize setting matches the one specified + to dns.query.xfr(). + @type relativize: bool + @param check_origin: should sanity checks of the origin node be done? + The default is True. + @type check_origin: bool + @raises dns.zone.NoSOA: No SOA RR was found at the zone origin + @raises dns.zone.NoNS: No NS RRset was found at the zone origin + @rtype: dns.zone.Zone object + """ + + z = None + for r in xfr: + if z is None: + if relativize: + origin = r.origin + else: + origin = r.answer[0].name + rdclass = r.answer[0].rdclass + z = zone_factory(origin, rdclass, relativize=relativize) + for rrset in r.answer: + znode = z.nodes.get(rrset.name) + if not znode: + znode = z.node_factory() + z.nodes[rrset.name] = znode + zrds = znode.find_rdataset(rrset.rdclass, rrset.rdtype, + rrset.covers, True) + zrds.update_ttl(rrset.ttl) + for rd in rrset: + rd.choose_relativity(z.origin, relativize) + zrds.add(rd) + if check_origin: + z.check_origin() + return z diff --git a/openpype/version.py b/openpype/version.py index dedf799055..6d89c990ed 100644 --- a/openpype/version.py +++ b/openpype/version.py @@ -1,3 +1,3 @@ # -*- coding: utf-8 -*- """Package declaring Pype version.""" -__version__ = "3.0.0-beta2" +__version__ = "3.0.0-rc1" diff --git a/poetry.lock b/poetry.lock index 767aeee500..41a1f636ec 100644 --- a/poetry.lock +++ b/poetry.lock @@ -80,7 +80,7 @@ python-dateutil = ">=2.7.0" [[package]] name = "astroid" -version = "2.5.2" +version = "2.5.3" description = "An abstract syntax tree for Python with inference support." category = "dev" optional = false @@ -272,15 +272,24 @@ test = ["pytest (>=6.0)", "pytest-cov", "pytest-subtests", "pytest-xdist", "pret [[package]] name = "cx-freeze" -version = "6.5.3" +version = "6.6" description = "Create standalone executables from Python scripts" category = "dev" optional = false python-versions = ">=3.6" [package.dependencies] +cx-Logging = {version = ">=3.0", markers = "sys_platform == \"win32\""} importlib-metadata = ">=3.1.1" +[[package]] +name = "cx-logging" +version = "3.0" +description = "Python and C interfaces for logging" +category = "dev" +optional = false +python-versions = "*" + [[package]] name = "dnspython" version = "2.1.0" @@ -298,12 +307,24 @@ trio = ["trio (>=0.14.0)", "sniffio (>=1.1)"] [[package]] name = "docutils" -version = "0.17" +version = "0.16" description = "Docutils -- Python Documentation Utilities" category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +[[package]] +name = "enlighten" +version = "1.9.0" +description = "Enlighten Progress Bar" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +blessed = ">=1.17.7" +prefixed = ">=0.3.2" + [[package]] name = "evdev" version = "1.4.0" @@ -314,7 +335,7 @@ python-versions = "*" [[package]] name = "flake8" -version = "3.9.0" +version = "3.9.1" description = "the modular source code checker: pep8 pyflakes and co" category = "dev" optional = false @@ -392,7 +413,7 @@ uritemplate = ">=3.0.0,<4dev" [[package]] name = "google-auth" -version = "1.28.0" +version = "1.29.0" description = "Google Authentication Library" category = "main" optional = false @@ -407,6 +428,7 @@ six = ">=1.9.0" [package.extras] aiohttp = ["aiohttp (>=3.6.2,<4.0.0dev)"] pyopenssl = ["pyopenssl (>=20.0.0)"] +reauth = ["pyu2f (>=0.1.5)"] [[package]] name = "google-auth-httplib2" @@ -464,7 +486,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "importlib-metadata" -version = "3.10.0" +version = "4.0.0" description = "Read metadata from Python packages" category = "main" optional = false @@ -540,7 +562,7 @@ i18n = ["Babel (>=0.8)"] [[package]] name = "jinxed" -version = "1.0.1" +version = "1.1.0" description = "Jinxed Terminal Library" category = "main" optional = false @@ -704,9 +726,17 @@ importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""} [package.extras] dev = ["pre-commit", "tox"] +[[package]] +name = "prefixed" +version = "0.3.2" +description = "Prefixed alternative numeric library" +category = "main" +optional = false +python-versions = "*" + [[package]] name = "protobuf" -version = "3.15.7" +version = "3.15.8" description = "Protocol Buffers" category = "main" optional = false @@ -1120,7 +1150,7 @@ python-versions = "*" [[package]] name = "sphinx" -version = "3.5.3" +version = "3.5.4" description = "Python documentation generator" category = "dev" optional = false @@ -1130,7 +1160,7 @@ python-versions = ">=3.5" alabaster = ">=0.7,<0.8" babel = ">=1.3" colorama = {version = ">=0.3.5", markers = "sys_platform == \"win32\""} -docutils = ">=0.12" +docutils = ">=0.12,<0.17" imagesize = "*" Jinja2 = ">=2.3" packaging = "*" @@ -1163,13 +1193,14 @@ sphinx = "*" [[package]] name = "sphinx-rtd-theme" -version = "0.5.1" +version = "0.5.2" description = "Read the Docs theme for Sphinx" category = "dev" optional = false python-versions = "*" [package.dependencies] +docutils = "<0.17" sphinx = "*" [package.extras] @@ -1277,22 +1308,9 @@ category = "dev" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" -[[package]] -name = "tqdm" -version = "4.60.0" -description = "Fast, Extensible Progress Meter" -category = "dev" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7" - -[package.extras] -dev = ["py-make (>=0.1.0)", "twine", "wheel"] -notebook = ["ipywidgets (>=6)"] -telegram = ["requests"] - [[package]] name = "typed-ast" -version = "1.4.2" +version = "1.4.3" description = "a fork of Python 2 and 3 ast modules with type comment support" category = "dev" optional = false @@ -1399,7 +1417,7 @@ testing = ["pytest (>=4.6)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pyt [metadata] lock-version = "1.1" python-versions = "3.7.*" -content-hash = "a8c9915ce3096b74b9328a632911a759780844d368fa1d6d0fbd7c5d7d4536cf" +content-hash = "80fde42aade7fc90bb68d85f0d9b3feb27fc3744d72eb5af6a11b6c9d9836aca" [metadata.files] acre = [] @@ -1463,8 +1481,8 @@ arrow = [ {file = "arrow-0.17.0.tar.gz", hash = "sha256:ff08d10cda1d36c68657d6ad20d74fbea493d980f8b2d45344e00d6ed2bf6ed4"}, ] astroid = [ - {file = "astroid-2.5.2-py3-none-any.whl", hash = "sha256:cd80bf957c49765dce6d92c43163ff9d2abc43132ce64d4b1b47717c6d2522df"}, - {file = "astroid-2.5.2.tar.gz", hash = "sha256:6b0ed1af831570e500e2437625979eaa3b36011f66ddfc4ce930128610258ca9"}, + {file = "astroid-2.5.3-py3-none-any.whl", hash = "sha256:bea3f32799fbb8581f58431c12591bc20ce11cbc90ad82e2ea5717d94f2080d5"}, + {file = "astroid-2.5.3.tar.gz", hash = "sha256:ad63b8552c70939568966811a088ef0bc880f99a24a00834abd0e3681b514f91"}, ] async-timeout = [ {file = "async-timeout-3.0.1.tar.gz", hash = "sha256:0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f"}, @@ -1630,30 +1648,49 @@ cryptography = [ {file = "cryptography-3.4.7.tar.gz", hash = "sha256:3d10de8116d25649631977cb37da6cbdd2d6fa0e0281d014a5b7d337255ca713"}, ] cx-freeze = [ - {file = "cx_Freeze-6.5.3-cp36-cp36m-win32.whl", hash = "sha256:0a1babae574546b622303da53e1a9829aa3a7e53e62b41eb260250220f83164b"}, - {file = "cx_Freeze-6.5.3-cp36-cp36m-win_amd64.whl", hash = "sha256:2671e46cd491c181c632df3f0df2847bad7066897faa07eb1d50f60f5082596f"}, - {file = "cx_Freeze-6.5.3-cp37-cp37m-win32.whl", hash = "sha256:abf5f95f914573cdff5bd9845144977b875fc655417d0e66f935865af1de64d5"}, - {file = "cx_Freeze-6.5.3-cp37-cp37m-win_amd64.whl", hash = "sha256:65c4560bc7b18e2a7bbe3546313cbc01d3fca244d199b39508cfa2ae561887ce"}, - {file = "cx_Freeze-6.5.3-cp38-cp38-win32.whl", hash = "sha256:7e2592fe1b65bd45c729934b391579fde5aed6b4c9e3e4d990738fc7fec718ea"}, - {file = "cx_Freeze-6.5.3-cp38-cp38-win_amd64.whl", hash = "sha256:d3bb71349dace28e545eb1e4549255f0dd915f925f8505b1a342b3d2fbd4734b"}, - {file = "cx_Freeze-6.5.3-cp39-cp39-win32.whl", hash = "sha256:df3872d8e8f87a3f89e6758bed130b5b95ee7473054e2a7eee5b1a8d1c4ecf9e"}, - {file = "cx_Freeze-6.5.3-cp39-cp39-win_amd64.whl", hash = "sha256:507bbaace2fd27edb0e6b024898ab2e4831d45d7238264f578a5e4fa70f065e5"}, - {file = "cx_Freeze-6.5.3.tar.gz", hash = "sha256:e0d03cabcdf9b9c21354807ed9f06fa9481a8fd5a0838968a830f01a70820ff1"}, + {file = "cx_Freeze-6.6-cp36-cp36m-win32.whl", hash = "sha256:b3d3a6bcd1a07c50b4e1c907f14842642156110e63a99cd5c73b8a24751e9b97"}, + {file = "cx_Freeze-6.6-cp36-cp36m-win_amd64.whl", hash = "sha256:1935266ec644ea4f7e584985f44cefc0622a449a09980d990833a1a2afcadac8"}, + {file = "cx_Freeze-6.6-cp37-cp37m-win32.whl", hash = "sha256:1eac2b0f254319cc641ce25bd83337effd7936092562fde701f3ffb40e0274ec"}, + {file = "cx_Freeze-6.6-cp37-cp37m-win_amd64.whl", hash = "sha256:2bc46ef6d510811b6002f34a3ae4cbfdea44e18644febd2a404d3ee8e48a9fc4"}, + {file = "cx_Freeze-6.6-cp38-cp38-win32.whl", hash = "sha256:46eb50ebc46f7ae236d16c6a52671ab0f7bb479bea668da19f4b6de3cc413e9e"}, + {file = "cx_Freeze-6.6-cp38-cp38-win_amd64.whl", hash = "sha256:8c3b00476ce385bb58595bffce55aed031e5a6e16ab6e14d8bee9d1d569e46c3"}, + {file = "cx_Freeze-6.6-cp39-cp39-win32.whl", hash = "sha256:6e9340cbcf52d4836980ecc83ddba4f7704ff6654dd41168c146b74f512977ce"}, + {file = "cx_Freeze-6.6-cp39-cp39-win_amd64.whl", hash = "sha256:2fcf1c8b77ae5c06f45be3a9aff79e1dd808c0d624e97561f840dec5ea9b214a"}, + {file = "cx_Freeze-6.6.tar.gz", hash = "sha256:c4af8ad3f7e7d71e291c1dec5d0fb26bbe92df834b098ed35434c901fbd6762f"}, +] +cx-logging = [ + {file = "cx_Logging-3.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:9fcd297e5c51470521c47eff0f86ba844aeca6be97e13c3e2114ebdf03fa3c96"}, + {file = "cx_Logging-3.0-cp36-cp36m-win32.whl", hash = "sha256:0df4be47c5022cc54316949e283403214568ef599817ced0c0972183d6d4fabb"}, + {file = "cx_Logging-3.0-cp36-cp36m-win_amd64.whl", hash = "sha256:203ca92ee7c15d5dfe1fcdfcef7b39d0123eba5c6d8c2388b6e7db6b961a5362"}, + {file = "cx_Logging-3.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:20daa71b2a30f61d09bcf55dbda002c10f0c7c691f53cb393fc6485410fa2484"}, + {file = "cx_Logging-3.0-cp37-cp37m-win32.whl", hash = "sha256:5be5f905e8d34a3326e28d428674cdc2d57912fdf6e25b8676d63f76294eb4e0"}, + {file = "cx_Logging-3.0-cp37-cp37m-win_amd64.whl", hash = "sha256:04e4b61e2636dc8ae135937655af6626362aefc7f6175e86888a244b61001823"}, + {file = "cx_Logging-3.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:1bf0ebc79a7baa331c7deaf57088c234b82710286dfad453ff0c55eee0122b72"}, + {file = "cx_Logging-3.0-cp38-cp38-win32.whl", hash = "sha256:d98a59a47e99fa430b3f6d2a979e27509852d2c43e204f43bd0168e7ec97f469"}, + {file = "cx_Logging-3.0-cp38-cp38-win_amd64.whl", hash = "sha256:bb2e91019e5905415f795eef994de60ace5ae186fc4fe3d358e2d8feebb24992"}, + {file = "cx_Logging-3.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:b6f4a9b750e02a180517f779d174a1c7db651981cd37e5623235b87da9774dfd"}, + {file = "cx_Logging-3.0-cp39-cp39-win32.whl", hash = "sha256:e7cca28e8ee4082654b6062cc4d06f83d48f1a7e2d152bab020c9e3e373afb90"}, + {file = "cx_Logging-3.0-cp39-cp39-win_amd64.whl", hash = "sha256:302e9c4f65a936c288a4fa59a90e7e142d9ef994aa29676731acafdcccdbb3f5"}, + {file = "cx_Logging-3.0.tar.gz", hash = "sha256:ba8a7465facf7b98d8f494030fb481a2e8aeee29dc191e10383bb54ed42bdb34"}, ] dnspython = [ {file = "dnspython-2.1.0-py3-none-any.whl", hash = "sha256:95d12f6ef0317118d2a1a6fc49aac65ffec7eb8087474158f42f26a639135216"}, {file = "dnspython-2.1.0.zip", hash = "sha256:e4a87f0b573201a0f3727fa18a516b055fd1107e0e5477cded4a2de497df1dd4"}, ] docutils = [ - {file = "docutils-0.17-py2.py3-none-any.whl", hash = "sha256:a71042bb7207c03d5647f280427f14bfbd1a65c9eb84f4b341d85fafb6bb4bdf"}, - {file = "docutils-0.17.tar.gz", hash = "sha256:e2ffeea817964356ba4470efba7c2f42b6b0de0b04e66378507e3e2504bbff4c"}, + {file = "docutils-0.16-py2.py3-none-any.whl", hash = "sha256:0c5b78adfbf7762415433f5515cd5c9e762339e23369dbe8000d84a4bf4ab3af"}, + {file = "docutils-0.16.tar.gz", hash = "sha256:c2de3a60e9e7d07be26b7f2b00ca0309c207e06c100f9cc2a94931fc75a478fc"}, +] +enlighten = [ + {file = "enlighten-1.9.0-py2.py3-none-any.whl", hash = "sha256:5c59e41505702243c6b26437403e371d2a146ac72de5f706376f738ea8f32659"}, + {file = "enlighten-1.9.0.tar.gz", hash = "sha256:539cc308ccc0c3bfb50feb1b2da94c1a1ac21e80fe95e984221de8966d48f428"}, ] evdev = [ {file = "evdev-1.4.0.tar.gz", hash = "sha256:8782740eb1a86b187334c07feb5127d3faa0b236e113206dfe3ae8f77fb1aaf1"}, ] flake8 = [ - {file = "flake8-3.9.0-py2.py3-none-any.whl", hash = "sha256:12d05ab02614b6aee8df7c36b97d1a3b2372761222b19b58621355e82acddcff"}, - {file = "flake8-3.9.0.tar.gz", hash = "sha256:78873e372b12b093da7b5e5ed302e8ad9e988b38b063b61ad937f26ca58fc5f0"}, + {file = "flake8-3.9.1-py2.py3-none-any.whl", hash = "sha256:3b9f848952dddccf635be78098ca75010f073bfe14d2c6bda867154bea728d2a"}, + {file = "flake8-3.9.1.tar.gz", hash = "sha256:1aa8990be1e689d96c745c5682b687ea49f2e05a443aff1f8251092b0014e378"}, ] ftrack-python-api = [ {file = "ftrack-python-api-2.0.0.tar.gz", hash = "sha256:dd6f02c31daf5a10078196dc9eac4671e4297c762fbbf4df98de668ac12281d9"}, @@ -1671,8 +1708,8 @@ google-api-python-client = [ {file = "google_api_python_client-1.12.8-py2.py3-none-any.whl", hash = "sha256:3c4c4ca46b5c21196bec7ee93453443e477d82cbfa79234d1ce0645f81170eaf"}, ] google-auth = [ - {file = "google-auth-1.28.0.tar.gz", hash = "sha256:9bd436d19ab047001a1340720d2b629eb96dd503258c524921ec2af3ee88a80e"}, - {file = "google_auth-1.28.0-py2.py3-none-any.whl", hash = "sha256:dcaba3aa9d4e0e96fd945bf25a86b6f878fcb05770b67adbeb50a63ca4d28a5e"}, + {file = "google-auth-1.29.0.tar.gz", hash = "sha256:010f011c4e27d3d5eb01106fba6aac39d164842dfcd8709955c4638f5b11ccf8"}, + {file = "google_auth-1.29.0-py2.py3-none-any.whl", hash = "sha256:f30a672a64d91cc2e3137765d088c5deec26416246f7a9e956eaf69a8d7ed49c"}, ] google-auth-httplib2 = [ {file = "google-auth-httplib2-0.1.0.tar.gz", hash = "sha256:a07c39fd632becacd3f07718dfd6021bf396978f03ad3ce4321d060015cc30ac"}, @@ -1695,8 +1732,8 @@ imagesize = [ {file = "imagesize-1.2.0.tar.gz", hash = "sha256:b1f6b5a4eab1f73479a50fb79fcf729514a900c341d8503d62a62dbc4127a2b1"}, ] importlib-metadata = [ - {file = "importlib_metadata-3.10.0-py3-none-any.whl", hash = "sha256:d2d46ef77ffc85cbf7dac7e81dd663fde71c45326131bea8033b9bad42268ebe"}, - {file = "importlib_metadata-3.10.0.tar.gz", hash = "sha256:c9db46394197244adf2f0b08ec5bc3cf16757e9590b02af1fca085c16c0d600a"}, + {file = "importlib_metadata-4.0.0-py3-none-any.whl", hash = "sha256:19192b88d959336bfa6bdaaaef99aeafec179eca19c47c804e555703ee5f07ef"}, + {file = "importlib_metadata-4.0.0.tar.gz", hash = "sha256:2e881981c9748d7282b374b68e759c87745c25427b67ecf0cc67fb6637a1bff9"}, ] iniconfig = [ {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, @@ -1719,8 +1756,8 @@ jinja2 = [ {file = "Jinja2-2.11.3.tar.gz", hash = "sha256:a6d58433de0ae800347cab1fa3043cebbabe8baa9d29e668f1c768cb87a333c6"}, ] jinxed = [ - {file = "jinxed-1.0.1-py2.py3-none-any.whl", hash = "sha256:602f2cb3523c1045456f7b6d79ac19297fd8e933ae3bd9159845dc857f2d519c"}, - {file = "jinxed-1.0.1.tar.gz", hash = "sha256:bc523c74fe676c99ccc69c68c2dcd7d4d2d7b2541f6dbef74ef211aedd8ad0d3"}, + {file = "jinxed-1.1.0-py2.py3-none-any.whl", hash = "sha256:6a61ccf963c16aa885304f27e6e5693783676897cea0c7f223270c8b8e78baf8"}, + {file = "jinxed-1.1.0.tar.gz", hash = "sha256:d8f1731f134e9e6b04d95095845ae6c10eb15cb223a5f0cabdea87d4a279c305"}, ] jsonschema = [ {file = "jsonschema-3.2.0-py2.py3-none-any.whl", hash = "sha256:4e5b3cf8216f577bee9ce139cbe72eca3ea4f292ec60928ff24758ce626cd163"}, @@ -1906,27 +1943,31 @@ pluggy = [ {file = "pluggy-0.13.1-py2.py3-none-any.whl", hash = "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"}, {file = "pluggy-0.13.1.tar.gz", hash = "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"}, ] +prefixed = [ + {file = "prefixed-0.3.2-py2.py3-none-any.whl", hash = "sha256:5e107306462d63f2f03c529dbf11b0026fdfec621a9a008ca639d71de22995c3"}, + {file = "prefixed-0.3.2.tar.gz", hash = "sha256:ca48277ba5fa8346dd4b760847da930c7b84416387c39e93affef086add2c029"}, +] protobuf = [ - {file = "protobuf-3.15.7-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a14141d5c967362d2eedff8825d2b69cc36a5b3ed6b1f618557a04e58a3cf787"}, - {file = "protobuf-3.15.7-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:d54d78f621852ec4fdd1484d1263ca04d4bf5ffdf7abffdbb939e444b6ff3385"}, - {file = "protobuf-3.15.7-cp35-cp35m-macosx_10_9_intel.whl", hash = "sha256:462085acdb410b06335315fe7e63cb281a1902856e0f4657f341c283cedc1d56"}, - {file = "protobuf-3.15.7-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:849c92ce112e1ef648705c29ce044248e350f71d9d54a2026830623198f0bd38"}, - {file = "protobuf-3.15.7-cp35-cp35m-win32.whl", hash = "sha256:1f6083382f7714700deadf3014e921711e2f807de7f27e40c32b744701ae5b99"}, - {file = "protobuf-3.15.7-cp35-cp35m-win_amd64.whl", hash = "sha256:e17f60f00081adcb32068ee0bb51e418f6474acf83424244ff3512ffd2166385"}, - {file = "protobuf-3.15.7-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:6c75e563c6fb2ca5b8f21dd75c15659aa2c4a0025b9da3a7711ae661cd6a488d"}, - {file = "protobuf-3.15.7-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:d939f41b4108350841c4790ebbadb61729e1363522fdb8434eb4e6f2065d0db1"}, - {file = "protobuf-3.15.7-cp36-cp36m-win32.whl", hash = "sha256:24f14c09d4c0a3641f1b0e9b552d026361de65b01686fdd3e5fdf8f9512cd79b"}, - {file = "protobuf-3.15.7-cp36-cp36m-win_amd64.whl", hash = "sha256:1247170191bcb2a8d978d11a58afe391004ec6c2184e4d961baf8102d43ff500"}, - {file = "protobuf-3.15.7-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:364cadaeec0756afdc099cbd88cb5659bd1bb7d547168d063abcb0272ccbb2f6"}, - {file = "protobuf-3.15.7-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:0c3a6941b1e6e6e22d812a8e5c46bfe83082ea60d262a46f2cfb22d9b9fb17db"}, - {file = "protobuf-3.15.7-cp37-cp37m-win32.whl", hash = "sha256:eb5668f3f6a83b6603ca2e09be5b20de89521ea5914aabe032cce981e4129cc8"}, - {file = "protobuf-3.15.7-cp37-cp37m-win_amd64.whl", hash = "sha256:1001e671cf8476edce7fb72778358d026390649cc35a79d47b2a291684ccfbb2"}, - {file = "protobuf-3.15.7-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a5ba7dd6f97964655aa7b234c95d80886425a31b7010764f042cdeb985314d18"}, - {file = "protobuf-3.15.7-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:46674bd6fcf8c63b4b9869ba579685db67cf51ae966443dd6bd9a8fa00fcef62"}, - {file = "protobuf-3.15.7-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4c4399156fb27e3768313b7a59352c861a893252bda6fb9f3643beb3ebb7047e"}, - {file = "protobuf-3.15.7-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:85cd29faf056036167d87445d5a5059034c298881c044e71a73d3b61a4be1c23"}, - {file = "protobuf-3.15.7-py2.py3-none-any.whl", hash = "sha256:22054432b923c0086f9cf1e1c0c52d39bf3c6e31014ea42eec2dabc22ee26d78"}, - {file = "protobuf-3.15.7.tar.gz", hash = "sha256:2d03fc2591543cd2456d0b72230b50c4519546a8d379ac6fd3ecd84c6df61e5d"}, + {file = "protobuf-3.15.8-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:fad4f971ec38d8df7f4b632c819bf9bbf4f57cfd7312cf526c69ce17ef32436a"}, + {file = "protobuf-3.15.8-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:f17b352d7ce33c81773cf81d536ca70849de6f73c96413f17309f4b43ae7040b"}, + {file = "protobuf-3.15.8-cp35-cp35m-macosx_10_9_intel.whl", hash = "sha256:4a054b0b5900b7ea7014099e783fb8c4618e4209fffcd6050857517b3f156e18"}, + {file = "protobuf-3.15.8-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:efa4c4d4fc9ba734e5e85eaced70e1b63fb3c8d08482d839eb838566346f1737"}, + {file = "protobuf-3.15.8-cp35-cp35m-win32.whl", hash = "sha256:07eec4e2ccbc74e95bb9b3afe7da67957947ee95bdac2b2e91b038b832dd71f0"}, + {file = "protobuf-3.15.8-cp35-cp35m-win_amd64.whl", hash = "sha256:f9cadaaa4065d5dd4d15245c3b68b967b3652a3108e77f292b58b8c35114b56c"}, + {file = "protobuf-3.15.8-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:2dc0e8a9e4962207bdc46a365b63a3f1aca6f9681a5082a326c5837ef8f4b745"}, + {file = "protobuf-3.15.8-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:f80afc0a0ba13339bbab25ca0409e9e2836b12bb012364c06e97c2df250c3343"}, + {file = "protobuf-3.15.8-cp36-cp36m-win32.whl", hash = "sha256:c5566f956a26cda3abdfacc0ca2e21db6c9f3d18f47d8d4751f2209d6c1a5297"}, + {file = "protobuf-3.15.8-cp36-cp36m-win_amd64.whl", hash = "sha256:dab75b56a12b1ceb3e40808b5bd9dfdaef3a1330251956e6744e5b6ed8f8830b"}, + {file = "protobuf-3.15.8-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3053f13207e7f13dc7be5e9071b59b02020172f09f648e85dc77e3fcb50d1044"}, + {file = "protobuf-3.15.8-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:1f0b5d156c3df08cc54bc2c8b8b875648ea4cd7ebb2a9a130669f7547ec3488c"}, + {file = "protobuf-3.15.8-cp37-cp37m-win32.whl", hash = "sha256:90270fe5732c1f1ff664a3bd7123a16456d69b4e66a09a139a00443a32f210b8"}, + {file = "protobuf-3.15.8-cp37-cp37m-win_amd64.whl", hash = "sha256:f42c2f5fb67da5905bfc03733a311f72fa309252bcd77c32d1462a1ad519521e"}, + {file = "protobuf-3.15.8-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f6077db37bfa16494dca58a4a02bfdacd87662247ad6bc1f7f8d13ff3f0013e1"}, + {file = "protobuf-3.15.8-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:510e66491f1a5ac5953c908aa8300ec47f793130097e4557482803b187a8ee05"}, + {file = "protobuf-3.15.8-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5ff9fa0e67fcab442af9bc8d4ec3f82cb2ff3be0af62dba047ed4187f0088b7d"}, + {file = "protobuf-3.15.8-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:1c0e9e56202b9dccbc094353285a252e2b7940b74fdf75f1b4e1b137833fabd7"}, + {file = "protobuf-3.15.8-py2.py3-none-any.whl", hash = "sha256:a0a08c6b2e6d6c74a6eb5bf6184968eefb1569279e78714e239d33126e753403"}, + {file = "protobuf-3.15.8.tar.gz", hash = "sha256:0277f62b1e42210cafe79a71628c1d553348da81cbd553402a7f7549c50b11d0"}, ] py = [ {file = "py-1.10.0-py2.py3-none-any.whl", hash = "sha256:3b80836aa6d1feeaa108e046da6423ab8f6ceda6468545ae8d02d9d58d18818a"}, @@ -2208,16 +2249,16 @@ speedcopy = [ {file = "speedcopy-2.1.0.tar.gz", hash = "sha256:8bb1a6c735900b83901a7be84ba2175ed3887c13c6786f97dea48f2ea7d504c2"}, ] sphinx = [ - {file = "Sphinx-3.5.3-py3-none-any.whl", hash = "sha256:3f01732296465648da43dec8fb40dc451ba79eb3e2cc5c6d79005fd98197107d"}, - {file = "Sphinx-3.5.3.tar.gz", hash = "sha256:ce9c228456131bab09a3d7d10ae58474de562a6f79abb3dc811ae401cf8c1abc"}, + {file = "Sphinx-3.5.4-py3-none-any.whl", hash = "sha256:2320d4e994a191f4b4be27da514e46b3d6b420f2ff895d064f52415d342461e8"}, + {file = "Sphinx-3.5.4.tar.gz", hash = "sha256:19010b7b9fa0dc7756a6e105b2aacd3a80f798af3c25c273be64d7beeb482cb1"}, ] sphinx-qt-documentation = [ {file = "sphinx_qt_documentation-0.3-py3-none-any.whl", hash = "sha256:bee247cb9e4fc03fc496d07adfdb943100e1103320c3e5e820e0cfa7c790d9b6"}, {file = "sphinx_qt_documentation-0.3.tar.gz", hash = "sha256:f09a0c9d9e989172ba3e282b92bf55613bb23ad47315ec5b0d38536b343ac6c8"}, ] sphinx-rtd-theme = [ - {file = "sphinx_rtd_theme-0.5.1-py2.py3-none-any.whl", hash = "sha256:fa6bebd5ab9a73da8e102509a86f3fcc36dec04a0b52ea80e5a033b2aba00113"}, - {file = "sphinx_rtd_theme-0.5.1.tar.gz", hash = "sha256:eda689eda0c7301a80cf122dad28b1861e5605cbf455558f3775e1e8200e83a5"}, + {file = "sphinx_rtd_theme-0.5.2-py2.py3-none-any.whl", hash = "sha256:4a05bdbe8b1446d77a01e20a23ebc6777c74f43237035e76be89699308987d6f"}, + {file = "sphinx_rtd_theme-0.5.2.tar.gz", hash = "sha256:32bd3b5d13dc8186d7a42fc816a23d32e83a4827d7d9882948e7b837c232da5a"}, ] sphinxcontrib-applehelp = [ {file = "sphinxcontrib-applehelp-1.0.2.tar.gz", hash = "sha256:a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58"}, @@ -2254,41 +2295,37 @@ toml = [ {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, ] -tqdm = [ - {file = "tqdm-4.60.0-py2.py3-none-any.whl", hash = "sha256:daec693491c52e9498632dfbe9ccfc4882a557f5fa08982db1b4d3adbe0887c3"}, - {file = "tqdm-4.60.0.tar.gz", hash = "sha256:ebdebdb95e3477ceea267decfc0784859aa3df3e27e22d23b83e9b272bf157ae"}, -] typed-ast = [ - {file = "typed_ast-1.4.2-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:7703620125e4fb79b64aa52427ec192822e9f45d37d4b6625ab37ef403e1df70"}, - {file = "typed_ast-1.4.2-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:c9aadc4924d4b5799112837b226160428524a9a45f830e0d0f184b19e4090487"}, - {file = "typed_ast-1.4.2-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:9ec45db0c766f196ae629e509f059ff05fc3148f9ffd28f3cfe75d4afb485412"}, - {file = "typed_ast-1.4.2-cp35-cp35m-win32.whl", hash = "sha256:85f95aa97a35bdb2f2f7d10ec5bbdac0aeb9dafdaf88e17492da0504de2e6400"}, - {file = "typed_ast-1.4.2-cp35-cp35m-win_amd64.whl", hash = "sha256:9044ef2df88d7f33692ae3f18d3be63dec69c4fb1b5a4a9ac950f9b4ba571606"}, - {file = "typed_ast-1.4.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:c1c876fd795b36126f773db9cbb393f19808edd2637e00fd6caba0e25f2c7b64"}, - {file = "typed_ast-1.4.2-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:5dcfc2e264bd8a1db8b11a892bd1647154ce03eeba94b461effe68790d8b8e07"}, - {file = "typed_ast-1.4.2-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:8db0e856712f79c45956da0c9a40ca4246abc3485ae0d7ecc86a20f5e4c09abc"}, - {file = "typed_ast-1.4.2-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:d003156bb6a59cda9050e983441b7fa2487f7800d76bdc065566b7d728b4581a"}, - {file = "typed_ast-1.4.2-cp36-cp36m-win32.whl", hash = "sha256:4c790331247081ea7c632a76d5b2a265e6d325ecd3179d06e9cf8d46d90dd151"}, - {file = "typed_ast-1.4.2-cp36-cp36m-win_amd64.whl", hash = "sha256:d175297e9533d8d37437abc14e8a83cbc68af93cc9c1c59c2c292ec59a0697a3"}, - {file = "typed_ast-1.4.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:cf54cfa843f297991b7388c281cb3855d911137223c6b6d2dd82a47ae5125a41"}, - {file = "typed_ast-1.4.2-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:b4fcdcfa302538f70929eb7b392f536a237cbe2ed9cba88e3bf5027b39f5f77f"}, - {file = "typed_ast-1.4.2-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:987f15737aba2ab5f3928c617ccf1ce412e2e321c77ab16ca5a293e7bbffd581"}, - {file = "typed_ast-1.4.2-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:37f48d46d733d57cc70fd5f30572d11ab8ed92da6e6b28e024e4a3edfb456e37"}, - {file = "typed_ast-1.4.2-cp37-cp37m-win32.whl", hash = "sha256:36d829b31ab67d6fcb30e185ec996e1f72b892255a745d3a82138c97d21ed1cd"}, - {file = "typed_ast-1.4.2-cp37-cp37m-win_amd64.whl", hash = "sha256:8368f83e93c7156ccd40e49a783a6a6850ca25b556c0fa0240ed0f659d2fe496"}, - {file = "typed_ast-1.4.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:963c80b583b0661918718b095e02303d8078950b26cc00b5e5ea9ababe0de1fc"}, - {file = "typed_ast-1.4.2-cp38-cp38-manylinux1_i686.whl", hash = "sha256:e683e409e5c45d5c9082dc1daf13f6374300806240719f95dc783d1fc942af10"}, - {file = "typed_ast-1.4.2-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:84aa6223d71012c68d577c83f4e7db50d11d6b1399a9c779046d75e24bed74ea"}, - {file = "typed_ast-1.4.2-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:a38878a223bdd37c9709d07cd357bb79f4c760b29210e14ad0fb395294583787"}, - {file = "typed_ast-1.4.2-cp38-cp38-win32.whl", hash = "sha256:a2c927c49f2029291fbabd673d51a2180038f8cd5a5b2f290f78c4516be48be2"}, - {file = "typed_ast-1.4.2-cp38-cp38-win_amd64.whl", hash = "sha256:c0c74e5579af4b977c8b932f40a5464764b2f86681327410aa028a22d2f54937"}, - {file = "typed_ast-1.4.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:07d49388d5bf7e863f7fa2f124b1b1d89d8aa0e2f7812faff0a5658c01c59aa1"}, - {file = "typed_ast-1.4.2-cp39-cp39-manylinux1_i686.whl", hash = "sha256:240296b27397e4e37874abb1df2a608a92df85cf3e2a04d0d4d61055c8305ba6"}, - {file = "typed_ast-1.4.2-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:d746a437cdbca200622385305aedd9aef68e8a645e385cc483bdc5e488f07166"}, - {file = "typed_ast-1.4.2-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:14bf1522cdee369e8f5581238edac09150c765ec1cb33615855889cf33dcb92d"}, - {file = "typed_ast-1.4.2-cp39-cp39-win32.whl", hash = "sha256:cc7b98bf58167b7f2db91a4327da24fb93368838eb84a44c472283778fc2446b"}, - {file = "typed_ast-1.4.2-cp39-cp39-win_amd64.whl", hash = "sha256:7147e2a76c75f0f64c4319886e7639e490fee87c9d25cb1d4faef1d8cf83a440"}, - {file = "typed_ast-1.4.2.tar.gz", hash = "sha256:9fc0b3cb5d1720e7141d103cf4819aea239f7d136acf9ee4a69b047b7986175a"}, + {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:2068531575a125b87a41802130fa7e29f26c09a2833fea68d9a40cf33902eba6"}, + {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:c907f561b1e83e93fad565bac5ba9c22d96a54e7ea0267c708bffe863cbe4075"}, + {file = "typed_ast-1.4.3-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:1b3ead4a96c9101bef08f9f7d1217c096f31667617b58de957f690c92378b528"}, + {file = "typed_ast-1.4.3-cp35-cp35m-win32.whl", hash = "sha256:dde816ca9dac1d9c01dd504ea5967821606f02e510438120091b84e852367428"}, + {file = "typed_ast-1.4.3-cp35-cp35m-win_amd64.whl", hash = "sha256:777a26c84bea6cd934422ac2e3b78863a37017618b6e5c08f92ef69853e765d3"}, + {file = "typed_ast-1.4.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f8afcf15cc511ada719a88e013cec87c11aff7b91f019295eb4530f96fe5ef2f"}, + {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:52b1eb8c83f178ab787f3a4283f68258525f8d70f778a2f6dd54d3b5e5fb4341"}, + {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:01ae5f73431d21eead5015997ab41afa53aa1fbe252f9da060be5dad2c730ace"}, + {file = "typed_ast-1.4.3-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:c190f0899e9f9f8b6b7863debfb739abcb21a5c054f911ca3596d12b8a4c4c7f"}, + {file = "typed_ast-1.4.3-cp36-cp36m-win32.whl", hash = "sha256:398e44cd480f4d2b7ee8d98385ca104e35c81525dd98c519acff1b79bdaac363"}, + {file = "typed_ast-1.4.3-cp36-cp36m-win_amd64.whl", hash = "sha256:bff6ad71c81b3bba8fa35f0f1921fb24ff4476235a6e94a26ada2e54370e6da7"}, + {file = "typed_ast-1.4.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0fb71b8c643187d7492c1f8352f2c15b4c4af3f6338f21681d3681b3dc31a266"}, + {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:760ad187b1041a154f0e4d0f6aae3e40fdb51d6de16e5c99aedadd9246450e9e"}, + {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:5feca99c17af94057417d744607b82dd0a664fd5e4ca98061480fd8b14b18d04"}, + {file = "typed_ast-1.4.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:95431a26309a21874005845c21118c83991c63ea800dd44843e42a916aec5899"}, + {file = "typed_ast-1.4.3-cp37-cp37m-win32.whl", hash = "sha256:aee0c1256be6c07bd3e1263ff920c325b59849dc95392a05f258bb9b259cf39c"}, + {file = "typed_ast-1.4.3-cp37-cp37m-win_amd64.whl", hash = "sha256:9ad2c92ec681e02baf81fdfa056fe0d818645efa9af1f1cd5fd6f1bd2bdfd805"}, + {file = "typed_ast-1.4.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b36b4f3920103a25e1d5d024d155c504080959582b928e91cb608a65c3a49e1a"}, + {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_i686.whl", hash = "sha256:067a74454df670dcaa4e59349a2e5c81e567d8d65458d480a5b3dfecec08c5ff"}, + {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7538e495704e2ccda9b234b82423a4038f324f3a10c43bc088a1636180f11a41"}, + {file = "typed_ast-1.4.3-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:af3d4a73793725138d6b334d9d247ce7e5f084d96284ed23f22ee626a7b88e39"}, + {file = "typed_ast-1.4.3-cp38-cp38-win32.whl", hash = "sha256:f2362f3cb0f3172c42938946dbc5b7843c2a28aec307c49100c8b38764eb6927"}, + {file = "typed_ast-1.4.3-cp38-cp38-win_amd64.whl", hash = "sha256:dd4a21253f42b8d2b48410cb31fe501d32f8b9fbeb1f55063ad102fe9c425e40"}, + {file = "typed_ast-1.4.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f328adcfebed9f11301eaedfa48e15bdece9b519fb27e6a8c01aa52a17ec31b3"}, + {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_i686.whl", hash = "sha256:2c726c276d09fc5c414693a2de063f521052d9ea7c240ce553316f70656c84d4"}, + {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:cae53c389825d3b46fb37538441f75d6aecc4174f615d048321b716df2757fb0"}, + {file = "typed_ast-1.4.3-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:b9574c6f03f685070d859e75c7f9eeca02d6933273b5e69572e5ff9d5e3931c3"}, + {file = "typed_ast-1.4.3-cp39-cp39-win32.whl", hash = "sha256:209596a4ec71d990d71d5e0d312ac935d86930e6eecff6ccc7007fe54d703808"}, + {file = "typed_ast-1.4.3-cp39-cp39-win_amd64.whl", hash = "sha256:9c6d1a54552b5330bc657b7ef0eae25d00ba7ffe85d9ea8ae6540d2197a3788c"}, + {file = "typed_ast-1.4.3.tar.gz", hash = "sha256:fb1bbeac803adea29cedd70781399c99138358c26d05fcbd23c13016b7f5ec65"}, ] typing-extensions = [ {file = "typing_extensions-3.7.4.3-py2-none-any.whl", hash = "sha256:dafc7639cde7f1b6e1acc0f457842a83e722ccca8eef5270af2d74792619a89f"}, diff --git a/pyproject.toml b/pyproject.toml index c8c0d5b4ff..45da304433 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [tool.poetry] name = "OpenPype" -version = "3.0.0-beta2" -description = "Multi-platform open-source pipeline built around the Avalon platform, expanding it with extra features and integrations." +version = "3.0.0-rc1" +description = "Open VFX and Animation pipeline with support." authors = ["OpenPype Team "] license = "MIT License" homepage = "https://openpype.io" @@ -43,12 +43,13 @@ jinxed = [ { version = "^1.0.1", markers = "sys_platform == 'linux'" } ] python3-xlib = { version="*", markers = "sys_platform == 'linux'"} +enlighten = "^1.9.0" [tool.poetry.dev-dependencies] flake8 = "^3.7" autopep8 = "^1.4" coverage = "*" -cx_freeze = "^6.5" +cx_freeze = "^6.6" jedi = "^0.13" Jinja2 = "^2.11" pycodestyle = "^2.5.0" @@ -62,8 +63,8 @@ sphinx-rtd-theme = "*" sphinxcontrib-websupport = "*" sphinx-qt-documentation = "*" recommonmark = "*" -tqdm = "*" wheel = "*" +enlighten = "*" # cool terminal progress bars [tool.poetry.urls] "Bug Tracker" = "https://github.com/pypeclub/openpype/issues" @@ -76,3 +77,29 @@ url = "https://distribute.openpype.io/wheels/" [build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api" + +[openpype] + +[openpype.thirdparty.ffmpeg.windows] +url = "https://distribute.openpype.io/thirdparty/ffmpeg-4.4-windows.zip" +hash = "dd51ba29d64ee238e7c4c3c7301b19754c3f0ee2e2a729c20a0e2789e72db925" + +[openpype.thirdparty.ffmpeg.linux] +url = "https://distribute.openpype.io/thirdparty/ffmpeg-4.4-linux.tgz" +hash = "10b9beda57cfbb69b9ed0ce896c0c8d99227b26ca8b9f611040c4752e365cbe9" + +[openpype.thirdparty.ffmpeg.darwin] +url = "https://distribute.openpype.io/thirdparty/ffmpeg-4.4-macos.tgz" +hash = "95f43568338c275f80dc0cab1e1836a2e2270f856f0e7b204440d881dd74fbdb" + +[openpype.thirdparty.oiio.windows] +url = "https://distribute.openpype.io/thirdparty/oiio_tools-2.2.0-windows.zip" +hash = "fd2e00278e01e85dcee7b4a6969d1a16f13016ec16700fb0366dbb1b1f3c37ad" + +[openpype.thirdparty.oiio.linux] +url = "https://distribute.openpype.io/thirdparty/oiio-2.2.0-linux.tgz" +hash = "sha256:..." + +[openpype.thirdparty.oiio.darwin] +url = "https://distribute.openpype.io/thirdparty/oiio-2.2.0-darwin.tgz" +hash = "sha256:..." \ No newline at end of file diff --git a/repos/avalon-core b/repos/avalon-core index 911bd8999a..cfd4191e36 160000 --- a/repos/avalon-core +++ b/repos/avalon-core @@ -1 +1 @@ -Subproject commit 911bd8999ab0030d0f7412dde6fd545c1a73b62d +Subproject commit cfd4191e364b47de7364096f45d9d9d9a901692a diff --git a/setup.py b/setup.py index fd589e5251..c096befa34 100644 --- a/setup.py +++ b/setup.py @@ -45,7 +45,8 @@ install_requires = [ "googleapiclient", "httplib2", # Harmony implementation - "filecmp" + "filecmp", + "dns" ] includes = [] @@ -69,7 +70,11 @@ if sys.platform == "win32": "pythoncom" ]) -build_options = dict( + +icon_path = openpype_root / "igniter" / "openpype.ico" +mac_icon_path = openpype_root / "igniter" / "openpype.icns" + +build_exe_options = dict( packages=install_requires, includes=includes, excludes=excludes, @@ -78,13 +83,16 @@ build_options = dict( optimize=0 ) -icon_path = openpype_root / "igniter" / "openpype.ico" +bdist_mac_options = dict( + bundle_name="OpenPype", + iconfile=mac_icon_path +) executables = [ - Executable("start.py", base=None, - target_name="openpype_console", icon=icon_path.as_posix()), Executable("start.py", base=base, - target_name="openpype_gui", icon=icon_path.as_posix()) + target_name="openpype_gui", icon=icon_path.as_posix()), + Executable("start.py", base=None, + target_name="openpype_console", icon=icon_path.as_posix()) ] setup( @@ -93,7 +101,8 @@ setup( description="Ultimate pipeline", cmdclass={"build_sphinx": BuildDoc}, options={ - "build_exe": build_options, + "build_exe": build_exe_options, + "bdist_mac": bdist_mac_options, "build_sphinx": { "project": "OpenPype", "version": __version__, diff --git a/start.py b/start.py index a892d3de8e..c24e20f63f 100644 --- a/start.py +++ b/start.py @@ -100,11 +100,22 @@ import subprocess import site from pathlib import Path -# add dependencies folder to sys.pat for frozen code -if getattr(sys, 'frozen', False): +# OPENPYPE_ROOT is variable pointing to build (or code) directory +# WARNING `OPENPYPE_ROOT` must be defined before igniter import +# - igniter changes cwd which cause that filepath of this script won't lead +# to right directory +if not getattr(sys, 'frozen', False): + # Code root defined by `start.py` directory + OPENPYPE_ROOT = os.path.dirname(os.path.abspath(__file__)) +else: + OPENPYPE_ROOT = os.path.dirname(sys.executable) + + # add dependencies folder to sys.pat for frozen code frozen_libs = os.path.normpath( - os.path.join(os.path.dirname(sys.executable), "dependencies")) + os.path.join(OPENPYPE_ROOT, "dependencies") + ) sys.path.append(frozen_libs) + sys.path.insert(0, OPENPYPE_ROOT) # add stuff from `/dependencies` to PYTHONPATH. pythonpath = os.getenv("PYTHONPATH", "") paths = pythonpath.split(os.pathsep) @@ -113,7 +124,10 @@ if getattr(sys, 'frozen', False): import igniter # noqa: E402 from igniter import BootstrapRepos # noqa: E402 -from igniter.tools import get_openpype_path_from_db # noqa +from igniter.tools import ( + get_openpype_path_from_db, + validate_mongo_connection +) # noqa from igniter.bootstrap_repos import OpenPypeVersion # noqa: E402 bootstrap = BootstrapRepos() @@ -275,6 +289,10 @@ def _process_arguments() -> tuple: if return_code not in [2, 3]: sys.exit(return_code) + idx = sys.argv.index("igniter") + sys.argv.pop(idx) + sys.argv.insert(idx, "tray") + return use_version, use_staging @@ -297,18 +315,32 @@ def _determine_mongodb() -> str: # try system keyring try: openpype_mongo = bootstrap.secure_registry.get_item( - "openPypeMongo") + "openPypeMongo" + ) except ValueError: - print("*** No DB connection string specified.") - print("--- launching setup UI ...") - import igniter - igniter.open_dialog() + pass + if openpype_mongo: + result, msg = validate_mongo_connection(openpype_mongo) + if not result: + print(msg) + openpype_mongo = None + + if not openpype_mongo: + print("*** No DB connection string specified.") + print("--- launching setup UI ...") + + result = igniter.open_dialog() + if result == 0: + raise RuntimeError("MongoDB URL was not defined") + + openpype_mongo = os.getenv("OPENPYPE_MONGO") + if not openpype_mongo: try: openpype_mongo = bootstrap.secure_registry.get_item( "openPypeMongo") except ValueError: - raise RuntimeError("missing mongodb url") + raise RuntimeError("Missing MongoDB url") return openpype_mongo @@ -316,23 +348,25 @@ def _determine_mongodb() -> str: def _initialize_environment(openpype_version: OpenPypeVersion) -> None: version_path = openpype_version.path os.environ["OPENPYPE_VERSION"] = openpype_version.version - # set OPENPYPE_ROOT to point to currently used OpenPype version. - os.environ["OPENPYPE_ROOT"] = os.path.normpath(version_path.as_posix()) + # set OPENPYPE_REPOS_ROOT to point to currently used OpenPype version. + os.environ["OPENPYPE_REPOS_ROOT"] = os.path.normpath( + version_path.as_posix() + ) # inject version to Python environment (sys.path, ...) print(">>> Injecting OpenPype version to running environment ...") bootstrap.add_paths_from_directory(version_path) - # Additional sys paths related to OPENPYPE_ROOT directory - # TODO move additional paths to `boot` part when OPENPYPE_ROOT will point - # to same hierarchy from code and from frozen OpenPype + # Additional sys paths related to OPENPYPE_REPOS_ROOT directory + # TODO move additional paths to `boot` part when OPENPYPE_REPOS_ROOT will + # point to same hierarchy from code and from frozen OpenPype additional_paths = [ - os.environ["OPENPYPE_ROOT"], + os.environ["OPENPYPE_REPOS_ROOT"], # add OpenPype tools - os.path.join(os.environ["OPENPYPE_ROOT"], "openpype", "tools"), + os.path.join(os.environ["OPENPYPE_REPOS_ROOT"], "openpype", "tools"), # add common OpenPype vendor # (common for multiple Python interpreter versions) os.path.join( - os.environ["OPENPYPE_ROOT"], + os.environ["OPENPYPE_REPOS_ROOT"], "openpype", "vendor", "python", @@ -353,7 +387,7 @@ def _find_frozen_openpype(use_version: str = None, """Find OpenPype to run from frozen code. This will process and modify environment variables: - ``PYTHONPATH``, ``OPENPYPE_VERSION``, ``OPENPYPE_ROOT`` + ``PYTHONPATH``, ``OPENPYPE_VERSION``, ``OPENPYPE_REPOS_ROOT`` Args: use_version (str, optional): Try to use specified version. @@ -465,16 +499,10 @@ def _bootstrap_from_code(use_version): # run through repos and add them to `sys.path` and `PYTHONPATH` # set root if getattr(sys, 'frozen', False): - openpype_root = os.path.normpath( - os.path.dirname(sys.executable)) - local_version = bootstrap.get_version(Path(openpype_root)) + local_version = bootstrap.get_version(Path(OPENPYPE_ROOT)) print(f" - running version: {local_version}") assert local_version else: - openpype_root = os.path.normpath( - os.path.dirname( - os.path.dirname( - os.path.realpath(igniter.__file__)))) # get current version of OpenPype local_version = bootstrap.get_local_live_version() @@ -488,15 +516,18 @@ def _bootstrap_from_code(use_version): bootstrap.add_paths_from_directory(version_path) os.environ["OPENPYPE_VERSION"] = use_version else: - version_path = openpype_root - os.environ["OPENPYPE_ROOT"] = openpype_root - repos = os.listdir(os.path.join(openpype_root, "repos")) - repos = [os.path.join(openpype_root, "repos", repo) for repo in repos] + version_path = OPENPYPE_ROOT + + repos = os.listdir(os.path.join(OPENPYPE_ROOT, "repos")) + repos = [os.path.join(OPENPYPE_ROOT, "repos", repo) for repo in repos] # add self to python paths - repos.insert(0, openpype_root) + repos.insert(0, OPENPYPE_ROOT) for repo in repos: sys.path.insert(0, repo) + # Set OPENPYPE_REPOS_ROOT to code root + os.environ["OPENPYPE_REPOS_ROOT"] = OPENPYPE_ROOT + # add venv 'site-packages' to PYTHONPATH python_path = os.getenv("PYTHONPATH", "") split_paths = python_path.split(os.pathsep) @@ -507,15 +538,15 @@ def _bootstrap_from_code(use_version): # in case when we are running without any version installed. if not getattr(sys, 'frozen', False): split_paths.append(site.getsitepackages()[-1]) - # TODO move additional paths to `boot` part when OPENPYPE_ROOT will point - # to same hierarchy from code and from frozen OpenPype + # TODO move additional paths to `boot` part when OPENPYPE_ROOT will + # point to same hierarchy from code and from frozen OpenPype additional_paths = [ # add OpenPype tools - os.path.join(os.environ["OPENPYPE_ROOT"], "openpype", "tools"), + os.path.join(OPENPYPE_ROOT, "openpype", "tools"), # add common OpenPype vendor # (common for multiple Python interpreter versions) os.path.join( - os.environ["OPENPYPE_ROOT"], + OPENPYPE_ROOT, "openpype", "vendor", "python", @@ -534,6 +565,11 @@ def _bootstrap_from_code(use_version): def boot(): """Bootstrap OpenPype.""" + # ------------------------------------------------------------------------ + # Set environment to OpenPype root path + # ------------------------------------------------------------------------ + os.environ["OPENPYPE_ROOT"] = OPENPYPE_ROOT + # ------------------------------------------------------------------------ # Play animation # ------------------------------------------------------------------------ @@ -564,16 +600,6 @@ def boot(): os.environ["OPENPYPE_MONGO"] = openpype_mongo os.environ["OPENPYPE_DATABASE_NAME"] = "openpype" # name of Pype database - # ------------------------------------------------------------------------ - # Set environments - load OpenPype path from database (if set) - # ------------------------------------------------------------------------ - # set OPENPYPE_ROOT to running location until proper version can be - # determined. - if getattr(sys, 'frozen', False): - os.environ["OPENPYPE_ROOT"] = os.path.dirname(sys.executable) - else: - os.environ["OPENPYPE_ROOT"] = os.path.dirname(__file__) - # Get openpype path from database and set it to environment so openpype can # find its versions there and bootstrap them. openpype_path = get_openpype_path_from_db(openpype_mongo) @@ -586,7 +612,7 @@ def boot(): # ------------------------------------------------------------------------ # Find OpenPype versions # ------------------------------------------------------------------------ - # WARNING: Environment OPENPYPE_ROOT may change if frozen OpenPype + # WARNING: Environment OPENPYPE_REPOS_ROOT may change if frozen OpenPype # is executed if getattr(sys, 'frozen', False): # find versions of OpenPype to be used with frozen code @@ -603,12 +629,6 @@ def boot(): # or to `openpype` or `openpype_console` in case of frozen code os.environ["OPENPYPE_EXECUTABLE"] = sys.executable - if getattr(sys, 'frozen', False): - os.environ["OPENPYPE_REPOS_ROOT"] = os.environ["OPENPYPE_ROOT"] - else: - os.environ["OPENPYPE_REPOS_ROOT"] = os.path.join( - os.environ["OPENPYPE_ROOT"], "repos") - # delete OpenPype module and it's submodules from cache so it is used from # specific version modules_to_del = [ @@ -678,7 +698,9 @@ def get_info() -> list: inf.append(("OpenPype variant", "staging")) else: inf.append(("OpenPype variant", "production")) - inf.append(("Running OpenPype from", os.environ.get('OPENPYPE_ROOT'))) + inf.append( + ("Running OpenPype from", os.environ.get('OPENPYPE_REPOS_ROOT')) + ) inf.append(("Using mongodb", components["host"])) if os.environ.get("FTRACK_SERVER"): diff --git a/test_localsystem.txt b/test_localsystem.txt new file mode 100644 index 0000000000..dde7986af8 --- /dev/null +++ b/test_localsystem.txt @@ -0,0 +1 @@ +I have run diff --git a/tools/build.ps1 b/tools/build.ps1 index 412bb111c1..5283ee4754 100644 --- a/tools/build.ps1 +++ b/tools/build.ps1 @@ -121,6 +121,10 @@ catch { Exit-WithCode 1 } +Write-Host ">>> " -NoNewLine -ForegroundColor green +Write-Host "Making sure submodules are up-to-date ..." +git submodule update --init --recursive + Write-Host ">>> " -NoNewline -ForegroundColor green Write-Host "Building OpenPype [ " -NoNewline -ForegroundColor white Write-host $openpype_version -NoNewline -ForegroundColor green diff --git a/tools/build.sh b/tools/build.sh index b95e2969c4..d0593a2b2f 100755 --- a/tools/build.sh +++ b/tools/build.sh @@ -157,10 +157,33 @@ main () { install_poetry || { echo -e "${BIRed}!!!${RST} Poetry installation failed"; return; } fi + echo -e "${BIGreen}>>>${RST} Making sure submodules are up-to-date ..." + git submodule update --init --recursive + echo -e "${BIGreen}>>>${RST} Building ..." - poetry run python3 "$openpype_root/setup.py" build > "$openpype_root/build/build.log" || { echo -e "${BIRed}!!!${RST} Build failed, see the build log."; return; } + if [[ "$OSTYPE" == "linux-gnu"* ]]; then + poetry run python3 "$openpype_root/setup.py" build > "$openpype_root/build/build.log" || { echo -e "${BIRed}!!!${RST} Build failed, see the build log."; return; } + elif [[ "$OSTYPE" == "darwin"* ]]; then + poetry run python3 "$openpype_root/setup.py" bdist_mac > "$openpype_root/build/build.log" || { echo -e "${BIRed}!!!${RST} Build failed, see the build log."; return; } + fi poetry run python3 "$openpype_root/tools/build_dependencies.py" + if [[ "$OSTYPE" == "darwin"* ]]; then + # fix code signing issue + codesign --remove-signature "$openpype_root/build/OpenPype.app/Contents/MacOS/lib/Python" + if command -v create-dmg > /dev/null 2>&1; then + create-dmg \ + --volname "OpenPype Installer" \ + --window-pos 200 120 \ + --window-size 600 300 \ + --app-drop-link 100 50 \ + "$openpype_root/build/OpenPype-Installer.dmg" \ + "$openpype_root/build/OpenPype.app" + else + echo -e "${BIYellow}!!!${RST} ${BIWhite}create-dmg${RST} command is not available." + fi + fi + echo -e "${BICyan}>>>${RST} All done. You will find OpenPype and build log in \c" echo -e "${BIWhite}$openpype_root/build${RST} directory." } diff --git a/tools/build_dependencies.py b/tools/build_dependencies.py index e49e930a70..fb52e2b5fd 100644 --- a/tools/build_dependencies.py +++ b/tools/build_dependencies.py @@ -22,6 +22,7 @@ import os import sys import site from distutils.util import get_platform +import platform from pathlib import Path import shutil import blessed @@ -76,7 +77,14 @@ _print(f"Working with: {site_pkg}", 2) build_dir = "exe.{}-{}".format(get_platform(), sys.version[0:3]) # create full path -build_dir = Path(os.path.dirname(__file__)).parent / "build" / build_dir +if platform.system().lower() == "darwin": + build_dir = Path(os.path.dirname(__file__)).parent.joinpath( + "build", + "OpenPype.app", + "Contents", + "MacOS") +else: + build_dir = Path(os.path.dirname(__file__)).parent / "build" / build_dir _print(f"Using build at {build_dir}", 2) if not build_dir.exists(): diff --git a/tools/build_win_installer.ps1 b/tools/build_win_installer.ps1 new file mode 100644 index 0000000000..4a4d011258 --- /dev/null +++ b/tools/build_win_installer.ps1 @@ -0,0 +1,140 @@ +<# +.SYNOPSIS + Helper script to build OpenPype. + +.DESCRIPTION + This script will detect Python installation, and build OpenPype to `build` + directory using existing virtual environment created by Poetry (or + by running `/tools/create_venv.ps1`). It will then shuffle dependencies in + build folder to optimize for different Python versions (2/3) in Python host. + +.EXAMPLE + +PS> .\build.ps1 + +#> + +function Start-Progress { + param([ScriptBlock]$code) + $scroll = "/-\|/-\|" + $idx = 0 + $job = Invoke-Command -ComputerName $env:ComputerName -ScriptBlock { $code } -AsJob + + $origpos = $host.UI.RawUI.CursorPosition + + # $origpos.Y -= 1 + + while (($job.State -eq "Running") -and ($job.State -ne "NotStarted")) + { + $host.UI.RawUI.CursorPosition = $origpos + Write-Host $scroll[$idx] -NoNewline + $idx++ + if ($idx -ge $scroll.Length) + { + $idx = 0 + } + Start-Sleep -Milliseconds 100 + } + # It's over - clear the activity indicator. + $host.UI.RawUI.CursorPosition = $origpos + Write-Host ' ' + <# + .SYNOPSIS + Display spinner for running job + .PARAMETER code + Job to display spinner for + #> +} + + +function Exit-WithCode($exitcode) { + # Only exit this host process if it's a child of another PowerShell parent process... + $parentPID = (Get-CimInstance -ClassName Win32_Process -Filter "ProcessId=$PID" | Select-Object -Property ParentProcessId).ParentProcessId + $parentProcName = (Get-CimInstance -ClassName Win32_Process -Filter "ProcessId=$parentPID" | Select-Object -Property Name).Name + if ('powershell.exe' -eq $parentProcName) { $host.SetShouldExit($exitcode) } + + exit $exitcode +} + +function Show-PSWarning() { + if ($PSVersionTable.PSVersion.Major -lt 7) { + Write-Host "!!! " -NoNewline -ForegroundColor Red + Write-Host "You are using old version of PowerShell. $($PSVersionTable.PSVersion.Major).$($PSVersionTable.PSVersion.Minor)" + Write-Host "Please update to at least 7.0 - " -NoNewline -ForegroundColor Gray + Write-Host "https://github.com/PowerShell/PowerShell/releases" -ForegroundColor White + Exit-WithCode 1 + } +} + +function Install-Poetry() { + Write-Host ">>> " -NoNewline -ForegroundColor Green + Write-Host "Installing Poetry ... " + (Invoke-WebRequest -Uri https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py -UseBasicParsing).Content | python - + # add it to PATH + $env:PATH = "$($env:PATH);$($env:USERPROFILE)\.poetry\bin" +} + +$art = @" + +▒█▀▀▀█ █▀▀█ █▀▀ █▀▀▄ ▒█▀▀█ █░░█ █▀▀█ █▀▀ ▀█▀ ▀█▀ ▀█▀ +▒█░░▒█ █░░█ █▀▀ █░░█ ▒█▄▄█ █▄▄█ █░░█ █▀▀ ▒█░ ▒█░ ▒█░ +▒█▄▄▄█ █▀▀▀ ▀▀▀ ▀░░▀ ▒█░░░ ▄▄▄█ █▀▀▀ ▀▀▀ ▄█▄ ▄█▄ ▄█▄ + .---= [ by Pype Club ] =---. + https://openpype.io + +"@ + +Write-Host $art -ForegroundColor DarkGreen + +# Enable if PS 7.x is needed. +# Show-PSWarning + +$current_dir = Get-Location +$script_dir = Split-Path -Path $MyInvocation.MyCommand.Definition -Parent +$openpype_root = (Get-Item $script_dir).parent.FullName + +Set-Location -Path $openpype_root + +$version_file = Get-Content -Path "$($openpype_root)\openpype\version.py" +$result = [regex]::Matches($version_file, '__version__ = "(?\d+\.\d+.\d+.*)"') +$openpype_version = $result[0].Groups['version'].Value +if (-not $openpype_version) { + Write-Host "!!! " -ForegroundColor yellow -NoNewline + Write-Host "Cannot determine OpenPype version." + Exit-WithCode 1 +} +$env:BUILD_VERSION = $openpype_version + +iscc + +Write-Host ">>> " -NoNewline -ForegroundColor green +Write-Host "Creating OpenPype installer ... " -ForegroundColor white + +$build_dir_command = @" +import sys +from distutils.util import get_platform +print('exe.{}-{}'.format(get_platform(), sys.version[0:3])) +"@ + +$build_dir = & python -c $build_dir_command +Write-Host "Build directory ... ${build_dir}" -ForegroundColor white +$env:BUILD_DIR = $build_dir + +if (Get-Command iscc -errorAction SilentlyContinue -ErrorVariable ProcessError) +{ + iscc "$openpype_root\inno_setup.iss" +}else { + Write-Host "!!! Cannot find Inno Setup command" -ForegroundColor red + Write-Host "!!! You can download it at https://jrsoftware.org/" -ForegroundColor red + Exit-WithCode 1 +} + + +Write-Host ">>> " -NoNewline -ForegroundColor green +Write-Host "restoring current directory" +Set-Location -Path $current_dir + +Write-Host "*** " -NoNewline -ForegroundColor Cyan +Write-Host "All done. You will find OpenPype installer in " -NoNewLine +Write-Host "'.\build'" -NoNewline -ForegroundColor Green +Write-Host " directory." diff --git a/tools/create_env.ps1 b/tools/create_env.ps1 index 44e1799be8..e72e98e04b 100644 --- a/tools/create_env.ps1 +++ b/tools/create_env.ps1 @@ -133,7 +133,7 @@ if (-not (Test-Path -PathType Leaf -Path "$($openpype_root)\poetry.lock")) { Write-Host ">>> " -NoNewline -ForegroundColor green Write-Host "Installing virtual environment from lock." } -& poetry install $poetry_verbosity +& poetry install --no-root $poetry_verbosity if ($LASTEXITCODE -ne 0) { Write-Host "!!! " -ForegroundColor yellow -NoNewline Write-Host "Poetry command failed." diff --git a/tools/create_env.sh b/tools/create_env.sh index 7bdb8503fd..04414ddea5 100755 --- a/tools/create_env.sh +++ b/tools/create_env.sh @@ -160,7 +160,7 @@ main () { echo -e "${BIGreen}>>>${RST} Installing dependencies ..." fi - poetry install $poetry_verbosity || { echo -e "${BIRed}!!!${RST} Poetry environment installation failed"; return; } + poetry install --no-root $poetry_verbosity || { echo -e "${BIRed}!!!${RST} Poetry environment installation failed"; return; } echo -e "${BIGreen}>>>${RST} Cleaning cache files ..." clean_pyc diff --git a/tools/create_zip.ps1 b/tools/create_zip.ps1 index d18806c40b..05db640e5b 100644 --- a/tools/create_zip.ps1 +++ b/tools/create_zip.ps1 @@ -64,34 +64,15 @@ if (-not $openpype_version) { } Write-Host ">>> " -NoNewline -ForegroundColor green -Write-Host "Detecting host Python ... " -NoNewline -if (-not (Get-Command "python" -ErrorAction SilentlyContinue)) { - Write-Host "!!! Python not detected" -ForegroundColor red - Exit-WithCode 1 -} -$version_command = @' -import sys -print('{0}.{1}'.format(sys.version_info[0], sys.version_info[1])) -'@ - -$p = & python -c $version_command -$env:PYTHON_VERSION = $p -$m = $p -match '(\d+)\.(\d+)' -if(-not $m) { - Write-Host "!!! Cannot determine version" -ForegroundColor red - Exit-WithCode 1 -} -# We are supporting python 3.6 and up -if(($matches[1] -lt 3) -or ($matches[2] -lt 7)) { - Write-Host "FAILED Version [ $p ] is old and unsupported" -ForegroundColor red - Exit-WithCode 1 -} -Write-Host "OK [ $p ]" -ForegroundColor green +Write-Host "Cleaning cache files ... " -NoNewline +Get-ChildItem $openpype_root -Filter "*.pyc" -Force -Recurse | Remove-Item -Force +Get-ChildItem $openpype_root -Filter "*.pyo" -Force -Recurse | Remove-Item -Force +Get-ChildItem $openpype_root -Filter "__pycache__" -Force -Recurse | Remove-Item -Force -Recurse +Write-Host "OK" -ForegroundColor green Write-Host ">>> " -NoNewline -ForegroundColor green Write-Host "Generating zip from current sources ..." -Write-Host "... " -NoNewline -ForegroundColor Magenta -Write-Host "arguments: " -NoNewline -ForegroundColor Gray -Write-Host $ARGS -ForegroundColor White -& poetry run python "$($openpype_root)\start.py" generate-zip $ARGS -Set-Location -Path $current_dir \ No newline at end of file +$env:PYTHONPATH="$($openpype_root);$($env:PYTHONPATH)" +$env:OPENPYPE_ROOT="$($openpype_root)" +& poetry run python "$($openpype_root)\tools\create_zip.py" $ARGS +Set-Location -Path $current_dir diff --git a/tools/create_zip.py b/tools/create_zip.py new file mode 100644 index 0000000000..32a4d27e8b --- /dev/null +++ b/tools/create_zip.py @@ -0,0 +1,66 @@ +# -*- coding: utf-8 -*- +"""Create OpenPype version from live sources.""" +from igniter import bootstrap_repos +import click +import enlighten +import blessed +from pathlib2 import Path + + +term = blessed.Terminal() +manager = enlighten.get_manager() +last_increment = 0 + + +@click.group(invoke_without_command=True) +@click.option("--path", required=False, + help="path where to put version", + type=click.Path(exists=True)) +def main(path): + # create zip file + + progress_bar = enlighten.Counter( + total=100, desc="OpenPype ZIP", units="%", color="green") + + def progress(inc: int): + """Progress handler.""" + global last_increment + progress_bar.update(incr=inc - last_increment) + last_increment = inc + + bs = bootstrap_repos.BootstrapRepos(progress_callback=progress) + if path: + out_path = Path(path) + bs.data_dir = out_path.parent + + _print(f"Creating zip in {bs.data_dir} ...") + repo_file = bs.create_version_from_live_code() + if not repo_file: + _print("Error while creating zip file.", 1) + exit(1) + + _print(f"Created {repo_file}") + + +def _print(msg: str, message_type: int = 0) -> None: + """Print message to console. + + Args: + msg (str): message to print + message_type (int): type of message (0 info, 1 error, 2 note) + + """ + if message_type == 0: + header = term.aquamarine3(">>> ") + elif message_type == 1: + header = term.orangered2("!!! ") + elif message_type == 2: + header = term.tan1("... ") + else: + header = term.darkolivegreen3("--- ") + + print("{}{}".format(header, msg)) + + +if __name__ == "__main__": + main() diff --git a/tools/create_zip.sh b/tools/create_zip.sh index 6e7f792f1d..f02eb9987c 100755 --- a/tools/create_zip.sh +++ b/tools/create_zip.sh @@ -123,7 +123,9 @@ main () { pushd "$openpype_root" > /dev/null || return > /dev/null echo -e "${BIGreen}>>>${RST} Generating zip from current sources ..." - poetry run python3 "$openpype_root/start.py" generate-zip "$@" + PYTHONPATH="$openpype_root:$PYTHONPATH" + OPENPYPE_ROOT="$openpype_root" + poetry run python3 "$openpype_root/tools/create_zip.py" "$@" } main "$@" diff --git a/tools/fetch_thirdparty_libs.ps1 b/tools/fetch_thirdparty_libs.ps1 new file mode 100644 index 0000000000..d1b914fac2 --- /dev/null +++ b/tools/fetch_thirdparty_libs.ps1 @@ -0,0 +1,20 @@ +<# +.SYNOPSIS + Download and extract third-party dependencies for OpenPype. + +.DESCRIPTION + This will download third-party dependencies specified in pyproject.toml + and extract them to vendor/bin folder. + +.EXAMPLE + +PS> .\fetch_thirdparty_libs.ps1 + +#> +$current_dir = Get-Location +$script_dir = Split-Path -Path $MyInvocation.MyCommand.Definition -Parent +$openpype_root = (Get-Item $script_dir).parent.FullName +Set-Location -Path $openpype_root + +& poetry run python "$($openpype_root)\tools\fetch_thirdparty_libs.py" +Set-Location -Path $current_dir diff --git a/tools/fetch_thirdparty_libs.py b/tools/fetch_thirdparty_libs.py new file mode 100644 index 0000000000..75ee052950 --- /dev/null +++ b/tools/fetch_thirdparty_libs.py @@ -0,0 +1,160 @@ +# -*- coding: utf-8 -*- +"""Fetch, verify and process third-party dependencies of OpenPype. + +Those should be defined in `pyproject.toml` in OpenPype sources root. + +""" +import os +import sys +import toml +import shutil +from pathlib import Path +from urllib.parse import urlparse +import requests +import enlighten +import platform +import blessed +import tempfile +import math +import hashlib +import tarfile +import zipfile +import time + + +term = blessed.Terminal() +manager = enlighten.get_manager() +hash_buffer_size = 65536 + + +def sha256_sum(filename: Path): + """Calculate sha256 hash for given file. + + Args: + filename (Path): path to file. + + Returns: + str: hex hash. + + """ + _hash = hashlib.sha256() + with open(filename, 'rb', buffering=0) as f: + buffer = bytearray(128 * 1024) + mv = memoryview(buffer) + for n in iter(lambda: f.readinto(mv), 0): + _hash.update(mv[:n]) + return _hash.hexdigest() + + +def _print(msg: str, message_type: int = 0) -> None: + """Print message to console. + + Args: + msg (str): message to print + message_type (int): type of message (0 info, 1 error, 2 note) + + """ + if message_type == 0: + header = term.aquamarine3(">>> ") + elif message_type == 1: + header = term.orangered2("!!! ") + elif message_type == 2: + header = term.tan1("... ") + else: + header = term.darkolivegreen3("--- ") + + print("{}{}".format(header, msg)) + + +_print("Processing third-party dependencies ...") +start_time = time.time_ns() +openpype_root = Path(os.path.dirname(__file__)).parent +pyproject = toml.load(openpype_root / "pyproject.toml") +platform_name = platform.system().lower() + +try: + thirdparty = pyproject["openpype"]["thirdparty"] +except AttributeError: + _print("No third-party libraries specified in pyproject.toml", 1) + sys.exit(1) + +for k, v in thirdparty.items(): + _print(f"processing {k}") + destination_path = openpype_root / "vendor" / "bin" / k / platform_name + url = v.get(platform_name).get("url") + + if not v.get(platform_name): + _print(("missing definition for current " + f"platform [ {platform_name} ]"), 1) + sys.exit(1) + + parsed_url = urlparse(url) + + # check if file is already extracted in /vendor/bin + if destination_path.exists(): + _print("destination path already exists, deleting ...", 2) + if destination_path.is_dir(): + try: + shutil.rmtree(destination_path) + except OSError as e: + _print("cannot delete folder.", 1) + raise SystemExit(e) + + # download file + _print(f"Downloading {url} ...") + with tempfile.TemporaryDirectory() as temp_dir: + temp_file = Path(temp_dir) / Path(parsed_url.path).name + + r = requests.get(url, stream=True) + content_len = int(r.headers.get('Content-Length', '0')) or None + with manager.counter(color='green', + total=content_len and math.ceil(content_len / 2 ** 20), # noqa: E501 + unit='MiB', leave=False) as counter: + with open(temp_file, 'wb', buffering=2 ** 24) as file_handle: + for chunk in r.iter_content(chunk_size=2 ** 20): + file_handle.write(chunk) + counter.update() + + # get file with checksum + _print("Calculating sha256 ...", 2) + calc_checksum = sha256_sum(temp_file) + if v.get(platform_name).get("hash") != calc_checksum: + _print("Downloaded files checksum invalid.") + sys.exit(1) + + _print("File OK", 3) + if not destination_path.exists(): + destination_path.mkdir(parents=True) + + # extract to destination + archive_type = temp_file.suffix.lstrip(".") + _print(f"Extracting {archive_type} file to {destination_path}") + if archive_type in ['zip']: + zip_file = zipfile.ZipFile(temp_file) + zip_file.extractall(destination_path) + zip_file.close() + + elif archive_type in [ + 'tar', 'tgz', 'tar.gz', 'tar.xz', 'tar.bz2' + ]: + if archive_type == 'tar': + tar_type = 'r:' + elif archive_type.endswith('xz'): + tar_type = 'r:xz' + elif archive_type.endswith('gz'): + tar_type = 'r:gz' + elif archive_type.endswith('bz2'): + tar_type = 'r:bz2' + else: + tar_type = 'r:*' + try: + tar_file = tarfile.open(temp_file, tar_type) + except tarfile.ReadError: + raise SystemExit("corrupted archive") + tar_file.extractall(destination_path) + tar_file.close() + _print("Extraction OK", 3) + +end_time = time.time_ns() +total_time = (end_time - start_time) / 1000000000 +_print(f"Downloading and extracting took {total_time} secs.") diff --git a/tools/fetch_thirdparty_libs.sh b/tools/fetch_thirdparty_libs.sh new file mode 100755 index 0000000000..e305b4b3e4 --- /dev/null +++ b/tools/fetch_thirdparty_libs.sh @@ -0,0 +1,129 @@ +#!/usr/bin/env bash + +# Run Pype Tray + + +art () { + cat <<-EOF + ____________ + /\\ ___ \\ + \\ \\ \\/_\\ \\ + \\ \\ _____/ ______ ___ ___ ___ + \\ \\ \\___/ /\\ \\ \\ \\\\ \\\\ \\ + \\ \\____\\ \\ \\_____\\ \\__\\\\__\\\\__\\ + \\/____/ \\/_____/ . PYPE Club . + +EOF +} + +# Colors for terminal + +RST='\033[0m' # Text Reset + +# Regular Colors +Black='\033[0;30m' # Black +Red='\033[0;31m' # Red +Green='\033[0;32m' # Green +Yellow='\033[0;33m' # Yellow +Blue='\033[0;34m' # Blue +Purple='\033[0;35m' # Purple +Cyan='\033[0;36m' # Cyan +White='\033[0;37m' # White + +# Bold +BBlack='\033[1;30m' # Black +BRed='\033[1;31m' # Red +BGreen='\033[1;32m' # Green +BYellow='\033[1;33m' # Yellow +BBlue='\033[1;34m' # Blue +BPurple='\033[1;35m' # Purple +BCyan='\033[1;36m' # Cyan +BWhite='\033[1;37m' # White + +# Bold High Intensity +BIBlack='\033[1;90m' # Black +BIRed='\033[1;91m' # Red +BIGreen='\033[1;92m' # Green +BIYellow='\033[1;93m' # Yellow +BIBlue='\033[1;94m' # Blue +BIPurple='\033[1;95m' # Purple +BICyan='\033[1;96m' # Cyan +BIWhite='\033[1;97m' # White + + +############################################################################## +# Detect required version of python +# Globals: +# colors +# PYTHON +# Arguments: +# None +# Returns: +# None +############################################################################### +detect_python () { + echo -e "${BIGreen}>>>${RST} Using python \c" + local version_command="import sys;print('{0}.{1}'.format(sys.version_info[0], sys.version_info[1]))" + local python_version="$(python3 <<< ${version_command})" + oIFS="$IFS" + IFS=. + set -- $python_version + IFS="$oIFS" + if [ "$1" -ge "3" ] && [ "$2" -ge "6" ] ; then + if [ "$2" -gt "7" ] ; then + echo -e "${BIWhite}[${RST} ${BIRed}$1.$2 ${BIWhite}]${RST} - ${BIRed}FAILED${RST} ${BIYellow}Version is new and unsupported, use${RST} ${BIPurple}3.7.x${RST}"; return 1; + else + echo -e "${BIWhite}[${RST} ${BIGreen}$1.$2${RST} ${BIWhite}]${RST}" + fi + PYTHON="python3" + else + command -v python3 >/dev/null 2>&1 || { echo -e "${BIRed}$1.$2$ - ${BIRed}FAILED${RST} ${BIYellow}Version is old and unsupported${RST}"; return 1; } + fi +} + +############################################################################## +# Clean pyc files in specified directory +# Globals: +# None +# Arguments: +# Optional path to clean +# Returns: +# None +############################################################################### +clean_pyc () { + local path + path=$pype_root + echo -e "${BIGreen}>>>${RST} Cleaning pyc at [ ${BIWhite}$path${RST} ] ... \c" + find "$path" -regex '^.*\(__pycache__\|\.py[co]\)$' -delete + echo -e "${BIGreen}DONE${RST}" +} + +############################################################################## +# Return absolute path +# Globals: +# None +# Arguments: +# Path to resolve +# Returns: +# None +############################################################################### +realpath () { + echo $(cd $(dirname "$1"); pwd)/$(basename "$1") +} + +# Main +main () { + echo -e "${BGreen}" + art + echo -e "${RST}" + detect_python || return 1 + + # Directories + pype_root=$(realpath $(dirname $(dirname "${BASH_SOURCE[0]}"))) + pushd "$pype_root" > /dev/null || return > /dev/null + + echo -e "${BIGreen}>>>${RST} Running Pype tool ..." + poetry run python3 "$pype_root/tools/fetch_thirdparty_libs.py" +} + +main \ No newline at end of file diff --git a/tools/run_documentation.ps1 b/tools/run_documentation.ps1 new file mode 100644 index 0000000000..1be3709642 --- /dev/null +++ b/tools/run_documentation.ps1 @@ -0,0 +1,32 @@ +<# +.SYNOPSIS + Helper script to run mongodb. + +.DESCRIPTION + This script will detect mongodb, add it to the PATH and launch it on specified port and db location. + +.EXAMPLE + +PS> .\run_mongo.ps1 + +#> + +$art = @" + +▒█▀▀▀█ █▀▀█ █▀▀ █▀▀▄ ▒█▀▀█ █░░█ █▀▀█ █▀▀ ▀█▀ ▀█▀ ▀█▀ +▒█░░▒█ █░░█ █▀▀ █░░█ ▒█▄▄█ █▄▄█ █░░█ █▀▀ ▒█░ ▒█░ ▒█░ +▒█▄▄▄█ █▀▀▀ ▀▀▀ ▀░░▀ ▒█░░░ ▄▄▄█ █▀▀▀ ▀▀▀ ▄█▄ ▄█▄ ▄█▄ + .---= [ by Pype Club ] =---. + https://openpype.io + +"@ + +Write-Host $art -ForegroundColor DarkGreen + +$script_dir = Split-Path -Path $MyInvocation.MyCommand.Definition -Parent +$openpype_root = (Get-Item $script_dir).parent.FullName + +cd $openpype_root/website + +yarn run start + diff --git a/tools/run_mongo.sh b/tools/run_mongo.sh index 1c788abcaf..8c94fcf881 100755 --- a/tools/run_mongo.sh +++ b/tools/run_mongo.sh @@ -82,3 +82,4 @@ main () { echo -e "${BIGreen}>>>${RST} Detached to background." } +main diff --git a/vendor/deadline/custom/plugins/GlobalJobPreLoad.py b/vendor/deadline/custom/plugins/GlobalJobPreLoad.py index d1287dd213..5e64605271 100644 --- a/vendor/deadline/custom/plugins/GlobalJobPreLoad.py +++ b/vendor/deadline/custom/plugins/GlobalJobPreLoad.py @@ -60,7 +60,7 @@ def inject_openpype_environment(deadlinePlugin): with open(export_url) as fp: contents = json.load(fp) for key, value in contents.items(): - deadlinePlugin.SetEnvironmentVariable(key, value) + deadlinePlugin.SetProcessEnvironmentVariable(key, value) os.remove(export_url) @@ -162,4 +162,3 @@ def __main__(deadlinePlugin): inject_openpype_environment(deadlinePlugin) else: pype(deadlinePlugin) # backward compatibility with Pype2 - diff --git a/website/docs/admin_hosts_blender.md b/website/docs/admin_hosts_blender.md new file mode 100644 index 0000000000..0655e5341a --- /dev/null +++ b/website/docs/admin_hosts_blender.md @@ -0,0 +1,83 @@ +--- +id: admin_hosts_blender +title: Blender +sidebar_label: Blender +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +## Blender requirements +Blender integration requires to use **PySide2** module inside blender. Module is different for Blender versions and platforms so can't be bundled with OpenPype. + +### How to install + +:::info Permissions +This step requires Admin persmission. +::: + + + + + +Find python executable inside your Blender installation folder. It is usually located in **C:\\Program Files\\Blender Foundation\\Blender {version}\\{version}\\python\\bin\\python.exe** (This may differ in future blender version). + +Open Powershell or Command Prompt as Administrator and run commands below. + +*Replace `C:\Program Files\Blender Foundation\Blender 2.83\2.83\python\bin` with your path.* + +```bash +# Change directory to python executable directory. +> cd C:\Program Files\Blender Foundation\Blender 2.83\2.83\python\bin + +# Run pip install command. +> python -m pip install PySide2 +``` + + + + + +Procedure may differ based on Linux distribution and blender distribution. Some Blender distributions are using system Python in that case it is required to install PySide2 using pip to system python (Not tested). + +**These instructions are for Blender using bundled python.** + +Find python executable inside your blender application. + +:::note Find python executable in Blender +You can launch Blender and in "Scripting" section enter commands to console. +```bash +>>> import bpy +>>> print(bpy.app.binary_path_python) +'/path/to/python/executable' +``` +::: + +Open terminal and run pip install command below. + +*Replace `/usr/bin/blender/2.83/python/bin/python3.7m` with your path.* +```bash +> /usr/bin/blender/2.83/python/bin/python3.7m -m pip install PySide2 +``` + +:::warning No module named pip +If you get error `No module named pip` you'll have to do few steps first. Open new terminal and run the python executable from Blender (entering full path). +```bash +# Run Python executable +> /usr/bin/blender/2.83/python/bin/python3.7m +# Python process should start +>>> import ensurepip +>>> ensurepip.bootstrap() +``` +You can close new terminal. Run pip install command above again. Now should work as expected. +::: + + + + diff --git a/website/docs/admin_settings_project.md b/website/docs/admin_settings_project.md deleted file mode 100644 index a30c0f0082..0000000000 --- a/website/docs/admin_settings_project.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -id: admin_settings_project -title: Project Settings -sidebar_label: Project Settings ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - - -PROJECT Settings \ No newline at end of file diff --git a/website/docs/artist_hosts_hiero.md b/website/docs/artist_hosts_hiero.md new file mode 100644 index 0000000000..4ada1fba2d --- /dev/null +++ b/website/docs/artist_hosts_hiero.md @@ -0,0 +1,193 @@ +--- +id: artist_hosts_hiero +title: Hiero +sidebar_label: Hiero / Nuke Studio +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +:::note +All the information also applies to **_Nuke Studio_**(NKS), but for simplicity we only refer to Hiero/NKS. The workflows are identical for both. We are supporting versions **`11.0`** and above. +::: + + + +## OpenPype global tools + +- [Work Files](artist_tools.md#workfiles) +- [Create](artist_tools.md#creator) +- [Load](artist_tools.md#loader) +- [Manage (Inventory)](artist_tools.md#inventory) +- [Publish](artist_tools.md#publisher) + + +## Hiero specific tools + + + +
+
+ +### Create Default Tags + +This tool will recreate all necessary OpenPype tags needed for successful publishing. It is automatically ran at start of the Hiero/NKS. Use this tool to manually re-create all the tags if you accidentaly delete them, or you want to reset them to default values. + +#### Result + +- Will create tags in Tags bin in case there were none +- Will set all tags to default values if they have been altered + +
+
+ +![Default Tags](assets/hiero_defaultTags.png) + +
+
+ +
+
+ +### Apply Colorspace Project + +This tool will set any defined colorspace definition from OpenPype `Settings / Project / Anatomy / Color Management and Output Formats / Hiero / Workfile` to Hiero `menu / Project / Edit Settings / Color Management tab` + +#### Result + +- Define corect color management settings on project + +
+
+ +![Default Tags](assets/hiero_menuColorspaceProject.png) + +
+
+ + +
+
+ +### Apply Colorspace Clips + +This tool will set any defined colorspace definition from OpenPype `Settings / Project / Anatomy / Color Management and Output Formats / Hiero / Colorspace on Inputs by regex detection` to any matching clip's source path. + +#### Result + +- Set correct `Set Media Color Transform` on each clip of active timeline if it matches defined expressions + +
+
+ +![Default Tags](assets/hiero_menuColorspaceClip.png) + +
+
+ +## Publishing Shots + + + +
+ +With OpenPype, you can use Hiero/NKS as a starting point for creating a project's **shots** as *assets* from timeline clips with its *hierarchycal parents* like **episodes**, **sequences**, **folders**, and its child **tasks**. Most importantly it will create **versions** of plate *subsets*, with or without **reference video**. Publishig is naturally creating clip's **thumbnails** and assigns it to shot *asset*. Hiero is also publishing **audio** *subset* and various **soft-effects** either as retiming component as part of published plates or **color-tranformations**, that will be evailable later on for compositor artists to use either as *viewport input-process* or *loaded nodes* in graph editor. +



+ +### Preparing timeline for conversion to instances +Because we don't support on-fly data conversion so in case of working with raw camera sources or some other formats which need to be converted for 2D/3D work. We suggest to convert those before and reconform the timeline. Before any clips in timeline could be converted to publishable instances we recomend following. +1. Merge all tracks which supposed to be one and they are multipy only because of editor's style +2. Rename tracks to follow basic structure > if only one layer then `main` in case of multiple layer (elements) for one shot then `main`, and other elements for example: `bg`, `greenscreen`, `fg01`, `fg02`, `display01`, etc. please avoid using [-/_.,%&*] or spaces. These names will be later used in *subset* name creation as `{family}{trackName}` so for example **plateMain** or **plateFg01** +3. Define correct `Set Media Color Transform` at all clips as those will be also published to metadata and used for later loading with correct color transformation. +4. Reviewable video material which you wish to be used as preview videos on any supported Projec manager platform (Ftrack) has to be added ideally to track named **review**. This can be offline edit used as reference video for 2D/3D artists. This video material can be edited to fit length of **main** timeline track or it cand be one long video clip under all clips in **main** track, because OpenPype will trim this to appropriate length with use of FFMPEG. Please be avare we only support MP4(h264) or JPG sequence at the moment. + +
+ +![Create menu](assets/hiero_timelinePrep.png) + +
+ + +### Converting timeline clips to instances + +Every clip on timeline which is inteded to be published has to be converted to publishable instance. + +
+ +In OpenPype it is done by tagging a clip with our own metadata. Select all clips you wish to convert and `menu > OpenPype > Create`. +



+ +
+ +
+ +![Create menu](assets/hiero_menuCreate.png) + +
+ +
+ +Then chose `Create Publishable Clip` in **Instance Creator** dialogue. +

+ +Then you can alter Subset name, but this will be changed dynamically and replaces with timeline's track name. +

+ +Keep **Use selection** on. +

+ +Hit **Create** +

+
+ +
+ +![Instance Creator](assets/hiero_instanceCreator.png) + +
+
+ +Dialogue `Pype publish attributes creator` will open. Here you can define instance properties. If you wish to rename clips dynamically during creation then Keep **Rename clips** ticked. +

+ +In case you wish to use *multiple elements of shots* workflow then keep **Enamble vertical sync** ticked on and define correct hero track which is holding main plates, this is usually the **main** track. +
+ +
+ +![Create menu](assets/hiero_createUIRename.png) + +
+
+ +Subset name is created dynamically if `` is selected on **Subset name**. +

+ +I case you wish to publish reviewable video as explained above then find the appropriate track from drop down menu **Use review track**. Usually named `review` +

+ +Hover above each input field for help. +

+ +Handles can be defined here to. In case you wish to have individual clip set differently we recomend to set here the default value and later change those in the created OpenPype tag's metadata under `handleStart` and `handleEnd` properties (look bellow for details) +
+ +
+ +![Create menu](assets/hiero_createUIFrames.png) + +
+
+ +After you hit **Ok** tags are added to selected clips (except clips in **review** tracks). +

+ +If you wish to change any individual propertie of the shot then you are able to do it here. In this example we can change `handleStart` and `handleEnd` to some other values. +
+ +
+ +![Create menu](assets/hiero_tagHandles.png) + +
+
diff --git a/website/docs/artist_hosts_maya.md b/website/docs/artist_hosts_maya.md index 1ed326ebe7..d19bde7b49 100644 --- a/website/docs/artist_hosts_maya.md +++ b/website/docs/artist_hosts_maya.md @@ -691,3 +691,27 @@ under selected hierarchies and match them with shapes loaded with rig (published under `input_SET`). This mechanism uses *cbId* attribute on those shapes. If match is found shapes are connected using their `outMesh` and `outMesh`. Thus you can easily connect existing animation to loaded rig. ::: + +## Using Redshift Proxies + +OpenPype supports working with Redshift Proxy files. You can create Redshift Proxy from almost +any hierarchy in Maya and it will be included there. Redshift can export animation +proxy file per frame. + +### Creating Redshift Proxy + +To mark data to publish as Redshift Proxy, select them in Maya and - **OpenPype → Create ...** and +then select **Redshift Proxy**. You can name your subset and hit **Create** button. + +You can enable animation in Attribute Editor: + +![Maya - Yeti Rig Setup](assets/maya-create_rs_proxy.jpg) + +### Publishing Redshift Proxies + +Once data are marked as Redshift Proxy instance, they can be published - **OpenPype → Publish ...** + +### Using Redshift Proxies + +Published proxy files can be loaded with OpenPype Loader. It will create mesh and attach Redshift Proxy +parameters to it - Redshift will then represent proxy with bounding box. diff --git a/website/docs/artist_hosts_nukestudio.md b/website/docs/artist_hosts_nukestudio.md deleted file mode 100644 index 23301f53bf..0000000000 --- a/website/docs/artist_hosts_nukestudio.md +++ /dev/null @@ -1,284 +0,0 @@ ---- -id: artist_hosts_nukestudio -title: Hiero -sidebar_label: Hiero / Nuke Studio ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::note -All the information also applies to **_Nuke Studio_**, but for simplicity we only refer to Hiero. The workflows are identical for both. We are supporting versions **`11.0`** and above. -::: - - -## Hiero specific tools - - - -
-
- -### Create Default Tags - -This tool will recreate all necessary OpenPype tags needed for successful publishing. It is automatically ran at start of the Hiero. Use this tool to manually re-create all the tags if you accidentaly delete them, or you want to reset them to default values. - -
-
- -![Default Tags](assets/nukestudio_defaultTags.png) - -
-
- -#### Result - -- Will create tags in Tags bin in case there were none -- Will set all tags to default values if they have been altered - -## Publishing Shots - - - -
-
- -With OpenPype, you can use Hiero as a starting point for creating project hierarchy in avalon and ftrack database (episodes, sequences, shots, folders etc.), publishing plates, reference quicktimes, audio and various soft effects that will be evailable later on for compositors and 3D artist to use. - -There are two ways to `Publish` data and create shots in database from Hiero. Use either context menu on right clicking selected clips or go to top `menu > OpenPype > Publish`. - -
-
- -![Clips naming](assets/nukestudio_basic_clipNaming.png) - -
-
- -Keep in mind that the publishing currently works on selected shots - -Shot names for all the related plates that you want to publish (subsets) has to be the same to be correctly paired together (as it is shown in image). -Note the layer **review** which contains `plateMainReview`. -This media is just h264, 1920x1080 video for that will be used as preview of the actual `plateMain` subset and will be uploaded to Ftrack. We explain how to work with review tag in [**Reviewing**](#reviewing). - - -:::important -To to successfuly publish a shot from Hiero: -1. At least one clip of your shot must be tagged with `Hierarchy`, `subset` and `handleStart/End`. -2. Your source media must be pre-cut to correct length (including handles) -::: - -### Tagging - - -OpenPype's custom tags are used for defining shot parameters and to define which clips and how they are going to be published. - -If you want to add any properties to your clips you'll need to adjust values on the given tag and then drag it onto the clip. - - -
- -![Tags basic](assets/nukestudio_tagsToClips_basic.png) - -
- -1. double click on preferable tag and drag&drop it to selected clip(s) -2. Basic set of tags on clip (usually subset: plateMain) -3. Additionally select clip and edit its parameters -4. Edit parameters here but do not touch `family` - -
-
- -:::important -Only clips with `subset` will be directly processed for publishing. -::: - -### Custom Tags Details - -#### Asset related -| Icon | Description | Editable | Options | -| ------------------- | ---------------------------------------------------------------------------------- | ------------------------------------- | ---------------------------------------------------------------------------------------- | -| ![Hierarchy][hi] | Define parent hierarchy of the shot. Usually combined with one of subset tags. | root, folder, sequence, episode, shot | example: {sequence} = name of Hiero sequence or overwrite by any text without `-` or `_` | -| ![Frame Start][fst] | Set start frame of the shot. Using `"source"` will keep original frame numbers. | number | int `number` or `"source"` | - - -#### Subsets - -| Icon | Description | Editable | Options | -| ------------------ | ------------------------------------------------------------------------------ | -------- | --------------------------------- | -| ![Review][rew] | Choose which track holds review quicktime for the given shot. | track | `"review"` or other track name | -| ![Plate Main][pmn] | Main plate subset identifier | subset | `"main"` or other | -| ![Plate FG][pfg] | Foreground plate subset identifier (comped over the main plate) | subset | `"Fg##"` or other | -| ![Plate BG][pbg] | Background plate subset identifier (comped under the main plate) | subset | `"Bg##"` or other | -| ![Plate Ref][ref] | Reference plate subset identifier | subset | `"Ref"` or other | - -#### Subset's attributes - -| Icon | Description | Editable | Options | -| ------------------ | --------------------------------------------------------------------------------- | ------------------- | ----------------------------- | -| ![Resolution][rsl] | Use source resolution instead of sequence settings. | none | | -| ![Retiming][rtm] | Publish retime metadata to shot if retime or time-warp found on clip | marginIn, marginOut | int `number` frame cushioning | -| ![Lens][lns] | Specify lens focal length metadata (work in progress) | focalLengthMm | int `number` | - -#### Handles - -| Icon | Description | Editable | Options | -| --------------------- | ---------------------------------------------------------------------------- | -------- | -------------------------- | -| ![Handles Start][ahs] | Handles at the start of the clip/shot | value | change to any int `number` | -| ![Handles End][ahe] | Handles at the end of a clip/shot | value | change to any int `number` | - -[hi]: assets/nks_icons/hierarchy.png - -[ahs]: assets/nks_icons/3_add_handles_start.png - -[ahe]: assets/nks_icons/1_add_handles_end.png - -[rsl]: assets/nks_icons/resolution.png - -[rtm]: assets/nks_icons/retiming.png - -[rew]: assets/nks_icons/review.png - -[pmn]: assets/nks_icons/z_layer_main.png - -[pfg]: assets/nks_icons/z_layer_fg.png - -[pbg]: assets/nks_icons/z_layer_bg.png - -[lns]: assets/nks_icons/lense1.png - -[fst]: assets/nks_icons/frame_start.png - -[ref]: assets/nks_icons/reference.png - -### Handles - -OpenPype requires handle information in shot metadata even if they are set to 0. -For this you need to add handles tags to the main clip (Should be the one with Hierarchy tag). -This way we are defining a shot property. In case you wish to have different -handles on other subsets (e.g. when plateBG is longer than plateFG) you can add handle tags with different value to this longer plate. - -If you wish to have different handles length (say 100) than one of the default tags, simply drag `start: add 10 frames` to your clip -and then go to clips tags, find the tag, then replace 10 for 100 in name and also change value to 100. -This is also explained following tutorial [`Extending premade handles tags`](#extending-premade-handles-tags) - -:::caution -Even if you don't need any handles you have to add `start: add 0 frames` and `end: add 0 frames` tags to the clip with Hierarchy tag. -::: - -### Retiming - -OpenPype is also able to publish retiming parameters into the database. -Any clip with **editorial**/**retime** or **TimeWarp** soft effect has to be tagged with `Retiming` tag, if you want this information preserved during publishing. - -Any animation on **TimeWarp** is also preserved and reapplied in _Nuke_. - -You can only combine **retime** and with a single **Timewarp**. - -### Reviewing - -There are two ways to publish reviewable **h264 mov** into OpenPype (and Ftrack). - - - - - - - -The first one uses the Review Tag pointing to the track that holds the reviewable quicktimes for plates. - -This tag metadata has `track` key inside that points to `review` track by default. If you drop this tag onto any publishable clip on the timeline you're telling OpenPype "you will find quicktime version of this plate on `review` track (clips must have the same name)" - -In the image on the right we dropped it to **plateMain** clip. Then we renamed the layer tha hold reviewable quicktime called `plateMainReview`. You can see that the clip names are the same. - - - -
- -![Reviewing](assets/nukestudio_reviewing.png) - -
- -1. `-review` suffix is added to publishing item label if any reviewable file is found -2. `plateMain` clip is holding the Review tag -3. layer name is `review` as it is used as default in _Review_ Tag in _track_ -4. name of clip is the same across all subsets - -
-
- - -
- - -Second way would be to add the **h264 mov 1920x1080** into the same folder -as image sequence. The name of the file has to be the same as image sequence. -Publisher will pick this file up and add it to the files list during collecting. -This will also add `"- review"` to instance label in **Publish**. - -Example: - -- img seq: `image_sequence_name.0001.exr` -- mov: `image_sequence_name.mov` - - -
- - --------------- - - -### LUT Workflow - - -
-
- -It is possible to publish Hiero soft effects for compositors to use later on. You can add the effect to a particular clip or to whole layer as shows on the picture. All clips -below the `Video 6` layer (green arrow) will be published with the **LUT** subset which combines all the colour corrections from he soft effects. Any clips above the `Video 6` layer will have no **LUT** published with them. - - -
-
- -![Reviewing](assets/nukestudio_softEffects.png) - -
-
- -Any external Lut files used in the soft effects will be copied over to `resources` of the published subset folder `lutPlateMain` (in our example). - -:::note - -
-
- -You cannot currently publish soft effects on their own because at the moment we only support soft effects as a part of other subset publishing. Image is demonstrating successful publishing. - -
-
- -![Reviewing](assets/nukestudio_lutSucess.png) - -
-
- -::: - -## Tutorials - - -### Basic publishing with soft effects - - - - -### Extending premade handles tags - - diff --git a/website/docs/artist_hosts_tvpaint.md b/website/docs/artist_hosts_tvpaint.md new file mode 100644 index 0000000000..19cb615158 --- /dev/null +++ b/website/docs/artist_hosts_tvpaint.md @@ -0,0 +1,208 @@ +--- +id: artist_hosts_tvpaint +title: TVPaint +sidebar_label: TVPaint +--- + +- [Work Files](artist_tools.md#workfiles) +- [Load](artist_tools.md#loader) +- [Create](artist_tools.md#creator) +- [Subset Manager](artist_tools.md#subset-manager) +- [Scene Inventory](artist_tools.md#scene-inventory) +- [Publish](artist_tools.md#publisher) +- [Library](artist_tools.md#library) + + +## Setup +When you launch TVPaint with OpenPype for the very first time it is necessary to do some additional steps. Right after the TVPaint launching a few system windows will pop up. + +![permission](assets/tvp_permission.png) + +Choose `Replace the file in the destination`. Then another window shows up. + +![permission2](assets/tvp_permission2.png) + +Click on `Continue`. + +After opening TVPaint go to the menu bar: `Windows → Plugins → OpenPype`. + +![pypewindow](assets/tvp_hidden_window.gif) + +Another TVPaint window pop up. Please press `Yes`. This window will be presented in every single TVPaint launching. Unfortunately, there is no other way how to workaround it. + +![writefile](assets/tvp_write_file.png) + +Now OpenPype Tools menu is in your TVPaint work area. + +![openpypetools](assets/tvp_openpype_menu.png) + +You can start your work. + +--- + +## Usage +In TVPaint you can find the Tools in OpenPype menu extension. The OpenPype Tools menu should be available in your work area. However, sometimes it happens that the Tools menu is hidden. You can display the extension panel by going to `Windows -> Plugins -> OpenPype`. + + +## Create +In TVPaint you can create and publish **[Reviews](#review)**, **[Render Passes](#render-pass)**, and **[Render Layers](#render-layer)**. + +You have the possibility to organize your layers by using `Color group`. + +On the bottom left corner of your timeline, you will note a `Color group` button. + +![colorgroups](assets/tvp_color_groups.png) + +It allows you to choose a group by checking one of the colors of the color list. + +![colorgroups](assets/tvp_color_groups2.png) + +The timeline's animation layer can be marked by the color you pick from your Color group. Layers in the timeline with the same color are gathered into a group represents one render layer. + +![timeline](assets/tvp_timeline_color.png) + +:::important +OpenPype specifically never tries to guess what you want to publish from the scene. Therefore, you have to tell OpenPype what you want to publish. There are three ways how to publish render from the scene. +::: + +When you want to publish `review` or `render layer` or `render pass`, open the `Creator` through the Tools menu `Create` button. + +### Review + +
+
+ +`Review` renders the whole file as is and sends the resulting QuickTime to Ftrack. + +To create reviewable quicktime of your animation: + +- select `Review` in the `Creator` +- press `Create` +- When you run [publish](#publish), file will be rendered and converted to quicktime.` + +
+
+ +![createreview](assets/tvp_create_review.png) + +
+
+ +### Render Layer + +
+
+ + +Render Layer bakes all the animation layers of one particular color group together. + +- Choose any amount of animation layers that need to be rendered together and assign them a color group. +- Select any layer of a particular color +- Go to `Creator` and choose `RenderLayer`. +- In the `Subset`, type in the name that the final published RenderLayer should have according to the naming convention in your studio. *(L10, BG, Hero, etc.)* +- Press `Create` +- When you run [publish](#publish), the whole color group will be rendered together and published as a single `RenderLayer` + +
+
+ +![createlayer](assets/tvp_create_layer.png) + +
+
+ + + + + +### Render Pass + +Render Passes are smaller individual elements of a Render Layer. A `character` render layer might +consist of multiple render passes such as `Line`, `Color` and `Shadow`. + + +
+
+Render Passes are specific because they have to belong to a particular layer. If you try to create a render pass and did not create any render layers before, an error message will pop up. + +When you want to create `RenderPass` +- choose one or several animation layers within one color group that you want to publish +- In the Creator, pick `RenderPass` +- Fill the `Subset` with the name of your pass, e.g. `Color`. +- Press `Create` + +
+
+ +![createpass](assets/tvp_create_pass.png) + +
+
+ +

+ +In this example, OpenPype will render selected animation layers within the given color group. E.i. the layers *L020_colour_fx*, *L020_colour_mouth*, and *L020_colour_eye* will be rendered as one pass belonging to the yellow RenderLayer. + +![renderpass](assets/tvp_timeline_color2.png) + + +:::note +You can check your RendrePasses and RenderLayers in [Subset Manager](#subset-manager) or you can start publishing. The publisher will show you a collection of all instances on the left side. +::: + + +--- + +## Publish + +
+
+ +Now that you have created the required instances, you can publish them via `Publish` tool. +- Click on `Publish` in OpenPype Tools menu. +- wait until all instances are collected. +- You can check on the left side whether all your instances have been created and are ready for publishing. +- Fill the comment on the bottom of the window. +- Press the `Play` button to publish + +
+
+ +![pyblish](assets/tvp_pyblish_render.png) + +
+
+ +Once the `Publisher` turns gets green your renders have been published. + +--- + +## Subset Manager +All created instances (render layers, passes, and reviews) will be shown as a simple list. If you don't want to publish some, right click on the item in the list and select `Remove instance`. + +![subsetmanager](assets/tvp_subset_manager.png) + +--- + +## Load +When you want to load existing published work you can reach the `Loader` through the OpenPype Tools `Load` button. + +The supported families for TVPaint are: + +- `render` +- `image` +- `background` +- `plate` + +To load a family item, right-click on the subset you want and import their representations, switch among the versions, delete older versions, copy files, etc. + +![Loader](assets/tvp_loader.gif) + +--- + +## Scene Inventory +Scene Inventory shows you everything that you have loaded into your scene using OpenPype. You can reach it through the extension's `Scene Inventory` button. + +![sceneinventory](assets/tvp_scene_inventory.png) + +You can switch to a previous version of the file or update it to the latest or delete items. diff --git a/website/docs/assets/hiero_createUIFrames.png b/website/docs/assets/hiero_createUIFrames.png new file mode 100644 index 0000000000000000000000000000000000000000..798b3efb797bbeef8b6f6e9215d6b533a7e97b25 GIT binary patch literal 40766 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 literal 0 HcmV?d00001 diff --git a/website/docs/assets/hiero_createUIRename.png b/website/docs/assets/hiero_createUIRename.png new file mode 100644 index 0000000000000000000000000000000000000000..3c02254559ff27f3b357054282b643df8d62dea4 GIT binary patch literal 30586 zcmdSA2~<+=`!7oMRV!1QwM=ccvb3_Chh{5NQ!_KgAyZ35G!t+DDyPb+vNUsQG6$S; z00)%Pk{l@~6ci#;6hv?U5(MwY?{D~@_5Yu9&pGSfyUyKfvD|Jp@B2RQexB#^44?hz zvaOZU>aD9mAdu39^Jg4Dpk-VTXobp3dEm-|1K1b%vnJ+H7Yug0y&tHBgZBBwf zA5#<;yySrYR|TJU2?c?an`NJ6L}m);2UmN8Jr{ zSYL>M`K2gkR4MH^>P;GAg(MD~`L#Rk$l&0dbRTm3H{6(Y(QsON2#mgx!9qku%V;K@x!VI~O zAk``@@Q~CBF--L215uBV-0MfX?zkvHH{{)n=!v#LF+1Eei5~Y zmJ+*k`1B{J(FhU@p+K6aJSEOl;;Swq9L?uXbFbvlK1s-cr!x zi6SVstN=Y%i9R9ef-d^v4gZ$Kx@McEW>FcE6EOX5@D?C3oSy=N$&HZ_FQQ)yeOSEt-<087cKZC=|Ve83(0sEL2ond^N76b zE=llMNDWcyo^j&)3~%o#_?F)5j5?%yz2Wi(vanq1EWg9^LNzlcrLze* z9O_;MOBa4TRr`6?r~BC|F8z-c`ZSV5h$Q$o3inhm=H@zja2q@%zqHWlqG-BAtI*j) z+R&c@7N_*-p#{at0ank z9!bubqZp55ztL#}kK^gl@7g&YGggqui~(@mVg=2_?XiFqkRptnKuNjwmT$2&(v5wo z?v0{RMq@n8ud<9V)&AKV*O}g%PFUE}&^70Ai+UbuXxZ#Ne%6fSfNtKin6-u)XpqVx zyQbx&BHDYUDA#VH%*I^ae~lFweTJlU^9=N-2x3PYKEcd1U)qv;%?Uj+@mR!8=_(-1 z^y4t-g+V92^CIGOcDN9pxRF-aKDM{G;Rk&UrTMT1p=ri%jox<>g{<*3H8K^O| zr)*6b%%jn~WZg_d`m8PgMQ*r@q(9x=o*-rF762MZYBa^LoGswzB+a>j1q8lF<7r8o zpE}FYa?Uo)7Al74WVDZ=ErBQb_WrSq<9Vk#p4SpZa8)B%gXLxRaoqvVb`ClJ5hJ4# z{hIe83ZqT*tz-?@Os9ZpCoJnJ$xMxPdzp(HFmpIvqx{RuWse z+JO1B-#DmS(`mOTvnpMk%`q!I~cq?5^WmB z-B=7^p;5h82m*riQH}iV{aem=ZePgLW4qu8NrS}9;XHZP>q~$x3Y#zK!P1xtXMTi8 zI2FjPDA20*Q4Z&$RU;mf_Lev%3=wPgyF}&mXw?j@*Vt9xctf%)dqbICEoqZ%_ZHIM zKG8h>NuL2pqc6lSrivnS-5uejcvs1w7V3gzJPGQ={ez_6SiHY^#GEcT#PY+^-bfQV z;RPgmK*6GTp4dwe8!jH8xn6HmaM1U@=pjlLJPI;;tegAcG3NwF7ZWFbm3I@pSW(=t z zRGqZ5R!oN%qinmy%xo2z-Oua!W*u1V=je+qta!*M$)~e&mFiersUfou9mY0i4Rim% z#CGrN(3*U6k+44xUX+VQTt)IpQ8Kl`G&7u zYm$G^KN0c$9!vblC>$mBz|j9hTINgV7X|sfmXdkH-ZJT^SY~P+7j6ydyRp`y;4Lk?Gc%>QE!*P>=Y0loTQnSa{k>uER7Iuzt4*DKKj>t@h*o^v&{`yi6nm= zEn)0E#f%lgLg;?%^;M%y7=G>~ntX~(>5aopeV)Y+h9A@4k~U%YMQGD7t?eDTMk03P zcE1xWd@i5*B?|qMel$tduJ2G8zPRyj?Yb)RB5!ALdkLY6fa~p1l{UV*9T}YHYUlAD zH=P2-9a6&|g{Wbn3oz%~J&OE=`QS`dJ7}KZND3I-Qa}oSF_I!M(SLmEbz6Wbjo^>K z2^&OsL9L)(daExNQxI4+t6!{FnH#D1qH1tT70(@Fn?{wMK1(|7WjRB$tSd%XdZKI( z;@|Pj`x@&?bti~|B*DV{x`8=gW&^l7Bao0U@{Kf%hMIS$j6`r=e-LtqoY?H?JYq>Q z$~&wVW|q3Y#PYZNTO0WP$~;O#GUa+y6Ob=oZwTOohl1)AH^(U3iO=# zOV}`&aFe}d-Z#NrpOq)Bqm*qFf+ zDCDX7bL&v2kLk5gUm9{y>(eqKj*2ts4U&-=n6-+LK=@2_nlU{ovi3*jokF5&d!-dT zT~n=Atg%Fiotn(BR82laCLWHyn+M4=xHK^J>cJUG9q>%!!X$|mE!6sS3et+ELcHXIjj#-`Pm zHtQdN^Y^^>-b>tX0uQk)3gpI!mxUfB^7?b1>x=x!N-Qt)3`w+i;&sB${tf205LE5- ziNIl$xvg97A#PETvL3XMR`V4v!$P+-h$&FQY_Yq>{G)mz=LIF|n>CGX@RM|TH80Caopnf}MR z_2!gdef$H_GXVlRejAGmT;wf0q@JNyHzFb&OUk~4Q7vE(T%O|ydN}C?iusMq$C~Nc zrwi>O#*Al-TetNriO~g%>>-hXA27b4PsK~#0TERQYMJFOOC=v>qU1f;B--02c z4=Nq|EXd=>YnqXv4&1nxPgx0;*_qsF2P8~v75z!tU)~@vtt;XyGLO~kMy{F2;$Y+S zUlt_!o*->`h%_GEP#xK8@WMM6W&)TZght+5%jxgETpqxjfW`*4fJflghB)1oUcQCG{rs#$UdWa|{UWZX=U* z$n>2Jp%t$DfRjVWvt)>%tGP-X%QX4wU~z>=|E*yeK{AW$M(=WUqq`QdUo?D=e$g<; zq|Cm~qzLDG@~4%KZepp5_VURn=W)StczYZb|03vgZwpUs%~flBF!P9FelfF6Q?>eQ z0JN=uxx2FTceqN5b|1qs#|x1;^E5}tyMugb%t+u{QN-;1et(E8=2MECj_^ft`kxP#Xv{~A`cG~B|7oN?pPk3`AI zHu<^13-kVSkzLjHqzk@aQP>8K*5rl*EGrt?qvKfp+7|7YN&VP;B+4=8tvU?~LCI z&S#@Vje_RI1M;9x+m^zS#8qBEpl;OBC>ub#BNiv7H+7&*Zb&(IgrwK6&^Dct=7VG0 z`p(=(Avj}Tv1b7BFYC+hK7RWDnA3K38ZM_uHCmN5ap+B;=H?RfmYvxBcG;AO>%m?3 zYmNIDlArS@l;m&g<O@sy%NlemcKX|*xOm}mg907 z&s%Dz?t`#b@XZj1*4TRSHa3o73Pjh#Hgk?E9(?4ul_rY^B7R0lPk;jruDn|pQ0-Jk zzUoZYv(bK8)c+JWe2j9~S|8%E@k9JD@^~=mQ4RQP9waFlUVc2vyozG35hP~OcIJqm zIw3j}#Bwarb-A>T{YuN+|$UhVJOW2jaghWMhtab$i4)YWi%-3$<( zl;A5a)#kU|LjX=TXYjqBJ*h9c7ZpLxCpr2A?KS<~mtL8&zkQM^vcHo&iOR6BV&>h& z3QyohzUI`?1{@UXy1KxUteT2Tu06!Cipq|+!CT_svp4Wvn)&&Zk`HxiP-jV&)q;VO z@ggZ#1$Tt`jjnCxR|{DOES8uu%kGS{VHU%gU*iB9I9?y-+2RTBAS+(>)p&LXw+DEcc)!_cMq{> zJ*^os31WA?ojmvvhcQT%Jir>h1=UqGKC9Yuys~4^kGRcB<(XlF1Z$#E{UYkqD#3;9 zcM7b_>G==H%Aev{ITn68a+T&i1l33~XFj66>P_XQ82=w3BeUo+*tI=rXgwA*%B3{Pth)A2Ss(QrtU1_y&_+fiD}I)v*<_8 zco4oawM_&($@7S=p?I>5kP=u3(?e<0VV9lH0xAVTMMQJ`m-9^-PqrZDPB45AOq-Z) zs3Z_Br<8qY=YU}54M=IAo-a<3`fDXaL*-^9xxt(IdPsQc_^tXcLHWWXpLIFjKStxZy=gq7M+eI0pGBm?(z?vLEyTa>;Zm-| z?;Z>q*o@iKWwziQA6@>#xxV$pJ`Lx(gSSObDpSC!f*+~%DY!0RyJ}36-5`BJJ? z(dlQnY=oJxe#>}VH1Bdb#KB{uEnw?wbgfxiAOIwW8Q;HLLkb>_K5ae#n<|PNV=@|^ z)u-g$OV~7gX}nAa5#%6#ACumxRZxl=imYOE8d;e!3%!#O(ge+P^TivBcg7=nWLww_ z3+LbL_oKMw;r|$0H^LrT4p>mWEv{X8u(D?h4R-k(?Psbex$^Gei?gsJfP z5C`@%^(4_m``h*P=(%jf0ka{ehd1Rt?z$N|5?(#GLUszE`_@1?{W;18l7-=fE^-ZX zs5Bv$(8eVE4)Jo`4O@Ihj>?Oeb?<44c(Zr`-856doGf8ZWWW%pp$JfaVRkt6WSjhB z;&4H#NLe3ReuVviyLMQ~!QE((8`Ut=I%Qx7tqlFCK`l2F|5lh5(^(&|=r^a0#MuGm zDR;L~NmrcMvf&8^*&UyRDE~Sm+?odKktXtGP|*(jGEl)58HB(3f9N!W5-Swzy8i|G z+543C*Dsg%Hp4cYxj#!$)H*BOk3kxSunEv>Hq94yNp7|5+f$S+~xP4zWjK4 ztK)75LF`KC>z%4Ys(dc!@MHVsZcBq+`Tan=OKW~5DDn5qXgh4p)0VU+&yhQt)C(T+ zl_clguMUOF|gZRE4Wo?UE$-cb+T6SfGtTrF|x>Wlqw{r06`-F(Pa z67=;&1RVv-(hs&;5orJl?J&c~YicU>PFGTIWcVcSncGh&+h?AC%_Ii*{YSA4|9x3= zUH!X$XZ4~V534Cf31oeS{gzltiaD$0e;uBtTeB^W6gA+W5cApP=NCHMb(Tz*cN})%t&+UGMv-)3%?K} zD#&~+w@3q;nHh;J>)`o*$&kd0Ka}Yr!X6Xn#D)>#P|^$2G{fjJT4_Pxkkn5Qirja* za#*j2KAyGP*>Aa1ldG}`_fFC1DKcTQc)s%5jx3wuW|PFXcev3HFzk%_z+CBCFTd}# z>C-mUQI%D-mDY>wWxHNxGqH{b4S$VTYhAlYa{LkgFvj`xEafudM8bW&ASd0bA!BvfaeX z&vj2p(URBesz{cNVCM$OX*uRb>qorJCI_gO>&+$S^r8J{Um(Kq^}Av9k0mM=!Np~pIr@`?Y^0FFsuOyZEdF^V@%+h}8I2bP`(}%?VQOYRC!Y%= z2eG9?*!{{HAI*N3E`RU$Y;SQl^1wvEkB=?4^9ey&GZ)yx7k#-qavcw91BQ63QL(ky z_|=OH!)KP62`h+l>4dJh@Am;rU)AoGEEGItJ$Xo#3%ij1kux0~d{;~jV+i7;pVrCy z`)fh72Xs%mfI~c0&{`kC{YDa%TrIn$+Jcc3v?)D9B|v8^=V7@8q(~nsHrm!}vv%dl zosi7^Dx~Zky`$u(hj;9HZcVg#(Hce>EFdTU?vBWVrSbKRd_Uler4x+_12QjDa5+Y?lSA5bpOPU!*n;p>!2*r1~|KbkWLn+o0YAn1XJr3vVTl7o# z$t(EE>h%oa5TyN-_5eLS^!89(c{#0>gMoI#dK z17H46uduL?^9~}3csIx?Z{*bv+{!h&b@9}NpwRga`yspdtN!5N$tKup=I&wA__GFd zEv?_MHT((1unA6^5U7kcDwkKu>~g(nIrZe=NYLAhNa6KkH45}hp|Ce@kgopI5pJqV zE8+Bc*Qhhxz(N&=QKZHx0PlMkK0{O?>sVlePh}sYj>XX{u>Q0Cm_vQyZ9d(?s!yC7 z^`u*C`E|Lz$B32-9=mOXZn(Szj+<1Sd}u51M_u`|8?X*Tz&gg8bY2?Y z=)zm7m@=g?x>k9-{y6>0$*KX-?7K6jbW`?Sz?+{HdSm-V*LMT;iKrOEdm*x`_ft{?Rm#h8+u(s$keKmp~SD zPj07=$3tFDv;r4dCeo%abY4U@8-fJY{8)QKi^pU3eBzT;7aRAC_!bbNt5~~qkoQL z?lZlZF1@M$2TXx24;q7!%4St zYf9@o6`Qf6)qAXZbItj$$Z;}E%!U-D$MQ6#IaAJ9y2%jq3o@wcO1)~|{_4*$)A1H_ zJJdTEd7;D(yiM(3G7z6B%XCk;?GpM^7m5i1Qps%%!I4ommhNC{!32wE6QAoGM9%Y@ z+K+YP(!Y<=q&j0I~lre9OGb^eI93*L|mK~d$ae-(EjrCG5O*kD)2FsI2e1@5=G%cXMRI$#3=`UwSB7OgMNhT|cFBX6-^An7*+6Wqe2ZZ19=IT(j@vmW!kl%|KOHB z`_ZSBLwGGSq6GTPp?|xt|CwxODV6zS_h$Ktb^5UL-jDxIhGcomTd4-<+>wj-tYr(m z|JW@!bCIA9Iu|lO<6|0k-rIUA9*3Pjc*7 zEAE>rbQiz6u66tpD~Kl1(8p^-pnbf}3axUA+#y&?TU+{IFKHM6EfRA<24#K$j^-08 zR~Dy_s}C^yyGQj5NkuQ%?nZ%U2>H5ixMvx;uS%Hfgh#Zt#ZiZb*!gYpQwZ9B@RlKW z%pmz}vQu~CpQtrBGT<|P-GC@)ALoE6G^AE>q-pj@P^27?t>iHNq}zM@`i{vD`B_bi z#@A!E+;XI@j=tloZrG!!5F$3B?yX<^(cEj|F?EUaCLkbq=;a{vT28~wEM3E2*o%x^ zK*!cHRCkw^O1yY$E%VUTev~(hS?WNICSNWZHZCiBkH>euG?#?{m%g6-7zy+oU#YIf zO*cpWsYmS!n<|*??7NAz7zf<3gLzzuPJ^8{<{kZsMl}Z+d{}Gif(|J9b7MqL$AJ+^ zBu9reR77i;!f0`W&d8dfN#YyL7+HGQQ1_VPH{d;YrT#d6^$#QJ6=4EvYaY1C_*?&r zoD0mHln|=UJ|*b>dym^DO@`y1ojkre%j?O&z1A38w<#^{Qp+{v59clJ#$X?_ZEpR= znGxNfa;o)vrY^Zgd&{#|vvE{;W_O&=*V(Z)MT+II(NJfKz$mL>ro5z)!LiEGa#^ouYqT=eJAha6}l_4FSLaUZkH7CgT?QoJRryK*5U|~ z@~4yP7MelgKd<1$38qB>tZv3$Ea`kQBRjRC?isQOrz6Dg88s$7I+Q}Pnn6?vKClvi zG=k#qa60^lGK0_x=^uaT zo%p@~+TBf_1Es%b%F#p5Ycvaor6KRVecReudQ`%%@Klx^#4;h&(4X2FF9*$iFmi4+ zC2_+^grY`v$+&K4Xf0fA_kH}&r>FMOU}TSUXXkReDqVj&H1u?~CB`plY<)1MBqG}O z@NBYBFCviYcS^TZ`>QExA1+BQESCAU3hW@64!3@ho|SThnmN}8^bcOuX6;AOT?|fW zQ_tzwT+xvJ1RI>E-q9B)Sb~1b)zltjd%%=_3!0g@uh4gA{NcWf6*K$ETpbMEFg4Wh z2C!{_19)cOEs%K(eO#!g<^D{rpM*blZhvH|lRNL`seL&+V7S@E=LZdMb%#yWwRhH; z)p-TTU?`9Uj=|Bg zve(50|8N|SJ}&-wj1G4SHH6JC9!?OOubT19#s7r8NB`dAhTBYkr0MDc?i&rc7E4Vt z?;p}2KdLbBmuk>j!@u8Q7g0(N{Jq>S=YnMACn{*YeE-+=awlmAJ53&;&cCVVZT>x! z^!`-lkx*I5D0WZB9sAD@a&Q+JB}#tKLF>}l(N1a17N1*Vk^(1$-aswpW|e_AR;CMz z2|P`^&Sv#ZveYCo9@yi$?=jZB1)j@D>OctU28?I_b2rfZYdH(3x18iJy>eWlstCOGb^Hx6ct11b1rJyUjWGRsR zf$LZv47%{$^YB`-y6?U1`1`F(i@5(dZ9l#XPwe3SZ1Am@6sN0F-$_Hs*9oxjx( zO#a{X%I6Pr>YF1mML%wxxk`@V_~swRLoFSN(cb(?*fp4|xv9V%N+k7iuFU^BA~^<) znmwnriJ^4Kwyp8|ObpyCz;wvPkva6UteRrp7vSN@?zZUJ94~y=?-C|`a5*_jFr-lc zkz{4NZfLW+r$#fV0vq`?iy2Sd(Q}7U+Z4iQ5Jzfx2GAM%1`!Jb$S2Dmt=H2sSr^c+ zMJZ*2pOh6Afuy1D;_Rsk@KI|Pw=grv^mhMbStx-Uo(`*S*1#bz;}~SE8NGFi)Tz4- zM;WY>bwevD8Dy0ZbeXgpbuMU%?>PDnYk3HN<82B-1KZqZFWsgIi-)kekPj4pO}`Ya zb~BS*#;fl2yvH2SmPEC$}nsEe%(9laJ*bS(yrRIIRiZs zs9!`^C5wN@)t?!1;J8~szEUYa*;57lz5?Y?zNf5|_)7w*RW3=Y!T<2bl zqdt75z|jQom({1l4IIY>gI6#n_FY@38v0?VPX-Y);Y|cIT6<5nC8!V3@au0gaH>FC z$VQDfb_Zh8+jdG1XST_RW?$XH*kKM8xFo&an-KFiqb3mG4T@7W{{hL1p%Xhou zbd(kfkq4ezdohwzo88-z^wwosx1^NT558Houfd`jYK7H$LAl+I>Gh~0%$sXJY^UVH z-50!nXSd%3e`S`x?&|&My(=D`M3^;*z85~5(za&pKP(c^SW4IZY(@sxP{Q|(Q}6U2 z;o<>eYlzwzdS?)3llp-l3il)>Ue^Zh82(9*eFaW0IbGFbLpR#g>zzUcQmuCYA+I@& zoN{Y3SD-gxW1`llP^$z7d|8dGb@kwAD$( ziqzB!y(%*XWC-!zuRMY`_to&~S;GoQ!LWN>2W@V&(K5*rWE3CiTW**>66<-Gs<z&HKq$Afc$)di8XKCaaag!nd#($47LZuxtg`Peb}w)`egZi~Dp13z za$`W;4(}NEDC%=CyqKZhJkwTnoU66!N7wO&%hh2DUOS7eb>pr1+TG}spp;Duk233B zO`i^dHcxVO>%}LXds8YzIs*Ml^q4&MwOJqPBw|gW#?{ZE*REPEAg+<0sL}GDC_-m_ zg%>_+1OZfzrQL{PG$h{fD^&X`bCd7l7k;JzYzbgN8ZM6%*r!e_4NqN zc|WW0dh3!)mX*AotQ-3Dd#Q@^zuv@pqDAZU?YYC?Xx8&!DXRebj4zPzU6vW3CBD;J z_GwbLP9V(cw$Q_ur2HKZRDkX;2Po^7Pa|GsSTs(zsC)1DbiZ{ef0d<$){B~dZr>2y zmR~kIruAaW?ha}9{EEv-fIyb`VK^mVvKTx3!+65~Mv8$CKZy zEkiZ;tC^8Smg5-h%u_DIS(iQ1jPZFtVGEqee?Era@i?(~hn`%=@Jc#V=v8Y;eI3;-5TZ(xx&(%e&4jq*QzeCx-nuKWl{SatXg%2Z4fv-g!Bg8CiC$Wr3Q zTSZ8IH2(?N_PcfD>+dEizSWA)!j!G2eUcRm=NX+ovxQXq_=wAvHSbnLh8+U?`ZoAw zvV2r|7eKcp=3)9YUGo5-r-dVAmT<$gbqp(!A=LXOLyvIPF|ayGD#XkuOhi->PE+m< zaJ0p*Fq;g8-6;}@X0+SHO+jiZ&6!DR z;pjW71ZIZ%);CQ%0;__H6(OwZvVu^I--xUTr^LV0V?I?-KgNm;E(UnFlcJ)toHCTI zBl1zwHkuRpkXn!3Y#iavXxq0^4+20Q+W?fO{`Cy~Pjdu!55EjP|4rX^|2IvK9<3L5Os+%Qo5%sm_HHnLr^91^$ZE zm~dPDA5mg;Gj*X0PIH8N8F`0Qp3>L`z4+$Eb=9~=fVmOQ@YCxdvY+uVmvtd*GPGT# z7rZ!TF#RWI$Rg>^r82W(=S^sJ?l+ z_(=G{*pyWrUgIj86#9eKU)$8K6Pr749t6FnE0=Rcx8LQXS#g;Icv?Z()#6v}#>8#3 zibu+wh>>&;L4-#ebQoS{m zzq;!+!SlabaP#wGmG?ARM;Gv0=&%9Md8F(U9z2 z@xpS=c5cAXhhL#vs+_jR;gmS9X}ukFIcO$C9yEJ<_<~Tcliu~OP!!;#&?P*B6xnAL zcU_*eg}N>%u>x*ie@AaXU!33MyiZ^J;)S}@vU{f_`cOt#04obaq(K^UrJ80}^17=3 z*v<_YOLn$H9DjI=#pRmTM#NvWYuKv=AzyeFu|W9cQf0S#Dp>tra@PjBYx`7weO%dE z)bU~&KwIE!lH*oX5jeN20|DCV_zugOygR0cfv0k2$rFbij|Vu{L7}(N%^f#l2Z7rz z0k{1bv(Y_5B2>|SYTaJ;x5p~2tgvp_q$`)QGt7m~)8*(z`zUgG9=4dre=CeEQa1s} z1xg><)Ae%wbpd@kS&}$N&eEP(SXKbUhX7MSmSEic%kXa~`QIZj{C8*&mpL->g^$($ zF4IOgwm}@_Zw4AyAQx-s7LGhwq%STrMuPK}zh5h7UtV%XjqxJ*Lh!^r) z1y=a?xXaxiQV;tR@;6;}FjvXRjatmVy|ruyNUa$lC%UpG6g3h_S_KK6K$GQ036{mD zuvntJi8c5a?3#jCD0O-BzMybU_ti_8Uy%8My(l}K*G&+t`85X z0lQ~ovomJZt4V_4j$e{HrWhe*qlIonkUlfG#zWwrEOcveUccVST?KSFuE%^<^KLIz zb7tZhh-qqx+(T9p&~3V1`425!JeDjtX9iN_K97f=P{ID#8f&~xk z$|2@NR58F{(7pY}*$jw6-=xwNLF9MUls>2ZYf~jdb%=AotH+7$9BJXFhfPqrdr=a5 z->x-(&TYI%ZT2kJ|5c;HusEBdFL^9xP&nyC0=KT6E4ubWDRA!@@cCBc!N9WJJwPGk zHJif;+DpAsq+h$gSj+8(;alu00X?9lG7yJ!7FyQ6_m~;FSeAs)3Z>t7Rn5jA>Tx;w zeiUPpKIl@jjB>cWd_^sBc+Cru=AgQpK0rC_9PYg6?m58qYMAM+Pf(QSYnXdqVjZ1S zaxyv7jC`y~{rQyjh^jFqzG_&_Nno19EO7DFc#AQtp|0Ii5i-Dz--#N=J>#^odv{RC z>_|x8MT;{^gKMV(CkCOSW-C9PHKGU1tNs}N)w^G}Z_d^U-9rpyS{SW43-9rxt^}o; zR5Kv&0sNg-2%h!xX8e5Rk}jpW)nyJ5T_p#B0um^+t9sb7+HMXmkY;n9F3mkE>1+h1#)0cP zzG-d%?S&ULNA4f(+G@8-_BO*gQ2S$^1;jQCVO2TB$c?{11$~3go}qSp1tkBb<35aoyFbuH z!_EnNZ9+1uJ~oL3`e9~9S4lyNKA`fOvO;OX&oOs;90TJA5cv*Y?W;SK&@{uN`QzPP z!R?c|51Z$gSc6`PGZ*`NjfayT$bId<3{HnCLM=cbqdiNbe2Rgig^&HSARn5) z$8qjc`n|$~I$d*_XPQiJP!|gFfZo!VJMsS%M)k8T+_TwKBZjueza2a!(EAu59S!(5 zCGQ#1jht!@AGAOk)7=jl)#$q*EX`(;OEfGUah(yWcvAPMm5M|nYc4i5I%Ig{z%PNW zU6$=gZNll9>FRR^D-E@Pu691<5ZqYum~#B{FhIm3rVn(EvOh~<$GlaVsPdJ{!lXXL z;#Jd9k`5QBpw-}kX5dNgQ_6W(_h_~$E2;;Kg{RLZY4jZr1MAczmW{^2eSHI$3(uQh zYMc9*qN$9-y-`oE4;Hj(Y06Qp^|^1omw$R7BYbv|f_;$)LgCe|O?i{Sdo?U+4R51+ zkwOUh>kbx_uuc+Wv2l0$$ZT6G_lM1PF6K}rvZBO8v+fNn@`K7}8(0pD0d^QG!>sRc z!Y;eFb-Qdx@+%WnQXCw*auhYNmw|je_2B_6YUO!_8J^ISdI@2rrP)0fADx!t6;BjU zeKOjGV-C{TKL^y?hP9hCdP-K@lam<(_%DN%`tZzv8~1{~ z(DjK!O1Jl((Wla#6@pAl=p5DzLn+`xW2D#}9G7jA?qNWJgl}BTE9l$fv zea2Wbuo%fYJJR{vx{+%D&@f)Ek+GgC&mvZQS~9nnhyE)oX9LwC!C61|DA2th8Ao~( z^Sag4m-rj+)&oqadq13%f|lq&|4Urv|C9> zqvWKA`QXO3y~iDfOz|6}AeVBz+@fS3zDJ*#QUKU}e0t+> zac#NT%HQ}WdjT2MWHOq>8Q#&LsWxT`PBnaFHFd?%Q5)+n7)6f4vXzNCsQJVAp7dJ1 z@p5-3_B0IO^+sI!)-sCKn5t;J3=cBpc+-`tsrr&G!Vx_~{MQr5D<=?RZkxM&MuWgV zB0vSpWFBR%xG;43AWV4fvhRwctA)ojs!F`ZKdcyx+Wuq()xAQ%n&3hrh{l)Uj#`>c z5f5fAA;g@}UoeVjn|`}t`b?*Sf`%Z;sVuO-2%qP@DW+0M_}~t}bK8FgFyU;2(7{@A zRZ0})cVt?=`zAw4M zoY8qt*P zX&62+Jf_T0dfg(!$R6L*hnTX`iiz8T^%vL}OE=TnC!!^w>By$i45g!J5&bH|rX66Y!T)>?} zH?^_)gO;y8!*L|r|Es-k4~Mer+n#Pk%BE6rC$xD=l1;gpvTbvhN|F%SOGaS~+039Z z%I+>nrEIc|lub6-4Q9rOqB2O?&lpW&GRzDHgE8Y>Gi{#te!utmzTN4HzCY@? z4#v9Hb`vm~) z@BK!%Q1dkM%~6Wf7e=~@$v+9px5kuiqLZvAY2LmbF3)V@oevt&j^`X0XgB> zd`>6nw7ZW;brgTvF+vP-!dACNS`-%lZ<#oL0$+XCsCk#&EJXGM`G_< z$R4`jmi5&;(xSMxB?#C2Yr^%Pf?#Fev(S$!`L7zj6)O3sd6ehMFl#>u#gH}TTYf_3 z=Gxj`?DknkKZqFIv8mGZ!8!suh1RUr7w(X4wc^N9ZJHvn6f5$PP!yF^jr$q4KKeVP z3j*eB- ztnjn!r%u+B}hw=kkx$lSHCI*Ks3Ugra-;vm~M%+1M{?@J~G@??-P zye)ILZ`vAr@uVGEUS+&%1nE}fR*e)Ra>QI~;yS<^W`=WPo8Y;1ce{=uFmV9b9t(kO z^mgPVU|#y!j)$ps@mhIUYh16T!_)*t+y!Y`TzVpTz=4^$Wk$Im9ylRNny&5CL{ttG zLP0PZ*iwk=yZLXI!ndOhu_a~UxZ>|X=+CRx*Y5&hYYp^L?_1ow4K%fimMvRBoS76GnT=-6zntw}!{k;cP=MDVpkx{`TBJzC+a4&sO2o_#37J{N4MoS_z$&y)4Z!D>^#PIq z;dY1*wzA3twoWIMxct@B5tS=hac`}K+*9Xuu*Ry>^GV&JWTVt24Eg3FpW|B3Wm9`! zDZP;07>#^?l14&OAxRRVv4b+Lk}1CY3_efGKSm1o6bdwRQ=inezMmS3Ph&qFZis_T z`7VEZz!&sruY&{4itNAxa=lQb`MxTHHCc}I=fzIchFovM;Wb;O5lYqX&X7+=`^>SX zt|S>t(LUnZlo}New+R>CxW0(@6gZ22Y}d<4+>|gicqN7b!*RQB*!J|k`W>yR#3lyZ z8{qnNM3ve)TVtXpH*>Mj57M5)ZATedfosd;4?l%{JhCu#UxsJBIvJ1_X?Q7R z18fvh_F0Ig(WE?DxPw#MO6wWfNAt;#I^G}y3|PL*KfPiYOkwWt25yvfIU(H}hDdKM zUcTvN-t*c{c79$3J8 zm|_n|--E}&C?Xrpt}rnl9A5edJ{cl}1mHeYd`9&TfBaeX$4}fwg)}ipsEE(e(K3cK zd?P7%HJ=y3l4`-0E}8|5YW5oFPh10SBFXp4wO*4zKo_Xsvz~gLi!}k-Vu-c}*m0(S z3!xJ((OQ}@sj36=fX~i=*s}0KsGWaMctlBXc@*%-hXC#_2`_*-&f>goep40+pS&7F zmxc_3Mm@t z6X-6rd${Y3xxl)rLSdm%?YYB~<&5PW+tcxHz(#~CAMLhK)b4B-R{ z@0zy9+EhDl*wAoG{;((Z%>l^UCK8}AIs0jYLxh|yo@ryQ`=qa5}f!&V?M4sOkv{mo9| zvQ1>;9{2#6#KQP_?xh(~?{pEnlyxeQ@|7KTzsz=epbT(a?54(p74f(&>te8I!_YK1 z-&FQjpN`&&s6?VmVPQ!MByfad7ZfsO#|R<4#_rKsEH)6JoK=u#@cs#@?(ce(`47t z@_4bP{hI0N=s#0RjOF|Vp=sF#UZo1eDeo0uObEUK?^h^{C#iywytYUxTA*$m{EQ* zShGi_aAh1J33sV10y?_F?j#9}L(RLoK_#F{k5SqnVf#b*7^K2nqsQDUVBdvIOoyM$nqJ{iKokwG2F=*4L&F=B$G#Fs2;{+lyb@*p<}6I}_MabG0c2y{fEI zI53_57<~|2iuQP&idA{txv!pxT_0NrGuaq;UWaX3{B1gvp>Sd=mFJ+*tyjUImV}xQ z_&zTZALK1698&r1QXZ{19xWd{GIPkO1Kd5)EE+xU zh;asMM)<`KChzuw>MKK*rqJhabP)W$aQdKkkuBlF;8=5VeWHHb9bP>l(711?ed$yR zoDR0e$>UXEYzUnC8a*a%-!Ps-Qd!rQ6}B6Oo2=NUBb-q3@zQTdgQHF5Umuhru_2@7 z3;al0u)T{!z%PnzU~xk^#2NR+0$C7sJlCOX9yh;9Z8|R@j{owUz^@ zB`>YXB*FeIk8a824u(K0q;1w9;0MQbD`+TKn!1sDX4YQjOf`+?3vqW9PH0PM&o_sl zNp0qaYoVvXwz@C|3OOu%yFbEX+MHiOG2uOaP);4NNTmELqN#(h{_@*afNdg=(NBPd zK+dFs>?rJqiTEEjk@`#TggC1PG&28Hz_o4!LW_p^c>`fTG~_9xStnOP?)W~0B#YY0 z1MsS<1ku*#T09l8U*lT^$aEnHul%t>=x|P`3D*`O3jH6SboQT-KvPO{MeXy&$okN7 zwTI@HO_c`pgmMEb%5M0Je~KXhtK9dya1@P;0)QjG0)S;sJ7mBNs9-FudV;@Ak%b8H zvgs#YT3_tB6$R*K(9#5`G)C*ZAF7aK@QEq|ISUcK@F3Sl95L*;Zo8gY)5ph`Q1os$ z@=U%k`gg#iK5;c0kex4ZmBQTI*wkyD1LPGAr-a{drHp9DotjMnbKzs8S-&QV%qy5~ zQbG)M<)IKR1^cX&U8F@}!13RG845s92(O?n`QY}Vdul$cxhY-zxL$xcW$`)7fEFcx|0V*4C6OQ}WYno&To4)RqcRxBd1Q3xWJ9IWVIm;dQWUD!?s zUoEGW6^I$GUhV-k6hBCDlnabPvo{*9+fB}?Nh5T^pwP-xSt%H-ey@+!^?u6AydlBY zkAYV~E_~6Cc;|AnF_Q`T{B=K=H1-ms25e{EZG{|QV>ppqIeZTj$Upi9=wQN-#VsQ^ zn!B1Rcg#IK+A$_@wvRZ|&-1a+Aa>6oc-$L0vP^Kv2oe)~=RmVrmt20(5FLCm9 zM%w0nMfOApBZ}w!@1|&b`XP6hz|l7nfHVDmtj%t3{7axx{edlEw`w2~kUJ&cHO2oU z^0oq!B2*HSe%K{X6^aMVC#C`wfz@u1UJzb@dI;ZXT)T&m_>~t80&Ig=%l;sWqY=Un z=~{p1f}lAuArN+*`%e6Ta#=>$zjMcaq2eJ|(9B_Jo1aYc|2F`NR{iZI#yePa$GuuR zJCk%yukdP*t~%$+@QZ}nD|G&=09^&C9UUrf$>}SX@m;hk$$j^&4spUK4KW|o_o_dF zMmX8qs>cgu33euX9e{t{YZDOod=}^S#XZNqhCeU4r1;#okdBJ!a9bbdvmBDxIC&$q zq&1WMhfQwhUw>$clcfej7k4Z#bc}mbLvI;qL7z|J6RtTz@`M8;z#mMYd*5V33(-bf zXGjh6N10Aq%IgC9UwOv7vaw&*n4O7Mo|%nJh-*W+LIL)S1E1ooS);L)-gtnvH^&QO zm=-Qbl5Cm}Av5}d2C;ai53kP4AsMO_I)2>pgGw;B`*5g$v#8&GD5W_ht+!U<>=UcS z4CKaZgt_jnZEl`wT60~qsF+8YuZ(SFDT3g8ojOs^S<`uHagjRx&S6v5gV)HR6_QZJ z)9_^5QMQAA&GE<}Zi(`IldK9Xrn0=mcfeRCLH^c&ucv2f{qanbNvzhlNN;xsi5T0= z39U>6tIg>q#CQ+*wUJT7h2)3P@Ua>f1SVrZ5#h5WZ(z(1e?au#CtByJ?j~%QXSCa60Ssb)Gl9# zn7t70zvLGU5C(rehwbeAJoRPDru)No?uF|Mlr~oo^Pq;?!XLw#*}1I-$nM2D-1UBI zd4$m|*i12M^s*y*tF)K@=Yb<9Wi_F_wh!RK(oT5^W8yt#&Z$N$S5SM>jVb`oy9m3P451d}BUp z*}1FvbWkXLB&P^kVrtT%!N;wAL*aNQ*vxHhrlTm;kKsrCdC1xQwy*nNUQGx`_qT){ z;Y~ZQ?c`iGSy$5=;Hhrpki6)X)r1dNH&awqgpKQnBlu)$CbSclGbNpIw7T@UheY{V zi3oFUI*9os1A5x}?O{7!7rMtee(3AmOBGkzNPt`@&-rlbkrpjv&_=0q!4Yxe(&EWr zaQVsf^Jo2;v0_gIchVUC7P7&xZRSrs4Y8Sw{&bnj@!)L#A+A3a<65KaW=G-XB8>we4|T`1`o|I?M{fSTMC*AI2i2EHhhmi z*=2)#v+XX7%yaNh?J~YKs2Q3$A@LjegpyZ@`8&O%P9GO9J5{?haUN)3>2L5YYsT;N zj`&)Q5WX=v0<*$p4X$pGEwJE+Dw`J~ zE%5C!ej$;SI~|QHc^kJvo1~mW%i=t>g2f*`c6uDT1pI9~p>Hj^Vo&qTM%*%XSH7Q9 z+k?F^f7Ga7yTS*vP3s`hjZoY2IJ@|rab}I96t{*%de3}O`=TTTZA3)9DA~=tvpDGO zqN2RBRP!pjzs^51x2&Dw9@UY&9()UW*vypD%`qOT!2!F=8qTsw6NmNxXJGc`olrEJl^V&YM*sO_nAzq;P9rxL4eF^ zdgTy%oaOIcZCI0P8dsk?=jmpDEz!aRed@e^vjY0<=`^XAIS7jC9ae!p&z7 zmDLtCbr&JQW?X$?-T5aawAfp2Sq}~EuXLQE;Uu%wK7dj>mC8oF-NQm&F5?u_`CHOqDUMO1k%Omm z*nv{)Q&wEzSZVKhTgQl9fecToS*!Ddc+KJiA67JsSqXbtl^UXzb)_d`DI}#v8j@Y| z|B{;kKEB&q@zLAZAT>!f;xIhri2NV$RQrs9XTpmb&nsAvU=5LHq{Ld`04Zo!vPC;r+r# zH3-=&TrWns?_gN`xTof8Qkwk!2#=;3WF3g~>D%bA%cS;{*OliuhxX$3>X6N5A*%8I z?7+ld(LYP?-S^t!`sb-^zH_TlQco%~}|D~)&+|BPT zeYuJ1%4#*>P=Doo3m?~v3f~>@|_ zDeHpS@4m9Iw0CtBeI34zN2j2PsT&}LEru#~%nW*)<#En$q#BF`uo#-mfM*u>Cr_WY zBp=hnO9vDfru(P0zzF1+$>yAO-+LhXUMs|bZe+4YERcRzf5-UNOeQcoM`I?v23 z!aeQijW%A@anX`&#r!K(Tks*)_;TbSd>|_&6{`j%ucz8={8AHZ1!M>xu7%SxqV6bv zw(Z5E&yH1_6L%iX$Lr;4-dAjRl_)Kz1cL>6ndwAppBR9 z+P4^}?eyu$re65Xcci-9mQ_KgnP!ZA-qjw#Hc?XDk&yZhjx<@ z&(lhmjUU%bq@t@5BvrnWG?DNLAN?gCaz(c5?p@Zm3 z=F;8dmfiIm)ZU1&PK3@KZ!$x2V{$Gcr|E8A^dJh{v(WFG>ulKf>tDga(FhUtiQy+5=J18Tzc%WBrH10-+rQ0cpozwTkyx{9laz^@=t{t!$5+uba^VcLYC z@ubE1784l~Wpwlzy6sfy8_WHy3|~=Z$o*>VWH^7e_eSbYyyc@`$)I@qop}ETs}a^h zIbA%30We#*1a zr*{obpm4Z|8yCraecSMsw?yIC=bfu*gilH!#XeS;;YwBw8_f0rWjMlkLR}*^VNV~G znP|1#MhFjes4&-d@9-HOSU1;Uteh{P!n`o1Qfy{NpV^?x(iie6J^}-CfMa&^`{3-- z1bne^MMg=haWD}x8dtz1&c8!BbUj{9*Qe=4K?@)JS{mgat^4>fRFN{MR8>E4F8;(Z zU|0TbnyUU`ni`lsG5k2x=VncqONNOev!c5*fs5^KWhrcMumvfaPUD_OPEQ0jRV7#< ztoOH9Uo9)8&Y1XoD+_NU!-_sxItZ;{M2w;(PnHeszD?czX?I&Rwl+Pr#{1|6iEv&_ z=*T18?mkA}jhbb-taG+nxE7@#_H_4U6`XN5Rcv;rt&@{h*Kp6{x}{tB)FbrFy6X#% zuJCF~u*RcGDpeyASnIQ>+`XbfY_U@wzr%#G$N*@(qsV)z-k`83@_vpuz2Rm_ysv6@|XLlRDn$16g8*Zupk2YUC2`X*%r#WE|Lj3}B4nS~8MSj;CfRU7$F>--*r0exDS z3uS-Wqou%~)x(>w6JLR-oyIrBYa)2#!8+R~?hov&?!3NEd&m;;kK~bD*{vB}B!i&q zSsE(&{Nf~#QTuByxZC?<@P3_pkBLNc>GGY?+=L>nZ^H!sm_>doy=iU(_2l1X7a{+( zE2#uKq=ICH9=QS|OvPWlq%`%S@4AIjX6iiC3VSRX zV*yW5q~5N__MAul6^2anWDqghl(XaGu4n5xcd_p(`>T(5aR__BDI&46VY_7zoOx4| zEU#9w%ly$LP%$I^4-o?VGwA&k<^`0im7@yy~_+oD|%qad90}vB6oI0P(5vxSO0K=^XaOQr987b$5>Oe#e^lypcw-RAIv@02R^y0nkJ~!`uy`0spd+bl6MKc2y@|Sc>(;rXQRd zgh#!YKzbRh4X?6qAf@&`4*3s=Sx^g+fWhrw!L>yo`YWhPS}{x=`w>^|k`i72#4@pl zt=~T^%*7vW`@j8%`N2Bud&@h-BRqD-$JxoW!K?@~AI)~|=cSb_ruv{i^IAA0Pko8X?!5 z3p5xY94*&yUfUKZ3n1DO!%N8Q_M=Osmw;1RQSG77#}1AoI0FHW;Fcesh=GFqo2ch` z%N4lQAgLxilpsma!P)_I2*UFQ$b6H*kC>BRCYObx35X+#w`_~uNC~eMwE!NuX}Odv z%PJ%Nd>FxUH#6mPQjg+~1{@YmaB)AL9Wk~%q51P&{mVQ4I*fpyoPGYF{C?h~%gx_F zCx@4^sNj?ZwsjMT$frxG#qEj)9foX{1^@roj!ZhUl{z})!8an(xsZcyqXbogYTS#G zl0x=UJA0*HBPq-x)Z(sp&SdZ_ezPJ1d?Z)AX0305CZs}_3CY@nZ~N>&-lH))m4MmW zAW5cBD%nTI2x|L5p+#F)V-l|$FOkO`JqSu7KLh`aHy^;eVE920RUgV^65}^*p-BN) z78oFT;!2ns@Q#9>lN;sN`3cW$F#q?T+T5FFQb1M47l%)qKasLBMQN!~J*z7HXiQd4 z)2Rhe6x=miT+PKgYa`akjhxjP`Tk`n#okHnRM&OLRKNpg8>TYL z(zzE0Q@H9h!VBYt<2;z)izyzD9cFTu43)Y zGOF)>Ic~h{KBb56@VYhWY)@wBAY{A9S)qgVPh1xGW79<{j#l0(_`+%vPVmxIr}-}5 zp_#=g&zu#F3tv<}1$h8doQ@Y+efg_A;Q*$mBl}v;YWAnyb%nbLEm)J;qr_f)hDL?v z^{oDuP-2HqSdd%izRRdI?}e0?xKZiFwG36?Ke`4+il+5m7A5zdub6)I`7r;jjT3DA z!wqunb4{1N5!EZ7J3zneWCxk!2fWCvj^fs6@}iHpR5_I9CoHflEdFGVX)X167+7g3Dr%cV zamyFK$_Ks;cOLY)*Sy61usvyS%DYh_f zT}`$&fx(31tMRuzp$X&z9Aoc%Gm~!wSq#mJ@l1wgrXpS4(zqR;+>=1Ipz`O6R=rYy zbLO6#JkiWb(DW9jFBAi3NH{OxHV!b})(1DQX$g8h&y%Bq#lRRoJv59ohO>^{GO;6b zQ&Xcs5c|0pep!woN3FIyvsRuu>T>t~mfOG2PwnJg#R2klvKWe(z?z^{XUCS7M$}JT z97)AGbB9feBqD)Oq)E{*d}*!AITKbmbR+|d_k-&2Ya9zzbac+5IN?ryQ(;S=O>?-2 z%63O^@KYB5K4LnI-TvJ&>owU=ktn)`+3;gXv49&D#qMhEAkQy@E zZQHU2QJ}f+9w}@IK0Bs@zg+6)w3x5if$tFH>;FL}%s;H#*&Q40N-YJ0!5e)zLsrWn zYdONJb~@n%B9M-kp>lTP6VZ`=n|jbQ4{Slf9IZz#i&uP|QluMs8(Z-$t<(w?n`Bb( zE8fO9;oM(OJ&YDT!HR<+!%b#huz3o1yfGSkbz?*#^ehSlqEZOa zYY-flj8pL|wZn2_pa5#ZH}A%~gpTbpKvmjnfFoJ(TvFJ%P{ipAwzkaA+q+k}R+GXy zzGKnuHHfBF2O|=7Px~2YHmpd0aaA0<-ybXp5sAQd@jpAJrD{5Sc3CXpEbFlUr-4)8 Ryj;ks<7fXYIqG`z-v9xy18D#N literal 0 HcmV?d00001 diff --git a/website/docs/assets/hiero_defaultTags.png b/website/docs/assets/hiero_defaultTags.png new file mode 100644 index 0000000000000000000000000000000000000000..225ec7d48493f1406dd0818c8c779e54d07b30ed GIT binary patch literal 7266 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
;+ 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 W3UtM%t}w4x0+i*|UzW<6`2R07Ov*6; literal 0 HcmV?d00001 diff --git a/website/docs/assets/hiero_menuColorspaceClip.png b/website/docs/assets/hiero_menuColorspaceClip.png new file mode 100644 index 0000000000000000000000000000000000000000..4014da26750c560f7e0ee833b4a05afa1cd9ce2f GIT binary patch literal 6593 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 literal 0 HcmV?d00001 diff --git a/website/docs/assets/hiero_menuColorspaceProject.png b/website/docs/assets/hiero_menuColorspaceProject.png new file mode 100644 index 0000000000000000000000000000000000000000..6b8e6e1b892cb15b6daf470fcd20285feee3fc82 GIT binary patch literal 6864 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 literal 0 HcmV?d00001 diff --git a/website/docs/assets/hiero_menuDefaultTags.png b/website/docs/assets/hiero_menuDefaultTags.png new file mode 100644 index 0000000000000000000000000000000000000000..ba542e10194d9567b0b814914793caead73505e5 GIT binary patch literal 9200 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 Cz2i0j literal 0 HcmV?d00001 diff --git a/website/docs/assets/hiero_menuPublish.png b/website/docs/assets/hiero_menuPublish.png new file mode 100644 index 0000000000000000000000000000000000000000..4259dc44e4b99aaf868e9e78471087d67a721c6e GIT binary patch literal 6011 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,~G6m2oi1P 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 P00000NkvXXu0mjflZ0NV literal 0 HcmV?d00001 diff --git a/website/docs/assets/hiero_timelinePrep.png b/website/docs/assets/hiero_timelinePrep.png new file mode 100644 index 0000000000000000000000000000000000000000..253bc114ee3e53e0e044bfdb8f1509c30f6d97c3 GIT binary patch literal 17150 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±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 T8$RGIk}%@J(n4hdIzImwWBtqH diff --git a/website/docs/assets/nukestudio_defaultTags.png b/website/docs/assets/nukestudio_defaultTags.png deleted file mode 100644 index 3ba15ccc17c8d21e1c67f8f0f8aad026a05828bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5628 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 KMNUMnLSTa3GgW8+ diff --git a/website/docs/assets/nukestudio_reviewing.png b/website/docs/assets/nukestudio_reviewing.png deleted file mode 100644 index 0d3b4170dfcd3e401c2103863ae9a3f7daba41c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44909 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 Whil+^rN66wKQ=Nj*GK3+O#VOkT3v(y diff --git a/website/docs/assets/nukestudio_workfiles_openingLimit.png b/website/docs/assets/nukestudio_workfiles_openingLimit.png deleted file mode 100644 index d0e893f4e5264b2b22a2237faeb9ac7c91bd2c57..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74591 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 V$;IV8_jl|+%1SCp6udO>`Cpl0y+!~4 diff --git a/website/docs/assets/tvp_asset_loader_actions.png b/website/docs/assets/tvp_asset_loader_actions.png new file mode 100644 index 0000000000000000000000000000000000000000..dbc3734e1033ce43e5733565d1a99bca2518aa24 GIT binary patch literal 247453 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

@9z7suxw$4U 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� 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 I^!bQ?0NvqLX#fBK literal 0 HcmV?d00001 diff --git a/website/docs/assets/tvp_asset_loader_version.png b/website/docs/assets/tvp_asset_loader_version.png new file mode 100644 index 0000000000000000000000000000000000000000..b8052f3c8433d8e75cb64711d1a4942ebd1705aa GIT binary patch literal 295138 zcmaI7byU>t+BPgb^bFlGLw9%0FmworfRuE1hp4~+Lw65INr<3?0tzUNbayw>B_M+D z-1~d>-p~5hdfz{0&HD8f#~Igo99OKKt{O1`9l@hVkBBwY;RcT$VY5DZgc$(9MW3BY{UZj%7`%2^M7t}&CtZT@;9d5u1-Vphp>OyuA1NKj);q>_0X-N0+KNSAPh_i3_HNA+*{ zw<+DyUkg9I0@+|rPhIvtnbIW4^m0=CesGpHu@o?TCnVK*LXHFOY{6WZhYKI10^hPDxzMIWs{wYTxdHT3&#xZtVd ze+D^O$R;+0zAv=BP*j2TMI)ft;Jeirl#MKiUn=1-u1#GEFWz7#--1aHIrcH<QOyy0__4x)e~=bHB@Z;M_{V(O{@JZ~NT z+ei*(4p@%A>Qsht@!NL%dD`6me(gK;a}nRM>6LKQ65j`Bkz+w7*~ABdrunQcIG~sD zf-4qSo&4l&`hOAB`+Ea@DW)fBCCQ^(t;dJZWP*ExZrbK%ddznzIL$J^h~rCBfR7eI zkXH7Ymo*rBGbz{*4v=At3{e>STNO%bAvI|yAq0x}H%3hyU*rJR8>36VeNDdmL^p)W zR(`62!&5!r86Kj|*2nJi3kHKRe7<(G1$Sdbx2yeD*k8TOUT}7k!QCu0Ap}MAp1GB3 zysE;BtgxDB%&s^g4tda(XMGWDaC2@Cj6(opaZ=*$fh^}y-EZ(xzdd?*zyO}AqyWNL zC~j(zcSWbvfHhtU<)K~WpC@>%tD#c=o{CNHEp$&qnR|i4+)7fVO)q?A7#&49h?0@mEpCI&%*&GDS zRllrY8|wiAwTs7;Ky)#26Szd~AHsVM<&S+RG;!dXqA>pe!%U;KUP3{i;Ly!!YOkYC zxd8&7BGM-?+8y}^dF6?$L2bP#keLoO_NS0D%VWGiZWs`v%ZCsax_$dL%TJx0O-Z&Plo?-CARXXLU3f(h=N;fP54OVZc=`RO-^P> z{yGJUMd?-MfF4N*ipfl_Jtu1yrG`)!%~>Z(^X{V{xZ(lX2-k8xocqa-`4;b}H(nC0 ze=lr9`pL9x(%B1LYH~Nm={ap#0|-m^U!+7|zu;f#+Ylc0H~RZ6NM|%GIw}fE>7eZF zEsguRsbgJ8AgXvwEPMC%*X;f4#d&{bGsM~%&e{c*b)af-Wh>cR%55%QK`1mp!jM&j z%MJsOk>XWMU`Le=Qz2?sQv61VlUS$FVg`yJ0QysON z{l~8op5OnZz8PJ;r+RhW@Mg_X@s68>SsJ^+zV3Tyq~)tCKcYOr(PNsyivtJ=?8PsK z=1a}~V0x-#!eD@bOKMIY*3%*qU06rZwX(qUX?;~K#nH9mW_hyF9w)*386#OWuz~5lzEI$3y!K9_EdoEM(KN`FFlCC zA#y?KT=|@W{s@+qzokX5TI(4-Z@1AZltCa)J-aQ`WydD*RaNA+!o{_P3!pX4HrJ&HuLDBmOtwadZADkDb{ep?S zz#H$ezb&@i$da*-@#{bQe|UR(-}q^%VkVH*iY{Ys|EgPVp3QlHWHNGMyuOKC$iF;f09gdfB^+$Q~|fBF|+4KVu8@&@Q-S#xIIVF+}b3u zCPb+wFrH^LVlM1cW#`!HJ!RVXK$cV%Ll9=JTuwCt3dJy=x8xIq^}`}tPA_lu$}q@~ zDlkNvD?ojI<02|W6AMTN`$=+3{8(L88&2`w+IlQ4NUZ&JhKd3!A74hIE)rUem}iW<@6)xu-s0OyX6XAf9_CcZ9a-3&sG|+N?k6H) zu=rkgyE!K*jf7|85*SnblE20zNj~YAk5tn@VeQRLkd*R}OuzjU4@Rhv1{z>QtCl0% ze2F-d7?oZHiV81Wjd4e|v{p5`lx0a+E!J|wE0wJbu)FL&u?h%-V%d^O%&x+zjT92vNo($2{ zi-4{DnuS9zvCDfMy$*%i9_Q^!m^A95!=p{;D^WLHUOJhOI>#L#$+0YKLNR*3%GzYu zC@l-L7_H{z^%BE(D;OmoN;O)5QnB~m;U8V159Eh6qjbCbq(Bs0J4tsJ{esf9PX=3B zuH(UQ+AT8L!w_DPv`H&TnquNCvPca~?qHy4X{ygfWiT5U|JnX%TCn8bQ>GwACZd;Oj4T-<@+n~O(A3n^qcJ8WIB&?B(A3e0 z;4mb?sWKan{n03J7zc;?i}IY;r;;;ArRd4m`)D>dx3uJ{KL(#@ z>Yg_r(hC3ErIMzjJ!)fsXJ301&Y`?ed|N}PSC9=J8J`OmL_{d?fqjatWqkqxuK7Z_ z7?{AKQvsK%q`eheg(b@G&^-4)r^ zRxbpTP_i+Fy(D&drFC9jM7Ce^ViUjY^{i_Sbgn=+Q};f8uhfUsmEeR$KIyOTE@~)e z5YPOf7nNJ|w8Cn22;kGu2@1dqmS{P2qM3^fPpVOu9I%c<_Kb8@q>>fHB;;V4OMSue zAg`;*@ZNg)Q)ucLW`j|^onXkJ*y!KE7FST`z8?ev!O=CAax{7O6c<~Al4~A?)uP>q z&d)KQ_9r}6_E+H+F-U89s`IHEkf5cjLbrS%E|0~HpE}mx1H}EIXYwq5YYyA4yo|Ni zS?&AqfdL3c@h)1HgJhq!s((NesvAI-QLKr;{$_}bz z^#G3;+VJp_w~l8Tn`o5(EEbY#WSp(FSU0M%I8IXT!3{b7ok%TJYxy;S|EOlkKdYjS zAtX$Ov1@Zjd9rl22$m}O7&&)nlduzsv_PHYHZ)<`e1)mD775&3jmY zzPJsfWUbyrBe<#fy`N|Tf#?vOs6_Tor=5{9+i5rwL46i0qFBD)(I2AIu42p1CcNW}ksEaiNIAO0KEwZ0i>` z6kU)88YcO;gWcp3xn*?N5_R-onPkAt)=mJb(S3=zE|w5?{85xVs;zReg2SNThm99- z^u2Z*pD0PEn2(of-P%TgR5OvF?$&-zSUOS)QfI$i3^1YrzW-F@rp0MmZ7Kz_@o+$r zlNtW(2_2|*ga7Rp8#-rkqVShyKHzpKNX%sKv8iyKxMne>10n$%|hY*mz1}G8n3cFVINVU zrsQDJH+C%III$XA>(9&qnLPTYDEwfqR~m?-=t3Q5xRC=9TQ_h+V+yII&Os_bn|cgr zE*P(zLq$5pko*C%pI7Il911~qUip&z)u{w@5Q2m2=GJ^<*OCIj-*RXoTnNQFaLdRc zqMhzBV5NvhuU_2%D8^_C)OBKGGARUd)d7XyXfUg&Xi+AhQCeS6EzMNsZkM&edy_t} z2}{JnPnfxn$Tf}y&+S%-QcyEJ$fl-v_S@t>O_LdUXEgv+@8cdVWH8^L=_)PE$FC61 zyLon2H-@ORn%QeUXW+VDGi8utMf`b0^IjLu{+5-4BZ4=*7|fm#?s5X|es`cSND7m3 zmfCnPQ;AJ)6`!D@Euz7@pt4~CQ?>(~ zT|xXgC`bay3^c;x6OpgGN>qUscQ(O=wEu&!gqZ#=Agf0c2i(L@F5rz+q+tz)Q7%~$ z%BPV;7cBY}8*glG4`>p}xp5omX>Bm9gHlI}fj^9!R;Bt~M z%4B)D!|4pCnkjO$BEuPByA+=(s*$GFEFi{pRM2HWePJK<2!52H(K9D3{|!7^4iJ6U zbfOgYjNL}L3s^#`)^}+=RaOC3Wr}zhcXnG85AO)KbaSp%ZhVHj_E} z!blb|(&0Is6B`V1 zQ}f4$mxzV54;0R3L($s@hsdy!wAlA_vxtG`6dwi1Jm-+08n46mQiCgV5QDKHo!cCJ zn;Mpz#j}e=My4rm3SwImq`Fi6nh*NE6q68QCQ~#H4R7nk!vW{lF@_v5qTsZ6X0>w{ zkxG^{q!bh}y6gMAe19g1)HSpZZ+ICA^y}z9F4R3#6pD|;yY|gUyZ$UkbcL++tnAsF z6DWII@m{KlE+p(H{mgG=@>e5G_V zRm}?IxUvbh___Fal*;CDbW+HqZ*u`eBnWkyxJo2f8G8#0 zKFMoQ?t(i-LoUq6Y$^r;3MdY8%wR)xppU&Gcp&lc&}}Y(1m04TnwEhq%J+ZVc^#hd z4b=J_$VQ#j0i!DeuBhJJ;C0L@0-*-n8zo@k?Znyf6E7M18*?isG0uYGNd)F9{a%@_UQ*IBk)#nz)wXn>MME&A=TE`1GA{r&iwkWLK`X1rlg*LZ-^7psi_-^gy?xglk zoDT1r2qHV##s=g1;V<)BtTHq{RFo|!^ z#@cqau+DjFX$`S#FNbimt({6CzXu`RZ#+F?%UA$TU4@^-r7k1fTUDYnlZPnzafz#$ z;%5(c6~|D~pYc9clib;I%zJ`iO@l{jq^_Si5O1CXh3%%AK&;yRgE~q;;mb-+IP8Vo zgiQ?~E3MI^eDE!ZA>uHOr?Q6(`>xjfk%$l*4agh+<6>9K?RBvWzd>A__4H4ci;I}= z&%48-jOM|qdBzDr4RIIcMF%SCk(nR+-m)qPV;LpV-a6wW1NV*G2G!T2DpQ{r5Ze|} zbi9o3jQFO6?TlnPJHuZ>g|G{24%c!y8Fudxr=>cs!A$l_gm0RCCBcX;=e}KqzX}g` z-~I|V9e0twylJBZWAme0g6D6}joXo)FE%|rKwL)3AHJC)ie9Z&16Wyb+h#IfqfmZj zee*!F_bSbzjJMLXs0yf$0iR7Ngk_uC$}qPr4w#Q^1F+|T!_~Z*2)s2k`ukZk^{b#c zY{31NTXoh<31J0FX zo+weP{?s$Y)!+>qCy$UL{qi#IgA{gch8%?hr&skPPliKxuOnZyh6bDpzhc&@MVyN) zO~jgL($?3AhuUaBj_p55Yd9%6D{98e?cjJj>(Q9A7!nYeDjY0kv)6a{v|FWzWyx*x zFw#!s*U`ywq-LED&udsQ%p?b+?#DB(T6a};7oU_8?!3={yQMRck(+L?ha5XLK-ki*#0A&$QI6eUVd zcGlgGAgWZtt$TSu+%^p7T-yGjk*)R@j%lzG0(^uJ7xwLTX17&3i`O(&Bv|7SUlNU- z{VoK;Px+(jM?e1nr)nm~Pd#yAvh>uftmvsrF*`eZm>Q8{d`CB<7Nl?DN8KJ$ovW)n1m|C23BAU-9QA#F7%o0!L@+n$1= zOM~aNc+&6D1(kUZ2@BynyCWiF_<^LE754bXpPoO3Jt^Q>q#-LVP~p~t5r(5d3roAUN|VeZ>47CzKLuU{1Jiw{ zEaJ-_kIvU{_%Ivzgt10YXr6xyH)|G0OhMy^+jFSNRJ97zP52Pn8k8F1yR1-S3?m-Q zT+V;f7n{YW)?mc26ExJ9K8`Sc%|}Yg6M5=I-^thn8`TF}c!*6+7k@7QP4yTlbp8#j zjo)GrtA}}|P}C+)v)}Q%`@(rtVI+eW3_s(x;7GPe;$K#eQBQ+8g3CrDzdlb> z%M1K1$L2$i%b8Tt(vF&=hA#PomnF0>n~J|kIdVT|?p=-r`biSlu>4R~6tc_;=ws=n zU1sch&hQ9FcrJ3!CZyYmz>v0R{KE=kS2sVG69l&`g2qqy*ldN)+Xky}JJ#y5y^)&WBCt?8f4?tvW$|)uUrAe)G-!qvQlX>pZq0Xy&Y*fT?su|yT4xTx^Dl=h%T%B!S(!h!Lf_6ra$6=*QRiV zC@R6ae-k~sFTNye$`AVwm64#9kM?$ZYO9Ui6mHHgDzh^regW?H>R&$ldATZ&`D3@e z{gEOV3)~MOH-`p(PKv~9UrNl_&_&6&llq3L2{!~v{yJn*_SE7oDfs=*+MudnXSn_D z28?)(r?5I`{3IlSfWq%sE?lisAMxUqhk*ROX6ub2C3TS2-^u1n8hd}#_P+1#O~hL% zt))SI%~&mipezzPc0NrG&OYUfz_R*!uXOF4S8rHXG2(P){?z3Ct1rf7zk1 zGc>vls$Lsa@3b<5Ag4K@1 zYjrIhxTXskS^5UhLsY3JIEZf{o=MjIAMYoC=6N_Xzk*n~rnJJN-$tc)>}u{h>5qrQ z+UT?$B4<1IiRq4YD{TLNV^5RJi6#-3gadhD@7XVZ8#Wgel3u>zaT|LvZXt!{0sqY} zz8A~^oZTp`Lc-o$dj8fr67yu@{?~)aaexlF|8R^6eOMf@7w63oP-mIAQum!5Uwi*4 zN!Z^;hDt+bu4m|*p~j(a<7dz`AU2K`EAaf^VUMU6k_4j~n5S`}BxhC7_=kHlr(m5T zV29gaY?2fF^MiC`%C_;A-%^UuEWsJKC>a!D4`Y==bQJCf+ z`%``rlmPpFz-@xI83&v8jb8s<#rF4nz!}SOg%i_8sZCqqe@BC;w{%!74oHy+PUu>c z?&ZYtw1551^ccX2s`b*{4gtbjAZv{=g4`}sq7e@|ud;U&|1&f~G^8Xh>A{Efqz#kD z>S#vR1J42|vShv4jl>Hd_E?t_-1FbRa_%U9BFa=I`EOS0A8y46<}R9Sq52PMZ-ZJH zIR0xG|8yyc1<(7W*#}h zi6(sGQp`-E<^I=~mICW9;z5+z1fNzK(eYB&Zs`*MO04ij8M7dH)Jjf!j|x@Y#zbMQ zDOFH6XFh{yY&C_m??CeYS0Aqn$`V8iQ2!vLBACn7suW@4$)YoOQ7X6ng8f(MtK(BM zPa)Fm;|J2cnoQS@Pt6T3O%fMpLl<@Lo-ef5%wQcO*7T$keqkFsCiQ3J(GUgmsVxk;T3K2GjojhSl=iQ5|f8^H*@{;jz-t z^%+xghe?zg!sK`cV(gNV_Vi!w>Hqctxe+kDxhwh~e*XK%yv1NxP<|XVSP6_Eg^9~G z8ht(cxgypY%0hl}GWz|Yh8FoWo^{>x{GU(Yjvln7OMU^%vSY?d?H)fcJ`(d18$PiHPqD!c>s{CL+*7o_w}uU5FNK zZ0e(X>`I8%VkFCGBbp_10N%SoAe*o=sW{+ekd8a$uOaQtu_X+mBbqgM?DQlb6M8uo ztitW%)1csUH?kNDY})*m?B4mo@kJ^RKH_XX(VR{J6I7V_4)jj6!%eu;UcW=N!Uw>< zc2)+MF$Fnz`|b{L$om;6Y>{EW5=or+)|b4~IcRu(JXzB!OL1ZpGI_t`tz5~x74bOS zF`;wj46EP!z}gra$~6NmHA^^PnbiEN6u|ySrTx=oL?nUJI zc*J`3@(~{{eTEN2_4=@@BkGA%@E-sPGfG8MTP$s3#GzomVKEC(i8>~n`L(0YX<_bP}K*NiSD!!ju{=JCc>C&P#UgOaB!PUE{2 zvt#sxoFaitk}ReQ(=rfr0)fQXU3y1B)Ppr(uIu&~`bey0{<$}ur{;k~^@p((<* zMthWFB8An&_DI#|sI0_PtkDBn0wF3k*ugmC`d*HX2nlLvFYulp9gF3D3V}9O&<>&i zZDLnFn;bAZyK-x*k8dszCOUzScL_od!yosdyFbMbF+5(@vf_sW^!0?u&b8`%Ul63* zLTFaxV_SAdAP^Zwm%n;q)3a7~vn(zyE~%-hv133=A{p|K(9b0wKG45?YYzzI_`W{U zwbbzpB`1?~R;Qnkpl#*QO6}~;aZ0qFBlVIBgki%K7FPVZWqkZA@%^%y{Gf=11C#dIr5k`|~BEvcr)*;nq+()Ja3DFMBuk#46 zh$bO)NQ6G)hvl?Xz5JYS((N%NdTm-bj&N!wDGVx@D?-{(l+jniA+4<>V_&|t9-0~V{AD{E zAB}6IlpLhBZ~GL*3rFT(?^@TnSNPl332r9^|85O!erzhaFZD)i(hXu8X0Xz4va0!J zReq*r8;l*uIKdQD^mp>b2e(B}olWa{bOoc&X0s$Ug(i?t>^&z#4+Qp4ESh(|%nnfw z%1^7~0C#8oQt9b3qZu$o0$n0WbmZmd%*_*66i9!1NrqfALp`(^v=!QcHySJyxRB~# z`T$0S$X-KUv4=MsGx1{!HhN9If-)g$Db#Pmu^`J%+=;5{K#QRB$QS3A0*BJU_!`zw zy*q_2#tU*>r4#k8(~$z2{i>**A`?)|nH3uPOp?r|l~3ugCVY52d0~iWkaf);n+Oq2 zM>SqLmx0v7`VRY<4}gP?J)e@IFLW9Lk|jiLr+w(GXw(Hg$v&wVHf--)7S#XF#T1TE z`MEp8?O&3B`<42v!M#7^k@*fHP9nJ|uQ?PKKcA|N4cpT(HS z;f0Xq((Zf7AXC*IBy-dk89>SJ;$)zZrm|n_ z-Zn%YREIQuE-r1y#l zT7$P=&m5@7(EDdjd$q*Y*?engK1igD7O%ph@;Mz{)yXhAHwPNjdjGH>)WDpo#9crvD+9u@p!*Zm>xz=KZvjA6zza+!5StWZ z(;uIXEDGHBoLyBx&Wd0S<~0#{Q}Ch-Xk+su8*Hk{yAw-Z_0>Mb?>jK8(cO8yGf4IX z3SN1ADfPTHn1$h$`5f}^IarQw_p#dTO;5t3y6_G?&!z6SAc}WN`Z|Qs(S2hp6Nt~X zHFLghB;4b%$g%k`y;($77JsGdYFtO1w_T4KM4Tf|c4qDij#(3FNmU(=ZUO#w4-O4I zGt7~C|5O9&RK*{|W0H_qta`X4nJmA!pr4x_jcqVTZz`j|IuXUVcsKUc4A7<-FnBM_ z#1JUX2vMM2yguv`qfGnVWNlSM>dsG$O!o6x0rGZ+AY(f&&u}Q%*;#c@EGnCy5J`wQ zaY*GD<3ygBpv`8?#9}N)ZGEUJJ|}N3vM$`?@bEzC>Ar(a%9xDMFt+f-@Z~`^;}!An-tjT?g&Tt;%XBVS-$FmWZL-0R zr6O|CC$M*+L@kOK-`m^CtrBuiNGqi9`opLe*3;t$bY-M01;d5(cXZ(TTqphzv%KcO zFz|DeyNUx0yg*Nvl16qn_mcLx=aMdBtyRDxRm$g&lmqGEuAGyiCd);TLJqM93_Hz+ z+-s*>qq}!O0fgoy*SWYga!sUO64<7f(lC@+_A_$zkG$@xzu6A*r+Y*356GC8k{D$J zt!> zkCq_%b=^f-8#NqqZR;x|AgQKmwRMh6_c6?!ux7*BtBA5kIwXMV(6o` zpVF|~h8HNy*13i%M*j}c%Sp#?8Vl6a2i>@H4r9@7+wxz(1z;o5S;c%1t z0`UP=kuk>SQn3@=aJKzpcVH2#YS+$B7q+=WFM7omM()V7W;C_{4YI`nD(gd-wD7l% z;NCLTvfGtJ{GTILOv1(S>{wnVKi{Wu?Lzx4nS0UdB0zfRFCbRx%&^>? zVy8)cE`KGLfO4ZKC6&cx8URG?%8om}dE36z|TRm=Sj`Dyps%|B}VutL;>O zH12cq)G06ThrYsCXTx+6YIozBST)45-Sz@gwmgYZ>0NtcI(m7TE{*!C#!36(O`alj zguTmU7HSK&?@ay31#?@)ZBoYhdUSkeDDUj5lbSl$;!DaCZ2tM;FLXtT%KJMW5TJ9d-@{zld`d z6t4ToW=Y_mo+`<+9#e#mQFnCE16{Axl+#G_(!$2iS;aUAQfyz+VLZG{Ii;dTTvDH| z4`zRVBWR+HPIM=(Fp~d_ZpQWtGX)4#b&(vT+bCfHm2fnGx9{MC?fh1nglrY z=uJHh11c5u?P2D`JKrp8+n$Ap2@oqMPyVGPjrsbFypygVBC_H`QF{r4ZaT=LA?Z(= zZ@Gz`<4$o2UjY%>`;X7a#!Q|kMzl)hY^DhX9LhOF2dv#pQT#eCfIWLAJbS~*R%SC> z%Q`f2yz{wge_#7wwUAuZ4-FJ7@0VTp z=9qWkaVsTo&4jM62&u8a4&WKfiG?*5Wry%C+HIxKT?sLr|)kV&#V)A;sHCwuHZ&U-d zaHA`yg9G)!OG}BWyDgczvoch`ReF6(3~#{J`S^rfp z=e1AopZ<{ob$0j2%+|ivCCr4xM4zLshk0(XX=9cF_b{g??FyRcq_Zk8XA%@u?2a`z zF_VxZB}w;_9!SnO7&}WcQA^}T4@E#ooV~gCPJXJmn(>!&sOdj5N@|=UaywuKZ@ZIT zYv-GpuKT6^s&yu;H4njvxn@#*)hA)c!Cn(AyRU=zI1l!E@xV86A!7Y8zgSY``!SOJ zaiJxu7(vG77(&=PE z!Jxff<|er@w67)g@{~pO_nmc9stD@1O>j_U+Vy|jn%L{jR4>%DwHAw?#9eY&# zBohsIN)Q-qv4l%;DRq=DNlgv@#*)3rWzzyYQ<_B=`Iy84MH!WClb|jh#16lXd&eO$ z9|P5xH@X-<(oE<-T~WflwFht}#xJ8(aEWBcOw?rVnhg&XuE4!_c;g19(KA^g46-sY z8D*G;#uBzpA4xMa-&R)gDMO8@43_lgCdOlXk3BM;PL-CFV5kL2ZwZ}+W2a_Fy0C)(BYS@xuA28yPkQ{><*2!CxS!`@c#ADH zI@L@(|6`Crk!ia-#`V*MSO4j=h=C1LHaL5!lq_M)ui;J*b>uKx;@J-@JC7Ykk?dG^w=JdW1KLrt3Us@I zZ4rg;TTJQ-F)`8Je%2TkVHTBDoTGL@cnk07fjS9^D zT7G}2#%rLkn-7RQHDOoqTikMJv_^}7lD7jL7-@Zu_84X=0BYesK3*F`_6!PPWO&IV zwth}zxAXaE83a*Z(y+BwD8D8FVT-sZS--CUe~pUDl|$nvNgD?n#gc-vN*>qFaa+gn zsqsitn~age)#R{lpu4-1s;fJHQmRa03K^ksBNqAB{b050MLIA@keZj0P>D3z+RiLNB{(0@@%9JZJ~DXXoBHN? zbhYvG-mE;;47=@8HqOxDMGa3dqK7JKle4g^&e!py=K~GNNC9~B`bo3jPqqMJH|6GK z>_9^b5kf6J(@#0OVWA{^(@|QxA4+Q~-dr~L&wZ*P4dvtnfyg82CSnqFhKq~qDBWv_ zrC#ny{nX6Mf+M#Q3~P^9wB}7%VJ3X$UxA>^i1I9^^Fxx2n|9ia^q2h}9JixcNR1L7!LH2FM`c{q%z)CDh-}2&+m+3DXprZ03v>Bvc(k(^@fF&d%?tX*b7$9&a zoZJ1jSuYNU;{9Q`VBg7pMCZLx`54 zJOyg+_!#fAUqBbdar6o(wzjaq$@54p0EQ{RAgzwOBfa#UkCg|vVka2_k^gP`6?Zie zkc!GgAmNe%&s*aXrnE&)iPh{iq)CRDSfX7q86@cQ@;;Y*X(yC^_EyUG54iBvFgO;DNy`xWUEM0{(*RI4dAab}9yL;E^{9eTj~T0ldL|_Di*1w^7gL6dDRPuUGV-S!Kw=;mZZ$`mW{8iwuA@M_*ON>z)l&V>Q8rrpDBI@|f{d zZ#2DuBV0bpz;2VeJIHwH?^muh$9P45-2V5v|8Mb)uMtJhCVGO+Es z(4t;W0XoLJ&g+Jdvoe$kpl$y!i{HOra6r|;l9E7T)~50m9`0w-?>~iD`FZgm>3IFJ z=0g|6X}jP&M`H#LR2za~B5>khk~$`&{ zuNBfun)~T}aV_+wzkl;QSzoXEGwI6gGFM+(57_7IQAu;ZrCIT17@k*g5)}N!1Dhk$ z*lcvuL4H5=BRZCiESxZ8TNFpC|A6{G;nn41fO0-nmu#}~2vGb@SDlhsI7F;_t`V6} z;mkIx)%DP@n|c6HLxm6fqA4s%v=Oe%AiUDUi{Nx?$XhL*OG zrp)fUAH#&4XSO94AJfI+eF(>9zY(v;j?XQ$g`uUMA~I1C6T@R_bK@El?k>zQEqmIe zA#I-v2gYluZ&%hIO%X!5M@zG8`TSH}vJM~Hng}_QM!-Dmv@Tx@h=OG5yv{|M7J^>7 zfUo^|q^0SSasVPi$ChGyv8n328+m)iRXId#_I9=b$AA$5bGUFz6g5 zi*5u#;xvAgIKi+P?pTXI-uaL34;xEN6TO_?7d89T^P6f(-rfqwm=S^OFgs2#cpM!K z1i%6!xFi#vN(xG{i13RCO(w*E_qL)l0EfqqE@XrDetDBu6q!Gz~zId|wPXqC@ z<>_QA)p%&lS}bHnczH@I8SZv;$svst``u3O-*ffFMmnZ!fsb6haU22?y!=JMOFcdA zE|r@B)7}e*bMgvNbC-S@5)vDiw+G!h0+Yf*WzXRTBPAll?*3wG}7Rjbg~8emv{YI7)orXE8`s2qN!ovRSp_Er^McQ*!I zk`ljiD%`Yz^j{@PzL~b9$lOY4Z;BsmNTT_J#$6HmJGMvinZ%y%U-3*|imx}4uEvr~ z81HiQ`WB|0<h!X&snp50!(eW^5ctpj z)(|ua`7aalmYfu>bQN1JPk+#PI*wX$V^9pCP$}#1sPXI=o04)aB2UROdQBd4T~aDQ z{cFx{s4zI3=rTX{%nIrzCkzxosc|^B?iY48jyFj&aPjf>=}!C*-=em?zGU(vCSi%# zO19)3c)ycCs%*o$Qy7Z#)>*gPlmhVFv349y?sc_@f?#;YFGN0j(8DcU@hSIhkGCVK3D)K_g&q^@wXEo4y#%tE1aQ5oE3n*f7AdRH)hgDN+ z9oB4Z>uY)PC&)l4khK_EK}k<7_zm%=o-9Y5{&7=7nXjF@0B2JvE@QLGoVgdxp^yo~ zSejpg5&hEmI1MdIDbP%CpnlTJFMt%hxiS8|rS$~r=SD<^99IKe$t+BqSd%M2nQcdp8zxFOu5;#TBD1 zCAgD#BwaL27^Pit?Hxx_im&!ZRFI8s%^GIGM^Tb`=BDvp`FV1Vj7_*W1r?7kZ0iwS z#{s3E>M**(+WJ{ktukVdrPl9X9&=W|nckSnbkiPX0AHsK9bKm6ppf%zPo$ayBQoOI zq`;+hf7iS-vc$bs#0(#W-k#H|`>}rjvZA?HHy4hOz=V>@lB`QDBLgE|@BKrZ3_I$S zdfH_A(YDv`8)0+W9&RHeolA#@d7smnjS+M0VY0L*oHlnO#gxJALB9zk$j#7V6Jc4= z_^F5&jaP2yqJ%d>cG;X!F2st7c<}e?)+G^~lVkbGyvfREU(8hT7x-TkVg?zL_Q$<1 z8{JfV%tdsW6cdM4w#)dvS-6FLNZ?B+1g1C3^!Rp)Zm7S%y1fRFYCMl{^$f!}X}zQBOFS^v ze`*?`9wt>k=_3^SN6Het>$TZyJs73%g>=~7`D0&s(W_Cp{k7z^d&$+#uP3c&`L%Ad zx%b`y{nkYA!E&J2(OcuO=`T33s)T9jPd<8DV|cbU1Qi56Z%sg%P)Bq<85a%#J`cVC zlRUoa(vi{sN8yr88ps11E8yQ_nBTR0LHnWYnkfk-lY|vYT3TQ93vDevB7h=ayDD$_ z;5Dw1!e_4+owspSlVbpNfMrj45pinH$0(?>KcmeM6`VFfC=a4%Zj?;D`hwB3{hCDK zZecJdmqwXQcn9skZ}SIRcK_~tJprxs2qzU~9ocsQ&UUAg4hshK&i39I4A)KqUcM>$$qL!3Stb2?-8!Q0+<_ZK75r<--0 zF|xWsQ0^BP5l-XH;mAfZ^roBlq&3-iHH`c#N1w24z$w}|rrey|{tsVg9TrvC?rWN% zhaS3HI)$NzMj8~PLq$ZobBLiEB$RFx=|;K*r4^L!kQQX9;Vi$}d!K!s^B-In!@R4W zwbuLIzx#3Cq%>OJGG6Yz$@jxM?zkfpHX>n_<)=0@yg8-P$ZjSPwCoJ~Py{oezK|sP z+LRptFZZQpad%xi^XmA63h)h|J(gVYXD}r1SC8@Oh5aOLfBag>gUhlNMYYT}@e(!9 z^5s}&PX#gQac8jc-Pzo4PkdUiGcHJtgmfd2IKttF>s$KyDW#zfmq2til3Zn)B`0TZ zZ|#N80Fy@VENUv<{Bh*>TF~#2M?7b|u!GzmQM>1!%4sOCSC{n5!8@|m#Eki7CR6vE zX{evp1l{HJbsbLSaW?JisX}6M+N1mSF-s=`eoQXbF9IjHnV(?wn2lp&#===thgZ&T|cbKTMce_f2!U-xDm*cgavI}l+EdZIgQ z9SF^!`yNlS;|6~+rV>3I+T^@o90vr2Ww^Q)j%TVR9a&&d|2!~E9u(09CJ16CeZWeF ztmhY`VTuc|Aph%2`2H@650+&kAtNPN^<|dOTnUmYmZ;Jvz8T<8~I->(Z^1Z zP2}f8WxGcNl0?GO&8^_=;s>zFCE*O+;Yqqi5*O)6g+@G_GvR{`OO}8gJ`k0{C!q4KQ zXM>=%8#`>FyzaK0%-sSA!(S5r3m0O12ePT_vu*Bw=H2ts+ug%pkKUYD0bw?GtONbu ztb=LGp=YRO=TcvlppB>**jb|2M#6pJ*q;Di^DzQ+s;)f@0=pdjEqG7$g7&MnrMK zpk@D?d-~PsWJN$)^r70x0UzhCR3f{Dhlb=ag8LDLU73F3drp}lI*UgKPTtnK4V1iv zV8!4#99i9-C_yVi`7SVO(}lF9dSHlS0*fg$I=n?6uR#FkcN9*cK3<{6u$_k=k!QW$ zZo1~nSzavA9n0E{t0kE^eQ!~%!VC~4>^0^#IWJg^>A9q43t=cqc-99MSPDOkieIiCVSI|{KANAt8 z@JTG#R;-^i4Xg8eMD-sh2o0_3-F9HBks|1uX|jQNQtZBFb*kFiFlKT&ygJQr|Mbpjq3H}s?a z`!xpeKRRW0i^RZGQ-0PhLuS-=;^FRVN44Sa{JVRH%0>t}=>!}ZoB&}t>FBZ{#q*2! zwSlffp$cVJ`<>!W9|+#I(E-ETz7$OImlaMSKQ>hz9obYhax(rn6B6s%UMBME;oiW= z(_{PXtF7(TsGE%>SvWYUtB5WtD#x(|g+MlIrxhP7l@>Cn&M%s5UmOb{u1#0<21QBN zZgWHI0_B|FhgrXvQ7uE`%8z~y=}|5WST zNy+72h&Zn;_T4+2XH!m}iI0^#mYLvN_Nu<-JOW>ddOwo&g50s0HTc{-20muX6OTt8}CZRb<%qA+VU02uTNp-V!aI zc5gZqMsp8-yTViEm2}MmyS*i9_4h^jLnD-9BDJ)N8edspLGI*lL1cUUj)DdNxM*~PR-M^c$0BVQkH>rBK5@I z!>(xzgDm$V1oq!3ED z<>0M&H1Saf1e#yua=92+|7|DBclBMvK* zfQRO3mYgp{Em3gwOB=zi124>^2WPj~Rv6lZJA}qlBF74fke;0rFDT>1bx$BRyXJCx z9gIEC|-S!yfiTt2YsN;Hr_9ftSw+A&!4*5XFoAWu=x~t7F{(HBTz9HqMPY$?zq;0ONi5FaEq6 zW@6c)t#Cx4FY103YR3;CV6#obhH~QmGt-`gE^hyQ7;EYn%8#UbEVPGT&i5TgD<)0- z2S;WHE`0!6fU-bmggXXp{u>b<;#RkwRx6{;T>yMO-q_9du!F1iGaioIxFc=h6ka6eoOclRY{O2*1 zbkRu70(DAgU`1eH+mb~`Y5%{o5x_eQ?Io04P%>Dl4Q-=i9>@wX{L$Sr3G+>*JL=WPam;kP4W10%3;#k8m{elu04&w z$W{(SrZj&sGyf;~A0IWiAELF z1mMj7d5`%3aQoG*$E=9xHycMQ?R(% zz)A>Y6mGBhLNO+=vQM<;SfYmnR^bPq61(RE@H#@>ZXf#-qcnN@8f?4fTK{!SN#X)1 zSw8Il%z!dUC3)F4$TsdlSf@CZ5jSfi3R1zo%1QZ*;_LQmM94)GDgPxoR}ByH9^fBa*Rp3GUwPT6H3jj=nEsudBV2|b=M926LDj+`WP{} zo04I8HK`JvqDjLkBA>w7f8P^WiYAKv;u%4{3F)@ZX=YTRn>8pS1dTiJNM&TTH=i1- zN|?S1Qx=$Ajxboo&Sc= z4BgLRYh0TiL33y4z9mOatQT2asVooqaqTwPUb<9<4Khb5*OG>bpKvZRlfl?C?aW-{ zpDBu9UEj!_<(bo6h0gbog#Fka8X2G{EB7g|d&B_4(g9g<|Pk0;(_DKMf0Yc+kbu@*|)k5~-1_Y%R$Fs>S5R zBig!=TFQA0N#`z5mRqE)GktoVF=A?I2Eww2)8f@%@dUOj2y;!Q_lqda%A)U|9Y8Z6 zvtuER8EJilD4EqdfH3t7kh!>fa((nCqE_R@Q+4;37~&ch7JnH1)z2YWV+l1d+)2RJ2s`zA22inqzHa+Z^Rv+~n9@@F6&9$Gm#PVEE2 zOQ;4UMhXji(}HV24aR%HvbA?KJm5$qX}R-gO%Q)`$k(arqW0}381G4919YpcwH~K< zv(taHL8EegIhS2eb=0Fb_KaTnXLCswRccyN#yRmYb9r)~Sn^&cxGHT1f>B zOE(@b0_&eTl7<~6pH3=+-uq&nZAh$%;%Xtghb14Je(DcJzG#7PeW0ATDt&6J`yTIW z3Pz1X5WQ~+n^D9tYfAy73@nWCvV5OoF?W@kwST)h_|4XK|GJtb*v$8&@I2nm;f@Ep%i9_sWB4KEyRm>A^jT5!`bc5BRuxXhNE3Z_C$6qN&Wafht1v=u zK>+syrjs2EA_)gumYfda{5r=RkedwZ618)(bECuN>L`iod)CLvA`HReyOEc-os?DC zuN!@%jZhJBC*GKg|ASw4@JGSVdbf)W)p_Ckr3aKMVwwlN_n!e8Z>N>sR_1 z19|9;eUBQ;FX-&TdUelLuqwNCA$>__b=H+n^o^~hko;!Cd~o#y;{C^^-xZE4Le2mp zzhN1;KN=__3PVFYU7VMJQ{^hL&9^lW%vI;~EvIN8VxOx6m2qmuc&gh){>7i;{dho86XS3>Vv{a-OYe?K*Ome1}-<>B_N zS^YrX%|<1!9OtGW6T9$35m{Q)_LSsolAYS+>gXQZNQ@T?a{J;~^}x>riHx+J;iNp* zap>rXC4^~_g=-|vzL_!ol1^pwlCZ6~G-&9CyZ-uC{sr_%e>7GG(_&wnT7 zb|lS(ZzS|52EhqSQfZ3q@#H$SwwFu;eFio(VR^5O+)A#i_OtN_uTg1{W{=o#bEx90AE)Y*r z0eIhLQ9ltwLP_Uru98C+IM>#D61-wWYDov zMLO~8#{=Y^kU!F+H zpfvb1u<5c^66+@u3J}(-V0-+|#b;U#k+X`q~ z8IS~ien`uib^oOZlwuM~XNANWx0H(Os+SrWu}+NSccdLUrS1-63Ob~GGpJdo&%ITx zQls<>Lz^wRg%m0;PXA0VGkZ%lTI)+tLcvx}hR=IzOloKTt|1Xf5+;)x0@-k9e9}#9 zuDm-5L0MH|W-FKInsLHT)R}hr)7A}xO_j?ttyfO_)yJc`?iNHx#vZ9WYs6G!oz6cE zbPlFWcaJm*k>6|aEwL!Hq$pu34tk9CzS6c!5Li_bT)$SzONLnVX%A%WD7_F~jas=2 zfV|1bX2sfrzb{-@$q8gWxmvvY?S~;SaX!ZXmCr&qyxC2c0K+CxXK1eLnqP`x3XGd9 zQB_Y|KG7Ln5iMow>D+&?2@=z!dF{_oohK8u|3MQ=9dlC79c^jmH*%YLrT=?-eUt#~ z!UbA3{sAjR!;qN-Jf^!Z2GP!aIuz`4$M(iX+|J-UqT0q9cwFEq1|p9(tYBg z(cbT@iG5t3tJ?z*<&{STUyU+1jT+9)QZ7ib^XYEGpEYdP>{1S(V+u3b`ZiV#y=D54yH0Vl~zP*)M ziTXiCn1Xy?`fKW1>Bc`l;S~ZaOQ_{iN*d7aaw8zLefF87sa%IqxFj~O7|QJb*scxG zSDVX*$2Y2jK6eU|?C?w+WtmJ9`;L0ZE&Kj*oO}gPB(I0xUtvQocp)RmlijYMT`s#z zA%o`K*4!>8`8=$*PqC3-J_#z7v)DllCccj~x|%XwZFY&Pl4~V`ssnNPzRb%?gnmx3 zQJ(+$m*`K>&IN%8Bls61Cc5vj*$3E}=i%fScR{CO@>pbTR7*={b?{5j0~R^ZreJWE ztq`|krx3@IR?h}aT}}WQ%P60wFd#qUZ0P;vM*?J)oQL5|3ka(TB?GN#{1c0ZxgFIwE9K(XnuB<+kj0hr(ji3lBK&oPex8zdfOsk zSU)diCtA!gLUk% z*1L$8kgTC}$(6M}b15%K>H8<_JKNT4qE`KxsO#Upmy0aQQCvOF+Wl|&j8CSsUDglh z#*3h$VdN~fl!xPv8K3fzdEkA zD}A@F>|Q;rEcDK9mtQWkF7Ld@yijs7PuzGc5Ve%l`G)u$rNEh^79PJYbk8P0?m&VSO)ASk6wY}&Ga-?;jrTUQ zUw5y0PFaTY7o7>_p_1)&SBx}ujHRd!HY;28Y0qz_)ZV&Zi%Lq+)`%I1>E)v1bLbKH zcMm7<_7yh;h3%gCVgR&Ui1ez%k(>jq+@>^dHcFCd45SfxK39r8X3)5MnCP zvmKsC7g3cR?~J3Ht0`(Oqfa?WdsUJCqOpaDS*8ZdtUW;3Z52(R`&ML` z^TM^DA+a(ay$_9jD}DWErAulTQaW*5n`OBaGs*nX3(#=l60U2)?5{a1KROwIRj{MT zMt=8ir>u`6CWo7{gh$E+QXp1+kb6Dfl({^HR|SEGDA&o)%9{0|N5*Zx5{R3X7!HR0 zjQl>;;A-dpe3XZQNmb>i;S(LD_n(As?xSCJ7D3WbS7Vr|Di))>rlN!D&` z3R;-b$oqxf0iI{21#*WF!nta5wXqCo=cz!Ky=q)2qdTXWNa7a;HOcp%Xx z&%S=W8DU$j5c6wpr1QHZ|97VQ@)I5#$d@{rEO|dNzqdS#r_78%5}K)&3dqjR2<{3t z{rDazjYG*o{FR|+e2vBVhRDT+8(2j{Vq^8En}z?(5GWZOVC57*capsuNty@|HHnL} zCn;zu1sz2{+uVF(?R+mV4R&1p!lP_A%a3jlZRT&BmaD{yALdrK*duBu&n9HeO!h z(^DQP=(kX1W5~KYul~w%-0Vy8)S@a-%f3c``>u9xs}JMW9;EV0h_r7)5CRJpD=V`< zovu`iUek*y3d0H9u5zs4*F`WxZ8Z?JE+-L-Z^K67$)3G;)D7vq@gbA)CuVpSq@M^g*8Y>Voh41|21n9qWo7un^DX$tN(#NY^S5k{T*QH-(?i zKMcll@?t=)Kl%-52$IFoY2G@Fe9=*Jv=XJEuu?z>(aP+9a`g|Ec|#?OlW4&jIYDzy zSz1_DOb4i2=tk=HZ2q)eHkm`>FUEhyfU%@YW2>D?Kx%dq;Jj`(O6{tqk&)QpIKhtS z&!@8Lx?e(RH5bD1u8s6w2t4h z&?~3}3rLi6Djdcu)N;_TpqAxXQqLn?a-R0=et%)&*}F*nbL;YQb=B?in2UnN!vpWn z1V6Kg2p*a3gQNVcfq^`m*Lw~_i?{mYm=T^ot220!av!D$Up zIMd6Cw!6TzHk(rrH?b~=C9eUZmszU43 zN3A!fA0wJls1ZaR)+0)kt$};I_>wM>TGf4j3VG;r_n{z0IL;sw=;zweKE77?%@A+fAWt$?g;Ig-OuRuqj$M|-Rj*WW@OJ->tPivL*s=w2+7 z+G^j8IitAxeZp+0epVHy@{sb{BdZ(U{p@T~W@2S?PYlcZ#ktev%zIjwP9&5pM*?w{ zr;0X_6hMXHCM2zKFD?uXaSh_$;qYv6gh4q75hnJ-lHFH9@ku%?T;k+rv&B# z<1Zc@EJrLi0-ebQ3=kaxGy3&X9jUZS3lK z>^y&AGoq6)koQ)jRo%kZ0NnSjW=FsRrluxi4DY+m$C8(Vq$eau1+7yUiO}q@u&l|l zyGRbPeQwW61fG4ki|sy1rT3e)Hi22fnp9_rkB7g}xvUNS@Q?~vqsQ?Z$maltIr~w?2lNB<(A3!9nSOF${pou;Xzkad(MUM7 zjLX~3TbF;cgss4kQHTGaf4o;ZdPx|lLhQPT!v?OCt>b&h3hIyUiLU$&dUgIHaqi>L zysL)!<$B5~IaKuc`~Cp=drH(%l>AUq_k~m7#jyOKZt#U5gm*;QB8*@zUp{_+|Mh`v zE3V(yr4gogYR5f{Z=O@EKax!3j{zryiz0hTx}uKnPXdrf6Y%KE<@*P1D_HU0z1I&; zh;inq5+A1K7yHU-Ax{^gQ`fT~I zR$tx$9M|xXYfW3%QwKuC|OQ89uk1Rl7MU!0-n9u8=}MM+ZS1uF zfw4k#btGm-&-5q0M;4A%;Gx&__HaQ{F>PkG72AY%k1X5cXS6Q_78QbqpFH^Tr=Ue3 ziZ0Obcu2z*bVR=wWlj^#c-iai!G3M>Q%I@pa=yf#h7Hc)Y=B69CBjI_;W5RfR(?^9}6<6H}d^k5nT8~+wVB( zEu=ylXR$zouxLz7oBAK%2btl+1R+KrLU=?-6I-9fpT8a?C{OBtkfyLc!S-Bp(9inI z1cQoc4mtkm%p!&9#3y7clm$Ob;kZW&01I4yc#pP2qbdeMD_k#73L! zOr-m4U_3@JVi? zRcs!ccy$Hkj|67wS26)x{3i5xS@fJ+E@qO(Pr{J8#SP_@GonD#oK=Uscr&%_kvhA@ zVZ-!Y!(;-vEe?_-2_uB>6ABDGnt-XZ+;=Gv8v*4)^-g@T9%-(xZHR?=@Q{tnh)Q{C zK`WTrP7$c^{9eq6lOZu*F7(|QFV+dx;<+rT*-m0zd=pT~-b(1gFL3znYyA5BOhidp zMMjBO_9iUT;F=lz`_i{5gU_0)0Dd~(%J!NNIQF7)sTj)pook3Dzec9Fd-a-St8 zdJB+3uu>jgupxUZ)l!@vD|`?fXg(zOT~nv_e3tyf>--^MV>4^UrPy>Vo!ge9yoyQ@ zInOKM#*%4APg8XjoDz;LcUFX`9PLwv0Jk%sbH(;(@T`$@gm@8gey3Y3Im_9r4<~;l zyHs$(z2`4*2EH||x6O3}ZZ1$mWRy85~$8BMs-^2yb+$VdH9ms114BRD)OVcwVSINLU_ICZNoNnK+jvXn4 zriA-11eDFxTq*Q>z5<--h~QZD-WqulwhC%l#}^)|7dd00!U0T>G}JnbN;;|Jq3eTQ zbkK=SXTXSKb^mjv&!*1fm{qHK==X$`qMrl0h^>~1R0r+?4sM-`H~LogCorez>b}R^ zh(g|`Mtj!ynBWSt-7Ik<3E}F}m#vj&^~yav*5ai1;=yQ`k-Bi2tx=C9bVTbg9+0qUfIlUWFjH-Svr;E2+u zFsG{54-@>7CS^aT_53!w;{B_Eyk*rd#|&%}X>ZgFIMpJDh1(l&ITOHLtc>P(c)s^b z6Fo(eZqJq5b!5?YJ7+FfUS9p7R@XN)j0uV&E-0uEgMRWDnOGo1-+NTjtLXddt54f~ zME34AwY$-i+4a%ExZ06B(g(ip-UJ=bSqHj5b<_p97z%Scvce__4K^nKDZha_fZX>3 zge9b7*_FT;dr!1BrJMpeQb8TAS3)1g)>|JIy75G`x;rx!6=~&wrhZ6@l+r?uo8mcI!aij*V!> zZ+3xa_@R4QG5Fy8yR%E6KbyjkS+>+MgckMPOfWpiv5 zYltO$?J*&d7n@Ktt&FZ4L8Lqn>&C|~UwseLTaxqg@G=)dMaw6OJRAi#VJyZ}E`l&9 z!9(F3(cg})S67+IZz)OM?>-f9;)P||t)DDYcSXO8#MxvYVt#Ynf5_QGJvKGF7$OMY z8hd7*h1ehUH*a&rqruY$QOfx(T!_jMGm@?k%ir<H7vs8*xHkv zjgpU7J12sOJ)*{YoW>%d10lwi{+OTaIi-$s-ZZk`o*CcABM)A;rlp>QGX;~BX8&%z zP-G7dbVhZH%|{nUQ45K7F;I!~;8rSwN*@y#+ftyeD_0bZ*!NbnIf1|*l^RKBPYig1 zNjmcPaH6Z_gP%eiU1wKjsmSZ{k}lTNQ@R-UDi;9uMm3qNYMZcOD)#R(X1;8~t$7IGY}Ys|WhZ#SXdxkVmsv z{Qk8hFzUUwlz-W!vrO7rsaaX!mI1T~%hm`>l? zK%BYHJzq$ew&PkiaM%XgM#|j(@Ua^FO`XJ+w`j~f!Q}5lreg(0c-3S5n^s2Idm-F-7SXa~$A zmN#Rul&qQEX+eCVTJ|8O;WRXU-+mb&<{x^4;lKL@H}dbdc91jqsE|1UCY6$mBxZNr z{F|dBQkqwajXz@qQ76Zzj_#-(`D;$gPEY(aw!36RBum>zBCDJ4E2~WRM>Q!KZ<3Jn zUy*AQ_vqbsGx_TN-K>~JHGK@WFvZurd7pd&Q{kTqgdOVAAQHJ>orIFxnL$Qt z1HWC0x`Z%aq1MB!2#2_6CK4YFh50}G6VK*;bF@GvD@E+H0&aZ!)>lLf3uTEF#H$JA z2f;LT(6@=1l(k+{_;eI?QNeHek2h}QQN;DX4NfJkkRpq!bX?L{*P79%xsfix`Hi^U z_p)90xi0GoWA?)HGf`*;_Ft=gJI+ve&C;ohp-ZfRW-vi5ASJ>erI*UbT*z+c($1SEuuy(<*#f{*x4AD(}I=7XG&zvV++ z|H@agMWD0Vj^M|fLhA#FyKj?L)-Jnm#5uh^6_{AJsUDOZN68tsGgv!0ZKb9h9A012 zT?Z>A5YtO}F?ORi@=uuH*9@rhD0qKF8t$4%g!`xL*3|lw-0pi0RC@Da_dQYYpWN=P z#Sb2Fai`2I2=Do(5r|3~W3VDoN^FiU1zI_Nv8JU!6 zrMo{n?jD5SqVBB&{W0omg`PQA_xRkSm`>CLh_@t>^4&-p+SoDhgEvJT&E(y;^7p-i z4}JWJ*REI1215RU=Tww6$I4KZOQ84_Em}b!&bVQXs$uB==c|b zC`b8KEV^p})E)IbBBrovG02V8R)?qS{D+|RM;|b4HyU?1kre!tDDcjuJ8|XqkCnO{ zijr%avn_(B)Ru?WwEd*={+7)zvU~6te#2)DttS~}rukUXA%8#m33>Be78@ z$r^P%i!AHaqbB zZT9`Zaqzv1iIf<6r>4e`neBio*ZNpVAp3A6n|iApwQb2oub_HN*ObFqu)`I{R`%k~ zBV(N&he?Hfz7Val;Zo}5-tPMymlLz;qi>n^N}T>UbR1+9MvvD#j^TK;5s^3Z$`KHk zIh(-xHe=GFvce#s2Vb~;%bywHBZ`!lZ1IuZedDz7+m{of$SYu*HGOl4T?#m+-qEw4h^KCY!;h?8gpiWoRlzMK85@okR(qd@Ig z?3K&KdROw29OD)VVh*2FU?MHS+E>+WX)aS05FdT77CxVkYX#?-i<%O1xM5)r5^K?f z4(6ZNAQY?^_n7?57yrTr??EhUa;lT4{OZRFL^5@{Xo{mtTo%45+g99*BZt8X$C-@f zml`V(_G1Uu)4I4fE}MX-^3~7d8IQ<Dr;N(49LurFakN7pK$$iG~&2u-_`jZ)M=* z@9q_rIgyVBM|cE!+aA@hXq9a>8xgS_XMMWQ{zd0|l&15zz+uL&@;I}-V@BnEAkV%< z`bZn<=CEARt2P!r;!>A$l?t8S(fzG67SB~}A3rcyc&WUuep^B32Wr`pPGBRg{?dRe zjXE=*>)&rz*qChG%Sv9xOi&v34DLXy{xVs=?swUkUku3j_ZkY!?54$b-*KIH;QA+x z)%bA%Z}x(Lhq#kwwyi#jg~xizXD3*DmBncu!th-oP0=&v73K~eSVv+}Donk^)A4HX zmmz7GbB)Gvn!vI~eoEFNTUGZgTi=Rg^l###ok8{oL1pKiGrt>U=hX{#BvS2_e>G<< z%3oFoYW!ezlT5i;VJ346x;eY~16<~q*W=KS!PJ#wqLLY0leaTY5^d7D)HWPzFMW^v z&eYAP%lrzCZ*0C@1Vntg%$^J$nxUG$DfxrvbbqIDqmz$W71wy+`;+u~ToNDfa!y)} z{1EvyMUHU0e@dMPPQu9BgXD>`bVS%d<$$e>s^i3B*feR(ADV5}TAZi6NijbXRMyYB zOwSB*i3J2E-#`p^YFVc8Q52Y!xsPnz=X^NXGB+-Yp#Xz!ye|aR{_z$ze z0`DqUw#$^Kd%3VGv;c2(@qs@eL>ZU@d!jH2O#sOz-K#_!s!D z`wrx)*6L<p5&PiVQ3FE3p$)Q zeRG18AN4W^1t*SL$q&#Tn-ByC=8+#(9lmrKS5^np1^#8SH^vJXaVFF;Nz*f8mNrE7 za3bAjjNb-a^smvRfM88HJL6E?;-N2{1p7xoH<(CKUTndRbDZ%!xfu4A1dq4WPWWL^ zy$FZ1Bavx4Fn6h8==|Rl97#R^9%mdU7M8`0?u!E@e6s8k$));Zn_uxS4cOu?$AA^#3c{TnX_KJgS$ z;j)3i_5TMK4)Eq~o0{_$%+!9U_X|EA)<=M9gM!*&U}Hfa#*d5FhnnYD5E zWW-^rCk}|S-Q~&Gk9dZ1d%ypUnEmTt#W(GongSmQFA!p)uy=4PS&B`|_0HL=wKGe> zJkoP-xYb_X5QbF#)y4nk+wBhhK9yuNK`46SUMpX1NAci7{MmD&o+=~Q*2ac7;l^q2ze2{q!B(HBT2}@+6kyd) zTL0H>vkoMLZLt8k0HAvnU@3p1H9YxG{e>ShE5fJ){mL!-~sa4N1b5!P#vxJ3} z@{J1q`&a_|Uyjk|7vA4fw5H`f~`*!GmHc!beyyz2;h6z$Qunfdvxif%lt^` z+8FhQ1N>ni5`FO=fb+n-z8D=s99*zgF9F1BLWSs64J?AZ^*$sX7O>_MW{+)fbdT1H zBQTCr2yrV-h{lstfUO>?sW?1BRETtq{~gKFBt|Dz-OB3;s^XMD#k{lP-_ z9G`8BtIGWUc6+Ok_F1v3xH~flm14Fc~lB~+wN;lI2k>_*PvsHJV@zeFT z^w378sBL0bp!?X^SB|F)&iu;JLY<^-;)m**8VG}1b_}ez;UE}4M8*v>m*a=fjXb)x zyM%XsCr;;V;=!(GPR?Oie@Tdujhc%tN%QO`i(WBoW>?I;$j;{MROR*13!RU8xKN_D zlh2fX_E6KmS&si4(bjJ0G=bq0qYSrYl24afZZ@3}Psw#bZfNW7qps_-cn1g0A^jgz z^a>zd?gY(;@=4F^An{$gtM7%_nwg-XM#jXZnsh>w@4jj;`3_knE*{XIySxwSJp=~e zys13gv$=sO?*NIs{JK%Pvz?N*83rRItjmIr1qm_Az1IF80|9EEo7Ehm;v?^lIe$lP z@!wk5t4k68}&lW8HD)hoi0Q?eS`uE;GVnK+@(2@;{<6 z0e^d7w#y8i?Lqv*GaBZgYfxx%1P|r_T{8JjxDT<(snxKgt1mfIhSYYH)mJ2&F!M_X z8%?(mh-n($S_)pRYDrO37k+0#b|Jox^~t0#`!3<6^CH52lZx<2J_0L%oh(=2fZ-UX z=uEplgI{M?z$C7s0Uqnulb4D>WvFgGjMw8ycU4n$+fyBQZfk2s9@}8+(nd1Wzhk2_ ztjDWlGpmsTu2OmuPyANczhn@StP{-hu#R_gXoS=O6e<27gy5K;0SGRAX4WfJEig?$ zOUNi-f%B1ST^qG&5=Ug7{HsVM;U}GY#>*(OFNai&X!|<%A?^Wnu{>EvEQ#dRQVLq2 zPdU>^bOXfowYvir-?x#PUp<>$4*_F)@ATQT-SwsN2_>N18tI+i1*_u9B)@rrs9PFt6>115ud6Dgw_(jU zI|@HN`K!NHNoYrM8=028FkbWlGL87EI_KrCHoR0dmszK_nb_0;hrZQwkvsmck=G?S zD|FO0h3cVH7lxBO^7HmUBj&)flLW0OAr_K}GD+}y`vRp>uMtmk%dkT8a`^3bLhIyy_>QT>QiewYjF1yW3A+s> z-R+io9Om3|70(O?x&vIo(ct7^esrr`n|8%|(Le)Bb&dH13_Je>-J{ACv*6LlM@{%P{=Fpv+HbkXrhm2H$Dcrj z>&nqwuD;9|+L7h@1xPUiF&b%0tHU1|N&338bI;d()yaon=wfD2iWB>1h^iuZ{G} z5w}i*_RT%m1{R-qoEu0i@x_Hlx1R+K<)gpLNusFvDGa=)zD@b7%@n9>bY_p1nh)`Bbg)N?!ipl^r)XGZC8 zdaMv)>0=xPt-UZ~j8br?#ZIu&0^|PFj-p~d-)F(EX{t0GoD*{%-RDn7@XnvUe7T^S z7qPxAT5@#)CGfY}^OzXSGMI* z7oRF5IrcK^)u}(@%RJ+q9i86?57q9=hh=^9e)ucY870a4s&8J8nORoI-dcDD8oP@cYM_EOX=dN8i zF>bg$XV&%tD!q8PYd^gU0`$+MR7LS9ez$b?hV zc~z$wVcB&IC4SD)=8n51&~k3Fwo1W#T$ta*k$aGB?*BG_CS7bwk4&*E`B;8mI3e?I!r6x(t1g=d16?duNmuivnvlliPc7WB8cmHqm9 zpNJ^0c%rBAG6<=(JtdkG4|Jn{-((a%#KJ4BFd$(SyiJ9W44C^q*Nk3l4DFA zSyZf&tR~K39MUvFY=&771_k3sL^-c)J;8QQoB<2|2dV{!poJev9Z1ki2a7i}dL~Qp zPQ`{<^mGGASEl_@kN?BfTL-oEMc?AZ9THrE1b25S9;|3vpt!rc77JFqEl}JG6nA$m zP^>rD6;StC6o*hQ83F2LD3@gD|)GEyuMW1sq8cu$QX>C*HYF-pR()~4Jonje;9 zO)oPUhfp<)ldw`*JWAsVTp5(oWUibR{3e;GV8(s44VgkrI2~+qJIariGVz zc&mvnI4POhBlb@exmb5LW3lma#rZGf z%{yx^wGQ6)CHVcMOAtlb-?{BE`{yEXf(ai-{K?*T13@@1BdBv2Ft(tC`I z-y%araHEiEnDTioJKIQZs-#mUKrDNr%Vr^?aXO)vvC_hhHMKX7ayje_{cI~h%f?5+ z!9i5Lcx}}88MGg)TH&#=G+VcSTmsc@+SeqYZ|XLQ?s+OLXnxvc0O<)wVp&h*m$7GH zJABtzFrS+2z{+_YRCn?7600p2AKpfVvi7;cU?3x(9oAb)iDWa?|he78pq8ex+%-o-8 za$4hepun|P)+5d{IknVjL2C;|&ixpP>+Lqn*thmAIvLe>>*Co#Hy@8B-H^EqJ7ZTX^z)_;HMO+kRN!vg(SM6wBMhz{W@DKD zOoSd-Jp%J*Xv9USn7E93##TVKb@A&1M_eZU>XIJH_+2HSJx(K|i%f!oe1OWx)doRv zjrS?{Eu~0Qs!>Ns>6FrbvS?wk#m03SmT=$!e#=CiaNspM=3jhMhQO$YpYsYXKd9nM z=t1E5r~9>MLPwmP+-w_DR4i6H7p=3K z$p36PblKX!0PLQT;O7Wlw8-+(sBbd}3Q3u9`adYq{ER`on4R)Dc6(aa0Ic!Z zvwn@0sX)D$POv70MbOi7Is+y;ToFhrbNY2Zp_*BUSD8v6A03z2P)n(mBdHB!k?~NY z8p<~nbw-oATJd(f(ZU;U+<1PfUL-~d^9S?KC}P9UXWIP84YMpK{}F=az^;nFoqBZE zBqL`ET@-IV?Nk5gZ=jQ{76wI?QS~n*UHK%Fqrb0Ma0o=5hS%P0Yi|s#`Jwod38H^2 z?T;eu^-sM63z)gyr6jagw&mlVJ?~o&>y!Z~>%A;fIfF@cK0wC`>6?{`T}H0~gMkAX z=&t&=#(l5CE-3#M55(-tA(uw=NX2Tw71j*(??yuVOa)udTkg7`W7s6uq9OCuWk~=e zV>6HS7PyraR1_VzW!Qemi4zb z@oEN;5hbvt8c8|2(~*^AT-;JPgZUUJanlIB7W*!O&!zqiq3E%(W{5@gxF9M4H8T~0 z2dre*_L+@ZKVy9Q4XlQ8`eFL0YYaRFsER+zgqM`nug7FNrh8?+z}TYBM;_D z*2xdJ6ZE24B!f7pSS?e=-H;CSg6NY!WXv|k=$4c413k}E-sEx}Y|!F|A(Y(} zdwI-n^ZU_=D*p2U33J7Qs2@7PP}RDEaS+9GMbXL-eg-7If96A>)vg%czB_K1l4S7e0+Li z*u;DVmNk}%7FH=~C&C~xY{zNA*qz%e}&Z?n2rYS=uR4}=Elg| zEA0*WWOqL^2??PqzFx$~4mQ|Vb|RPyDFy<)Kn9wu-v{wu0asJ1Y2_GryP9 z;+I9)NSFOds{R3aDYjaLYG>q!p|%i4!Lxavc#2XQ|nYSAS4 zz6swA#zg6e^cd$tKDe=ZQHsX)MaG+)48O@o!qzyLRWzFY(i&kkR-V&ed4Q2Gyxga~ z73b;CSx{SxsEQ*X++j{w$qLrg6$b#bl#9Dek07GYQ=Jewe^#1CZ>iZ~KPbgBkl9oE zOjqbo)c$}wqtQ{uUKS`=Nzt1Zrcmuvh=$R_I6O>Gp7b^5&vK)w*Dbdx^{=uR@V8cT zmm910=ee>U5-xy~$l=I60^Eo{bCYe1 zywTrFxI?0L+>D__xSJJ2LVY@Igfij4JYbD*t24pZ%An+Cfq#@}w|Tk0(8>R;;KyF~ zVv7f!*!r-7HVW$%^rV5eiLL1jo&pR1qBPWrI$l24)J~&kZdhWT;Je*g$s+Lc`nW`uX~1SfB3z= za~47@mI6wZ9V=5&z{9T zY8_)ABqp`&LAWBh+IblQeP{-v=pajU6pzyS-s85+q60S%aG6Sj>yd~)IIRl%#kQ+^ zA%F;3j&Rtc!Sw#L*J@8oW-jSzl#r(1{d5l=dE-d zR8`gM!28%|VJwE1aaVuFTY09fNs0Yk;hBsz(o)ueFn&vpuOLC9UMjmXf;|QjMk~G;^AFDqV|5IfV>$gU;_(~85ubV2OcsjU)I^2an=~9pG}x6 zWGf{b8U*m)o{GsKZ-QXHk7irj^qXeAd74W5+%u{0KD%_NsD3q;Ti6E~sNYjQn7M5+ z!jL2BSa=X3Z%?JP-qEBDogG`S9b$F#?n6^f-?py(8K>&+eD+Vw)S4Hm$18TP~H$%j*!O%zEY)I9M1RNb1zfmCBHXc4l_3~Z3iUXRw{%B^f8V`wlGc6AY(n`7$kktB5VA2;{gqEA<@n|wPJ zrX%T3;fjezpN3d{f6lZ0aW0R$3%{=;>jxQgC>n5Gzlo}EhixLas|KNL+6-v(y<37G z!GHWMmUkT+a0JQaqMx`t79(626j6IfmFee4oLmv7J3EuW#uWYL+ZIw$8`iD(EAQ7V zEg%@9uj*|OL7zS((QqlsGox|qhD6Q$#D)3`CV92@U-}5e>|{}#j#L?P&Fj)yKa{x(oO#SN7`czrCMMc^5v^h7?p<>1B z$I%$Vq~RWvA1mw%Mn{BFnA7S~x%v3w9>(Ob?*vSj=P(w;NDrRsD~;lQ|H&{-VaZGV zEa?w;`q8`$L06utd}7Nt!7X5C_{Pi-LQ2W_#nW1{R+&}9FgvVH!JAf? z77${J(EKo1HMR6NVd;?fc(I0vt}JqW=Tsf}N_C;$k*lH}*UNhYUikveodi6To%fh0 z6qMv+6b*>%J2(zTY>*-Qgy)sn!wEBty>*_SR)mXE?ek~hYG=t`%F11QbjS?{*|AId zQk4Z=E9$CMOj`kO=#`WGlct2$1Ttyr>BN-g+078i z^?bC&K+3iS^-Ws&Hktfd)p9)f5aK)%8+% z3B$>7pR3auG~-HXHav4CoXghxJsfp~%dq1^lJ+S;a-TjQhPs`e*fNbYZnX9oq7|$n zhtt^WR{9^(Ptr(Lt0vK<44AdEZ3-lyyV1xHxkVJq)wfUMYVd{Kd zIX#KJUmN%IB9f%Hvq$}niG=MHgMggVFo&#z3++?Z@x?|)Rrgfin^z4kkf;lxUIhkk z76#Er#~+|YG@$}6ud3o$ygKHpG8v9Eg&eq7u-kjYjokY^s)RKrj0??ctwLDy@bVmr z%7NV79b6%rTV5aRq!6zx7^t2<8CvBc|Jju?0(A(maRym?1e1YxKf&G2`#5Iz_*v;r z?x$z;RJJV!Vcjm)D{*lwEL;P=6Hytau>fp5!YfGB{ouQnI}HVo2)QE3L`al?{UEo* zKSVq{%4nvDAZ1{7z}@@yml1oPgO)O%`yG4O^;UvLZ7n_u+ZDXT30qu3b^E!4XL4Q^ zIY!iiXxnT#i9qpPY;l*&flS}|i~@DvN0PXuud}eN9LXLmE{PbD%8sbDmj_RAPbV~5 z{QSvUOT57cR6xP36xXyAi=dg0AKU8vbI$o@gT2pA5sA`LS1&AmcJeB0>cdooMBC%W zu|ovpD29XY+rI6eu)#Iw5O`O{gdAy)dMxNy8Vjr0&FC0?!2XdOl*`+rp)tQrBxhBe zkG~6nY22V6Yr=S7HZ^A`GUx>mQj1RCO20L*huix{38RG>y`e1Kc0g2=6MZYgyP&!m z-7gLl@C|Q{$`_xqB{^!Y1^zeL5XC42tuzX)uU9S)`w%FqFgx?zG8vdk8$#3OOULQp z6p?C1)?xHkf&)pvsa)Q|0zkQ|P1mp0LTy$yw^g)g3S*TJ)_V;)wW5!k8yx#z^xH@!F`7T*&ovT@hGIpSU7$gUEwR! zv{BkK?Ww5uKlD5;faOf=bcEIMY6G6pX`!mts%BDYv)se#QC9#ZoVO8kb;0;wBCqe- zzsSJC(KcJGD|<)#Qe&|gzklR6w>Sjw@?yG}j52=MBk3`!49SVa%MN<*g+)ZtbO=*Z zzwQKGjHy(8PPtSxpJKEHygsbN`&%EAkC|RseLKx-9JFDl{A?h)yqk{h@ z)XW`ttDqn=i|^NUxC>(BHr|0F!#y9WbsR96VoM^6j(&x-y#ojiZB$#7$!3 z>#Y^^K2cn{sa)(yJ`r(s!a#;=T>;Oms{tpz`6a|A-~%aEq0v)tKC=y>$b`_+i*)w{`f=aErTeL3CG0} zwuBJ89|lj8Yh9>;CypMV0)wbVxcycgJIhi{qR0NMM21Y=K8}v2VZt;@sAlt^jTQi zDl3UI#d%`tq1+2)UE=rq875_OQm310yT|iDVtj;_eq<7+AdsYIlAxf6&bG2jsnt$|7pD;6x>o?}2(Kykl5|z_W+~fV;wQ~;+UfbV*XN+E#Z;rby{)FT7lHVk zmf)}X_@I9s1X;5TF7xPl_!Kk*BE5^NC|#egPJ-;9=e$1VYYTqYP4hjg(lXNo-#Y6k zRBv`H)H;F)uQQ13?bu_L$8#k>Ii0ucjDx7_r-exR2QVT!Xh$fTm`GB^cgAU*FEy5a zNW9;j5>Vjf+te`mIA#4v^G#i+CD}Gokf=M(o@GPiJZ|LQN@c{`Ee$nf6*ws9YUBO= zQ%ss_$Xl>P7rEkrjRw3Rr6F~90U>5tU-2X2^c%q(d|96-hQ7bGS-U5M zupT9vaQ{7cXvP8)wb2NQ#-XqLMaOdQ(%dC%;*$~oMdQo7KQKBpxL#!m3?HNlzaLm= zwFDs`xSyQBG0iQFTKxUe#S~u~Am3Pebt3l1K0WAdJ<&#C=4-MChhZO&`vK855x?1= zbx{NH8m#E45O+_ajW}*bw^JRmKLO z*hsLMK4q@wguo)u)(?hqpx=IDu%=;%+-9K0 zltUM@S=U6up;{J&ayIDB(I&l5W^q0#wfeY*S|G)n*z;4yTI@ks;;LU zv1_-g`&L|>OF4}aJVCXJq2Wp7SY@1(KRjK9{o1E+(H@afG?~wCY1ui=$j<_U;OcGw zNWu>k?TfNcMJDeZB>5dxVg}dhU2KB6r;bqQm}s+-gDn!?jpav2`jL~1(Gq(Dl(0|g z{`A6a4^ze&{^{f--`(FkA_e|Ju?!aWc)}EI%`kDxj4|i-&8;ZHqJRvo|Abo^Z@X7} zzd?G=l3V3Z3|L!5&!fFM`g2#(DD8`ZgPl-NRfiTrZ~P&fW&Zk}d*)KIageIhm29E? z3iRc&tlHe?O(2KBBt@Ydc;4L4iq3D@eqDO^ml&^%%}ioT>t>NXSCa2=j3D*`#j^|S zoMqe6icV++Nvt?R^Y2t}&5eFy&Kjz91)JL0Tjea) z81!hR{6{lI8$wW^Z1i+m)L%FNSI`p}Vd6SMn|;-zf~=tDf3}aO@eOP;~MNv(^A0M!(zKJ3+65_)yS6agGVc75^~zR91*3W|5;Y zg>mq2OOUASMRp_7K?BC!-~Duxdp*aF7>eB3Iz#>TMcto*gE%K-;|Qk7HB`O90e5hJ zzp(sFDBUP2|K_atd=OQJFrM#AO5X9BnnoJ z`0ltXIM-z)TqEMAK!wkqGc`>L^I=+LlFwxW2@pVqf|e(?#Aa^m!(0Xq!hc>URS8VFOS2B^- zNtjDk5cR*voVe4_UoBX#I|oR4$~O%VbfyL}D={3;eO10y6)8 zxx8~cEIkt_GtHOz?HQ`Vin0EwtTs)Z_joOHQ7hN{?RUFJ=$O$FF$!-!KVO_Br5Iyp zMPOAZzlj@`g8K8JQY_baRr`;l=V|w8pT(yIG9{`Knxkd?U_KQDur!?GV)qsO<)UF^ z2Hv#T3QPE-OS@u}*xC(LQu-$mo~m%6!5H`ERJKLYi{j7m)CU`7i_Z_S)C(F!sr`zO zG(99-Zg$pa>54&|@yggZ^_%PQlrDlIxiyUh6iuh$?=|T0x3(@|(Vw=|JpDpb zR=K1KQu2ygaJ$-Xv7a)>u2}^97Vp|(-ZqS9$$r1t-V}{>T*4tS4$|7=?PrkRD7EG? z8(rdorK`HQ;q;49KNGbS$zQt$d@y|P`_Z0KV|gZ;!yoV4{S*!=5guw02MaaANjgXJ zK^~9a<|0W@+{`p z8B^gr8qxnS&01qcSG{*Q_q~R#%0Zx|-eCrJhvR&xo0^hxn9*L;v-L#YuQn`PR1uGn z7GX#cBFdt#unUZ|z2F-FpE!QY-z&F5oP>&%*NBDqb8^=rx^#uF&Qe>?l-T}5Hh>id z^E10$VDY%arb~;>nUM4Z`ueg&eZg(7VM1=$a5a?W;56)fcg9ugX+_bx&Sx?wT1 zew{?QZ_gIemUan+dp1tIKLUGR43>3$rj}2>DLhluOw0&rGV-Uwn9AecA1h(6>P=Qj zFh7dmh{A{h&#!R%Z(_DaqUE^?;>+{C$q9NO{`&g|H5E{St5{i4z4$Rdex}IiSMax0 zV204C)ayDqX%=Pf_x(I#vJFS)UNq-U%(zH4aoS#&o$&b$m0fHhV+DsL@i0n?yWY|5 z=njfT)4$jJnH>fjo4IgqkSXtI%L{T^9J@5Cm8xOvDiuxr8?>iJSJ3P$0fd8LExauuDu-=x;YtaEAY_{QgSST2otRK6(d?YBo_Bphg~Hi`=lP9$q!B|Q z4uJ3jnTBP}f;%ax(-0-c5HpQirPrxB#Z4-C(4NGC^KPe*%y1F=cMJO(>+kOz%z@4P z_>q*etLJnC17`nW;mSC{W{6?DYYebgW*0B@2V=m)MFwm$CgD6GC?KL~trc?Sn@FwG zSOSzerF=6HYSsQQy0#wE^@2lU^cm6GxKri~188CmaaAFB`#SWRxc5wH{IugOEG~eK zrZW_7JmT3&D*8ezdQ|}U=@UDS)xffZX~^#O3*wrN?$D>2?EMEl&&{K6xbiRTU(PFJ z&;BvmQ21_|L3F~D*V;ie0Fd*t;rt^@H00%hSk#aK*xP_`FYNh(-wAu%gTZMqC1hx6 zof#7vDZWcV2KJ(oh)#HY?7Hy&^$xwucNeqWgB4o5y^$sPLU{(~%&rH$w%=j4>#RA; zI-79VSN>I$tg7&;_;iaGG=%mFL)0<$CHt6X$tq!< zcuw^sBFCDhb`$?%rEX%2%QzrJ$f*5GYECO+&?~y)4x}(K;OVsMReEVD5|+~y82UGI zyzlRJNY7wAR~ $07Q%%kftHEo^k{;_mexWc)Ny>~k2d10c(hA#lPK<{^i*-Xc&2ZWZVfYRHQDUxAOb+B}1L? z?L+2uMo>VkamNGw*IwD&qFb@4R#TS~;`Xbip!KStM?OZh)(zV^b4$2j+V70uDd~DK z=xK|~XYXVluy2M}_s%2X7OD|a;3cj1iD30<|IPv%CiZfj(6vz&^hy_@(7It=75PmL zy=E*H_MP_WCFq4BDDUvmIjEnHWL(ynUb!VhlCkNyH|KSas}S_IXMhh4K)I>p3{?!I zEQ$wvxnT9^TLe7rpS^aYb@|1`Vwq0dc2f@ud_Xi5;y z)$t1}=eg^3;Oym$q_8qbeHzAR6u9AAI503xg(v&%J=VzL)NyQkJMYsjUe}QI>s^p@ z|NZ*EwOkqwBE|{?9F8p5iScWQs zp@YxjQxeeP>;TNO&kx|2m%Fu%g%{Ox*ObY#js^dJSWepI&U?wVljxer1@ExcnXKQb zo%Kq-ti94*A_yeBB-igrnw&K%A^Uz6fuT7;0nDD~Uq%N?_lyf4SAt%j)e9$poiK?d zJ1l2XT4H}(q`niFCVcNfin3r-E>rSkeeImK4*p;(FkNNd_jsUqy9YsVG|bwnt=nU?Qc!71;@FE4kJ({m6% zt|&Jht<~dS3G46Rmnr#3+wUU@E!DQ>7kx&SZ_T0od;YN&gKQ~h)2)C))R0(`GHjzw zUJcoKME+yB2XxW_+NCFq2J;=BR$kHS_aS!u5fb@af^uSwOcIpW;P1^ z7kGlPz)eOv==WFdOC4p`dcHU6-YAz3z6-s&jCb#4 z&qd`{8^W6hBSkCAy5tKPT-K)c(ris<0~#B7Z3Ga{9V$%NQe?{cWq!Jb*L}iMXuyHm zA@y5v`7E%RXuIrAZ@6`T6p=AK<4KJVVIJ-!ss_dYzv_pN%_O7qDuL?>60Hwtwp_rC z^`S*jW};i8`K^-N27OGiQ(jTSv_UFNxUA3PUeK5vXEzTUFzTx}?BR6HS5ntv*Z?QC z{q;avx(?E8J#U}14=x%P-CN@W`s{`wiD-BI;@i6E7d5r96Uz>`;_&!j-TVC3t#=t3gPj8g~l9FjA;pY`O`C~OLGC5lI^&4$o!5x(u{74)d`;H`*slN$6 zaa3=a9rk1tmwMR$bOOe#bub7 z4Wv^npY~6wdk$YTj~5!r3i>+sk14ws9#j_^JtbPj4r#V)!JEsprPZi(f7`evIxvoy zB9bW2(7GmRuAL;JWc|I(-JP-80|KWc-(q-o5LnCwY^PN8j*UzFp!Hp@{>;I<6#yo3 z+xM7{tsGhy_7nY=l*cKY(Xd{}k`TeQme9A=yG|9q;kjJxYlW|G%{ckV82eippO&3o zjh6%Fa^$@E*)7>6ZbjlZh}md^A-|zF9ut4natIRKu=nv07wX?8-EA7;o&(PzaM-Qw z0kh!KmE5f*;;rb1+?hT|McAj`9j+;&Nbu@?tynZk0B@TiB*Q-c zmnlml8+T?f*sdj$Dm9r`fHFnzuvD85f{uzB@t6SL=s#)1@3&Jx&?#yN^%4L+XiT)? z;yB-sPKKl1P}OZAdo!kla;V)7&j9+>p8d6UG$Sw0C~us>!)*LvelzIq3>*chlOPz| zqI`CPjd>02fYVT->JK)PZJt8nC|;AFbY)Ms(Gn8npiugPyjt>(k1UC0@>sW4>tCab zZQaP@f6+8E%er{@QwM-x)$64|{OsVQQ*zRG@W+|*QyZDpk>>BAMx!6-xAcokwGk%O z$^%lk);^vbDn zX$>zhrW@AAuvy>u(j`Rn4(SSlesc2{rR27Bj;t#cUMlu~#b@l5DYw`sw-Nz&3WxVW zr3}|s)CtbJXpYe8-D*=?CIu5YY(KxYN%%U|cpA6RWQpWfU}#dnn`;_C5sJe~%0bmr zfXSCWBt$m?i1KObK7ybF5&76`idLfQ5Cv&PFk2x271jZV8`6|7J2u&waPEfM=||#m z=aJv${e~m!sK)dJay?%tT}fO!OZ{09!acMGcWdXg}C6$9)MkB)(bCwY<5GiQLLtQ*jI=}OZkSdkevJ_Ji!o@8w z(v=>`FAPEic48>vOc?P03#M^Kwj`M-8f}c2T-yBUaVjz9hK>4vBI1nLN@S3d9IWl) zP$NefymCoizl|I`u_0BG(4C&GwnPxRq!`7EihOX*&2Ai`u&rhTZ`*EDz=gl^Y(ob% zVAEYEGhzE$P~tCO)*fhDTiwrF1LF8b0Veh{wG1E=yd#wQ<4>4E>r6;En_DGHWW=9rEyesT(fYe-braf63k!E^bH2Tqgh2z9 zMs>1{L%E#03gs6zyQ!(E@R4>O#UeqhY0G8B#E-lJB+0Q=OeI~oP)NL zwZUD5$Pl1NKl^q&3%FpDG@CQKm4{0R~0`FhD{QfJcFh@2{$#c3-4-A$0a1#}+u)loLL zS7Vhx++MI{kQTEFMc05$6q_;?YMNxN)x}bj`QRvjA|@>n7BBn4bWtG!5~Z~Jjhu|z zAT)p(kCVlu{JS_?+Au>swbi<3W9qK-yb(0=x5v%2^|-})`Lc+awGyJ^&D8NK=j_Y} z_tge(#`KsbdDBniw$sBLu$KHo{80BE_(}paCvq>XR8F~4IB!y0)pn9b*c$GT6WWiS zcQJT^Uf5^;@n z^Zx))qO(18n59Iw8q{YpBT+KSQ{KI!7pzdd6M*4~y|W2FsTp2@n};1PX#bK}T_JW3 zS7=zI?qSUPpBu!+mIRTiM;)CzruHe_<)8~lhQ90TQ=FFwr61tRtut)2@rj@oymM1W zA9<5U_)NGOp>WXX!?ySknN$>rJ}!<`!p=@6i~Jwk`2V91&N{ed#*S=f*3i7v(c?nH z1_L-4GZ3pwd+_whpLjkV#Ovz3{jg%0h)*wMI@%bFW6Jp!i@lMPv+BJ_4d^` zd|)@RE8r3&;7gUmTo@DCR_w9}7%rULuLmT0@725#IRo+4=%K3)P)g17*9PIccwahb z%1mFtBfJQEZS;WjI~ug?LbLo#sn=*4w`u-<+R-ih+jEcbzmxEEbfk6^VnAYTy(tfs z82tVP*+mR=U43=)ro+rVdNKV;bbn--RQxqXA#>*VEo`N#%g*_~@2z7K{)(O6Qp#3n zPOI!w5ATptK@b{A$^fjdWY7AHKIlYgZsnt23)cD&1+ukucb*wK?I=nrf}|rGtQNaR zMi5+iY;DSwLOulSVdfPTk%Ho}(hq+n5*{JG4Z3i-!zW%NR^w4B`Q;qJ2MirZxf=Wt zgqVQTq7Km0PUudyMrs-80_;(_aiyATsDvVdf<*6spj{67uMcVNI7vsnSwZv+kv!P;7uo{f-!v`1Qb!-CwG;!4fC67Fkf6|r-XTboLKc?z&kqquIZ zqqBGnriygorOPwH%#aD>g^bD#r*uC;|Z*}OzSur=$)L*ME0rq~8NVPs(oN*R4%w}+e+89Y-qGbcL zuv8ve48D4cj??-U>5gyp9iL)ER|vq4i9E8q5_Zu3Tis*GPc{qY!2F_H*%V+=zQX-D zALN~%uVE4cGW?NbfZ@*`(m&3S>}yDCJ}pizEJ-;C=p?+dvQJy<&NW88Lszi*0D#SD zS3i?G zs_|^XyOv0>Ex>or=}w9t=rQ!8zD}FT05M~D^R!h=%vnN}%pvdU@t|HQV(|o*sv#%XKBfB1iNusHLZ1@=}B;Fa?veAm)?@)ZQhBUf#SnbJxO> z^PF8OC4#o952?Xiaxwvk-<81!cv#CPC%NJh?2g9(5LsL%?R2)vrIJ5qaM`zzG3xI^ z`8#);9~Ev!i5%YYixOPMd{KN`o0Lh40tV&^I}jtwOk4N$CdoeNo0?J?fMPAEtfvC~ zP=<&>dD!ss5f`^f*=|Pn<$s{APK242uF%oQ)m027CAN)smr6U4txQ_OKr$kfmUn6+ z$z#v-XHA2z*17~_z3Ia=DHfTx*LYG0EHMGR+LqRZQXC|IZwhDas(B?S<%>QT?t;7L zk<8vENeoNaIW^@UW~@^XLS_7pM-=o}ZTYmO97h*Z+6fZ2XZwaC3l$C{`hWjXjno4d zS)x!(pNc;}9k|xzGE;YER{}1}!6u(3CkoruS<>W7r|2@EzZoWm71f|o!y+>aYyfnn z&!L*ST2Y(%4nD0*vQnFC>3hS?u&V7emFy~^^u+We=`}XSv#fM{yzqC5qaHEIThEvb zds@#6@!u8v^iccFa3zdaK@qGftg$%i!Ed_WG&lb+wYOIq{UsFH)&xjPy|yM!ssMrh zD87q|P*XiT6udDVs10Y3rU!z>gs`%WIJbikdd14BnGc@H9dFXlifMStmVH$ zo!h-UhZJ+A7r8rLJoZno;_R(H6Hb|tfv6v?{EKzFH9nWgioMumjYn^}6w)1Iy1T!pB^OAW_xvU|pu<-yV-w9WHqcVg~tz+$G z+d8s@%9+XRwf1(0fbr*??uOMZc%QOc2~L>6v;LfhZ=(dlDm3(c!F;sT z*73M~x%Z|R%94bZPgk5nh~pybQ{kZ`|0N3bSEl3xy0T z=(%CeIj+Ur@D+lrz0KgFE17@CU|RRq?xioo%3g`&hTJWV)PvT;q%DCGYE;W%BTt#j zDRmj+Zxo79?V}uc1nY=0gc7!%7G-U!N})f-*wmb)e=O8v@hK#j&v!~Jh&Q4p(W_S6 zXq}h0$l31peJPgGpFqAf>EUZGsY&qMjrF>`JF^%Bd^@0o6 z%~UrSE+nuZArnF9xlPaFgdfM#y`z&_w<{6pq@R> zPyA0>Y$z$ZzcjQoL)JR)I7QnI!8$65I*Y*#fAzULTnQST(tBejjQYpqm<+JRd5vGI z30+hgabT@d*cHps#o6u9?=Tx=|K|LOk2m^_TU&QlP}Wis&dbHOt#rD324i>A^*rtbrd-MO9%@YMkxO^GZ- zLi;UfnTHdTQk3@^+G~m9DkMk`%R{8iqPxrS-%VsoJ1bF5%RUXu^}HBKfSsHQ?nd2W z6}>s_zV??Gln(w%))QYmh|&AE2|<4tg(e3#K5;QAqcLDFxTS`w24>OEvs96=T~^AB zo69lliF(Hk4DnK-5pPr7U{j2{J-jWd7Kb2nj)UkdZvJylyzVV>bR+|u-g;hmUVL|uC~)SpCxkU1Rn!Tb3QfEo?VRWD?UCAFp7r0 z*ZoHo^<^y`SQ{`9*^b3f{oWP1&|v>MI#|A=@6Ul&w)l($Yr>W7`;~F@i|S;I$`CT2 z%}pT8N2FJ~QbFZComX7FbVXtx7bnGuy|?LWvQSM+Td1H6d(Dj01|UYrs55j@N=J8@ zCDHgpXq_12`Y#}7`e}TJSklKInEE}LcUp>W?3K@ls?C?ONd$t{&`EpdBB*Q-PCY{} z|3~dnCBwy9MUhXRrgtF8NJKgKDWwmEBWJtUq^BHf{pc5eYXV_S7lw&V9$VJ9sqM1#0TH%h42$j*S;5%-w320B7Mjy>STO>0)0^Z zSCFj`UPSnpD1~=_M^D`Qf;X+oz{I>Rwo}1ZXo?9TNmy{MFiX=`V}kbH%r!bxVX%vc zmZ5?n$V#=QGA-Y%?PweTgu=6zpCCMs#Sa|v_X9+2Tf5UdNDsYEd8vB*Q4 z(h0vVEl!DWAq%yT>EWtY%~eT%w#3r#!z!LtcrT#Sw{H!xc3X}UPOoMfGMwg3!4Zi@ zgXwJ@B&Kojyvr@#?}zDJ(LOc76G`0^isnv}&|Ut01GyI5>V z7bU~uC9my!{a#D@Y8Tv$iWiYr2wPll%j)-Ee93JUICYqdYqSq9PLCXW?AYHv-zAYA zs6G!Zj$#pv{Q+LYWsv2{{Q0gH*>5hKf1?VX$ljaveE4i4Q8-!D763%SJ{e5v69VDy zDs5MV-4_ZsGbAXYGlP~z`kZ%{-)9T^YZjJ->Y>aHT5- zimeu^w{)cBsZvomuE1<*y4G2xP@AYP){MdPL}5vt$WlHai9psM@zYRpQe@z!J>A5G zl)F0jj8yab5*jeYAaZ%!rnx3(a!n;J_}JL#&IV@){Uh%c^`s=+*?j7L&N9H4ky1^F z;wdUo<@ap zRxJCqX9LxQ*}XeF$)O)nFv!9UvNq1!tWE)D?i4$^d_G2XW_~;}P_=s)DZFJE$Q+xc z=AuS9*wM5;vgz+v!G*coIQE~Wgt&sEGC$d^%*XKuaDNhF${>SRU7ij9_9FU0*-^^T zmNqy?N=JzfT>cTUb$DCRz)|;iQ0b~yJTHWwwJw;EpV*(Yar)Lr?+3`-5uF-zMZ@(s zDN{S<*Nv(jmHnF0*iZn#V6uLTiwT`EL<5t}j>fyN^Sh31BnO#d=~{~=Th7fQyw?H$ z`uh?FyTiaAGx(NONm$8Rs!9>WG-%=uhP;A8ON85*IB4XMFH_2h+J_G}2cI=8!Zrwb zNmA;uHvXg=_S}>!S`Uv5jV8X?wvrBF#S3<%jQl#wCituIKmzaWeejSLguzMty|2(H zV5S3FAX*$QC_e6OF43|EyV>K~8c7jiZ7g(%)HK}-cpIU9Nmi@z_Q53USkAw|3ZLaB zVTA=Z{^&`OQor;~Bjqwa-<=FFHqXBZ>1;1_u1ah#kb-cIFW5_tGLu5g*xTW(Yy-9< zei2iT%aGoM%g}J80Pv(T)=^937=Os**OAVoX(c9lOtyMdiPF={0MCkovn4P6)O|2+ z(;Q7h?_T4`yOjrTA@hp~uWoKeGccYOF*PE*SC~wZlO~GIkB>DD#yr81fuClC@;i$t z!RlGiPd<348;124Ka17#YdZG{E8do%-SL+L) zP*P(1`0+G9npyYJeVB+fa}N-DA~P@^!lz-N!I#F@-1ffSCpJX5T{k{nszV9WUDy`= zw3g>mh~WZCEr9tsX;Xv0@jlw)Tb+;JuB*+Z>K zp^d0h#+W_hkBg0kx1+F@k=5l*k!r!iwQw}`iXGp;tVvbaz|BMWScF}b%^xgpli4l8 z193W!6pt^=f?MKqDQ*%pL9TL&BET|_twOow2 z>1@Jqn2t!q=;^(2^#hWRx8NqKoN;mySO%;Yhm8{3xwy>kP}1F>udqEE+87d>-f0Q2 z+g*(rt&4*Mwcb#Ch&>6?F-~|GbN4Z8eFO7CJ$D}20j)drZc#G9=*&bYddJK`;R*9I?&3>N+T%tJ#j zXUq|$YN&w*cYv#31qgz>kW(rPmfwsXDNvkm@?@W_q%8UUgGD}U`d2WoCHsxx8ogT7 z8&1vwDQHx0TICUtY!{u^vw)uNS|apDACGb5&K0nO-?D8GKDj#O1IB0&zA_=j|KbwO zDQ8|z#mBwU)wNvz(i6@F5$;Xyqo%@oCbd*mUkfoP3So%FELcl+R2+?p&1w_|h0i56 z{{DkO@!E57YSMhmkqew_VTS$S`-Zo)&^@gdoPF$;LO|OG<^Z~{APkR;i_1gEOwnUF z+AUDVO~q15wN1-X0qnso?~exuQ{u??se6~jm02@^v^7-8CE}(DH&t3!SDr;3zL=`b zK8ZNH5_lq{h!&}ZR82r7I|UtGIg=~-A#quJVK)MuUpOXF4H!qrSxGpgZyG+nVIo~B z*wX8XSB8Z@;kV5-r(_~e57B&x0TCY<>~iBjT#^H@U8J0B1i!cWQbTL0aIpxnoKbcD zOxD9R$*)$Dcq4E6X^ZorneDP;O#GQCiQW+f7RDG3jbwlY{bssdnx7n+yK$K^0~!&e&EaQeG}+DWp*%Y4Oackn$)4dPRjw}>=~PH@BYq}X|Vrse)pT+WZOGmv=rva-2L=!E{%qXgR;TG zeZCfox zFYZ2YXX}cUYs=n}>3(z_Q6 z#KMAXYw_e)wPKMJhF+u!#!?D|rR>9J*k^Mn;zhL13Z~#|!^&__QLOaVx5Q7bFD?E( zPTK54^HXLlXpmHezg|53tu}U_07g%vub+}c&Q^ikuC9ve3-PXbr1@I|xU*NtH%|7V zv<+WqeMZRUbUwxz2zeAWm;q!uz*?Tyrbpi@%POme#I>EsUnF-jk-%#uvP0KY}S}6gUjPboKbD zkrTNDY*5tO+V3>hbdTAXf7(O_xUl=I06=}b8YvO0liiQI|zxbg{&22{8%scCJLwDkK zEBX&1C3Jf#(`>{MDwT^$by5}z7!9LM-9J3;UN!g#1Z~45{j7!gb%Y1;1FK!T|JYWW zn0w*iOPB0_IvadhaE**r>P`bq%erzOc#segDO|RawlM1QLml}V?UzDF4_)ft&2Aj3 zYa6?{Ml4PdA9<3A>l!eRjxtTI%_*Pq^{Q4&qocNYM{`}J@0z zDEHpTqr1mHg1SCAm^m@OxgNF1_NLcxBRt1Uo!@_(<0}c%l!j5r&_s@mc^Q2YhNZLnkq)ceS15g_3msz#}|FESNrXZMqC3!HS4^)(Cn`Prw;LjObM$Bu5;U!>1} za=VJid|32hIJv8Lj#^~j-o2ubDyz*;ENj@OAd^;A6oQ8oaY#P|DESeI#H+3vAHlXUNJ0TL(XMPuoO-vL&U?F39oe|O+LinCllTd%-Td9{=qzC zQjYd2JvedM6yt;+K)#0iUSedvxiuT(IED6=4lHGlJB{0yn4S|jswn^j6t7?O*W*y8 zC5E5Zh~N3PLFkP`CYlO5h#A14V9?hJ7V~w+5Dw1y;B6HVkZ`d|rk}I%5s@%iiVE&V zx$V!lej29M?-xpW8}g~T9D+c>Lk-}Aa!%gms7WfTW@%}Y>lwUvjef(Srcz%YOC~7TM%m6b0OJPJZ0Q5;@lUmfRz@yd ztAM|#x!zA`Y~*4=lIgkKq-O!a4`r!ku~EG{=*dn_YCXNP=ps2CI&<2=^Y!KxLVj4N z8xoUFY2r9Uu`zj1SW3Md74j$DuucsuiY_-;bF@J}GrMpIy;7B=xD)4b=68goc33|R@#!3QhcBLd;&WLd(MA)+3~ zwDJP)kFHW-1?dx%(-+BZoL=`W1{}6g>k`wf><)uB2R?V)zj(kF#uXhl3NalSUVCuVsPVxL09J#76o*AO4Mn<+M}~Eo_O$l(6iG= z{AM+{z9+W#=iEpN%0e_B;cj2zDg&@3L?oyjQ1E@&Fcsn3_3~;p-m7Ail1BO6wU?>v zY58j6Rz)sL*ASuLgSNQD1T{NCCTf1+y9wnGLQB$Ik;Cg3+-Fb*lu$^@PS9|g;(vJ_ zy*Q9{+$yJ!-#Q-o>$N$(<@H*bJgnqqkVw(jvD3x@5oVgE>iUj~5((LHID^Z=_c%X~ z?r)(t?020Ii*Vgj+MEvCx*OX&qY@D#rFdCwz8U}Pez-!qYSiea+FQ96fte#v)anpsCypi5)TlAkXsgJC z;^#xDQZ#pr_j)>tm-(;C-!e^bV4Mg>KaFZ;kbIX>RKjD;P# z)9@PgElNz8>)?YhfbtCDN22V{VNt0ze)Ozw^od$2VL7r@-P^g5^%+w7ZEi?5VZcUV zg}Vput@WhmNIl}9!*HLgn=0^SEP<`B&(v%Unmkeip4F)WR|ET-Yxfj-O|zA>9P3Y2 zAs?6uyT)DZX*qn6sHsKBX@5l5xNjkIjLb83tquJ$hyjewzDzFX?*9$}yOf z-7fobJR?2k&8Prx+leK_>nQ2zOL%OKHryas@8MBc(it5OHWv&3zNl6~Q5Xv(fhk-Y zgtH{(JA|fZJt1yHHmpMKj(aZ#0L3v0Yk91j?DoJSEB39)ByMvSKll^OxN|} zxU_L~eKu8@6Hw0Aknv@=s~dOY`XBg$LLVPGnzdZVzJ!`G&N^mDnfarpaLtm#_y?P) zJyUJ#uuZq5jxoTF)tlqT3G}s}TTXsNR`$JM;|DBAp=y3>Bd)#T5omoqeC)B&Ow)v* z--9gD4$14wjH90_NNtq)JZs`5c8jnovC|7qySg)YVc|D}yz;=oNwT#8%to}&xyZb} zD?*Kd#pU%Nu-V-SuBijNgykSgTfnXc`Y`SrEam*_mZ0|1KtmaK>oYhF&0UG^uDLPJ zT`1&Vg4Tc!qT;^>ev5p>=hz!nH#9jt6(727u4Z(!kI7=uI9Bt?#Ta(G)T_cLA&r7Y zIZK6yN{a8Q$`8JZreOrk2@isL)u<#bwFFxqeWk=Uh=Xn!Ucl?xws zwJ;JYf^$1MBwy?^+Q>dFI+$XpLkL&N0x z+s}-ztN+-!g>v_WB~>_3)z3BRWr@0aVVbF$HP8lWNd@lbFc%vik#D@QMdiZi@-5_r zwJu3{+HY9XQL1<%Fyi46LuE~_`voiVa(f!d+f+WLNFh&`)J);f+8dL#H9GWeFPc-3pJ~1o@JAaLb@KS1R7X8Vtgb7z!&;mq!p-=^VJF1!PzhEHDS0=FUu2}=TGA=5 zX`nc%brJ)EsO@08*kb{?#Zu-Jf-#eg^6t-bOlF+Ln8^Dq)&T*VJOo;In9KB93hGcb5-0|8nmZ8- z{i>NNhlVXHr$n9muwMs5BmiR2zr_Jjp{i0;{)l3GBU81{h+2e=)E~Bkl~;wZ34IG| zbPj<;DUoIWwN0J3W7-7rFat#3Szl!YAp8#BLiM5^ z)Vt3h;o?pY^9Gx~`fb+SwCoN> zOpl|*LAqo*s&Q~b*!E+!OB)4Jq(yQQvKN&UATpb^gNTV^BhQV`<7DO^Q8q_nCd9#f z-Lrbp^;c+Dl_G)f3KLIs`GQl*to2mYnBBadrq$0cZy~DEpwIU=OOXnZl4{m(HYFh& zJ0OIdUep|SR-#kK2uLTqf*b`U?oo~Z1of5MEf~!7ro13G5iNCHXCd)Qr@jfk;dnG! zF-6}c&ILq}bn~Io*Xl0=!hKiOKC9JVXy`-WBzIJ88a19doypmt1ksGkTl)UZDEi!> zZY2!cFYIgiP9M&M!|s~j+3nj(+A1R1*?V1yDjdz)iyLT)YN#;_k0&jA!qn$%96Nm> zB>Eh%DjCL={z{hv&QL;5MAJtqCYMX+gMHLi48{+Z2p%UZA;ZPyQgl`Y0nZfX=9Z=g zMhIMyG*#Qe^3~X-qQfeqyxRGLFOn&;9}r@hdX{qqW;#j9Y{U?-Iy@)Q3efz2XcyHr zz$v+i65CRSA&p^;>CngxFdZ+szRAI~m>iYXai9&09%g-hwpID4-jtvHgGoz*2CpZc zy(iZIg=2XIkZi*iuLAjLRH?(w{~@3PN_#0U>r3w=cw|DeC7L=%n%`Nz@1uMdVS~md zCn;mQWDzvrmRIV*clykt&(s7pi@|;S^Q$;}hd_y;L{5quY_vmI)hV@0P484;pP%^M zd3~L_xU@=2KOdL3no{P|4ig5pBDGKhg-tnJ#O<-Hyo<0MQVM+_Pdueq^zx{@Mt%Ky z`ChKHpC85wVUZ+weVrg|auShjv5s)(enbU8@e&P!oaBf9$Xmh$BTgtqeyI(IO$cBr zmo*D>K^%qf?+j?Smp|%SYPj!Um900z!)P6+Key`%-0$GB3|IxH$Y#tp?%gKqc9o2+c?-I8VcEBO-bsUYi9ZqQbKiD=dh>OH3JUT0=TAZxu-2+ABs<}HcwwRqR>g4WP@TF&#hj!WO)zl->K84< zuoE1e8fhTIig7L9?>QbD(JMXbVyQqJm8|>W4=M|7KL@7D3h0uvluS^{LqF*23+cR% zQ?bz~tNbzeebhyeEUdbTndvWX6vsYF;|Gb}v0aa?&d>F;Xq{vp$etNwyVE?8+LN|( zMmY5hmAPsYzbe+iIQ1*h~7Ilp2@^Duq#3E5DMy?ejQZhr(xhdy*F1Tk{ zD#U^>y@VD7l%`Y8Am5!npNyn7V-E>a!6=uJ9V+lBv5fkYI41Y3-dh+4^vhw!z`}AP z1A|u0vyCPXE>kR<7nq|sz@g;cO=o}IVzX9!%;hm5h0~NO;C`Em)6r&=&>H9SzNGXu zX`@eq*}AT2wxb!1rkV7ckq~9ZazT96eO(_K{&&V+H6+x`X3*zlTJ!!v3CYDwWe2$2 z=dsuBDKSkkqg(K#4TmA|UZ))%j66l4W3=E^yOigECPT9u-V|H4qS_yvg=tjPe8)|)i1g#%P z2PBPJ9}WBw3vgZmfMS{qMPkJrpJ4=v5lv;7OHeOsoxxIagFHM(J0J!lfge^yId#zb zwY>HZ6+Z(-UBoO1$>y{^%iF;!)N8mG&Zm^W{b8Kq?LgA!A2eqjJ~&IVO!?H$$!M-W zK&B&T2Fv-xq?42xw4`OHEG(Q- zXiEL@lDCe4Z|lOWbQnDJeThdn|D3B0Zu~Ve690%gvZXj-)!cRG5DTn5l8Iy-w!f~? zEeuQ>Cmd4B=`~iy#JFrRD=0tjT3_nH1IE&`i=ty@4%t=U%PIblTHA)}m!jRA=PisS z#FY+Zma@};hjrhw-XVJRE%br%{2oARQN|MXY>c(F#rR~R34m*Na-!q2Y;MRrutce1 z;FrN;QeG;$h~vUCA%7tdS~&o?#H5PeGlbcAXoRW}Kk}Z6*F+Guepi5+xL{`M$Gy#4 zgKhLvj1R|h%_ik5R(z4!h5fO9mM~K{Gz3YM_cF701f`@NB+5x!+kEPq*)>xc`?+tZ z8D6PQY6A252Z%Go|ICHR`vHreWKR{qQl?6r-{|R>|)ui?(!JHKaHv20Nc4 zHcpSQwLKkSku((iflL)ZdiV5VJXUGS(Zw`+HMIbD*03{;V2*C#%n`m;JzSU%dt)3R zHLh~L#gV{J)a2atx_@9{OXvNez;J-WY7uXoKGO`is2~5!BlhgRTSKCNuk{eRxa} ze(mP-LXA@a$n>*vWD7X#{>spXDTMyG!*6|k3xU#z{dl1R;o~66#`oWoTmf=U!YjEh z>YD}IFHg**8e+pLq>XwPk;^CB*s=*!{9gB95i!EH8|9(`8r;+3oG2XvYe$=sj)ZYR zFyd@+*J>d)2geilX*hjiC^iMkNuYK*Z$tO2y_UP9ck!~ia4F#E?=|vu@FSqDj<$+<8U$j zG`-n3ArorEevG`tJ(R=~wMoA?GHIFnU9zb@zUTbn?Rxew@mKKG_a$?UM=WKBD8-g# zZIA+?13^lhIZR5pG=*)00SMHNnlReIkHsIZbYNQdjBzhaM0gMB?*M`^BVJenP4MOaFTT6WTghxUUMfycMY>e3XwDy zZL3HUMu-bu{6k)+Y#`lihA2F6>h;Pu(bGePI3^#_-<*x){Vf)Ftr?bRox@SP^LF)l z-ONwsvSF_qBiHwW#!oJn{MbB0(22}3;9S&0`9ncRZLpH|+vJ{O@`w=ni7f=2y*jb> z7))?w;yLCdqp)M~SYsN^JAM)rY`frywu3a6y<`_{v!eoBugAX==Ob2mlRKBw_eE0c zjnZB&jGymc&PJ}WonL0CrF@ATj_IBOvayFjpDGT@g4_IvSJ)SdkF%d}FCHEPx`*;U zN7}+#>0R>C-yVlO7B6R?vOCJ(CQk%J4Ib*xJ73Gij}?!}SEcoGvk~s)wT6rNy`WZg zI3Xz;iNsWtG3@K`0+boMZ7BnIweu(g0&VvgHe4JQi29y;aN^0+F8eu(HL2>IG4&UR z9AZ8Wk?=RUNs{ITM(l9uBy*n5?y1gINSWeQeji+fVyd8xm^(@g+VfJ1f-ah$o)o-p z>y$4>hR(M7j5?8X3>DG$wAsWk8z9&p(*OboNb?*5NV0Y4_L2O`DG9ftFL>J3`u(=b z2H_D_Z*=rQYUraEr+Wc3&zB;8S3QnSk$}Iym_#0IvN#r(P+MXbNAegNX^=e57GWkZ zJYie8iYPTXJQ^&8*!>zgVecJAFT~LN+Ha^<2}V+G;=tMKhOPYqgY$C_nzQR_^nqC^ zIA|?FcUrMPhZ*1J>oIK*$v$c)ev9QN6y+|Wr-zQUWX`_^!U5N4g~1{wlDqU#y%ax& zzMYd^=H><5h{`;CHPM=%del^r9eN(-?S0lOX_#m>{ao|0n8DU%-jQ6|KEiCepU3sG@x=e52+9|0h>_H+3W7_4aimS?o14v|uwJke)&;t_&DpJwhfd z%-fQmt?7dQDf!5^2=rVk+W#OZMA4bO0yF~Ki50nhK)JOBxr1G(-JRM-_NrA zqwoitpQgzkGK*j8WEoZ;*16kn59qy){#XGCPqEoPVN;t-@jq_6-UasiKlO6<%Z7(2 z?^=kxzG;6LB-P1GjbEOoX@4Fm^@`|!4sD-nu%eKaa$>001Gmn_ZmlGU(%A2c_`UR0 zPig65bf~<6rtXlBa3{>q2V2z-{bp~M-d#_>IPg8&O!oX70}UcjhggL&fh`d4iIxAN+M>{&-x zc>x@Q+}iC8M&AbR-iWV%bb{yuUKTxX_u5ow!m1wfnJKr~ z536Vep=ORhzsnYHk4-E}d+jr6-scyJj)+)Y#pyO|-f!7`Xw*HQ=W8v%5Xt9H_b#V` zJZzsCCnn6y#!Av@+}!FXyO890^jaURCF2ag72hg6ii#%s8!bPbYNbSAA1uxAw|Tf= zyhnAeC;a-Oh*^nDC?xn;L+*a9I`-FjU!ZP0tQsP3*2lX2x6{Qqg|PDh$1fxP7)caQ zFuMRA&1wg0t@2;ygU_&u$`lH|{KoTbl)y*r8HvWcGlA2~yb$tQX>h$K-M; zcaMx2C&l|VAw7-7zf0(rWp!*^4CK?}WSYqYmy7}}sKZjjE`3^EZOsK(;8u3+z0i*$ zEq<25N*$PMG%Dcp067{DmRYc7t+QwJMmT0f!7qfo#qbJcI#Qf1ojnvKH7Zv3>I$Xx z%dhzf?8Q~D*(F12ol)^%XkFn}q@zGCj6h~HkN|ObJP)ol1%;jN3G-AS)*e}yNvFpJ zTS(0Pk<`bhXyl%{m4c88p2-u`9n3rqj!R)0Hl-zO;K=&u=EJxYhcND}5a<7fRNnbM-`YpPwSQy|h3_{Sa z&-Jaga=$t}jhCxt_%X8F6KWvC+@fK)7vD1FkCh1?&)dceh51XFqldI;2X;75= zY85L2?zTnV6YJ=pzbBU4Z~e9!CHO}ivW-!|Q(~R8mw40D1m1Y>f2o^xH8-(iC;FT_ zW>@AF-NGqtjh>mP=&N39Z`VyT(S(EREn%*ZqHil_pZ?o|Uu;lS1|TSkYQ~zjOytW@ z4M$y$GP)FOW(Lzd$}zdhJuGRz#_;8_rCM=13Xn&P?fiB=E_+gO@5}v>b&rY2h>h{x zq4LCh9Z=$?Pwj3Fc5kO0NiNADgTK^gqJ+oE^`XmBIQ$*IT({Hn#Zj{KCr-@Xs)Bfm z))#gHcUZY~LNm=Y@B1uOfZXG5V$1C4WxPc(ES*iPZ1{{n&L%Orc%Bd4m_Czc%_(Si zScWgGaX#@eAABp(87oOj?Qtp^G83yIXYR)krsd|G`C0F2x(0i)fp>*HVmSDfpwe^GT(94yw@*?lzt$~oRG__hZZXB&^!kzZzf;J z$Uj79k8fx!bp^lz(L`p7i^35vk0qeZ82Wka=wB;Af#}!!phjBSuN&@T`B)o$TOf(o!O|08E*ckQP{kbi?wrgdWjd ztEuP(mWosu*fIkdjb#S;6_=gmMLiE8meil~``}gE^tA;%Grv3yh@B4*1`H7f+`Uos zMy*$A)MHf9L9 ztAVao6cHgk#4hOQa;z2mA{gxmX6MW3j_bz<$&r`tAvv@tykm@K7_7YZ^WpuW#()zF zv;Tz=LGoMzTy&qpa>!2HF|0$A`-=avqyH6y{C5`9=!E%11j)B{cm5TP>c;n+ue-wH zmmL4&cv3O>*K@$q3yUMK7Rt2T4QuL!%2>gozyF;LhJ9WCNe93#Eh8#=L7%uC-WR$ z(TOjZWjL^%F{)JZhmiq)F5k)k4l_E8tMM74K}Fz2Ec+x=jR&Uu?O_&1w$s*OM)wl{x zO@{A|QnI>iPv&IjMBsitOBn52Z{qm>$hV)f{-^E0>QRD-+Rl4y!@N-NdGnh=%Rsj;w z6xlzdEQkZ*+?dti34p6>@CFu~fl*#!l+p18FpHk1-6> z_H@C&2+1|h-ELa*va zbuRZF9#IJCYC?wy=a{IpKv9xBr)O zbSn@TF1L~KQ)Br$rbRQIgdpmRWWT+CXeVZ<%s9A^+p{!m*6>f6%a> zsnX2+$YGpumIYzqL2ep;I;4-h2?gKYk>03@&NIKg$_0W$P9g!bW&#RG@smhGrM{rU zAF}c?$nv9O2UaW_^Dyn@_`79)WvqmwKkuf#ea{|C(V3@5J(afw*|V5Mq|UdCq3`iL zFgnNVE+9oS1xzo60NPU()Yr5iuH{mPt#I;l*b0HwWBpg?A9n6*3ek;shN0riM5y`g z=I3z+Gz$7gv(;c`n&948HLv#{GKj46`M%X#M)lN9nOgR}fq%+b$4?IXzUx5br9ic= z+s93fjzoJ6aK)DJ^cR5jUFr0I%rfKPNN3-HIfrwV&S2ohlm^5`7xt9YR4{W7`m8Wq z+U3>0gJIaQj`F$v-c6bD-5l(zRH+hyErTMyf86l@ah&3K){_z7Ip|++;x+x zd6;3pC}gS;?T8L!YLWrMY_5WXd^;Yw!2g@~(3h}?+xy2Z=K7E6+pN#Q)*H%QY2Zo; zIW+?q4W$oG`6N_RF{jz-f{dce3vCF?PWpo!-Zs3*gYV+{&L_mIpAnUnFljjC+{F_{ zPKihecz2U07{6g8qpx&e?mLXS1yZqA!Q|FQ)y6) z2;_DrKdLL+0|l+#h`)|*`lEmg4q1pJ+xzFnjf%j)Iy_!2eJ9q?b!QgX)CrAX40(38 z@yefK2q!Jg6!w-0jU7UWu|;LvDUUz=au*!FL9FLQ!$f(`HW?2Oz3~!C;q)sxmjv*!I=3EGTMI27P_zU_X@IN3`qR(W)GIU!Orv-QH zc?`naT_ zNlProK~PK7l6CZXZ_7KOT&mEM2dnXfWjP)ud-2^EDBxlB`(HwsVa2hg14_Lu6g z{PGOSZV$;mgl%y~<#Kl~slxOmI?#Ctei@X)HZHJ^NIJ8^uUE886gi#`&m(s)B76SS z=EBXnlxX+YP!myQCc%ldsx$Q+4s8n8Tz(B*m5Gu?IL&xi=5HnIDCyyKxB2gmH`r*d zk45X3MvL0Sw?W0j7qJBH^t}7lmJMmIj<{cQQ~HnDF+$k*r?XZ8b;1)(S?p)OKZ!B0 zFo3_al;5^plb5yTKL~nj3yyF8T@$gApy;YN8|eLYn|j}P@yDm+VKV(%zM+yb#q*HH zLi+mXo>%!oyva8FG5mjn(#&BC1_mI}D(#$tm0WGzx(Fg$ghpO|27ndeBI)Eye^@Jl zN|1fR^g~z4=&yz<#J^1hm{d$5JSQQW%Tqjzx^~)z`ry)VyR0*6cfa?uS|xJ6;Earp z*ST5^iPirW0b*GJHhtk$|osyO>R=zL0sGS zlR|0j;cZ=jfAi+`>b;bNhWc11XSsp_1ZboZwfW_3aWzKCRz~$u3x3ct1zNJ0*6udd zk7i(4*!}Rt7$mz3bR&OS=-jU-;%A1tVS5J9<^<72b~otohd-i3P2wXfa@aj!_kG`c z^D?o|@>$S_NQ`tj=(U2P8|=K`#lnQ3Kr;6CRh{mTQ@6b1cTCLibby6i~ z(K=NTavPEPks8H&TKUBs=p{%8fXjEiW%UN{VCzQ5GE`1x zwPygO{NCa%C9#}xY+#)lVqEs}oKTM#69KU_62q^b;$>MPWaerav}%I68YjW+<78ef ztv$u{K@#`X9j`0lYTrU#Q0Ci^%`9Y4UC^UdH8NsqgWpLZ^Y^LJhU?O0XW0@&y;gT? zljM6`LIjCjYojk!6Y(%*OftEClG_?$hbPBV-Cv=h{* z2Qj<44jz(D`e-e(gO9y-{bAm{@9B$|dYTyb&PX#gl+%+8OC)7nNMegu-yMdzBnViMo2F{$q1{#@|WC)=aRI^i2&hFV%US?T-+J9ReIuvvEJAqvhldQc+8X8!_uDd zh{{)VMbqc!+PQxXz_7{H?=FAJBxHo;uwED@6{}zwF>??pJ+CFwtTdrpnl(uEg=d0F z-bGJI^r=I?pzG({ljG>}9OfZ<0@lk5oSag8@Q82|_Ha`W&istLHra9)xn`>FDVt`ZMF%t}m) zpjkMGrnNRt`pS(5puVydJOpceNO4I<&-Hm?lnV958R)m1s%fIp*r%RuHJ%7cZob^+ zhSmB3V2UWklI7sWfoY&2b?D8k=sCGDJs+glMSQQDflc&USSg!76t@l~F*zG8M=fMO z1Mzsi4twZVPG5yDG(kk z7UWjDjD|iAa~{*1?T3w7LCwZwLQ#B@FZATofBWTnQV2G3Oi0sCg2F_2SP4<$$%a@M zkLva&*4J}SBC(t!-aqFPQ^&fAc{F!dh+qWt}`_HolNO4PV1=HS`P%0qfrws zv;vJ4F&Ti(c+u|fz{?nG7rFDL7Bzbr(IY!KvZ`_4Fj(n z+9?+jhh)<}Nf@e>p2y}jcni1IM@YE(OcbSu`GmA~JeFI+4|Fi$;rF|zy2)D%8YD8h zlhcU_&yh8Cl2M!>QiJ$!FumSD+LcNrY)rYXm~dhJI{ibmMFpayY;23teF3<|QpW0x z!p`U2S{m9VN%gz2Kw&85Q{ScYNt8ik)K%~>Ud&CE37O6ud{Gg2S>1-Seus)p?3K#{ zBh93w4+qfiz|mH+*;Jheu?eQPd$++*b=))10S36~T3_Vcc3baL_IJh*CV}wJ+0#>D zux+!Ui9#0(E=ZV%SbnvDm_7kFWH}8QawoR+NNsmA6ySpbDWgF{P?ab2JzWVsM8`?u z9+%-0zPRI#jCBez9MXMvTsed5W%OMsJy`#|^h zTdd=ya1}8%?P&q!pn+Uxp?)=7DI8fZpS!IA+iDsnYE-mJxRQY%974Wi6rB!b6;=H+ z;Xj?;n#Cn&k$O0+MSXdqX&%OR0!1C{kgUGElzsnE^p}Z8D8CRI5-NniSH~WnwFouw zbCD28-~BdiNS4Z@sbc*On8>Bf&NkG-&E7MzAMq_%jcmD-l;Sho`T1qvw*!0YAJu_v z7h@%#{2Guo$qo3qd;xP+A~B=O7)0Bq)^ReSva(=~cPXdrRXqjsuIqqHm*{oz%VVm0 zu8D(%1-_jYT%jhzz~o;jA=j)KWE5cwBd87zhHkm8+*`)83!*AAfb#y_)1mmA)4M-e zT|p6TWO^sPpIOpB9dHQ7G0#@!K+OCZ$LTI}zqkFJT6Yj zS4d^LupP9uQi6JV29Or+@6XRKf&#DdsHWGd4g8VVlqlS~YUo*RJ|KrLIn)0y7E&&D z{gB|)0tJlmmjV|&T3;6fMnJ&)LqW&`vA%+dbnT@w05lX#l+(qXb4~V;1XENc9`F2- z6MFRCaY_HoFCzxPyzKC&X#IChe+s*rh}jHZYCN%f4_6I8#KxK0*e!!jQ75>|?xy1a&h%WJMCF~3Kfg;=*7Rd;;$_J4C<3$8-jt6M z!}X}TJ)HQHyFJ8dA^~Vd8;7kEV#AdX4^}qld5UVw;qP}^+%ir(9a8X$^NT96%!;s zN3ZJ2yj0g-e?JxRo1%hr!QKj|(!W|udeWs!OLI|I3<=fE;jm0M^aDk3O0CK}-V}EN!9BPXcZc9ov}kds#jQ}J zNN{&|TA;WTm*Vd3?(Pn6p0j6n&%2-UCAsg($Tc&U{C_JRFw-KmP^XIeUerXUVe9RV zyT`GXIOTUKYjY~)vm6;y*M9-7r{;GPLj4;nK?%kBN%BkKxH3(vx6jU3Yd;RqqvZyN zd%xy$W5jqjik&o(IUeooGf_${Q1VQuo~!?@7>hgoR{|tqq}f5 zQl(5n-<5r*aE(m=L``?yuWwFkN?T@Paxy$Nmy%(JDZlt3zdrkBd(!5{{br+yS%r#b zhJ+~!VA$TN!v($_#CDD2=#7b#C;o+BU5&!P!X{&I%~TibdyIz{^7@RKUsDLx(qb?t z&J_DeY{!D}eH=M27HFX^oe1X9qAQmIo08th@R&0Z>5HtYYAuJhUVVkeFHvod1^**( zC0pKevo<|2%GNnIsqD&^+?k6HE=o4*e!8``xAUL01%pjQZhV~@o!=P#DAt}aQ%i*w zA(8%acNLldBD~I&a7jsw1q6b_0DM?wqkP~mFIFE))1MUP9nYdLClm-|W`VVG4cs$8W4S9c&9EFlgZOaQ(V)KPL ziaku##o|yH7d#(0PgcR~6N^z{c@l)PR0ncC?%&-^Jly!aR|W`uUL*eM{F0LJ6o7^G zmLnpS)b+(Lx0c7%3q?t62-NunmXl&|KNs-3x$*XBX)0*>g#hY&Gat*o4h1mrurH8I zF0Dn|O$*5rEtqNA(DwDscaHMGU}Ix1G`I-GZwJWxo{b<&_+)7ljxZQ%O5eAHg{h%q zU{Uch64_@PGO!JWlmg?-?tVz}#sW*Dlj)ibM81C_nqZ?bm5Yljx-K3FWkUG!*;|N3E6zOjM~%8>CE*D8Fv24gLSHKU zGXcc-F*AjljuW1yKfF;}zT5Rq=EE@_bUk_a4l^FCXDFb!^iVLVfBPh3X4?bN4VCDgthJGSd;U^oIZSBy zaDmaoC=4jN?(B&cu_hsvR+%SOQUQGUD*|K{J+of(j%4W7t}=1tdHSXZILh_Y5a+%# zYD6_6aF9X@+MF6J4@J2Rfs&u&hgdT`?+AbNg|M?%6RBjcMeU(uF{~O??LVf(og{`M z%M%(tAK*ovr;2}jhj%{{izLX-rVUt!m;XsB`+YPwXGb?rvzvoEh=IHO;PABTK#s3M z*f$dyMXk70H{^cJGf1m&IN{HPfk6ye#+O`YC$PdXuKUSq%Q}!Q-%WzNWg^gEU z;CI73SJ}e_Xta;9C<=hZ2nW!r#U4MQ3irF(cTJtBqC8ox&06W5Dk?5Im9wJ+40wSQG3I-0RZ@ZRz|OQb7cl9xJkYv zi zA)Kko{uMp|>_e$GJTWsH?53e%O^LeSekzok%xLn<)!$49weK!V%Eo}jQs(QV4yhsu zVezi=w%NCd6?IO_!&OX?<16stYJN8D z&lb7y5@ariVx#=vknX8@S&%T-B&?4}KxW7Gw(H!{W4}=!nts}#r-uAN8!8>1UL`O~ z;0k4|fYR7$5QBqN)e_sS1%}P_1hXZqVs1%zsmtpVMu_|mPEMu2XyB2B=pjzeEs5{> z&tBX)8^qED85Z>%YRIbT#C{_AU0k`sR3OBu@Q0(#4NZCEtoO*D$I<;(_P+toi3C>N zx%izd45;7u&U@NdGn~xdwajT{r_OheC=^n*e~Tbh*;tY-9Vu?^mi@Z^Ne{gxVW9>U z@MU{!xNvb{jm2aZa^BT-xng$V& zX|5(i9NJ-JvEW`L_l1S(^nm7qK&C%Sa$o)z-dWkcuSBD0f{WV^n=?k#?TvkEt99f5 z@|_o|eSllrR1RMV-pk(AWtiH#@D3Mu35iK1m8$rB&fPP_#0EY>)flcw{*0H%XOJF{ zfWI4&%n1G$()ooU#S9wPT+zoszN(WhL_!)o8;(2p8s$O2sus^}q^3&b`|zK*=XlPq zr6PrIjcmdod&n~)6!a_!l=`QSAtuJ9rUVr{AMV?B_z8)y8r$ya?B@4$#y{`4|AI@a zm1}Gv%BsJH=^$oR{I{Ku{G|UW?`z?nxyf<0i=2u|uo_E{h7x!7^NyLvS8COy>F5~I zXP8?0Xydy9Cw-qgCw+k?l+8%|(ZY2Y!yfwz-E3rszi?_!Pvb)lg|lZysSLkmvZ z)>}h6vz4t8I<0kP{e6&vH;>NHvp8T{>MLX&H1N57+o1*Y6h1#N25tPMRMExlec`gb zocXB2R0|WmavRz(URgY22}dsES-NkMv!nzBBMXY6Hv+|4k&L8iObs+Hx?Dmw_Mn<1 zxPDKXpP<+gZYG%SjQc$AS*C?=yRkxEX4ixCYB^fb$mR5+Z#SM&GD4C}-(@W=ImRef z{QySW0nQy+*jpe?8qN&9t&z_nt$4%M5<>sQc~+w0sV0ii2<)$X{cIY>$a*9Z7d{ zTW7rO$gB?zgxWzpb=s-!;ftxHg3udKIFp(d95~=|rs-8q0bSPI0u3{(DYO;lC%-)8 zrul_phL3n${5P|HD*diy+0&|dO>ChzRuM9tC)Jci=*+f`%H>vSJ@PG4;z3@GNODV$DvK4OlNL(9qgFNPviK$Q$gf!&g+Gz#qrgXjs~6)%jxhGjNkl2`D4S*=B=EA=RhPLqz5m!}r)b@%AM7F35i z!WfoFcq=3oWswr^)*SC+{#{(~|B1MUf>VvO2{K14e_X3JEuoMU&6(Xox#j$iod;Vn zYwfcK_ICN(s)iSWyv@n2e351i%}yMcIr-HNU4rPl}GmzK1*3+=Nw9124dg0hQp6E#O(q@JKJzo8Sr}0gs5iCT4k} zjL%gwX|Ihwxoy7Zv~@&QGA&=dZnpa@Mb9vHnhLQBEw9op3Z0#SS3=QfXduS^G=O|@ zF!I@%s`#d|TB29hA8McGX91t*ySDdtmmKX5tBSvipTR*m;Y@{l5$9I)-#&eD8RgiA zW*+&2dxI3ly0b_K23jg4oP4N7AFqFI{j1jCS1`ZqyFKRjKA{;3A9gf;=KYwp4wJA# zK_!Op(5{!tjp%*XDZ73IsbUJKwsOQR6(j(c5`g8=rxRrF^W6+-4=a5a-qgfsff(QR zhJ8P)LnT?}OwRLObyg-}3$z4(y>Mm-JzwET*(VMRv34CS{e>Qs17td__{zOA@1M%J zsw+~lh$AzdJ)JM4^jrZ%2DR?Ulbdt{(qdWmN}ko8I3yaJAt(!0GDU)aM;fh~n!puBeZR*J!O~wyX`;%(v8-CRoOcZ!T5O=QPuz!knHdabX$r=2zJA93d zdJz<(!d=64OrPWllK0wtafTFH=2_hneKf3tz12`MR^1$HbUkmUs!JF@}zXKOQtS`E?8 zv<2xP= zepK9%7XrOV!+QMrTx_2PJuJ&mrVuXhtf8dg@jD-4HhT%GebF5l`u<5;^d`>|(i613 z)XUt%Fe@n)*}qj|c~d49uAWbNvRs8YyC^X6bd{%lv?u}!*eXz+U4k@-y`w37%~%lm z@MnlAF2@i8XhUEo80&XDr?TcTyugv)0Ack!yd@kMHlRe!K3X%3OT`-ABtQWkJNr!2 zCi3SpBVX7I1yDQ_X4=MvA%JM4Gn+sW&8Kp3fKVAU4pZ0hR$u_fztjXLC=j7-P0{W=T{STWS`N=J zH*kJTMs>?(avxRYV0_p)-<4!V^=gG(Vb~r9Q_be;&DH~v-MrW=fQrrZ$7{Cf%#ITd z5LyN8!LsP(#<<+<9`QwZHsjte=nV4j$6!`*}Fb9%9+ha7aUdmywrTYC8^a&1Opo}OTA)P8Y)Lgk+WH&!yvl?~D?RLwTGaLD z3*oeOx9p|1{iDhw+s_*y>_98d&2k}!ICmR_ac!h1PFy6cY$;s{4yO2kYL_ysq|v_z zU$~+LT$2AWaBa_w!7(r^_^WTqWRGH1=71QYAmJ6RS)kwf( zNux5Sh0o>J_0x<}aNT!NBX~d!AMKDe`8O|hM2kGHSj267YV9V$PG~w&?Z_G*U&fx^ z-d@B&8D7A3IuMS{aA3KHQnmdHWSubQ@)=|{|+QtK+ zb5csx5G~q{NW5?*3S&6)oVCW%#Iakgj$qbA*Jl*y0xrZ)G8^?r3yoHx8ls|biy*mN z{OJ>h>kB|tl5cz(`vj4ZmE1Lx@G{`as1)c4z&nmHo}98^|0abTh1wOAkrGRx8LS$| zvVMLHS*UTKP#}?CJg2y2x+egEgo*drjATq@@C&7?&x}?h0$=T_m~0i!yOojm$e8LT z8=uF728M=_w8=sdB9gbR?nLuj#kix=>eSlh!Vm%r_#e-N7*anaDqk5cKJPs4f_a#R zzd0W4_@+vhs}hzIerdrWX(`Ra;HXs&y}D5_{|da=Ys-)u3Z?J+1AAC|eK|S1Du=GE zPT#`?A5$8vP7Z%|CE{pQkM^_SiQ%o{e87Ca+vlzNC)V4qpGfeh!x!Ha**z=s&t1U> zJ;V%c7UraA{hbNglkH_d&L|wzcC2T-l^8 zjHf*d^DV9^I_i8NHYs^X%-h4c+%R)+;*HqIykuBq0K@&)GTY;S7el{z=^;AsSV1Vu z-zlWrcsN#QMA9;r%59|HO#Vs|N(sOz)SBXp0kQt)uo9eY&Xz?L{y)BH%>>#8z z%P>KXl5z$MkC6%ZeWmiEi`!3>8JTtghyIHrjMWgpk|c4bq@=-x#U^l)pXB#_LavW2 zmyKORR&*2=eLfQ7XleATLm_{z*!5;@$x$NVIO=aWmp0CgbAulYGK|HB%Ms`eNsG#z z3fkDqpn#&0Nrjt;71K$ao;G}YdV5SfR)2id< zD!)P;VNy@kTJ1e$S#?-wXlRdrdB%XpXMdP5J{qh~898;NfiG;IiE>fUt4~oRj>c>; zde(eGCKsEC(*{xa+kYZCyJ!H&BzM9fCU@Ae4Ccjll-rYw*ECrQwz?hIic2ZtA7dpI z`|7Blc?-U&VZidl-1n|T&18ukHmturpy6uI#aRJj1qV7?zE@In(USl8g?PQsyM0rl zvA|!0QZkuVSTV})d?PH_oDBYx0s^rj|9rVJ*x5;<6c8bpUw=bJkrJgC$nS`a^r5pQ zTMot>PLV99-X_u>8w;^X~DM^z{83EqZIR-tW1@~s=baT{)uh_ zROu_k1bGHriNCe?E5W*AG*HHrmLppBQ@{_Eu9h3}MUFrFQ-$1nF9K_jvJF?q`L$_13w44?~GkY?&0PA$LNFi&cD) z`?)bD2uc++ehMm?%2OrpWpft@p3IfeE5!HOvr)r88zauc_9y-L=dSH4|P)ANm>ootMCT6-;1LG!F z{38%313v%315&RqV(9rwG>l zI-01A?4-kOn%?ZVyF})F`G&;ry-PFJ@iS``NR?hHsi;D*_CBpmQyz1<`24-PqzHq! zz`X_tCXTf5s)TA_kyQt1FV;LHSh=be=CxX2M3<3CI(&PDT2cnsfXR+)?zQI!je30& zEQijZ`-&n`WuHDl#-Wwxn{aam5gQI$-gByCma1Z&?2U z)I8Khrj_aA%qLxY-9lS=K2gjRswazLbRG!pa##ma4M_%dr4z5by=bgF9&oKZA5fRs z$xFv}r3r$vL8)ffsf*mxUy(MNTth}tI@yDOTRBhPw<)yk16-t8-WVsI+AP6@JxtbZ zVWjcCG%Qw_tShZi_oC0}IX*AsqRlR3sDX$k90^%~U5hB47GHWQsP0jg5rl6n%W7L+ z=qKj6en&vng-8BQsoLsFbWHmbm+142py=BLetqS7l(;mERy}Lq#gGNmj7sqzx<-mu zV?FO?KT-{E6NgSFMSs(Fp!`US@yYJA5Q{%(rBKfH>|5_4^%nqz6>VS7Jsi?e5az{R zadNQJ7ANKd3ELp6wE@><0-zq5ow>UB_MI4y{p<0|F?x!PYc{d2<~TzdM5NfK+rSR- z!0;t^Z>6W}d(l_;9G?r`=o9EUxeH#=nsm;7Eez@i3T=nJ}$J`OrfpuXhNnWdp| zJWTD?ZK=GUzjubbD=hW(-(M`!pKqOn6%2&N1ojg8wY!nf&DP3O{Ikb>+%$T}qj+03 zx+FThhIX#OO0zo=!eI$}v71g^Sw`YMv$xdN$tr(%A|=_gJq^uz*e%y2N~djCNsW~8 zZnM+M^8=T+_|wF=*fW5-U>izup!WGGEc&*=@>!E0Kd+kfyS&)rSkVaoHOMA`AkK)L zgo#R#RvNF-@eD`QH)mi}_IxWU!7Db+*z#WH0c1BFouTug0)#xj_6DG5Gwd&-=m=yJ zeFvCzuTBi4*<3l}?j&vC$3?7JFy|524J>&cUwr{GjG+i6$75& zN1b+53Lp8S#DOjP^Yxzeilhm-89DiZ&P|~C%gc$zRauV7>Jdi|eEI_PsOfJRIzneF zM`kJ)Jmy%bjYi zBQ^x$UPR$QQlO&vphxy2gm=r~{kTKkz*l1J@wu?PJu1#$8Ioqf)(Y%WWC&yg61q=9g9>qLETK5|!J}31HQu&6beN80D=r@QqG2$J68N!=F;##1;S`h$6%J7uo zW2hCPhtjZjV1s0&f)21PHMbY0LtBA@G;ar==t#9xdBJoW<(iV>C>?i{;;toit z0=+Cx0@DDUGK^r@L^(F5-WttPYc_u2D~nN!n}VkL1Gc+)FV-i@p<&ZMJisWW`mZy}$khV` zgA!~eg{z@5w_^EnH&_FSz6l?}%@-7o6|<4jeI+XW#&d#bp<5;D%%NZ!(70L4*oY`V z!Gax$aG}1}m=j1H07;VnHE|e*JsONBUJ@@^o-9d;52i`!wC0V!uso3WnoFxYNg=HE z!%9;RhH=hn>M!iK#iyfjE}!@lmQPKMN`d7a2ViO=S7@@H(q_mG-6>U#A~@MT9$;WS;~3Jy`uKgoIg9E%W(Awi!=)NN4$J6G%5&q`l^%fDdq&X zYM>0NNUfE;lBs7S*4J;cY5P^G2P!U&7MPrs{!38oq&*FKT;kJA_nyMskwPSD0><40 z(fH6|RZF1vBiNgjJs^f$Vd<6EJPbE|* z4@5)M2p^;@Y44xWG9nMfzHCYGV%Q69rW>vo`15;my zB&67;i)Om3F)?zhR0(P><(hc@ zAk|dR`TS13kyg@OG}u9j%v{d)f0hf}-}h4)qN3%rMP>hVRGB6keMpkJixByN74+(N z+J5RoBKMf~{Ugn}=BJ%?autV(s#{~loX2pbqp+K6y83gvNR6+A2`7T>rrL`26 zPg5~*+;(o(U()~0Bt*8#{wD9RC)s;Gmr&}86+O!PVL3!YZMP)##PGYark?|eu#>cV zq{pNW&MRGSs-o8vdIfET`yDwl#r52ew5Q7>IQr^(zAwMUHQvwAs?@ZDiXw0HLoAXd zGfuyuQX`uIZbU@n(18|5T{gz1xH+LZ%!+e+RLB7YqWf?u^&SZ-mNQ^imhL;mONtM? zyyO^R{208X4PUMw;^P&QTVD^zGeLFN4V4-GC<{7G|2ObFe``nOR%m+sNoh%l3v+4N zKY0KG8E8!t&haC1ky~9p3Yp+4NI4p5}QHeY6N=(D(&s9wLvSqzo5wRzfeZouC6uz{O>- zV)3E)t1d*u>pN(Q82xW0K(Gn_`JP-x-ifJ&9-arlh&xn^Xb^pws*GITiSA=fH*~D0 zs+SySTuYoMNQ-`C%s$M)Ykwg7Me&1cpLGvi^2S46RA>Zee(N7pp4(en;t}-l;x12X zqehtCOJaB;yINv$cW~n8&$&(INv~h*xTz`aFqec{*y(2>ss*Re%%y&=S!eVTaMZ(0 ze$EPt1hmb#s6kikqNdn1h;a4>9YK_}L93*n2WjUY_40Fewy7--r)MJu6tsI(vh3a}=VY$sdEDAf#tV1v5$+->5?GF=W%-&N%Mh*H;-zSD# z;-PG^;7j%pfJcDf-rJA>h8bre_fPGRaeh!D;EKjpXD<;oEOpZ0znedi z28d}P-4^{3h>a)-u+-+x{kd=Q(N;IIY=bZooz;x*_sk*Km|Mo|IN8M9vX8nw7hh2e zgL*MvM$V7C_INMP&6h;I>_gRooot}!2?SZ5S!R5|y%5m`+ftpn!~+xG%^f7tgIcOA zQX-t#zi)H)zx(|^&F+9FpGPrim`+{acU3{gP%o%kSj`7p6jF1X1;x;G^~i=sM`#S^ zvx_ao@#x&jh@gM?5E>aKDI>!gUvs6(>+k`8)AT{P&b#HpI-=L$K0%{W*F?)hWG(-S)Lf`GEPk9|ESl5NfzazsudfQ{42}a z`YRYd%=$XGF<5ycQ{cDT80aqC;w^hf2ND#hEpa02;I?n;VhFU#J)r8 zx(c{B)Pq>c-*hw&{3?|CWv8+Z{qSrs7uJ&@OUBD(DCLvLpX5k~NYXi)eaU#sDEcOj zl+BCGyZ^-Wyd=x?^oEF6VnHSeBWWWDC|P+?f7mf>0c$4PEHUOHF$>HL5vU~X#t?;E zn1Mmo;76OsUegLJt&ff#FoHMv%Q^{u1f7TMBO1X#^qG;2isM6lkXh}ZE;3)}GN9v(P%CJPz z;obb$Bjl_-{fVPoSu0+I1sO6oj}fXP#A7Gv@R3I#k+q5_;5l66S2ENH`Xww1?XlH@ zKIKd7VL(EnN*3UM^ccJcDZP}5%_y8u)T4!^q|#rSZD>?Pl>zvl*vGVYstij!10X|R z{QvpUM|vq;jAIYu3XYBuoF7M!T;cnP-Tyff(^nCO(Gqz|J1v&rMz6-M;pM>p9;E+# zh`|_%og?}B8SN+`_bu$8y%cdvF?J|5zO}D6(f53|3;Q46U5^eaT80z*#|A|UBWm*z z%#lduv9sH4wLtxlE5ZL6_WwQlt1mkAJuV%jf#5XM7GOZyl9@w}X&R0bW6;e1oY*mg zG0-)fG^?x^4N6cXABjvwb_1(sGyk81V?OZuzZT$s%_-=^$rI=~fL-=Q932`gy~ZAU zS%5QpF3PJ{Jnpp)aAAKX;OveW;_Qp?VSkpfTf@-y|2NW}SI~~R-+UG-_#+o?@M;4! z?J?IrB@1)75Y@l)iJOdUyzcbyTz~u5M1P_3Y-vRNKd+`ZhA^;JdO3!Ju1i&ivd4D` z{T0}3%W*-$@89lzX3r}YGj9}dg#{{{cgUvCSH|vK^EjuZP`W>@@=c`;l<5jLHlRk zcX5xG|DpscCM%NQcfr>;_^llBf5$SL=Rhg+8R|X0xPK8Ds(EoTm*=lwiTYPkVNH4* z?fEaDi=RQ?R|te*#joPmw8tKSgvAHca$}S7s5FU}XqUw*;%%(3Tj(89Lqig9H(fWCcxj+k?}DnUgD*V|uKCG~SqB_i#;p&3GQp zNEc!j9@!J<5 zQ?s#2onOPO$Y55(_c4}B3tUPkmO>`mIKCpzxZ_5`7Jdof5Us%#Y=Zm9!J)IXjP~<8 zpQFAoCHkn$_6ugupuy((%T*z#I(be>vYFh@pPXG+biR3AW8}Cra94qMVMAp$`>6UgNUx_?RAB(rpc1cO;C8kY#yvL zD3^sE>BAiD!zk4>IWc1o+7rdELZsht@;RjtYk@Xwz^)fkelJfdb}G_0`-&6i+>$O~ zR4W2)exa5wTb?fCxtdy!75#P*3|T0ogH#)5?86zW%GBZ3NOEs)Z<+yW_a?s*_FhQm z9SSKH;V0tIUSC@;)AP7v)*Ye;brh;?Qxp!GNOE6$%oAIDSpq(OPY($aYkvur5A#{V z^oK~P9__I0EXv;K9}DfAS4lT7RYioEjP@QEyhg5@-X8V~gh^h4sr>>c(9bK{HeAnY z1VB%BolRcwm5F>?Mv?v=x>kKkQP{QIKSn-(+oZuYPA+;b)b$dhRcdjeGfQe|K`O&X zdwCIFScF=AA3~YEtd*5Kt_*Aj zD^by^V_nnUW)ZRt4JXo+LP6*3tfDw{fyAQON;zXU@AYXSBSPATbu>yJQGh`cs#BKU z!W6pW_B&~*?HU#8pmbp@AUzWkuD+N9PKYp;&3DwO^e7-13Bq4>R26OdD{@jfBOB%x zAW;k{is2f0XefG+&Q5H~-S}Vi-QMhN0QpSFSG;$QO*|WI}Zx5I?PBufI-HluG z2kwy6fpg^Z3n4vxK_>qbQCy}*z|kLJ9ao&tP_<3Y1mwaDqHjnk1vFx$wfesRC8my! zvSKLPA!UoTP{wrE?@Qu-lA2UgZtfW>iBotAD^Bqy4@sc4w2zlierR5wOLp|kh|&x< zca@W+^U9`$vb5we*c{O#px^UQ;*miN6S|k$q$oX`|9-fTR_~$N6?3ESxdOAb=|rFj&Y5%J zS;)J^RCG1r2HQ!1J>}xT^9s_5VD2fFJz(KnRTm) zt#j6&VPovA_(aE_%b_hsWS`A=y}G+NW&->;aZ)6^d(5r@L%~L?t^o_eeYpvy-`(HL z;l~+Cg#7z^%x>v+W|akq*`h#l-=xrTfVWb{c$3fjr_PRsakD%=cZJ)%2s&m}2)%K9uN{Zf$1~xO>Dj;e*$xEi?zYHSgqR?lW z$F>AywuHAoC4bSh9XcW+98P-E3YKG)(M{M)9T5=w&CL6KN!#7YQrL|C{fX8(K!9~5 z3&UY!r!4UneVgz2>EB#K8k%JY`;KyFBnICHx{43MW&HK2@nJ56|I<^BMv+P^XGe6L z8}!yXExvO(1O*}}kDZ-Fsv==h@O)BqJj=STx?d5{7j+_BM7g}!dH@Mip^)5>ccv-s zJDv_Xk*+m;K+%GG$s*m{-w3sl+P?%aaWp#7W9A4%T<^zhzASb#fQI%9j&zv;V2Qrm z3V$_H@7IrG@fQvDnbJNs*xqs^+Ft{!f4HJWueL_H5R99-&Z0s}dt&+9`vj>{YdVg4 z0)@u?{u~KB9F>l%8Ym4N-=SLmxB{eThGxmCZ1Bm5i?FslIrX~bLY2k zSgf_?2#*JHQb?=Gu(rxSM@3{r**&XlO#EVQ^w=f6v-_fWBLIR_bXbs)Va;#X4t+%W zsTI8oW)bx~NBd7+#zpGKer08HTS6l?gt?n2Q+r8-m!|3V%`%U4_Tl;8PCc=Q;K}** zh+zU{Di$py7478{GojkdHumX30!-L#xW{sqVT)%{3O>w_PDDB#&w#ru0ok=<+7tZ_ zL?=3g|Ac6|DCD!rWBxD`T#07A_Aof;`DMu}Z``DrHG17sX|ZG?g@pi_39`j5x^Z_? z{_8B7JSVIZ(D}m2yZl*^)6kk8zIJej8xxCI1F+Y?onKNyzPPx^&JYN?nJTFC`q09$ zt7Ijbxtg@VT|>&TsYhc$kn6kV{ea`|ZZ6!9A`SJEN*0bpp)ZWF>rqXtECr-KAU`w- zR1ayHJJaE_8V&Ys#$tA@rw8=S1HUmq*FBNnEkGZ_;I5xCzbVQ45ZLO$ZrwCDFOn}p&xF^z7R zK6X$N3fHkO5rw5`nw6vN_@Ms%j*?X+*LN@Y*6#Zf~vI=r8#$y2q>)8BzG-k!K;Z9ZsDVUvzmz`Wmi*!%T2-3(Q;_uqGi`9VAC z%!tnf;+4DA<9l-GI7nB9sg?fZ71QJlJtIQq+3RmfnVzDEUgU{ZArxDXhY){}hoa6? zKpk6e<=-D8u5Qo4z<@=ufHpDIRN@p5qllk`Ti+7$_exP+D6` zZRm2_g>Hn>_no}wWJ}?}qY*S<{*Qp7E$Au${UXyaFy|V}#ZNhk>v=Z8Q)W*$ZQppP z_oSrrMzXTeu~P$S`!0imN{|;%U+gu5)N3D~Bhn@313iS0vG?zRQ3Ezp60u>SSTb|(!51OF)h{w8v*BUb zyGm;zTqM~xXd}<&YXU9zfD-DxW?%`|@8}b|&dv5oy0{Fd>#>l~PoIKI8|aUQ6&!8f zed9wuxP0A<_vVwJ!H)m2Z8|>3@tI&xQoIkj4}~M5PT-R`;7AX@>NU2q18EOC>udj< zNNo7$)b$nrw>-Cmqb5pfj7}MmujzUl8)q2NA=C;(XpU#M5dbt?2G+8kxziT;X1b~S zl4_qAP2>ZjSXofK73XQN#S;;?Qa} zL*TsJ^JuJiU*yO#adFecRS*{fw zzj`Sd@)G^sJlH@gN)s*)Qt-Z9qo1($-WU^x%Lulc^Ghfoup9++&ufJ7l+FW*N&<2y z8yE{D~gfnw{nefASuo@1hVyUQpm#6BP_1(7@P1+p5vTcq!)^WhdNH* z52ZMPFPeUgFv@>e&*^5uT$D~?$ea$Cn`RLGMM-bc1&&E31QI1tTZO;DNvZ#u5ka(S#n}OlR!o2GWNUymO+kGtMgg#SH^i z-U}OTcYwK4dNrU|r!JR#QsV1e2|eBuRZA{@kok+=1TWU#Bx&TS2%V7NN~Ms@d?xO{ zA7#E7@SGWVlYyirji0pr>0thrlUX}BNEv)$9O0zp2yHV)RS+jWEJYo@l7Ih<^mjH~ zMCf~7eibrQ_1s6uV{4~mTW3P>JdEh3?8EMkd?c5ORERW{@CYo0k=2N^OK^vN_(;5| zc@i{(jD%qG6Z)#nn73)_Z`0L!je$YNJ`Zh@nC1g)KwyeCyP|Hqpt z_s0WDGZ{u$9#aqgIMLONh>0Gh5xZ}_uvcdaR~orE&1TKD6hdY+A}j<1<3>RvfrLzB z(*SFBv-kEuWCb~}r7vji2CK7B6Esjp)jWZ$p1{@VRxJRcQ{J>BGZht;V`k|7^EV`K zQrgtolMjDR>(ih8y*<5$>lHcDjA-uFRWcAwCChV#1Pxm6)gv1FN)x)NDYDDptF#^3 zWRoq(-1#h!KXSXQ{x|FgeOIxg~|T%q`jy#k^g(gyEmImt%3v5XMh0Ei>6MKYTZu zs;C)`OH%2xrgC8!#R!c=4h~@0&@CYXI0l*9I)&uK5IS+_vLiyMcm?ouX=#ho#B!3> z%X$Ef0vwoh-x=V#)z+J1eRA+D7AJu^FTMUVBtR%Iq~Kim8ObP>*LbG*Iw?NhNarGLGg=ws^(xNjcgL zLaA+ileHj8G&kAIC`oRIkmzGADWs5I7LQ_@9JG7Atwiy88x7GYKf?+ zx-yichghIxaC9`0+eIv4lVi)HOVK8~yPFxCi|Fmm<(B+T?fsf)mK=iXY2i|BD$ksr z@u%9+21#85XJF$9CZ?!v>_)oh3{vH_ka{Qr4tq&UMY&{O--9^1-q3~rB{Eo*V?d z2e2}SKai!gd2)45F7b<)2k|zC@0o~o(pM=&q|Loe6VsES&@JW+b9pB!oV4B1;mi&qU!rz}7`2AEkvvb%wjg+6X7>HMey(!!CVL9Ka&eq@ z=T4&kH#m(JUd8=Urxm{RhZlRDFWy-8Dw2N-_OKq}#k^Qspc|YB!>|ol@l@ZI^wh88 zv)@T@??SZ~R$s`EYWrt=+rl4^%_HCr;@vccL*VH6?lZu7_Yz_#h+`V$bysC+vdyZ$dKoT8o*0Xc;L@^zEZ$ z=?S6t@F*Z5AT&!zCN>lIvF$2LzyP6^gUrEj9V;q00y2e|+2l%=pEs z4J^`9*22Vltl;-_wW%|0lTl*=cY9KZ9<`*S9Oat#H5@utdH+(UFR7>pa(Q_K2%C9A zA+p*)=+4xyuHaU(`(a~Ls47@*bNIUZPu%DMIXU%dWFa57RAjF-yTYtay)mf5P&9<+ zxOuYG9Azf2dZFeR<|=}DV_P}WED80z!v|Q)1?>F(15e-dK-oLEzpJ;N4ZVL9*t?sg zv$%}Zw$|gjnYFy&7x$^4IKwE037+Q{!gw*T3$OA~zRKwt+thXjtQ@&e-443Js06)! zc(&5mW#)RB0~LpQZ8 zt<$=3t@xL@sGD%)c{!zZ5oAcyiewqbpWW`Ov&iQcf5iI`QKwT=1!so=O+=*FKTKWz z9FtUA%p)cqHixY(p6~p4HS>TfDJ73e(`Tyv83$He#Z~e2ly9Fuk z9^56kOVQ#^ad#&`aJS-8pv9q3in}`$Dee?^m&te5z4teF&CDN=jIuBH)zUVUj@9ckg26SF1&KuPqx08`fp%DVo-VqCyw>{zGh$Y zq)I(WUyY6THe9zc?Pkh7eY8$QN19c&ae0teD2T7wW5Fh@u*hS*(~sbQ{q!dts_vZp zOvg2Jc>%KbN77++imJ`w7Re>s+7j{nPya5z-wpkF9BDr@yW`D}eMns?ciQAMEL6}C z9UqFbsqiB9KSLz|an$^Ma;Ts5SW#oIG(M+=_nyGp(lYzBA!CygfbhB0ig!74HXbMi zdzwRIOG?DysYNx>P?Jp3Vs98l+XFi`si!IF1=Cf=R2?-?K|c)z1YEXGOH6mh*(c?k zK$NtGc9bGt$~-`jy{UfaeBv5vIEI8IZoU*{rmahHcm7!wT|@TLEsU0nbV&S(8}s~c zc(wh4x#=-^`|Ur98T_0`S#x}o-vX$gLdaCtsSb^2!g!;H7}`>z-3R?bmf7OkiWEV(XzLh^gf9h zT8H5#yg&V_WE`&FBq*oc#c$qTPoIEb0mG!??qnQ4>dj_gB@|HnoLQDmKC`&~TW60a z_Pmnm@S?2Gb+)z&(=;DG@vGSlra7Uh8`o@bw%({B{}W;a(s%!C9Jq3)BBtN4KrzIZ z(+v(PpmB_DUcCI+j~-H_DC~;MJj3%uH;@Y`d8P%C;rXb@^^M`~v!b2IARjs<4{Orv zJAZ#2>-l&mmB?Z~$^Dyg&nFih13bEV;_N`#~%ln1AZ) zDTbWWh%AgrCX=uVyUeLLtfmetO$c1W{{ zWjF!D3x`q8zom(ol_rsX<3GZBKovD5+=337pxsgZ2gx-K22w`J1yK~I>HX&gu<#K zavB!WX+6Lc3FG+ex0-aNItXA$q=?^m`=N0wdzqBLN@l7QI@kr?{V2evSy9Cc??PBc z`TkHV{!ZHLyaK@>UD%%PWNUHXA!|VUR9|I}vVa|~J$Q?>VTLG@=ZHAMG8ynPsSwuN zfaRC*Zf_u&qOqm zb0=n?XoucvJ$w)dIFCpp)Yhhv}5&D%7 zzq512Omd)IQtnM`P!q+kd~@M7n7s3RCQK#o?{bAOWDr+Z%F4rLJ2XoW3v6knsHd8l zj~;+!=hW}-+?6;Fw)7Ebkz`oh+5ERMJj~p4^<*B0Q5BLnO~LDlR%f~8 z*Pj*U^5vY5XHh%kcn7uS7l)HkM`-D+W-0DtzqD2(g3 z$$4ZKv-$6mHbYGmg$#!nFYfX=l9%TBYat`6VJEu%P~?o(C*_d{E?W&C4-gM$Ri3RRm$Aq1QmaNfR)c8qf}W*g-0v272@TsH{ZZ z8=izjs@F0go~i!SUZh@fMQo$`R+31($eu5;xUHzQh<#+o>HLSY`9ugaFNgTl{ix2W zidZDr*_`$Zr*c~Jz%|+?k!|)a_~AJ7z*MWv^e;MEN@}I+z6*y&lE~&sDM;xPH{tk% zoP;#8j^lbXLEad!_6O>obWz9aV(_yLgS3Mk{xMiyO~JA&|8*fg@veGk=F?25o(av{ z?N}qHT`uREWGG}bOQ^MBS^Ydx`m`xYwVbB39*5tW_YsD_a?YVtC=k)A+JZWkhx2_}|}`1oX{ z%;H7R_#{(LP1EbJf^t|}2@6ox@`NYQK8wKpXn!+RJRrJt5OF;3Q%q!xqGkD1s4+P- zoTU2j_$VYq9IqDmsrYqwso@!WAtA1)x(slAFdnJJ7(q&GAexuE85DdD%U~VYo=Pe* z%sU9|Nr)}w2wa+e;al?DB&YuAomglW#DB$|;_5QTIq!z!o9~g^^`Xyy|rb`YQr#M)u1HozP7eDB6m_!hCkPxyd4;#e0b4U z`x&k-IOZDuhw=T48fhdNPBVbbqz9HbxZKhrU{Ry=+tlD!f;_z@TdLjCI2dMvJBPKH z<}zkT3!jmT`P&9k8{YQBigU87JeIDUH}dPiQsXtIJ{BwEi{2OZ~2x#3W@i^~?Zh!Bp{F`|ZsvBZuE)`6Y~OCH`5=a@s-U!YMWubuk_!bc4XgAZS;132McM&c>wgqbu+UR-dAEOE zY=DbyTNAb56N5CCU&em;P!p4A=RSZe;229!FBh>R)sX_<+7D{qO;}2=y>pZNCnx7jdrZ1q%cp2Q1%i|#ANhpY-kR*V+mjam5eZTHn&c($VuxekpTN1 zN6%_&Cl>0f`glg-J{|rRXzCy(d~;sr9M`2Kvf%O?Oe|sh4x6{lSu z?Qf40K(PhR`Y}GCa$RTYM3v$`$LY8EfjT^FIq&EbiGk~m^ZOL^Z6F1DM~FK_Mu~8T?v-2 zRsBKY3}6Q8A742ez96l1ibRKLuQn00v31B}%J&OrdX?B4iv&Qf1b~jCjYFy4pq5Qu z_VZ3WbI}KKx0WvY5Jj{8nN)`QpB*tjKkcK{O!z$KmGf(DX|!AoV#xb2w+N#o3Ae$p zESyN$xe+E{e`~6*BI_h`?#GFE&GV;%V4_84;xkL!z}mpjFcslo^$u= ztcVADzWCnanX?6=Mpbqo25Yp;;ffdff!fFJ6xms4KR*cu-Ocs2dx&cWqKUXO&!pqv zQkjLiB8J|KmKy%0*)WfgUX__Z%RA#$qxtgf)~7&)K%HD{zlfBzk#)-^)8n3Sz{eGs z=;4sf5XzTFtYB#k9mbc{prJvlzcHy2k%JLqb!M;Dw%~0ARY-P%p|Ur&1pS}Qvpnyl zv}6Qb4hk*Zg`LgNaOBu|Gt(BN*bKJtRAD0ab<~CWpFSF-9&a@c9h?bp3~I#9j;mp3 z-^NVSeCtVVxc;^JE6#8^!$dB`ss1>q`pJ3`(4xoRf(Tdngk5n(b9$=Hmk?VCkU_9o zs(0tO3Dxm}>xn0AF8*Ey4>GalULT=wp@#~XM5(gwSyNZY#^(g`FSPVH8yqS2InJaN zvxt#ob*X@SA0+RegZFo4?AN(yGx^M3=6NmgGtBP4l6&y$NU0v_D<4@bE_}3g{EkpC zG`zkeOeGfZZjrW26uNT~+W&yR+7c8!tcUE&QDd8<8v!SmVCrMb-OE}U^nx$ob_oAh z`197#wS+_=4n^=4)plbePHKLFzw-v2YoDI}jf+PQi>1R(Y#e}MCCmzqw1~3dp$-pJ zk=`r4`*1aIJbgTlt@usvPaB~<(miy01j5+^Tm9(pHH&xLfBWp*=$ls^h&6Ikk*^8~V-wZ#TmtL1QQ@H(Z#j1m|-DtsJ7n=H>0W zC;sUDo`SRT$j#ziHV$5qD)Oj%#2Sj3^Z57;`95Uwu)qCa6s1R*_{L?f#NU@cgX0JM z;*_~P@dPn>Uf6eCpgu8&757N9bG~11}|1!KJ2{{0gLT{Oe&C+H-HJ_cN zv6A5KY}mg>y6C#OOTOxNF2ou@pe0@Jcx)W8a^591+nSK0yWaid&QD%Gs?KLk;Hy2f z_}c1TmI_i zuKL}RfP56Q0_c{!b^$f(ouQ#J9k#W#HrIQo4|V-Sri(o#EedBHkL!+c@pqu@lF*o7 zag%REBbiZ$6_#X6zhFXPMx&0_(8$kl9hQUPe~Hn0x*a1LaL6?~g?$~8G20U{q(PjB z=ReU=t!#=ry}T|4Pe7q+c`8^{lHQnm>w=zzCx-XXw`DJ@Z92cjLB{&5PLPx z`Ov0nj3o}-IHm~5J1>fVP6FVEuPj2#v`aZn88%>HbB}bKyfwY_>lN=wq@y(q(Qlb= z0{+(|&nL>OEDX`G@6$|VX*S`yf?`=`BT+wF2&m8y3-ucAk}EPWB|0mRwsV&sI@E1* zREFyFLd>J|u}(J+qGF!t(ed>0{jRsTW0!e1keC`{FQ1?~46g%3r`49YN*gth1Y)4Q zJT`k?*I>SM_c)kww6gmvFRAG~Qn8B{RRXzabmgM+*7%H+PvQ-4+~wi^R#arOOv`f* z1GI#rb}|%9^z7)HM&8v^MW5*0lYaA^Ji-4WXF}z5veYL;1$I*H|4^rbagfxWVvgss zH>(XFDOY0VL~1O4hnUh!Q|~oEO(s|e7b@v@Ww>Diw6-Rmbh`>AQj4ko=zn<`{Frvr2Qd^%=)$wKEQl$V5){Gqs43QIRHs>FqS2ru~s{-S?HL339oA57SgEd|6 zxa>pn+fsIW!H+V&_SYG?7Po6uC&La1Tgma}6kaa?JFW<0#pQbP<7#IR`LRO#hib^0 zZg`%c#8WLeEnwB>8P2fN6V1COPs&V{xxJ$!IU_qhkU@24v^uB7^H|7O+%;q^U}a?@ zS#-hWYb+M7yW-{f`@wsUe?dTuFzxvYc&)9OI^`#KhhkJ{QL@4QGV(d_I5Tuy&!?lg2f@gNx)k7Cl!qN%~-`a_?wj9B^lfnbWAdt zCmPzm{BINOCHa$jT*+>BZSu4CnIVm%2Zwnd`h~lVYU0zD?8?|#zKgc4%XM|4>&dRw zYI^|j`8t)wybJ%!>ndm2&=x=B&uYqn5kcp zD0ElQx62c0ii<&YU*;Ii&3nlo*|WqJ*t@Lu=uVW8U}kU#Z_&3+-tYJ|Go5!9CdNw7 z)+O#|2`j#Ja?Iyr^U*I7aPP=j#1GE6XI}g(c#CWEj?Tr)Zu7l{RlJU_ayKqvu+!)y z68EE*{&E|>M>Ni1(I}cZ24qZ&Zf6_=F46FRlukk(P=^?81qBbC>*l=z=RP55n^NBN z=)gxYLa5jxT!bjNbYal#Ow4nI8W@1c2;+-v&dS%D+uGu6JhI$CT3Aya6y*L7Zf=NE zJt*7{vhr-e6H)8%GVExib`ir(szp#QU0xq6(l~AS@7ht=Z&*=AN8K68j2*Qt@|z=n zx+yaxd#)p7&rq-i<*6UXAVoCR8IeBEy#)Y1(3Oa?VE8!ogWqJx4l7kaJ8kNiGCs@q z?pOdDl*3>n>g?Ay$fC?ogA4DneEB_kZQ8G%C4<-PT_r?$>cp6noxCy%GPNr#y5{hjP4{_` z$|L?tI zVO2UD+ikJ@dN1SZlvD1z>WJ!CZ%h-0D;)w4q{gQumfdFeE!uID6Y_A-3RI ztW3JNqlV^9R@|Of9FDXNU|rOlTs#)q;hjjO$ zAyWOW!R?(JYM#H`Itajz>q~T96><}y)T}V&v0eJNd)C;#)Bz-015amB>m5YSFh+IT z)3?3(m!V+=^(K_;VZWFOhC!FYA1CCE6()iK5XJbxk5!uwFF@SC*zav46?K0@Ce+m znIY9k{^A4U)-IG55Ft)@KYL_Q9PUMjyn(x$4L=9I9h@n>t5mg67DddMfI}7@v6dv& zG=*mPZq&sQDR+3x>B2Wd<#=yfww4twDcGT2G7l z(V~5nt|)$9E*ptDi&{=eie%^41*E9|Py1U7}K>pjY3Z z6JE@JG{nTFfBEOu!$$nA{x%x-ASB)xaOC5eyBSSvxAe})At$dpq{ctD!p_yC!LC$c z7d(&sVM=ojXCEq5FY7)7o0i=zt&~gGJn3gxw6so!NnWDLwz;{s3KKH4n!8jz&*bXs z$1JDFIU-7@iSM_&T;2CeW&mFtIfJh|#?o*waD0mxU*o_AxsV4Nfq8KZ$&KXe(QKHAILFc588yp+2Tn$@G*VA44*89Q! zK@Os;Y6n|f+-6JfBcA>w%~t|=4vWh+X0vp@qR4V@HgSaf3Gm<2p>w5XrcO@arB7Y^Lc0!`zn>g@1+ViG~tIx1e6fKn>iJS~L%6zaz zK5`#>K6?Ll{rAfB%I0i2Kj*P&Zz#>#JWqwa@ilm~F}yln2(M%rAz{1<29dv*QWeF$ z;3w7WFO|KJIt#VbFGN+W>&`TH$LOh+X#<4o^!|50PlLtD4vy{7?|7E(9t-oh79IYn zq4t4l)JBKMBPD8r^QQW*Ua=j%sEjYtKVxP3HjJyb4;lXA7MxtXKY4#&Rc1ft9~2*-Sr(1ytQ@EJVv@=B0|e?C*XDRD25gA8n6Lf za)F&g18*;hKf+BEMb(4I#Qg+iecAk}5#8e-(^*Qftn1XkLR5@X1c_f!F5Ow7kRNc* z{~fC$AUJ}y;G90@8VlL|h2m40%;OicTx?8kgsg!ri^wiVioClPa`)>$sG#1qpB+{Lnhd5O=biWyZkr(+g zwyQA){C{y>c>j@W9^h7|WJzdMEjcuneJS1gYll52pS17em>` zVvr4JRgQYIut_hAKpr+lApCHye6v7h{VW4YlP z1;{V%h?chX;%Oa;SJzHRp?r41l|>yC2PAJQfJTu04{rzZ)p(pyg%IsQCMCWRHS5G+ z_r3Ezi%%WX%@bVIHzy_5bn9o?yGjR6FM=U!RR4cOTGn-I`J;Za!JmW)3sF7s)#!)` z?P+FS7w=5UwnF$Zo!Z`%9?!$&Is!+TXwH^b#4guARP_}Y27FchhtpghZ23{9C8+C@ zsxIzjN^<%5P}Wh4K4==+_S&0*#%ujI90)3EuXs7!16Va-D}hgV_cQfD&hJp!;lU)z z*3KmfZeQTEe$|j^JtexT&WVEo**r-N~gIJJ}t&6H>x)_|9pr^<&S9N>u)t z3^Ha$&uu4OnBdrQ-V0k3ZBd6mAk+`o4{MU9qf=DXg6|hiMny$+fp>Yy6{XZWVD>K0 zQ1$ZfA`Qvn@q!PG$k=o5E~8^C_Vs{IVy`bW^LqRlYF?rD|A7wrE}>i+<$lHw3HVp* z@ZQ$ay}XP@osD_9EHli+ENP}8M$I;({`953y$vrS{c)HhcfvTadAR33H?*aSm8ZG6 zH&bvYZwJFjQ}D>n9*4~}vUbeg;cu5WzLeeM;QkioAwn%R4-hBT&u{Z!6lQ4PV|yVw z&*Zs8@hIHeB!?O^&EEg*gGtV3?U$&|DyOU|232tWpA~O$Ws!#+@r@VDTC9$HA$sBt z#5(lA{-2HtF*cdAATIaSOl!qQ&!+S&gHNF?7g~_tp@-+ky|a5NS)aJE&Ir`4n236Q9RIr?pO3+oz)tCf&6vPsdRSI(2t(j%Vs zt@#p4Vujl$m~6AUu!-p@E)0X-GL+kZmTriQL22`w4qKxY%7W6JDp4E?4XnwH{pykUfAB~~adhaZ0L;UlBqJK% z#xBt+mM}M`9{piAGd~mEUx98LzzaBZvf?lEaJfT*8nMLFuwWC^NLl*9knDR)9P;If z67*#mg8%;g431gb+}iFIBDQYv=?iD+Yh9O-kLBvd%?yoLgTwwk5yCJ8Q=DYU)66a% zH%k;W*-S^4MgbMXnu!Nz{D%P8?oo!C@9y1zcV0g(^w%0+&-c24!1uaErr-Q$l1!r67x!R74Ndjb37k zF-m3x42IQ8tMC7W z1!r**9O@@fwuZO5(>dgf^$BDbYloidapK}IX&88s6l+L2jAF5IOG9E~i9|#m^tzmQ z!&nhrM6BdT7@;jtpu?&_SdG=S8Rt>av_XBL1x^lT>iSY7Mg`kwSZ^X65)n+VMMIt0 z9AaF2qG_Es6E!IAVppK|PXzhQV`(9@Ui+Wbw^zPL)Ilail@+}%$Xy?tO&&!Q6~I7a zg)03!_!R6jVDy0_8H$3UB37fzLVb_&4O@g=sPLZq7KdOaC&^EgQNG1tQE=!AB>6k# zQ$sw2Dm+mE{WUJ`-UB=wKzKL0oD9`UuntYs{20QU>fDk5dkrjd(`QBx<}54ni~B-u z%6uLuYwW&X)e)$;%iRABUy}j;{~VAaFy!8Xk%7x1*DSj76yv4^!`$a!7f(-cK_U(O zn-lg^TQGy6Gm(!A8F|0=c1w5m&dX*n=D}MPJkc}nelYY-(Z_k8C2;3+CxBIM)itzk zGnYelAZeV&5DAr9yMD$}W0Zs%M*XkT18-Ad9GqpxgxClDtwMErP^QKIEIRyAwJ{Dq zLBt5I>R@ZW$3Pfxs3XK;l@qYYP`3R&C+%!m5ixM@Fy&{A@oA z-}$Lbsz^PE_@#u4?7bqUdxNy(l7;4RrDDLI`7zDxzYd0cI&$b6*U*^%i(n*($zSY0 z4}td|u-QQslF2#iB%S(1p+WnEWU2TLqYqZTx zeB@!?WyvD^N!H+zA?n>Mz(}t7o#9SYS!`UiET4X%NVF=?d7k_E`SexNap&Ol|4tYGo*}tR|aN`87CL|NXJPgX4-7Z~eZc zu4AZn1!`YrcOc`_l?eVfv~+N5vvIC9H6`+l_WY7oKqdsW=J-7|w~7a%y^=AXRywpt zlS@&DPpx$f3?_i|+UboL~MyeJs#fxW)90(uya|;=wA{hYsK+S5G_0ppLu!899 zT!eYmtpz5rLdF&r1rr%nmLUCEJ-}-?ade1FP-TuwZwzt@n5Mp}s8uU6)^4A@_K#Ev2 zm*yIzSe7E0T>vl!anFZtA;%}m*!_e$4w(#tn{9TV{ta_y;ZT%ENxr8Mc!VYmH={DA zW14Nz+j=%HbFBx^1<(&C>e%edC-vM11DpB`p~l zJw~FgH~uF|B2(Y8+22Se5x8W;U|ac>6nMH`lAO^_U15z-H@#B!4O`MF;ebx$w;);D zd3tGSJIdLLt#6nSbgT3SUJd3Lka-n01N>3%%NAASw!FcYSy3uR4*36lGaQ5(`aT4h zu(B;!)J>EA0nSb5?nUxv>=(=4jq=YvjsW#tb{cE3%eBN9ckTz&C=t}EdLLO1Ty`HM zD`cdz-)ol1aDl};c&4+JBb4u!X}(m?e+negQ%4}f!<56j&EJj05y^r1{UDmV^R>vq zNb1=Hhc8dp-;$U;ZI90e@~}3BPJcP=bf2*eqoROw)kdjwX+)T?hB!LHFW+P!Gp*rj zaeSTXk$(|lT@QA!T#wJ#as>nN5oXM$Q|>smJB2Yn_N^su4CV1}^cX? zdm+HD_zkx0P{jeYROzQkC_JHj3KjrE$%$B9|6k!7f=?gJ4umcUu|Qulk!(6*@^FCK zU&V?2@DdEW;!mbI;e)2$wzuvAp3g+v-)9&ACZZHQBT1N^U6{$Ssue7*7v;G)!gHSO` z+UlV%IIM-PoOi~zov-#x#|%KMRNrxzu6B|;Rf`tPea6TQsXYUZ&sJL89$`tY@d_z- zHneUXW`7jXS*YKC#SjQSpm$pLMe{!Ih`1BfpGFNV{8?sd`s&qwzi!}@*iU?Fl2G>n z>K}MANoZo8q{xG4nb8bQn|KMHHYUd^nU3b|>}UR{sc2Vsys5G3e~qb1wiFqs$NeR< z`SNJxZ)9#93za^BfXfTInBOz|df+>s*QsID;pT@~CkJlcliR!13+Q@JCmCCG2Knz8 z!e9F&iAg~(pT`{qdYIL8WT&E~6NW7i!SAva5l){X4{$%mQPH9yhLo~@g$Jm&p6+r|ohL-TSb0f7n+BiuopZcLwK3vKo&&(_5vR<{GBZ8FWyw=7Ps zH~g+0XU{hJ-XBd0EcEB*PInlmI1-_=EgzvsJ!;F$={aaP-9di&Z?YW?Rb)i+g4h@> zoCUt)x(=B{qiYWze=GD1Krk;;d;#24H+JrGpGgu`I_3CrR3Om%A~r-M zVC1(qMF>3M$;K~YmH0-gHt0R$8ZCmi7~9!sC4T&;%Y*$~eY-!vKXQdq*S=7xvhSvTs&Bs#!KhmmWZdApa0ncEsy#XOyNDDpVK_5dJYf$EOFpyMW|qC z7&wZpz4&@xpzs7g781wCU~qeIIAE}`T>1SV4EQ5kU-h?DwSdb#-pNucOgzwT#UT~K zY$(u)F>r|skxAsZH`CD2Tc7KDV@p=jnD4}2Nz9K*r-+vMGa>M^kyNs1YZ{!seE}6l z8>XYDj}tD2ms@O{Z;lcU%aFTdmKJ??L?*iPqUom0Z^&128%-j|kL@Iwm>yl-?2eZ* z-eV4Mam5R}4U(@ijH~v?Ea5basDqe#oC}3D4mwX8GUWO$bnCzm zS4!?0vS~Gu`@b1EMr5)SV8t~F^-bYNE19QP4HK)%WOH91Xi8(F-46D!lzae32NMG# zAbkb$Dp?e;CRJ|=cXCE@=x7Yrylw`y1Ph!Tc1%Pd(oB8($Go+V0wV4Bp#fMI4|ec~ z5%rI{^ICO}nY-nEKlb_zYGe&vF+j8=@Q+GKa=oR=Hs-xre{`r>XfWMJ(SY9UOzxKs z;H+;ay3mLdTeq&rG+*{2nD5_RrHOS*s;bC|Ci5iy$6zh#GHB>|Nc8`~Sa#EmHUi-v z>F7?}`S=&9*u}^+^Knr_6W9#Qe93d1JtxR$Baf+wRGqM(O6c)z8LDzSgc>qpu*N0#Q?(IWuX?5YcX9K?Sw{KIJisH6p$b*5>Xv?>YGgi97_46~0*2f6Yc9gUizV1^o!hBVA- z@=Q5WbIm|5Ae4|6OHIB7;-9&>(2j_3C(@z!7CAAPsD z#8WbhR+BPR7Kqa{c|f&HI+RNKx)_o>yTD|X^zZoZGk;N&BMi`Tb&Kv#Vc-k4-~J-C z#(n~#+Zt{TgtV3daA4Cawfo%*(~7L3B3T1zW}%I?xH*R1>`;{H>7*m0vZ4g#V&=^s@l}+qsnk@z zKUBg6!wkv7*6sEV6>^FW*sQXG4Go`)X8s;QU1KPzc!?z~(c{!cWL?dul1qfHRCDB) zaYwS~L*fpRKgF-by`XBtWaSme^>Vw~CFf*+=-PByKuKoiqD-jmJz4dUr!#EcK*ord z_-rTe;P>$}|Hm(}o**A) zbUk46$Lh-F5}UPr1yyA0$Pc=O(yC@mh=a08`DAFk8)(}^mL~9J7!N7;BxK1D-jZWZ zo)%OCIo+b4oc5Xmy3}J$N<;PDrLl)L8*jj9kS{*;9nQ#F?Q06PBO7;se9y2HxmHD{ zIM;_XO!ntminFR-$;yRMkc1f(-FjzniR=vwLP0#WYcrB2`CgOX7j~Cm8IYIx#*lM zIK}c3l70y69f5?$BTXv)3ESKMUJq*$LYMHtDeI>KZYP|W4ip2!o$)P~1EQsZrhy`6d&UKw0YZ`gTkNGT~_;jZa;4GLm?oLJXiw)qxL zKS$lJU~L{A+qlL9=%el&=pWCAj*)&@pfGWpP=j3jh@Td#`W75>>b=kD+k^Zlz%M=? zY#R|>Z^uJRO;&J(6Z(;pzpv{ZErh|+p^A1SrsX8$>rF5W3FqCNuO-MS^nKLwJssk! zy-Vvjd>eQSYTMnWqE)jaaOWkt*zc^W(yGsX?P9YJ63HV|Q$1zzC6L5K>-Pc$#G9i~ z8ok9YIVhJYoMiRxa<2YUT+*nH{=xnIvgY?S)x*>=AFsPU`gi7Fk@rNtKG)T?k-n1h zZ63NXXv_!pppAB4dA8LDUlU%fmInQbFRrn}1jR`n>a~*jtL1htaWHu=5yuGFK?9UdC6Q_@}%<3#Na<-(6dWb40_ZLqb$#SIFh8>Eqv9 zz;aXK@G<)=A-}~$3bh_9Gd_n&;#{Uv{p-MBC(P~u?e<}4JXS6?D(?HW_hex+?H1|Y zd%X)SBJKF`&{HUR8e;0ZuXQPZP2X^WXjYrgWg6EK&o7*{(p&;;U}Z8j$d?0Z027s3 z?p568EeJ|It~awp6LPD-p>Ix~p;`*^*Ds}&Q$ zvS@m`3J-`#aLB45P^xbz$D>aT(lmrtV8|2}e9_zq`A_(zk(FJ#qQdgq(@=~2V?sj8 z^^-(8BT-wUmZXjY+IbrLE!nsmHp%)w2&h}T9FJX@bf!1Eq6;WEj9CcYeGaUKq6zi~ z_bK&eqRmcXA+bZhikqn6GsZ>8o_A{*8SN#F`Wm1|o|`ph+@$fZUuCSple-k3ed4?bafp{FApExW#-EXN9T@BXqURV@&TIjQJo;EKIe*kntS zOy-L3sIg`5#WKXObDv)a?2u6Uub z5y2y_`K-)u-J{HGieYPJu7M~dVWX$^0Y+s#QJmVJy~y%JwvL!3+%)lbH95?ef&!ze;>KUJ78&05`uz|ElgHRsd3~*!+F_Z2oKQ%Q}mP(|dqxqq_ zpQ2~^pU?HidziWck6q)zc51CyALlU}MbAhHlFJ+C2nQV|8vl7;!o*6F85ihuC_Id% zd-a=W%jFi49(OlDu;k&egGFy)9kt$@=QByB`NkG6GUaXUw6xjz-L2kw3Yx3@G%Z7a z!TSz*%t2{yCWS2i926_thq0uWlN`p9o=O?e`=bFH9D({&O3kXj9$pj*6BmcERT=z@ zPH2XUJMkN;$HN{M0+x0b*;YGS5meMIse2@z53TN719o8<;lk?a{`Re@#l_=eaaHQQs!tl;ws$f7E(c&Bx+xwRSD8jO6yDd@cd7jg8!m1! zG%1W_u@<#AX`UzSxGjUq@WG!?RoR2}?qnTYRkh1>y%y*~ftj}&rJduwv)=W_Kl{fJ zj3$z_P)D{X{)oqiSvxSi`N3G+9eu^?j6TK#E`fYi=7jH|8m>nFj8kv!;*_Q}n;P&Js5{4AxW_WLT%&w@$>dN^=gqv){^E1c*9cKT z4U-^=L#RH5MzInD9p*Ueo&oz4zebXI>Bw!we2^3}9Pp*ncQ}HdSt1u}`!>6U%u7%D z*Ob~IDL7HHHM{~YhXOIZprShhNxEtC^PV*UdGzg0UYey=dx`{yj}p1JBNUQHOzM*4 zx$#B@{Dt2+QG*om1`{?U>?HA+NpzK&!sD-xW)z;LuLRSRE__|^vowTVkZHz_lD}mu z#96G&pV-Wx;NTM{v?c`I+&D=|o{1QWbrK_>XoAZKHgDSsQi3Kvd>f{i`7N{Le?{h& z%3bew3F~0EjGV2R5SdOo(_{&=%`1l0>2m#O-W=q^1t%or59Ip^&FX?%Wg9p=Bpy`% zM2!xMNgC-2s`~sJo_@}$d zBmMS!Nr)2velwbu*)6Fk@*ZtY&d7;P8b_@nAsa07WU06IKxRSIrC}OJ=iUg9+Y)aN zZi1?A&rCb~iMj;W`V`d3TJ=-dB z5Y77hz{x$hwTFidahsi~1)J?^gEq5;YX&BDLBV>!+E0W=G>7#!-H0B&pRdeMBwv$j z)EgfWksj)fBR-{A?+kAN`v+CUwxEqPh%UVAaD`EXFp@tGwU_0hc_v||#ecF8WpHQ` zz|c`XFq|mnqL|>}>WWZWvAoe0cW2Jk^qroTPDX6l{YQY2hXz0-h_rHy3tK8~o0(4tFwuc`M-mq{Bh6+0MkG8UzO+qcP#S z3Z??l`XWn&f0ceZR6PY~-x3{W$Dx)c19}U~G4PGBe(S04+k@AcQr&3X7t?mE`i2qU zuw}ircS_n;veJDoRio^-x3B9q*R<3XXVB=Ef#o{h!x(x4TiCTu& zNw8b1(srHgAJr2wJCIvN^*IlMepgezC<2wOaXp$GpBE*|Y;)1i!9uCAEB2}rQgEb5 zTjq2~$|PIq8XG9T2LrWd*EQfrHufDC=>QqucwZyG@t%xGL+~UUJIMZ>u5%S*M~70oKUDgn?|Je2-O0>9UI9N#aqG-9P=Qfmx`mv2&I-iwRa8%qg8(-b z6>i8_PD+Qbjc9-+%muyR4RCvHSMQ_$oMz!IsX;iHKqe)neOr2OPjTNhfl^e*%n<*K zDZ(NgSz|vYS-iWLnt$-+5(E zFz@w_s5vArb5%QdFf8@TpdQ(3BMvVeN|IuiV3|7OMyAP)G6b6EMDE00sM|&(ss#}N z>9hcdaZDP&Gr`xty?cmva_8o)Z60nX5R+jExCxwiPO?(CtZ5w{8N({o;np}!o_IP> z+Fy7TAV^7b{mrNbe;$vht;Nzrt>i5KNrEUY#>{d+NzIExzV5W?0(GE#A$iF&i5LdN zO!fc|cVQoVTB$@l`SvI5B|jv>nH)G5WJ^B2iH!L}3)_2|T=et5*WRWV%(a=#4zd>ux96LHs@``=G?*gMyX<%i1( zZLM~whEi{+s1Snivo9CL%oGO%?(Hckgz$9DK4fUGI2l3CnQP<3{ig3JWJ17+)R@Ei z;x0rSb{ZByL`^F5W%TnSOQB)Gnv4|m-gwm9}wT*HUyFp+7BAh9T^``1^D($z&H!&Ba#a%%`* z$>cn~_ZP!Zki^03Uz>XlJ`8eB2+sv;Mt0w1w8ZA&Xx(Zo0;?B2GZ?|)9nL8po0d|y z0L|p-;ZSu5evXWe5pi_UwmUvws>c78yf2}Va{Cb@xGyEFjuP?I2HEI!B{>|n<}{T8 z>j4c)BG}7Cr`qk>`}60pZt0tx{5EbQEi>pjb{(CYzlWPljfS4Dyy|x-q~y{_g+p0F zEniE%$!kp(J{C^Na%#4CqXr)jpkfqJ_+>K1MB++lL58AE`^tTiX{h+v;cUk8Oc^>+ zh7lV);13vCsNF$U7m2{1jaFzndxkc&coerw!V6&yLX`f_@Yu2Tl9IakdGchcjnOA_ zo{WDyamP|r@}4MCu1R#5|2!n->JK$eu^1;Gp~2~;eNr3N3}No zw%7)fwg^fKNg`bT$fCn={1$GwFTi5-T<6M zl>0m~8eBnk#Q~Zklk0`(UuD#-Sn+Pp5p*n{85_)HX@G+C#CTDmPA`3U zx_qzvjX5h(3^{8?_rUP|M0ep@Y#fL3~? z^SCaxGQZ0WcXWR_#U#7|AGpW-dp%gn@pQ&%taYA!#(A-_i+WH4V-yrb$i&0PCPi)`^4fWoKmqI<#7h?=|_NZyjv5l z=j806MUoUZ5kSrojOK9A?Rg6>zSz~NniV3;c1o+77{l2ONEZoRY`s@-nlE!aBqApOFf)UN0>>F}e*a8VIs|%pN}@p-Fa~kg zVGmaN2VMQ;EYDt*9^npkWS3O0;Ez#-@yO#JcqdRj>q600pj1C^j|uQQ$KEUYA~vQf ztO6Y^NNk$od=qQieQP7-bUtys#J&(R^noHt_YG?MMaxwT7`oEA*H%hiV>s&dvf73- zjmi{M#!F~MMBsD|%^^(K+h9X8)$;4(N6;3{LVkfCAqfPFG=P)RO_{SMg=@j`JNo_Q zeRKPs`R~=E-^ueI$fS<>U?}Mte)vSL)76Ci_QR>qk`m&RGXux`#vZNn6^f+%#HW|@ z_g9Vf=Q9PJRo(!2pQamfVS4Wo?}f}Qv`pPtk=I8T--m7@?uo~13&*X$-ljB?fyJYP zd1q{E?M`5j2Te`DAgM~8*v~7RxJIrPe@H@9Z1|yX%$ilpc$qz?#S>K_ba8MJA*W@6Pwq$sf;J5Pm6E?b|NvxJn6t^^gc1cQ2ZXlFLwn|E=WL^?x) z9Zn!MDhk2O{2CNt;Nz!hWA1&9mMb z3>Z{;4svPxH0P6)5!b|l?$Lb|Lqjd0&zs7S!1ore_uHKvnD-W%8O#?#1jRIkcWX(! z6qs0*Ge|%ayLnZ};|K=1&~-oU+bh8ebS3r~bss3ZE5Vi-@_R-?V7|Jc;yN(WZEt2^ z*!UzctCbS0kt3mZtX}Wc6CXgsE#!gC{O%jAI|S`M=qkqB+T4>|CS`3;7b#~!!8jCd z8TAo99?oC?qbA2(^dnOUD+~=eQxkOCfX`3tHgc0Y+Z`O7Iv+myZBJ2bRnXHDG-auf zq1qK1F6M`Pu1_*}5-0eQNNg%9wYA^A8%z$Q?`|QpxWMD@u>gve5dRM<2=$SFZggh2HWywcto*+MB>tM zz19t=^*emFvavZ|;cI4o+}r@j*Q|i91x3_9_$pP37s&Wm;3I$qWT+IRQ}X;U7@yhc zD7`5XR1)H|vLcoWGyyaNU#T#~Cve0pxXF9hjZBLv=s~n{DrnDU?7sm!qJL2W;xR?p zE@7ueBb*F%M253hnN+^o)RJZZ8=w!+u+7OMvDp%&-@3`LKSLjps!5|kcvcMni6nKt z8I=eX`dgS-mSFAt9NoPS7@x)fY;oaem}nuOa>PbmqiLgpv1!|MtWRiS6ut4;=`vT* zLH)MI*I3~ps6$-gG0{fHA>H_Zk>1qWTa(FDr7LB6H&_$})27A_$|Z)1YbHp?|(H}L{zxN9Y2dPdS8`~waO(> zd&QEcBbF4DA5tp%8nf3M6S09PRrd%mj6$Xhs29_2m&yD3LlSF&3Et{rB&dLOC3rd| z{I*1I>1r%vbVY@cq&RRmV}ie!F?qr^1uSLHOVINACOa=J4I8XBk|c%L zkv-(#NeTeyO8}TnFwmFY$c6c`Pgyus@J#zYs2y?@Fs(jEA@&WjTE+PTPs<><2^oVS ziSDAL1`Iims#77|ws9Zw1?DToo-iw<4Gue9&I6DNP4@WX4;qV3wGAmGjq zEmJuD`~z@K$bVcir<1_IWx%>vZ_rTM07xK+ZqT00>uh-25I>J1SXzWsO5S>;fGvqh zT#_Gs%LLVWzHYm-8$YP|f!EZO^_&U=Ej~9c!YlT5O$mQ52{C@U zZCaxda`e~FB^KuH$=}E+yaTb&i~{50_A}@wqC!<9b|^SuwP*Iy-z8+J#J124=h$h& z9>pHMdBX38UGPGbXtmnzcToRyc800SJIqlm_Cwsoc$=Fyzw=P#C8X<}!LUMlk@x{h z&0{;YK4Lc&y1)loK6Bov-M8ZSLqr-t}^fyxd%DIBS{*XMLk8 zC6Bw1;I_}N3@fYxd_cr?trNw`u?~oj11>%?6!I^Lc=0**8r>)BY8z5kqNeW<%tMr- z+50Co%ytZXAabuj>`kT$|LpLVj-hG%nqTxqT-kiI>&QREkWnU5a-=4jqC z7y)rVLpnhJU!j&i_J30DBLGN<*L^rdaucSouQ3*N8)&G=aj{>vSvV(N9`~Ek8K`p5 zy?&1^_qSr|YcIy{gJY?Gyl1=V+Yqf>|E?Q~BAcl{mhAF%3t?};-S1Xv5!13aVj1DC zCq-l?5TNMbEgO{(d9BZTu8FC;g=gaL76FZu>xMa{6iv`Mm6V1B#Lz>ft1Gykwk(oMK90@)bZ8GLjpm7~KmrTwwLeAO%gaO%KgNk4PYe_x z;S1~NFwE?qwZA7v9|9)i9NnA-IBA&8TRn}j2azf(IhLD+V~{W098I@*d7o;X2qSVK zg3*{4@B?EK$v+Wqh=lP!aejX|K{$w=4Pux4pFID+%~bzwlRZ*Fo*uA!uAqofwwNFrxnma3Dh&E6LD_nv3r{e$U8UHzNUY`WdoDpjPL;5EEh3uEXv4j7Hob>;Pc!Ar$fW2Vmg))y;uMX9)D8Y~DUuw*9)H^0 zL;bVw|ABuhLcV>r&%YR)D0jd#dgT8e+qcfFe{hbF4$BPO<{m%Bn|@bd-!%_w>pL{` z;>Op(N2C|t*gvB!Ej98gNQJdI4^#}C_6Oy-WDTj$! z4CY7l#eZq(P9XV{L=2yQw29$zbOry<@yq*{V{C0k)0sIB2SW%iUJ%C}bUMs}dbl!f zpJ-f66mBBHid(yabr+cPlKzZf%(VoHE{`?A`HbE)i9hr;AaGDz*RoGzD!7bO6I~l zUUW0@b;a6CsP|g0v?b(89ez~(f2u#z5nlh>^E_~m+Z$#!zr8T9{eB05=H z!B#eEIT|aoBC{ZS{RZzqD9HZz(XQ0&HrOck_U1S4EC4|DkC)e5Aq!*}`zy_QMiNm` zMb52!&_4?z%T{m~yUnDe^k{B+z0wdi`VZ|d!E*?2l`Pv>=O4xlTCmJQBEk`sjr_&& zO6AOZCzA{IPk8A9Mz+QOxmEvjcdZafV!4L0~>pEeJPCJin z&#PMC^f;5KNj_uqe{GFJwTwCmq6z7cjcC;=&8cVD)Y8Mk!ra3>fWzm0ec#K$jf6zX zd52OF+^6^ydmpdp@!ies@_zQqCkp}9%XbSfm;!xt_q_g1L7tVJU3_B+Y(+13^Bw=O zRdRz+DjFtgU=M?EH%!)q(V$6LD5zo?F^{A6Fp~$AScqq>%0P~gQQ~kyJ=Pz*Ua4LS zuUb>hE>U=$?~VJO=80Xd8B*8qrN~;f9bN9=C{w&W3SMV>u>Ml{Vc-A&Yh@i<>D%h< z89+12re+OwG8Pb2M%sOHO=;~fmhijR5g+;K=~pryEBt>q6xa<Wf`VBz|duSy*7va+;vEQ!5w=HHrWG*r1%zk?r+|uChOY zZ3$~?uZ-_wxC$ttA@r25elB$+y+`AAf+?gZG&i~X&Vi`(W|XHY%3 z^xObQ>tRZHtNiroEz~AhAM;D=mKp2vxJOV4KI9K}Y>wJe{>)hf-Rmw64q4HCiEm}7 zj!(^iJ-=7ejM3qs6y3~#DQ#qYQ8F?X)&PEWCmRR>x~UkQ8wMBF7sv`-w!%S_9C?B* zBTE8Hk(``Ksd{)(J_FWVjWNhe%i2SW4gMgu2G+LS!RckuHI64;erYSp5F_Tb)@HuZ zU5$Z1a4s%f)=q!cr-?Z>&uqqjqTTkW_5E4U?|VEB&2^k)Wv%WW7{Do;4*rF6k|+@# zpzRMkp2sDqKmA)ND=Tg9?~mLHB1!i~+~pNRTdSCO$)q~Eo@aMdGnF}(25qVp6=nNz zHJ;;THG3M0REy2YiEd&Ij}peVq21+?5qV_sQVw+0$BtBKH(6_+F~F-+;`Sye(Xx#* zPgweX9$(pl=wzprF6$R%zY7kd})7XHu%^rW=G`K99bQDf%%k}d8?VhZy2k(oj80Rr8zzlu&VS?gN@SPzv;4^u95brs$XYuk!QixOmGP!u(&IM9G=a z@W%8yLr`_Z3AwyK7htj0IsAZ?Vkifh%SXocEbc$ArCp5z!b6g=%Nf!oU8W{+r62jK zkV0o2I9eF}ad00(9S;)&$YuwK-v^774)+vs4^~Z#cSa72m1^I|?7g%ivbu3lMv5Rx z+-;oT)MR*?e8>de(2{0!ZYRc_JM+V%wxQAGxJB|1&GxSjK3_wGaisJ#9n07!F7|5d ztY!uU7o4lB;;!9v6ycrUZ+e(s+J+P}f1RRXV$ifsTHo+}usssZpHZ!$T;kOmF&l2L zMylRIiZ|YW%tEp>n+{>c)25r3P9_BAXNqGS0%6OU=+`19EYn-7>8=(M^@#J$i}*t)wa^|yYEq~?A%x;SS~m6 zC$tr3JM$ZF2$LQ6#4HAF0Ao#9^8s~W2uU$rX{gi zYYEfv<1V=ClF*^!9y`bPiaJvx8h!7KbU+9Cs&;Ac`wH*5h~Hx!uZUmzT7m0WG*d*x zu+hdPLi@$$VEg?v%Tkjc)^sQN#8HmWH!)ymV3uyI5ctLOy&`tEb7sueSt#XBGI32) z$FtV`QL@n7p3wsk$yx+Avr25t_ia>tIby0V$ys1@!=u(ouQfZfgyFqA;u!-@_}spHiLe z^*@_cYWFIseEx2}*X-?yhK(H@01(t_sHmTJk0a&({oSN4BFY(UAO@?bXu@{AI_;Nq z0HYxJLArpXoECNqo=iQ`7zINctN;dq^=Rb5xfLZFS@gq$?Lw8lw0xR?xAE6mj`pDR z`7fqa64RVEKSqx5!QY=WaT!#v&awE>#EO6UrAoQ_r^8MsSPiWE)3_sjt~MbJ=fS38 zUEM_{2jT){Bpc%+WN`@-@|ecSQFj3zdP#b4s>zVSWs!~%_?H6fjNdK>6xCtpjl|a# z*YEV_&P$yib)R=MYGF6;ms}sSIfv#S*;L2lVCoWbDMIK%D$s(3Ii^LGcwBoJXcI># z^>^m_^C3{_zm}}qbj&TbRR9mg_ff?$9dOdm?u z%KemtPPtS$US51zXVap(^DwabcNvL~2gZB#{c#=76XwLL_lrWR<&8GgoP{Gblo+MQw z+z+P`!@@i&idF+3&EwBkO?nb&@+y0!vWQ1(V=F~x7lO>D^Mui&j?Td5Dkdp@kyhW- zUe0M)Kxfo3{UzaH6K8e&$j=)cWYtX@7asDyjS9ivB9$xAvtT3tqvP0Y?VWKaEgFW`re8L4FP-aUJkw#%(xO&788{paXH2pTX~A@{3%T2!ks94N}GQtViGcdZI

m$y8w=WNBF<@R%4NJ&gHy+kG)dA}*AUBXKg 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

#5F&!|+AH;%ek{`WIF)Prr`XZ2-ECXjC%!}t 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¬hx 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 literal 0 HcmV?d00001 diff --git a/website/docs/assets/tvp_color_groups.png b/website/docs/assets/tvp_color_groups.png new file mode 100644 index 0000000000000000000000000000000000000000..558ff687c6250238244976a577b8be693609a5e5 GIT binary patch literal 9708 zcmeHtXH=8lwy0Rl!qnxRPVO$aDW0g>JzbivS@pcE+r zq4!Q`feHTa%)PT_-C6g;e7b8syeoO%ocHXr_da{?=R7;n`npfZh#wMTVPTPJg47JL zu&{xcONS62^ThkD!F|jJwx{6}6|9O8rcKPvJtyU-%2-&{i6qxA@G$p8uRvy=SXkuW z?=I|KkFWMvSX?2RYRX2wR=e4=Fq(3~@|cR05*Ye9#h0P-E7(Y+^O|vevo-g)Mi1(9T6tyC67<~i zsn1iCdpkw$^EQ;n)ZSJ}n<9F4LSFu7MaPZ*6GDKfC?(STq-7zQxN1Za(6&-iT5+V) zf2@zkhM6ho^hUZ=AVV+Vxy!7t6hIU8Ee>9wCOvx7v+A z)t!6{pAf2?h)i8*oISK}o1=4WXoem!F_1SGO?gc>Dw`y>;Z1%66u?MZ;UBn9Qf0TO z+e^wE_-g=;;FXt-Ro$z#dCYrDRqYy&FKSnL=C%9V^?1BfF!q0WNE5~tbr zfqGNo%1m}MPG^4O=#`85;92=M&@w;h+6yu!6@SeHxN-9sZheU5^0y5wT93q~T}{^6 z$YE30SAqm{8(ISCh0fz#ztgN9M%3k8e<~Yy$gLaY*lBD6&iXXJFF!4Ji0$1vAJe^O zv^KqM*yYDN=EU-M(KIoxS5@yL=g;ifB?g{p3U{XsPY&q3raYSk!*&^~HP&i-kQLKYweTUA)yY(A2M()u^I-l4 zI+J8y3)U8)3S+UxDtvN4TY)|}e&>mkegr6q4-ZxKkipy-ocXdeBJmT2c>b0eIFGyX z^4KAK%;jiS3jVBk)xr8j$FMh7H&^v#wbQl*a|>UExkc%y+`pCugGhD{L~EaU+=qGR zw~Ilt`Ic4`1FHWDl0~}s6hCg7CmU>6nSR0?Q#$q6FyqXSkfHd~opuJu#6Wz5Stspe zV}NIl7vA5U^%^l@sRDT(F1ZO>|Cb%L!{R#rxQ&!=V0?^;; z@JQ$$s}M#8{T8+k2uW4R?;JWQC>cy9YC-S1x6T@kEKyas6ateVoDqS-)$YTBfW5hO-r*Gw6%aptFvb z!9oLHpUlnZ;X2D7^>OTd^k_dses4vb{VIND^`m?x+%CN8V9ulc!qE~)xxwr+w}cAX zDlVE^&kfp}EHhiSF4_?g>uL~m=*Ht)ieKFix@`$q%XFHv^qF5xq_TK#kO)sVsem8g z92QVcj^#huMyf!k=_DwEsiYF9#YNX5#Jrc?Ie#W3ja-~o23hh7VY~g9+*19q{BV$0 zhf;7*==?7$9}2P^Dw6-~#SB1fqbEbo}5)-hc)P873RJ^l5OP(p9+g(6UP1iRyl%Z^;0OP{Tca z4K&840ShBDtkf(i^DRD=^nakJc@z451R^W|eLB^aG)8|(L`^f~*Pq8mQ{}OsASEGT zMBorbB|2|~qJC$0{+;z^@sYr zC8bDCayA=BmpmtED^|Gum7XHHZgkRK%x$54-bvOPdYWcEZetjZvb`5YBtWkXHii=B zcr5qCTcsyCLH}^(#rX>!t1J=v$|upLhgdYcJnSXTT#{_RJ{nZ``7UfBU|)WL?r7|4 zS#r6ls=GC^Kz|ac!f+b3eb$^yY47LJcA9Qo@>wXoy@sLz$@EvZ(pZwtpzCGUz1-XD zA`hkkZEcc7jLrs;2_FcQo`O|T@Z`h(4{`6|F85O$IA?s7<2gU4UKR}d9=WrzAAc?- zN}wd$J5t`LNB{#7Z&lyPA4eLr8}cu-CNy zRxxR&uP+K_oguwthp5pX)Jl>;cn8eu5pqUCt4Sm35aLlUV#So0b~(*TVo3;Mji`F+ zSHjEF>1IB)J!tpCl0d9-t%grfnsCpSPz{i|^`ufuTTz=?x}UDIajGMpa|%bps9^Ry z4`3NPaDuSJbN*?B;04fW821qT#P7%ITpS4=h%mm& z(Ynz++gd8NwW>Q_`4>lmOm_Ms3M{UQf-FZ%P5i>{v{d=%JdK{84Vw)B30KzFZ>WK^ z-{A>qX8i1){>W&a)>e@v3TBy=h27+0CG)q2pmMTzUaX6MJ3mj!dfj@sC3**|0NOfg;)vX5BqHW8rw&f}AWZDj`s zBdUq!hv2WsWt)4$^X$QhSMG zq9rrlW~e5Ss(Bv|OI`V63K5h6qMY#$$7kw;>$^ltp%PjKpzot~uz&H`s!vO7aN&AQ z>c(67-FYDW3KujlsIHT)vcm!eKX}UwEs5eu3IN|;PIX+9$%08G5cG3Z>X_Z%=$WX! zm82=@{ws1&eV*=WU|f`Ms-V|_y+1#uQZ=geAY89CWRS=I+?I3C`P21O$IXP(1HW;c z3=VU!M+ds0vbTX5f?d~{LTRBqU>tyD@M6z4r=RRClW=6gz>&*gz{=L=3ya2u@*I(j_YF3oN`umnb7c@|76 z(SCAQF8Mo&^FUTnpW^E)HF_kzF+So};68aOHNR4OU&rty^zmL3n|QL$Hyr9`i0~Z^ z&TyfD-6)b?$ibrWg4H(yg0GD;xc0&w*Q>&4&!yO+B&?bzf)IdS)EXMK;M4ME_vjSv zboN7)!XZ89@gr=9ozM#kXWTh)RfbdJE6U{bR{T0u4ey?XtllCDkaRV!0(+X#1E1@= zlKD@OYz;mZ;2BxFXLw;A-2;~Vid4mmkPHz%(M$mUO9SBj^kB{Cej;VfNv`OSU;Qif zXH$7(oZ;nc4yE$n-m0&i!#b|Jo#Oh!s=8x{#3Iykpl81?Q>akKA{_v^Ou^ml7CpY~5}ut~+(>LxS-Frv?U`5M?MjRG(2u|3oJN*f+oNL{AUY z=-N_Z+vE4sLK90Zy%dducC|?AXiUuh4O4wQp|_--8kgN;3rk9m@{&=${EPu-&u|cS z4$Zr4Py-BH;|sY1X-_1O&8KIx^QWot1hwf3@D^Wt->L9I!*zFR|RC9R=dt&XoEPpzd zmj)j{UsHR0w2oga$W~alBaH$6oV$#+F0^{NB&+@({lBE^4}KlLH2IJyiqX4388gSx z3KrLF4H8SVPT4}>PhK4Sy-}+^=Oll=3svv&uds;Ms%pL?J%Pn@7=#;>2ak&@rJ7nD zL8K8Er$3)K5bZM{8kXz17ZaO=@3dqnDgfi7g;}u>V=%FsXZn1W9$p?^ijWCUMHw4y zdwX>*Jric>0H`qVLIz>kPi=Oj!fdx2D>olwI}F$zjpIy(bZ)xddI1~ z>~>J7d%}9CV^5}*C5U3?(nE!)IK3i<#L)kA!esvZ96sCRS=4gSMZ#>){kf~7ucu?@ zPmM$DEov_6IiP|;+>umpa(kDXlI~plHS=mUf=%#x$|h!e=o_q{vS|rl%IW6qt-RVx zgEd&uY*8t)`5YMw)i^!Qy`A&$*_~N+9Ld_ea zr<Z8)(N(xMjjdv7p6cs`lq$sAAaTciT|_b4# zbYMnTfah0kTHOUb8GCZ0B4k#B=$KV{>AU_3J}^cC(X`Cr<#Y#JwVoUeI+kTC9R27W zPqbl(iqo=BLx*0_5RyUamTRh+EIWGZF`%$9=r&LabAk}&Yyu?u(1JPpNLDEnuYXv+ z>cpclVbrOI7nC*nT`|eN84B$kr;Dn4mF>+qZ!-O4T31QB>?dY!aB7^ZAVmkp#N02O zDWAyJHC~PhS~Uz=dY?|*D2QTG+ipx$TVh3wc2G&w4vEz2;d$+-!ZH1ND22kS+@PDL zj;U})R3AKnRZ$m`RzM6{k{Vj^8B!yE@ug6mZclhONfTEn9j!STFIEsPB^ZZ2-?OF4 z{d$@{DWl>}{!pgWXeBVop#RWfF&=#f=6A~jB{CKtkl+j$x3Jsp=WnCn-^irq^hfJX zZ0`9wg|xDXzw}EimGia4Y@#T8=bFG}4WFr_)jh?atJ!A3le6NdAGcOt1v!Uq$8k}x zbciYJZFAwjYCG)l=0fVPjpZ`ZU?3) z+B2#KlB+TAOVdlL3nQxa`>ddFPwYGvZFP)tIa=aC=%*Mlp_o#p=TRh4G<8gB=0~*Y z#>jEgapEy(y^BehLV6(H!szAje&9MRw6B$o?}7#P{zAUu?CS{&?Cl3$8=MtQk`3JL zdoiVQ8Q1Jl0sAeZiai9}DW{9^m>6n@j4GhA_=u_cGJgy!Trz{4At?qg%o47mlO8ni z=I4yNBx)h>4!j9K#8URjZnO^O?-Z(Z^WXy^(Zb^@7d>3sa|08l^O$q{F6^pEH~UEL z@Ygf<{u+my{jDwqkY5$)$^!qJ$N>bNn$`AXxhtPg9z_{7Z^dgeQ0Rz^E1ZW! z1l?XOc=J|7eS#x7vXTmz*nw|vQ;{)Q$~045X6sF!PC{aKZTEtR!*j33tjRj!5co1;mp8ym zQgU)TcW)b?Y3DD6-9s$|b>t>Zo1b>|^??Sb?=TiQi`>R`gZsR>M-YZ@Xogt_{=SVA zDvl+(6XXQ(bAD>QXzc#bM>v5;4*m^ozsc`YIcEIR1F7-|Pjuc7HE(6?I#p5Ld+@;9 zhbxrDZNT1YDJ%?pPY6gzc&miprOaSKNHqKT!99F7-jnDCo8AQGKml|wez&C3NjaQu z`1N{@`274mXE*;UgWJU~Mj(xXVv$R$0MHWdWxe{CiShYfn)5s z&%?*>t69au1R*4;4KL(4vyxPJfpQv_)A)w`F=m*UL@{&FOks^RBHz6X^lGyZZ|^TB zwX=BI-CU|h9@m_a8kljbx(Gl9zQBW!RBGciuv+PESpq=8<-qrX%XESsg0z6z&3?lH?OmM4ljIL^ zE`yx{tPDPkEOqHIer{aLCC1=3bN(&Hy%$Zq5n_8D%KC=s?drB)W6AFPZw(2tZn{u( zoin=al>RxNMe91xTT{g7RD9_Q`F{Zz}YCIp_zrk%25=5e zY&`yVwh&Vwy~Q&rRhpklA-JI4Ss0=a#Lx@?ZpLDOs1DJ8flT}_vyT6*2mS*QvTB_k z&Qdu_T5w7#m6J4)VDEV+0!sNL)O#d5ZlYu~$fL^s7y0X_d_b{- zjcB`W&H9aFkN&UB1$r^Dq;md9Q;4C^<+X*F3&CdU-5WWNjkAnm6>ihxW|S`r;C8Dg^%TEVoHvT%6M% zL5-dwLrzHSptdW@G~fND51+HwGw{s=v97s|2IiUF9;1(eoN~7Sn3aF=!brBP)U$>S z5=eYJ7j>~hMrcU9=9fQahMmgh@iLiVs&>@z&4R0V)E(%iviw>dqg;6Fu?MK#8>I zJ%*I^KL;hlDM`ZKab@dV#=(hazc4(@VX8rDb*CiwB*#|=Egje2hb0tVZR*r8cO6sI z)g2-5RQyg8;VG|WG<#}7|73vTS8drUx`v2HCs=WQ-bs`6mZr_w$C0M(#@7TZJnPq8 zk&%9#q-muAcAm9`TtGi2D3g3?g^#aqm&1e8VehMlQ|UGYAcbbI6z!$)Zd3k-EK28y zhzw8oI^$FcWUofM9S4F3)o3#svWWNuhBLYP6hDaKQQdtYmT64_ zp;cf#8zyc5^hl%!%-xwNzE7LQ?jw)T4{M~>H`%w2Hp|SjgM#YXMeTBR?juu|!;@Sz zjtYsaUyHII~J$Cc78OtJ!OEkO9y@VO@|4UC=mZUJ=#&-yQnI7co$5-&(2o- zZ&d!z2prP~t9`^|$hD8gi!XWaG! z0wuoM&TSkgiXptVe(?!^!cZ~3`aI()GKf<+t~4?wSJpY{V*X3RC%8Wzz6nDaROn=} z8o9afA;OOPJoLPQZ>Hngbb`7!CKZ43L3Pzx{WssSb=IKB^FIOmO#&70u5#;+KiQ8V zUCi?S5*$EGoAB|>X0-_$P*PtDeWXG~V^Ud#|1rG2GMq*3>ER;J%ZG|Ymi6#~)AGA) zOjagp`(oEM5;6Et0<6Ea^Z#1P3}pD^v#wGKoJh_i_{oyvkm z{t@c{vWW_Xc?DfeV57-*4@XlKZqI!$OL0zpe#}_|3B#!stZ#42UOl&YW#-)eWgeSX zq8k@dxM=>U!t9}5uTmROJfh1r(K=P%ZTLnABAEz~hk!gX6@%Ja_S>(n<;$~WeJ)9N znzt(k?ZJPs&Wv3L9nvtg@Xb=Kn~Q|z@Iy8B6t8cS-61+7bB$-$m+QvnH^xTEa3gCg zBbmvKT383|bK1-KYRj@4;_fsy54GQiDLk-;nWFaKt1k4%UKg464_6l*`+-wgYW7>1 zlCJ5q^{y~kzoP>B_bev73xQX=3?ZMGXY3T~_+XF;?heADO{og|ADR2`JZ_4K$Rd4k zr;_?YW@naeiq|`v1$M|P;zNSeOGd>{aT3O7Tx{;AMFbhNdQ_P!)}wQx_Lc#)70=6> zZcbx?Vmwrt=6_^S;Gm!A>1w;Z2@`AYTBp&9LD!KiY4`6DWLD-$^jlOITBtYBElOLH zy>+2*^%-x4JuBiP=lFxxcpqmwk+moR+7}^NF}6<8a6!?KR@0n1C22^Z#2?dl+h!6G zI#g!f<+d8orDMm+HhNcRtK{XtBn9w!0wbH*uj%QGpt4#4xrkOT`I*g~GIX3k#!jF! zn}ecAnewj(G&fz^R|S6 zZx@|}#lmr%(tFn~wNw0+J0=ed>g0-GoN*B;NVP_ay{ZZQe51QV5V9rE$+UrkZ}n_; z%`{F?08G1NGnhZLh${wH@?=_XfIz(*4HZZ0t5Xysc3fHa7NS<;(y}hE*M<0i(VDDl zjNaE_%N&W~3{r~&0+n8)a>qJQ%_u!et}k2>{!I(vXVVm?(#Q`Fw{TKr`ql+O-;3@u zfYtlh>dq*VvGK|tGmw@rNiEK}R-WdvvnU46)p~7?U$z0wSTJpD=TOYsS12R!FvFCM zgDg6jw8Gf*%6y~Ksk`6CCZ3AK)tW@!{T_%A=kjv9vaQT2U{|v7?ZsvNg0`~1SV-@M~VgH~a|gjiI*v)Eket zXSviP%gL1|h^oUJ>i;G)h>G9|d=tMIz6ZIbpt)raTw7Kx!~8=FOH*A}twP1--Twfp C36Sjo literal 0 HcmV?d00001 diff --git a/website/docs/assets/tvp_color_groups2.png b/website/docs/assets/tvp_color_groups2.png new file mode 100644 index 0000000000000000000000000000000000000000..7ab6775769f56d9b3fec87ada55e5606fbe9d424 GIT binary patch literal 6159 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 P_zZ@6rn;rtx1;_G_A^MV literal 0 HcmV?d00001 diff --git a/website/docs/assets/tvp_create_layer.png b/website/docs/assets/tvp_create_layer.png new file mode 100644 index 0000000000000000000000000000000000000000..9d243da17a099cae576552193711c2898e76f8e9 GIT binary patch literal 29058 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%0AgJ@avv%naDh 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

wQ2?@n}8j}HS`wZ$&*gXM)Ny70r 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 z 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νud5p14(z8)y? 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

n~(U?F0Qp3bGLf|-un*nKI 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 Vs_843<8x}>y{r}0e}N#d@c#uFZ%+UK literal 0 HcmV?d00001 diff --git a/website/docs/assets/tvp_openpype_menu.png b/website/docs/assets/tvp_openpype_menu.png new file mode 100644 index 0000000000000000000000000000000000000000..cb5c2d4aac02c9187d38420947c3dad25cc1eaa6 GIT binary patch literal 3565 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ΜdRthcI%Jgf}%x5NHEtv;k^Aby4zi}pSE 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 z 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 bAOABdr+)u>?2Y6C1|aZs^>bP0l+XkKh|s1q literal 0 HcmV?d00001 diff --git a/website/docs/assets/tvp_permission2.png b/website/docs/assets/tvp_permission2.png new file mode 100644 index 0000000000000000000000000000000000000000..827e85db391aa33ceb3115966023d0ea5dbec1fd GIT binary patch literal 27604 zcmb@tbx@ma@HX1wUJ~3PXp6f;fe@TRp}1S2xI2^v3GVJ%Xz}9i?(XjHE+6mj`)1CZ zne)#%b25`;pUgb>JUiKY@7-&!D_BWU3KNYO?cKX~m@?AfukYTy&v~;)P>|j}y=0Ld z-oD;Dew7k`S2{wv|8{}!T}(mj-MflN^e02aw`){8X-&s>@31=md%y3sEi`%e&eB2# zET-zFcifEZhAXvF*0@`LyR^G-b=mk$7zi;cZ%3kOs(x&OOzKYSzP)Up8!bJ25Uc#!4cG|7 zPJRW${xg=*Z~)LZqXCZ&g!E=OG0KB6-i$r9BpBhFF;5 zR(XyDGM!EqQWfJ`a;uR{7ebri{oLm2u=yidp z@R+-&#ddxzx>3LSia7dwGU|4C&1*+}LpNnoLiF-DiQEl$S7PoM?YpGMXXTJ4iW8DQ zcq5))gCz4x*@S@pB=X%rTaN%E1)oW$oOGA9pv{aL9lGO5Sas&1#dg%$;&xpxx>>&} z64d&1ZAuy`3q2R>wV2xIOWTJ@_aTfPQ*$p>C}QO|;Zi>^2bH(a^N&i1jmD#j`;e(I zX#}2~F>c|kdF?&;49#)XmD`A{JgH=nJ)P9H_KuV+Qq?ThyI^yT!dHk>{pt9g`9V@9 znXB)CQm8zGDC{@1Jqrp3{p#KHpq!qL7rPX(#(==PoGgb{;Lv|AP>s=}9$Vco5l(I={t3M=AR#gu?NEyhAi^CVA0U|8p zPhk>1PLxIKO(O&hN8~KQJv~p?R@}_xBfE~>8qzJ6iM5vXKv%)cR{n$5f!#ZPy^jp( zf00EpvBqc1jOIIZl^D6s9x==Ltq>-Js}Tn;%L~`-c@4%$^mF+0fmjU+zsVdjKX_E~ zn3FdXFG_vrOx{!FYG}H3iURi0Ansj{$XBVoask|zJ}t?FfnW8W%N?faxC*aKG{zM` zm7f4LMraWfb3ta|qfPFbLs zej2e^=g*H527{SAKEHYl+6t@}*$fA88B}F$>ZL(qr!C$9j}y`%6YP2J)!d6*Py

SYu&E`AI!F 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≶r^!NOgEuE_A(J!E`q@~7jZmW*FWvm*HCen0+wWb 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 z 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

@lTF+Ve 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 diff --git a/website/docs/assets/nukestudio_tagsToClips_basic.png b/website/docs/assets/nukestudio_tagsToClips_basic.png deleted file mode 100644 index fadb85342b625a0ab07a26f7b882b5574757e759..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 180993 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�g9WV{6cY6mNEfzmU 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 k%iYb>>r`I)NuZtWAz*UI9bpeTk~ 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