L i ddlZddlZdZgdgdgdgZgdgdgdgZd Zd Zd Zd Zd Z dZ dZ dZ dZ dZdZdZdZdZdZdZdZdZdZdZdZdZdZd Zd!Zd"Zd#Zd$Z d%Z!d&Z"d'Z#d(Z$d)Z%d*Z&d+Z'd,Z(d-Z)d.Z*y)/Nz2.1.0)g?W[ @gF_gEGr߿)gS:gc]F?gsh|??)g?ܵ?g&1ʿgx?)g7d?g,C?gv?)gz6?g,C?g]m{?)gN@aÓ?g2%䃾?g"~j?g'@j??gyuk?g4R?g('UH?玬2#?fffff:@c*tt|||gSN) lch_to_rgb husl_to_lchhsls [/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/seaborn/external/husl.py husl_to_rgbrs {Aq!9- ..c.tt|||Sr) rgb_to_hexrr s r husl_to_hexr#s k!Q* ++rc.tt|||Sr) lch_to_husl rgb_to_lchrgbs r rgb_to_huslr's z!Q* ++rc$tt|Sr)r hex_to_rgbhexs r hex_to_huslr +s  3 ((rc*tt|||gSr)r huslp_to_lchr s r huslp_to_rgbr#/s |Q1I. //rc.tt|||Sr)rr#r s r huslp_to_hexr%3s l1a+ ,,rc.tt|||Sr) lch_to_huslprrs r rgb_to_huslpr(7s  1a+ ,,rc$tt|Sr)r(rrs r hex_to_huslpr*;s C ))rc Bttt|||gSr) xyz_to_rgb luv_to_xyz lch_to_luv)r cr s rrr? jQ1I!67 88rc Bttt|||gSr) luv_to_lch xyz_to_luv rgb_to_xyzrs rrrCr0rctj|}tj|}tj|}tj|dzddz }|dkDr|n|dz }t d}t D]u}|d} |d} |d } d | zd | zzd | zz|z} d | zd| zz } d| zd| zz }| |z||zz|z}dD]'}|| d |zz z|d|z|zzz }|dkDs ||ks&|})w|S)N@@7Arrinfrg~k ?gj?gHP?g`TR'?g?gl[ ?g7?rr=)mathradianssincospowfloatm)LHhradsinHcosHsub1sub2resultrowm1m2m3toprbottomlbottombottomtCs r max_chromarWGs/ <<?D HHTND HHTND HHQVS !I -D(?4UD 5\F  V V V" w|+gl:dBR<'B,.R<'B,.D.7T>1T9 AcGaK'(FWt^a5G,GHA3w1v:   Mrctj|ddtj|dzzd|zzdzdz }d}||kDr|nd|zd z }td }d}tD]}d D]}|\}} } d | z|zd | z|zzd |zz } d|z|zd| z|zz } tj| | } |dk(r| tj z } t |tj| }||ks|}| }|S)Nr7gH@g@g@g@r8rg$@g@r9r<g`wgrBrCrDatan2pirWdegrees)rElhsrhssubchromarLrMlimitrNrOrPrQrTrGtests r_hrad_extremumrb^s& 88As dTXXa%55 5 AF Ji WC Cs#q6 1C 5\F F  ELRR"$s*[2-=-CCkTYFYYC!B&,{R/?#/EEF::c6*D|ad!34Df}   MrcVtjt|}t||Sr)r>r[rbrW)rErFs rmax_chroma_pastelrdus" ^A&'A a rcJtttj||Sr)summapoperatormul)ars r dot_productrkzs s8<<A& ''rcP|tkDrtj|dSd|zdzS)NgUUUUUU?gS%@g{a?)lab_er>rBrUs rfro~s)5yI&' L()rctj|dtkDrtj|dSd|zdz tz S)Nr7]@0@)r>rBrmlab_krns rf_invrts: xx3%C ! D E))rcN|dkrd|zSdtj|dzdz S)Ngsåi?ףp= )@gzG?g?)\(?r>rB)r/s r from_linearrys.I~qyI..67rcXd}|dkDrtj||zd|zz dS|dz S)Nrwg?ܵ?rg333333@rvrx)r/rjs r to_linearr{s6 A7{!a%C!G,c23E rc g}|D]_}t|d}|dks|dkDrtd|d|dkrd}|dkDrd}|jtt|dzd zda|S) Ng-C6gqh?zIllegal RGB value rorr:gMbP?)round Exceptionappendint)tripleretchs r rgb_preparers C4 2q\ <2;0A78 8 6B 6B 3uR#X-q1234" Jrc|jdr|dd}t|ddddz }t|ddddz }t|ddddz }|||gS) N#r:rr;r6go@) startswithr)rrrrs rrrsj ~~c!"g C!HbE!A C!HbE!A C!HbE!A q!9rcB|\}}}dtt|||gzS)Nz #%02x%02x%02x)tupler)rrrrs rrrs(IQ1 U;1ay#9: ::rc\tfdt}ttt|S)Nct|Srrk)rMrs rzxyz_to_rgb..s+c62r)rgrDlistry)rxyzs` rr,r,s" 2A 6C K% &&rcnttt|ttfdtS)Nct|Srr)rMrgbls rrzrgb_to_xyz..s C 6r)rrgr{m_inv)rrs @rr4r4s' Iv& 'D 6> ??rc|\}}}||cxk(r|cxk(rdk(rgdSd|z|d|zzd|zzz }d|z|d|zzd|zzz }dt|tz zdz }|dk(rgdSd |z|tz z}d |z|tz z}|||gS) Nr=r=r=r=@.@r7"@rqrr*@)rorefYrefUrefV) rXYZvarUvarVrEUVs rr3r3sGAq!Ac !GTAX#'2 3D !GTAX#'2 3D !d( d"A Cx qD4K A qD4K A q!9rc|\}}}|dk(rgdSt|dzdz }|d|zz tz}|d|zz tz}|tz}dd|z|z|dz |z||zz z z }d|zd |z|zz ||zz d |zz } ||| gS) Nrrrrrqrr=rrrr7)rtrrr) rrErrvarYrrrrrs rr-r-sGAq!Av !d(e# $D q>D D q>D D t A sQw~4#:"5t "CDDA qD4K!O $q 1cDjAA q!9rc|\}}}tjtj|dtj|dzd}tj||}tj|}|dkrd|z}|||gS)Nr;g?r=gv@)r>rBrYr[)rrErrrVrGrFs rr2r2spGAq! $((1a.488Aq>1I ?A JJq! D TA3w AI q!9rc|\}}}tj|}tj||z}tj||z}|||gSr)r>r?rAr@)rrErVrFHradrrs rr.r.sJGAq! <<?D $! A $! A q!9rch|\}}}|dkDrdd|gS|dkrdd|gSt||}|dz |z}|||gSN6X@dr=:0yE>Y@rWrrFSrEmxrVs rr r sXGAq!:~S!}:~S!} Aq B U QA q!9rch|\}}}|dkDr|ddgS|dkr|ddgSt||}||z dz}|||gSNrr=rrrrrErVrFrrs rrrsXGAq!:~3:~3} Aq B BA q!9rcf|\}}}|dkDrdd|gS|dkrdd|gSt|}|dz |z}|||gSrrdrs rr"r" sVGAq!:~S!}:~S!} 1 B U QA q!9rcf|\}}}|dkDr|ddgS|dkr|ddgSt|}||z dz}|||gSrrrs rr'r'.sVGAq!:~3:~3} 1 B BA q!9r)+rhr> __version__rDrrefXrrefZrrrmrsrrrr r#r%r(r*rrrWrbrdrkrortryr{rrrr,r4r3r-r2r.r rr"r'rrrs     /,,)0--*99.. (**8,; ' @ (      r