+ ¿þÆjÀ ãóZ€^RItRtRt]R8Xd]!]P!44R#R#)éNcó¤€\4p\4p\P!V4EFewr4pVFÙpV\V4^,Rp\PP Wv4pVP RR4pVPR4'dKbVPR4'dK{RV9dK„VPR4'dK�RV9dK¦VPR 4'dK¿R V9dKÈVPV4KÛ VFyp V\V4^,Rp\PP Wy4p V P RR4R,p V PR 4R 8XgKhVPV 4K{ EKh \V4p V PR R 7\V4p V PR R 7W¼3#)zƒIterates through the root_path, creating a list for each file and directory. Excludes any file paths ending with channel-prefs.js. NÚ\Ú/zchannel-prefs.jszupdate-settings.iniz/ChannelPrefs.framework/zChannelPrefs.framework/z/UpdateSettings.framework/zUpdateSettings.framework/z distribution/T)Úreverseéÿÿÿÿ) ÚsetÚosÚwalkÚlenÚpathÚjoinÚreplaceÚendswithÚ startswithÚaddÚfindÚlistÚsort) Ú root_pathÚrel_file_path_setÚrel_dir_path_setÚrootÚdirsÚfilesÚ file_nameÚparent_dir_rel_pathÚ rel_path_fileÚdir_nameÚ rel_path_dirÚrel_file_path_listÚrel_dir_path_lists & Úd/jenkins/jobs/oi-userland/workspace/components/web/firefox/firefox-158.0/config/createprecomplete.pyÚget_build_entriesr# s“€ô›ÐÜ“uÐÜŸWšW Y×/ш�EÛˆIØ"&¤s¨9£~¸Õ'9Ð';Ð"<Ð ÜŸG™GŸL™LÐ)<ÓHˆMØ)×1Ñ1°$¸Ó<ˆMà×&Ñ&Ð'9×:Ô:Ø ×)Ñ)Ð*?×@Ô@Ø-°Ö>Ø ×+Ñ+Ð,E×FÔFØ/°=Ö@Ø ×+Ñ+Ð,G×HÔHØ" mÖ3à!×%Ñ% mÖ4ñóˆHØ"&¤s¨9£~¸Õ'9Ð';Ð"<Ð ÜŸ7™7Ÿ<™<Ð(;ÓFˆLØ'×/Ñ/°°cÓ:¸SÕ@ˆLØ× Ñ  Ó1°RÖ7Ø ×$Ñ$ \Ö2ô ñ!0ô.Ð/Ó0ÐØ×Ñ DÐÔ)ÜÐ-Ó.ÐØ×Ñ 4ÐÔ(à Ð 0Ð0ócó€Rp\PPV4R8Xd@\PP\PP VR44pRp\PP W4p\ VRRR7p\ V4wrEVF"pVPRV,R ,4K$ VF"pVPR V,R ,4K$ VP4R #) z¼Creates the precomplete file containing the remove and rmdir application update instructions. The given directory is used for the location to enumerate and to create the precomplete file. Ú precompleteÚ Resourcesz../../zContents/Resources/precompleteÚwÚ )ÚmodeÚnewlinezremove "z" zrmdir "N) r r ÚbasenameÚabspathr Úopenr#ÚwriteÚclose)rÚrel_path_precompleteÚprecomplete_file_pathÚprecomplete_filer r!Ú rel_file_pathÚ rel_dir_paths& r"Úgenerate_precompleter61sÏ€ð )Ðä ‡w�w×ј Ó" kÔ1Ü—G‘G—O‘O¤B§G¡G§L¡L°¸HÓ$EÓFˆ Ø?ÐäŸG™GŸL™L¨ÓIÐôÐ1¸ÀTÔJÐÜ,=¸iÓ,HÑ)ÐÛ+ˆ Ø×јz¨MÕ9¸EÕAÖBñ,ó*ˆ Ø×јy¨<Õ7¸%Õ?Ö@ñ*ð×ÑÖr$Ú__main__)r r#r6Ú__name__Úgetcwd©r$r"Úr;s2ðó ò"1òJð2 ˆzÔÙ˜Ÿš›Ö%ñr$