U nĆfLć@sDdZddlZdZeedœdd„Zeedœdd„Zeed œd d „ZdS) zMAlias generators for converting between different capitalization conventions.éN)Ś to_pascalŚto_camelŚto_snake)ŚsnakeŚreturncCs| ”}t ddd„|”S)zConvert a snake_case string to PascalCase. Args: snake: The string to convert. Returns: The PascalCase string. z([0-9A-Za-z])_(?=[0-9A-Z])cSs | d”S©Né©Śgroup©Śm©r śG/opt/hc_python/lib/python3.8/site-packages/pydantic/alias_generators.pyŚózto_pascal..)ŚtitleŚreŚsub©rŚcamelr r rr s rcCs6t d|”rt d|”s|St|ƒ}t ddd„|”S)z•Convert a snake_case string to camelCase. Args: snake: The string to convert. Returns: The converted camelCase string. z^[a-z]+[A-Za-z0-9]*$z\d[a-z]z (^_*[A-Z])cSs| d” ”Sr)r Ślowerr r r rr(rzto_camel..)rŚmatchŚsearchrrrr r rrs r)rrcCs\t ddd„|”}t ddd„|”}t ddd„|”}t dd d„|”}| d d ”}| ”S) z“Convert a PascalCase, camelCase, or kebab-case string to snake_case. Args: camel: The string to convert. Returns: The converted string in snake_case. z([A-Z]+)([A-Z][a-z])cSs| d”›d| d”›S©NrŚ_ér r r r rr5rzto_snake..z([a-z])([A-Z])cSs| d”›d| d”›Srr r r r rr7rz([0-9])([A-Z])cSs| d”›d| d”›Srr r r r rr9rz([a-z])([0-9])cSs| d”›d| d”›Srr r r r rr;rś-r)rrŚreplacer)rrr r rr+s  r)Ś__doc__rŚ__all__Śstrrrrr r r rŚs