文章目录

  • 1.扭曲效果功能
  • 2.作者答疑

1.扭曲效果功能

  AfterEffect(AE)插件是Adobe公司开发的特效制作软件,稳定快速的功能和特效,在视频制作领域使用非常广泛,本文向大家介绍如何在项目里进行扭曲效果功能。效果如下图所示:

源代码如下所示:

function mAsO(cmd) {if (cmd == undefined) {cmd = "l"}var strScriptName = "扭曲效果";var strScriptVersion = "2.0";var strTrialUrl = "";var privateNum = 209010;var supportEmail = "";var trialLengthDays = 7;var trialLengthLaunches = 7;var offerUpgrade = false;var paidUpgrade = false;var retrieveUrl = "";var exchangeUrl = "";var betaMode = false;var betaExpiration = new Date(2013, 3, 1);if ($.os.indexOf("Mac") != -1) {var macBase64KeyStr = "ÎúíþÈ
€8__PAGEZERO__TEXTPP__text__TEXTP%š'P€__symbol_stub__TEXTêLðê<€__stub_helper__TEXTÜMÞÜ=€__cstring__TEXTºOâº?__gcc_except_tab__TEXTœPL\rœ@__unwind_info__TEXTè]¤èM__eh_frame__TEXT^pNŒ__DATA`P__dyld__DATA`P__nl_symbol_ptr__DATA`P(__la_symbol_ptr__DATA` P-__data__DATA¼`¼P__common__DATAÀ`D8__LINKEDITp`°$`xg˜P33M+ÄeU/usr/lib/dyldí
\tƒ’g?¸¨Ä»|¥•¸$\n\nPP%48/usr/lib/libstdc++.6.dylib4
/usr/lib/libgcc_s.1.dylib4©/usr/lib/libSystem.B.dylib&`$)$`j‰åƒäðƒì‹]‰$M‰L$ƒÃÁãˉ\\$èôU‰åSWVƒì‹E£À`‹}‰=Ä`‹u‰5È`‹¹ºO
Àtë‰ÈHë€ú/tôAŠQÿ„Òuó‰Á‰\rÌ`‰óƒ;[uø¡`‹
ÀtÿС`‹
ÀtÿÐèŒ'Eì‰D$Ç$»OèsÿUìEð‰D$Ç$èOè]‹Eð
Àt‰$èZ¡`lj\\$‰t$‰|$‹E‰$è³\"‰$è`'ƒìPQèX‹ˆb:‰L$‹ˆ¦9‰L$YXÃfèX‹€‹9ÿàU‰åƒì‹E‰EðÇEô‹E‰EøMð‹Uè\\ƒÄ]ÀU‰å‹EÇ]ÃfU‰åVƒìèX‹u‰t$‰t$€äÿÿÿ‰$ÿV
ÀtÇÿÿÿÿƒÄ^]ÃfDfDU‰åSWVƒì,‰U؉MÜèX‰EàEä‰D$Ç$èK&
À
3‹Eä
ÀuÇD$Ç$è@&
À„‰ÆŠF„À
Õ‹Eà€Ú(‰$ÇD$è&
À„҉NjEàˆõ(‰L$‰<$èÿ%‰F‹Eà€)‰D$‰<$èç%‰F‹N
É„•‰Ã
Û„‹ÇEè‰MìUè‰T$‰T$‹Uà’¬ÿÿÿ‰$ÿÑ
ÀudMè‰$ÿÓ‹EèƒøÿtT
ÀuEè‰$ÿÓÆF°ë\"‹Eà€)‰D$‰<$èo%‰F
Àt$ÆF°
öt*€~u<ugÇ$èZ%
Àu‰t$Ç$è%¸ÿÿÿÿƒÄ,^_[]ËMÜ‹‰P‹Q‰P‹I‰H‹N‰‰F‰t$Ç$1öèÛ$
À¸ÿÿÿÿDÆë¾<r_‹M܃yt,‹~‰t$Ç$è¯$
Àu•‹MÜ‹1‹A‹U؉T$‰D$ë ‹~‰t$Ç$èƒ$
À
eÿÿÿ‹MÜ‹1‰4$ÿ×é[ÿÿÿ‹~‰t$Ç$èY$
À
;ÿÿÿÇ$èu$
À„'ÿÿÿ‹MÜ‹‰‹Q‰P‹I‰H‹U؉T$‰D$‹Eà€\\‰$ëžDU‰åSWVƒìÇ$èë#
À‹u‰ÇuÆEó1ÛëŠGˆEóÆG‹_‰|$Ç$èÉ#ƒ~t‹F‰$ÿ
ÿtÇ$èŸ#‰Ç
ÿtjf„‹w
ötZ9ÞtV‹‰G‰|$Ç$è|#‹~ƒÿw¸£ør¸*£øs\t‹~‰<$ÿV‰4$èy#Ç$è7#
À‰Çu¡‰Ç
ÿtŠEóˆG‰|$Ç$è!#ƒÄ^_[]ÃfD€U‰åƒìèX‹M‰MðÇEôMð‹‰5èiüÿÿƒÄ]ÃU‰å1À]ÃU‰å¸]ÃU‰åSWV‹MöÁ‹U‹u‹}‹E‹]uþØ\tÈ1ð¯Â¯E ¶Àë¯ÃøðÐE \tÈ%ÿ^_[]ÃU‰å¸]ÃU‰å¸]ÃU‰å¸]ÃU‰å1À]ÃU‰åSWVƒì‰Uð‰Î‰4$èµ!
À„ó1ÿ‰û‰|$‰4$è÷!¾‰4$ÃGè!9Çrâ‹Uð‰$è€!ƒørA‹Uð‰$èp!ƒøw1öëC1ö¿‰|$‹Uð‰$è«!¾‹Uð‰$ÆGè@!9ÇrÜë‹Uð‰$ÇD$è!¾0‹Uð‰$è!
Àu1ÀëM‹Uð‰$ÇD$èX!¾‰Eì‹Uð‰$ÇD$è?!¾8‹Uð‰$ÇD$}ìè&!¾ø¯Æ؃Ä^_[]Ã1Ûé(ÿÿÿU‰åSWVƒì‹u‰t$‹M‰$èÚ ‰4$è ‰Æ÷Þ‰Çë3‹M‰$è} ð‰D$‹E‰$èÆ ‰ÃO‰|$‹M‰$è´ ŠˆF
ÿɃÄ^_[]Âë‰Æ‹M‰$è† ‰4$è® è— U‰åSWVƒìL‰ÎèX‰T$€h#‰D$}¾‰<$èÙ ]ð‰$è ‰\\$‰|$‰4$è\" ‰$èüƒÄL^_[]ÉƉ$èê‰4$èB U‰åSWVƒì<èX‰EÈ‹M‰$觉ƍµ‰$è ‰0‰Eč@‰ẺljÃ
ö„œ‰<$迃ÇNƒÃëç÷]̃Ãü‹E̍ƒøü„:‰$[üèœëä]è‰$èY‰\\$‹]ȍ›#‰\\$]à‰$èa‰ð‰D$‰\\$}؉<$èƒì‰|$‹E‰$èR‰<$èD‰$è<uè‰4$è‹u‰4$è؃ø\nr‡1Û¾ÿÿÿÿ}Ðë~1Ò‰Ø÷u
Òu‹E̍D°‰$èÑFÆEÖÆE׉\\$‹M‰$èE֍Mð‰$蝍Mð‰L$MÖ‰L$‰<$諍Mð‰$肉|$‹M̍±‰$踉<$è˜C‹M‰$è>9Âoÿÿÿ‹ẼÄ<^_[]Éƃ}Ì
±þÿÿ‹Eĉ$è†ëQèy‰Æ‰<$èQë'èhèc‰Æ‰<$è;ë*èR‰ÆEè‰$ë‰Æ‰$è ‰ðëè‰Æ]ð‰$è߉4$è7U‰åSWVì¼èX‰
pýÿÿµ8þÿÿ‰4$è«‹E‰$莉t$‰D$
0þÿÿ‰$讉4$舍
(þÿÿ‰$褍þÿÿ‰$薍
þÿÿ‰$舍
þÿÿ‰$èz‹µpýÿÿ¶ñ ‰µ|ýÿÿ‰t$µ0þÿÿ‰4$ÇD$è‰ÆF‰D$‹
|ýÿÿ‰D$
0þÿÿ‰$è߉ǍG‰D$‹
|ýÿÿ‰D$
0þÿÿ‰$辉ÍC‰D$‹
|ýÿÿ‰D$
0þÿÿ‰$è1ɃþÿDñƒÿÿDù‰ú\tòƒûÿDÙ\tÚƒøÿDÁ\tÐu0Ûég‰t$0þÿÿ‰L$Pÿÿÿ‰$ÇD$èfƒìPÿÿÿ‰L$(þÿÿ‰$荍Pÿÿÿ‰$èy‰ð÷Ðø‰D$F‰t$µ0þÿÿ‰t$µXÿÿÿ‰4$èƒì‰t$ þÿÿ‰$èC‰4$è5‰þ÷ÖÞ‰t$G‰|$µ0þÿÿ‰t$µ`ÿÿÿ‰4$èÒƒì‰t$þÿÿ‰$èÿ‰4$èñ
0þÿÿ‰$蕉D$C‰\\$
0þÿÿ‰D$½hÿÿÿ‰<$膃ì‰|$
þÿÿ‰$賉<$è¥ëK‰Ã½Pÿÿÿ‰<$è“ë1誉É4$è‚ë 虉É4$èqë舉É<$è`‰$舍
þÿÿ‰$èüƒÀñ‰D$
þÿÿ‰D$
þÿÿ‰$ÇD$èçƒì
þÿÿ‰D$½@þÿÿ‰<$èü‰<$貃øw\tÆ
|ýÿÿëi1öë#‰t$‰<$èî€8A|â‰t$‰<$èÝ€8ZÑFƒþ|ؾë#‰t$‰<$è¿€80|³‰t$‰<$讀89¢F‰<$èF9ÆrÑÆ
|ýÿÿ‰<$聀½|ýÿÿu0Û鍽þÿÿ‰|$½þÿÿ‰<$ÇD$ÇD$è\rƒì½þÿÿ‰|$½øýÿÿ‰<$ÇD$ÇD$èâƒì½þÿÿ‰|$½Hþÿÿ‰<$ÇD$ÇD$è·ƒì‰|$
þÿÿ‰$èä‰<$è֍µþÿÿ‰t$µPþÿÿ‰4$貍µ þÿÿ‰t$µ(þÿÿ‰t$µhþÿÿ‰4$èBƒìµþÿÿ‰t$µhþÿÿ‰t$µ`þÿÿ‰4$èƒì
þÿÿ‰D$‰t$
Xþÿÿ‰$èþƒì½XþÿÿPþÿÿ‰ù‰Úè'÷ÿÿðýÿÿ‰Âèºøÿÿ‰<$è+‰4$è#µhþÿÿ‰4$è‰$è\rðýÿÿ‰$轃Àþ‰D$ðýÿÿ‰L$µpþÿÿ‰4$ÇD$蜃ì‰t$ðýÿÿ‰$èɉ4$軍½øýÿÿ‰<$èe‰$èù‰Æðýÿÿ‰$èM‰$èá9Æt0Ûé덽þÿÿ‰|$½èýÿÿ‰<$ÇD$ÇD$èƒì‰<$è‰$蕉
|ýÿÿ½þÿÿ‰|$½xþÿÿ‰<$荽 þÿÿ‰|$½(þÿÿ‰|$½ˆþÿÿ‰<$è­ƒì
þÿÿ‰D$‰|$
€þÿÿ‰$莃썵€þÿÿxþÿÿ‰ñ‰Úè·õÿÿ‰
lýÿÿ‰4$è‰<$躉$貍½þÿÿ‰|$½þÿÿ‰<$莍½ þÿÿ‰|$½(þÿÿ‰|$½¨þÿÿ‰<$èƒì½þÿÿ‰|$½¨þÿÿ‰|$½ þÿÿ‰<$èùƒì
þÿÿ‰D$‰|$
˜þÿÿ‰$èڃ썵˜þÿÿþÿÿ‰ñ‰Úèõÿÿ‰4$è‰<$荽¨þÿÿ‰<$èþ‰$èö½þÿÿ‰<$ÇD$è썽 þÿÿ‰<$ÇD$è֍µ°þÿÿ‰ñ‹UèAöÿÿ‰4$ÇD$越ˆàýÿÿ‰4$èšÆ
áýÿÿµàýÿÿ‰4$èÓ‰D$‹½pýÿÿ¿!‰|$½âýÿÿ‰<$è퍵¸þÿÿ‰4$è‰t$‰|$½Øýÿÿ‰<$è-‰4$è‰<$èç‰$kµ|ýÿÿ\nèn‰Ç‰ð™÷ÿ‰ð)о™™™™÷î‰ÖÁtýÿÿÁú‰•xýÿÿ½þÿÿ‰<$螃Àþ‰D$‰|$½Àþÿÿ‰<$ÇD$菃ì‰|$
þÿÿ‰$載<$讍½þÿÿ‰|$½Ðþÿÿ‰<$芉|$½Èþÿÿ‰<$èƒôÿÿƒì‰|$
þÿÿ‰$èu‰<$èg½Ðþÿÿ‰<$èY½Ðýÿÿ‰<$èE½Èýÿÿ‰<$è7½þÿÿ‰|$½Èýÿÿ‰<$è+‹•xýÿÿò‹µ|ýÿÿ|‰½týÿÿò‰•xýÿÿ1ö‰×‰Ó‰µ|ýÿÿþÿÿ‰$è9Çs'‰|$þÿÿ‰$èᾉD$
Ðýÿÿ‰$訍Èýÿÿ‰$èd9Ãs‰\\$Èýÿÿ‰$ÇD$èpÐýÿÿ‰$è89Æs%‰t$Ðýÿÿ‰$è|¾‹•|ýÿÿTЉ•|ýÿÿ½týÿÿxýÿÿFƒþ
Nÿÿÿ½Ðýÿÿ‰<$èëƒøu‹•|ýÿÿëT½þÿÿ‰<$èÐH‰D$‰<$è¾0‰t$µÐýÿÿ‰4$èä‰÷‰<$è¤H‰D$‰<$èñ¾0‹•|ýÿÿT2ЍÀýÿÿèTóÿÿÀýÿÿ‰$èqH‰D$Àýÿÿ‰L$½Øþÿÿ‰<$ÇD$è^ƒì‰|$Àýÿÿ‰$苉<$è}µþÿÿ‰4$è'‰ÇÀýÿÿ‰$è‰|$‰$èã
Àt0Ûék\tµÐýÿÿ‰t$µèþÿÿ‰4$è$‰t$àþÿÿ‰$èòÿÿƒì‰\\$
Ðýÿÿ‰$è‰$è‰4$èù½Èýÿÿ‰<$èH‰D$‰|$½ðþÿÿ‰<$ÇD$萃썽Èýÿÿ‰|$½ÿÿÿ‰<$ÇD$ÇD$èeƒìÐýÿÿ‰\\$‰|$øþÿÿ‰$è(ƒì
ðþÿÿ‰D$‰\\$
¸ýÿÿ‰$è\tƒì‰$èX‰<$èPµðþÿÿ‰4$èB‹
lýÿÿ‹}÷ç‰D$‹pýÿÿ›ø ‰\\$]¾‰$Áÿ¯½lýÿÿ׉|$蒍}ð‰<$èlj|$‰\\$°ýÿÿ‰$èÕë‰Æ‰<$諉4$è‰<$蛉މt$µÿÿÿ‰4$諉4$ÇD$è•ñÿÿ‰
týÿÿ‰4$虍µÿÿÿ‰4$èU‰t$‹pýÿÿ›!‰|ýÿÿ‰\\$ýÿÿ‰$èQ‰4$è+µÿÿÿ‰4$è‰t$‹
pýÿÿ€&!‰D$
”ýÿÿ‰$è‰4$èóµ ÿÿÿ‰4$è߉t$‹
|ýÿÿ‰D$
˜ýÿÿ‰$èç‰4$èÁµ(ÿÿÿ‰4$è­‰t$‹
|ýÿÿ‰D$
œýÿÿ‰$赉4$菍µ0ÿÿÿ‰4$è{‰t$‹
|ýÿÿ‰D$ýÿÿ‰$胉4$è]µ8ÿÿÿ‰4$èI‰t$‹
|ýÿÿ‰D$
¤ýÿÿ‰$èQ‰4$è+µ@ÿÿÿ‰4$è‰t$‹
|ýÿÿ‰D$
¨ýÿÿ‰$è‰4$èù½¸ýÿÿ‰|$½Hÿÿÿ‰<$è‰|$ˆýÿÿ‰$ÇD$ÇD$賃ì‰<$è䋵týÿÿv‰4$苉$è‰
dýÿÿµxÿÿÿ‰ñ‹Uè<ïÿÿ‰÷‰<$ÇD$课0‰µ|ýÿÿ‰<$ÇD$è–¾0‰µlýÿÿ‰<$ÇD$è}¾0‰µhýÿÿ‰<$ÇD$èd¾0‰µ`ýÿÿ‰<$ÇD$èK¾0‰µ\\ýÿÿ‰<$ÇD$è2¾0]€‰$èâ‰\\$‹pýÿÿ›!‰\\$pÿÿÿ‰$èä]€‰$軍”ýÿÿ‰\\$tÿÿÿ‰$èǃ
|ýÿÿЃ
lýÿÿЃ
hýÿÿЋ½`ýÿÿƒÇЋ\\ýÿÿƒÃЃÆЉt$‰\\$‰|$‹µhýÿÿ‰t$‹µlýÿÿ‰t$‹µ|ýÿÿ‰t$‹µdýÿÿ‰4$èêëÿÿ‰D$‹½pýÿÿ¿ý ‰|$}™‰<$è܍u¨‰4$è‰t$‰|$}‰<$è\"ëJƒøü„‰4$vüèë狝xýÿÿƒûü„ˉ4$vüèü\rëá‰Ç‰4$èÀ\r‰<$è‰4$è°\r‰<$èŠ\rƒø‡Ó}¸‰<$èŽ\r‰|$‹½pýÿÿ¿l ‰|$}°‰<$è“\r}¸‰<$èj\r}‰<$èA\r¾)Æ¿ÿÿÿÿ‹pýÿÿ›ó ‰|ýÿÿë‹
|ýÿÿ‰D$E°‰$èl\rG9÷|æ}‰|$}°‰<$è[\r‰|$}ˆ‰<$è(\r}°‰<$è)\rë=ë‰Æ]°‰$è\rëè/\r‰Æ]¸‰$èÔ‰4$è,\r}‰|$}ˆ‰<$èލ}‰<$èߍu˜‰4$螉t$‹pýÿÿ›l ‰\\$€ýÿÿ‰$è ‰4$èz1öëi‰t$‰$覊1ÿë-‰|$pÿÿÿ‰$èŽ8u‰|$½tÿÿÿ‰<$èxŠëGpÿÿÿ‰$è9ÇrÁ0Û¾û‰|$½€ýÿÿ‰<$è&F]ˆ‰$èä9Ærˆ}ˆ‰<$è#1öƒþø„ˆ½tÿÿÿ<7ƒÆü‰<$èëá‰Ç]‰$èõë8èë‰Ç€ýÿÿ‰$èÜëèóèî‰Ç‰4$薍uˆ‰4$軉<$èãƒþøtrtÿÿÿ3ƒÆü‰$èšëå‰<$èÀ½xÿÿÿ‰<$肍½ˆýÿÿ‰<$è,‰Æ€ýÿÿ‰$è‰t$‰$èè
À„¸ƒ½týÿÿum0Ûéðë‰Çxÿÿÿ‰$è.딉Ǎ]€‰$èï\n»ëè11ö‰ÇéWÿÿÿè#è1ۉǾ)ÞÁ捝pÿÿÿ\tÞƒÆü÷Û‰xýÿÿéÁüÿÿ‹
týÿÿ‹püt°ü‰Ç÷߃Àü‰
týÿÿ>ƒûüt\r‰4$vüè­\nëë‹
týÿÿ‰$èÁ\néQÿÿÿƒ½týÿÿt=‹
týÿÿ‹püt°ü‰Ç÷߃Àü‰
týÿÿ>ƒûüt\r‰4$vüèb\nëë‹
týÿÿ‰$èv\n³½€ýÿÿ‰<$èB\n½ˆýÿÿ‰<$è4\n¾ƒþüt1¼5ýÿÿvü‰<$è\nëçƒþü„hœ5ýÿÿvü‰$èû\të㍽°ýÿÿ‰<$èë\t½¸ýÿÿ‰<$èÝ\tÀýÿÿ‰$èÏ\t½Èýÿÿ‰<$èÁ\t½Ðýÿÿ‰<$è³\t½Øýÿÿ‰<$è¥\t½èýÿÿ‰<$è—\tðýÿÿ‰$è‰\t½øýÿÿ‰<$è{\t½þÿÿ‰<$èm\t½þÿÿ‰<$è_\t½þÿÿ‰<$èQ\t½þÿÿ‰<$èC\t½ þÿÿ‰<$è5\t½(þÿÿ‰<$è'\t½0þÿÿ‰<$¶óè\t‰ðÄ¼^_[]Ãëë‰Æ‰<$èû‰ðéÚè\r\t‰Æ‰<$èå‰ðéíè÷‰Ã‰<$èÏéèãèÞèÙèԉlj4$謉øéø辉É4$è–é!èªè¥è ‰Ã‰4$èxé3èŒè‡è‚è}‰Ã‰4$èUéºèi‰Ã‰4$è馉Ɖ<$è2‰ðéõèD‰Æ‰<$èéõè0è+ë‰ÆÈýÿÿ‰$èûéé‰Æ‰<$èì‰ðéëèþ‰Ç‰$èÖéîèêèå‰Æ‰$è½éøèÑèÌèÇë‰Ç°ýÿÿ‰$è—éމlj4$èˆëá蟉lj4$èG¾é؉lj4$è3¾éĉlj4$è¾é°‰Ç‰4$è¾éœ‰Ç‰4$è÷¾éˆ‰Ç‰4$èã1öéwè%‰Æ‰<$èý‰ðévèëë‰Æ€ýÿÿ‰$è݉ðébèïèêèåèàèÛèÖèÑèÌèÇèÂè½è¸è³è®è©è¤èŸèšè•‰Ç0þÿÿ‰$ègé‰Ç(þÿÿ‰$èRëۉǍ þÿÿ‰$è@ëމǍþÿÿ‰$è.ëމǍþÿÿ‰$èëމƍþÿÿ‰$è\n‰ðëډƍþÿÿ‰$èöéöüÿÿ‰Æøýÿÿ‰$èáëۉͽPþÿÿ‰<$èωØëډͽhþÿÿ‰<$è»ë܉É4$è¯ëä‰Æðýÿÿ‰$èé³üÿÿ‰Ã½èýÿÿ‰<$舉Øë׉ͽxþÿÿ‰<$ètë܉É<$èhëä‰Ã½þÿÿ‰<$èV뾉ͽ¨þÿÿ‰<$èDëމÉ<$è8ëä‰Ã½Øýÿÿ‰<$è&뎉ƍÐþÿÿ‰$èéÝüÿÿ‰ÆÐýÿÿ‰$èÿéÈüÿÿ‰ÆÀýÿÿ‰$èêéÜüÿÿ‰Ç‰4$èÛ‰øë݉ƍðþÿÿ‰$èÇéÖüÿÿ‰Æ‰<$è¸ëá‰Ç¸ýÿÿ‰$è¦ëɉlj4$èj¾¸)ð´
Œýÿÿ÷ÛéNöÿÿ‰Ç¾é^úÿÿ‰Çˆýÿÿ‰$èd‰øëà‰Ç‰4$è&‰<$è~ègU‰åSWVƒìlèX‰Eœ‹Eƒø‹Eœ€|‰$è¢éP‹uƒøt1Àë‹F‰$èP‰Ç‹F‰$èC=r0t=L¤u‹Eœ€ë\t‹Eœ€†‰$è‰E˜]¨‰$臋F‰\\$‰D$E ‰$蕉$èo
ÿuPE ‰D$u°‰4$è}‹E˜‰D$‰4$èsåÿÿˆÃ‰4$èp„Ût‹uœ¶‰4$èßé‚‹uœ¶8ëè] ‰\\$]¸‰$è-‹uœ¶3‰t$‰Ø‰$ÇD$èƉÍC‰D$‰t$u¸‰4$讃ûÿt‰Æƒþÿu71ö‰t$‹uœ¶‰4$è]]¸‰$èԍ] ‰$èÉ1ÀƒÄl^_[]É\\$M¸‰L$Mà‰$ÇD$èeƒì¸þÿÿÿ)Øð‰D$ƒÃ‰\\$]¸‰\\$]؉$è<ƒìE¸‰$è‰D$ƒÆ‰t$u¸‰t$uЉ4$èƒì‰\\$]à‰\\$]ȉ$èÚƒì‰ó‰\\$]؉\\$]À‰$迃ì‰\\$]è‰$èû]ȉ\\$]ð‰$èé]ð}è‰Ù‰úèÍßÿÿ‰ÆÑm˜‰$èÙ‰<$èэEÀ‰$èƍEȉ$軍EЉ$谍E؉$è¥ë‰4$èˍEà‰$萯u˜é“þÿÿ‰Æ‰$è}‰ðëvè’èèˆèƒè~èyèt‰ÆEà‰$èI뤉ƍE؉$è:‰ðëà‰ÆEЉ$è)‰ðëމƍEȉ$è‰ðëމƍEÀ‰$è‰ðëމƍEè‰$èö‰ðëމƉ$è¸ë;‰Ç‰4$è܉øë èñ‰ÆM¸‰$èƉðë\nèÛè։ƍM ‰$諉4$èÓU‰åWVƒì‹E‰D$‹u‰4$è}‹E‰D$‰4$è\\ƒÄ^_]‰lj4$èg‰<$èèxÿ%`ÿ% `ÿ%$`ÿ%(`ÿ%,`ÿ%0`ÿ%4`ÿ%8`ÿ%<`ÿ%@`ÿ%D`ÿ%H`ÿ%L`ÿ%P`ÿ%T`ÿ%X`ÿ%\\`ÿ%``ÿ%d`ÿ%h`ÿ%l`ÿ%p`ÿ%t`ÿ%x`ÿ%|`ÿ%€`ÿ%„`ÿ%ˆ`ÿ%Œ`ÿ%`ÿ%”`ÿ%˜`ÿ%œ`ÿ% `ÿ%¤`ÿ%¨`ÿ%¬`ÿ%°`ÿ%´`ÿ%¸`h`éjØÿÿh `é^Øÿÿh$`éRØÿÿh(`éFØÿÿh,`é:Øÿÿh0`é.Øÿÿh4`é\"Øÿÿh8`éØÿÿh<`é\nØÿÿh@`éþ×ÿÿhD`éò×ÿÿhH`éæ×ÿÿhL`éÚ×ÿÿhP`éÎ×ÿÿhT`éÂ×ÿÿhX`é¶×ÿÿh\\`éª×ÿÿh``éž×ÿÿhd`é’×ÿÿhh`é†×ÿÿhl`éz×ÿÿhp`én×ÿÿht`éb×ÿÿhx`éV×ÿÿh|`éJ×ÿÿh€`é>×ÿÿh„`é2×ÿÿhˆ`é&×ÿÿhŒ`é×ÿÿh`é×ÿÿh”`é×ÿÿh˜`éöÖÿÿhœ`éêÖÿÿh `éÞÖÿÿh¤`éÒÖÿÿh¨`éÆÖÿÿh¬`éºÖÿÿh°`é®Öÿÿh´`é¢Öÿÿh¸`é–Öÿÿ__dyld_make_delayed_module_initializer_calls__dyld_mod_term_funcs/usr/lib/libSystem.B.dylib__cxa_atexit__cxa_finalizeatexit***0%u%llu%X0123456789ABCDEF1%i76543212345678983194837251290356-19182322189891%i\nÿ›¸424D<\rÿ›EAn+.ln\rƒ{\rÿ›œ5UE\"ÿ›Õ€€ÐEE™k²ƒÞŸè··ÆèÎÞÖi?ö`ÍrG¹ÃÏÙêÈòÿ›ù“€€ô&!§O]¥k·yɇáÛhd€8Û¸{Ê2ÛüŒ:ÛHZÛfv}‡Ž˜Ÿ¹§@ÛçíÿH+þ~CíÁ+ì+) I%(n%<“N²\".ÔNÜ<ä(òú8Z2QDlZ°.oÞ%ƒ•\"g=•EƒM om%¡’%³·ÅÖ
ëÅó³û¡\tDoM¨eo²¼ÐoÑ?ËQ Ñqã†á˜ã ѼøÊü\t‰úÀ\tzü:\n6\rp\n‚\nU\r×\n\"ì\n'þ\n\"8\r>+0iEˆ@§E¯0·\r\n\",Q<`Puf`|(cº\"†òš$\r®V\rˆ\rÖº\rêÞ\r‡ö\r%‡#/“RÉï\"ÛÀ\ráûïô'Cömâ˜à²!âÓâ\rñô3\"7as‰ ´!ÙôûÇ-A2Lôeýo“
ËOš·“ŇÝ^ú;Q\r*ü8øFÑTobZp~ŒíšÛ¨É¶·Ä¥Òà$)0=Sbiv‡”ª·ÍÜãðþO\")6BOb@w1’‹§†¹Ë|Ûwírmh*L>GPBZcq^
€—{££µžÇ™ÑYåõúT\rJ$;2YGTSE“6£ÿ›²ƒ€­W®‘ÀcÑ?‘7vj‘uŠ!v´ óÔ+ÿ$35BFTÂhFp5x$ƒŽ™ó¦vÄÐó\rî\ré\rä$\rß5\rÚF\rÕeqx‡‘\rŒž $eQPPl<ë<lCÜ@Ë(A2HA=(Bû8,L¡<œ@,Ûó{âí\t«#Q'%QezPLR|›uˆ,$sÌÿÿ„\r†‡ƒ,T¹íÿÿI«ñÿÿ„\r†‡,„+Íÿÿˆ»ñÿÿ„\r†‡ƒ,´ƒÍÿÿg×ñÿÿ„\r†‡ƒ,äºÍÿÿÇñÿÿ„\r†‡ƒ,•Ïÿÿ¾wòÿÿ„\r\t†‡ƒ,D#éÿÿ¦Küÿÿ„\r†‡ƒààÜMèMôMNNN$N0N<NHNTN`NlNxN„NNœN¨N´NÀNÌNØNäNðNüNOO O,O8ODOPO\\OhOtO€OŒO˜O¤O°OÐ*)×$0@ð€,\nI\n\n\n˜ˆg‹¾3¦dCdQfø\"Q.&“$&$0N0.À&¡$À&$N.Ð&µ$Ð&$@N@.'É$'$pNp.€)Ø$€)$N.€*ì$€*$,N,dôy%üP&t&(&6À&JÐ&^'m€)€*‰³*£½*½+×+ñ+++!Ë,0œPBÜPT(QfHQx(RŠ,\\œ¼`®À`¶Ä`¾C,Ó$+ë2-¬*=/(€¡L^Ì`j~Ð`•Ô`²Ø`ØÜ`ëà`ä` è`=ì`Wð`xô`šø`¾ü`ßÈ`èûHîaÿP% 2AQbt‚Ÿ¯ÂÕé÷\r&3AR€Z€awš±×ÿ'-3;CJQW]px€†:NOPQRSTUVWXYZ[\\]^_`abcMeghijklmnpqstuvwfor€d:NOPQRSTUVWXYZ[\\]^_`abcMeghijklmnpqstuvw /private/var/tmp/llvmgcc42/llvmgcc42-2336.11~148/src/gcc/config/darwin-crt3.c/usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin11/4.2.1/crt3.o___cxa_atexit_cxa_atexit_check_2_cxa_atexit_check_1_atexit_common_cxa_atexit_wrapper_atexit__startdyld_stub_binding_helper__dyld_func_lookup___cxa_atexit_cxa_atexit_check_2_cxa_atexit_check_1_atexit_common_cxa_atexit_wrapper_atexit__ZL12Bit_Mangle_1iiiiiii__ZL12Bit_Mangle_2iiiiiii__ZL12Bit_Mangle_3iiiiiii__ZL12Bit_Mangle_4iiiiiii__ZL12Bit_Mangle_5iiiiiii__ZL11getChecksumSsSs__ZL8numtostrjGCC_except_table2GCC_except_table3GCC_except_table4GCC_except_table5GCC_except_table6GCC_except_table7dyld__mach_header_NXArgc_NXArgv__Z13reverseStringSs__Z14checkBlackListiiii__Z14makeSeedsArraySsi__Z18checkBlackList_oldii__Z4key1Ssi__ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8____progname__mh_execute_header_catch_exception_raise_catch_exception_raise_state_catch_exception_raise_state_identity_clock_alarm_reply_do_mach_notify_dead_name_do_mach_notify_no_senders_do_mach_notify_port_deleted_do_mach_notify_send_once_do_seqnos_mach_notify_dead_name_do_seqnos_mach_notify_no_senders_do_seqnos_mach_notify_port_deleted_do_seqnos_mach_notify_send_once_environ_main_receive_samplesstart__Unwind_Resume_or_Rethrow__ZNKSs4findEPKcm__ZNKSs4sizeEv__ZNKSs5c_strEv__ZNKSs6lengthEv__ZNKSs6substrEmm__ZNSaIcEC1Ev__ZNSaIcED1Ev__ZNSs5clearEv__ZNSs5eraseEmm__ZNSs6appendERKSs__ZNSs9push_backEc__ZNSsC1EPKcRKSaIcE__ZNSsC1ERKSs__ZNSsC1Ev__ZNSsD1Ev__ZNSsaSERKSs__ZNSsixEm__ZNSspLEPKc__ZNSspLERKSs__ZSt9terminatev__ZdaPv__Znam___gxx_personality_v0___keymgr_dwarf2_register_sections__cthread_init_routine__keymgr_get_and_lock_processwide_ptr__keymgr_get_and_lock_processwide_ptr_2__keymgr_set_and_unlock_processwide_ptr_atoi_atol_calloc_dlopen_dlsym_errno_exit_free_mach_init_routine_malloc_printf_puts_sprintf_strcmp";var macPPCKeyStr = "";} else {var winBase64KeyStr = "MZÿÿ¸@ິ\tÍ!¸LÍ!This program cannot be run in DOS mode.\r\r\n$úžgF¾ÿ\t¾ÿ\t¾ÿ\t·‡š»ÿ\t¾ÿ›ÿ\tщ¦®ÿ\t·‡œ¿ÿ\tщ¢¿ÿ\tщ”¿ÿ\tRich¾ÿ\tPELÕQà\n.œ@@p@<E<`à@4.textŒ-. `.rdata^@2@@.data9P:@À.reloc`<@B¸XA@ø`A@øhA@øtA@ÃV‹ñè¥öD$tVèÄ\rY‹Æ^¸€A@øA@ÃöD$V‹ñÇB@tVè›\rY‹Æ^¸œA@ø¤A@ø°A@Ãh¸D@èê\r¡P@Y
ÀtPèÚ\rYhðD@èÏ\rYËÁ‹\rP@‰Ã¡P@V‹ñ‰‹D$‹‹PÿR‰‹Æ^ÂU‹ìQƒ}¡P@V‹ñW‰uEÿPè«èÿÿÿÿuÿ@@‹ø
ÿu¡P@ëjèÞY‹È
Étÿu‹Çèæë3À‰_‹Æ^É‹\t
Ét‹ÿ`ËD$V‹ñ‹‹W‹>PÿR‰‹‹ÏÿP_‹Æ^‹\t‹ÿ V‹ñ‹
Ét‹ÿP¡P@‰^ÃU‹ìQ‹‹VQ‹ÈÿR‹ð‹‹Îÿ9ErEÿPèjèÜþÿÿ‹FE^É‹D$QèIÂÿt$QèÍÂU‹ìƒìV‹ñ‹‹ÿP,„ÀtŠES]ôÇEô¬C@ˆEøèU[ëM‹‹ÿ‹\rP@I;ÁrhðA@EÿPè¹èfþÿÿjèÍY
Àt‹‰HŠMÆ@Ç$D@ˆHë3À‰‹Æ^ÉÂU‹ìƒì‹‹WVÿP‹‹ø‹ÿ‰Eô‹‹Ëÿ‹\rP@+ȉEø9MôrhðA@EÿPèHèõýÿÿ‹Eô‹Eø‹ÿP9Eøw‹‹ÿP0
Àt;j‰}ðè<Y‹È
Ét‹Eøè0\n‹øë3ÿ‹Mðÿw‹Eô‹IèôY‹Mð‹ÿP‰>‹GEôMì‰Eì‹Q‹ËÿP‹Eø‰G‹Æ_ÉÃU‹ìƒìS‹]‹VW‹ø‹ÿP,„Àtuôè\n‹u‹Øèÿÿÿë]‹‹ÿ‹‹ð‹ÿ‹\rP@+È;ñrhðA@EPèwè$ýÿÿjè‹\n‹ðY
öt‹‹WÿP‹ÆFÇèC@‰N‰Fë3ö‰3‹Ã_^[ÉÂU‹ìƒìSVW‹}‹‹ÿP,„Àt‹}uôèn\t‹u‹Øè‰þÿÿëxjè&\nY
Àtÿu‹ðè¡‹ðë3ö‹‹ÿ‹Ø‹‹Îÿ‹\rP@+È;Ùr‹j‹ÎÿP4hðA@EPèÀ\rèmüÿÿjèÔ\tY
Àt‹Æ@ÇèC@‰H‰pë3À‰‹Ç_^[ÉÂU‹ìQQSVW‹ù‹‹ÿ‹ð9uvEÿPè©\rèüÿÿ‹Þ+];]v‹]+ó‰uu‹‹ÿP,‹„À‹t9WÿPƒ`‹‹WÿP‹‹ð‹ÿP,„Àt(‹FE‹M+Mè/‹E‰Fë\\ÿP¡P@‰ëPjè\tY‹È
Ét\n‹Eèë3À‰‹@‹N‰EøP‹EèÑ\n‹U‹E‹]øNÚ+ÂSè¸\n‹YY‹ÎÿP‹Ç_^[É‹‹Q‹ÈÿR(ÃU‹ìQQ‹MSVW‹ø‹ÿ‹‹ð‹‰uüÿ‹Ø;Þ‚›‹E‹Ë+Î;Á‡Œ
ö„‰‹‹WÿPƒ}ü‹p‹E‹M‹Q‰uø<u+ؾSP‹Çè
\nYY
ÀtP+ÆëQ‹5P@;uür3ö‹Eø+Ç+EüD
Àt)P¾P>èP\n‹øYY
ÿtÿuü+þè†\tY
ÀtFGëÀ‰5P@¡P@_^[É‹Ç+Eø‰5P@ëìU‹ìƒìSVWÿu‹}uô‹ÙèÿP‹Ãèÿÿÿ_^[ÉÂU‹ì¡P@SVW‹}‹ñ‹‰‹VÿP‹‹Ø‹ÿ‹ð9uvEPè¤èúÿÿ+u9us‹u
öu¡P@ë jègY‹È
Ét‹CEP‹Æèkë3À‰‹Ç_^[]‹Á‹HV‹p‹Wÿ‹ø‹‹ÎÿÇ_^ËI‹ÿ@ËAÃ3À@Ã3ÀËÿ ‹AÃVÿt$‹ñ‹N‹ÿP‹N‹^ÿ`V‹t$W‹ù‹O‹VÿP‹ŠOˆÿ_^ÂVW‹|$‹‹ñ‹N‹V躋F_^‹D$‹ŠIˆ\nÿÂÂU‹ìQVWj‹ù蔋ðY
öt‹‹Ïÿ‹Î胋ðë3ö‹FMü‰Eü‹Q‹ÏÿP‹}‹‹ÿP‰7_‹Æ^ÉÂV‹ñƒ~t.jèEY‹È
Étÿv‹FèL‹ðë3öW‹|$‹‹ÿP‰7_‹Æ^ÂU‹ìQVWj‹ùè\t‹ðY
öt‹‹Ïÿèk‹ðë3ö‹FMü‰Eü‹Q‹ÏÿP‹}‹‹ÿP‰7_‹Æ^É‹ÁÂVW‹ùƒju6è¶Y
Àtƒ`ƒ`Ç€B@‹ðë3ö‹G‰Fƒg‹O‹F‰N‰Gë耋ðY
ötÿw‹Gè0‹ðë3ö‹|$‹‹ÿP‰7_‹Æ^ÂVWj‹ñèIY3É;Át‰H‰HǼB@‰H‹øë3ÿ‹F‰G‹V‰N‹G‰W‰F‰O‹j‹ÎÿP4‹Ç_^ËÁÃVWj‹ñèùY‹È
Étÿv‹Fè‹øë3ÿ
öt\t‹j‹ÎÿP4‹Ç_^ÃU‹ìQSVW‹ù‹ÿj‹Ø蹋ðY
öt‹ÃèÇøB@‰^‰^ë3ö‹FMü‰Eü‹Q‹ÏÿP‹}‹‹ÿP‰7_^[ÉÂVWj‹ùèlY3É;Át‰H‰HÇøB@‰H‹ðë3ö‹G‰F‰F‰O‹O‹F‰N‰G‹|$‹‹ÿP‰7_^ÂSVW‹ù3Ûj9_u9èY;Ãt‰X‰XÇøB@‰X‹ðë3ö‹G‰F‰F‹O‰_‹F‰N‰Gë&èÚ‹ðY;ót‹_ÿw‹ÃèˆÇøB@‰^ë3ö‹|$‹‹ÿP‰7_^[ÂSVWj‹Ùèš‹ðY
öt‹{ÿs‹ÇèHÇøB@‰~ë3ö‹|$‹‹ÿP‰7_^[ÂU‹ìQSVWj‹ùèV‹ðY
öt‹‹Ïÿ‹ØCè³Ç4C@‰^ë3ö‹FMü‰Eü‹Ø‹Q‹ÏÿP‹Eü‹}Æ‹‹ÿP‰7_^‹Ã[É‹A‹A9Av\r‹QÆ‹AÂé~ÿÿÿV‹ñ€~tÆF^ËN‹ÿP‹N‹ÿP‹j‹ÎÿP4^ÃV‹ñ€~tÆF^ËN‹ÿP‹j‹ÎÿP4^Ã
Ét‹jÿP4ËAPÿ‰Q
Àu‹jÿP4ÃÃU‹ìQW‹ù€tGVjèa‹ðY
öt‹‹Ïÿ‹ÎèP‹ðë3ö‹FÿFMü‰Eü‹Q‹ÏÿP‹}‹‹ÿP‰7‹Æ^ëÆG‹Ç_ÉÂVWj‹ùè‹ðY
öt\rÿw‹Gè¼ë3À_^ÂVWj‹ñèæ‹øY
ÿt‹‹Îÿÿv‹Ïèèë3À_^‹Áÿ@ÂVj‹ñè´Y
ÀtŠNǬC@ˆHë3À^Â2ÀðÃ3À8A•ÀÃP‰FÇ€B@è}‰FY‹ÆÃÿt$ƒfƒfÇ€B@ÿ@@P‰FèU‹L$‰FP‹Fè#YY‹ÆÂP‰FÇ€B@è/‹L$‰FP‹FèýYY‹Æ‹FÇ€B@
ÀtPèYÇB@ÃV‹ñèiÿÿÿƒfǼB@‹Æ^ÃVÿt$‹ñèÿÿÿƒfǼB@‹Æ^ÂWÇDB@ÿ@@‰F‰~‹ÆÃÇDB@‹‹ÿ‰F‹‹WÿP‹@‰F‹ÆÃVj荋ðY
öt.‹D$‹‹WPÿR‹ø‹D$‹‹PÿR‰~ÆFÇèC@‰F_ë3ö‹D$‰0^Ã=P@W‹ùu>Vjè:‹ðY
öt 3À@èŸþÿÿ‹FƒfÇpC@Ɖ5P@ëƒ%P@ƒ\rP@ÿ^‹Ç_Ãÿt$jÿ@@Pÿ@@Ãÿt$jÿ@@Pÿ@@Ãÿt$ÿt$ÿ@@ËT$ëB¾è?
Àuó¾\nVBW‹ñƒù-tƒù+u¾\nB3ÀyЃÿ\tw\rkÀ\nDо\nBëë_ƒþ-^u÷ØÃé±ÿÿÿU‹ììVWEPÿu
üÿÿPÿ,@@‹ðV¸`P@½üÿÿèãY_‹Æ^ÉÃSUVW蜋@@hj‹èÇ,Q@€ÿÓPÿ@@‹5@@jö£(Q@ÿÖ3ÿGjõ£HP@‰=LP@ÿÖjô£hP@‰=lP@ÿÖ£ˆP@¸4@@¾@@@‰=ŒP@‹ø;Æs‹
ÀtÿЃÇ;þrñjh P@UèöƒÄ‹ðèõ¡4Q@
ÀtPjÿÓPÿ@@Vÿ@@_^][3É9L$u3ÀÃSV9L$v‹ò‹Ç+÷Š:u\rA@;L$rñ3À^[ö9¶+Áëñ
Ét!¶D$iÀ‹ÑSW‹|$Áéó«‹Êƒáóª_[‹D$ÃV‹ð
öt‹D$+ÈŠˆ@Nu÷‹D$^ÃVW‹ø;Âv4\n;ÆsNTÿ
ÉtŠˆJNIu÷ë
Ét\r‹ð+òŠˆBIu÷‹Ç_^Ã|$t¶@;L$t\tÿL$uð3ÀÃHÃÿ8P@ƒ%4P@ƒ=P@u.hÇ,P@ÿè‡ýÿÿY£P@
Àu!,P@ÇP@`D@S»ˆD@è3Ûè‹D$[Â
Ût|U‹-@@VWSÿÕ‹5,P@‹ø¡4P@+ð;þ}‹\rP@SÈQÿ @@=4P@ëB
ö~>‹=P@øW‹Æ‹ËèàþÿÿYSÿÕ;ðv‹Î+ÈÇjPè þÿÿYY¡,P@‹\rP@Æ£4P@_^]Ã=(P@tFSV»¨D@èjÿÿÿ¡(P@‹è^ÿÿÿ¡(P@‹pë»°D@èJÿÿÿ‹èCÿÿÿ‹v
öuè»´D@è2ÿÿÿ^[ÃSÿt$èÇþÿÿ¡8P@»ôD@£P@èÿÿÿ3Ûè\nÿÿÿ‹D$[ÂSÿt$èÉÿÿÿ¡8P@»E@£ P@èäþÿÿ»ÌA@èÚþÿÿèVÿÿÿ‹D$[ÂSÿt$è”ÿÿÿ¡8P@»E@£0P@è¯þÿÿ‹\\$è¦þÿÿƒ|$[tèÿÿÿ‹D$ÂSÿt$èYÿÿÿ¡8P@»(E@£$P@ètþÿÿ»¸A@èjþÿÿèæþÿÿ‹D$[‹\r0Q@
Ét!¡(Q@VW<ˆ‹ð;Çs‹
ÀtÿЃÆ;÷rñ_^Ãjÿÿ@@̃ø\t|ƒø\r~ƒø t3ÀÃ3À@ÃU‹ìƒìS3Û‰]ü‰]ø9]u3Àé«ö@‹HV‰Mô„3É3À9]†„‹5$@@P€|ÿ\n‰Uðu>;Ãv€|ÿ\rt3;ÁvSUøR+ÁPÏQÿuôÿÖ‹EøEüSEøPjh8E@ÿuôÿÖ‹MðÿEü‹Ñ‹Â;Er®;Áv(SUøR+ÁPÏQÿuôÿÖ‹EøEüëSEüPÿuWQÿ$@@‹Eü3Ò÷u^[ÉÃSV3ÛW‰ P@ÿ@@‹øWÿ@@@PSÿ@@Pÿ@@‹ð‰54Q@;óu3Àé½WVÿ @@²\"8uF‰5 P@8tà8tF8u÷8u!ëщ5 P@8t¾èªþÿÿ
ÀuF8uï8tˆF3ÉA8tj¾è‹þÿÿ
ÀtF8uïŠ:ÃtS:ÂuF‰4 P@A‰ P@8t;8t+F8u÷ë$‰4 P@A‰ P@8t¾è>þÿÿ
ÀuF8uï8tˆFƒù |’‹Á_^[ÃU‹ìQQE‰Eüÿuüÿuÿuÿ,@@‰Eøƒeü‹EøÉÃU‹ìQQÆEÿƒeøë‹Eø@‰Eøƒ}ø}*‹EøÁà‹M;ˆH@@u‹EøÁà‹M;ˆL@@uÆEÿëëÉŠEÿÉÃU‹ìQQÆEÿƒeøë‹Eø@‰Eøƒ}ø}L‹EøÁà‹M;ˆH@@u9‹EøÁà‹M;ˆL@@u(‹EøÁà‹M;ˆP@@u‹EøÁà‹M;ˆT@@uÆEÿë맊EÿÉÃU‹ìQQVEPMüèrëÿÿMèìÿÿ‰Eøë‹EøH‰Eøƒ}ø~)‹EøHPMèìÿÿ‹ðMèìëÿÿ+EøPMüèýëÿÿŠˆëʍEüP‹Mè#ëÿÿMüè˜ëÿÿMèëÿÿ‹E^ÉÃU‹ìƒì,Mèªëÿÿ‰Eè3É‹EèjZ÷âÁ÷ÙÈ3ÀƒÁ’À÷ØÁPèøÿÿY‰Eäƒ}ät)‹Eä‹Mè‰h–@ÿuèj‹EäƒÀPèë‹EäƒÀ‰EÔëƒeÔ‹EÔ‰EøƒMüÿMè;ëÿÿƒø\ns9EPh˜@@Màè˜êÿÿPEÜPè÷ÿÿƒÄPMèíêÿÿMÜèÙêÿÿMàèÑêÿÿ뺃eôë‹Eô@‰EôMèèêÿÿ9Eôs]‹Eô3Ò÷u
Òu‹Eü@‰Eü‹Eü‹MøèÈêÿÿÿuôMèÔêÿÿŠˆEìÆEíEìPMðèêÿÿEðP‹Eü‹MøèâêÿÿMðèZêÿÿ돋Eø‰E؍MèJêÿÿ‹EØÉÃU‹ììDVMè*îÿÿPMðèËéÿÿXÿÿÿè—éÿÿMøèéÿÿMÜè‡éÿÿMÀèéÿÿEðPEÀPEÜPEøP
XÿÿÿPèqƒÄ¶À
ÀuEÆ
WÿÿÿMÀèÒéÿÿMÜèÊéÿÿMøèÂéÿÿXÿÿÿè·éÿÿMðè¯éÿÿMè§éÿÿŠ
Wÿÿÿé†\tMÀèÂéÿÿƒèPjE¼PMÀè†îÿÿQ‹ÌE¼PèùèÿÿèY¶À
ÀuMÆ
OÿÿÿM¼èZéÿÿMÀèRéÿÿMÜèJéÿÿMøèBéÿÿXÿÿÿè7éÿÿMðè/éÿÿMè'éÿÿŠ
Oÿÿÿé\tjj
hÿÿÿPMÀè\rîÿÿjjEÄPMÀèýíÿÿjj
HÿÿÿPMÀèêíÿÿPMÀèéèÿÿHÿÿÿèÒèÿÿQ‹ÌE¼PèIèÿÿQ‹ôEÜPEÀPEøP
XÿÿÿP
<ÿÿÿPèÎôÿÿƒÄP
8ÿÿÿPè¾ôÿÿƒÄPVè´ôÿÿƒÄèüYYP
lÿÿÿPèR\tYY8ÿÿÿèfèÿÿ<ÿÿÿè[èÿÿjlÿÿÿè|èÿÿHHP
4ÿÿÿPlÿÿÿè=íÿÿPlÿÿÿè9èÿÿ4ÿÿÿè\"èÿÿMÄèìÿÿPè\nõÿÿY‹ðlÿÿÿèýëÿÿPèöôÿÿY;ðtkÆ
3ÿÿÿlÿÿÿèéçÿÿMÄèáçÿÿhÿÿÿèÖçÿÿM¼èÎçÿÿMÀèÆçÿÿMÜè¾çÿÿMøè¶çÿÿXÿÿÿè«çÿÿMðè£çÿÿMè›çÿÿŠ
3ÿÿÿézjj
\\ÿÿÿPMÀèìÿÿ\\ÿÿÿèiëÿÿPè¬ôÿÿY‰E´Q‹ÌE¼PèßæÿÿQ‹ôEÜPEøP
XÿÿÿP
$ÿÿÿPèhóÿÿƒÄPVè^óÿÿƒÄè¦\rYY‰
`ÿÿÿ$ÿÿÿèçÿÿQ‹ÌE¼PèæÿÿQ‹ôEÀPEÜPEøP
XÿÿÿP
ÿÿÿPèóÿÿƒÄP
ÿÿÿPèóÿÿƒÄPVèûòÿÿƒÄèC\rYY‰Eԍÿÿÿè¹æÿÿÿÿÿè®æÿÿjMÜèïæÿÿ¾PjMøèáæÿÿ¾Pÿu´ÿuÔèúÿÿƒÄ¶À
ÀtvÆ
ÿÿÿ\\ÿÿÿèkæÿÿlÿÿÿè`æÿÿMÄèXæÿÿhÿÿÿèMæÿÿM¼èEæÿÿMÀè=æÿÿMÜè5æÿÿMøè-æÿÿXÿÿÿè\"æÿÿMðèæÿÿMèæÿÿŠ
ÿÿÿéñjÿu
ÿÿÿPèÕYY‹Èè8æÿÿŠˆEȍÿÿÿèÝåÿÿÆEɍEÈPèóÿÿYPhœ@@EàPèáøÿÿƒÄEàPMØèRåÿÿMØè éÿÿPèãòÿÿY‰
dÿÿÿÿµdÿÿÿÿu´èúYY‰E¬MÀè¯åÿÿHHPj
ÿÿÿPMÀèqêÿÿPMÀèpåÿÿÿÿÿèYåÿÿQ‹ÌEÀPèÐäÿÿ
ÿÿÿPè@ùÿÿYYPMÀèBåÿÿÿÿÿè+åÿÿpÿÿÿè˜äÿÿMÌèäÿÿ
pÿÿÿPEÌPÿu¬jEÀPèn\nƒÄ‰EüÿuüEèPèÌYYjMèèåÿÿHP
üþÿÿPMèèÔéÿÿPMèèÓäÿÿüþÿÿè¼äÿÿhÿÿÿè¨èÿÿPMèèŸèÿÿPè‰ñÿÿYY
À„™Æ
ûþÿÿMèè‰äÿÿMÌèäÿÿpÿÿÿèväÿÿMØènäÿÿ\\ÿÿÿècäÿÿlÿÿÿèXäÿÿMÄèPäÿÿhÿÿÿèEäÿÿM¼è=äÿÿMÀè5äÿÿMÜè-äÿÿMøè%äÿÿXÿÿÿèäÿÿMðèäÿÿMè\näÿÿŠ
ûþÿÿééQ‹Ì
pÿÿÿPèsãÿÿ
ðþÿÿPèã÷ÿÿYYPpÿÿÿèâãÿÿðþÿÿèËãÿÿMÌèñãÿÿHPj
ìþÿÿPMÌè´èÿÿP
pÿÿÿPjj
èþÿÿPMÌè™èÿÿP
äþÿÿPè²ïÿÿƒÄPEôPè¥ïÿÿƒÄäþÿÿèmãÿÿèþÿÿèbãÿÿìþÿÿèWãÿÿ‹`ÿÿÿ3ö‹E™RPVQèd‰Eˆ‰UŒÿuŒÿuˆEìPèKƒÄjQ‹ÌEìPèŸâÿÿè÷ÿÿYY‰E°Ç
tÿÿÿ1@Ç
xÿÿÿ1@Ç
|ÿÿÿr1@ÇE€z1@ÇE„‚1@h @@Mèzâÿÿh´@@M”èmâÿÿhÈ@@M˜è`âÿÿhÜ@@MœèSâÿÿhð@@M èFâÿÿhA@M¤è9âÿÿhA@M¨è,âÿÿjjQ‹ÌEôPèþáÿÿEÐPè;ƒÄjjEP
tÿÿÿPj‹M°ƒÁèJæÿÿPèïÿÿYPÿuE¸PèŸƒÄ MÐè+æÿÿPM¸è\"æÿÿPèïÿÿYY
À„‹E°‰
Ôþÿÿ‹
Ôþÿÿ‰
Øþÿÿƒ½Øþÿÿtj‹ØþÿÿèL\r‰
Àþÿÿ냥ÀþÿÿÆ
ÓþÿÿM¸èÒáÿÿMÐèÊáÿÿh@jjEPèæMìè°áÿÿMôè¨áÿÿMèè áÿÿMÌè˜áÿÿpÿÿÿèáÿÿMØè
áÿÿ\\ÿÿÿèzáÿÿlÿÿÿèoáÿÿMÄègáÿÿhÿÿÿè\\áÿÿM¼èTáÿÿMÀèLáÿÿMÜèDáÿÿMøè<áÿÿXÿÿÿè1áÿÿMðè)áÿÿMè!áÿÿŠ
Óþÿÿé‹E°‰
Èþÿÿ‹
Èþÿÿ‰
Ìþÿÿƒ½Ìþÿÿtj‹ÌþÿÿèG‰
¼þÿÿ냥¼þÿÿÆ
ÇþÿÿM¸èÍàÿÿMÐèÅàÿÿh@jjEPèáMìè«àÿÿMôè£àÿÿMèè›àÿÿMÌè“àÿÿpÿÿÿèˆàÿÿMØè€àÿÿ\\ÿÿÿèuàÿÿlÿÿÿèjàÿÿMÄèbàÿÿhÿÿÿèWàÿÿM¼èOàÿÿMÀèGàÿÿMÜè?àÿÿMøè7àÿÿXÿÿÿè,àÿÿMðè$àÿÿMèàÿÿŠ
Çþÿÿ^ÉÃU‹ì3À@]ÃU‹ìQ‹E%€yHƒÈþ@
Àu%‹EEE‹MM3Á‹M¯M ¯Á%ÿ‰Eüë‹E¯EEEEE E%ÿ‰Eü‹EüÉÃU‹ì3À@]ÃU‹ì3À@]ÃU‹ì3À@]ÃU‹ìƒì‹EkÀ\n™÷}‰Eô‹Eô¯E‰Eô‹Eô™j\nY÷ù‰Eô‹E+Eô‰Eô‹Eô@‰Eô‹EôiÀ@B‰Eø‹EôiÀ@B‰Eü‹Eü+Eøƒø~ÛEôÜPA@ß}ì‹Eì‰Eô‹EôÉÃU‹ìƒì8ÿuhX@@EÈPè+òÿÿƒÄEÈPMüèœÞÿÿEüP‹MèrÞÿÿMüèçÞÿÿ‹EÉÃU‹ìƒì8ÿuÿuh\\@@EÈPèéñÿÿƒÄEÈPMüèZÞÿÿEüP‹Mè0ÞÿÿMüè¥Þÿÿ‹EÉÃU‹ìƒì@ƒeÄÿuEøPèiÿÿÿYYjMøèÉÞÿÿ¾ƒè0‰EüjMøè¶Þÿÿ¾ƒè0‰EèjMøè£Þÿÿ¾ƒè0‰EØjMøèÞÿÿ¾ƒè0‰EÜjMøè}Þÿÿ¾ƒè0‰EÔjMøèjÞÿÿ¾ƒè0‰Eìhl@@MàèªÝÿÿ‹E‹MDüPMäèyÝÿÿÿuìÿuÔÿuÜÿuØÿuèÿuüÿu‹E‹MÿTüƒÄ‰Eð¶E
Àtÿu$EàPÿuðEÌP荃ăMĉEÀëÿuðEÈPè}þÿÿYYƒMĉEÀ‹EÀ‰EÐÿuЍMôèÝÿÿ‹EăàtƒeÄýMÈèpÝÿÿ‹EăàtƒeÄþMÌè\\ÝÿÿEôP‹MèÓÜÿÿMôèHÝÿÿh@jjEàPèdMøè.Ýÿÿ‹EÉÃU‹ìƒìÿuQ‹ÄÿuPèYYEøP賃Ähb@@MüèšÜÿÿƒeôë‹Eô@‰EôMøèÝÿÿ9Eôs)ÿuÿuôMøèÝÿÿ¶PèYYˆEóÿuóMüè–ëÍEüP‹Mè-ÜÿÿMüè¢ÜÿÿMøèšÜÿÿ‹EÉÃU‹ìƒìÿuhd@@EìPèŸïÿÿƒÄEìPMüèÜÿÿEüP‹MèæÛÿÿMüè[Üÿÿ‹EÉÃU‹ìƒìMèvÜÿÿ9Evnh[@@Müè×ÛÿÿMè\\Üÿÿ‹M+ȉMøƒeôë‹Eô@‰Eô‹Eô;Eø}hh@@Müè‘ÜÿÿëâEPMüèvÜÿÿEüP‹MèmÛÿÿMüèâÛÿÿMèÚÛÿÿ‹EëEP‹MèLÛÿÿMèÁÛÿÿ‹EÉÃU‹ìQVƒeüë‹Eü@‰Eü‹MèÐÛÿÿ9Eüs*¾uÿuü‹MèÙÛÿÿ¾;ðuÿuü‹MƒÁèÄÛÿÿŠëëÂ2À^ÉÃU‹ìƒìMèŽÛÿÿƒø‚¤ƒeüë‹Eü@‰Eüƒ}ü}9ÿuüMè„Ûÿÿ¾ƒøA|ÿuüMèqÛÿÿ¾ƒøZ~ÆE÷MèÛÿÿŠE÷ëzëºÇEøë‹Eø@‰EøMè!Ûÿÿ9Eøs9ÿuøMè.Ûÿÿ¾ƒø0|ÿuøMèÛÿÿ¾ƒø9~ÆEöMè¼ÚÿÿŠEöë$ë³ëÆEõMè§ÚÿÿŠEõëÆEôMè–ÚÿÿŠEôÉÃU‹ìƒìVÿu‹Mè‹ÚÿÿƒeüÇEøë‹Eø@‰Eø‹Eø;E‰‹E¯EøH‰Eô‹MèzÚÿÿ9Eôsÿuô‹Mè‡Úÿÿ¶P‹Mè‹uô+uøF‹MèOÚÿÿ;ðsj‹Eô+Eø@P‹MèÝÿÿ‹uøN‹Mè-Úÿÿ;ðs ‹EøHP‹Mè9Úÿÿ¾‰Eð‹Eð‹MüDЉEüédÿÿÿ‹MèüÙÿÿƒøt=‹MèïÙÿÿHP‹MèÚÿÿ¶P‹M艋MèÑÙÿÿHP‹MèäÙÿÿ¾‹MüDЉEü‹Eü^ÉÃU‹ìƒì Vƒeøƒeìë‹Eì@‰EìMè”Ùÿÿ9EìsÿuìMè¡Ùÿÿ¾Eø‰EøëÖƒeðMèmÙÿÿƒør5ÇEèë‹Eè@‰EèMèPÙÿÿ9EèsÿuèMè]Ùÿÿ¾Eð‰EðëÖëjMèFÙÿÿ¾‰EðMèÙÿÿ
Àwƒeàë>jMè$Ùÿÿf¾·ðjMèÙÿÿf¾·ÀðjMèÙÿÿf¾·Àð¯uð‰uà‹Eà‰Eü‹EøEü‰Eô‹Eô‰EäMèˆØÿÿMè€Øÿÿ‹Eä^ÉÃU‹ìƒì jhˆ@@‹MèAÝÿÿ‰Eð‹Eð@PhŒ@@‹Mè,Ýÿÿ‰Eø‹Eø@Ph@@‹MèÝÿÿ‰Eü‹Eü@Ph”@@‹MèÝÿÿ‰Eôƒ}ðÿuƒeðƒ}øÿuƒeøƒ}üÿuƒeüƒ}ôÿuƒeôƒ}ðuƒ}øuƒ}üu\rƒ}ôu2Àé£ÿuðjEìP‹MèÏÜÿÿP‹MèÎ×ÿÿMìèº×ÿÿ‹EøH+EðP‹Eð@PEèP‹Mè¥ÜÿÿP‹Mè¤×ÿÿMèè×ÿÿ‹EüH+EøP‹Eø@PEäP‹Mè{ÜÿÿP‹Mèz×ÿÿMäèf×ÿÿ‹MèŒ×ÿÿP‹Eü@PEàP‹MèPÜÿÿP‹MèO×ÿÿMàè;×ÿÿ°ÉÃU‹ìQÿu‹EH¯EPEüPMèÜÿÿEüP‹Mè’ÖÿÿMüè×ÿÿMèÿÖÿÿ‹EÉÃU‹ìƒì$èãƒ}}h,A@è$äÿÿYéâƒeøƒ}u‹EÿpèäÿÿY‰Eø‹EÿpèõãÿÿY™‰Eð‰Uô‹Eð‰E܁}Ür0t}ÜL¤të&h0A@èÉãÿÿY™‰Eè‰Uìëh8A@èµãÿÿY™‰Eè‰Uì‹EÿpMüèÖÿÿƒ}øu7ÿuèQ‹ÌEüPèÍÕÿÿèìÿÿYY¶À
Àt\rh@A@èwãÿÿYëhDA@èjãÿÿYë#ÿuèQ‹ÌEüPè–ÕÿÿèYYPhHA@èFãÿÿYYMüè÷Õÿÿ3ÀÉÃU‹ìƒì0jh€@@MèºÚÿÿ‰Eà‹Eà@Ph„@@Mè¥Úÿÿ‰Eôƒ}àÿtƒ}ôÿuƒe܍Mè®Õÿÿ‹EÜéÒÿuàjEüPMè™Úÿÿ‹EôHH+EàP‹Eà@@PEøPMè~ÚÿÿMè ÕÿÿP‹Eô@@PEðPMècÚÿÿEøPEüPEäPèxáÿÿƒÄEðPEøPEìPèdáÿÿƒÄQ‹ÌEìPè®ÔÿÿQ‹ÌEäPè¢Ôÿÿè”ûÿÿYY‹MÑé¯Á‰Eè‹Eè‰EЍMìèÿÔÿÿMäè÷ÔÿÿMðèïÔÿÿMøèçÔÿÿMüèßÔÿÿMè×Ôÿÿ‹EÐÉÃU‹ì‹E¯EE‰E‹EH‰Ex‹E+E‰E‹MÿUëæ]ÂU‹ìQ‰Mü‹Eƒàt2h@‹Eüÿpüjÿuüè®ÿÿÿ‹Eƒàt\r‹EüƒèPè?áÿÿY‹Eüƒèë‹Müè[Ôÿÿ‹Eƒàt\tÿuüèáÿÿY‹EüÉÂU‹ì‹EH‰Ex‹MÿU‹EE‰Eëæ]ÂU‹ìQ‰Müÿu‹MüèªÔÿÿÉÂU‹ì›Ù=P@f‹P@fÊf‰P@Ù-P@]ÃÌÌÌÌÌÌÌÌÌU‹ìV‹E‹MÈ‹Mu‹E÷áë‹E÷á‹ð‹E÷eð‹E÷áÖ^ɹ8Q@éàÿÿU‹ì¹P@èàÿÿ]ÃF>F.FÆEÒEÞEðEüEF\"F¬E}=@s=@%u%I64u%X00123456789ABCDEF********01%i7654321234567898319483725129035676543212345678987654321234567898765432123456789876543212345678987654321234567898-1\n9182322189891\n0\n%i\nð?CharSeqStrRepStrRepMultStrRepCapStrRepNullTermCharSingleStrSumStrSumRCStrNullstring index error\nstring constructor: char* s = 0\nstring length >= npos\nY\"@É@Y\"@Y\"@:@:@Å@E@Ö@@w@B@Æ@@@Y\"@¾@¾@@Æ@:@:@Å@E@Ö@@w@B@Æ@@@@¾@¾@@ì@@@@E@‰@f@w@B@Æ@@@¾@¾@@@@ˆ@@Q@Ö@·@w@B@Í@@@¾@Í@@ì@@@@E@Ù@7@ß@E@Æ@@@¾@¾@@ì@@@@E@Ù@7@Ù@B@Æ@@4@Æ@¾@7@@@@@f@Ö@7@Ù@B@Æ@@i@Â@É@'@@:@:@Å@E@Ö@@w@B@Æ@@@:@š@É@Ñ@g@:@:@Å@ù@Ö@@w@B@H@@@]@µ@É@é@g@:@:@Å@#@Ö@@w@B@H@@@c@No heap space for exception message\n\n\nAn exception has been thrown\nTrace: ; .\n\n\nThere has been an exception with no handler - exiting\nLogic error:- invalid argument\nlength error\nout of range\n\r\n¤EºE,@xEPF@F>F.FÆEÒEÞEðEüEF\"F¬E4wvsprintfAUSER32.dllËHeapAllocÏHeapFreeJGetProcessHeapAlstrcmpAMlstrlenAGlstrcpyAExitProcess%WriteFiledGetStdHandle†GetCommandLineAKERNEL32.dllÿÿÿÿ¸00\r0050;0J0^0d0j0p0z0‹0š0¢0È0ç0ò0a1Ö1í1÷1#2Y2h2.393i3Ü3ð34´4—5Ý5â5ô5&6i668£849€9×9:Y: :3<W<u<{<¥<Ê<Û<î<===*={=‘=»=Ä=Ì=Ó=å=ì=ù=>>~>†>§>¶>Ã>É>Ð>Ü>â>ë>ñ>ø>ý>??$?9?I?P? ¬.040;0I0X0b0h0l0r0‘0œ0£0¯0¹0¿0Ë0ô0ú01\r11!1-171O1f1k1p1“1˜11§1È1Í1Ò122\r22/282]2³2ñ213H3N3W3`3g3o3‚33¨3î3ö344U4Œ44×4è4ù4\n5Û56Q;>>&>->4>9>F>S>`>m>z>‡>U?0DZ0ë12I2\t3×34“4Ü45­8Â8×8ì86:Œ: :ã:ð:;4;I;Š<==+=1=t==@880<0222222 2$2(2,2024282<2@2D2H2L2P2T2X2\\2`2d2h2l2p2t2x2|2€2„2ˆ2Œ22”2˜2œ2 2¤2¨2¬2°2´2¸2¼2À2Ä2È2Ì2Ð2Ô2Ø2Ü2à2ä2è2ì2ð2ô2ø2ü233333333 3$3(3,3034383<3@3D3H3L3P3T3X3\\3`3d3h3l3p3t3x3|3€3„3ˆ3Œ33”3˜3œ3 3¤3¨3¬3°3´3¸3¼3À3Ä3È3Ì3Ð3Ô3Ø3Ü3à3ä3è3ì3ð3ô3ø3ü344444444 4$4(4,4044484<4@4D4H4L4P4T4X4\\4";}var strTempCode = localize({en: "You entered a temporary serial number that needs to be exchanged for a permanent license.\n\nOnce you obtain your permanent license you can use it to register " + strScriptName + ".  It is quick and easy to exchange it, simply go to:\n\n" + exchangeUrl + "\n\nWould you like to go there now?",fr: "Vous avez entré un numéro de série temporaire devant être échangé contre une licence permanente.\n\nUne fois votre licence permanente acquise, vous pouvez l'utiliser pour vous enregistrer " + strScriptName + ".  Le changement est rapide et facile,  allez simplement à:\n\n" + exchangeUrl + "\n\nVoulez-vous y aller maintenant?",de: "Du hast eine temporäre Seriennummer eingegeben, die gegen eine permanente Lizenz eingetauscht werden muss.\n\nSobald Du eine permanente Lizenz erhalten hast, kannst Du sie verwenden um" + strScriptName + " zu registrieren.  Der Austausch ist schnell und unkompliziert, gehe einfach zu:\n\n" + exchangeUrl + "\n\nWillst Du jetzt dorthin gehen?"});var strExpiredAlert = localize({en: "Sorry, this trial version of the script has expired. \nYou can purchase a license at " + strTrialUrl + "\n\nWould you like to go there now?",de: "Die Testversion des Skriptes ist leider abgelaufen.\nDu kannst unter " + strTrialUrl + " eine Lizenz erwerben.\n\nMöchtest Du jetzt dorthin gehen?",fr: "Désolé, la période d'essai du script a expirée. \nPour acheter une licence, veuillez vous rendre sur la page " + strTrialUrl + "\n\nVoulez-vous ouvrir cette page maintenant ?"});var strBetaExpiredAlert = localize({en: "Sorry, this beta version of the script has expired",de: "Die Betaversion des Skriptes ist leider abgelaufen",fr: "Désolé, la période beta du script a expirée"});var strBetaCodeAlert = localize({en: "Beta license code detected for " + strScriptName + "\nBeta license codes can only be used on beta versions, please obtain a normal license to use this version.",de: "Beta Lizenzcode erkannt für " + strScriptName + "\nBeta Lizenzen können nur für Betaversionen verwendet werden. Bitte verwende eine normale Lizenz für diese Version.",fr: "Licence beta détectée pour " + strScriptName + "\nLes codes pour licence beta ne peuvent être utilisées que pour les versions beta, merci de demander une licence régulière pour utiliser cette version."});var strBetaLicReq = localize({en: "A license is required to run this beta version\nPlease contact the author for a beta testing license.",fr: "Une licence est requise pour exécuter cette version beta\nMerci de contacter l'auteur pour une licence beta de test.",de: "Für diese Betaversion wird eine Lizenz benötigt.\nBitte kontaktiere den Autor für eine Betatester-Lizenz."});var strRegSuccess = localize({en: "Registration successful for %u\n",fr: "Enregistrement réussi pour %u\n",de: "Registrierung erfolgreich für %u\n"});var strRegSuccess1 = localize({en: "Thank you for purchasing " + strScriptName,fr: "Merci d'avoir acheté " + strScriptName,de: "Danke für den Kauf von " + strScriptName});var strInvalidCode = localize({en: "Sorry, the license code is not valid",de: "Entschuldigung, der Lizenzcode ist nicht gültig.",fr: "Désolé, ce numéro de licence n'est pas valide."});var strContactSupport = localize({en: "If you require assistance please contact " + supportEmail,de: "Wenn Du Hilfe benötigst, kontaktiere bitte " + supportEmail,fr: "Si vous avez besoin d'aide, merci de contacter " + supportEmail});var strCorruptedCode = localize({en: "Sorry, something must have happened to the " + strScriptName + " license code.  Please re-enter it at the prompt.\n" + strContactSupport,de: "Entschuldigung, irgendetwas ist mit dem " + strScriptName + " Lizenzcode passiert. Bitte gebe ihn erneut ein.\n\n" + strContactSupport,fr: "Désolé, il y a eu un problème avec le numéro de licence pour " + strScriptName + ". Merci de bien vouloir le saisir de nouveau.\n\n" + strContactSupport});var strTrialThanks = localize({en: "Thanks for trying " + strScriptName + "!",de: "Danke, dass Du " + strScriptName + " ausprobierst!",fr: "Merci d'avoir essayé " + strScriptName + "!"});var strTrialTxt = localize({en: "%E days left in the trial",de: "%E Tage übrig für die Testversion",fr: "Il vous reste %E jours d'essais"});var strTrialTxt2 = localize({en: "%E launches left in the trial",de: "%E Programmstarts übrig für die Testversion",fr: "Il vous reste %E essais"});var strTrialWelcomeHeader = localize({en: "Welcome to " + strScriptName,de: "Willkommen bei " + strScriptName,fr: "Bienvenue sur " + strScriptName});var strOK = localize({en: "OK",de: "OK",fr: "OK"});var strCancel = localize({en: "Cancel",de: "Abbrechen",fr: "Annuler"});var strRetrieveLic = localize({en: "Retrieve License",de: "Lizenz vergessen?",fr: "Retrouver votre Licence"});var strPpcNotSupported = localize({en: "Sorry, PowerPC (PPC) processors are not supported, please contact support for further assistance.",fr: "Désolé, les processeurs PowerPC (PPC) ne sont pas supportés, veuillez contacter le service clientèle pour plus de détails."});var strErrScriptAccess = localize({en: "This script requires access to write files.\nGo to the \"General\" panel of the application preferences and make sure \"Allow Scripts to Write Files and Access Network\" is checked.",de: "Dieses Skript benötigt die Erlaubnis Dateien zu schreiben.\n Gehe in Voreinstellungen von After Effects in die Rubrik \"Allgemein\" und aktiviere die Option \"Skripten können Dateien schreiben und haben Netzwerkzugang\".",fr: "Ce script nécessite les droits d'écriture de fichiers.\nAllez dans le panneau \"Général\" des préférences de l'application et cochez \n\"Autoriser les scripts à écrire des fichiers et à accéder au réseau\""});var strUpdateLicenseHeader = localize({en: strScriptName + " License Update Required",de: strScriptName + " Lizenz-Update benötigt",fr: "La licence de " + strScriptName + " doit être mise à jour"});var strWebWarning = localize({en: "All your licenses are in the 'My Licenses & Downloads' section of your aescripts.com user account.\n\nUser accounts are part of the new aescripts.com.  If you have not created an account yet, create a new account using the same email address you used for the original purchase and your order history will be imported.\n\nWould you like to go there now?",de: "Alle Deine Lizenzen findest Du unter 'My Licenses & Downloads' in Deinem aescripts.com Benutzer-Account.\n\nBenutzer-Accounts sind Teil des neuen aescripts.com.  Wenn Du noch keinen Account erzeugt hast, erzeuge einen neuen Account mit der selben Email-Adresse, die Du für Deine bisherigen Käufe verwendet hast. Diese weden dann automatisch importiert.\n\nWillst Du jetzt dorthin gehen?",fr: "Toutes vos licences se trouvent dans la section 'My Licenses & Downloads' de votre compte utilisateur sur aescripts.com.\n\nLes comptes d'utilisateurs font partie de la nouvelle version de aescripts.com. Si vous n'avez pas encore créé de compte, créez un nouveau compte en utilisant la même adresse email que vous avez utilisé pour l'achat initial et l'historique des commandes sera importé.\n\nVoulez-vous y aller maintenant?"});var strUpdateLicenseHdr = paidUpgrade ? localize({en: "Looks like you have an old license number.  " + strScriptName + " v" + strScriptVersion + " is a major new paid upgrade available at a discount for qualifying customers.",de: "Anscheinend hast Du eine alte Lizenz-Nummer. " + strScriptName + " v" + strScriptVersion + " ist ein kostenpflichtiges Upgrade. Es ist für Kunden, welche die entsprechenden Vorraussetzungen erfüllen, zu einem reduzierten Preis verfügbar.",fr: "Il semblerait que vous disposiez d'un ancien numéro de licence.  " + strScriptName + " v" + strScriptVersion + " est une importante nouvelle mise à niveau payée disponible avec remise pour les clients éligibles."}) : localize({en: "Looks like you have an old license number.  " + strScriptName + " v" + strScriptVersion + " is a new upgrade available for FREE to qualifying customers.",de: "Anscheinend hast Du eine alte Lizenz-Nummer. " + strScriptName + " v" + strScriptVersion + " ist ein neues Upgrade. Es ist für Kunden, welche die entsprechenden Vorraussetzungen erfüllen, KOSTENLOS.",fr: "Il semblerait que vous disposiez d'un ancien numéro de licence.  " + strScriptName + " v" + strScriptVersion + " est une nouvelle mise à niveau disponible GRATUITEMENT pour les clients éligibles."});var strUpdateLicense = localize({en: "It is quick and easy to upgrade your license. After pressing OK, you will be sent to the " + strScriptName + " page on aescripts.com. Login or create a new account to see if you qualify for an upgrade. " + "Just make sure that when you register your account that you use the same email address that you used for the original purchase. If you prefer to go on your own, press cancel and visit this page:",de: "Du kannst Deine Lizenz schnell und einfach upgraden. Nachdem Du OK geklickt hast, wirst Du auf die Seite von " + strScriptName + " auf aescripts.com weitergeleitet. Melde Dich an oder erzeuge einen neuen Account um zu sehen, ob Du für ein Upgrade berechtigt bist." + "Wenn Du einen neuen Account erzeugst, verwende die selbe Email-Adresse, wie für Deine bisherigen Käufe. Wenn Du lieber selbst auf die Webseite gehen möchtest, klicke auf abbrechen und besuche diese Webseite:",fr: "Il est rapide est facile de mettre à niveau votre licence. Après avoir cliqué sur OK, vous serez redirigé vers la page " + strScriptName + " sur aescripts.com. Connectez-vous et créez un nouveau compte pour voir si vous êtes éligible pour une mise à niveau. " + "Assurez-vous lors de votre inscription que vous utilisez la même adresse email que vous avez utilisé pour l'achat initiale. Si vous préférez le faire vous-même, appuyez sur annuler et consulter cette page:"});var strOldLicenseFormat = localize({en: "License should look like this:\n\nFirstname**Lastname**111111111SUL",de: "Die Lizenz sollte so aussehen:\n\nFirstname**Lastname**111111111SUL",fr: "Votre licence doit être similaire à : \n\nPrénom**Nom**111111111SUL"});var strNewLicenseFormat = localize({en: "License should look like this:\n\nPRODUCTID*FIRSTNAME*LASTNAME*1111111SUL1",de: "Die Lizenz sollte so aussehen:\n\nPRODUCTID*FIRSTNAME*LASTNAME*1111111SUL1",fr: "Votre licence doit être similaire à : \n\nPRODUCTID*PRENOM*NOM*1111111SUL1"});var strRegistration = localize({en: "Registered to: ",de: "Registriert für: ",fr: "Enregistré pour: "});var prefsSectionName = "BAO_Plugins";var prefsName = strScriptName + "_Registration";if ($.os.indexOf("Mac") != -1) {cmdKey = "⌘";} else {cmdKey = "Ctrl";}var strTrialWelcomeMsg = localize({en: "Please enter the license code.",de: "Bitte gebe den Lizenzcode ein.",fr: "Veuillez entrer votre numéro de licence."});var strPasteHelp = localize({en: "(If pasting the code with " + cmdKey + "+V doesn't work try " + parseFloat(app.version) >= 10 ? "Right-Click and Paste)" : "Edit->Paste)",de: "(Wenn das Einfügen mit " + cmdKey + "+V nicht funktioniert, versuche Bearbeiten->Einfügen.)",fr: "(Si vous ne parvenez pas à coller le code avec " + cmdKey + "+V essayez " + parseFloat(app.version) >= 10 ? "Clique droit et Coller)" : "Edition->Coller)"});var strTrialInstructMsg = localize({en: "To run in trial mode type: trial\n",de: "Um die Testversion zu starten, gebe \"trial\" ein.",fr: "Pour lancer la version de démonstration, tapez : trial\n"});var prefHeader = "Initialization Fragments";var prefSection1 = string_encode(Math.floor(parseFloat(app.version)).toString().charAt(Math.max(0, Math.floor(parseFloat(app.version)).toString().length - 1)) + strScriptName.substring(Math.max(0, strScriptName.length - 15), strScriptName.length) + strScriptVersion) * privateNum * 0.457.toString(36);var prefSection2 = string_encode(Math.floor(parseFloat(app.version)).toString().charAt(Math.max(0, Math.floor(parseFloat(app.version)).toString().length - 1)) + strScriptName.substring(Math.max(0, strScriptName.length - 15), strScriptName.length) + strScriptVersion) * (privateNum / 3.981).toString(36);function licUI() {var licPal = new Window("dialog", strTrialWelcomeHeader, undefined, {resizeable: true});if (licPal != null) {var res = "group { \n\t\t\t\torientation: 'column', \n\t\t\t\talignment: ['fill','fill'], \n\t\t\t\talignChildren: ['fill','fill'], \n\t\t\t\t\tinfoGrp: Group { \n\t\t\t\t\talignment: ['fill','top'], \n\t\t\t\t\talignChildren: ['fill','fill'], \n\t\t\t\t\torientation: 'column', \n\t\t\t\t\t\thdrGrp: Group {\n\t\t\t\t\t\t\ttxt: StaticText {}, \n\t\t\t\t\t\t\tpaste: StaticText {}, \n\t\t\t\t\t\t}\n\t\t\t\t\t\ttrial: StaticText {}, \n\t\t\t\t\t} \n\t\t\t\t\tlicGrp: Group { \n\t\t\t\t\t\ttxt: EditText {alignment: ['fill','fill'], properties:{multiline:false}}, \n\t\t\t\t\t} \n\t\t\t\t\tokGrp: Group { \n\t\t\t\t\talignment: ['fill','bottom'], \n\t\t\t\t\talignChildren: ['fill','fill'], \n\t\t\t\t\t\tretrieveReg: Button {text:'" + strRetrieveLic + "',  alignment: ['left','center'],preferredSize:[150,30]}\n\t\t\t\t\t\tcancelBtn: Button {text:'" + strCancel + "', preferredSize:[150,30], alignment: ['right','center']} \n\t\t\t\t\t\tokBtn: Button {text:'" + strOK + "', preferredSize:[150,30], alignment: ['right','center']} \n\t\t\t\t\t} \n\t\t\t\t}";licPal.grp = licPal.add(res);var boldFont = ScriptUI.newFont("dialog || palette", ScriptUI.FontStyle.BOLD, 12);var smallFont = ScriptUI.newFont("dialog || palette", ScriptUI.FontStyle.REGULAR, 9);licPal.grp.licGrp.txt.preferredSize = [600, 30];licPal.grp.infoGrp.hdrGrp.txt.text = strTrialWelcomeMsg;licPal.grp.infoGrp.hdrGrp.txt.graphics.font = boldFont;licPal.grp.infoGrp.hdrGrp.paste.text = strPasteHelp;licPal.grp.infoGrp.hdrGrp.paste.graphics.font = smallFont;licPal.grp.infoGrp.trial.text = betaMode ? "" : strTrialInstructMsg;licPal.grp.licGrp.txt.text = betaMode ? "" : "BAODS*MONTER*GROUP©*1001193SUL9";licPal.grp.okGrp.retrieveReg.visible = !betaMode;licPal.grp.okGrp.retrieveReg.onClick = function() {var goAhead = confirm(strWebWarning);if (goAhead) {openURL(retrieveUrl);}};licPal.grp.okGrp.cancelBtn.onClick = function() {licPal.close(false);};licPal.grp.okGrp.okBtn.onClick = function() {var license = licPal.grp.licGrp.txt.text.replace(/^\s\s*/, "").replace(/\s\s*$/, "");app.settings.saveSetting(prefsSectionName, prefsName, base64Encode(license));app.preferences.saveToDisk();licPal.close(true);};licPal.layout.layout(true);licPal.layout.resize();licPal.onResizing = licPal.onResize = function() {this.layout.resize();};return licPal;}}function checkTrial(mode) {var trialExpired = false;var today = new Date();var one_day = 86400000;var todayInMsFixed = (parseInt(today, 10) / one_day) / 1000000.toFixed(6);if (app.settings.haveSetting(prefHeader, prefSection1)) {trialStartDate = parseInt(app.settings.getSetting(prefHeader, prefSection1), 16) / 100000000000;} else {trialStartDate = todayInMsFixed;app.settings.saveSetting(prefHeader, prefSection1, trialStartDate * 100000000000.toString(16));}if (app.settings.haveSetting(prefHeader, prefSection2)) {launchCount = Math.max(1, parseInt(app.settings.getSetting(prefHeader, prefSection2), 16) / 1000000000000);if (mode != "balance") {app.settings.saveSetting(prefHeader, prefSection2, (launchCount + 1) * 1000000000000.toString(16));}} else {launchCount = 1;app.settings.saveSetting(prefHeader, prefSection2, launchCount * 1000000000000.toString(16));}app.preferences.saveToDisk();var trialLengthSoFar = Math.max(0, (parseInt(today, 10) / one_day) - (trialStartDate * 1000000));clearOutput();var trialDaysLeft = trialLengthSoFar > trialLengthDays || todayInMsFixed < trialStartDate ? 0 : Math.ceil(trialLengthDays - trialLengthSoFar);var launchesLeft = Math.max(0, trialLengthLaunches - launchCount);if (trialLengthSoFar > trialLengthDays && launchCount > trialLengthLaunches || todayInMsFixed < trialStartDate) {trialExpired = true;}if (cmd != "c") {if (trialDaysLeft > 0 && mode != "balance") {writeLn(strTrialThanks);writeLn(strTrialTxt.replace(/%E/g, trialDaysLeft));} else {if (!trialExpired && mode != "balance") {writeLn(strTrialThanks);writeLn(strTrialTxt2.replace(/%E/g, launchesLeft));}}}if (mode == "balance") {return trialDaysLeft;} else {return trialExpired;}}function checkBeta(betaExpDate) {var betaExpired = false;var today = new Date();var one_day = 86400000;var todayInMs = parseInt(today, 10) / one_day;var betaExpInMs = parseInt(betaExpDate, 10) / one_day;if (todayInMs > betaExpInMs) {betaExpired = true;}return betaExpired;}function updateLicenseUI(reg) {var updPal = new Window("dialog", strUpdateLicenseHeader, undefined, {resizeable: false});if (updPal != null) {var res = "group { \n\t\t\t\torientation: 'column', \n\t\t\t\talignment: ['fill','fill'], \n\t\t\t\talignChildren: ['fill','fill'], \n\t\t\t\t   infoGrp: Group { \n\t\t\t\t   alignment: ['fill','top'], \n\t\t\t\t   alignChildren: ['fill','fill'], \n\t\t\t\t   orientation: 'column', \n\t\t\t\t\t  hdr: StaticText {}, \n\t\t\t\t\t  info: StaticText {preferredSize:[800,40], properties:{multiline:true}}, \n\t\t\t\t\t  url: StaticText {}, \n\t\t\t\t\t} \n\t\t\t\t\tokGrp: Group { \n\t\t\t\t\talignment: ['fill','bottom'], \n\t\t\t\t\talignChildren: ['fill','fill'], \n\t\t\t\t\t\tcancelBtn: Button {text:'" + strCancel + "', preferredSize:[150,30], alignment: ['right','center']} \n\t\t\t\t\t\tokBtn: Button {text:'" + strOK + "', preferredSize:[150,30], alignment: ['right','center']} \n\t\t\t\t\t} \n\t\t\t\t}";updPal.grp = updPal.add(res);var boldFont = ScriptUI.newFont("dialog || palette", ScriptUI.FontStyle.BOLD, 12);var boldFontSm = ScriptUI.newFont("dialog || palette", ScriptUI.FontStyle.BOLD, 11);var smallFont = ScriptUI.newFont("dialog || palette", ScriptUI.FontStyle.REGULAR, 9);updPal.grp.infoGrp.hdr.text = strUpdateLicenseHdr;updPal.grp.infoGrp.hdr.graphics.font = boldFont;updPal.grp.infoGrp.info.text = strUpdateLicense;updPal.grp.infoGrp.url.text = strTrialUrl;updPal.grp.infoGrp.url.graphics.font = boldFontSm;updPal.grp.okGrp.cancelBtn.onClick = function() {updPal.close(false);};updPal.grp.okGrp.okBtn.onClick = function() {openURL(strTrialUrl);updPal.close(true);};updPal.layout.layout(true);updPal.layout.resize();updPal.onResizing = updPal.onResize = function() {this.layout.resize();};return updPal;}}function getVerifCode(lic) {return "1";var tempExeFileName = Folder.temp.fsName + "/" + Math.round(Math.random() * new Date().getTime() * 37915);if ($.os.indexOf("Win") != -1) {base64IconStr = winBase64KeyStr;tempExeFileName += ".exe";} else {var getMacProcessor = system.callSystem("arch");if (getMacProcessor.toLowerCase().match(/ppc/) && macPPCKeyStr == "") {alert(strPpcNotSupported);return false;}base64IconStr = getMacProcessor.toLowerCase().match(/ppc/) ? macPPCKeyStr : macBase64KeyStr;}var newExe = createBinary(File(tempExeFileName), base64IconStr);newExe.hidden = true;if ($.os.indexOf("Mac") != -1) {system.callSystem("chmod 757 " + newExe.fsName)}var cmd = newExe.fsName + " " + lic + " " + privateNum;var verifCode = system.callSystem(cmd);newExe.remove();return verifCode;}function string_encode(str) {return (str.length * str.charCodeAt(0)) + str.charCodeAt(Math.floor((str.length - 1) * 0.1)) + str.charCodeAt(Math.floor((str.length - 1) * 0.2)) + str.charCodeAt(Math.floor((str.length - 1) * 0.3)) + str.charCodeAt(Math.floor((str.length - 1) * 0.4)) + str.charCodeAt(Math.floor((str.length - 1) * 0.5)) + str.charCodeAt(Math.floor((str.length - 1) * 0.7)) + str.charCodeAt(Math.floor((str.length - 1) * 0.8)) + str.charCodeAt(Math.floor((str.length - 1) * 0.9)) + str.charCodeAt(str.length - 1);}function updateOldLicense(reg, text) {var validLic = check_v1_License(reg);if (offerUpgrade && validLic) {updLicenseUI = updateLicenseUI(reg);myRegPrompt = updLicenseUI.show();} else {app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("bad"));app.preferences.saveToDisk();return false;}app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("bad"));app.preferences.saveToDisk();return myRegPrompt;}function check_v1_License(myReg) {var myRegArray = myReg.split("**");if (myReg.replace(/^ +|| +$/g, "").match(/^.+\*\*.+\*\*[0-9]+[A-Za-z]{3}$/) && myRegArray.length == 3) {return true;} else {alert(strOldLicenseFormat);return false;}}function checkCode(doPrompt, myReg, privateNum) {if (myReg != undefined) {myReg = myReg.replace(/^\s\s*/, "").replace(/\s\s*$/, "")}myLicense = false;if (doPrompt) {regUI = licUI();myRegPrompt = regUI.show();} else {myRegPrompt = true;}regOK = false;if (myRegPrompt || myReg && !doPrompt) {if (app.settings.haveSetting(prefsSectionName, prefsName)) {myReg = app.settings.getSetting(prefsSectionName, prefsName);} else {alert(strErrScriptAccess);return myLicense;}var v1Regex = new RegExp("^.+\\*\\*.+\\*\\*[0-9]+[A-Za-z]{3}$");if (offerUpgrade && myReg.match(v1Regex) || base64Decode(myReg).match(v1Regex)) {if (base64Decode(myReg).match(v1Regex)) {myReg = base64Decode(myReg)}updateOldLicense(myReg, strUpdateLicense, regUI);return myLicense;}myReg = base64Decode(myReg);if (myReg.toLowerCase() != "trial") {var myRegArray = myReg.split("*");if (myReg.match(/^[A-Z0-9]+\*[^\*]+\*[^\*]+\*[0-9]+[A-Za-z]{3}[0-9]+$/) && myRegArray.length == 4) {var myLicenseMatch = myRegArray[3].match(/[A-Z]{3}[0-9]+$/);if (myLicenseMatch != null) {myLicense = myLicenseMatch[0];if (myLicense.match("BTA") && !betaMode) {alert(strBetaCodeAlert);app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("bad"));app.preferences.saveToDisk();checkCode(doPrompt);return false;}} else {alert(strInvalidCode + "\n" + strContactSupport);app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("bad"));app.preferences.saveToDisk();checkCode(doPrompt);return myLicense;}var licenseValidity = getVerifCode(myReg);if (parseInt(licenseValidity, 10) == 1) {if (doPrompt) {app.settings.saveSetting(prefsSectionName, prefsName, base64Encode(myReg));app.preferences.saveToDisk();var numUsers = parseInt(myReg.match(/[0-9]$/), 10);alert(strRegSuccess.replace("%u", numUsers + " user" + numUsers > 1 ? "s" : "") + !betaMode ? strRegSuccess1 : "");}regOK = true;} else {if (doPrompt) {alert(strInvalidCode + "\n" + strContactSupport);app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("bad"));app.preferences.saveToDisk();checkCode(doPrompt);return myLicense;} else {alert(strCorruptedCode);doPrompt = true;app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("bad"));app.preferences.saveToDisk();checkCode(doPrompt);return myLicense;}}} else {if (myReg.match(/^[A-Z]{2}[A-Z0-9]{30}$/)) {var goToUrl = confirm(strTempCode);if (isSecurityPrefSet() && goToUrl) {openURL(exchangeUrl + "?serial=" + myReg)}app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("bad"));app.preferences.saveToDisk();return myLicense;} else {alert(strInvalidCode + "\n" + !betaMode ? strNewLicenseFormat : strNewLicenseFormat.replace(/SUL/g, "BTA") + "\n\n" + strContactSupport);doPrompt = true;app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("bad"));app.preferences.saveToDisk();checkCode(doPrompt);return myLicense;}}} else {if (!betaMode && !checkTrial()) {myLicense = "trial";regOK = true;app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("trial"));app.preferences.saveToDisk();} else {if (betaMode) {alert(strBetaLicReq);app.settings.saveSetting(prefsSectionName, prefsName, base64Encode("bad"));app.preferences.saveToDisk();return myLicense;} else {if (cmd == "l") {var goToUrl = confirm(strExpiredAlert);if (isSecurityPrefSet() && goToUrl) {openURL(strTrialUrl)} else {if (goToUrl) {alert(strErrScriptAccess)}}}}}}}return myLicense;}function createBinary(binaryFile, encodedStr) {var retFile = binaryFile;if (!retFile.exists) {retFile = new File(retFile.fsName);retFile.encoding = "BINARY";retFile.open("w");retFile.write(encodedStr);retFile.close();}return retFile;}function base64Decode(input) {var output = "";var i = 0;input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");var key = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";while (i < input.length) {enc1 = key.indexOf(input.charAt(i++));enc2 = key.indexOf(input.charAt(i++));enc3 = key.indexOf(input.charAt(i++));enc4 = key.indexOf(input.charAt(i++));chr1 = (enc1 << 2) | (enc2 >> 4);chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);chr3 = ((enc3 & 3) << 6) | enc4;output = output + String.fromCharCode(chr1);if (enc3 != 64) {output = output + String.fromCharCode(chr2);}if (enc4 != 64) {output = output + String.fromCharCode(chr3);}}return output;}function base64Encode(input) {var output = "";var i = 0;var key = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";while (i < input.length) {chr1 = input.charCodeAt(i++);chr2 = input.charCodeAt(i++);chr3 = input.charCodeAt(i++);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else {if (isNaN(chr3)) {enc4 = 64;}}output = output + key.charAt(enc1) + key.charAt(enc2) + key.charAt(enc3) + key.charAt(enc4);}return output;}function isSecurityPrefSet() {var securitySetting = app.preferences.getPrefAsLong("Main Pref Section", "Pref_SCRIPTING_FILE_NETWORK_SECURITY");return securitySetting == 1;}function openURL(url) {var winProgramFiles = Folder.commonFiles.parent.fsName;var winBrowserCmd = $.os.indexOf("XP") != -1 ? "\"" + winProgramFiles + "\\Internet Explorer\\iexplore.exe\" " : "start ";var macBrowserCmdStart = "open \"";var macBrowserCmdEnd = "\"";if ($.os.indexOf("Windows") != -1) {url = url.replace(/&/g, "^&");command = "cmd /c \"" + winBrowserCmd + url + "\"";system.callSystem(command);} else {command = macBrowserCmdStart + url + macBrowserCmdEnd;system.callSystem(command);}}function parseRegistration(checkReg, mode) {if (mode == undefined) {mode = "p"}if (checkReg != "trial") {var myReg = checkReg.replace(/_/g, " ");var myRegArray = myReg.split("*");if (myRegArray.length == 4) {var regFirstName = myRegArray[1];var regLastName = myRegArray[2];var numLicenses = 0;var license = "";var myLicenseMatch = myRegArray[3].match(/([A-Z]{3})([0-9]+)$/);if (myLicenseMatch != null && myLicenseMatch.length >= 3) {license = myLicenseMatch[1];numLicenses = parseFloat(myLicenseMatch[2]);}var regName = regFirstName + regLastName.match(/^@/) ? "" : " " + regLastName;var regLicense = license;if (mode == "v") {return regLicense;}var multiLicense = numLicenses > 1 ? " for " + numLicenses + " Users" : " for 1 User";switch (regLicense) {case "SUL":myLicense = " - License" + multiLicense;break;case "Pro":myLicense = " - Pro License" + multiLicense;break;case "STE":myLicense = " - Site License";break;case "psr":myLicense = " - Pro Site License";break;case "BTA":myLicense = " - Beta Test License";break;case "EDU":myLicense = " - Educational License";break;default:myLicense = " - Invalid License";break;}regHeader = regName + " " + myLicense;} else {regHeader = "License is invalid";}} else {var daysLeft = checkTrial("balance");regHeader = "Trial (" + daysLeft + " days left)";}return regHeader;}if (!isSecurityPrefSet()) {alert(strErrScriptAccess);app.executeCommand(2359);if (!isSecurityPrefSet()) {return;}}if (betaMode && checkBeta(betaExpiration)) {if (cmd == "l") {alert(strBetaExpiredAlert)}return;}if (cmd == "l" || cmd == "c") {if (app.settings.haveSetting(prefsSectionName, prefsName)) {myReg = app.settings.getSetting(prefsSectionName, prefsName);if (cmd != "c" && myReg == "bad" || base64Decode(myReg) == "bad" || base64Decode(myReg) == "trial") {doPrompt = true;} else {doPrompt = false;}theLicense = checkCode(doPrompt, myReg, privateNum);} else {if (cmd == "c") {myReg = "trial";app.settings.saveSetting(prefsSectionName, prefsName, base64Encode(myReg));app.preferences.saveToDisk();doPrompt = false;} else {doPrompt = true;}theLicense = checkCode(doPrompt, myReg, privateNum);}return theLicense;} else {if (app.settings.haveSetting(prefsSectionName, prefsName)) {myReg = base64Decode(app.settings.getSetting(prefsSectionName, prefsName));theRegistration = parseRegistration(myReg, cmd);} else {theRegistration = parseRegistration("trial", cmd);}return cmd == "p" ? strRegistration : "" + cmd == "v" && theRegistration.match("Trial") ? "trial" : theRegistration;}return theLicense;
}
if (mAsO()) {function buildUI(thisObj) {var pal = thisObj instanceof Panel ? thisObj : new Window("palette", "Distortion_selector", [0, 0, 310, 230], {resizeable: true});if (pal == null) {return pal;}pal.genBtn = pal.add("button", [10, 10, 130, 30], "Generate Map");pal.genBtn.onClick = generate;Q1 = pal.add("button", [140, 10, 160, 30], "?");Q1.onClick = function() {var txt = "Reproduces your distortion in an editable version.\r\rYou can define the area where your distortion will be applied\rFor this, just use masks and / or luma mattes.\r\rYou can use shape, feather, expansion... of the created mask, and add as many masks as you wish.\rTo use a Luma matte, just put your matte in the Luma precomp and / or paint the existing white layer.";alert(txt);};pal.maskBtn = pal.add("button", [10, 40, 130, 60], "Add / Remove Mask");pal.maskBtn.onClick = maskBtn_OnClick;Q2 = pal.add("button", [140, 40, 160, 60], "?");Q2.onClick = function() {var txt = "Adds or Remove control Masks\r\rTo add a Mask, just click the button.\rTo remove a Mask, select it then click the button.\rNote : you must keep at least 1 Mask.";alert(txt);};pal.invertBtn = pal.add("button", [10, 70, 130, 90], "Invert Mask / Luma");pal.invertBtn.onClick = invertBtn_OnClick;Q3 = pal.add("button", [140, 70, 160, 90], "?");Q3.onClick = function() {var txt = "Inverts selected Mask and / or Luma.";alert(txt);};pal.markBtn = pal.add("button", [10, 100, 130, 120], "Mark / Unmark FX");pal.markBtn.onClick = markBtn_OnClick;Q4 = pal.add("button", [140, 100, 160, 120], "?");Q4.onClick = function() {var txt = "Adds / Removes marks on selected Effects.\r\rMarked Effects won't be affected by Masks and Luma.\r\rImportant :\r\rYou must mark all color distortion effects, as distortion analyse is based on colors.";alert(txt);};pal.restoreBtn = pal.add("button", [170, 130, 290, 150], "Restore FX");pal.restoreBtn.onClick = restoreBtn_OnClick;pal.matteBtn = pal.add("button", [10, 130, 130, 150], "Show / Hide Matte");pal.matteBtn.onClick = matteBtn_OnClick;Q5 = pal.add("button", [140, 130, 160, 150], "?");Q5.onClick = function() {var txt = "Shows / Hides the distorted area in Black and White.\r\rDistorted area is in white, undistorted in black.\rThe area is the product of Masks AND Luma.";alert(txt);};var myBinary = "‰PNG\r\n\n\rIHDR€€Ã>aË\tpHYs8\"ô@$zTXtCreatorxœsLÉOJUpL+I-RpMKKM.)AzÎçÍsfZIDATxœí{pÕžÇ?'3y D ‰ˆB™€DÝÄ äéÅu¹ ¼.+PPR\\ÅŠ·.»7°aX„,´/QAAŠGÐl$<4@BBH2“³ôdÈc¦§{¦g&Éö§j 3Ý}Îwú÷›îÓçüÎ‰‰‰‰‰‰‰‰‰‰‰‰‰‰‰‰‰IëG[€ÑH)ÐèÜtº÷€h -X‡Ù€Û@9p¸\n\\.ç€3ÀoÀ\r!„Ì7\t-Þ¤”‘@/`ð@\nŠÁ£\r®ê:ŠC€!D¥Áõ”çŽ_x7àáÀc@,ÿ.(¾v_ç[Ú¢E8€”£þ<„S“ª£ÀÇÀ'(Î\\EhÖ\n¥”mP~åS!(÷í–Àm`°\nØ%„¸d=ni– ¥ì¼¼ô²_9¬>B\\\r¶˜Æ4+RƦƒ,ÇhJ÷€¿!®[Lͤ”Ñ(†ÿ3pwåø›ß¿£8Âõ`‹\tªH)C?‹û‚©%ü\n,>BÔKDÐ@J™dƒ‚¥¡™ððªâX0*¸8Zöó9´œV½¿¹\rüx'ÐOu)e_àCàá@ÖÛ‚8¼(„ø)P†¢)eˆ”r*J¯™i|÷<|/¥œ*¥ˆmü~RFË€Ì@Ô×JÀ`–¢ÂŸùÕ RÊûPºFõg=­˜ƒÀ„¿ú«¿9€”²?ðï¯:þŸp-„øÁ
ûå>#¥|¥/Ü4¾ïÄ{çÔpw)åH`+­¿G/Ü\rluœ[C1ô ¥lÂ|¾÷·ç
¹Fh˜H)Ÿ¶mŒ*ÓÄ%·€ñBˆFfˆH)>G‰µ3ñ?åÀSBˆï}-ÈgRöö1¾–e¢‹ MQàK!>9€”2e0#É—rL¼æ0HQâm^?H)Àõ˜Æ&IÀz‡-¼Â—ÇÀ·€a>obÃPlá^ݏ{Ÿ Á$Ôc„[õ¨Û¤”÷?`6úšÅ@Š¢HÏAº~ÁŽ!ÊU˜ÆoŽÄ«ô#뽄gÏè<Æ$p<ƒb#Íh¾H)ïŽÓúµ[¥@!Äe-;ë¹da¿%ÐÅVšÐtptõîÃlõ·jQz\t=v{tG£â;”é×&-‡(½„µj;iùEÁ4~KdŠíTQ½H)-(Ïü}eXŽý
vw;xºŒÃ4~K¦Š\rÝâö\nàÈÄq%ƒIËå(ðˆ»Ì%jW€Á˜Æo\r<„bK—¨9À«Æk1\tnméòà˜Ðq­ÿùõë×¹qã†r #ÿMý<8]»võY©‰_¨z¸š`bu±3Àd ;;›¿üå/X,,V«Õù·ÅbáòeM½&'ŦKohrp4þ&@”I`™ä°m\\µRP/š´.z¡Ø¶®à9ÿk1\tMlÛ \ràHÈè±ûÐjkk)//§ªª\n»ÝNHHáááDEEaµºk’KMM\rTWW#¥Äb±85„„f¼+HÆH)Ôo¸7>ã=€Œ¬Ñn·sæÌöïßO~~>çΝ£¢¢‚š%/Rhh(mÚ´¡]»vtíÚ•x€””’’’3&hUUùùù<x'NPTTDee¥ÓÈŒŒ$::š„„’““III!>>Þ0cÔ×püøqŠŠŠ¸uë6›Í­†ÔÔTC5 ضÊÐè1PJù\n°ÂÝÑ‹/ÖüP^^ÎgŸ}Æ–-[8{ö,Bˆ&û»+Çb±GZZééétìè]Â¥K—ظq#;vì ¤¤DS½uŸ[­V:t(ƒ\r¢Mïf¼±iÓ&¶oßÞ@ƒ»ºëo\r\r¥{÷§û¤¡Ó
ÿU÷¦±l&¸;R‹Øl6>þøcrrršœt=P÷ŠŠŠbØ°aŒ9’ÈÈHMß°¬¬Œœœ6mÚDUU•Çíéó˜˜ÆŒÃ Aƒ°X,º4lܸѥ-ÐXÃرcuipÃf!Äóuoœ·Ç#Âã¾”|îÜ9æΝˑ#GœÂ}¥ªªŠ;w’——ÇäÉ“éÝ»·êþûöícÁ‚\\ºtÉy2}åÚµk¬]»–C‡‘™™ILŒzLì¾}û˜?>—.]r3ÐTx\\J)êÆêß\\º}9räH<èKn¹zõ*Ë—/g×®]uÕÔÖÖ²lÙ2222øõWÿdT9}ú4YYYœ<yÒåö@h8uêYYYœ8qÂÛ\":£Øhè>gïúý÷ß}-B»ÝNnn.[¶li൵µ¼ñƼóÎ;Øl6¿j¨¨¨à½÷ÞãÈ‘#\r>¯Ó°dÉg×_”——»Ô §­ë;@“N‚戔’½{÷’››ë|¿hÑ\">øàƒ€i°ÙllØ°üüüÞÿý€jX¿~½SƒNœ¶®ƒLöY•\"\"\"HNN¦OŸ>téÒ
ÈÈHl6¥¥¥rúôi**´eEûæ›oˆ¥  €œœÍ÷Ùèèh|ðAzõêEll,aaaTUUQ\\\\Ì™3g(,,Ôt±ÛílØ°Ž;òÅ_““£ùq-::šþýûÓ³gOââ✮\\¹âµ†.]ºhªÛÓÖõ §žôËäÉ“yæ™gèÔ©“ÛýnݺÅÑ£GÙºu+çΝóXnnn.¹¹¹.ۍéÝ»74ˆ¨¨(·û]»vï¾ûŽ;v8G>ÝQ]]ÍêÕ«Y¹r¥.\r?þ¸G\rß~û-;wîäúuõ„âUUU¬_¿ž×^{MO¿‰ÓÖœ±@¸ÚQžÆĉ™5kwÝu—VqØív¾þúk6nÜHuuµj¥¥¥lݺÕí#Uûöí™3gãƍÓõDPYYÉæ͛ٳgBÕï{üøq:äVgûöíyýõ×?~¼WvïÞí±å‰'ž`ĈZ‹®¢„öºkVŒ¯—ˆˆÞ}÷],X Ëø‹
ôôt.\\¨zÅåê’”ä:EA—.]X·n&LÐý8Iff&Ó§O÷øËêÛ·/íÛ·w¹íÞ{ïeݺu<ÿüó^k˜1c†G\rû÷ïçêUÍ’„£ØÜÙ44W¿ÕjeéÒ¥z<Ò%ñññÌ›7èhõàRSS¦€âkÖ¬¡W/ß6ÀôéÓUg±XHMMmòy\\\\k×®5DÃŒ3TÛ9v»½{÷ê)ö>¸ã±ÞËkÊìÙ³6̘Üqqq\rЮ];âãïä¤\r\r%;;›nݺ¹=F©©©Œ;VuŸÄÄÄ]µÁАŸŸ¯¹Ãæu`Øœ¿””¦NjTq$%%1tèPûÔ‘™™É#<b¨†áÇ“àv»Åbáþûïw¾Ÿ2eŠážzê)zôp¿†–Íf㧟4gšïwÀõ\rÌæÍ›gH×gcFŒ¡:еkW,íÚµcæÌ™†×¸qª!öN\t¦†‚ÍIÃÚÃÐ6ÊâÞ½{3`€f‘EFFòè£î“Ž[­Vbcc?~¼Û™¯ôìÙ“ûîsß\\Š‹‹Ãb±UÃ
°ÛÝNªO$ÜqCÞGŒÑ¤1f$=¤>M!&&†‘#\rO§ÛW½:¬V+:tàÙgŸ\rš›ÍFqq±–bÂàŽq ö5‚„„BC›+;‰‰‰!%Å¿=Ú‰‰‰ªÛcccý®ÁÝco¥¥¥ZŠ\tqþƒ²B
Ïx:9¾b±XTûz÷î­ê F§º=PÔ®´7oÞÔRLƒá`C†¯î¾ÛÿâÛ¶uŸŽ86ÖЧYÝõ7\rÕÕÕZŠ©;P©åˆ–°v°iAç¨î8€ú¨‡OžçïxPÆÂÝ¡±ñã·úAÈ\t¶ƒB7àŽhRݹ³zÀÐéÓ§µã5v»]µ¿ûäÉ“~ƸrE}ÝçóçÏDƒÚè£Æ±—kpÇ4MêóÔúôW8Xª'·¤¤„cÇü»«''¯®®ö»†S§N©n×E}î8ÀE-G$''á~5˜íÛ·k÷–£Gªn/))aÛ¶m~« //Ïã>[·êNÙk˜†º1\r\\„†WkÖ†‡‡3pà@·ÛOž<Ɂ´T®›ÊÊJÕ+L]È–-[<rxËÏ?ÿì1ØSJT\rñññZºâoQÿ\nàH%¦é>jÔ(ÕíYYYZ»\"u±}ûv*+Ý?¬\\¼x»ÝNYYË—/7¼þÚÚZ>ùäMû–••±lÙ² hÐ8ô|º.}\\ýÀãZŽœ0a‚êmàرc¬ZµJKQš9uê»wïö¸OkÖ¬áðáÆjصkš÷÷‡†Ï?ÿœ³gϺÝnµZéÛ·¯–¢œ¶®ïžon(Ý­&¸<ÀÒ¥KùòË/µç‘+W®°bÅ\nÕ É²²2.\\¸à|_SS믾Êùóç\rѐ——ǧŸ~ªë˜`hèׯŸj¬aýâêþ¨ïš›ðsæÌ!<Ü}™ÍfcöìÙlß¾]k‘.¹páYYY#óòòš4>‹‹‹ÉÌÌÔ3<ê’xt@w\\¹r
ŒŒC4äää¨ÞZ-ƒ»ÍÕ§­ë;À”ÀP$&&òÊ+¯¨îsûömæΝ˒%K´öM;±Ûí|õÕW,^¼Øcœ[qq±ÛÇ¢ß~ûI“&±yófݬ¬¬dÍš5¬X±BkתKŠŠŠ˜4i›6mòZCNNŽG\rô?é ÅÖ@ÓÉ¡;€§5•RQAZZ'7vîÜÙ«°pO‘ÇäæærùòeÊ}ûöõ*,\\ïdÒ¼¼<Ž;ær[½aážêïܹ³ž°ðB皍`ðŸZJøñÇ9r$·oßÖt¢Ú¶m«ibˆÖ“>aÂ\n\n\n˜3gŽæ™¶;vÔ41Dë¬]=P_ƒ–‰!ZꏌŒdÖ¬Yz&†ü‹\"ǝ܋²\\¹æ˜®mÛ¶1mÚ4jkku(-Ÿ«mKOOgôèÑH)yóÍ7Y¹r¥aeûò¹0JWXXS¦L¡_¿~ZÍeâë¯+Ô Ä±ák­¥2#8;;[µQh$BììB°hÑ\"^z饀Ôß\\°Z­Lœ8Qñ¾n¼¨”«H ݳ,Ÿ{î9V¯^í÷x‹Å¨Q£?~|ƒaאÞzë-æÏŸï÷<CQQQªóýÒ¶m[¦M›ÆÃëžÐÝĶ®àS@×ÒcC†aÛ¶m~ëÔ©3gÎdøðá.ÇÜCBB˜5kk×®U\ršô
ÄÄDæÍ›§Ú×>zôh¿jHJJbÞ¼y$'ëžË[„bÛ4q!Dí¸îÝ»³aÃÞ~ûmî¹çoŠhBxx8O?ý4.ô˜ --;v0uêT­\"éС̞=[SfŽ´´4vîÜÉ´iÓ4§µ1Zƒ²¶m€»\\Áí€3ø°>`kN•Í/¿üⲜ!C†4èi&I¢J€û
e7¨­ð¯ÀRok¬£5¦‰Óã®4!MÜl!Ä¿»Ú æáÀ1ÎØEÞ¼y“šššm‘º¿#\"\"TËŒÒ ƒÿEYR¶Éå<¯ô$ðærq-•Z ]áöÑ^Õ°ŽsÔö1iÖ䨴­|<h”*“€ð#ð˜Bu€OëÊ¡=ý@„™øŸkÀ@!ÄÏžvÔtowôJn“æMð‚ノƝâàO€31šø‚\rø“ÃVšÐÕºB|¼ŒéÍð²ÃFšñj\"›”ò”Cò—›øÌ-à%!Äÿè=Ð뙌RÊ!ÀF|è.61„àŸ„{¼9ØëG
Q–—5\t‡QZû^|ìáBœžþ³]Hl(çü\t‡\r¼ÆÉ쎐ì¡ÀrÌ%çüM0ØmD.C³H)Û³ÚY¶\teÀ߀¥Bõ:ðK:)e7à\rà€ç¡15no\t!Œ™fT¿æ3‘R&¡\\\rþPO/bÒ˜r`ð7!„zBHB)eàE`\nà>ߪ\t@!°øPñ›¿+hF#)e0e%ë§00Emçð9ðßÀ!Äí@U´”VRÊÀ0`4ð$`LiËá2ʌπ/
þÏ.å‚f‘ÓÌsÐåQòI ­oèùbôÝÀžÆêA³p€Æ8¢’{ ¬pÕ¥íp7ÍTs=$ð;ʽü”¸ÊÃ@«¨Ü`ÓÜO&àìhj‡r›Hr¼¯n(¹ïï¢ðÿw’(S¬o¥Àyc§¯Ë@YKHÙüjÀÁÜÅI: 8DÇû»¯6(kåD ¬–®ðZLjòÜ]
2ÂvÓñ*C¹„—:þ/ÊÝEÚš˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜4/þÞôfQq°È¬IEND®B`‚";var myFile = new File("~/Desktop/xxxmyFilexxx.png");myFile.encoding = "BINARY";myFile.open("w");myFile.write(myBinary);myFile.close();pal.add("image", [160, 0, 300, 130], myFile);myFile.remove();return pal;}function precomp(myComp, myLayer, num, precompA) {var maskNum = 1;for (var m = 1; m <= myLayer.Masks.numProperties; m += 1) {if (myLayer.Masks.property(m).name.indexOf("Mapp ") != -1 && myLayer.Masks.property(m).name.indexOf("Mask ") != -1) {maskNum = eval(myLayer.Masks.property(m).name.substring(myLayer.Masks.property(m).name.length, myLayer.Masks.property(m).name.length) + 1);}}myMask = myLayer.Masks.addProperty("Mask");myMask.maskMode = MaskMode.NONE;myMask.inverted = true;myMask.name = "Mapp " + num + " Mask " + maskNum;adj = precompA.layers.addSolid([0.5, 0.5, 0], "Mask", myLayer.width, myLayer.height, precompA.pixelAspect, precompA.duration);adjB = adj.duplicate();luma = precompA.layers.addSolid([1, 1, 1], "Luma", myLayer.width, myLayer.height, precompA.pixelAspect, precompA.duration);lum = precompA.layers.precompose([luma.index], "Luma_" + myLayer.name + "_" + num, false);adjB.trackMatteType = TrackMatteType.LUMA_INVERTED;adjB.name = "Luma_" + adjB.name;adj.moveToBeginning();myFolder = app.project.items.addFolder("BAO_mapp_" + myLayer.name + "_" + num);lum.parentFolder = myFolder;precompA.parentFolder = myFolder;lumaComp = myComp.layers.add(lum);lumaComp.enabled = false;lumaComp.moveBefore(myComp.layer(myLayer.index - 1));lumaComp.selected = false;lumaComp.startTime = 0;lumaComp.parent = myLayer;lumaComp.position.setValue([myLayer.width / 2, myLayer.height / 2]);lumaComp.scale.setValue([100, 100]);lumaComp.rotation.setValue(0);if (myLayer.threeDLayer == true) {lumaComp.threeDLayer = true;lumaComp.orientation.setValue([0, 0, 0]);}for (var pl = 1; pl <= precompA.numLayers; pl += 1) {if (precompA.layer(pl).source instanceof CompItem && precompA.layer(pl).name != myLayer.name) {precompA.layer(pl).source.parentFolder = myFolder;}}myMask = adj.Masks.addProperty("Mask");myMask.name = "Mapp " + num + " Mask " + maskNum;myMask.inverted = true;myMask.maskFeather.expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").mask(\"Mapp " + num + " Mask " + maskNum + "\").maskFeather";myMask.maskOpacity.expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").mask(\"Mapp " + num + " Mask " + maskNum + "\").maskOpacity";myMask.maskExpansion.expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").mask(\"Mapp " + num + " Mask " + maskNum + "\").maskExpansion";myMask.maskPath.expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").mask(\"Mapp " + num + " Mask " + maskNum + "\").maskPath";newlayer.trackMatteType = TrackMatteType.NO_TRACK_MATTE;myLayer.selected = true;}function generate() {app.beginUndoGroup("Generate_map");myComp = app.project.activeItem;if (myComp.selectedLayers.length == 0) {alert("Please select a layer");} else {if (myComp.selectedLayers[0].Effects.numProperties == 0) {alert("Please apply an Effect first");} else {myLayer = myComp.selectedLayers[0];var num = 1;var FXindex = 0;var MM = myLayer.trackMatteType;var ST = myLayer.startTime;myLayer.startTime = 0;for (var i = 1; i <= myLayer.Effects.numProperties; i += 1) {if (myLayer.Effects.property(i).name.indexOf("Distortion from mapp") != -1) {n = myLayer.Effects.property(i).name.substring(myLayer.Effects.property(i).name.length - 1, myLayer.Effects.property(i).name.length);num = eval(eval(n) + 1);FXindex = i;}}myLayer.trackMatteType = TrackMatteType.NO_TRACK_MATTE;var nm = myLayer.name;myMapp = myLayer.duplicate();myMapp.name = nm;ind = myMapp.index;myComp.layers.precompose([myMapp.index], "Mapp_" + nm + "_" + num, true);myMapp = myComp.layer(ind);precompA = myMapp.source;myMapp.enabled = false;myMapp.threeDLayer = false;myMapp.selected = false;newlayer = precompA.layer(precompA.numLayers);newlayer.name = nm;for (v = newlayer.Masks.numProperties; v >= 1; v--) {newlayer.Masks.property(v).remove();}for (l = precompA.numLayers; l >= 1; l--) {if (precompA.layer(l).name != myLayer.name) {precompA.layer(l).remove();}}precompA.width = newlayer.width;precompA.height = newlayer.height;newlayer.threeDLayer = false;for (var f = 1; f <= FXindex; f += 1) {newlayer.Effects.property(1).remove();}for (q = newlayer.Effects.numProperties; q >= 1; q--) {n = newlayer.Effects.property(q).name;if (n.substring(0, 1) == "(" && n.substring(n.length - 1, n.length) == ")") {newlayer.Effects.property(q).remove();}}for (var e = 1; e <= newlayer.Effects.numProperties; e += 1) {fx = newlayer.Effects.property(e);if (!(fx.matchName.indexOf("ADBE FreePin") != -1)) {for (var g = 1; g <= fx.numProperties; g += 1) {if (fx.property(g).canSetExpression == true) {fx.property(g).expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").effect(\"" + fx.name + "\")(" + g + ")";}}} else {puppet = fx.property(2).property(2);for (var h = 1; h <= puppet.numProperties; h += 1) {net = puppet.property(h);for (var j = 1; j <= net.property(4).numProperties; j += 1) {net.property(4).property(j).property("Position").expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").effect(\"" + fx.name + "\")(2)(2)(1)(4)(" + j + ")(\"Position\")";}}}}var apK = newlayer.anchorPoint.numKeys;if (apK > 0) {for (k = apK; k > 0; k--) {newlayer.anchorPoint.removeKey(k);}}var pK = newlayer.position.numKeys;if (pK > 0) {for (k = pK; k > 0; k--) {newlayer.position.removeKey(k);}}var sK = newlayer.scale.numKeys;if (sK > 0) {for (k = sK; k > 0; k--) {newlayer.scale.removeKey(k);}}var rK = newlayer.rotation.numKeys;if (rK > 0) {for (k = rK; k > 0; k--) {newlayer.rotation.removeKey(k);}}var oK = newlayer.opacity.numKeys;if (oK > 0) {for (k = oK; k > 0; k--) {newlayer.opacity.removeKey(k);}}newlayer.anchorPoint.setValue([0, 0]);newlayer.position.setValue([0, 0]);newlayer.scale.setValue([100, 100]);newlayer.rotation.setValue(0);newlayer.opacity.setValue(100);var solidBase = precompA.layers.addSolid([0, 0, 0], "Base", myLayer.width, myLayer.height, precompA.pixelAspect, precompA.duration);var vert2 = newlayer.duplicate();var rouge2 = newlayer.duplicate();vert2.replaceSource(solidBase.source, false);rouge2.replaceSource(solidBase.source, false);solidBase.remove();var vert3 = precompA.layers.precompose([vert2.index], "GreenSource_" + myLayer.name + "_" + num, true);vert3.layers.precompose([1], "GreenRamp_" + myLayer.name + "_" + num, false);greenRamp = vert3.layer(1).source.layer(1).Effects.addProperty("ADBE Ramp");greenRamp.property(4).setValue([0, 1, 0]);var rouge3 = precompA.layers.precompose([rouge2.index], "RedSource_" + myLayer.name + "_" + num, true);rouge3.layers.precompose([1], "RedRamp_" + myLayer.name + "_" + num, false);redRamp = rouge3.layer(1).source.layer(1).Effects.addProperty("ADBE Ramp");redRamp.property(4).setValue([1, 0, 0]);redRamp.property(1).setValue([0, 0]);redRamp.property(3).setValue([myLayer.width, 0]);var mappVert = precompA.layers.add(vert3.layer(1).source);mappVert.enabled = false;mappVert.moveToEnd();mappVert.startTime = 0;var mappRouge = precompA.layers.add(rouge3.layer(1).source);mappRouge.enabled = false;mappRouge.moveToEnd();mappRouge.startTime = 0;vert2 = precompA.layer(1);rouge2 = precompA.layer(2);function FXColor(l1, l2, col) {l1.Effects.addProperty("ADBE Calculations");l1.Effects.property(1).name = "Analyse";l1.Effects.property(1).property(2).setValue(col);l1.Effects.property(1).property(6).setValue(l1.index + 3);l1.Effects.property(1).property(7).setValue(col);l1.Effects.property(1).property(8).setValue(1);l1.Effects.property(1).property(9).setValue(true);l1.Effects.property(1).property(12).setValue(9);l1.blendingMode = BlendingMode.ADD;l1.Effects.addProperty("ADBE Tint");l1.Effects.property(2).name = "Color";if (col == 4) {l1.Effects.property(2).property(2).setValue([0, 0.5, 0]);} else {l1.Effects.property(2).property(2).setValue([0.5, 0, 0]);}l2 = l1.duplicate();l2.Effects.property(1).property(3).setValue(true);l2.Effects.property(1).property(9).setValue(false);l2.Effects.property(2).property(2).setValue([0, 0, 0]);if (col == 4) {l2.Effects.property(2).property(1).setValue([0, 0.5, 0]);} else {l2.Effects.property(2).property(1).setValue([0.5, 0, 0]);}}FXColor(vert2, vert3, 4);FXColor(rouge2, rouge3, 3);newlayer.enabled = false;for (var a = 1; a <= myLayer.Effects.numProperties; a += 1) {n = myLayer.Effects.property(a).name;if (n.indexOf("Distortion from mapp") != -1 || n.substring(0, 1) == "(" && n.substring(n.length - 1, n.length) == ")") {} else {myLayer.Effects.property(a).enabled = false;}}displace = myLayer.Effects.addProperty("ADBE Displacement Map");displace.name = "Distortion from mapp " + num;displace.property(1).setValue(ind);displace.property(3).setValue(myLayer.width);displace.property(5).setValue(myLayer.height);if (MM != TrackMatteType.NO_TRACK_MATTE) {try {myMapp.moveBefore(myComp.layer(myLayer.index - 2));} catch (e) {myLayer.trackMatteType = TrackMatteType.NO_TRACK_MATTE;}}myLayer.trackMatteType = MM;if (MM == TrackMatteType.NO_TRACK_MATTE) {myLayer.trackMatteType = TrackMatteType.ALPHA;}myLayer.startTime = ST;myMapp = myComp.layer("Mapp_" + myLayer.name + "_" + num);myMapp.parent = myLayer;myMapp.position.setValue([myLayer.width / 2, myLayer.height / 2]);myMapp.scale.setValue([100, 100]);myMapp.rotation.setValue(0);if (myLayer.threeDLayer == true) {myMapp.threeDLayer = true;myMapp.orientation.setValue([0, 0, 0]);}slider = myLayer.Effects.addProperty("ADBE Slider Control");slider.name = "Softness_" + num;myBlur = myMapp.source.layers.addSolid([0, 0, 0], "Softness", myLayer.width, myLayer.height, precompA.pixelAspect, precompA.duration);myBlur.startTime = 0;myBlur.Effects.addProperty("ADBE Gaussian Blur");myBlur.Effects.property(1).property(1).expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").effect(\"Softness_" + num + "\")(1)";myBlur.Effects.property(1).name = "Softness_" + num;myBlur.adjustmentLayer = true;precomp(myComp, myLayer, num, precompA);}}app.endUndoGroup();}function maskBtn_OnClick() {app.beginUndoGroup("Add / Remove Mask");myComp = app.project.activeItem;if (myComp.selectedLayers.length == 0) {alert("Please select a layer");} else {myLayer = myComp.selectedLayers[0];var num = 1;var FXindex = 0;for (var i = 1; i <= myLayer.Effects.numProperties; i += 1) {if (myLayer.Effects.property(i).name.indexOf("Distortion from mapp") != -1) {n = myLayer.Effects.property(i).name.substring(myLayer.Effects.property(i).name.length - 1, myLayer.Effects.property(i).name.length);if (eval(n) > num) {num = eval(n);FXindex = i;}}}var maskNum = 1;var numMasks = 0;for (var m = 1; m <= myLayer.Masks.numProperties; m += 1) {if (myLayer.Masks.property(m).name.indexOf("Mapp ") != -1 && myLayer.Masks.property(m).name.indexOf("Mask ") != -1) {maskNum = eval(eval(myLayer.Masks.property(m).name.substring(myLayer.Masks.property(m).name.length - 1, myLayer.Masks.property(m).name.length)) + 1);numMasks += 1;}}if (maskNum > 2 && myLayer.selectedProperties[0].isMask == true && numMasks > 1) {adj.Masks.property(myLayer.selectedProperties[0].name).remove();myLayer.selectedProperties[0].remove();adj = myComp.layer("Mapp_" + myLayer.name + "_" + num).source.layer("Mask");} else {myMask = myLayer.Masks.addProperty("Mask");myMask.maskMode = MaskMode.NONE;myMask.inverted = true;myMask.name = "Mapp " + num + " Mask " + maskNum;adj = myComp.layer("Mapp_" + myLayer.name + "_" + num).source.layer("Mask");myMask = adj.Masks.addProperty("Mask");myMask.inverted = true;myMask.maskFeather.expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").mask(\"Mapp " + num + " Mask " + maskNum + "\").maskFeather";myMask.maskOpacity.expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").mask(\"Mapp " + num + " Mask " + maskNum + "\").maskOpacity";myMask.maskExpansion.expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").mask(\"Mapp " + num + " Mask " + maskNum + "\").maskExpansion";myMask.maskPath.expression = "comp(\"" + myComp.name + "\").layer(\"" + myLayer.name + "\").mask(\"Mapp " + num + " Mask " + maskNum + "\").maskPath";myMask.name = "Mapp " + num + " Mask " + maskNum;}}app.endUndoGroup();}function markBtn_OnClick() {app.beginUndoGroup("Mark / Unmark FX");myComp = app.project.activeItem;myLayer = myComp.selectedLayers[0];FX = new Array();for (var b = 1; b <= myLayer.Effects.numProperties; b += 1) {if (myLayer.Effects.property(b).selected == true) {FX.push(b);}}if (FX.length != 0) {for (var a = 0; a <= FX.length - 1; a += 1) {n = myLayer.Effects.property(FX[a]).name;if (n.substring(0, 1) == "(" && n.substring(n.length - 1, n.length) == ")") {myLayer.Effects.property(FX[a]).name = n.substring(1, n.length - 1);} else {myLayer.Effects.property(FX[a]).name = "(" + n + ")";}}} else {alert("Please select an Effect");}app.endUndoGroup();}function restoreBtn_OnClick() {app.beginUndoGroup("Restore FX");myComp = app.project.activeItem;myLayer = myComp.selectedLayers[0];myFX = myComp.selectedProperties[0];if (myFX == undefined || myFX.isEffect == false || myFX.name.substring(0, 12) != "Distortion f") {alert("Please select a \"Distortion from mapp\" effect");} else {num = myFX.name.substring(21, myFX.name.length);for (var a = 1; a <= app.project.numItems; a += 1) {if (app.project.item(a).name == ("BAO_mapp_" + myLayer.name + "_" + num)) {app.project.item(a).remove();}}for (m = myLayer.Masks.numProperties; m >= 1; m--) {if (myLayer.Masks.property(m).name.indexOf("Mapp " + num) != -1) {myLayer.Masks.property(m).remove();}}for (f = myFX.propertyIndex - 1; f >= 1; f--) {myLayer.Effects.property(f).enabled = true;if (myLayer.Effects.property(f).name.substring(0, 12) == "Distortion f") {f = 1;}}myFX.remove();for (fx = myLayer.Effects.numProperties; fx > 0; fx--) {if (myLayer.Effects.property(fx).name == ("Softness_" + num)) {myLayer.Effects.property(fx).remove();}}}app.endUndoGroup();}function invertBtn_OnClick() {app.beginUndoGroup("Invert Mask / Luma");myComp = app.project.activeItem;myMask = myComp.selectedProperties[0];myLayer = myComp.selectedLayers[0];if (myMask == undefined) {myLum = myComp.layer("Mapp_" + myLayer.name.substring(5, myLayer.name.length)).source.layer(myLayer.name);myLum.Effects.addProperty("ADBE Invert");if (myLum.Effects.numProperties == 2) {myLum.Effects.property(1).remove();myLum.Effects.property(1).remove();}} else {map = myMask.name.substring(5, 6);mask = myMask.name.substring(12, 13);if (myMask.inverted == true) {myMask.inverted = false;} else {myMask.inverted = true;}myComp.layer("Mapp_" + myLayer.name + "_" + map).source.layer("Mask").Masks.property("Mapp " + map + " Mask " + mask).inverted = myMask.inverted;}app.endUndoGroup();}function matteBtn_OnClick() {app.beginUndoGroup("Show / Hide Matte");myComp = app.project.activeItem;myLayer = myComp.selectedLayers[0];if (myLayer.name.substring(0, 5) == "Luma_" || myLayer.name.substring(0, 5) == "Mapp_") {num = myLayer.name.substring(myLayer.name.length - 1, myLayer.name.length);for (var l = 1; l <= myComp.numLayers; l += 1) {myComp.layer(l).selected = false;if (myComp.layer(l).name == myLayer.name.substring(5, myLayer.name.length - 2)) {myComp.layer(l).selected = true;myComp.layer(l).Effects.property("Distortion from mapp " + num).selected = true;}}myLayer = myComp.selectedLayers[0];}myFX = myComp.selectedProperties[0];if (myFX.isMask == true && myFX.name.substring(0, 5) == "Mapp ") {myFX = myLayer.Effects.property("Distortion from mapp " + myFX.name.substring(5, 6));}if (myFX == undefined || myFX.isEffect == false || myFX.name.substring(0, 12) != "Distortion f") {alert("Please select a \"Distortion from mapp\" effect");} else {num = myFX.name.substring(21, myFX.name.length);if (myLayer.enabled == true) {myLayer.enabled = false;myComp.layer("Mapp_" + myLayer.name + "_" + num).enabled = true;comp = myComp.layer("Mapp_" + myLayer.name + "_" + num).source;comp.layer("Luma_" + myLayer.name + "_" + num).enabled = true;comp.layer("Mask").enabled = false;comp.layer("Mask").enabled = false;comp.layer("Luma_" + myLayer.name + "_" + num).trackMatteType = TrackMatteType.ALPHA_INVERTED;black = comp.layers.addSolid([0, 0, 0], "Black", myLayer.width, myLayer.height, comp.pixelAspect, comp.duration);black.moveAfter(comp.layer("Luma_" + myLayer.name + "_" + num));} else {myLayer.enabled = true;myComp.layer("Mapp_" + myLayer.name + "_" + num).enabled = false;comp = myComp.layer("Mapp_" + myLayer.name + "_" + num).source;comp.layer("Luma_" + myLayer.name + "_" + num).enabled = false;comp.layer("Mask").enabled = true;comp.layer("Mask").enabled = true;comp.layer("Luma_" + myLayer.name + "_" + num).trackMatteType = TrackMatteType.NO_TRACK_MATTE;black = comp.layer("Black").remove();}}app.endUndoGroup();}var userinterface = buildUI(this);if (userinterface != null && userinterface instanceof Window) {userinterface.show()}
}

