From 3a2b42e67cfe4d802b2c45b5e86e4b56f8943e3a Mon Sep 17 00:00:00 2001 From: Monty Date: Fri, 12 Feb 2010 20:32:12 +0000 Subject: [PATCH] Some minor setup code rearrangement/cleanup toward 5.1/7.1 additions svn path=/trunk/vorbis/; revision=16894 --- doc/Vorbis_I_spec.html | 4 +- doc/Vorbis_I_spec.pdf | 2148 ++++++++++++++++++++++++------------------------ lib/highlevel.h | 2 - lib/modes/floor_all.h | 20 +- lib/modes/setup_11.h | 11 +- lib/modes/setup_16.h | 12 +- lib/modes/setup_22.h | 4 +- lib/modes/setup_32.h | 8 +- lib/modes/setup_44.h | 14 +- lib/modes/setup_44u.h | 4 +- lib/modes/setup_8.h | 12 +- lib/modes/setup_X.h | 12 +- lib/psy.c | 7 +- lib/vorbisenc.c | 44 +- 14 files changed, 1160 insertions(+), 1142 deletions(-) diff --git a/doc/Vorbis_I_spec.html b/doc/Vorbis_I_spec.html index 3cb6066..56a5e4f 100644 --- a/doc/Vorbis_I_spec.html +++ b/doc/Vorbis_I_spec.html @@ -7,7 +7,7 @@ - + @@ -24,7 +24,7 @@ class="cmr-17">Xiph.org Foundation
January 25, 2010
+class="cmr-17">February 3, 2010

Contents

