§ WèÄj‘) ã # ó8 — d Z ddlZddlZddlZddlZddlmZ ddlmZ ddl m Z mZmZm Z mZmZmZ ddlmZ ddlmZ ej d¦ « Zd Zd Zdez dz ez d z ez dz Zdez dz Zdez dz Zdez ez ez dz Z ej dez dz ez dz ej ¦ « ZdZ de!de"fd„Z#de!de"fd„Z$de!de!fd„Z% e d ee!d „ d!¬"¦ « ed#¦ « e ee! e d$¦ « ¦ « d¦ « d% ee!d&„ d'¬"¦ « ed(¦ « ee!d)„ d*¬"¦ « ed+¦ « e ee%¦ « e ed,¬"¦ « ¦ « ed-¦ « ee! e e d.¬"¦ « ¦ « ed/¦ « ee!e$d0¬"¦ « ed1¦ « ee&d2„ d3¬"¦ « ed4¦ « ee&d5„ d6¬"¦ « ed7¦ « ee&d8„ d9¬"¦ « ed:¦ « ee&d;„ d<¬"¦ « ed=¦ « ee&d>„ d?¬"¦ « ed@¦ « ee"d¦ « edA¦ « ee"d¦ « edB¦ « ee"d¦ « i¦ « Z' e d ee!dC„ dD¬"¦ « ed#¦ « e ee! e d$¦ « ¦ « d¦ « ed(¦ « ee!dE„ d*¬"¦ « ed+¦ « e ee%¦ « e ed,¬"¦ « ¦ « ed/¦ « ee!e$d0¬"¦ « ed1¦ « ee&dF„ d3¬"¦ « ed4¦ « ee&dG„ d6¬"¦ « ed7¦ « ee&dH„ d9¬"¦ « i¦ « Z( e i edI¦ « ee!d¦ « “ ed#¦ « e ee! e d$¦ « ¦ « d¦ « “d ee!dJ„ d!¬"¦ « “ edK¦ « e ee!dL„ dM¬"¦ « d¦ « “ edN¦ « e"“ edO¦ « e"“ edP¦ « ee!d¦ « “ edQ¦ « ee!d¦ « “ edR¦ « e"“ edS¦ « e"“ edT¦ « ee!d¦ « “ edU¦ « ee!d¦ « “ edV¦ « e!“ edW¦ « e!“ edX¦ « e!“ edY¦ « e"“ edZ¦ « ee!d¦ « “ ed[¦ « ee!d¦ « ed\¦ « ee!d¦ « ed]¦ « ee!d¦ « ed^¦ « ee!d¦ « ed_¦ « ee!d¦ « ed`¦ « e! eda¦ « e! edb¦ « e!i¥¦ « Z)dce*dde defde„Z+dce*defdf„Z,dce*defdg„Z-dce*defdh„Z.dS )izE This module contains functions for performing necessary validations é N)Ú Namespace)Úurlparse)ÚSchemaÚAndÚOptionalÚRegexÚSchemaErrorÚUseÚOr)Úsafe_id_pattern©Úread_sys_idÚvalidationsu ¡-ï¿¿zI(?:25[0-5]|2[0-4]\d|[0-1]?\d?\d)(?:\.(?:25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}z[a-zz0-9](?:[a-zz0-9-]{0,61}[a-zz0-9])?z(?:\.(?!-)[a-zz0-9-]{1,63}(?