2.作者答疑


  合理的脚本代码可以有效的提高工作效率,减少重复劳动。

提示: 作者知了-联系方式1
提示: 作者知了-联系方式2

AfterEffect插件--常规功能开发--扭曲效果--js脚本开发--AE插件相关推荐

  1. illustrator插件-常用功能模块-测量路径长度-js脚本开发-AI插件

    文章目录 1.算法程序 2.作者答疑 1.算法程序   illustrator是矢量编辑软件,画板是绘制处理的重要容器,在印刷方面的一个重要功能就是测量路径长度,开发一个测量路径长度功能,以下功能仅用 ...

  2. AfterEffect(AE)插件-常规功能开发-创建面板-js脚本开发

    文章目录 1.算法程序 2.作者答疑 1.算法程序   AfterEffect(AE)插件是特效制作软件,本文向大家介绍如何开发插件中的子模块创建面板.源代码如下所示: {function DemoP ...

  3. InDesign插件--常规功能开发--版面调整--js脚本开发--ID插件

    文章目录 1.算法程序 2.作者答疑 1.算法程序   Adobe InDesign是Adobe公司的一个桌面出版 (DTP) 的应用程序,主要用于各种印刷品的排版编辑.InDesign可以将文档直接 ...

  4. illustrator插件-画板功能开发-插入页码-js脚本开发-ai插件

    文章目录 1.算法程序 2.文本转执行 3.作者答疑 1.算法程序   illustrator是矢量编辑软件,画板是绘制处理的重要容器,开发一个插入页码功能,源代码如下所示: if (app.docu ...

  5. illustrator插件--常用功能开发--色标生成器--js脚本开发--AI插件

      illustrator是矢量编辑软件,画板是绘制处理的重要容器,在印刷方面的一个重要功能就是色标生成器,开发一个色标生成器功能,以下功能仅用于学习交流,请勿用于非法用途和商业用途,源代码如下所示: ...

  6. illustrator插件-拼版功能开发-阵列复制-js脚本开发-ai插件

    文章目录 1.算法程序 2.作者答疑 1.算法程序   illustrator是矢量编辑软件,画板是绘制处理的重要容器,在印刷方面的一个重要功能就是拼版,开发一个阵列复制功能,以下功能仅用于学习交流, ...

  7. illustrator插件--常用功能开发--绘制手提袋--js脚本开发--AI插件

      illustrator是矢量编辑软件,画板是绘制处理的重要容器,在印刷方面的一个重要功能就是绘制手提袋,开发一个绘制手提袋功能,以下功能仅用于学习交流,请勿用于非法用途和商业用途,源代码如下所示: ...

  8. html轮播图循环效果,TremulaJS-跨设备多功能的无限循环js轮播图插件

    TremulaJS是一款非常酷的跨设备多功能的无限循环js轮播图插件.TremulaJS是一个客户端javascript UI组件,它基于贝兹曲线和物理动量效应制作各种效果,可以制作无限循环的图片流, ...

  9. Auto.js脚本开发环境搭建

    1. Auto.js软件安装及简单使用 直接将APK发送到安卓手机上进行安装,电脑端的模拟器上直接拖进去就可以安装,安装时不光要安装Auto.js的APK,还要安装打包插件的APK,Auto.js的A ...

最新文章

  1. 自学python有用吗-文科专业自学python有用吗?
  2. rsync 安装使用详解
  3. 001 JAVA基础
  4. 2.1.2 何为真值,何为机器数?
  5. SpringBoot高级-任务-异步任务
  6. 在linux下也能进行51单片机开发吗?送你一份教程。
  7. 风变编程python助教_花30天时间,学完了风变编程Python基础语法课
  8. maven项目 Java compiler level does not match the version of the installed Java project facet
  9. NeurIPS、COLING顶会亮点有哪些 | 一周学术精选
  10. 婚纱摄影后期修片,PS婚纱写真后期…
  11. python车牌识别_Python+Tensorflow+CNN实现车牌识别的示例代码
  12. ARINC485和RS485的区别
  13. API 库的文档体系支持:主流编程语言的文档设计
  14. Typora中如何使用数学公式、数学符号
  15. 火狐浏览器插件开发小试
  16. Realview MDK 链接脚本文件详细解析(一)–链接符号
  17. 【计算机网络】-TCP的拥塞控制及拥塞控制方法
  18. 系统突然变慢的处理方案
  19. 《Microduino实战》——1.5 如何选择开源硬件
  20. 2020年9月PAT甲级满分必备刷题技巧

热门文章

  1. Spring注解@Qualifier的详细用法你知道几种「扩展点实战系列」- 第444篇
  2. Android进阶之旅:经典的大牛博客推荐
  3. 博文批量发布工具新鲜出炉(支持wp、cnblogs等)
  4. Stirling's approximation
  5. 年末贺岁新路启程~机器人工程专业工作总结和展望
  6. 城市公共自行车APP开发,智慧交通解决方案实例
  7. 我的 Serverless 实战 — 云函数本地开发环境搭建
  8. Revit中墙体的截面填充图案,构件快速上色
  9. 慕课乐学python单元测试答案_乐学软件工程中国大学慕课单元测试答案
  10. Masked Autoencoders Are Scalable Vision Learners 论文导读