/trunk/Filter Factory.pdf |
---|
File deleted |
=================================================================== |
--- CHANGELOG.md (revision 303) |
+++ CHANGELOG.md (revision 304) |
@@ -19,6 +19,14 @@ |
* M |
- The window is now opened on the correct screen (the one where Photoshop is opened). Additionally, it is avoided that the window is spread over multiple screens. (*) |
- Added new function `pow(b,e)` which are already part of the inofficial Filter Factory 3.1.0 patch by Daniel Marschall. |
+- The previously undocumented variables I, U, V as well as imin, umin, vmin have been changed to represent the actual results of the i,u,v variables: |
+ imin = 0 (stayed the same) |
+ umin = -55 (was 0) |
+ vmin = -78 (was 0) |
+ I, imax = 255 (stayed the same) |
+ U, umax = 55 (was 255) |
+ V, vmax = 78 (was 255) |
+- Added a documentation based on the Filter Factory documentation. |
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac. |
/trunk/Filter Factory Compatibility.md |
---|
4,7 → 4,7 |
================================= |
FilterFoundry tries to be as compatible with Filter Factory as possible. |
However, there are some differences which are explained in this documentation. |
However, there are some differences that are explained in this documentation. |
Various implementations |
----------------------- |
17,7 → 17,7 |
If required, the compiler-definitions `use_filterfactory_implementation_*` |
can be set or unset to select the implementation. |
In Filter Foundry 1.7.0.8, following functions have been updated to the Filter Factory replica: |
In Filter Foundry 1.7.0.8, the following functions have been updated to the Filter Factory replica: |
- `rnd(x)` |
- `cos(x)` |
- `sin(x)` |
40,7 → 40,7 |
sqr(x)=x for x < 0 |
Can be tested with following expression: |
Can be tested with the following expression: |
sqr(-20)+21 == 1 |
Filter Foundry (prior to 1.7.0.8): |
47,7 → 47,9 |
sqr(x)=0 for x < 0 |
Beginning with Filter Foundry 1.7.0.8, the behavior of Filter Factory was implemented. |
i, u, v (Testcase iuv.afs) |
------- |
66,6 → 68,21 |
Both formulas follow the same YUV standard but have different accuracy. |
I, U, V, imin, umin, vmin (Testcase iuv_minmax.afs) |
------------------------- |
In Filter Foundry 1.7.0.8, the previously undocumented variables I, U, V as well as imin, umin, vmin |
have been changed to represent the actual results of the i,u,v variables: |
I, imax = 255 (stayed the same) |
U, umax = 55 (was 255 in Filter Factory) |
V, vmax = 78 (was 255 in Filter Factory) |
imin = 0 (stayed the same) |
umin = -55 (was 0 in Filter Factory) |
vmin = -78 (was 0 in Filter Factory) |
get(i) (Testcase getput.afs) |
------ |
105,8 → 122,7 |
Filter Factory contains an undocumented function that sets the seed for the random number generator. |
Filter Factory and FilterFoundry beginning with 1.7.0.8 accept a seed between 0 and 32767, inclusively. |
If the argument is not within this range, the operation "and 0x7FFF" will be applied to it |
to extract the low 15 bits. |
If the argument is not within this range, the operation lowest 15 bits are taken. |
There are many differences in the implementation between FilterFactory and FilterFoundry in regards rst(i): |
130,7 → 146,7 |
In Filter Foundry, the function rnd(a,b) retrieves a random number in "realtime"; therefore, if the |
seed is changed via rst(i), there is an immediate effect on the next call of the rnd(a,b) function. |
For example, following filter would generate an one-colored picture without any randomness: |
For example, the following filter would generate an one-colored picture without any randomness: |
R: rst(123), rnd(0,255) |
G: rnd(0,255) |
B: rnd(0,255) |
152,7 → 168,7 |
Only the branches which will be chosen due to the conditional expression will be evaluated. |
This means that following filter would generate a black canvas: (Testcase conditional_eval_1.afs) |
This means that the following filter would generate a black canvas: (Testcase conditional_eval_1.afs) |
R: 1==0 ? put(255,0) : 0 |
G: get(0) |
174,14 → 190,14 |
**Filter Factory:** |
Each branch inside a if-then-else expression will be evaluated. |
This means that following filter would generate a green canvas: (Testcase conditional_eval_1.afs) |
Each branch inside an if-then-else expression will be evaluated. |
This means that the following filter would generate a green canvas: (Testcase conditional_eval_1.afs) |
R: 1==0 ? put(255,0) : 0 |
G: get(0) |
B: 0 |
Also, all arguments of an boolean expression will be fully evaluated. |
Also, all arguments of a boolean expression will be fully evaluated. |
So, this will also generate a green canvas: (Testcase conditional_eval_2.afs) |
R: 1==0 && put(255,0) ? 0: 0 |
/trunk/README.md |
---|
5,7 → 5,9 |
Initially written by [Toby Thain](https://www.telegraphics.com.au/sw/) in 2003 - 2009, the development has been continued by [Daniel Marschall](https://www.daniel-marschall.de/) / [ViaThinkSoft](https://www.viathinksoft.com/) since 2018. Several advancements and improvements have been made, and a 64-bit Windows version was created. |
A full description of Filter Foundry including a reference of all functions, variables, and operators can be found in the "doc" folder. |
### Windows version 1.7.0.7 |
Filter Foundry 1.7 comes with a 32-Bit Windows plugin (FilterFoundry.8bf, [Download here](https://www.viathinksoft.com/download/248/FilterFoundry.8bf)) and a 64-Bit Windows plugin (FilterFoundry64.8bf, [Download here](https://www.viathinksoft.com/download/249/FilterFoundry64.8bf)). |
/trunk/TODO.md |
---|
11,7 → 11,7 |
TODO |
---- |
* Write an updated manual based on the Filter Factory documentation |
* Make a "Help" button which opens the manual (on the web) |
Minor priority stuff or ideas |
/trunk/doc/The Filter Foundry.docx |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/trunk/doc/The Filter Foundry.pdf |
---|
0,0 → 1,6603 |
%PDF-1.7 |
%µµµµ |
1 0 obj |
<</Type/Catalog/Pages 2 0 R/Lang(de-DE) /StructTreeRoot 129 0 R/MarkInfo<</Marked true>>/Metadata 1578 0 R/ViewerPreferences 1579 0 R>> |
endobj |
2 0 obj |
<</Type/Pages/Count 17/Kids[ 3 0 R 23 0 R 25 0 R 31 0 R 36 0 R 40 0 R 44 0 R 46 0 R 47 0 R 48 0 R 50 0 R 51 0 R 52 0 R 54 0 R 60 0 R 64 0 R 68 0 R] >> |
endobj |
3 0 obj |
<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F3 11 0 R/F4 16 0 R/F5 18 0 R/F6 20 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 22 0 R 24 0 R 26 0 R 27 0 R 28 0 R 29 0 R 30 0 R 32 0 R 33 0 R 34 0 R 35 0 R 37 0 R 38 0 R 39 0 R 41 0 R 42 0 R 43 0 R 45 0 R 49 0 R 53 0 R 55 0 R 56 0 R 57 0 R 58 0 R 59 0 R 61 0 R 62 0 R 63 0 R 65 0 R 66 0 R 67 0 R 69 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 0>> |
endobj |
4 0 obj |
<</Filter/FlateDecode/Length 4518>> |
stream |
xÍ]moÜ6þnÀÿa?ZE-óU¢ 8/EÍ]Û¤WÚ~°Ç1¯}ö&mþýCJ¢wÖ;´äöZKÏÃÃ!gtôìvuùáôÝjñÝwGÏV«ÓwÏß/~?:¹^®¯þ<zûõæüè§ÓËåéêòzyôæóÙÊ]zu}½:¿=>^¼x¾øßþ+û1¦V¶Ð.õÂ(Q |
½¸=ßßûíÅrïäíþÞÑ+¾àÜ]ûaÛÂlÁZ¬ÖiJ¹x{eK}ÿ¦^\ÜÙç..à?þû~ï÷Eñçâí?÷÷^Úçý¼¿7¶z_ê°e¸) ¬J±ß+SÅ!+¦vO° Ìe¼¤bѸ"± ÊQÂ}qLÊõsûA©Æ!õu6VÅ5\*ÝJÒXl¶íÄ&6¾mtebÁ÷^mÆvyª¶TKuêzòúùÒ>®Ô¬²¿kÅ·ë`Ê÷PéÃ7îÛªë:ì[ýÀ½¶ÎÃßÅÑÓ¥5¯ÿðbÁ~<]^,ο¾)5.lÓ×e½ÖL¼áöZɲëôc¼>Úþ5Ï¥qíÿî/Ǫqc!Ý'Ç |
¾ôêXñèFùïí[ YSJÁB¬ksø[{Yæÿ7Õ1WÄæä>D¬;øîÝ!0YSN-pYÖµ&v¦6YE0°,«ÍÁôKq(ÔÁyqÈë/Å¡¬.UÜʸkKøý[¶±ðæ@À¿á³B²ÏðÿE!Møè³ |
wê:ÜÆà·ÿÌÃ#êà>~íùÂ=ó´8ld <ÖOî£èkûån¡¡ÖwPê#Üæ¿;>=nvH6®ljÜ}.wïs½ +L5«K.7`½-¸ Ms ã̶%êà*´y×éÛ&®õBWº·ëãç}TÓøí?û|ßõ.ù/ní½ºÂ±ÂþÒ×5/ʽ²·Ýã."L˯ì¥PÆ__E¸o{Á¡¿ß«Ý*ìÊ}¡háoö⾶¿£çú+˨m×ZÒn,ñökʨ´GºÙ+ï¢{âöù°&S$Æ*º}t½ÞMöÊvÝa¦CeoCÃèî³rÚÑüûWÄ"Ïâ²}b|ÚÊwÞuÂÍ÷ø |
+άs7ÛV¶ +×0«¢ûÊ_³½d'ìÕ¹û+Vw»4.*¯ìRn©FLáz÷)üeo%y¤?XeT®ù¬Þ¨C;B âp*ìÚó²Â³£"Î9+U |
+ùJ×0xÉ-h;;íÝïåÀÏ.:Á¼s%tK±ÙÁj,bTö2µSö7mºÕ´TeUÕU%OV'F|CȼTXìÀóïsSêÍ%åkÏèµÖ3=ýbK» XøYàÒ]o/ÀÂÿ.A ¸Ö»sóñÊQþyðyÊ«îéPbuËo;UÑ÷ &¢e¡¯|ÐÎÉR(;ãí8%Ù¡âTtf°-,tغ"óºcÎÅ®øÍÆ®xurhDIrz%;¥'*½VºönL)6§ß |
+¾¹ìxxé X¸² Iaç bvyêÖõNh:#[7¥À!MickÛÍrv°¤¶(¡|´,K·Sªv£}'Ì81rp¢ºA¦[Ѧ;¥B&/ÉðÚy½½¥ |
+=MH·\ÔB;çú̹æ³QCnBëÑ$ÝúÑHåN) |
+5úÅ©Ü)Ê´8Û§.{Nè¥NúØô¦¨</$÷$}KÄ+¸uFrç5êcÂEiJ!ðöOv^í¹ÁÆCt«7U×eõȹhÙh¯nF+ÂeL QR¹zS¤â{Ȩp4w]gp°òì~º7¥{ÓúR 9¦ë#âûù«SwVñ¢PãÏ&VtáîÌGoȺ(OÁ¸ØOÇô±sb?ia¡F·| ±;aÎEÌ£´ñên¥Ñ3©Ü)ªò3qTÑuQ ¸O0p}èûXÛ¥`Ýzþ»ØÊ4è:ÂDTÁlÅÄÙ:3XÙJ |
+ÕrÂOÞlÝr.vÄGX6vÄ«Ã#£!FùVîÞÔ2?ÕÚʸ¤ñfÓòöá@`«^º£ÞûµüÚÊ߯¦'ÏÁQÓùæ¹6ÎÚI3ÒXv6*czun°JÕ4ºEH°Qw Çi?'ªbán½XVî |
+â½¼á)ÒÚulSõð^ÔKâ`<OôäLÚ¸LM ÄäÙ¬¸.Î%Q]p·{Ñ«yúw*D§¸û¸Ê>aâûµIqÌ$H·ÂÉ |
+y^mÚ&HqS¦¼ÚÁÀ%&p¯ÏöGÛ¼þî³nôçÛº©ÙùØeËXvïæòeúÎtï¾ñQT&6Kÿ(Fð;aJon6ÛôFé¬0yt^¼9:S&ÚÄÆ[.ÎD$Ý0ÉÏ |
+#=S¤F˨Ü`é@=£®¿ ®Kîp!W]|ñC>SÃkhl¾õe°|»B]Ê ¨ì¬cê>Èä>Òãý\^¢¦; # p§Þ=Foc |
+Ëxm.ø,øgKó |
+Ô)H®%äªÂòmö)&W°w»YMíÖíni¥æ}(hz¯RFÑ5nÊ3%Ñ íçK |
+\)ä-¡àL|CÝ0j´ÏÖç{ñ¾{.èάÚBÄNqÁÈRȹ¡uÞy¡µgüP©Ú®j*£¢1¡bboǧäÑi¤-c¦t }U1è$ÿ7÷æ |
+endstream |
+endobj |
+5 0 obj |
+<</Type/Font/Subtype/TrueType/Name/F1/BaseFont/BCDEEE+Calibri/Encoding/WinAnsiEncoding/FontDescriptor 6 0 R/FirstChar 32/LastChar 121/Widths 1554 0 R>> |
+endobj |
+6 0 obj |
+<</Type/FontDescriptor/FontName/BCDEEE+Calibri/Flags 32/ItalicAngle 0/Ascent 750/Descent -250/CapHeight 750/AvgWidth 521/MaxWidth 1743/FontWeight 400/XHeight 250/StemV 52/FontBBox[ -503 -250 1240 750] /FontFile2 1555 0 R>> |
+endobj |
+7 0 obj |
+<</Type/ExtGState/BM/Normal/ca 1>> |
+endobj |
+8 0 obj |
+<</Type/ExtGState/BM/Normal/CA 1>> |
+endobj |
+9 0 obj |
+<</Type/Font/Subtype/TrueType/Name/F2/BaseFont/BCDFEE+Cambria/Encoding/WinAnsiEncoding/FontDescriptor 10 0 R/FirstChar 32/LastChar 32/Widths 1559 0 R>> |
+endobj |
+10 0 obj |
+<</Type/FontDescriptor/FontName/BCDFEE+Cambria/Flags 32/ItalicAngle 0/Ascent 950/Descent -222/CapHeight 778/AvgWidth 615/MaxWidth 4342/FontWeight 400/XHeight 250/StemV 61/FontBBox[ -1475 -222 2868 778] /FontFile2 1557 0 R>> |
+endobj |
+11 0 obj |
+<</Type/Font/Subtype/Type0/BaseFont/BCDGEE+Cambria/Encoding/Identity-H/DescendantFonts 12 0 R/ToUnicode 1556 0 R>> |
+endobj |
+12 0 obj |
+[ 13 0 R] |
+endobj |
+13 0 obj |
+<</BaseFont/BCDGEE+Cambria/Subtype/CIDFontType2/Type/Font/CIDToGIDMap/Identity/DW 1000/CIDSystemInfo 14 0 R/FontDescriptor 15 0 R/W 1558 0 R>> |
+endobj |
+14 0 obj |
+<</Ordering(Identity) /Registry(Adobe) /Supplement 0>> |
+endobj |
+15 0 obj |
+<</Type/FontDescriptor/FontName/BCDGEE+Cambria/Flags 32/ItalicAngle 0/Ascent 950/Descent -222/CapHeight 778/AvgWidth 615/MaxWidth 4342/FontWeight 400/XHeight 250/StemV 61/FontBBox[ -1475 -222 2868 778] /FontFile2 1557 0 R>> |
+endobj |
+16 0 obj |
+<</Type/Font/Subtype/TrueType/Name/F4/BaseFont/TimesNewRomanPSMT/Encoding/WinAnsiEncoding/FontDescriptor 17 0 R/FirstChar 32/LastChar 126/Widths 1563 0 R>> |
+endobj |
+17 0 obj |
+<</Type/FontDescriptor/FontName/TimesNewRomanPSMT/Flags 32/ItalicAngle 0/Ascent 891/Descent -216/CapHeight 693/AvgWidth 401/MaxWidth 2614/FontWeight 400/XHeight 250/Leading 42/StemV 40/FontBBox[ -568 -216 2046 693] >> |
+endobj |
+18 0 obj |
+<</Type/Font/Subtype/TrueType/Name/F5/BaseFont/TimesNewRomanPS-ItalicMT/Encoding/WinAnsiEncoding/FontDescriptor 19 0 R/FirstChar 32/LastChar 124/Widths 1567 0 R>> |
+endobj |
+19 0 obj |
+<</Type/FontDescriptor/FontName/TimesNewRomanPS-ItalicMT/Flags 32/ItalicAngle -16.4/Ascent 891/Descent -216/CapHeight 694/AvgWidth 402/MaxWidth 1831/FontWeight 400/XHeight 250/Leading 42/StemV 40/FontBBox[ -498 -216 1333 694] >> |
+endobj |
+20 0 obj |
+<</Type/Font/Subtype/TrueType/Name/F6/BaseFont/BCDHEE+Cambria-Bold/Encoding/WinAnsiEncoding/FontDescriptor 21 0 R/FirstChar 32/LastChar 121/Widths 1568 0 R>> |
+endobj |
+21 0 obj |
+<</Type/FontDescriptor/FontName/BCDHEE+Cambria-Bold/Flags 32/ItalicAngle 0/Ascent 950/Descent -222/CapHeight 778/AvgWidth 600/MaxWidth 2482/FontWeight 700/XHeight 250/StemV 60/FontBBox[ -1110 -222 1373 778] /FontFile2 1569 0 R>> |
+endobj |
+22 0 obj |
+<</Subtype/Link/Rect[ 51.75 629.61 543.05 650.05] /BS<</W 0>>/F 4/Dest[ 23 0 R/XYZ 51 769 0] /StructParent 1>> |
+endobj |
+23 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F6 20 0 R/F4 16 0 R/F7 71 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/XObject<</Image83 83 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 76 0 R 77 0 R 78 0 R 79 0 R 80 0 R 81 0 R 82 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 70 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 33>> |
+endobj |
+24 0 obj |
+<</Subtype/Link/Rect[ 51.75 609.17 543.05 629.61] /BS<</W 0>>/F 4/Dest[ 25 0 R/XYZ 51 769 0] /StructParent 2>> |
+endobj |
+25 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F6 20 0 R/F4 16 0 R/F8 85 0 R/F7 71 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/XObject<</Image90 90 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 87 0 R 88 0 R 89 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 84 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 41>> |
+endobj |
+26 0 obj |
+<</Subtype/Link/Rect[ 62.8 593.73 543.05 609.17] /BS<</W 0>>/F 4/Dest[ 25 0 R/XYZ 51 751 0] /StructParent 3>> |
+endobj |
+27 0 obj |
+<</Subtype/Link/Rect[ 62.8 578.28 543.05 593.73] /BS<</W 0>>/F 4/Dest[ 25 0 R/XYZ 51 545 0] /StructParent 4>> |
+endobj |
+28 0 obj |
+<</Subtype/Link/Rect[ 51.75 557.84 543.05 578.28] /BS<</W 0>>/F 4/Dest[ 25 0 R/XYZ 51 472 0] /StructParent 5>> |
+endobj |
+29 0 obj |
+<</Subtype/Link/Rect[ 62.8 542.4 543.05 557.84] /BS<</W 0>>/F 4/Dest[ 25 0 R/XYZ 51 257 0] /StructParent 6>> |
+endobj |
+30 0 obj |
+<</Subtype/Link/Rect[ 51.75 521.96 543.05 542.4] /BS<</W 0>>/F 4/Dest[ 31 0 R/XYZ 51 769 0] /StructParent 7>> |
+endobj |
+31 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F6 20 0 R/F4 16 0 R/F7 71 0 R/F8 85 0 R/F9 92 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/XObject<</Image97 97 0 R/Image98 98 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 91 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 45>> |
+endobj |
+32 0 obj |
+<</Subtype/Link/Rect[ 62.8 506.52 543.05 521.96] /BS<</W 0>>/F 4/Dest[ 31 0 R/XYZ 51 723 0] /StructParent 8>> |
+endobj |
+33 0 obj |
+<</Subtype/Link/Rect[ 62.8 491.07 543.05 506.52] /BS<</W 0>>/F 4/Dest[ 31 0 R/XYZ 51 412 0] /StructParent 9>> |
+endobj |
+34 0 obj |
+<</Subtype/Link/Rect[ 62.8 475.63 543.05 491.07] /BS<</W 0>>/F 4/Dest[ 31 0 R/XYZ 51 154 0] /StructParent 10>> |
+endobj |
+35 0 obj |
+<</Subtype/Link/Rect[ 62.8 460.19 543.05 475.63] /BS<</W 0>>/F 4/Dest[ 36 0 R/XYZ 51 718 0] /StructParent 11>> |
+endobj |
+36 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F10 100 0 R/F4 16 0 R/F6 20 0 R/F8 85 0 R/F9 92 0 R/F5 18 0 R/F7 71 0 R/F11 102 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/XObject<</Image104 104 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 99 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 46>> |
+endobj |
+37 0 obj |
+<</Subtype/Link/Rect[ 51.75 439.75 543.05 460.19] /BS<</W 0>>/F 4/Dest[ 36 0 R/XYZ 51 465 0] /StructParent 12>> |
+endobj |
+38 0 obj |
+<</Subtype/Link/Rect[ 62.8 424.31 543.05 439.75] /BS<</W 0>>/F 4/Dest[ 36 0 R/XYZ 51 411 0] /StructParent 13>> |
+endobj |
+39 0 obj |
+<</Subtype/Link/Rect[ 62.8 408.87 543.05 424.31] /BS<</W 0>>/F 4/Dest[ 40 0 R/XYZ 51 769 0] /StructParent 14>> |
+endobj |
+40 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F6 20 0 R/F4 16 0 R/F7 71 0 R/F5 18 0 R/F8 85 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 106 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 47>> |
+endobj |
+41 0 obj |
+<</Subtype/Link/Rect[ 73.75 388.42 543.05 408.87] /BS<</W 0>>/F 4/Dest[ 40 0 R/XYZ 51 684 0] /StructParent 15>> |
+endobj |
+42 0 obj |
+<</Subtype/Link/Rect[ 73.75 367.98 543.05 388.42] /BS<</W 0>>/F 4/Dest[ 40 0 R/XYZ 51 609 0] /StructParent 16>> |
+endobj |
+43 0 obj |
+<</Subtype/Link/Rect[ 73.75 347.54 543.05 367.98] /BS<</W 0>>/F 4/Dest[ 44 0 R/XYZ 51 377 0] /StructParent 17>> |
+endobj |
+44 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F4 16 0 R/F8 85 0 R/F11 102 0 R/F5 18 0 R/F12 108 0 R/F6 20 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 107 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 48>> |
+endobj |
+45 0 obj |
+<</Subtype/Link/Rect[ 73.75 327.1 543.05 347.54] /BS<</W 0>>/F 4/Dest[ 48 0 R/XYZ 51 527 0] /StructParent 18>> |
+endobj |
+46 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F4 16 0 R/F5 18 0 R/F7 71 0 R/F11 102 0 R/F12 108 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 114 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 113 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 49>> |
+endobj |
+47 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F4 16 0 R/F11 102 0 R/F5 18 0 R/F12 108 0 R/F7 71 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 115 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 51>> |
+endobj |
+48 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F10 100 0 R/F4 16 0 R/F7 71 0 R/F5 18 0 R/F6 20 0 R/F11 102 0 R/F13 117 0 R/F8 85 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/XObject<</Image119 119 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 116 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 52>> |
+endobj |
+49 0 obj |
+<</Subtype/Link/Rect[ 62.8 311.66 543.05 327.1] /BS<</W 0>>/F 4/Dest[ 52 0 R/XYZ 51 352 0] /StructParent 19>> |
+endobj |
+50 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F13 117 0 R/F8 85 0 R/F4 16 0 R/F7 71 0 R/F5 18 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 120 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 53>> |
+endobj |
+51 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F4 16 0 R/F7 71 0 R/F8 85 0 R/F5 18 0 R/F13 117 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 121 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 54>> |
+endobj |
+52 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F4 16 0 R/F8 85 0 R/F5 18 0 R/F13 117 0 R/F7 71 0 R/F6 20 0 R/F11 102 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 122 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 55>> |
+endobj |
+53 0 obj |
+<</Subtype/Link/Rect[ 51.75 291.21 543.05 311.66] /BS<</W 0>>/F 4/Dest[ 54 0 R/XYZ 51 769 0] /StructParent 20>> |
+endobj |
+54 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F6 20 0 R/F4 16 0 R/F7 71 0 R/F5 18 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 123 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 56>> |
+endobj |
+55 0 obj |
+<</Subtype/Link/Rect[ 62.8 275.77 543.05 291.21] /BS<</W 0>>/F 4/Dest[ 54 0 R/XYZ 51 700 0] /StructParent 21>> |
+endobj |
+56 0 obj |
+<</Subtype/Link/Rect[ 62.8 260.33 543.05 275.77] /BS<</W 0>>/F 4/Dest[ 54 0 R/XYZ 51 567 0] /StructParent 22>> |
+endobj |
+57 0 obj |
+<</Subtype/Link/Rect[ 62.8 244.89 543.05 260.33] /BS<</W 0>>/F 4/Dest[ 54 0 R/XYZ 51 433 0] /StructParent 23>> |
+endobj |
+58 0 obj |
+<</Subtype/Link/Rect[ 62.8 229.45 543.05 244.89] /BS<</W 0>>/F 4/Dest[ 54 0 R/XYZ 51 226 0] /StructParent 24>> |
+endobj |
+59 0 obj |
+<</Subtype/Link/Rect[ 62.8 214 543.05 229.45] /BS<</W 0>>/F 4/Dest[ 60 0 R/XYZ 51 624 0] /StructParent 25>> |
+endobj |
+60 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F4 16 0 R/F7 71 0 R/F6 20 0 R/F5 18 0 R/F12 108 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 124 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 57>> |
+endobj |
+61 0 obj |
+<</Subtype/Link/Rect[ 51.75 193.56 543.05 214] /BS<</W 0>>/F 4/Dest[ 60 0 R/XYZ 51 468 0] /StructParent 26>> |
+endobj |
+62 0 obj |
+<</Subtype/Link/Rect[ 62.8 178.12 543.05 193.56] /BS<</W 0>>/F 4/Dest[ 60 0 R/XYZ 51 398 0] /StructParent 27>> |
+endobj |
+63 0 obj |
+<</Subtype/Link/Rect[ 62.8 162.68 543.05 178.12] /BS<</W 0>>/F 4/Dest[ 64 0 R/XYZ 51 769 0] /StructParent 28>> |
+endobj |
+64 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F6 20 0 R/F4 16 0 R/F5 18 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 595.5 842.25] /Contents 125 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 58>> |
+endobj |
+65 0 obj |
+<</Subtype/Link/Rect[ 62.8 147.24 543.05 162.68] /BS<</W 0>>/F 4/Dest[ 64 0 R/XYZ 51 702 0] /StructParent 29>> |
+endobj |
+66 0 obj |
+<</Subtype/Link/Rect[ 62.8 131.79 543.05 147.24] /BS<</W 0>>/F 4/Dest[ 64 0 R/XYZ 51 647 0] /StructParent 30>> |
+endobj |
+67 0 obj |
+<</Subtype/Link/Rect[ 62.8 116.35 543.05 131.79] /BS<</W 0>>/F 4/Dest[ 68 0 R/XYZ 51 769 0] /StructParent 31>> |
+endobj |
+68 0 obj |
+<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F6 20 0 R/F5 18 0 R/F4 16 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 127 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 126 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 59>> |
+endobj |
+69 0 obj |
+<</Subtype/Link/Rect[ 51.75 95.911 543.05 116.35] /BS<</W 0>>/F 4/Dest[ 68 0 R/XYZ 51 260 0] /StructParent 32>> |
+endobj |
+70 0 obj |
+<</Filter/FlateDecode/Length 3541>> |
+stream |
+x½\ëoÜ6ÿnÀÿîÛnqæ/I,ühÒCrv[ÒâàWl_â]³Æÿýñ!CÜmÊþ Eο5Û¿_Ý|:=_¯^ÍöW«ÓóëËâãì`¹Z-oÿ<Ü]ÎÞ^Ý,NW7ËÅìx}¶R^/«Ëûù¼88:,þ·»S¢Rý5MͲà#^4 ÂûËÝß(»;'»;³×¸ÀX=?ù´»eå²Àg¨¬yAD[YëÍq]\}íWú¿¦ýïÍîÎÇI1ý³8ùÇîÎO²½»;C»7Uu²n(h JXE³5Å^9¢V-ÈJÍ#ëB¨*p LER!¢ |
+½¦jìУþK3òít×ÅtðÉê^þÃ&Ëé^3¹b1Y«ËùtNV7êªKO\Æåôécè)Cýøùìgádí/_`JÎr¬8KkIáÁxr:ÝT²V=2×)«'+Y*ÌíR?õ^2¥Ëðѵ~t©ØÜN÷ªºíÆ4ò ßû¤IÒ}qî§R¾NYWW×2më |
+ú5 ݼw;økJK8¦kX¸¯ |
+Mu3³p 笠iß2uàèu°ìî9X⤤rJólôpþî"ÚCipп«©×2åyÝqSÖ |
+¡lfÃF¡8ÙmáP(Ý P£¯6Æ »Ó÷P©uÆ hº<EáÎU1¯gæáòý&Å=CÄe·ôZ3çÍ®e0·ÐasÆUë |
+ÅóÇD=ÂúÐצ½ÏË<V |
+V½½Ü½aY3)*8ZsåúúÇTñû O>n0¢übån¥Ç[óe |
+x5 |
+XÉRâþÍúÿF``Å |
+ýY_` ïjûêqÄâ ç-«âI+ÒóÏÝ0Sn xHUÍÙÐ>ë&Ro`»ÔÉÿHÙ©®kTB-é^£ºK¦¯Ê)ç·Ç:]û¬FÈÉÛ©è-KÖû÷Vgoåc-è~j~.Aw;Û>´hßT¤¯,K¯²F÷à"Ü®ÚiÒ;oZÞVú)˽2Êú¦HÑlèí,·-.)¢Mª7àRiþþ>%^ìºëÚk¡ÌM;÷{QàÎØÂæ·ù.ZÓÙQÉC,KÍÁøJ`%®>YÿVì P¹Éb%f¾aB;|ݬyÕúìE|xÚ¼Þf ¯/Ao¦#óº¹`¬'ݵÕ-h©@'~³ÚhBD@/ G!/:äÊ¡ysµ@o8y8ûX¿g¬3¤Ýlt=8ô8uà¨uá.ßû#×<×;ÁÚazºvß; |
+4½I}ôÖ îõCK×ó\s·Ö²ïÀa¼ÏíK`G7½«áGÍ®zÛnbQ&`4ŨF³¢¨ |
+ÁÛä»KP¸(]:ӢɸÖAÕ &6è |
+Ø¡B ô¶Ø>*,DaÉÄáÈ.bìDÈÂÙ_2úc%¢4& |
+÷ q"¢2'Lå³@¡%U©oU¬(ûynQ¢Çɾíì÷íZJ%LÔ!®ô°Ç£MÎß X&TDjKHâ°Î`^@9÷¯Zetƹ |
+CÃAzê m)%.åuµ}@ÖÖ |
+áRÊM¬ _÷4b[»eî" ;°êt@y õLµ#ëÐ¥ ¬ærD |
+õGF9Åäk¬s`#ö+@æE0Ó©§{Lr¿¦E(îè0#md@%ÔQë@Rð] |
+!+ÃÌïþÖ\ÿdu±bݵ(}Xw-Þ;&07nÎÔ'oúÚÔê« êÐ D´U¿¦È½q®>püööô겡ÅÑÒ~Röÿ f |
+endstream |
+endobj |
+71 0 obj |
+<</Type/Font/Subtype/Type0/BaseFont/TimesNewRomanPSMT/Encoding/Identity-H/DescendantFonts 72 0 R/ToUnicode 1560 0 R>> |
+endobj |
+72 0 obj |
+[ 73 0 R] |
+endobj |
+73 0 obj |
+<</BaseFont/TimesNewRomanPSMT/Subtype/CIDFontType2/Type/Font/CIDToGIDMap/Identity/DW 1000/CIDSystemInfo 74 0 R/FontDescriptor 75 0 R/W 1562 0 R>> |
+endobj |
+74 0 obj |
+<</Ordering(Identity) /Registry(Adobe) /Supplement 0>> |
+endobj |
+75 0 obj |
+<</Type/FontDescriptor/FontName/TimesNewRomanPSMT/Flags 32/ItalicAngle 0/Ascent 891/Descent -216/CapHeight 693/AvgWidth 401/MaxWidth 2614/FontWeight 400/XHeight 250/Leading 42/StemV 40/FontBBox[ -568 -216 2046 693] /FontFile2 1561 0 R>> |
+endobj |
+76 0 obj |
+<</Subtype/Link/Rect[ 517.94 728.38 546.05 739.88] /BS<</W 0>>/F 4/A<</Type/Action/S/URI/URI(https://www.telegraphics.com.au/sw/) >>/StructParent 34>> |
+endobj |
+77 0 obj |
+<</Subtype/Link/Rect[ 51.75 716.88 79.575 728.38] /BS<</W 0>>/F 4/A<</Type/Action/S/URI/URI(https://www.telegraphics.com.au/sw/) >>/StructParent 35>> |
+endobj |
+78 0 obj |
+<</Subtype/Link/Rect[ 317.81 716.88 392.92 728.38] /BS<</W 0>>/F 4/A<</Type/Action/S/URI/URI(https://www.daniel-marschall.de/) >>/StructParent 36>> |
+endobj |
+79 0 obj |
+<</Subtype/Link/Rect[ 399.13 716.88 458.62 728.38] /BS<</W 0>>/F 4/A<</Type/Action/S/URI/URI(https://www.viathinksoft.com/) >>/StructParent 37>> |
+endobj |
+80 0 obj |
+<</Subtype/Link/Rect[ 87.15 560.39 304.39 576.89] /BS<</W 0>>/F 4/A<</Type/Action/S/URI/URI(https://www.viathinksoft.com/projects/filter_foundry) >>/StructParent 38>> |
+endobj |
+81 0 obj |
+<</Subtype/Link/Rect[ 87.15 515.89 292.44 532.39] /BS<</W 0>>/F 4/A<</Type/Action/S/URI/URI(https://github.com/danielmarschall/filter_foundry/) >>/StructParent 39>> |
+endobj |
+82 0 obj |
+<</Subtype/Link/Rect[ 87.15 471.39 289.97 487.89] /BS<</W 0>>/F 4/A<</Type/Action/S/URI/URI(https://thepluginsite.com/knowhow/ffpg/ffpg.htm) >>/StructParent 40>> |
+endobj |
+83 0 obj |
+<</Type/XObject/Subtype/Image/Width 1061/Height 741/ColorSpace/DeviceRGB/BitsPerComponent 8/Filter/DCTDecode/Interpolate true/Length 115027>> |
+stream |
+ÿØÿà JFIF ` ` ÿá ZExif MM * J Q Q ÃQ Ã ±ÿÛ C |
+2!!22222222222222222222222222222222222222222222222222ÿÀ å%" |