diff --git a/doc/Vorbis_I_spec.pdf b/doc/Vorbis_I_spec.pdf index d35a3c5..105aaba 100644 --- a/doc/Vorbis_I_spec.pdf +++ b/doc/Vorbis_I_spec.pdf @@ -598,13 +598,14 @@ endobj << /S /GoTo /D [402 0 R /Fit ] >> endobj 431 0 obj << -/Length 1015 +/Length 1012 /Filter /FlateDecode >> stream -xÚíš[oœ8Çßó)x4Ra}¿•zߛZl©ž$>ÄO=N æ‹.îUÎKaV:ÿ³ò®%¸kÊy×ÃêêêCùã 4G ó*µÙ,uî8<^‰I².M8GRÜ»ãQÄ\ •cZzùšEõÝTÜ;mâQà\DEa²‰SRLW×ßæ qÎSçªy9Ñ(=¹ª¥+ФÑ{]™¤™–r.NAO?€«.Éåø¶«÷®ê矧×…×LwÖC5V,ҋ¨×f÷)Hµk¥NFí +÷Żҽ€ØjT]US]ÅWÕ R˔•TPŽÝýñh-NÐús¨ºwؓQKM0:? ÖISN–dë'x÷fu@-VIº€†8v-ëç¦.¢øs«¥ºþ¾•ûW:›»3aF è[ô§ñSzQJ"ßþfsÞkP÷¼ÖuõÌEÓ¶kZÕº:hlqÐ5&ò2™äyrÒ"„HtŒGW;¼×ŸÞšÚ]Ž-=͔ÁŸPÙÝêž[WºÁ ¯ÉZ1ËÄÕ»PîvCÝt ¾uS÷an²–xæ÷©Òÿ6:‹õ$ò&õܱb X 7µÊì2d3º–1²æªóÍHò›¼Nÿ]Ó~6gĺËfÛø3$qòNCAÕð¯ss~ۜýuQ°° +xÚíš]oœ8†ïó+¸4Raý}¹m7mWŠ¶êŽV+u÷‚wŠJ€5nÿ} 23&J‚š6Cs3›‡óñú(ÐÛyÐ{uoŸoÎ~9GÂÃ4ŒD„¼Í äqNC ¥·I½÷à/Ÿ Pú½Íj? <oºƒº2#*Éþˆ&q“•…ÿïæ÷i c_z( +1b´³OyH™˜!²Æÿڏa©wÆÄà܏(Û",yˆ„œ3†‚“úÇÔV·±þb'’gvÄÁ㠈ý (B!‘Æ Ã!cØ|Q*šú`ê8"ózzçًw£QÊÞÀs3À<ĂYkÈ$’àMÑè²ÛHÛ¤Ÿ]\¤ö⥪UM漇ؼ÷&H@nÏî„íïļ)cÒ¼% )åÃvB³!!\ù8J_eê³³ƒ ô¦Jyýë2!q+Ï|w‰©¼GŽ0¿VUžÍ†Y 2öØË>ఈ#tâá‹<®ë›ŒY@0üÈüH€ì }Ð$mêöÒ$šª#X;ÁÏÙɆí÷pE:º¢ÉçX€T%&…cþTM[ÙK›ÖMz}«»|¾·Yž5]¾ýb¸è>B7?2óóã­*—ñ˜Ø€éÜæUõeÜ ˜ªþµo– ]6dl‘Ê€ã¸×±N?w>kµïM¶\9‰ñSÓEƒù¢‹•óR%c˜iëFÞuw­žw=,O¡®>”?Þ@s’0¯r“ÍrëŽ#É㕘 ë҄s$£{×`<‰˜‹±r¸¥—¯YTßÙM£{§M< œ‹¸ª²ÂqJŠéJâú{À5Îyn]µÔŽFáèÉU ]±€î(Þ©:K[·”óèôô¸ê˜üXŽoûzo«~ùÉ=ÞH¼fº‹°Š¨©b‘AD½Îvƒ\نQneԞ°²7Þjû£QU]»ºŠ¯ª$—))2)© ˜ÚóãÑZœ õçPyï°'“–r0Z?Œ@¢ÒV» +K°õ¼{³: « }@cۖõó¬©âäS§¥úþ¾‘ûWª˜;3aF è[ô§ñSzQJ"ßþfsÞkP¼QMýÌFÓ¶oZ5ª>hlqÐ7&J:yžœ´!ÝãÑÑïõ§·YcdžrD3eð'Tv÷ƒºç–ã‘ntÂk²Fc8pYôDõ.TdzÝX7m‚ïb=k†0ϊŽxSæû«VÿµªH”ù“Çz îY±¬Æ“Zí +•3º–1²æªóÍHò›¼Ný_Vn?›3¶æÀe³‚mz B‰¼€Ó0¢rüW‚¹9¿mξ°F°ð endstream endobj 402 0 obj << @@ -5672,38 +5673,43 @@ endobj /FontFile 1137 0 R >> endobj 1139 0 obj << -/Length1 1045 -/Length2 4185 +/Length1 1061 +/Length2 4315 /Length3 0 -/Length 4855 +/Length 4994 /Filter /FlateDecode >> stream -xÚ­“y<”}ÛÆ-YRvÂe—eëØɖ]¶”%cf0–ûÎÐJ"dì”-Eˆ”%[e˾ŠH²ïK¼Ó}¿Ï]ïýüû~®æ{žÇuœÇœ¿ß%*ha%£Äº ô±¼ UtL-¡JaÕÁ¡àx4£ Ç£T¨²2Ð&¸²ª¨"S‘•gt°>8´›;Ð9ÿK¤h{£ph˜Âñî(o²îXah>h{y–¿Þð,Q¾(œ - b€B$\Pnh øW CŒ+Pú»Œ$øü§å‡Âù’CäçrD$ã Q® `3,yŠœäÿ#Ô¿Íõ ^^fpï_ö¿–ô_m¸7Ú+ðXo…L±HóoéeÔßÙLQH4Áûß]C<Ü ÐƸy¡Èß%´¯>:…´@ãî€+ÜËõW…Aþ;yoE›\µ35½$õ÷yþÕ³€£1xë@Ÿ\‰ÿbèo&o‡ì! J’Ÿÿürü×,= ‹DcÈBA€ãpð@òÍ “ Ð$*@ƒA,žü -@ÞI(àŠÅ1ü:N%ÖÿUú›ä°Ñ?ƒ`»ˆ|z`ø?$OV"°ÞÞ¿+PÙ -ù*È`W´ê>¹âö’Üÿ@ŒþP²æ„`ìïáÊdÂüa •À>¿ÛŠd"ß3,òyî$K𿳒‡áý±´Éÿ•ðeÉÓۓׄÂý-ÿp,#'ÈȒ}•åÈ[Uý?:‡Cað}SäÛóvE“ï -€B0Œ cª1©/b‹Ãôò{Kh$)/¸ÕÜ3«l¨?=šHéõ¸Ãøºääs»ýÒtv¦9š9ÿC^ß[¯C.uë¯D^¿—6t4çç<—ô’×n=Ý4ð«ÐNô"󫃛?(Íû';‹“¯´e®¶/æZHèZÏÓ}¤xcïWõ†£¨d§ŸîeG|.&'hɒv½ø†|Ü'–äû'>}ˆ󈣯•šXþ&°íçÓç$]£sÊÉeà,_¢¢Î,à•­À<ÈïI-8_i_ˆf;”W‘ØÃvŒÒ¾œÂÂw)ë˙H$zω¹¥1<ÏÚ·$̗ÔZÄ:³éC*LJʐ á"/EðžZå²æõQ͒ʱÉO’ )m1LOí¿~LúÆwì$ʸðd¿?Ø«jvÞè)4Ž -È-Ï,\xj^÷Lxi+:TæhÉiÐRR_CcHÀÔÅoê=32 )yÒ¥>¤‡—SLö°_3=H{°óÞܐgÛ o$3$~_ø"úûçÇ£e›Ÿa5ɸþb¯â,áä. ¦í Ñç²z”„ÅÙ/Ä/yh€§bš' -ÊËì̦ªÏJ ÔncàvÍé-†^/Ñ2}TÜè`Ðà h˃ðÑVgF¿i½6¸ fÕƅÓiሠBç6ƒTÀy@_óΐBÄL¶û¢3_Ü҂3K3†€§³÷ӄŽm¨¯‰ê§2G/÷0•VlPŸäÍúH‰ÄöJSËI‰“û‘Fñ0¿$š÷Õñãzqðl“±ò\$Û8×;Q™¥H+cãnÛÛ"ÞµriR°îy±Ûøåo"?Wì†ÊcM{…ûÖ%ý‹w$›|UX©`²Ýî.7¥úëìD -š&7µìDP° *û_ߑø™õ5ä(4ñ~m܏îb|­7ƒC%€Ug7þ’‚à¶rø÷Ê2ÜX‘X2d–næò8ñP<êD¸ µòéL¬LR¶ŠÒN¼™ ~ö`MÖ*£Æ|x»¿8_žÛ°¶ø¹¼“UáMÔTݬ)A– æ¹mÙ6ò095—]zûq:-4òîêÌv+»g[\r®¢Èg…†/Ç°–#BËò”V4Î+>ñèâÑ橹©È/ÊeÖùVâ&‚žæØ1á€yˆõ[îõМŒwJRÙ^g—.Rq ûçÜÈì£uU-°ÈÃ7Xù?YoDHðFs6"j¨ÄìjÞÞ¤p[pÐ.0G3ÓZ¹ë¹ -}y*›⚦…(O×Eˆ7½:ÅRěÆt‘A,Á}!ùž¤¸Ý°k$’G{aՃK/™$ÚüYž)ïjô%7ßÌë¾7ª%Ìi ªÞ.¶Nn™Ü¹U&SÐ¥—Ó§€Ï'Dbu”÷¡wÇ$6Úû7:…–‡‹ Þ=2´Oý$C[þ“]^a^Áw9Äß©4r/'†‹ýГøtPÕÌ»¢Xª W‘÷9;—N:ÛVkÌé‡ð"N5_“¦¬ò)´8âg4½ƒ˜jÿjw\Ä \½w–êš•WgÑ:d³†EM¹úê'(©ˆ‡½ß/°—¤©H,Œ¾+ΤöSŠ<²2¢vKæU fh3;eu²A.¸>ùG[;êKͺiÔ7¦µs;ऑ+·Ë4ï@âB`‡¤—…æ±ÕÆDŠ©‰n/—•FéréÏÇLl|=Q¾6:Ó ½X}ñ¦ëë»Ä[Ë= -ħҍ:£ËôçL¿Ï ©>FƒNû^â_ÚaX¯µ3’9lpß^Ýc¢0¹vt¾&šº ±ËϹfHïÎÍGP¹Ý[ìZÈÒV)íFdò\Ip[Û©OÓ3»’éUù„XÏ9àk·zYìji°¾—ß/Cìݔ† ·}‡«,¸.6gr<Þ¥>ËßC²ÛÐ=.ØZZ©vhÿÜÜ×µ’™§Õ¿98ð%˜¶ ¯«wÇùP¹YzR1°/:sæá«8o¥y{ÞÖt"Ôоcã÷§µëқIÙ]ÿÂÉRç¯Zݖ¥`…åL¾þ’xÉõɖâBÎgØ4s ]Õ"wG9á6rú†ùrä5Í;SÀŽ‹9Óùq©±¡7ûùINp¿·æ‡S^W˜åè¨åÐ¥Þc-õ gÜ'ÞݞÉPåÀVaØ¥ãi4‹Wž5¬‚¸øŒuØY(@›‹`oÞ}6é ÕŘ-Öàzê›àºÈ2Õxþá]ÃNj·¿O:-JŸÍß`ã;3'å8ï3Ò¿äÙthÍTL’ºØ™]¢r¾“ ù i¿Tæd*<¿»âCPi«&&ŸOÈ|Û¥ÌöÚ@ücÌå²èKWÊÙj”uÎ·7(Ï}Ÿ®Ù×*tÈp•O謉Ërs˜" !ö¸Øqê³m0‘£(ÎûóP ;y× ¡Iô5à °îÒkqÉ3ïŸÄÈꪓ>±?û–%²8ù܃¨:N9,#UÛhŠ*¬~´M/áâɼ£Å†1&àâ¾U5§Ç'äW‡ý>ŽEÌ@–WœLém5¶ý{ˆ6'#PÌtéT‹f%–wlÍâoþ -WtŠì\þݘàL;!Úk4ñ ™,:êS‘µ}_?Þ¾"rï´¯ëãV%šfGå÷J&Cð†VÕ¾äƛîkŠÛО7IùڂګãT¹ù:DÃÆ÷1”#ð)aé{ÉW€jÕ®ªƒ…Ç s˜—±þî6Lƒ®>Q¬æûºs CA{-zMTj kJI -扭Óµ¡ÓŒ×žþ´×M¬"ĦÎɗTŽ¸|×ò¸ÒA“jâƒÎàKR¦G0øj¥'³\Ñ»b¶êuºÃo×lë6Â9ÀZ‚ÍQÍÌÈEávÉþø£4K¯ªït–].Ší̵±¯$©÷ÄzÁm -EFœKoðµ0 [F*) Ö]l^*ˆ'ÀÆ÷øE6D‹Õ¶Ý§ÈJÜSLv<¬ˆ=A/²ÅÀØû=[:O­¿"hX2ât]¹ÀóHèN cšuGÓ·KáË óŒÙ¡ñ~˜æ#«Þ´JSÃ칺â蜑Ì*º¯îßé3L­ùl¢fšN;™F—$`TiÁ±ç£o2ä_ò¾‰‡ž©†…[MÄõW‡6 ˆÄ%kÿ¹š¢Ç*eX;£;'÷ÚÀ Êü‘=J†àúR©˜e.ïøx«™ôåÔÔ?ò Ý'=|Ž’&:p¡G¦œž}3 |q€†X¦Ï{!Xi÷¦ØÈæwva…ô×D¨ÛpEITî8òZJ›äþq&Üã[nPv|ë?,Ñj¯›â¦c1g™æ%9^n‰ÕbŠ-Ž†Óí„֝¸âøÕ¨Ì|7»ú‡ß×Ød-Y…(˜êqD3I7:mM±?ìHö<‡íºh[Éü,pIºvø€Š'ì-J} uk°3™¦÷â{ãƒï»#ÓÕY¤ÇtV ã,£ŒqöޒĠ96zŠTµÚLùx ƒ2çäðâÎ2ü$Åi6ÒuEÑ-ÊîZ‰–Jî6«3ÄÚP¤Áãlo¹Ä¤Uíæ¢ÕöOn"Ïì™çì‹ê|‹,-ÞE }îÛo74Ÿ¡=ÅH=X·² à·ÕW52…yz‡$v·ëŸ?\í?G¹Aµl¶0¢yáFkdíÚèOŠÔ„©7*?UOúy ÀÅÓ'ó®rR\k­›4~Í×Ï Oü2Öö6¦ÿÎâÙr5ÚðÓC⃋Ó¸µ±ùÁØ-¥ªOZ<ª¤…_XÀ®ö}§Ü£[¡¡esÆõ4ÕÆ +W¨fn/Vž³¯Ü¤ªWLRóRt+ü!¬™"ZOg°#Ç>ˆÍ¶h?ÉÝMH8iÀÚÖk¨rèÃ5ú6ç„-ôèhMúñQáN'GšóâW® £É¡sÍf`R8µgæÓڟÅéÙe›“âºÛ(Øóñ”v óÎûö|%òM@%Ò¾ò< -’Zf·Ð#™é—ÕÞ#©Udp®>Di~¿›þ£Þc‚ƒ‡µKÖ±¨j˜+•rû9GR-Ámh£Ä_¹ÿY9ÎVsÚ«§Åڌ&àê}%å”ÕÕóžÄÚjkÞ¤;x-Ç׫¾ -)oª=îÎñÉðø}?e20c•,x\"ϙtq¥Ïù\*J#úÞ£³Ÿ^nOț󿧠³»qgϘpº-‹ã¹åœ›€}»iéî¯íåܨC×»Oh*Ü!њÃg¹œ_ã² NÒ ‚xÖuu ª•¿à¾X ãU|X´ìp@™Ã25Q<+ó9Þÿúȋ”Aë•~$Wÿ°ïëOëú¡Q×Á™Â^>»fêáš0vº1ÉÏWm¾]N"ž•í ëyEmìÀ¶ÙNH´ªÛïë½Fu¶c²P©Nk'hËÒ9”¤ìOÀµŠÜÀ¤[/ØoÓöU+†ŽÉYË.‡¨m:˜®³Ž° -$§=^—“¿ -]¢_*Ú¼¦·˜^›Ÿ$=kfáT–=Ëj7¯ÒÛѵ5VÜǖ¨ù\›ïƒ…úl‘øw¼¤¸|`IîARL…¬ÿÒ;o+¢ZÝùdQNÏÆÓôçØ·|´×n)­jô†ô˜€.Lf韎;å+@y|Rî ùýÙ5yÿî— ý™3ºº–èOüŸ- O։´uóÊB%³·9xµ9¬]܄+ë=nÔÛÙ>­[ -EnË~”9Ÿ))ÓË& ›Ð{Œy€±‹!hYœV«PÔ¬ {óÁeÄO.å7S˜õã -U÷:ƒcRÑÆÄsßçî77èßÙd…Ùˆ–qVÙñ”TcSHÎÌÁ÷\ßËR7ˆ0¦èþp2ïRâYð”êªõ7J~žâÙeB={œ3wó!c¿à;ž'’ÇNƖOû¼öB=ê׺+:,éCXA'ïxîÖÝù0ŸÞ¾V¡‘þs×KäÉ3_û¼ Ægöº >‚à œ%u­MKB¾]ÚÃE=EŽ)«¹VúÊðæîG8•všs ©ˆ&Ü£hÏ؈úÓSÓ -4ÁWo:ð2׊~‹›z9Eì^ÐâֆÖoÒå¿Î.]ô‰Ã”ۺɪYŒø´? Fù*8Äóü@"!–py¹ìÑâüƒþ)#IèAÕîÕ)Ë-ý¬6ê‡yO ¬Bއí̅h?7”˜×8š¾5º_H½­5þQƒ[“ˆ70jxûÂÉù»vèàÿ‡ùhC +xÚ­–gTSk³ÇAA% +H“&°Ci ½P¤HA¤%Ð{ï‚ô.½I—*J—" UšR¥ƒA¼ñœû½çýz×þ²ÏÌüç¿æ™½ÖækéòìPp%ÀHŠê:q" âàPDÃÍ1òŽ9.@$%! k@…ˆ˜”°„TÄ(¢œ<Ð[ À­Èó+I€9ÂÑKs$ nŽ±…;â5,Í]”%Žñ`€Î¯ +@îG»Â­@`…°Äp$øː +Òˆÿ}l…uúOÈŽvÁ›¸ñ&y¼E+ÒÁ°‚[ƒ5Pø^p¼“ÿSÿWÂ:8h˜;þ’ÿ5¤ÿ +›;"<þ7åè„ÅÀр:Ê +ŽFþ;Õþ·7u¸ëøï¨ +ÆÜa CÚ8À¡¿.Jw¸•ci X›;¸Àÿ:‡#­þm?·¿,*ë*ª)Þúû>ÿŠi™#=§T%ÿŐߌŸá  Að‰øç?oþÕë.Òe…@âBT 0G£Í=@øÍÀ“(àH+¸;wÇ@¢0ø?À…ýºNq!@Pé×Ñ_$!þCøû4ÿMø˜Å?$"Z¢Ç!Bx)«?Âÿ@a@ÐæÄ×Ûþ¢€ â7BðRÈ?/…úÝZOÈ?¤!P@ÐéwX Oø-Cýá‚ï†þñ)˜P¯Ž±EÃ+ŠâÛcÜPà'ýP|…Çï†øÁxÂѧÿ÷"(( Ü½ø……~(^WRD‘ôù?y–X4ŽÄüõá·é?lÀïî·ÍL¢,¥ƒíRBK}ï揔ó*Ø4ÆiÔµ¿u5h:žÐ¡h@͙w¡Öð¤<ŠlxÅí”Ñ%²Õ[{Hi/À9.uâ|ÍÕl-ݳ™ÑðKººÇªëQÐùˆñÃmQBͱ…·¥‰F=Yûo¶rµ¸ïè­_žt»¾èÈ7TJwÐ ©åë\Ou.  ›w»žø”hþ]¯]ؕ¦[³¨V,åIþ•g ç/›>ËÑTïO\Ì*`„Ö “ò‡S8 +xêŒ+<”§ÐX)îcÔÀ 0uéÖÔ×ï;á«j²ŒŒ+ö³k;ï‚äªÞ|åÖܑ±¼Ò¢ññÔî29yB«ÌHàu,S ³+ï<-_V7³0Ïû$¹'˜¬Òxu.õ3ÓOSÒ- $eANÿã&Ð Üp±Z {nuVñF¥fKÛÎ×ü>’thîu••Ç6«`‘-±‡w«TU¼KٟÊNÜEÅòùŠ%Úh$¥&õkªP¡¼VRe žàzʦŒØüT4]qøI¢1=V +r(ÍfK†$`.BJ´ÆÀðkq6®6*…Ø;9ÁÅàÎقê +CÅz:î÷M¸`sÃÎÌô.‡fÿèz„—Àø8GW’ßt·©ëÇ»=æ`äþ# Z´bu˜'"·S@zۜA`5ïF†7çýo£AY/§"o›“ó‘z ~Ì9Ieý©ñá‡R +yÐîØ{²òÜEæVŠBñ ʗò·MÅiè åJ'Í1;y«z–ÛÎ¥^+íj’k”Iæ´}ü ?¨Ë­tÕԆD±;6 §Þ’ZçŒjÃ4TwøǪùîD©°òº‰•šñ¶³¸HQ\€Ùþ°/LqS< +«?)mï:ò' Kº9qŸe¯zŸûÄ?m +Û—«ÑÒ²ådê&ˆðòáöá4CmQð7I¿Íº +QôL g¢ÐÊåevsڐS®@"¿û%§2n„ò'äH‰Åj€1+? º™f€GÚÏÐoù[+±Õ¹–zZg»GÙ5Ž!ò҇åPª–´x0Ë'Ò•Ä 8™/$S=Ö]9s9PÙ(ÍLώgE5FœÀˆµRlþVÁËÃöd&ç‚ç ¼º_Õ2·5[N;T(òrûú"¹ìJf³*˞zFéäRÑäú¡”D™B?.ô—šä¿¬ÜZY“i%Ž= ´¦¬‡õš¬œ§¡*ÓvÁ·Â­ÝĚ^ú\Æç3ÿ‰‘¨rÖ«¾⅑6Ž>…B‘Öe¿ìu‡ØÇßÚÌßJ_ÈUåÒ¦ý–NÖëlëÈÕ8ìõ1¯kâÝiŽMñn”â9˜õäÄÎâ2d¾®Æó}Q +YŠO;×ex4 Ý1ÓF6®²ò?kxý@³—ÏlëA -w•á…V>êí÷÷“½}°] #Á剷År­)k t ØHÛÔpDðj™^““έ]çW±‡éH² sT ª–ñº¡†™ŽËzc5_´@ÑÌEÞ²cbÉðè»àˆg`±þ˜ôŠ‹ÓäôâÅ«ˆ8 1 ö¥´OïMƒüýŸl{ç tÍfžO$XxíM) ºí;G¥ç”…Üà1hžˆ{‰ÕÙ, +2—døBú(À£–Ð4{°ÃGbø­%ÏgŠ*RÈ"(tG¡…Îó»YO±[Ȋ­<´Þ ®†6\5j¿:Ih™J=¦þ’’F'Ì75>‚cp9@ °‡Ï I(¬8½&GR,lý°Þà U“V=±h 5PF44ôòœL{Ÿä*qî¾¾Þò€Ð—Á)ÊÍܘ2n+î1…‡‰"uÔøj-{Æ`ؓÊôùMeíûêÕ4nŸ¢æO‘Jì*ÅÇÚ}njY ð^­çñ¢¸°~–g‰—ÖM¥MžìEv'×Àdä­ÙÖƧå2ü«-ÓÌ +ƒq{Ё½Ww¥kò©ýڝrÉ]-»¾¨R +2ü ù©Ö«{‰ÂMCŽßi’ö££”ÐeŸý²Š¼•k·õN˟º†FÈä41![\j¿>¢ÊñÕï©À\„U÷Ò~<Þ ºXB©%‚¤ŽÞY*T«ßœ_«¾î˜ n¶1cK¾ ‰ìcùê¿4a ¼G;/½ôDµI‰ÄU]Ž¢\<öäÚº†9›¼ñÅ0g½Æ|©yg):(ÿ|¦zúã‘ò#&Ä\§ø¦>õ÷0ï^¯ÏÊ63èOÆìžMH‚߇¢?L¥·_¬VM?Jz–µm&5O½=Ú»¾æJyxA å£Íq*FìÆÖ©ØÁùÎõk}-¡"tßf[UnÏ°_“:?ä¿Y†Ô–VÍ 5…§6+‰î%(u铪[Šïé67¨vžq°fð/‹$ç’nî#Y eÍ⼑ɥ)ÎPÿÅ]_çÇðOÙe~^Ç¢/h~k)¥7ä1D\nƒ¶É+$‡W^ÏH·Ñ+`û?½æ73þùÄ`'O+J¬Õ÷\ÊfŠW±¦ñs×ûXÕùÜn{e¥Ž&è¥Ú®Ïy¿L*5iMð +å×$¡gñÎZåS©ÉÛ¬VDH:®XyV,6ýsOæ ¥u˜{(8ˆ›òë¹ê²¾’€{fK‹béužØj2¾Dy©ò’äˆÐø«  +6SH†ݒÚIä*s¹Ç ¶½›ѽ|ê»_¼íˆ_=˾§Áúé’,þƒl˔|wÜcy}*íµÓŸ-)þ¯Ff&4VÇO$MV‚w£­©±ÜN«ÑÍv=þ©çaèôkKL’¹Ï󡋕½7?Tn*®Õ%׺™Ê&¤eͧ^€òó/:s.Àž„š•ƒ;èìc{¢g˦¹$˜Éu©‡A&C:‚¬Q`Ú·]cµ7S[.­ûÓwI3îN} §‰"\û¤ÏH.Bó–ãÓ½Èû?{ãì+ýnÔ;[Tô‘¨fÊóˆG²UŒ>ÌZœRß[Q^¾9nbÔMØüQb¥¼´¤’d©4p³­ 1¼#ðyþ)ÃLdnÍò͒ÿ%짪f¶ázÙÌåR3m‰!}v + 4ö \8Ç«Ž®Í팤üÔ9'õÞ3$?â±{MáìhkYl’Fäêdºe{—5‰!6Ê}I•2°Y¹Os®6oÑ÷I 8bŒy u0žšµò¯]³½²&CÛVmƒÁ4±ÑóÖDŠ®4œî°nրÁžüÉ>ÛK_NµLú<ÖÃϒ’¡1mRu3 É»Ž½ÉÛìD £ ¶&BA±! Óã>uFt\ÕZä;C-è¶Úh˜H>Ë[ŠÅ‘qKþ¼O¶zç îf’ÏâójåÒÉ~:–)ͯjwõ(’sF¤Œ¿wÏ֖ò:)É(©º(ñ—ï=•°ÏÚFûnø¦½Eód4ó o¶^ŒÔ~~Ÿ¶`<0CÑK¦!F¥]Xðᕌ‚d´ðjö±št•äw«Ãy‹¾Ë÷[™2¬”ì 䄔Ì1¸ïa& ò×?uo¼²¸sê9,Û¿Êõ¸£Ã•8I÷ºçø}ÀkÜó­’Ÿ„È¡æ5‘Xë)RK?Ù²À-cû­&yü•áÑ ÞÇr¯n_Ñ}]KÀM?R©îV–våGG"0q>9µ½Éáiú€}tK/ÌWS?–ÖÈÜï½ [YÛéïñeûB›nèæÊ{ÀëÆU^ÌŽ¯]x‘‡²D¬º'äŠ:ùû‚¾oςhéÚý9òT»ã¯øN»—î tÑ~ß^‘Ú/ÜÒ4°ÚÔg«<½—‘*{íp•ò^wšNCçٕ(ù+iƒ«{K’×pÎ-0¬ŒªæEïL”kÙô›Û¥%Á|­ÌˆÒh/iðŠÍž\|çuyê5ç÷N}é+²€*èFžEi“s;wÌw_þò]“UÕjؗtÃ<²þ¸6ý0ë¥=ºdQ²°¢`",²=¸äJ@£G¶Uے–ÞSî¦Þ¾~’ÌŸg¹Iû~;E—Ó¥Þ¸íø] Â MnV&€›6¯VÕûqô1K—àˆí‹%©glÆCŒ«oQZ‡JÈÓö™Ñ½÷â0%f?›ïÌ,‚qš‰(Ü+ï&‘‘ÒZqNG*#Yù|æC¢o4'V:n0À¼Öݐ•~Nû$Âå…>“È饜ðŒ1AG}ƒuZ)Lñ!YĞ޽Ë3¶,³•m9…á æ~9åXJX"D³ÙÖ·PN£‰Ð/…žùրù½—€çZGÔt´Y:ag³frѕ´Ô9ÆÜ öý˜-ûÛÑE9^ˆZíjgJt8ª-"çR&©AÆQ:ŇLýFñŠ_r ]þßy$½æÖ_\Ì2£ÍЛ.®H¥þ r¢»~áñ´(ùûdû† ­Í¡cä+;«w…°YJ¡K²æ3V +úG„ýJ×A·Ãê•Bw¢3©ÍìSS”‰qœ5§¸¹ÜH\^¢+wšânX¶Þ–ʱ%æ9 ÜY±Žzm’ír!°vwá]k±åd +ì¹ÿ`F'U"a.7[§£©Ôn·ÛCîÝø$±o¹†ì¤øߐín–wب¸#ùˆ¢…˶Š~<ŸŽtž2÷{éI¼}?äÜyj4²ùÆUp£+¾Î èsÜõO(à1½RMdMˆéóaö-·MZQvQwɦɃl‰Î "4Y RåôÙ׋òu—„í¡´v¯ùEbº¿Ši¸RHædì/ãî !î^ñ‰ku:“ñùpç¦<Áy­åQÃ7ŽØ!\¿<åÀûx4z4n®p×ä±¢Ô͚K”CÑLŠÕсñ]·v)j³+45荱u8=žÇ`a*%Ÿjג<€ò„[”Œ´Å޲ôXþðþìq¢MÂRØçé77–Þb3N!²…?bÆʅcêôKÔcKy®Õñ[útŠŽËúg >£šç´èg‘u^´±^‰‘Þ†ÁƒD’‹4)Ÿ–Áä[9ÒÒH¯CãxÝ ³½àir £ª .é뚶õ‹³´WŸ„¼œ!ð\–‹K;©_Xˆ‹p÷;xuËP8ý¼|Ú¥Àü „¥îL.š^×zŸ¤ÝÑH+Œ¼9Öõ|ðüZ¶Ò€pø{2¨J덟j+šîy#›…Òáµ{®Ë¤D'žÑ%b¦´ Íj×Çetƒ“·=(ò¢™/}Ûc%3qP|¹ç˜¤y¨p½÷ÉC^p‡v篪ƒÅƏ,Ò¤™ +šD¾Ð õjÅádɲnUͦûAlTŸŒ_0Z?‹{Axž&@&›?”P¶:T—Ósz+nXBTx²_“èuO»ÓĂ-EÅnÉ@řdš›èóВæx18(Ûeu5^×åŠÐè®@ +½/#±9õ’½ÍÑqN1¦Š³ÞZ'Àú֚֝p]¼!ò˜"bÍõ¾ç2ðUG;6ª"Ì;®¯*„Ÿ,¢ZF—‰dªH´õ«üœÚ˜ïK–…`¤Ÿä‚¨÷ÝǔC‡Es)o1µW:Ì¿6Kû¶ÓJd_sš‘¢ïùӗÕ[ +ʸ¥=gs*dlJ·7 ;й3Ûj¾Ö¿œõ#³~æ½Ä|˜IêÊÃsÅÂ’»:êa"A®çÜ¥6/û¡ÑˆeÉÈÿKßÅò endstream endobj 1140 0 obj << /Type /FontDescriptor -/FontName /LZXMMQ+CMR17 +/FontName /HSCMYC+CMR17 /Flags 4 /FontBBox [-33 -250 945 749] /Ascent 694 @@ -5712,7 +5718,7 @@ endobj /ItalicAngle 0 /StemV 53 /XHeight 430 -/CharSet (/F/J/X/a/comma/d/five/g/h/i/n/o/one/p/period/r/t/two/u/y/zero) +/CharSet (/F/X/a/b/comma/d/e/g/h/i/n/o/one/p/period/r/t/three/two/u/y/zero) /FontFile 1139 0 R >> endobj 1141 0 obj << @@ -6183,7 +6189,7 @@ endobj 435 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /LZXMMQ+CMR17 +/BaseFont /HSCMYC+CMR17 /FontDescriptor 1140 0 R /FirstChar 44 /LastChar 121 @@ -7398,8 +7404,8 @@ endobj >> endobj 1241 0 obj << /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.3)/Keywords() -/CreationDate (D:20100125212818-05'00') -/ModDate (D:20100125212818-05'00') +/CreationDate (D:20100203173214-05'00') +/ModDate (D:20100203173214-05'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX using libpoppler, Version 3.141592-1.40.3-2.2 (Web2C 7.5.6) kpathsea version 3.5.6) >> endobj @@ -7411,1247 +7417,1247 @@ xref 0000000004 00000 f 0000000000 00000 f 0000000015 00000 n -0000033011 00000 n -0000401861 00000 n +0000033008 00000 n +0000402000 00000 n 0000000060 00000 n 0000000106 00000 n -0000033066 00000 n -0000401752 00000 n +0000033063 00000 n +0000401891 00000 n 0000000156 00000 n 0000000183 00000 n -0000033122 00000 n -0000401678 00000 n +0000033119 00000 n +0000401817 00000 n 0000000239 00000 n 0000000269 00000 n -0000033178 00000 n -0000401591 00000 n +0000033175 00000 n +0000401730 00000 n 0000000325 00000 n 0000000358 00000 n -0000033234 00000 n -0000401504 00000 n +0000033231 00000 n +0000401643 00000 n 0000000414 00000 n 0000000444 00000 n -0000036483 00000 n -0000401417 00000 n +0000036480 00000 n +0000401556 00000 n 0000000500 00000 n 0000000552 00000 n -0000048315 00000 n -0000401330 00000 n +0000048312 00000 n +0000401469 00000 n 0000000608 00000 n 0000000647 00000 n -0000048371 00000 n -0000401256 00000 n +0000048368 00000 n +0000401395 00000 n 0000000703 00000 n 0000000738 00000 n -0000048427 00000 n -0000401133 00000 n +0000048424 00000 n +0000401272 00000 n 0000000789 00000 n 0000000829 00000 n -0000050958 00000 n -0000401059 00000 n +0000050955 00000 n +0000401198 00000 n 0000000885 00000 n 0000000917 00000 n -0000051014 00000 n -0000400972 00000 n +0000051011 00000 n +0000401111 00000 n 0000000973 00000 n 0000000996 00000 n -0000051070 00000 n -0000400885 00000 n +0000051067 00000 n +0000401024 00000 n 0000001052 00000 n 0000001078 00000 n -0000053676 00000 n -0000400798 00000 n +0000053673 00000 n +0000400937 00000 n 0000001134 00000 n 0000001158 00000 n -0000053732 00000 n -0000400711 00000 n +0000053729 00000 n +0000400850 00000 n 0000001214 00000 n 0000001240 00000 n -0000053788 00000 n -0000400637 00000 n +0000053785 00000 n +0000400776 00000 n 0000001296 00000 n 0000001324 00000 n -0000056210 00000 n -0000400527 00000 n +0000056207 00000 n +0000400666 00000 n 0000001375 00000 n 0000001419 00000 n -0000056266 00000 n -0000400453 00000 n +0000056263 00000 n +0000400592 00000 n 0000001475 00000 n 0000001506 00000 n -0000056493 00000 n -0000400379 00000 n +0000056490 00000 n +0000400518 00000 n 0000001562 00000 n 0000001597 00000 n -0000075331 00000 n -0000400253 00000 n +0000075328 00000 n +0000400392 00000 n 0000001643 00000 n 0000001683 00000 n -0000075387 00000 n -0000400154 00000 n +0000075384 00000 n +0000400293 00000 n 0000001734 00000 n 0000001761 00000 n -0000075443 00000 n -0000400080 00000 n +0000075440 00000 n +0000400219 00000 n 0000001817 00000 n 0000001859 00000 n -0000075499 00000 n -0000399993 00000 n +0000075496 00000 n +0000400132 00000 n 0000001915 00000 n 0000001943 00000 n -0000075555 00000 n -0000399906 00000 n +0000075552 00000 n +0000400045 00000 n 0000001999 00000 n 0000002028 00000 n -0000078047 00000 n -0000399817 00000 n +0000078044 00000 n +0000399956 00000 n 0000002084 00000 n 0000002135 00000 n -0000078103 00000 n -0000399726 00000 n +0000078100 00000 n +0000399865 00000 n 0000002192 00000 n 0000002222 00000 n -0000078160 00000 n -0000399634 00000 n +0000078157 00000 n +0000399773 00000 n 0000002279 00000 n 0000002313 00000 n -0000079381 00000 n -0000399542 00000 n +0000079378 00000 n +0000399681 00000 n 0000002370 00000 n 0000002406 00000 n -0000081678 00000 n -0000399450 00000 n +0000081675 00000 n +0000399589 00000 n 0000002463 00000 n 0000002506 00000 n -0000081735 00000 n -0000399372 00000 n +0000081732 00000 n +0000399511 00000 n 0000002563 00000 n 0000002600 00000 n -0000084422 00000 n -0000399240 00000 n +0000084419 00000 n +0000399379 00000 n 0000002647 00000 n 0000002698 00000 n -0000084479 00000 n -0000399122 00000 n +0000084476 00000 n +0000399261 00000 n 0000002750 00000 n 0000002778 00000 n -0000084536 00000 n -0000399057 00000 n +0000084533 00000 n +0000399196 00000 n 0000002835 00000 n 0000002872 00000 n -0000084593 00000 n -0000398925 00000 n +0000084590 00000 n +0000399064 00000 n 0000002924 00000 n 0000002966 00000 n -0000084650 00000 n -0000398860 00000 n +0000084647 00000 n +0000398999 00000 n 0000003023 00000 n 0000003058 00000 n -0000099730 00000 n -0000398781 00000 n +0000099727 00000 n +0000398920 00000 n 0000003110 00000 n 0000003161 00000 n -0000104555 00000 n -0000398648 00000 n +0000104552 00000 n +0000398787 00000 n 0000003208 00000 n 0000003257 00000 n -0000104612 00000 n -0000398569 00000 n +0000104609 00000 n +0000398708 00000 n 0000003309 00000 n 0000003337 00000 n -0000104669 00000 n -0000398437 00000 n +0000104666 00000 n +0000398576 00000 n 0000003389 00000 n 0000003439 00000 n -0000104726 00000 n -0000398358 00000 n +0000104723 00000 n +0000398497 00000 n 0000003496 00000 n 0000003536 00000 n -0000104781 00000 n -0000398265 00000 n +0000104778 00000 n +0000398404 00000 n 0000003593 00000 n 0000003634 00000 n -0000107378 00000 n -0000398172 00000 n +0000107375 00000 n +0000398311 00000 n 0000003691 00000 n 0000003725 00000 n -0000107435 00000 n -0000398093 00000 n +0000107432 00000 n +0000398232 00000 n 0000003782 00000 n 0000003814 00000 n -0000122241 00000 n -0000397975 00000 n +0000122238 00000 n +0000398114 00000 n 0000003866 00000 n 0000003919 00000 n -0000122298 00000 n -0000397896 00000 n +0000122295 00000 n +0000398035 00000 n 0000003976 00000 n 0000004031 00000 n -0000129449 00000 n -0000397803 00000 n +0000129446 00000 n +0000397942 00000 n 0000004088 00000 n 0000004126 00000 n -0000129848 00000 n -0000397710 00000 n +0000129845 00000 n +0000397849 00000 n 0000004183 00000 n 0000004227 00000 n -0000131722 00000 n -0000397617 00000 n +0000131719 00000 n +0000397756 00000 n 0000004284 00000 n 0000004318 00000 n -0000132631 00000 n -0000397524 00000 n +0000132628 00000 n +0000397663 00000 n 0000004375 00000 n 0000004411 00000 n -0000135343 00000 n -0000397431 00000 n +0000135340 00000 n +0000397570 00000 n 0000004468 00000 n 0000004499 00000 n -0000138866 00000 n -0000397338 00000 n +0000138863 00000 n +0000397477 00000 n 0000004556 00000 n 0000004588 00000 n -0000138923 00000 n -0000397245 00000 n +0000138920 00000 n +0000397384 00000 n 0000004645 00000 n 0000004679 00000 n -0000140964 00000 n -0000397166 00000 n +0000140961 00000 n +0000397305 00000 n 0000004736 00000 n 0000004776 00000 n -0000143512 00000 n -0000397033 00000 n +0000143509 00000 n +0000397172 00000 n 0000004823 00000 n 0000004881 00000 n -0000143569 00000 n -0000396954 00000 n +0000143566 00000 n +0000397093 00000 n 0000004933 00000 n 0000004961 00000 n -0000143626 00000 n -0000396836 00000 n +0000143623 00000 n +0000396975 00000 n 0000005013 00000 n 0000005049 00000 n -0000143683 00000 n -0000396757 00000 n +0000143680 00000 n +0000396896 00000 n 0000005106 00000 n 0000005135 00000 n -0000146574 00000 n -0000396664 00000 n +0000146571 00000 n +0000396803 00000 n 0000005192 00000 n 0000005233 00000 n -0000149572 00000 n -0000396585 00000 n +0000149569 00000 n +0000396724 00000 n 0000005290 00000 n 0000005318 00000 n -0000153598 00000 n -0000396452 00000 n +0000153595 00000 n +0000396591 00000 n 0000005365 00000 n 0000005414 00000 n -0000153655 00000 n -0000396373 00000 n +0000153652 00000 n +0000396512 00000 n 0000005466 00000 n 0000005494 00000 n -0000153712 00000 n -0000396255 00000 n +0000153709 00000 n +0000396394 00000 n 0000005546 00000 n 0000005580 00000 n -0000153769 00000 n -0000396176 00000 n +0000153766 00000 n +0000396315 00000 n 0000005637 00000 n 0000005670 00000 n -0000153826 00000 n -0000396083 00000 n +0000153823 00000 n +0000396222 00000 n 0000005727 00000 n 0000005760 00000 n -0000157306 00000 n -0000396004 00000 n +0000157303 00000 n +0000396143 00000 n 0000005817 00000 n 0000005854 00000 n -0000164504 00000 n -0000395871 00000 n +0000164501 00000 n +0000396010 00000 n 0000005901 00000 n 0000005950 00000 n -0000164561 00000 n -0000395792 00000 n +0000164558 00000 n +0000395931 00000 n 0000006002 00000 n 0000006030 00000 n -0000164618 00000 n -0000395674 00000 n +0000164615 00000 n +0000395813 00000 n 0000006082 00000 n 0000006116 00000 n -0000164675 00000 n -0000395595 00000 n +0000164672 00000 n +0000395734 00000 n 0000006173 00000 n 0000006198 00000 n -0000185074 00000 n -0000395516 00000 n +0000185071 00000 n +0000395655 00000 n 0000006255 00000 n 0000006288 00000 n -0000198644 00000 n -0000395383 00000 n +0000198641 00000 n +0000395522 00000 n 0000006335 00000 n 0000006379 00000 n -0000198702 00000 n -0000395304 00000 n +0000198699 00000 n +0000395443 00000 n 0000006431 00000 n 0000006459 00000 n -0000198760 00000 n -0000395211 00000 n +0000198757 00000 n +0000395350 00000 n 0000006511 00000 n 0000006545 00000 n -0000234562 00000 n -0000395118 00000 n +0000234559 00000 n +0000395257 00000 n 0000006597 00000 n 0000006626 00000 n -0000234620 00000 n -0000395025 00000 n +0000234617 00000 n +0000395164 00000 n 0000006678 00000 n 0000006707 00000 n -0000256407 00000 n -0000394932 00000 n +0000256404 00000 n +0000395071 00000 n 0000006759 00000 n 0000006788 00000 n -0000259136 00000 n -0000394814 00000 n +0000259133 00000 n +0000394953 00000 n 0000006840 00000 n 0000006874 00000 n -0000259194 00000 n -0000394735 00000 n +0000259191 00000 n +0000394874 00000 n 0000006931 00000 n 0000006964 00000 n -0000261972 00000 n -0000394642 00000 n +0000261969 00000 n +0000394781 00000 n 0000007021 00000 n 0000007054 00000 n -0000265366 00000 n -0000394549 00000 n +0000265363 00000 n +0000394688 00000 n 0000007111 00000 n 0000007149 00000 n -0000265424 00000 n -0000394456 00000 n +0000265421 00000 n +0000394595 00000 n 0000007206 00000 n 0000007244 00000 n -0000267403 00000 n -0000394377 00000 n +0000267400 00000 n +0000394516 00000 n 0000007301 00000 n 0000007339 00000 n -0000269331 00000 n -0000394244 00000 n +0000269328 00000 n +0000394383 00000 n 0000007386 00000 n 0000007422 00000 n -0000269389 00000 n -0000394165 00000 n +0000269386 00000 n +0000394304 00000 n 0000007474 00000 n 0000007502 00000 n -0000269447 00000 n -0000394047 00000 n +0000269444 00000 n +0000394186 00000 n 0000007554 00000 n 0000007583 00000 n -0000269505 00000 n -0000393968 00000 n +0000269502 00000 n +0000394107 00000 n 0000007640 00000 n 0000007664 00000 n -0000269563 00000 n -0000393875 00000 n +0000269560 00000 n +0000394014 00000 n 0000007721 00000 n 0000007758 00000 n -0000272227 00000 n -0000393782 00000 n +0000272224 00000 n +0000393921 00000 n 0000007815 00000 n 0000007852 00000 n -0000272285 00000 n -0000393689 00000 n +0000272282 00000 n +0000393828 00000 n 0000007909 00000 n 0000007944 00000 n -0000272343 00000 n -0000393596 00000 n +0000272340 00000 n +0000393735 00000 n 0000008001 00000 n 0000008037 00000 n -0000272401 00000 n -0000393503 00000 n +0000272398 00000 n +0000393642 00000 n 0000008094 00000 n 0000008129 00000 n -0000274159 00000 n -0000393424 00000 n +0000274156 00000 n +0000393563 00000 n 0000008186 00000 n 0000008220 00000 n -0000276824 00000 n -0000393291 00000 n +0000276821 00000 n +0000393430 00000 n 0000008268 00000 n 0000008294 00000 n -0000276882 00000 n -0000393226 00000 n +0000276879 00000 n +0000393365 00000 n 0000008347 00000 n 0000008399 00000 n -0000280693 00000 n -0000393093 00000 n +0000280690 00000 n +0000393232 00000 n 0000008447 00000 n 0000008502 00000 n -0000280751 00000 n -0000392975 00000 n +0000280748 00000 n +0000393114 00000 n 0000008554 00000 n 0000008582 00000 n -0000280809 00000 n -0000392896 00000 n +0000280806 00000 n +0000393035 00000 n 0000008639 00000 n 0000008671 00000 n -0000280867 00000 n -0000392817 00000 n +0000280864 00000 n +0000392956 00000 n 0000008728 00000 n 0000008757 00000 n -0000283491 00000 n -0000392738 00000 n +0000283488 00000 n +0000392877 00000 n 0000008809 00000 n 0000008842 00000 n -0000286023 00000 n -0000392658 00000 n +0000286020 00000 n +0000392797 00000 n 0000008890 00000 n 0000008937 00000 n -0000010085 00000 n -0000010424 00000 n -0000010575 00000 n -0000010731 00000 n -0000010893 00000 n -0000011055 00000 n -0000011217 00000 n -0000011379 00000 n -0000011541 00000 n -0000011703 00000 n -0000011859 00000 n -0000012021 00000 n -0000012182 00000 n -0000012342 00000 n -0000012504 00000 n -0000012666 00000 n -0000012828 00000 n -0000012984 00000 n -0000013145 00000 n -0000013306 00000 n -0000013457 00000 n -0000013613 00000 n -0000013775 00000 n -0000013936 00000 n -0000014097 00000 n -0000014259 00000 n -0000014420 00000 n -0000016704 00000 n -0000014753 00000 n +0000010082 00000 n +0000010421 00000 n +0000010572 00000 n +0000010728 00000 n +0000010890 00000 n +0000011052 00000 n +0000011214 00000 n +0000011376 00000 n +0000011538 00000 n +0000011700 00000 n +0000011856 00000 n +0000012018 00000 n +0000012179 00000 n +0000012339 00000 n +0000012501 00000 n +0000012663 00000 n +0000012825 00000 n +0000012981 00000 n +0000013142 00000 n +0000013303 00000 n +0000013454 00000 n +0000013610 00000 n +0000013772 00000 n +0000013933 00000 n +0000014094 00000 n +0000014256 00000 n +0000014417 00000 n +0000016701 00000 n +0000014750 00000 n 0000008989 00000 n -0000014582 00000 n -0000014639 00000 n -0000389807 00000 n -0000389376 00000 n -0000014696 00000 n -0000389231 00000 n -0000390825 00000 n -0000016866 00000 n -0000017028 00000 n -0000017190 00000 n -0000017341 00000 n -0000017497 00000 n -0000017659 00000 n -0000017815 00000 n -0000017976 00000 n -0000018131 00000 n -0000018282 00000 n -0000018438 00000 n -0000018590 00000 n -0000018752 00000 n -0000018914 00000 n -0000019076 00000 n -0000019238 00000 n -0000019394 00000 n -0000019556 00000 n -0000019717 00000 n -0000019879 00000 n -0000020041 00000 n -0000020202 00000 n -0000020364 00000 n -0000020526 00000 n -0000020688 00000 n -0000020849 00000 n -0000021000 00000 n -0000021156 00000 n -0000021311 00000 n -0000021473 00000 n -0000021634 00000 n -0000021796 00000 n -0000021947 00000 n -0000022103 00000 n -0000022258 00000 n -0000022419 00000 n -0000022581 00000 n -0000024677 00000 n -0000022799 00000 n -0000016269 00000 n -0000014851 00000 n -0000022742 00000 n -0000024828 00000 n -0000024984 00000 n -0000025140 00000 n -0000025301 00000 n -0000025462 00000 n -0000025613 00000 n -0000025769 00000 n -0000025924 00000 n -0000026079 00000 n -0000026235 00000 n -0000026391 00000 n -0000026546 00000 n -0000026707 00000 n -0000026869 00000 n -0000027029 00000 n -0000027191 00000 n -0000027353 00000 n -0000027504 00000 n -0000027660 00000 n -0000027814 00000 n -0000027976 00000 n -0000028138 00000 n -0000028300 00000 n -0000028462 00000 n -0000028624 00000 n -0000028785 00000 n -0000028947 00000 n -0000029099 00000 n -0000029256 00000 n -0000029408 00000 n -0000029564 00000 n -0000029724 00000 n -0000029886 00000 n -0000030042 00000 n -0000030249 00000 n -0000024266 00000 n -0000022884 00000 n -0000030192 00000 n -0000032650 00000 n -0000032802 00000 n -0000033290 00000 n -0000032503 00000 n -0000030334 00000 n -0000032954 00000 n -0000036124 00000 n -0000036277 00000 n -0000036596 00000 n -0000035977 00000 n -0000033375 00000 n -0000036426 00000 n -0000036539 00000 n -0000390388 00000 n -0000038281 00000 n -0000048545 00000 n -0000038162 00000 n -0000036694 00000 n -0000048258 00000 n -0000048483 00000 n -0000047480 00000 n -0000051126 00000 n -0000050782 00000 n -0000048674 00000 n -0000050901 00000 n -0000390943 00000 n -0000053844 00000 n -0000053500 00000 n -0000051211 00000 n -0000053619 00000 n -0000055698 00000 n -0000055850 00000 n -0000056832 00000 n -0000055543 00000 n -0000053929 00000 n -0000056153 00000 n -0000056322 00000 n -0000056379 00000 n -0000056002 00000 n -0000056436 00000 n -0000056549 00000 n -0000056606 00000 n -0000056663 00000 n -0000056720 00000 n -0000056776 00000 n -0000061984 00000 n -0000060134 00000 n -0000059389 00000 n -0000056917 00000 n -0000059508 00000 n -0000059565 00000 n -0000059622 00000 n -0000059679 00000 n -0000059736 00000 n -0000059793 00000 n -0000059850 00000 n -0000059907 00000 n -0000059963 00000 n -0000060020 00000 n -0000060077 00000 n -0000063974 00000 n -0000065858 00000 n -0000066265 00000 n -0000061845 00000 n -0000060232 00000 n -0000066029 00000 n -0000066086 00000 n -0000066147 00000 n -0000388940 00000 n -0000389955 00000 n -0000389664 00000 n -0000066208 00000 n -0000063855 00000 n -0000065725 00000 n -0000291132 00000 n -0000069145 00000 n -0000069591 00000 n -0000069006 00000 n -0000066446 00000 n -0000069308 00000 n -0000069365 00000 n -0000069422 00000 n -0000069479 00000 n -0000069535 00000 n -0000072368 00000 n -0000072824 00000 n -0000072229 00000 n -0000069689 00000 n -0000072540 00000 n -0000072597 00000 n -0000072654 00000 n -0000072711 00000 n -0000072768 00000 n -0000389521 00000 n -0000390680 00000 n -0000391061 00000 n -0000075611 00000 n -0000075155 00000 n -0000072948 00000 n -0000075274 00000 n -0000078217 00000 n -0000077871 00000 n -0000075709 00000 n -0000077990 00000 n -0000079438 00000 n -0000079205 00000 n -0000078341 00000 n -0000079324 00000 n -0000081792 00000 n -0000081502 00000 n -0000079549 00000 n -0000081621 00000 n -0000083758 00000 n -0000083909 00000 n -0000084061 00000 n -0000084213 00000 n -0000084707 00000 n -0000083595 00000 n -0000081890 00000 n -0000084365 00000 n -0000390534 00000 n -0000087047 00000 n -0000087266 00000 n -0000086908 00000 n -0000084831 00000 n -0000087209 00000 n -0000390242 00000 n -0000391179 00000 n -0000089752 00000 n -0000089913 00000 n -0000090075 00000 n -0000090522 00000 n -0000089597 00000 n -0000087403 00000 n -0000090237 00000 n -0000090294 00000 n -0000090351 00000 n -0000090408 00000 n -0000090465 00000 n -0000091991 00000 n -0000093688 00000 n -0000091872 00000 n -0000090672 00000 n -0000093512 00000 n -0000093569 00000 n -0000093626 00000 n -0000093363 00000 n -0000095574 00000 n -0000097248 00000 n -0000095455 00000 n -0000093843 00000 n -0000097073 00000 n -0000097130 00000 n -0000097192 00000 n -0000096924 00000 n -0000099787 00000 n -0000099440 00000 n -0000097416 00000 n -0000099559 00000 n -0000099616 00000 n -0000099673 00000 n -0000101601 00000 n -0000101425 00000 n -0000099924 00000 n -0000101544 00000 n -0000103740 00000 n -0000103891 00000 n -0000104043 00000 n -0000104195 00000 n -0000104837 00000 n -0000103569 00000 n -0000101673 00000 n -0000104498 00000 n -0000104347 00000 n -0000391297 00000 n -0000106867 00000 n -0000107019 00000 n -0000107554 00000 n -0000106712 00000 n -0000104948 00000 n -0000107321 00000 n -0000107171 00000 n -0000107492 00000 n -0000109646 00000 n -0000109796 00000 n -0000110098 00000 n -0000110250 00000 n -0000110402 00000 n -0000110554 00000 n -0000113887 00000 n -0000114039 00000 n -0000111730 00000 n -0000109459 00000 n -0000107709 00000 n -0000110706 00000 n -0000110763 00000 n -0000110820 00000 n -0000110877 00000 n -0000109946 00000 n -0000110934 00000 n -0000110991 00000 n -0000111048 00000 n -0000111105 00000 n -0000111162 00000 n -0000111219 00000 n -0000111276 00000 n -0000111333 00000 n -0000111390 00000 n -0000111446 00000 n -0000111502 00000 n -0000111559 00000 n -0000111616 00000 n -0000111673 00000 n -0000114191 00000 n -0000114353 00000 n -0000115308 00000 n -0000113724 00000 n -0000111828 00000 n -0000114513 00000 n -0000114570 00000 n -0000114627 00000 n -0000114683 00000 n -0000114740 00000 n -0000114797 00000 n -0000114854 00000 n -0000114911 00000 n -0000114968 00000 n -0000115025 00000 n -0000115082 00000 n -0000115138 00000 n -0000115194 00000 n -0000115251 00000 n -0000388648 00000 n -0000118426 00000 n -0000117168 00000 n -0000115432 00000 n -0000117287 00000 n -0000117344 00000 n -0000117401 00000 n -0000117458 00000 n -0000117515 00000 n -0000117572 00000 n -0000117629 00000 n -0000117686 00000 n -0000117743 00000 n -0000117800 00000 n -0000117857 00000 n -0000117914 00000 n -0000117971 00000 n -0000118027 00000 n -0000118084 00000 n -0000118141 00000 n -0000118198 00000 n -0000118255 00000 n -0000118312 00000 n -0000118369 00000 n -0000120938 00000 n -0000121100 00000 n -0000121251 00000 n -0000121556 00000 n -0000121709 00000 n -0000122867 00000 n -0000120751 00000 n -0000118524 00000 n -0000122015 00000 n -0000122072 00000 n -0000122129 00000 n -0000122186 00000 n -0000122355 00000 n -0000122412 00000 n -0000122469 00000 n -0000122526 00000 n -0000122583 00000 n -0000122640 00000 n -0000122697 00000 n -0000122754 00000 n -0000121403 00000 n -0000122810 00000 n -0000121862 00000 n -0000126220 00000 n -0000124849 00000 n -0000122978 00000 n -0000124968 00000 n -0000125025 00000 n -0000389086 00000 n -0000125082 00000 n -0000125139 00000 n -0000125196 00000 n -0000125253 00000 n -0000125310 00000 n -0000125367 00000 n -0000125424 00000 n -0000125481 00000 n -0000125537 00000 n -0000125594 00000 n -0000125651 00000 n -0000125708 00000 n -0000125765 00000 n -0000125822 00000 n -0000125879 00000 n -0000125935 00000 n -0000125992 00000 n -0000126049 00000 n -0000126106 00000 n -0000126163 00000 n -0000391415 00000 n -0000128760 00000 n -0000128922 00000 n -0000129084 00000 n -0000129238 00000 n -0000129962 00000 n -0000128597 00000 n -0000126357 00000 n -0000129392 00000 n -0000129506 00000 n -0000129563 00000 n -0000129620 00000 n -0000129677 00000 n -0000129734 00000 n -0000129791 00000 n -0000129905 00000 n -0000188144 00000 n -0000132688 00000 n -0000131546 00000 n -0000130060 00000 n -0000131665 00000 n -0000131779 00000 n -0000131836 00000 n -0000131893 00000 n -0000131950 00000 n -0000132006 00000 n -0000132063 00000 n -0000132120 00000 n -0000132177 00000 n -0000132234 00000 n -0000132290 00000 n -0000132347 00000 n -0000132404 00000 n -0000132461 00000 n -0000132518 00000 n -0000132575 00000 n -0000135400 00000 n -0000134257 00000 n -0000132786 00000 n -0000134376 00000 n -0000134433 00000 n -0000134490 00000 n -0000134547 00000 n -0000134604 00000 n -0000134661 00000 n -0000134718 00000 n -0000134775 00000 n -0000134832 00000 n -0000134888 00000 n -0000134945 00000 n -0000135002 00000 n -0000135059 00000 n -0000135116 00000 n -0000135173 00000 n -0000135229 00000 n -0000135286 00000 n -0000138333 00000 n -0000138505 00000 n -0000138657 00000 n -0000138980 00000 n -0000138178 00000 n -0000135498 00000 n -0000138809 00000 n -0000140734 00000 n -0000141021 00000 n -0000140595 00000 n -0000139104 00000 n -0000140907 00000 n -0000143740 00000 n -0000143336 00000 n -0000141106 00000 n -0000143455 00000 n -0000391533 00000 n -0000146688 00000 n -0000146398 00000 n -0000143890 00000 n -0000146517 00000 n -0000146631 00000 n -0000149285 00000 n -0000149685 00000 n -0000149146 00000 n -0000146799 00000 n -0000149458 00000 n -0000149515 00000 n -0000149628 00000 n -0000151107 00000 n -0000150646 00000 n -0000149809 00000 n -0000150765 00000 n -0000150822 00000 n -0000150879 00000 n -0000150936 00000 n -0000150993 00000 n -0000151050 00000 n -0000153379 00000 n -0000153883 00000 n -0000153240 00000 n -0000151205 00000 n -0000153541 00000 n -0000157088 00000 n -0000157363 00000 n -0000156949 00000 n -0000154020 00000 n -0000157249 00000 n -0000388795 00000 n -0000160653 00000 n -0000160078 00000 n -0000157551 00000 n -0000160197 00000 n -0000160254 00000 n -0000160311 00000 n -0000160368 00000 n -0000160425 00000 n -0000390100 00000 n -0000160482 00000 n -0000160539 00000 n -0000160596 00000 n -0000391651 00000 n -0000161772 00000 n -0000161311 00000 n -0000160841 00000 n -0000161430 00000 n -0000161487 00000 n -0000161544 00000 n -0000161601 00000 n -0000161658 00000 n -0000161715 00000 n -0000165693 00000 n -0000164732 00000 n -0000164328 00000 n -0000161857 00000 n -0000164447 00000 n -0000169352 00000 n -0000173344 00000 n -0000180552 00000 n -0000178433 00000 n -0000165574 00000 n -0000164830 00000 n -0000178190 00000 n -0000178247 00000 n -0000178309 00000 n -0000178371 00000 n -0000168919 00000 n -0000172913 00000 n -0000177687 00000 n -0000185131 00000 n -0000180433 00000 n -0000178575 00000 n -0000184955 00000 n -0000185012 00000 n -0000184521 00000 n -0000187765 00000 n -0000187925 00000 n -0000188201 00000 n -0000187618 00000 n -0000185299 00000 n -0000188087 00000 n -0000190794 00000 n -0000190956 00000 n -0000192811 00000 n -0000191232 00000 n -0000190647 00000 n -0000188338 00000 n -0000191118 00000 n -0000191175 00000 n -0000391769 00000 n -0000193029 00000 n -0000192672 00000 n -0000191369 00000 n -0000192972 00000 n -0000195179 00000 n -0000195341 00000 n -0000195503 00000 n -0000195719 00000 n -0000195024 00000 n -0000193140 00000 n -0000195661 00000 n -0000198818 00000 n -0000198463 00000 n -0000195856 00000 n -0000198585 00000 n -0000200103 00000 n -0000199615 00000 n -0000199434 00000 n -0000198930 00000 n -0000199556 00000 n -0000232822 00000 n -0000199981 00000 n -0000199688 00000 n -0000232700 00000 n -0000232759 00000 n -0000231858 00000 n -0000234678 00000 n -0000234380 00000 n -0000232941 00000 n -0000234503 00000 n -0000391890 00000 n -0000235708 00000 n -0000256528 00000 n -0000235585 00000 n -0000234790 00000 n -0000256348 00000 n -0000256465 00000 n -0000255572 00000 n -0000259252 00000 n -0000258954 00000 n -0000256673 00000 n -0000259077 00000 n -0000262030 00000 n -0000261790 00000 n -0000259377 00000 n -0000261913 00000 n -0000263865 00000 n -0000263683 00000 n -0000262155 00000 n -0000263806 00000 n -0000265482 00000 n -0000265184 00000 n -0000263964 00000 n -0000265307 00000 n -0000267638 00000 n -0000267221 00000 n -0000265620 00000 n -0000267344 00000 n -0000267461 00000 n -0000267520 00000 n -0000267579 00000 n -0000392015 00000 n -0000269621 00000 n -0000269149 00000 n -0000267776 00000 n -0000269272 00000 n -0000272458 00000 n -0000272045 00000 n -0000269759 00000 n -0000272168 00000 n -0000274217 00000 n -0000273977 00000 n -0000272583 00000 n -0000274100 00000 n -0000276939 00000 n -0000276642 00000 n -0000274329 00000 n -0000276765 00000 n -0000277756 00000 n -0000277574 00000 n -0000277064 00000 n -0000277697 00000 n -0000279996 00000 n -0000280148 00000 n -0000280301 00000 n -0000280468 00000 n -0000280925 00000 n -0000279825 00000 n -0000277855 00000 n -0000280634 00000 n -0000392140 00000 n -0000283549 00000 n -0000283309 00000 n -0000281037 00000 n -0000283432 00000 n -0000285292 00000 n -0000285051 00000 n -0000283674 00000 n -0000285174 00000 n -0000285233 00000 n -0000286081 00000 n -0000285841 00000 n -0000285404 00000 n -0000285964 00000 n -0000287514 00000 n -0000289077 00000 n -0000289246 00000 n -0000289424 00000 n -0000289877 00000 n -0000287343 00000 n -0000286180 00000 n -0000289759 00000 n -0000289818 00000 n -0000289591 00000 n -0000288816 00000 n -0000288973 00000 n -0000289054 00000 n -0000290602 00000 n -0000291189 00000 n -0000290449 00000 n -0000290006 00000 n -0000291015 00000 n -0000291074 00000 n -0000290809 00000 n -0000291288 00000 n -0000291312 00000 n -0000291758 00000 n -0000292272 00000 n -0000292298 00000 n -0000292330 00000 n -0000292854 00000 n -0000293426 00000 n -0000293506 00000 n -0000293664 00000 n -0000294315 00000 n -0000294893 00000 n -0000295313 00000 n -0000295956 00000 n -0000296440 00000 n -0000297083 00000 n -0000298711 00000 n -0000298939 00000 n -0000301840 00000 n -0000302174 00000 n -0000307567 00000 n -0000307847 00000 n -0000309988 00000 n -0000310216 00000 n -0000326053 00000 n -0000326629 00000 n -0000331605 00000 n -0000331884 00000 n -0000335215 00000 n -0000335483 00000 n -0000338118 00000 n -0000338368 00000 n -0000350140 00000 n -0000350573 00000 n -0000352626 00000 n -0000352913 00000 n -0000354124 00000 n -0000354350 00000 n -0000355912 00000 n -0000356154 00000 n -0000365571 00000 n -0000365922 00000 n -0000374370 00000 n -0000374772 00000 n -0000388100 00000 n -0000392265 00000 n -0000392385 00000 n -0000392508 00000 n -0000392581 00000 n -0000401971 00000 n -0000402149 00000 n -0000402328 00000 n -0000402506 00000 n -0000402685 00000 n -0000402862 00000 n -0000403039 00000 n -0000403218 00000 n -0000403396 00000 n -0000403575 00000 n -0000403754 00000 n -0000403924 00000 n -0000404095 00000 n -0000404265 00000 n -0000404436 00000 n -0000404606 00000 n -0000404777 00000 n -0000404946 00000 n -0000405115 00000 n -0000405286 00000 n -0000405456 00000 n -0000405627 00000 n -0000405797 00000 n -0000405968 00000 n -0000406138 00000 n -0000406309 00000 n -0000406513 00000 n -0000406697 00000 n -0000406872 00000 n -0000407043 00000 n -0000407213 00000 n -0000407384 00000 n -0000407554 00000 n -0000407725 00000 n -0000407895 00000 n -0000408066 00000 n -0000408239 00000 n -0000408413 00000 n -0000408590 00000 n -0000408765 00000 n -0000408947 00000 n -0000409150 00000 n -0000409352 00000 n -0000409555 00000 n -0000409757 00000 n -0000409959 00000 n -0000410148 00000 n -0000410335 00000 n -0000410549 00000 n -0000410776 00000 n -0000411003 00000 n -0000411230 00000 n -0000411470 00000 n -0000411731 00000 n -0000411992 00000 n -0000412255 00000 n -0000412522 00000 n -0000412789 00000 n -0000413056 00000 n -0000413323 00000 n -0000413590 00000 n -0000413857 00000 n -0000414064 00000 n -0000414182 00000 n -0000414299 00000 n -0000414414 00000 n -0000414530 00000 n -0000414646 00000 n -0000414762 00000 n -0000414882 00000 n -0000415009 00000 n -0000415144 00000 n -0000415284 00000 n -0000415388 00000 n -0000415506 00000 n -0000415625 00000 n -0000415719 00000 n -0000415759 00000 n -0000415891 00000 n +0000014579 00000 n +0000014636 00000 n +0000389946 00000 n +0000389515 00000 n +0000014693 00000 n +0000389370 00000 n +0000390964 00000 n +0000016863 00000 n +0000017025 00000 n +0000017187 00000 n +0000017338 00000 n +0000017494 00000 n +0000017656 00000 n +0000017812 00000 n +0000017973 00000 n +0000018128 00000 n +0000018279 00000 n +0000018435 00000 n +0000018587 00000 n +0000018749 00000 n +0000018911 00000 n +0000019073 00000 n +0000019235 00000 n +0000019391 00000 n +0000019553 00000 n +0000019714 00000 n +0000019876 00000 n +0000020038 00000 n +0000020199 00000 n +0000020361 00000 n +0000020523 00000 n +0000020685 00000 n +0000020846 00000 n +0000020997 00000 n +0000021153 00000 n +0000021308 00000 n +0000021470 00000 n +0000021631 00000 n +0000021793 00000 n +0000021944 00000 n +0000022100 00000 n +0000022255 00000 n +0000022416 00000 n +0000022578 00000 n +0000024674 00000 n +0000022796 00000 n +0000016266 00000 n +0000014848 00000 n +0000022739 00000 n +0000024825 00000 n +0000024981 00000 n +0000025137 00000 n +0000025298 00000 n +0000025459 00000 n +0000025610 00000 n +0000025766 00000 n +0000025921 00000 n +0000026076 00000 n +0000026232 00000 n +0000026388 00000 n +0000026543 00000 n +0000026704 00000 n +0000026866 00000 n +0000027026 00000 n +0000027188 00000 n +0000027350 00000 n +0000027501 00000 n +0000027657 00000 n +0000027811 00000 n +0000027973 00000 n +0000028135 00000 n +0000028297 00000 n +0000028459 00000 n +0000028621 00000 n +0000028782 00000 n +0000028944 00000 n +0000029096 00000 n +0000029253 00000 n +0000029405 00000 n +0000029561 00000 n +0000029721 00000 n +0000029883 00000 n +0000030039 00000 n +0000030246 00000 n +0000024263 00000 n +0000022881 00000 n +0000030189 00000 n +0000032647 00000 n +0000032799 00000 n +0000033287 00000 n +0000032500 00000 n +0000030331 00000 n +0000032951 00000 n +0000036121 00000 n +0000036274 00000 n +0000036593 00000 n +0000035974 00000 n +0000033372 00000 n +0000036423 00000 n +0000036536 00000 n +0000390527 00000 n +0000038278 00000 n +0000048542 00000 n +0000038159 00000 n +0000036691 00000 n +0000048255 00000 n +0000048480 00000 n +0000047477 00000 n +0000051123 00000 n +0000050779 00000 n +0000048671 00000 n +0000050898 00000 n +0000391082 00000 n +0000053841 00000 n +0000053497 00000 n +0000051208 00000 n +0000053616 00000 n +0000055695 00000 n +0000055847 00000 n +0000056829 00000 n +0000055540 00000 n +0000053926 00000 n +0000056150 00000 n +0000056319 00000 n +0000056376 00000 n +0000055999 00000 n +0000056433 00000 n +0000056546 00000 n +0000056603 00000 n +0000056660 00000 n +0000056717 00000 n +0000056773 00000 n +0000061981 00000 n +0000060131 00000 n +0000059386 00000 n +0000056914 00000 n +0000059505 00000 n +0000059562 00000 n +0000059619 00000 n +0000059676 00000 n +0000059733 00000 n +0000059790 00000 n +0000059847 00000 n +0000059904 00000 n +0000059960 00000 n +0000060017 00000 n +0000060074 00000 n +0000063971 00000 n +0000065855 00000 n +0000066262 00000 n +0000061842 00000 n +0000060229 00000 n +0000066026 00000 n +0000066083 00000 n +0000066144 00000 n +0000389079 00000 n +0000390094 00000 n +0000389803 00000 n +0000066205 00000 n +0000063852 00000 n +0000065722 00000 n +0000291129 00000 n +0000069142 00000 n +0000069588 00000 n +0000069003 00000 n +0000066443 00000 n +0000069305 00000 n +0000069362 00000 n +0000069419 00000 n +0000069476 00000 n +0000069532 00000 n +0000072365 00000 n +0000072821 00000 n +0000072226 00000 n +0000069686 00000 n +0000072537 00000 n +0000072594 00000 n +0000072651 00000 n +0000072708 00000 n +0000072765 00000 n +0000389660 00000 n +0000390819 00000 n +0000391200 00000 n +0000075608 00000 n +0000075152 00000 n +0000072945 00000 n +0000075271 00000 n +0000078214 00000 n +0000077868 00000 n +0000075706 00000 n +0000077987 00000 n +0000079435 00000 n +0000079202 00000 n +0000078338 00000 n +0000079321 00000 n +0000081789 00000 n +0000081499 00000 n +0000079546 00000 n +0000081618 00000 n +0000083755 00000 n +0000083906 00000 n +0000084058 00000 n +0000084210 00000 n +0000084704 00000 n +0000083592 00000 n +0000081887 00000 n +0000084362 00000 n +0000390673 00000 n +0000087044 00000 n +0000087263 00000 n +0000086905 00000 n +0000084828 00000 n +0000087206 00000 n +0000390381 00000 n +0000391318 00000 n +0000089749 00000 n +0000089910 00000 n +0000090072 00000 n +0000090519 00000 n +0000089594 00000 n +0000087400 00000 n +0000090234 00000 n +0000090291 00000 n +0000090348 00000 n +0000090405 00000 n +0000090462 00000 n +0000091988 00000 n +0000093685 00000 n +0000091869 00000 n +0000090669 00000 n +0000093509 00000 n +0000093566 00000 n +0000093623 00000 n +0000093360 00000 n +0000095571 00000 n +0000097245 00000 n +0000095452 00000 n +0000093840 00000 n +0000097070 00000 n +0000097127 00000 n +0000097189 00000 n +0000096921 00000 n +0000099784 00000 n +0000099437 00000 n +0000097413 00000 n +0000099556 00000 n +0000099613 00000 n +0000099670 00000 n +0000101598 00000 n +0000101422 00000 n +0000099921 00000 n +0000101541 00000 n +0000103737 00000 n +0000103888 00000 n +0000104040 00000 n +0000104192 00000 n +0000104834 00000 n +0000103566 00000 n +0000101670 00000 n +0000104495 00000 n +0000104344 00000 n +0000391436 00000 n +0000106864 00000 n +0000107016 00000 n +0000107551 00000 n +0000106709 00000 n +0000104945 00000 n +0000107318 00000 n +0000107168 00000 n +0000107489 00000 n +0000109643 00000 n +0000109793 00000 n +0000110095 00000 n +0000110247 00000 n +0000110399 00000 n +0000110551 00000 n +0000113884 00000 n +0000114036 00000 n +0000111727 00000 n +0000109456 00000 n +0000107706 00000 n +0000110703 00000 n +0000110760 00000 n +0000110817 00000 n +0000110874 00000 n +0000109943 00000 n +0000110931 00000 n +0000110988 00000 n +0000111045 00000 n +0000111102 00000 n +0000111159 00000 n +0000111216 00000 n +0000111273 00000 n +0000111330 00000 n +0000111387 00000 n +0000111443 00000 n +0000111499 00000 n +0000111556 00000 n +0000111613 00000 n +0000111670 00000 n +0000114188 00000 n +0000114350 00000 n +0000115305 00000 n +0000113721 00000 n +0000111825 00000 n +0000114510 00000 n +0000114567 00000 n +0000114624 00000 n +0000114680 00000 n +0000114737 00000 n +0000114794 00000 n +0000114851 00000 n +0000114908 00000 n +0000114965 00000 n +0000115022 00000 n +0000115079 00000 n +0000115135 00000 n +0000115191 00000 n +0000115248 00000 n +0000388787 00000 n +0000118423 00000 n +0000117165 00000 n +0000115429 00000 n +0000117284 00000 n +0000117341 00000 n +0000117398 00000 n +0000117455 00000 n +0000117512 00000 n +0000117569 00000 n +0000117626 00000 n +0000117683 00000 n +0000117740 00000 n +0000117797 00000 n +0000117854 00000 n +0000117911 00000 n +0000117968 00000 n +0000118024 00000 n +0000118081 00000 n +0000118138 00000 n +0000118195 00000 n +0000118252 00000 n +0000118309 00000 n +0000118366 00000 n +0000120935 00000 n +0000121097 00000 n +0000121248 00000 n +0000121553 00000 n +0000121706 00000 n +0000122864 00000 n +0000120748 00000 n +0000118521 00000 n +0000122012 00000 n +0000122069 00000 n +0000122126 00000 n +0000122183 00000 n +0000122352 00000 n +0000122409 00000 n +0000122466 00000 n +0000122523 00000 n +0000122580 00000 n +0000122637 00000 n +0000122694 00000 n +0000122751 00000 n +0000121400 00000 n +0000122807 00000 n +0000121859 00000 n +0000126217 00000 n +0000124846 00000 n +0000122975 00000 n +0000124965 00000 n +0000125022 00000 n +0000389225 00000 n +0000125079 00000 n +0000125136 00000 n +0000125193 00000 n +0000125250 00000 n +0000125307 00000 n +0000125364 00000 n +0000125421 00000 n +0000125478 00000 n +0000125534 00000 n +0000125591 00000 n +0000125648 00000 n +0000125705 00000 n +0000125762 00000 n +0000125819 00000 n +0000125876 00000 n +0000125932 00000 n +0000125989 00000 n +0000126046 00000 n +0000126103 00000 n +0000126160 00000 n +0000391554 00000 n +0000128757 00000 n +0000128919 00000 n +0000129081 00000 n +0000129235 00000 n +0000129959 00000 n +0000128594 00000 n +0000126354 00000 n +0000129389 00000 n +0000129503 00000 n +0000129560 00000 n +0000129617 00000 n +0000129674 00000 n +0000129731 00000 n +0000129788 00000 n +0000129902 00000 n +0000188141 00000 n +0000132685 00000 n +0000131543 00000 n +0000130057 00000 n +0000131662 00000 n +0000131776 00000 n +0000131833 00000 n +0000131890 00000 n +0000131947 00000 n +0000132003 00000 n +0000132060 00000 n +0000132117 00000 n +0000132174 00000 n +0000132231 00000 n +0000132287 00000 n +0000132344 00000 n +0000132401 00000 n +0000132458 00000 n +0000132515 00000 n +0000132572 00000 n +0000135397 00000 n +0000134254 00000 n +0000132783 00000 n +0000134373 00000 n +0000134430 00000 n +0000134487 00000 n +0000134544 00000 n +0000134601 00000 n +0000134658 00000 n +0000134715 00000 n +0000134772 00000 n +0000134829 00000 n +0000134885 00000 n +0000134942 00000 n +0000134999 00000 n +0000135056 00000 n +0000135113 00000 n +0000135170 00000 n +0000135226 00000 n +0000135283 00000 n +0000138330 00000 n +0000138502 00000 n +0000138654 00000 n +0000138977 00000 n +0000138175 00000 n +0000135495 00000 n +0000138806 00000 n +0000140731 00000 n +0000141018 00000 n +0000140592 00000 n +0000139101 00000 n +0000140904 00000 n +0000143737 00000 n +0000143333 00000 n +0000141103 00000 n +0000143452 00000 n +0000391672 00000 n +0000146685 00000 n +0000146395 00000 n +0000143887 00000 n +0000146514 00000 n +0000146628 00000 n +0000149282 00000 n +0000149682 00000 n +0000149143 00000 n +0000146796 00000 n +0000149455 00000 n +0000149512 00000 n +0000149625 00000 n +0000151104 00000 n +0000150643 00000 n +0000149806 00000 n +0000150762 00000 n +0000150819 00000 n +0000150876 00000 n +0000150933 00000 n +0000150990 00000 n +0000151047 00000 n +0000153376 00000 n +0000153880 00000 n +0000153237 00000 n +0000151202 00000 n +0000153538 00000 n +0000157085 00000 n +0000157360 00000 n +0000156946 00000 n +0000154017 00000 n +0000157246 00000 n +0000388934 00000 n +0000160650 00000 n +0000160075 00000 n +0000157548 00000 n +0000160194 00000 n +0000160251 00000 n +0000160308 00000 n +0000160365 00000 n +0000160422 00000 n +0000390239 00000 n +0000160479 00000 n +0000160536 00000 n +0000160593 00000 n +0000391790 00000 n +0000161769 00000 n +0000161308 00000 n +0000160838 00000 n +0000161427 00000 n +0000161484 00000 n +0000161541 00000 n +0000161598 00000 n +0000161655 00000 n +0000161712 00000 n +0000165690 00000 n +0000164729 00000 n +0000164325 00000 n +0000161854 00000 n +0000164444 00000 n +0000169349 00000 n +0000173341 00000 n +0000180549 00000 n +0000178430 00000 n +0000165571 00000 n +0000164827 00000 n +0000178187 00000 n +0000178244 00000 n +0000178306 00000 n +0000178368 00000 n +0000168916 00000 n +0000172910 00000 n +0000177684 00000 n +0000185128 00000 n +0000180430 00000 n +0000178572 00000 n +0000184952 00000 n +0000185009 00000 n +0000184518 00000 n +0000187762 00000 n +0000187922 00000 n +0000188198 00000 n +0000187615 00000 n +0000185296 00000 n +0000188084 00000 n +0000190791 00000 n +0000190953 00000 n +0000192808 00000 n +0000191229 00000 n +0000190644 00000 n +0000188335 00000 n +0000191115 00000 n +0000191172 00000 n +0000391908 00000 n +0000193026 00000 n +0000192669 00000 n +0000191366 00000 n +0000192969 00000 n +0000195176 00000 n +0000195338 00000 n +0000195500 00000 n +0000195716 00000 n +0000195021 00000 n +0000193137 00000 n +0000195658 00000 n +0000198815 00000 n +0000198460 00000 n +0000195853 00000 n +0000198582 00000 n +0000200100 00000 n +0000199612 00000 n +0000199431 00000 n +0000198927 00000 n +0000199553 00000 n +0000232819 00000 n +0000199978 00000 n +0000199685 00000 n +0000232697 00000 n +0000232756 00000 n +0000231855 00000 n +0000234675 00000 n +0000234377 00000 n +0000232938 00000 n +0000234500 00000 n +0000392029 00000 n +0000235705 00000 n +0000256525 00000 n +0000235582 00000 n +0000234787 00000 n +0000256345 00000 n +0000256462 00000 n +0000255569 00000 n +0000259249 00000 n +0000258951 00000 n +0000256670 00000 n +0000259074 00000 n +0000262027 00000 n +0000261787 00000 n +0000259374 00000 n +0000261910 00000 n +0000263862 00000 n +0000263680 00000 n +0000262152 00000 n +0000263803 00000 n +0000265479 00000 n +0000265181 00000 n +0000263961 00000 n +0000265304 00000 n +0000267635 00000 n +0000267218 00000 n +0000265617 00000 n +0000267341 00000 n +0000267458 00000 n +0000267517 00000 n +0000267576 00000 n +0000392154 00000 n +0000269618 00000 n +0000269146 00000 n +0000267773 00000 n +0000269269 00000 n +0000272455 00000 n +0000272042 00000 n +0000269756 00000 n +0000272165 00000 n +0000274214 00000 n +0000273974 00000 n +0000272580 00000 n +0000274097 00000 n +0000276936 00000 n +0000276639 00000 n +0000274326 00000 n +0000276762 00000 n +0000277753 00000 n +0000277571 00000 n +0000277061 00000 n +0000277694 00000 n +0000279993 00000 n +0000280145 00000 n +0000280298 00000 n +0000280465 00000 n +0000280922 00000 n +0000279822 00000 n +0000277852 00000 n +0000280631 00000 n +0000392279 00000 n +0000283546 00000 n +0000283306 00000 n +0000281034 00000 n +0000283429 00000 n +0000285289 00000 n +0000285048 00000 n +0000283671 00000 n +0000285171 00000 n +0000285230 00000 n +0000286078 00000 n +0000285838 00000 n +0000285401 00000 n +0000285961 00000 n +0000287511 00000 n +0000289074 00000 n +0000289243 00000 n +0000289421 00000 n +0000289874 00000 n +0000287340 00000 n +0000286177 00000 n +0000289756 00000 n +0000289815 00000 n +0000289588 00000 n +0000288813 00000 n +0000288970 00000 n +0000289051 00000 n +0000290599 00000 n +0000291186 00000 n +0000290446 00000 n +0000290003 00000 n +0000291012 00000 n +0000291071 00000 n +0000290806 00000 n +0000291285 00000 n +0000291309 00000 n +0000291755 00000 n +0000292269 00000 n +0000292295 00000 n +0000292327 00000 n +0000292851 00000 n +0000293423 00000 n +0000293503 00000 n +0000293661 00000 n +0000294312 00000 n +0000294890 00000 n +0000295310 00000 n +0000295953 00000 n +0000296437 00000 n +0000297080 00000 n +0000298708 00000 n +0000298936 00000 n +0000301837 00000 n +0000302171 00000 n +0000307564 00000 n +0000307844 00000 n +0000309985 00000 n +0000310213 00000 n +0000326050 00000 n +0000326626 00000 n +0000331741 00000 n +0000332023 00000 n +0000335354 00000 n +0000335622 00000 n +0000338257 00000 n +0000338507 00000 n +0000350279 00000 n +0000350712 00000 n +0000352765 00000 n +0000353052 00000 n +0000354263 00000 n +0000354489 00000 n +0000356051 00000 n +0000356293 00000 n +0000365710 00000 n +0000366061 00000 n +0000374509 00000 n +0000374911 00000 n +0000388239 00000 n +0000392404 00000 n +0000392524 00000 n +0000392647 00000 n +0000392720 00000 n +0000402110 00000 n +0000402288 00000 n +0000402467 00000 n +0000402645 00000 n +0000402824 00000 n +0000403001 00000 n +0000403178 00000 n +0000403357 00000 n +0000403535 00000 n +0000403714 00000 n +0000403893 00000 n +0000404063 00000 n +0000404234 00000 n +0000404404 00000 n +0000404575 00000 n +0000404745 00000 n +0000404916 00000 n +0000405085 00000 n +0000405254 00000 n +0000405425 00000 n +0000405595 00000 n +0000405766 00000 n +0000405936 00000 n +0000406107 00000 n +0000406277 00000 n +0000406448 00000 n +0000406652 00000 n +0000406836 00000 n +0000407011 00000 n +0000407182 00000 n +0000407352 00000 n +0000407523 00000 n +0000407693 00000 n +0000407864 00000 n +0000408034 00000 n +0000408205 00000 n +0000408378 00000 n +0000408552 00000 n +0000408729 00000 n +0000408904 00000 n +0000409086 00000 n +0000409289 00000 n +0000409491 00000 n +0000409694 00000 n +0000409896 00000 n +0000410098 00000 n +0000410287 00000 n +0000410474 00000 n +0000410688 00000 n +0000410915 00000 n +0000411142 00000 n +0000411369 00000 n +0000411609 00000 n +0000411870 00000 n +0000412131 00000 n +0000412394 00000 n +0000412661 00000 n +0000412928 00000 n +0000413195 00000 n +0000413462 00000 n +0000413729 00000 n +0000413996 00000 n +0000414203 00000 n +0000414321 00000 n +0000414438 00000 n +0000414553 00000 n +0000414669 00000 n +0000414785 00000 n +0000414901 00000 n +0000415021 00000 n +0000415148 00000 n +0000415283 00000 n +0000415423 00000 n +0000415527 00000 n +0000415645 00000 n +0000415764 00000 n +0000415858 00000 n +0000415898 00000 n +0000416030 00000 n trailer << /Size 1242 /Root 1240 0 R /Info 1241 0 R -/ID [ ] >> +/ID [ ] >> startxref -416223 +416362 %%EOF diff --git a/lib/highlevel.h b/lib/highlevel.h index e957eb9..61e6dc4 100644 --- a/lib/highlevel.h +++ b/lib/highlevel.h @@ -27,8 +27,6 @@ typedef struct highlevel_encode_setup { int set_in_stone; double base_setting; - double long_setting; - double short_setting; double impulse_noisetune; int managed; diff --git a/lib/modes/floor_all.h b/lib/modes/floor_all.h index 151029b..cc17ac8 100644 --- a/lib/modes/floor_all.h +++ b/lib/modes/floor_all.h @@ -165,7 +165,7 @@ static const vorbis_info_floor1 _floor[10]={ {{1,2,3,4}}, 4,{0,128, 33,8,16,70}, - 60,30,500, 1.,18., -1 + 60,30,500, 1.,18., 128 }, /* 256 x 4 */ { @@ -173,7 +173,7 @@ static const vorbis_info_floor1 _floor[10]={ {{1,2,3,4}}, 4,{0,256, 66,16,32,140}, - 60,30,500, 1.,18., -1 + 60,30,500, 1.,18., 256 }, /* 128 x 7 */ { @@ -181,7 +181,7 @@ static const vorbis_info_floor1 _floor[10]={ {{-1,2,3,4},{-1,5,6,7}}, 4,{0,128, 14,4,58, 2,8,28,90}, - 60,30,500, 1.,18., -1 + 60,30,500, 1.,18., 128 }, /* 256 x 7 */ { @@ -189,7 +189,7 @@ static const vorbis_info_floor1 _floor[10]={ {{-1,2,3,4},{-1,5,6,7}}, 4,{0,256, 28,8,116, 4,16,56,180}, - 60,30,500, 1.,18., -1 + 60,30,500, 1.,18., 256 }, /* 128 x 11 */ { @@ -198,7 +198,7 @@ static const vorbis_info_floor1 _floor[10]={ 2,{0,128, 8,33, 4,16,70, 2,6,12, 23,46,90}, - 60,30,500, 1,18., -1 + 60,30,500, 1,18., 128 }, /* 128 x 17 */ { @@ -206,7 +206,7 @@ static const vorbis_info_floor1 _floor[10]={ {{3},{4,5},{-1,6,7,8},{-1,9,10,11}}, 2,{0,128, 12,46, 4,8,16, 23,33,70, 2,6,10, 14,19,28, 39,58,90}, - 60,30,500, 1,18., -1 + 60,30,500, 1,18., 128 }, /* 256 x 4 (low bitrate version) */ { @@ -214,7 +214,7 @@ static const vorbis_info_floor1 _floor[10]={ {{1,2,3,4}}, 4,{0,256, 66,16,32,140}, - 60,30,500, 1.,18., -1 + 60,30,500, 1.,18., 256 }, /* 1024 x 27 */ { @@ -223,7 +223,7 @@ static const vorbis_info_floor1 _floor[10]={ 2,{0,1024, 93,23,372, 6,46,186,750, 14,33,65, 130,260,556, 3,10,18,28, 39,55,79,111, 158,220,312, 464,650,850}, - 60,30,500, 3,18., -1 /* lowpass */ + 60,30,500, 3,18., 1024 }, /* 2048 x 27 */ { @@ -232,7 +232,7 @@ static const vorbis_info_floor1 _floor[10]={ 2,{0,2048, 186,46,744, 12,92,372,1500, 28,66,130, 260,520,1112, 6,20,36,56, 78,110,158,222, 316,440,624, 928,1300,1700}, - 60,30,500, 3,18., -1 /* lowpass */ + 60,30,500, 3,18., 2048 }, /* 512 x 17 */ { @@ -241,7 +241,7 @@ static const vorbis_info_floor1 _floor[10]={ 2,{0,512, 46,186, 16,33,65, 93,130,278, 7,23,39, 55,79,110, 156,232,360}, - 60,30,500, 1,18., -1 /* lowpass! */ + 60,30,500, 1,18., 512 }, }; diff --git a/lib/modes/setup_11.h b/lib/modes/setup_11.h index f3d8fce..95d8c3e 100644 --- a/lib/modes/setup_11.h +++ b/lib/modes/setup_11.h @@ -21,8 +21,11 @@ static const int blocksize_11[2]={ 512,512 }; -static const int _floor_mapping_11[2]={ - 6,6, +static const int _floor_mapping_11a[]={ + 6,6 +}; +static const int *_floor_mapping_11[]={ + _floor_mapping_11a }; static const double rate_mapping_11[3]={ @@ -82,8 +85,8 @@ static const ve_setup_data_template ve_setup_11_stereo={ _floor_books, _floor, + 1, _floor_mapping_11, - NULL, _mapres_template_8_stereo }; @@ -133,8 +136,8 @@ static const ve_setup_data_template ve_setup_11_uncoupled={ _floor_books, _floor, + 1, _floor_mapping_11, - NULL, _mapres_template_8_uncoupled }; diff --git a/lib/modes/setup_16.h b/lib/modes/setup_16.h index 58b7c52..13581ea 100644 --- a/lib/modes/setup_16.h +++ b/lib/modes/setup_16.h @@ -25,12 +25,16 @@ static const int blocksize_16_long[3]={ 1024,1024,1024 }; -static const int _floor_mapping_16_short[3]={ +static const int _floor_mapping_16a[]={ 9,3,3 }; -static const int _floor_mapping_16[3]={ +static const int _floor_mapping_16b[]={ 9,9,9 }; +static const int *_floor_mapping_16[]={ + _floor_mapping_16a, + _floor_mapping_16b +}; static const double rate_mapping_16[4]={ 12000.,20000.,44000.,86000. @@ -91,7 +95,7 @@ static const ve_setup_data_template ve_setup_16_stereo={ _floor_books, _floor, - _floor_mapping_16_short, + 2, _floor_mapping_16, _mapres_template_16_stereo @@ -142,7 +146,7 @@ static const ve_setup_data_template ve_setup_16_uncoupled={ _floor_books, _floor, - _floor_mapping_16_short, + 2, _floor_mapping_16, _mapres_template_16_uncoupled diff --git a/lib/modes/setup_22.h b/lib/modes/setup_22.h index f5e01d2..1e63473 100644 --- a/lib/modes/setup_22.h +++ b/lib/modes/setup_22.h @@ -70,7 +70,7 @@ static const ve_setup_data_template ve_setup_22_stereo={ _floor_books, _floor, - _floor_mapping_16_short, + 2, _floor_mapping_16, _mapres_template_16_stereo @@ -121,7 +121,7 @@ static const ve_setup_data_template ve_setup_22_uncoupled={ _floor_books, _floor, - _floor_mapping_16_short, + 2, _floor_mapping_16, _mapres_template_16_uncoupled diff --git a/lib/modes/setup_32.h b/lib/modes/setup_32.h index 1b77502..b02c04d 100644 --- a/lib/modes/setup_32.h +++ b/lib/modes/setup_32.h @@ -74,8 +74,8 @@ static const ve_setup_data_template ve_setup_32_stereo={ _floor_books, _floor, - _floor_short_mapping_44, - _floor_long_mapping_44, + 2, + _floor_mapping_44, _mapres_template_44_stereo }; @@ -125,8 +125,8 @@ static const ve_setup_data_template ve_setup_32_uncoupled={ _floor_books, _floor, - _floor_short_mapping_44, - _floor_long_mapping_44, + 2, + _floor_mapping_44, _mapres_template_44_uncoupled }; diff --git a/lib/modes/setup_44.h b/lib/modes/setup_44.h index 3c4d7d0..742968a 100644 --- a/lib/modes/setup_44.h +++ b/lib/modes/setup_44.h @@ -47,13 +47,19 @@ static const double _global_mapping_44[12]={ 0., 1., 1., 1.5, 2., 2., 2.5, 2.7, 3.0, 3.7, 4., 4. }; -static const int _floor_short_mapping_44[11]={ +static const int _floor_mapping_44a[11]={ 1,0,0,2,2,4,5,5,5,5,5 }; -static const int _floor_long_mapping_44[11]={ + +static const int _floor_mapping_44b[11]={ 8,7,7,7,7,7,7,7,7,7,7 }; +static const int *_floor_mapping_44[]={ + _floor_mapping_44a, + _floor_mapping_44b, +}; + static const ve_setup_data_template ve_setup_44_stereo={ 11, rate_mapping_44_stereo, @@ -99,8 +105,8 @@ static const ve_setup_data_template ve_setup_44_stereo={ _floor_books, _floor, - _floor_short_mapping_44, - _floor_long_mapping_44, + 2, + _floor_mapping_44, _mapres_template_44_stereo }; diff --git a/lib/modes/setup_44u.h b/lib/modes/setup_44u.h index 3b4c640..26f4fe5 100644 --- a/lib/modes/setup_44u.h +++ b/lib/modes/setup_44u.h @@ -67,8 +67,8 @@ static const ve_setup_data_template ve_setup_44_uncoupled={ _floor_books, _floor, - _floor_short_mapping_44, - _floor_long_mapping_44, + 2, + _floor_mapping_44, _mapres_template_44_uncoupled }; diff --git a/lib/modes/setup_8.h b/lib/modes/setup_8.h index 7184d65..c2f27e4 100644 --- a/lib/modes/setup_8.h +++ b/lib/modes/setup_8.h @@ -22,8 +22,12 @@ static const int blocksize_8[2]={ 512,512 }; -static const int _floor_mapping_8[2]={ - 6,6, +static const int _floor_mapping_8a[]={ + 6,6 +}; + +static const int *_floor_mapping_8[]={ + _floor_mapping_8a }; static const double rate_mapping_8[3]={ @@ -87,8 +91,8 @@ static const ve_setup_data_template ve_setup_8_stereo={ _floor_books, _floor, + 1, _floor_mapping_8, - NULL, _mapres_template_8_stereo }; @@ -138,8 +142,8 @@ static const ve_setup_data_template ve_setup_8_uncoupled={ _floor_books, _floor, + 1, _floor_mapping_8, - NULL, _mapres_template_8_uncoupled }; diff --git a/lib/modes/setup_X.h b/lib/modes/setup_X.h index ada0b64..8b62254 100644 --- a/lib/modes/setup_X.h +++ b/lib/modes/setup_X.h @@ -65,8 +65,8 @@ static const ve_setup_data_template ve_setup_X_stereo={ _floor_books, _floor, - _floor_short_mapping_44, - _floor_long_mapping_44, + 2, + _floor_mapping_44, _mapres_template_44_stereo }; @@ -116,8 +116,8 @@ static const ve_setup_data_template ve_setup_X_uncoupled={ _floor_books, _floor, - _floor_short_mapping_44, - _floor_long_mapping_44, + 2, + _floor_mapping_44, _mapres_template_44_uncoupled }; @@ -167,8 +167,8 @@ static const ve_setup_data_template ve_setup_XX_stereo={ _floor_books, _floor, + 1, _floor_mapping_8, - NULL, _mapres_template_8_stereo }; @@ -218,8 +218,8 @@ static const ve_setup_data_template ve_setup_XX_uncoupled={ _floor_books, _floor, + 1, _floor_mapping_8, - NULL, _mapres_template_8_uncoupled }; diff --git a/lib/psy.c b/lib/psy.c index a014b66..d8516c6 100644 --- a/lib/psy.c +++ b/lib/psy.c @@ -931,7 +931,7 @@ static void couple_lossless(float A, float B, int test1=fabs(*qA)>fabs(*qB); test1-= fabs(*qA)fabs(B))<<1)-1; + //if(!test1)test1=((fabs(A)>fabs(B))<<1)-1; if(test1==1){ *qB=(*qA>0.f?*qA-*qB:*qB-*qA); }else{ @@ -1148,7 +1148,6 @@ void _vp_couple(int blobno, if(nonzero[vi->coupling_mag[i]] || nonzero[vi->coupling_ang[i]]){ - float *rM=res[vi->coupling_mag[i]]; float *rA=res[vi->coupling_ang[i]]; float *qM=rM+n; @@ -1159,7 +1158,6 @@ void _vp_couple(int blobno, float postpoint=stereo_threshholds[g->coupling_postpointamp[blobno]]; int partition=(p->vi->normal_point_p?p->vi->normal_partition:p->n); int limit=g->coupling_pointlimit[p->vi->blockflag][blobno]; - int pointlimit=limit; nonzero[vi->coupling_mag[i]]=1; nonzero[vi->coupling_ang[i]]=1; @@ -1178,7 +1176,6 @@ void _vp_couple(int blobno, if((l>=limit && fabs(rM[l])vi->normal_point_p){ for(k=0;k=p->vi->normal_thresh;k++){ int l=mag_sort[i][j+k]; - if(l=pointlimit && rint(qM[l])==0.f){ + if(l=limit && rint(qM[l])==0.f){ qM[l]=unitnorm(qM[l]); acc-=1.f; } diff --git a/lib/vorbisenc.c b/lib/vorbisenc.c index 29f5877..db44128 100644 --- a/lib/vorbisenc.c +++ b/lib/vorbisenc.c @@ -134,8 +134,8 @@ typedef struct { const static_codebook *const *const *const floor_books; const vorbis_info_floor1 *floor_params; - const int *floor_short_mapping; - const int *floor_long_mapping; + const int floor_mappings; + const int **floor_mapping_list; const vorbis_mapping_template *maps; } ve_setup_data_template; @@ -196,7 +196,7 @@ static int vorbis_encode_toplevel_setup(vorbis_info *vi,int ch,long rate){ return(OV_EINVAL); } -static void vorbis_encode_floor_setup(vorbis_info *vi,double s,int block, +static void vorbis_encode_floor_setup(vorbis_info *vi,int s, const static_codebook *const *const *const books, const vorbis_info_floor1 *in, const int *x){ @@ -205,8 +205,6 @@ static void vorbis_encode_floor_setup(vorbis_info *vi,double s,int block, codec_setup_info *ci=vi->codec_setup; memcpy(f,in+x[is],sizeof(*f)); - /* fill in the lowpass field, even if it's temporary */ - f->n=ci->blocksizes[block]>>1; /* books */ { @@ -554,12 +552,20 @@ static void vorbis_encode_residue_setup(vorbis_info *vi, /* this res may by limited by the maximum pointlimit of the mode, not the lowpass. the floor is always lowpass limited. */ - if(res->limit_type){ + switch(res->limit_type){ + case 1: /* point stereo limited */ if(ci->hi.managed) freq=ci->psy_g_param.coupling_pkHz[PACKETBLOBS-1]*1000.; else freq=ci->psy_g_param.coupling_pkHz[PACKETBLOBS/2]*1000.; if(freq>nyq)freq=nyq; + break; + case 2: /* LFE channel; lowpass at ~ 250Hz */ + freq=250; + break; + default: + /* already set */ + break; } /* in the residue, we're constrained, physically, by partition @@ -572,6 +578,7 @@ static void vorbis_encode_residue_setup(vorbis_info *vi, else r->end=(int)((freq/nyq*blocksize)/r->grouping+.9)* /* round up only if we're well past */ r->grouping; + if(r->end==0)r->end=r->grouping; /* LFE channel */ } } @@ -672,7 +679,7 @@ static void get_setup_template(vorbis_info *vi, /* the final setup call */ int vorbis_encode_setup_init(vorbis_info *vi){ - int i0=0,singleblock=0; + int i,i0=0,singleblock=0; codec_setup_info *ci=vi->codec_setup; ve_setup_data_template *setup=NULL; highlevel_encode_setup *hi=&ci->hi; @@ -705,16 +712,12 @@ int vorbis_encode_setup_init(vorbis_info *vi){ if(ci->blocksizes[0]==ci->blocksizes[1])singleblock=1; /* floor setup; choose proper floor params. Allocated on the floor - stack in order; if we alloc only long floor, it's 0 */ - vorbis_encode_floor_setup(vi,hi->short_setting,0, - setup->floor_books, - setup->floor_params, - setup->floor_short_mapping); - if(!singleblock) - vorbis_encode_floor_setup(vi,hi->long_setting,1, + stack in order; if we alloc only a single long floor, it's 0 */ + for(i=0;ifloor_mappings;i++) + vorbis_encode_floor_setup(vi,hi->base_setting, setup->floor_books, setup->floor_params, - setup->floor_long_mapping); + setup->floor_mapping_list[i]); /* setup of [mostly] short block detection and stereo*/ vorbis_encode_global_psych_setup(vi,hi->trigger_setting, @@ -723,23 +726,23 @@ int vorbis_encode_setup_init(vorbis_info *vi){ vorbis_encode_global_stereo(vi,hi,setup->stereo_modes); /* basic psych setup and noise normalization */ - vorbis_encode_psyset_setup(vi,hi->short_setting, + vorbis_encode_psyset_setup(vi,hi->base_setting, setup->psy_noise_normal_start[0], setup->psy_noise_normal_partition[0], setup->psy_noise_normal_thresh, 0); - vorbis_encode_psyset_setup(vi,hi->short_setting, + vorbis_encode_psyset_setup(vi,hi->base_setting, setup->psy_noise_normal_start[0], setup->psy_noise_normal_partition[0], setup->psy_noise_normal_thresh, 1); if(!singleblock){ - vorbis_encode_psyset_setup(vi,hi->long_setting, + vorbis_encode_psyset_setup(vi,hi->base_setting, setup->psy_noise_normal_start[1], setup->psy_noise_normal_partition[1], setup->psy_noise_normal_thresh, 2); - vorbis_encode_psyset_setup(vi,hi->long_setting, + vorbis_encode_psyset_setup(vi,hi->base_setting, setup->psy_noise_normal_start[1], setup->psy_noise_normal_partition[1], setup->psy_noise_normal_thresh, @@ -870,9 +873,6 @@ static int vorbis_encode_setup_setting(vorbis_info *vi, is=hi->base_setting; ds=hi->base_setting-is; - hi->short_setting=hi->base_setting; - hi->long_setting=hi->base_setting; - hi->managed=0; hi->impulse_block_p=1; -- 2.7.4