Skip to content
Browse files

updating files changed since 2003

git-svn-id: https://resknife.svn.sourceforge.net/svnroot/resknife/trunk/ResKnife@120 25122d23-1bc7-42f3-9251-2040de679093
  • Loading branch information...
1 parent 74f0646 commit 009b66f8656ab245f9ed3b92a49682fad12f9123 nickshanks committed
Showing with 339 additions and 269 deletions.
  1. +278 −259 HexEditor.graffle
  2. +61 −10 README.txt
View
537 HexEditor.graffle
@@ -4,8 +4,10 @@
<dict>
<key>CanvasColor</key>
<dict>
+ <key>a</key>
+ <string>1</string>
<key>w</key>
- <real>1.000000e+00</real>
+ <string>1</string>
</dict>
<key>ColumnAlign</key>
<integer>0</integer>
@@ -21,10 +23,10 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>31</integer>
+ <integer>27</integer>
</dict>
<key>ID</key>
- <integer>33</integer>
+ <integer>29</integer>
<key>Points</key>
<array>
<string>{319.5, 504}</string>
@@ -45,7 +47,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>26</integer>
+ <integer>22</integer>
</dict>
</dict>
<dict>
@@ -54,10 +56,10 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>31</integer>
+ <integer>27</integer>
</dict>
<key>ID</key>
- <integer>32</integer>
+ <integer>28</integer>
<key>Points</key>
<array>
<string>{276.3, 504}</string>
@@ -78,7 +80,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>25</integer>
+ <integer>21</integer>
</dict>
</dict>
<dict>
@@ -87,10 +89,10 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>22</integer>
+ <integer>18</integer>
</dict>
<key>ID</key>
- <integer>31</integer>
+ <integer>27</integer>
<key>Points</key>
<array>
<string>{279, 558}</string>
@@ -116,10 +118,10 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>31</integer>
+ <integer>27</integer>
</dict>
<key>ID</key>
- <integer>30</integer>
+ <integer>26</integer>
<key>Points</key>
<array>
<string>{233.1, 504}</string>
@@ -140,7 +142,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>24</integer>
+ <integer>20</integer>
</dict>
</dict>
<dict>
@@ -149,10 +151,10 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>11</integer>
+ <integer>7</integer>
</dict>
<key>ID</key>
- <integer>29</integer>
+ <integer>25</integer>
<key>Points</key>
<array>
<string>{321.577, 432}</string>
@@ -173,7 +175,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>26</integer>
+ <integer>22</integer>
</dict>
</dict>
<dict>
@@ -182,10 +184,10 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>11</integer>
+ <integer>7</integer>
</dict>
<key>ID</key>
- <integer>28</integer>
+ <integer>24</integer>
<key>Points</key>
<array>
<string>{271.731, 432}</string>
@@ -206,7 +208,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>25</integer>
+ <integer>21</integer>
</dict>
</dict>
<dict>
@@ -215,10 +217,10 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>24</integer>
+ <integer>20</integer>
</dict>
<key>ID</key>
- <integer>27</integer>
+ <integer>23</integer>
<key>Points</key>
<array>
<string>{250.962, 378}</string>
@@ -239,7 +241,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>11</integer>
+ <integer>7</integer>
</dict>
</dict>
<dict>
@@ -248,7 +250,7 @@
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>26</integer>
+ <integer>22</integer>
<key>Shape</key>
<string>HorizontalBrackets</string>
<key>Text</key>
@@ -259,7 +261,8 @@
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
-\f0\fs24 \cf0 Hex Text View (ASCII)}</string>
+\f0\fs24 \cf0 ASCII\
+Text View}</string>
</dict>
</dict>
<dict>
@@ -268,7 +271,7 @@
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>25</integer>
+ <integer>21</integer>
<key>Shape</key>
<string>HorizontalBrackets</string>
<key>Text</key>
@@ -279,7 +282,8 @@
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
-\f0\fs24 \cf0 Hex Text View (Hex)}</string>
+\f0\fs24 \cf0 Hex\
+Text View}</string>
</dict>
</dict>
<dict>
@@ -288,7 +292,7 @@
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>24</integer>
+ <integer>20</integer>
<key>Shape</key>
<string>HorizontalBrackets</string>
<key>Text</key>
@@ -299,7 +303,8 @@
{\colortbl;\red255\green255\blue255;}
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
-\f0\fs24 \cf0 Hex Text View (Offset)}</string>
+\f0\fs24 \cf0 Offset\
+Text View}</string>
</dict>
</dict>
<dict>
@@ -308,10 +313,10 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>22</integer>
+ <integer>18</integer>
</dict>
<key>ID</key>
- <integer>23</integer>
+ <integer>19</integer>
<key>Points</key>
<array>
<string>{297.807, 236.054}</string>
@@ -332,7 +337,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>9</integer>
+ <integer>5</integer>
</dict>
</dict>
<dict>
@@ -341,7 +346,7 @@
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>22</integer>
+ <integer>18</integer>
<key>Shape</key>
<string>Cloud</string>
<key>Style</key>
@@ -350,12 +355,14 @@
<dict>
<key>Color</key>
<dict>
+ <key>a</key>
+ <string>1</string>
<key>b</key>
- <real>1.000000e+00</real>
+ <string>1</string>
<key>g</key>
- <real>8.490366e-01</real>
+ <string>0.849037</string>
<key>r</key>
- <real>9.965038e-01</real>
+ <string>0.996504</string>
</dict>
</dict>
</dict>
@@ -376,14 +383,14 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>11</integer>
+ <integer>7</integer>
</dict>
<key>ID</key>
- <integer>21</integer>
+ <integer>17</integer>
<key>Points</key>
<array>
- <string>{144, 348.527}</string>
- <string>{207, 349.809}</string>
+ <string>{144, 347.879}</string>
+ <string>{207, 349.497}</string>
</array>
<key>Style</key>
<dict>
@@ -400,7 +407,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>17</integer>
+ <integer>13</integer>
</dict>
</dict>
<dict>
@@ -409,14 +416,14 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>17</integer>
+ <integer>13</integer>
</dict>
<key>ID</key>
- <integer>20</integer>
+ <integer>16</integer>
<key>Points</key>
<array>
- <string>{100.788, 239.348}</string>
- <string>{99.8262, 297}</string>
+ <string>{100.786, 239.348}</string>
+ <string>{99.8251, 297}</string>
</array>
<key>Style</key>
<dict>
@@ -433,7 +440,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>18</integer>
+ <integer>14</integer>
</dict>
</dict>
<dict>
@@ -442,10 +449,10 @@
<key>Head</key>
<dict>
<key>ID</key>
- <integer>18</integer>
+ <integer>14</integer>
</dict>
<key>ID</key>
- <integer>19</integer>
+ <integer>15</integer>
<key>Points</key>
<array>
<string>{218.607, 211.5}</string>
@@ -466,7 +473,7 @@
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>9</integer>
+ <integer>5</integer>
</dict>
</dict>
<dict>
@@ -475,7 +482,7 @@
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>18</integer>
+ <integer>14</integer>
<key>Shape</key>
<string>Cloud</string>
<key>Style</key>
@@ -484,12 +491,14 @@
<dict>
<key>Color</key>
<dict>
+ <key>a</key>
+ <string>1</string>
<key>b</key>
- <real>1.000000e+00</real>
+ <string>1</string>
<key>g</key>
- <real>9.653430e-01</real>
+ <string>0.965343</string>
<key>r</key>
- <real>7.682484e-01</real>
+ <string>0.768248</string>
</dict>
</dict>
</dict>
@@ -515,7 +524,7 @@
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>16</integer>
+ <integer>12</integer>
<key>Shape</key>
<string>RoundRect</string>
<key>Style</key>
@@ -524,12 +533,14 @@
<dict>
<key>Color</key>
<dict>
+ <key>a</key>
+ <string>1</string>
<key>b</key>
- <real>1.000000e+00</real>
+ <string>1</string>
<key>g</key>
- <real>7.482798e-01</real>
+ <string>0.74828</string>
<key>r</key>
- <real>4.663317e-01</real>
+ <string>0.466332</string>
</dict>
</dict>
<key>shadow</key>
@@ -537,13 +548,13 @@
<key>Color</key>
<dict>
<key>a</key>
- <real>5.000000e-01</real>
+ <string>0.5</string>
<key>b</key>
- <real>7.500000e-01</real>
+ <string>0.75</string>
<key>g</key>
- <real>7.500000e-01</real>
+ <string>0.75</string>
<key>r</key>
- <real>7.500000e-01</real>
+ <string>0.75</string>
</dict>
</dict>
<key>stroke</key>
@@ -559,7 +570,7 @@
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>17</integer>
+ <integer>13</integer>
<key>Shape</key>
<string>Rectangle</string>
<key>Text</key>
@@ -576,7 +587,7 @@ Sheet}</string>
</dict>
</array>
<key>ID</key>
- <integer>15</integer>
+ <integer>11</integer>
</dict>
<dict>
<key>Class</key>
@@ -584,14 +595,14 @@ Sheet}</string>
<key>Head</key>
<dict>
<key>ID</key>
- <integer>12</integer>
+ <integer>8</integer>
</dict>
<key>ID</key>
- <integer>14</integer>
+ <integer>10</integer>
<key>Points</key>
<array>
- <string>{267.14, 239.328}</string>
- <string>{265.695, 306}</string>
+ <string>{267.145, 239.33}</string>
+ <string>{265.696, 306}</string>
</array>
<key>Style</key>
<dict>
@@ -608,7 +619,7 @@ Sheet}</string>
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>9</integer>
+ <integer>5</integer>
</dict>
</dict>
<dict>
@@ -617,14 +628,14 @@ Sheet}</string>
<key>Head</key>
<dict>
<key>ID</key>
- <integer>9</integer>
+ <integer>5</integer>
</dict>
<key>ID</key>
- <integer>13</integer>
+ <integer>9</integer>
<key>Points</key>
<array>
<string>{266.062, 117}</string>
- <string>{267.252, 183.589}</string>
+ <string>{267.252, 183.588}</string>
</array>
<key>Style</key>
<dict>
@@ -641,7 +652,7 @@ Sheet}</string>
<key>Tail</key>
<dict>
<key>ID</key>
- <integer>7</integer>
+ <integer>3</integer>
</dict>
</dict>
<dict>
@@ -655,7 +666,7 @@ Sheet}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>11</integer>
+ <integer>7</integer>
<key>Shape</key>
<string>Rectangle</string>
</dict>
@@ -665,7 +676,7 @@ Sheet}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>12</integer>
+ <integer>8</integer>
<key>Shape</key>
<string>Rectangle</string>
<key>Text</key>
@@ -681,7 +692,7 @@ Sheet}</string>
</dict>
</array>
<key>ID</key>
- <integer>10</integer>
+ <integer>6</integer>
</dict>
<dict>
<key>Bounds</key>
@@ -689,7 +700,7 @@ Sheet}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>9</integer>
+ <integer>5</integer>
<key>Shape</key>
<string>Cloud</string>
<key>Style</key>
@@ -698,12 +709,14 @@ Sheet}</string>
<dict>
<key>Color</key>
<dict>
+ <key>a</key>
+ <string>1</string>
<key>b</key>
- <real>1.000000e+00</real>
+ <string>1</string>
<key>g</key>
- <real>9.653430e-01</real>
+ <string>0.965343</string>
<key>r</key>
- <real>7.682484e-01</real>
+ <string>0.768248</string>
</dict>
</dict>
</dict>
@@ -729,7 +742,7 @@ Sheet}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>6</integer>
+ <integer>2</integer>
<key>Magnets</key>
<array>
<string>{0, 1}</string>
@@ -756,7 +769,7 @@ Sheet}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>7</integer>
+ <integer>3</integer>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
@@ -765,12 +778,14 @@ Sheet}</string>
<dict>
<key>Color</key>
<dict>
+ <key>a</key>
+ <string>1</string>
<key>b</key>
- <real>0.000000e+00</real>
+ <string>0</string>
<key>g</key>
- <real>0.000000e+00</real>
+ <string>0</string>
<key>r</key>
- <real>0.000000e+00</real>
+ <string>0</string>
</dict>
<key>Width</key>
<real>2.000000e+00</real>
@@ -783,7 +798,7 @@ Sheet}</string>
<key>Class</key>
<string>ShapedGraphic</string>
<key>ID</key>
- <integer>8</integer>
+ <integer>4</integer>
<key>Shape</key>
<string>Rectangle</string>
<key>Style</key>
@@ -793,21 +808,23 @@ Sheet}</string>
<key>Color</key>
<dict>
<key>a</key>
- <real>5.000000e-01</real>
+ <string>0.5</string>
<key>w</key>
- <real>3.333334e-01</real>
+ <string>0.333333</string>
</dict>
</dict>
<key>stroke</key>
<dict>
<key>Color</key>
<dict>
+ <key>a</key>
+ <string>1</string>
<key>b</key>
- <real>0.000000e+00</real>
+ <string>0</string>
<key>g</key>
- <real>0.000000e+00</real>
+ <string>0</string>
<key>r</key>
- <real>0.000000e+00</real>
+ <string>0</string>
</dict>
<key>Width</key>
<real>2.000000e+00</real>
@@ -826,7 +843,7 @@ Sheet}</string>
</dict>
</array>
<key>ID</key>
- <integer>5</integer>
+ <integer>1</integer>
</dict>
</array>
<key>GridInfo</key>
@@ -864,8 +881,10 @@ Sheet}</string>
<string>YES</string>
<key>PageBreakColor</key>
<dict>
+ <key>a</key>
+ <string>1</string>
<key>w</key>
- <real>6.666667e-01</real>
+ <string>0.666667</string>
</dict>
<key>PageBreaks</key>
<string>YES</string>
@@ -873,178 +892,178 @@ Sheet}</string>
<data>
BAt0eXBlZHN0cmVhbYED6IQBQISEhAtOU1ByaW50SW5mbwGEhAhOU09iamVjdACFkoSE
hBNOU011dGFibGVEaWN0aW9uYXJ5AISEDE5TRGljdGlvbmFyeQCUhAFpF5KEhIQITlNT
- dHJpbmcBlIQBKw9OU1BhZ2VzUGVyU2hlZXSGkoSEhAhOU051bWJlcgCEhAdOU1ZhbHVl
- AJSEASqEhAFznQGGkoSZmQ5OU0JvdHRvbU1hcmdpboaShJuchIQBZp4khpKEmZkPTlNQ
- cmludEFsbFBhZ2VzhpKEm5ydnQCGkoSZmQ1OU0pvYkZlYXR1cmVzhpKElpcAhpKEmZkV
- TlNIb3Jpem9uYWxQYWdpbmF0aW9uhpKEm5ydnQCGkoSZmRROU1ZlcnRpY2FsbHlDZW50
- ZXJlZIaShJucnZ0BhpKEmZkJTlNQcmludGVyhpKEhIQJTlNQcmludGVyAJSShJmZASCG
- hpKEmZkPTlNTY2FsaW5nRmFjdG9yhpKEm5ygngGGkoSZmRJOU1JldmVyc2VQYWdlT3Jk
- ZXKGkqKShJmZDE5TTGVmdE1hcmdpboaShJucoJ4khpKEmZkOTlNQTVBhZ2VGb3JtYXSG
- koSEhAZOU0RhdGEAlJeBHyCEB1s3OTY4Y108P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29k
- aW5nPSJVVEYtOCI/Pgo8IURPQ1RZUEUgcGxpc3QgUFVCTElDICItLy9BcHBsZSBDb21w
- dXRlci8vRFREIFBMSVNUIDEuMC8vRU4iICJodHRwOi8vd3d3LmFwcGxlLmNvbS9EVERz
- L1Byb3BlcnR5TGlzdC0xLjAuZHRkIj4KPHBsaXN0IHZlcnNpb249IjEuMCI+CjxkaWN0
- PgoJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTUhvcml6b250YWxSZXM8
- L2tleT4KCTxkaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9y
- PC9rZXk+CgkJPHN0cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+
- CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCTxh
- cnJheT4KCQkJPGRpY3Q+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0
- LlBNSG9yaXpvbnRhbFJlczwva2V5PgoJCQkJPHJlYWw+Ny4yMDAwMDAwMDAwMDAwMDBl
- KzAxPC9yZWFsPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNsaWVudDwv
- a2V5PgoJCQkJPHN0cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+
- CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQubW9kRGF0ZTwva2V5PgoJCQkJ
- PGRhdGU+MjAwMi0xMS0xN1QwMDoxNjowOVo8L2RhdGU+CgkJCQk8a2V5PmNvbS5hcHBs
- ZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQk8aW50ZWdlcj4wPC9pbnRl
- Z2VyPgoJCQk8L2RpY3Q+CgkJPC9hcnJheT4KCTwvZGljdD4KCTxrZXk+Y29tLmFwcGxl
- LnByaW50LlBhZ2VGb3JtYXQuUE1PcmllbnRhdGlvbjwva2V5PgoJPGRpY3Q+CgkJPGtl
- eT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQk8c3RyaW5nPmNv
- bS5hcHBsZS5wcmludGluZ21hbmFnZXI8L3N0cmluZz4KCQk8a2V5PmNvbS5hcHBsZS5w
- cmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJPGFycmF5PgoJCQk8ZGljdD4KCQkJ
- CTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1PcmllbnRhdGlvbjwva2V5
- PgoJCQkJPGludGVnZXI+MTwvaW50ZWdlcj4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50
- LnRpY2tldC5jbGllbnQ8L2tleT4KCQkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5n
- bWFuYWdlcjwvc3RyaW5nPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1v
- ZERhdGU8L2tleT4KCQkJCTxkYXRlPjIwMDItMTEtMTdUMDA6MTY6MDlaPC9kYXRlPgoJ
- CQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJ
- PGludGVnZXI+MDwvaW50ZWdlcj4KCQkJPC9kaWN0PgoJCTwvYXJyYXk+Cgk8L2RpY3Q+
- Cgk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNU2NhbGluZzwva2V5PgoJ
- PGRpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4K
- CQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludGluZ21hbmFnZXI8L3N0cmluZz4KCQk8a2V5
- PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJPGFycmF5PgoJ
- CQk8ZGljdD4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1TY2Fs
- aW5nPC9rZXk+CgkJCQk8cmVhbD4xLjAwMDAwMDAwMDAwMDAwMGUrMDA8L3JlYWw+CgkJ
- CQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY2xpZW50PC9rZXk+CgkJCQk8c3Ry
- aW5nPmNvbS5hcHBsZS5wcmludGluZ21hbmFnZXI8L3N0cmluZz4KCQkJCTxrZXk+Y29t
- LmFwcGxlLnByaW50LnRpY2tldC5tb2REYXRlPC9rZXk+CgkJCQk8ZGF0ZT4yMDAyLTEx
- LTE3VDAwOjE2OjA5WjwvZGF0ZT4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tl
- dC5zdGF0ZUZsYWc8L2tleT4KCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCTwvZGlj
- dD4KCQk8L2FycmF5PgoJPC9kaWN0PgoJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZv
- cm1hdC5QTVZlcnRpY2FsUmVzPC9rZXk+Cgk8ZGljdD4KCQk8a2V5PmNvbS5hcHBsZS5w
- cmludC50aWNrZXQuY3JlYXRvcjwva2V5PgoJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50
- aW5nbWFuYWdlcjwvc3RyaW5nPgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5p
- dGVtQXJyYXk8L2tleT4KCQk8YXJyYXk+CgkJCTxkaWN0PgoJCQkJPGtleT5jb20uYXBw
- bGUucHJpbnQuUGFnZUZvcm1hdC5QTVZlcnRpY2FsUmVzPC9rZXk+CgkJCQk8cmVhbD43
- LjIwMDAwMDAwMDAwMDAwMGUrMDE8L3JlYWw+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmlu
- dC50aWNrZXQuY2xpZW50PC9rZXk+CgkJCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludGlu
- Z21hbmFnZXI8L3N0cmluZz4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5t
- b2REYXRlPC9rZXk+CgkJCQk8ZGF0ZT4yMDAyLTExLTE3VDAwOjE2OjA5WjwvZGF0ZT4K
- CQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5zdGF0ZUZsYWc8L2tleT4KCQkJ
- CTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCTwvZGljdD4KCQk8L2FycmF5PgoJPC9kaWN0
- PgoJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTVZlcnRpY2FsU2NhbGlu
- Zzwva2V5PgoJPGRpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0
- b3I8L2tleT4KCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludGluZ21hbmFnZXI8L3N0cmlu
- Zz4KCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJ
- PGFycmF5PgoJCQk8ZGljdD4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3Jt
- YXQuUE1WZXJ0aWNhbFNjYWxpbmc8L2tleT4KCQkJCTxyZWFsPjEuMDAwMDAwMDAwMDAw
- MDAwZSswMDwvcmVhbD4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jbGll
- bnQ8L2tleT4KCQkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5nbWFuYWdlcjwvc3Ry
- aW5nPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERhdGU8L2tleT4K
- CQkJCTxkYXRlPjIwMDItMTEtMTdUMDA6MTY6MDlaPC9kYXRlPgoJCQkJPGtleT5jb20u
- YXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJPGludGVnZXI+MDwv
- aW50ZWdlcj4KCQkJPC9kaWN0PgoJCTwvYXJyYXk+Cgk8L2RpY3Q+Cgk8a2V5PmNvbS5h
- cHBsZS5wcmludC5zdWJUaWNrZXQucGFwZXJfaW5mb190aWNrZXQ8L2tleT4KCTxkaWN0
- PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1BZGp1c3RlZFBhZ2VS
- ZWN0PC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5j
- cmVhdG9yPC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5nbWFuYWdlcjwv
- c3RyaW5nPgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9r
- ZXk+CgkJCTxhcnJheT4KCQkJCTxkaWN0PgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50
- LlBhZ2VGb3JtYXQuUE1BZGp1c3RlZFBhZ2VSZWN0PC9rZXk+CgkJCQkJPGFycmF5PgoJ
- CQkJCQk8cmVhbD4wLjAwMDAwMDAwMDAwMDAwMGUrMDA8L3JlYWw+CgkJCQkJCTxyZWFs
- PjAuMDAwMDAwMDAwMDAwMDAwZSswMDwvcmVhbD4KCQkJCQkJPHJlYWw+Ny44MzAwMDAw
- MDAwMDAwMDBlKzAyPC9yZWFsPgoJCQkJCQk8cmVhbD41LjU5MDAwMDAwMDAwMDAwMGUr
- MDI8L3JlYWw+CgkJCQkJPC9hcnJheT4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50
- aWNrZXQuY2xpZW50PC9rZXk+CgkJCQkJPHN0cmluZz5jb20uYXBwbGUucHJpbnRpbmdt
- YW5hZ2VyPC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1v
- ZERhdGU8L2tleT4KCQkJCQk8ZGF0ZT4yMDAyLTExLTE3VDAwOjE2OjA5WjwvZGF0ZT4K
- CQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJ
- CQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8
- L2RpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTUFkanVzdGVk
- UGFwZXJSZWN0PC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRp
- Y2tldC5jcmVhdG9yPC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5nbWFu
- YWdlcjwvc3RyaW5nPgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFy
- cmF5PC9rZXk+CgkJCTxhcnJheT4KCQkJCTxkaWN0PgoJCQkJCTxrZXk+Y29tLmFwcGxl
- LnByaW50LlBhZ2VGb3JtYXQuUE1BZGp1c3RlZFBhcGVyUmVjdDwva2V5PgoJCQkJCTxh
- cnJheT4KCQkJCQkJPHJlYWw+LTEuODAwMDAwMDAwMDAwMDAwZSswMTwvcmVhbD4KCQkJ
- CQkJPHJlYWw+LTEuODAwMDAwMDAwMDAwMDAwZSswMTwvcmVhbD4KCQkJCQkJPHJlYWw+
- OC4yNDAwMDAwMDAwMDAwMDBlKzAyPC9yZWFsPgoJCQkJCQk8cmVhbD41Ljc3MDAwMDAw
- MDAwMDAwMGUrMDI8L3JlYWw+CgkJCQkJPC9hcnJheT4KCQkJCQk8a2V5PmNvbS5hcHBs
- ZS5wcmludC50aWNrZXQuY2xpZW50PC9rZXk+CgkJCQkJPHN0cmluZz5jb20uYXBwbGUu
- cHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQu
- dGlja2V0Lm1vZERhdGU8L2tleT4KCQkJCQk8ZGF0ZT4yMDAyLTExLTE3VDAwOjE2OjA5
- WjwvZGF0ZT4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFn
- PC9rZXk+CgkJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9h
- cnJheT4KCQk8L2RpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBN
- UGFwZXJOYW1lPC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRp
- Y2tldC5jcmVhdG9yPC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50LnBtLlBv
- c3RTY3JpcHQ8L3N0cmluZz4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0
- ZW1BcnJheTwva2V5PgoJCQk8YXJyYXk+CgkJCQk8ZGljdD4KCQkJCQk8a2V5PmNvbS5h
- cHBsZS5wcmludC5QYXBlckluZm8uUE1QYXBlck5hbWU8L2tleT4KCQkJCQk8c3RyaW5n
- Pmlzby1hNDwvc3RyaW5nPgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5j
- bGllbnQ8L2tleT4KCQkJCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludC5wbS5Qb3N0U2Ny
- aXB0PC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERh
- dGU8L2tleT4KCQkJCQk8ZGF0ZT4yMDAwLTA3LTI4VDIyOjU3OjA0WjwvZGF0ZT4KCQkJ
+ dHJpbmcBlIQBKxBOU0pvYkRpc3Bvc2l0aW9uhpKEmZkPTlNQcmludFNwb29sSm9ihpKE
+ mZkZTlNQcmludFJldmVyc2VPcmllbnRhdGlvboaShISECE5TTnVtYmVyAISEB05TVmFs
+ dWUAlIQBKoSEAXOdAIaShJmZC05TUGFwZXJTaXplhpKEnpyEhAx7X05TU2l6ZT1mZn2e
+ gQJTgQNKhpKEmZkUTlNWZXJ0aWNhbFBhZ2luYXRpb26GkoSdnJ+dAIaShJmZFE5TVmVy
+ dGljYWxseUNlbnRlcmVkhpKEnZyfnQGGkoSZmRJOU1JldmVyc2VQYWdlT3JkZXKGkpyS
+ hJmZD05TUGFnZXNQZXJTaGVldIaShJ2cn50BhpKEmZkOTlNQTVBhZ2VGb3JtYXSGkoSE
+ hAZOU0RhdGEAlJeBHyCEB1s3OTY4Y108P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5n
+ PSJVVEYtOCI/Pgo8IURPQ1RZUEUgcGxpc3QgUFVCTElDICItLy9BcHBsZSBDb21wdXRl
+ ci8vRFREIFBMSVNUIDEuMC8vRU4iICJodHRwOi8vd3d3LmFwcGxlLmNvbS9EVERzL1By
+ b3BlcnR5TGlzdC0xLjAuZHRkIj4KPHBsaXN0IHZlcnNpb249IjEuMCI+CjxkaWN0PgoJ
+ PGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTUhvcml6b250YWxSZXM8L2tl
+ eT4KCTxkaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9yPC9r
+ ZXk+CgkJPHN0cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJ
+ PGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCTxhcnJh
+ eT4KCQkJPGRpY3Q+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBN
+ SG9yaXpvbnRhbFJlczwva2V5PgoJCQkJPHJlYWw+Ny4yMDAwMDAwMDAwMDAwMDBlKzAx
+ PC9yZWFsPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNsaWVudDwva2V5
+ PgoJCQkJPHN0cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJ
+ CQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQubW9kRGF0ZTwva2V5PgoJCQkJPGRh
+ dGU+MjAwMi0xMS0xN1QwMDoxNjowOVo8L2RhdGU+CgkJCQk8a2V5PmNvbS5hcHBsZS5w
+ cmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQk8aW50ZWdlcj4wPC9pbnRlZ2Vy
+ PgoJCQk8L2RpY3Q+CgkJPC9hcnJheT4KCTwvZGljdD4KCTxrZXk+Y29tLmFwcGxlLnBy
+ aW50LlBhZ2VGb3JtYXQuUE1PcmllbnRhdGlvbjwva2V5PgoJPGRpY3Q+CgkJPGtleT5j
+ b20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQk8c3RyaW5nPmNvbS5h
+ cHBsZS5wcmludGluZ21hbmFnZXI8L3N0cmluZz4KCQk8a2V5PmNvbS5hcHBsZS5wcmlu
+ dC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJPGFycmF5PgoJCQk8ZGljdD4KCQkJCTxr
+ ZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1PcmllbnRhdGlvbjwva2V5PgoJ
+ CQkJPGludGVnZXI+MTwvaW50ZWdlcj4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRp
+ Y2tldC5jbGllbnQ8L2tleT4KCQkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5nbWFu
+ YWdlcjwvc3RyaW5nPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERh
+ dGU8L2tleT4KCQkJCTxkYXRlPjIwMDItMTEtMTdUMDA6MTY6MDlaPC9kYXRlPgoJCQkJ
+ PGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJPGlu
+ dGVnZXI+MDwvaW50ZWdlcj4KCQkJPC9kaWN0PgoJCTwvYXJyYXk+Cgk8L2RpY3Q+Cgk8
+ a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNU2NhbGluZzwva2V5PgoJPGRp
+ Y3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQk8
+ c3RyaW5nPmNvbS5hcHBsZS5wcmludGluZ21hbmFnZXI8L3N0cmluZz4KCQk8a2V5PmNv
+ bS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJPGFycmF5PgoJCQk8
+ ZGljdD4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1TY2FsaW5n
+ PC9rZXk+CgkJCQk8cmVhbD4xLjAwMDAwMDAwMDAwMDAwMGUrMDA8L3JlYWw+CgkJCQk8
+ a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY2xpZW50PC9rZXk+CgkJCQk8c3RyaW5n
+ PmNvbS5hcHBsZS5wcmludGluZ21hbmFnZXI8L3N0cmluZz4KCQkJCTxrZXk+Y29tLmFw
+ cGxlLnByaW50LnRpY2tldC5tb2REYXRlPC9rZXk+CgkJCQk8ZGF0ZT4yMDAyLTExLTE3
+ VDAwOjE2OjA5WjwvZGF0ZT4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5z
+ dGF0ZUZsYWc8L2tleT4KCQkJCTxpbnRlZ2VyPjA8L2ludGVnZXI+CgkJCTwvZGljdD4K
+ CQk8L2FycmF5PgoJPC9kaWN0PgoJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1h
+ dC5QTVZlcnRpY2FsUmVzPC9rZXk+Cgk8ZGljdD4KCQk8a2V5PmNvbS5hcHBsZS5wcmlu
+ dC50aWNrZXQuY3JlYXRvcjwva2V5PgoJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5n
+ bWFuYWdlcjwvc3RyaW5nPgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5pdGVt
+ QXJyYXk8L2tleT4KCQk8YXJyYXk+CgkJCTxkaWN0PgoJCQkJPGtleT5jb20uYXBwbGUu
+ cHJpbnQuUGFnZUZvcm1hdC5QTVZlcnRpY2FsUmVzPC9rZXk+CgkJCQk8cmVhbD43LjIw
+ MDAwMDAwMDAwMDAwMGUrMDE8L3JlYWw+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50
+ aWNrZXQuY2xpZW50PC9rZXk+CgkJCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludGluZ21h
+ bmFnZXI8L3N0cmluZz4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5tb2RE
+ YXRlPC9rZXk+CgkJCQk8ZGF0ZT4yMDAyLTExLTE3VDAwOjE2OjA5WjwvZGF0ZT4KCQkJ
+ CTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5zdGF0ZUZsYWc8L2tleT4KCQkJCTxp
+ bnRlZ2VyPjA8L2ludGVnZXI+CgkJCTwvZGljdD4KCQk8L2FycmF5PgoJPC9kaWN0PgoJ
+ PGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTVZlcnRpY2FsU2NhbGluZzwv
+ a2V5PgoJPGRpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8
+ L2tleT4KCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludGluZ21hbmFnZXI8L3N0cmluZz4K
+ CQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJPGFy
+ cmF5PgoJCQk8ZGljdD4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQu
+ UE1WZXJ0aWNhbFNjYWxpbmc8L2tleT4KCQkJCTxyZWFsPjEuMDAwMDAwMDAwMDAwMDAw
+ ZSswMDwvcmVhbD4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jbGllbnQ8
+ L2tleT4KCQkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5nbWFuYWdlcjwvc3RyaW5n
+ PgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERhdGU8L2tleT4KCQkJ
+ CTxkYXRlPjIwMDItMTEtMTdUMDA6MTY6MDlaPC9kYXRlPgoJCQkJPGtleT5jb20uYXBw
+ bGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJPGludGVnZXI+MDwvaW50
+ ZWdlcj4KCQkJPC9kaWN0PgoJCTwvYXJyYXk+Cgk8L2RpY3Q+Cgk8a2V5PmNvbS5hcHBs
+ ZS5wcmludC5zdWJUaWNrZXQucGFwZXJfaW5mb190aWNrZXQ8L2tleT4KCTxkaWN0PgoJ
+ CTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1BZGp1c3RlZFBhZ2VSZWN0
+ PC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVh
+ dG9yPC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5nbWFuYWdlcjwvc3Ry
+ aW5nPgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+
+ CgkJCTxhcnJheT4KCQkJCTxkaWN0PgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBh
+ Z2VGb3JtYXQuUE1BZGp1c3RlZFBhZ2VSZWN0PC9rZXk+CgkJCQkJPGFycmF5PgoJCQkJ
+ CQk8cmVhbD4wLjAwMDAwMDAwMDAwMDAwMGUrMDA8L3JlYWw+CgkJCQkJCTxyZWFsPjAu
+ MDAwMDAwMDAwMDAwMDAwZSswMDwvcmVhbD4KCQkJCQkJPHJlYWw+Ny44MzAwMDAwMDAw
+ MDAwMDBlKzAyPC9yZWFsPgoJCQkJCQk8cmVhbD41LjU5MDAwMDAwMDAwMDAwMGUrMDI8
+ L3JlYWw+CgkJCQkJPC9hcnJheT4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNr
+ ZXQuY2xpZW50PC9rZXk+CgkJCQkJPHN0cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5h
+ Z2VyPC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERh
+ dGU8L2tleT4KCQkJCQk8ZGF0ZT4yMDAzLTExLTEwVDIxOjI4OjIyWjwvZGF0ZT4KCQkJ
CQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQkJ
- PGludGVnZXI+MTwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8L2Rp
- Y3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNVW5hZGp1c3RlZFBh
- Z2VSZWN0PC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tl
+ PGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8L2Rp
+ Y3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTUFkanVzdGVkUGFw
+ ZXJSZWN0PC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tl
+ dC5jcmVhdG9yPC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5nbWFuYWdl
+ cjwvc3RyaW5nPgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5
+ PC9rZXk+CgkJCTxhcnJheT4KCQkJCTxkaWN0PgoJCQkJCTxrZXk+Y29tLmFwcGxlLnBy
+ aW50LlBhZ2VGb3JtYXQuUE1BZGp1c3RlZFBhcGVyUmVjdDwva2V5PgoJCQkJCTxhcnJh
+ eT4KCQkJCQkJPHJlYWw+LTEuODAwMDAwMDAwMDAwMDAwZSswMTwvcmVhbD4KCQkJCQkJ
+ PHJlYWw+LTEuODAwMDAwMDAwMDAwMDAwZSswMTwvcmVhbD4KCQkJCQkJPHJlYWw+OC4y
+ NDAwMDAwMDAwMDAwMDBlKzAyPC9yZWFsPgoJCQkJCQk8cmVhbD41Ljc3MDAwMDAwMDAw
+ MDAwMGUrMDI8L3JlYWw+CgkJCQkJPC9hcnJheT4KCQkJCQk8a2V5PmNvbS5hcHBsZS5w
+ cmludC50aWNrZXQuY2xpZW50PC9rZXk+CgkJCQkJPHN0cmluZz5jb20uYXBwbGUucHJp
+ bnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlj
+ a2V0Lm1vZERhdGU8L2tleT4KCQkJCQk8ZGF0ZT4yMDAzLTExLTEwVDIxOjI4OjIyWjwv
+ ZGF0ZT4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9r
+ ZXk+CgkJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJh
+ eT4KCQk8L2RpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNUGFw
+ ZXJOYW1lPC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tl
dC5jcmVhdG9yPC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50LnBtLlBvc3RT
Y3JpcHQ8L3N0cmluZz4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1B
cnJheTwva2V5PgoJCQk8YXJyYXk+CgkJCQk8ZGljdD4KCQkJCQk8a2V5PmNvbS5hcHBs
- ZS5wcmludC5QYXBlckluZm8uUE1VbmFkanVzdGVkUGFnZVJlY3Q8L2tleT4KCQkJCQk8
- YXJyYXk+CgkJCQkJCTxyZWFsPjAuMDAwMDAwMDAwMDAwMDAwZSswMDwvcmVhbD4KCQkJ
- CQkJPHJlYWw+MC4wMDAwMDAwMDAwMDAwMDBlKzAwPC9yZWFsPgoJCQkJCQk8cmVhbD43
- LjgzMDAwMDAwMDAwMDAwMGUrMDI8L3JlYWw+CgkJCQkJCTxyZWFsPjUuNTkwMDAwMDAw
- MDAwMDAwZSswMjwvcmVhbD4KCQkJCQk8L2FycmF5PgoJCQkJCTxrZXk+Y29tLmFwcGxl
- LnByaW50LnRpY2tldC5jbGllbnQ8L2tleT4KCQkJCQk8c3RyaW5nPmNvbS5hcHBsZS5w
- cmludC5wbS5Qb3N0U2NyaXB0PC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJp
- bnQudGlja2V0Lm1vZERhdGU8L2tleT4KCQkJCQk8ZGF0ZT4yMDAwLTA3LTI4VDIyOjU3
- OjA0WjwvZGF0ZT4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVG
- bGFnPC9rZXk+CgkJCQkJPGludGVnZXI+MTwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJ
- PC9hcnJheT4KCQk8L2RpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZv
- LlBNVW5hZGp1c3RlZFBhcGVyUmVjdDwva2V5PgoJCTxkaWN0PgoJCQk8a2V5PmNvbS5h
- cHBsZS5wcmludC50aWNrZXQuY3JlYXRvcjwva2V5PgoJCQk8c3RyaW5nPmNvbS5hcHBs
- ZS5wcmludC5wbS5Qb3N0U2NyaXB0PC9zdHJpbmc+CgkJCTxrZXk+Y29tLmFwcGxlLnBy
- aW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQkJPGFycmF5PgoJCQkJPGRpY3Q+CgkJ
- CQkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNVW5hZGp1c3RlZFBhcGVy
- UmVjdDwva2V5PgoJCQkJCTxhcnJheT4KCQkJCQkJPHJlYWw+LTEuODAwMDAwMDAwMDAw
- MDAwZSswMTwvcmVhbD4KCQkJCQkJPHJlYWw+LTEuODAwMDAwMDAwMDAwMDAwZSswMTwv
- cmVhbD4KCQkJCQkJPHJlYWw+OC4yNDAwMDAwMDAwMDAwMDBlKzAyPC9yZWFsPgoJCQkJ
- CQk8cmVhbD41Ljc3MDAwMDAwMDAwMDAwMGUrMDI8L3JlYWw+CgkJCQkJPC9hcnJheT4K
- CQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY2xpZW50PC9rZXk+CgkJCQkJ
- PHN0cmluZz5jb20uYXBwbGUucHJpbnQucG0uUG9zdFNjcmlwdDwvc3RyaW5nPgoJCQkJ
- CTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5tb2REYXRlPC9rZXk+CgkJCQkJPGRh
- dGU+MjAwMC0wNy0yOFQyMjo1NzowNFo8L2RhdGU+CgkJCQkJPGtleT5jb20uYXBwbGUu
- cHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJCTxpbnRlZ2VyPjE8L2ludGVn
- ZXI+CgkJCQk8L2RpY3Q+CgkJCTwvYXJyYXk+CgkJPC9kaWN0PgoJCTxrZXk+Y29tLmFw
- cGxlLnByaW50LlBhcGVySW5mby5wcGQuUE1QYXBlck5hbWU8L2tleT4KCQk8ZGljdD4K
- CQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQkJPHN0
- cmluZz5jb20uYXBwbGUucHJpbnQucG0uUG9zdFNjcmlwdDwvc3RyaW5nPgoJCQk8a2V5
- PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJCTxhcnJheT4K
- CQkJCTxkaWN0PgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhcGVySW5mby5wcGQu
- UE1QYXBlck5hbWU8L2tleT4KCQkJCQk8c3RyaW5nPkE0PC9zdHJpbmc+CgkJCQkJPGtl
- eT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNsaWVudDwva2V5PgoJCQkJCTxzdHJpbmc+
- Y29tLmFwcGxlLnByaW50LnBtLlBvc3RTY3JpcHQ8L3N0cmluZz4KCQkJCQk8a2V5PmNv
- bS5hcHBsZS5wcmludC50aWNrZXQubW9kRGF0ZTwva2V5PgoJCQkJCTxkYXRlPjIwMDAt
- MDctMjhUMjI6NTc6MDRaPC9kYXRlPgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRp
- Y2tldC5zdGF0ZUZsYWc8L2tleT4KCQkJCQk8aW50ZWdlcj4xPC9pbnRlZ2VyPgoJCQkJ
- PC9kaWN0PgoJCQk8L2FycmF5PgoJCTwvZGljdD4KCQk8a2V5PmNvbS5hcHBsZS5wcmlu
- dC50aWNrZXQuQVBJVmVyc2lvbjwva2V5PgoJCTxzdHJpbmc+MDAuMjA8L3N0cmluZz4K
- CQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQucHJpdmF0ZUxvY2s8L2tleT4KCQk8
- ZmFsc2UvPgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC50eXBlPC9rZXk+CgkJ
- PHN0cmluZz5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvVGlja2V0PC9zdHJpbmc+Cgk8
- L2RpY3Q+Cgk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuQVBJVmVyc2lvbjwva2V5
- PgoJPHN0cmluZz4wMC4yMDwvc3RyaW5nPgoJPGtleT5jb20uYXBwbGUucHJpbnQudGlj
- a2V0LnByaXZhdGVMb2NrPC9rZXk+Cgk8ZmFsc2UvPgoJPGtleT5jb20uYXBwbGUucHJp
- bnQudGlja2V0LnR5cGU8L2tleT4KCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50LlBhZ2VG
- b3JtYXRUaWNrZXQ8L3N0cmluZz4KPC9kaWN0Pgo8L3BsaXN0PgqGkoSZmRZOU0hvcml6
- b250YWxseUNlbnRlcmVkhpKokoSZmQ1OU1JpZ2h0TWFyZ2luhpKEm5ygniSGkoSZmRBO
- U0pvYkRpc3Bvc2l0aW9uhpKEmZkPTlNQcmludFNwb29sSm9ihpKEmZkITlNDb3BpZXOG
- koSbnISEAVOiAYaShJmZC05TUGFwZXJOYW1lhpKEmZkGaXNvLWE0hpKEmZkLTlNGaXJz
- dFBhZ2WGkoSbnLyiAYaShJmZFE5TVmVydGljYWxQYWdpbmF0aW9uhpKEm5ydnQCGkoSZ
- mQ1OU09yaWVudGF0aW9uhpKEm5ydnQCGkoSZmRlOU1ByaW50UmV2ZXJzZU9yaWVudGF0
- aW9uhpKikoSZmQpOU0xhc3RQYWdlhpKEm5yEl5eCf////4aShJmZC05TVG9wTWFyZ2lu
- hpKEm5ygniSGkoSZmQtOU1BhcGVyU2l6ZYaShJychIQMe19OU1NpemU9ZmZ9o4ECU4ED
- SoaGhg==
+ ZS5wcmludC5QYXBlckluZm8uUE1QYXBlck5hbWU8L2tleT4KCQkJCQk8c3RyaW5nPmlz
+ by1hNDwvc3RyaW5nPgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jbGll
+ bnQ8L2tleT4KCQkJCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludC5wbS5Qb3N0U2NyaXB0
+ PC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERhdGU8
+ L2tleT4KCQkJCQk8ZGF0ZT4yMDAwLTA3LTI4VDIyOjU3OjA0WjwvZGF0ZT4KCQkJCQk8
+ a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQkJPGlu
+ dGVnZXI+MTwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8L2RpY3Q+
+ CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNVW5hZGp1c3RlZFBhZ2VS
+ ZWN0PC9rZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5j
+ cmVhdG9yPC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50LnBtLlBvc3RTY3Jp
+ cHQ8L3N0cmluZz4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJh
+ eTwva2V5PgoJCQk8YXJyYXk+CgkJCQk8ZGljdD4KCQkJCQk8a2V5PmNvbS5hcHBsZS5w
+ cmludC5QYXBlckluZm8uUE1VbmFkanVzdGVkUGFnZVJlY3Q8L2tleT4KCQkJCQk8YXJy
+ YXk+CgkJCQkJCTxyZWFsPjAuMDAwMDAwMDAwMDAwMDAwZSswMDwvcmVhbD4KCQkJCQkJ
+ PHJlYWw+MC4wMDAwMDAwMDAwMDAwMDBlKzAwPC9yZWFsPgoJCQkJCQk8cmVhbD43Ljgz
+ MDAwMDAwMDAwMDAwMGUrMDI8L3JlYWw+CgkJCQkJCTxyZWFsPjUuNTkwMDAwMDAwMDAw
+ MDAwZSswMjwvcmVhbD4KCQkJCQk8L2FycmF5PgoJCQkJCTxrZXk+Y29tLmFwcGxlLnBy
+ aW50LnRpY2tldC5jbGllbnQ8L2tleT4KCQkJCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmlu
+ dC5wbS5Qb3N0U2NyaXB0PC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQu
+ dGlja2V0Lm1vZERhdGU8L2tleT4KCQkJCQk8ZGF0ZT4yMDAwLTA3LTI4VDIyOjU3OjA0
+ WjwvZGF0ZT4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFn
+ PC9rZXk+CgkJCQkJPGludGVnZXI+MTwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9h
+ cnJheT4KCQk8L2RpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBN
+ VW5hZGp1c3RlZFBhcGVyUmVjdDwva2V5PgoJCTxkaWN0PgoJCQk8a2V5PmNvbS5hcHBs
+ ZS5wcmludC50aWNrZXQuY3JlYXRvcjwva2V5PgoJCQk8c3RyaW5nPmNvbS5hcHBsZS5w
+ cmludC5wbS5Qb3N0U2NyaXB0PC9zdHJpbmc+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50
+ LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQkJPGFycmF5PgoJCQkJPGRpY3Q+CgkJCQkJ
+ PGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNVW5hZGp1c3RlZFBhcGVyUmVj
+ dDwva2V5PgoJCQkJCTxhcnJheT4KCQkJCQkJPHJlYWw+LTEuODAwMDAwMDAwMDAwMDAw
+ ZSswMTwvcmVhbD4KCQkJCQkJPHJlYWw+LTEuODAwMDAwMDAwMDAwMDAwZSswMTwvcmVh
+ bD4KCQkJCQkJPHJlYWw+OC4yNDAwMDAwMDAwMDAwMDBlKzAyPC9yZWFsPgoJCQkJCQk8
+ cmVhbD41Ljc3MDAwMDAwMDAwMDAwMGUrMDI8L3JlYWw+CgkJCQkJPC9hcnJheT4KCQkJ
+ CQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY2xpZW50PC9rZXk+CgkJCQkJPHN0
+ cmluZz5jb20uYXBwbGUucHJpbnQucG0uUG9zdFNjcmlwdDwvc3RyaW5nPgoJCQkJCTxr
+ ZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5tb2REYXRlPC9rZXk+CgkJCQkJPGRhdGU+
+ MjAwMC0wNy0yOFQyMjo1NzowNFo8L2RhdGU+CgkJCQkJPGtleT5jb20uYXBwbGUucHJp
+ bnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJCTxpbnRlZ2VyPjE8L2ludGVnZXI+
+ CgkJCQk8L2RpY3Q+CgkJCTwvYXJyYXk+CgkJPC9kaWN0PgoJCTxrZXk+Y29tLmFwcGxl
+ LnByaW50LlBhcGVySW5mby5wcGQuUE1QYXBlck5hbWU8L2tleT4KCQk8ZGljdD4KCQkJ
+ PGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQkJPHN0cmlu
+ Zz5jb20uYXBwbGUucHJpbnQucG0uUG9zdFNjcmlwdDwvc3RyaW5nPgoJCQk8a2V5PmNv
+ bS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9rZXk+CgkJCTxhcnJheT4KCQkJ
+ CTxkaWN0PgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhcGVySW5mby5wcGQuUE1Q
+ YXBlck5hbWU8L2tleT4KCQkJCQk8c3RyaW5nPkE0PC9zdHJpbmc+CgkJCQkJPGtleT5j
+ b20uYXBwbGUucHJpbnQudGlja2V0LmNsaWVudDwva2V5PgoJCQkJCTxzdHJpbmc+Y29t
+ LmFwcGxlLnByaW50LnBtLlBvc3RTY3JpcHQ8L3N0cmluZz4KCQkJCQk8a2V5PmNvbS5h
+ cHBsZS5wcmludC50aWNrZXQubW9kRGF0ZTwva2V5PgoJCQkJCTxkYXRlPjIwMDAtMDct
+ MjhUMjI6NTc6MDRaPC9kYXRlPgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tl
+ dC5zdGF0ZUZsYWc8L2tleT4KCQkJCQk8aW50ZWdlcj4xPC9pbnRlZ2VyPgoJCQkJPC9k
+ aWN0PgoJCQk8L2FycmF5PgoJCTwvZGljdD4KCQk8a2V5PmNvbS5hcHBsZS5wcmludC50
+ aWNrZXQuQVBJVmVyc2lvbjwva2V5PgoJCTxzdHJpbmc+MDAuMjA8L3N0cmluZz4KCQk8
+ a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQucHJpdmF0ZUxvY2s8L2tleT4KCQk8ZmFs
+ c2UvPgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC50eXBlPC9rZXk+CgkJPHN0
+ cmluZz5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvVGlja2V0PC9zdHJpbmc+Cgk8L2Rp
+ Y3Q+Cgk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuQVBJVmVyc2lvbjwva2V5PgoJ
+ PHN0cmluZz4wMC4yMDwvc3RyaW5nPgoJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0
+ LnByaXZhdGVMb2NrPC9rZXk+Cgk8ZmFsc2UvPgoJPGtleT5jb20uYXBwbGUucHJpbnQu
+ dGlja2V0LnR5cGU8L2tleT4KCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3Jt
+ YXRUaWNrZXQ8L3N0cmluZz4KPC9kaWN0Pgo8L3BsaXN0PgqGkoSZmQ9OU1ByaW50QWxs
+ UGFnZXOGkpyShJmZFU5TSG9yaXpvbmFsUGFnaW5hdGlvboaShJ2cn50AhpKEmZkITlND
+ b3BpZXOGkoSdnISEAVOhAYaShJmZFk5TSG9yaXpvbnRhbGx5Q2VudGVyZWSGkqaShJmZ
+ CU5TUHJpbnRlcoaShISECU5TUHJpbnRlcgCUkoSZmQEghoaShJmZC05TUGFwZXJOYW1l
+ hpKEmZkGaXNvLWE0hpKEmZkPTlNTY2FsaW5nRmFjdG9yhpKEnZyEhAFmowGGkoSZmQ1O
+ U1JpZ2h0TWFyZ2luhpKEnZy8oySGkoSZmQ1OU0pvYkZlYXR1cmVzhpKElpcAhpKEmZkM
+ TlNMZWZ0TWFyZ2luhpKEnZy8oySGkoSZmQ5OU0JvdHRvbU1hcmdpboaShJ2cvKMkhpKE
+ mZkLTlNUb3BNYXJnaW6GkoSdnLyjJIaShJmZCk5TTGFzdFBhZ2WGkoSdnISXl4J/////
+ hpKEmZkLTlNGaXJzdFBhZ2WGkoSdnLKhAYaShJmZDU5TT3JpZW50YXRpb26GkoSdnJ+d
+ AIaGhg==
</data>
<key>RowAlign</key>
<integer>0</integer>
@@ -1055,7 +1074,7 @@ Sheet}</string>
<key>WindowInfo</key>
<dict>
<key>Frame</key>
- <string>{{1998, 271}, {559, 717}}</string>
+ <string>{{38, 272}, {559, 717}}</string>
<key>VisibleRegion</key>
<string>{{-10, 0}, {544, 640}}</string>
<key>Zoom</key>
View
71 README.txt
@@ -1,36 +1,87 @@
-RESKNIFE Snapshot 2003-08-02
-
+/*
+ * * * * * * * * * * * * *
+ RESKNIFE READ-ME
+ * * * * * * * * * * * * *
+ Last updated: 9 November 2003
WHAT IS IT?
+-----------
-This is a development snapshot of ResKnife, a resource editor for MacOS X. This is pre-pre-release software, do not use this on any vital files.
+This is a development snapshot of ResKnife, a resource editor for the Macintosh. This is pre-release software and as such should only be used with copies of files, or on files you don't mind being destroyed :)
TRYING OUT RESKNIFE
+-------------------
-There should be pre-built "deployment" binaries in the "build" folder. I've left the plugins in there as well, though you don't need to install them or anything like that, they're already installed.
+Prebuilt binaries of ResKnife are available from http://resknife.sourceforge.net/ for MacOS 7.1 through to 10.3
+Please download them and try it out. If you like what you see, please tell us. If you don't like what you see, please tell us too!
+ResKnife is an open-source editor and contributions from any and all are welcomed.
BUILDING RESKNIFE
+-----------------
-Currently the only project that I've confirmed will build is "ResKnife (PB2).pbproj". You can build the target "Cocoa ResKnife" as well as three Cocoa editor plugins that are in there. Of those, only the Hex editor really works. NovaTools doesn't register for the right types and the Template editor is far from finished.
+The source code for ResKnife is also available from http://resknife.sourceforge.net/ as a released source package corrisponding to the latest officially released binary, or as a nightly tarball. If you are familiar with CVS you may also download the code via anonymous cvs access from :pserver:anonymous@cvs.resknife.sourceforge.net/cvsroot/resknife as project 'ResKnife'.
+ResKnife can be built as either a Cocoa app, Carbon app or Classic app, the Carbon version available in either MachO or PEF formats, using your choice of either CodeWarrior or Xcode/Project Builder (gcc 2.95, 3.1 or 3.3) as IDE/compiler. The Classic and Carbon versionsd are build from the same codebase, with the main differences being TARGET_API_MAC_CARBON being set on the latter, and linking against CarbonLib instead of InterfaceLib et al. When building the Carbon version as a Package, you can choose to use nib files instead of resources to define things like menus and dialogue boxes. The Carbon/Classic version is no longer maintained by the original developer, though you are free to work on it if you wish. The Cocoa version has a compleatly different codebase, and is the current focus of development. It is considered the most bug-free and most feature-compleate ('most' being about 20% as compared with 15% for Carbon).
BUILDING A PLUGIN
+-----------------
-If you want to create a plugin for ResKnife, use the "ICONEditor" project as the basis. It's a simple, standalone project. You can install it in three places:
+If you want to create a Cocoa plugin for ResKnife, use the "ICONEditor" project as the basis until the SDK is available. It's a simple, standalone project. You can install it in three places:
-> In ResKnife itself by selecting it, choosing "Information" and there clicking the "Add" button in the "plugins" section
-> In ~/Library/Application Support/ResKnife/Plugins/ for one user account.
-> In /Library/Application Support/ResKnife/Plugins/ for the entire machine.
+If you want to create a plugin for the Carbon version of ResKnife, take a look at the Hex Editor try to derivesomething from that. Editors for the Classic version
+
ROAD MAP
+--------
+
+Currently Uli and Nicholas have decided to delegate different parts of the project to each other, with Nick handling the host application and hex editor, and Uli handling the template editor. Nicholas is also working on an editor for resources associated with the game Escape Velocity Nova by Ambrosia Software. Other editors will be written as time permits, or perhaps by third parties such as yourself! If you have any ideas for editors, take a look at the SDK (avalable from the web site) which contains an empty 'shell' editor. Sample fully-working editors are of course available as part of the project themselves!
+
+HISTORY
+-------
+
+ResKnife has had a protracted and erratic history. It started in 1997 when Nicholas Shanks decided ResEdit needed a successor and because he wanted to play around with the new resources available with Mac OS 8.0, yet didn't have the money to buy Resourcerer. After three months of fast R&D, version 0.1d9 was quite stable and had many features, including a working hex editor. Then in a careless act of stupidity, Nicholas decided to Carbonise the program without backing up the 0.1d9 source. It failed, and much that once was had been lost. Throwing away that mess and starting again, Nicholas tried to re-write ResKnife as a Carbon app from the ground up. Thrice. Versions 0.2 and 0.3 were aborted attempts to do this, version 0.4 was more successful, and now forms the basis for the Carbon varient of ResKnife. Soon after, the wonders of Cocoa were discovered and required learning, and Nicholas turned to his pet project ResKnife to help him learn. The Cocoa re-write became version 0.5 and in conjunction with version 0.4 which had had a few touch-ups added to it since, was committed to CVS almost two years after the last commit had occured. Two more years passed with not much change to ResKnife, before Uli Kusterer, collaborator for earlier versions of ResKnife and himself writing a resource editor with special consideration for users of the MacZoop framework, decided to write a template editor for the project. Throughout the development of the project contributions small and large have trickled in, and all who contributed are recognised below.
+
+
+AUTHORS
+-------
+
+ResKnife was written by Nicholas Shanks http://web.nickshanks.com/ with additional changes and some editors supplied by M. Uli Kusterer http://www.zathras.de/
+Other contributors include (in alphabetical order): Thomas Castiglione, Philippe Devallois, Mike Margolis, Lane Roathe and Jeffrey Seibert.
+There is a web site for ResKnife at http://resknife.sourceforge.net/
+
+
+COMMENTS FOR THOSE WHO WISH TO CONTRIBUTE
+-----------------------------------------
-I've decided to focus on the Cocoa version so we get a useable product done soon. The general consensus between Nick and me (Uli) is that he'll take care of the engine, while I'll focus mainly on plugins. However, since Nick is rather busy at the moment, I've made some changes to the engine that should allow plugin developers to get something done. All the basic features for editing resources in resource files should now be there. If you're missing any, tell me.
+Please try to conform to the existing formatting rules followed, including placement of braces and use of whitespace, and tabs rather than space characters for indenting. Tab width is four.
-AUTHORS:
-ResKnife was written by Nick Shanks (http://www.nickshanks.com) with additional changes by M. Uli Kusterer (http://www.zathras.de).
+Notes on commenting/documenting for the ResKnife project:
-There is a web site for ResKnife at http://resknife.sourceforge.net
+ResKnife methods, functions, headers, classes, ivars and practically anything else is commented using the format specified by HeaderDoc (a C-based equivalent to JavaDoc), although with ResKnife-specific modifications (NB: although I've yet to modify HeaderDoc to read these new parameters, they should still be used for the time being). The general format is to use the standard C block-commenting mechanism, with the addition of an exclamation mark immediatly after the open comment marker. Following this are one or more lines beginning with an at sign, a keyword, arguments if any, and finally a string value. For source code consistancy, I (Nicholas) am dictating the following rules which must be followed when documenting an object.
+ 1) All HeaderDoc comments immediatly preceede the object to which they pertain.
+ 2) HeaderDoc comments documenting a method or function must follow the following order (for consistancy & readability), where an ellipsis indicates the line above can be repeated multiple times:
+
+ @method or @function
+ @abstract
+ @author
+ @created
+ @change [reverse chronological, i.e. most recent at the top]
+ ...
+ @pending [higher priority TODO items should be above lower priority ones]
+ ...
+ @description
+ @param [listed in order taken by method/function]
+ ...
+
+ 3) The pertinent keywords or their equivalents in the above item should retain the specified order wherever reasonably applicable (e.g. for @class and @protocol comments)
+ 4) The value for the @created keyword should take the following form: YYYY-MM-DD
+ 5) The value for the @change keyword should take the following form: YYYY-MM-DD Author: Description
+ where Author is an identifier for the person who made the change, not necessarilly the value in @author. Convention is that it simply contains the initials of the person.
+*/

0 comments on commit 009b66f

Please sign in to comment.
Something went wrong with that request. Please try again.