clarus 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. data/.gitignore +0 -1
  2. data/.rvmrc +1 -0
  3. data/Gemfile +2 -7
  4. data/Rakefile +4 -2
  5. data/clarus.gemspec +8 -3
  6. data/jars/{j2w-ejb-2.0_2011Jun06.jar → j2w-ejb-2.0.jar} +0 -0
  7. data/lib/clarus.rb +10 -3
  8. data/lib/clarus/document.rb +26 -27
  9. data/lib/clarus/heading.rb +18 -0
  10. data/lib/clarus/image.rb +38 -0
  11. data/lib/clarus/link.rb +13 -0
  12. data/lib/clarus/paragraph.rb +22 -0
  13. data/lib/clarus/paragraph_break.rb +7 -0
  14. data/lib/clarus/templates/document_template.erb +454 -0
  15. data/lib/clarus/templates/image_template.erb +23 -0
  16. data/lib/clarus/templates/link_template.erb +10 -0
  17. data/lib/clarus/templates/paragraph_fragment_template.erb +8 -0
  18. data/lib/clarus/templates/text_block_template.erb +6 -0
  19. data/lib/clarus/text_block.rb +20 -0
  20. data/lib/clarus/version.rb +1 -1
  21. data/spec/benchmark_test.rb +3 -5
  22. data/spec/clarus_spec.rb +3 -1
  23. data/spec/document_spec.rb +38 -30
  24. data/spec/image_spec.rb +18 -0
  25. data/spec/link_spec.rb +11 -0
  26. data/spec/output/.gitkeep +0 -0
  27. data/spec/output/add_bold_text.doc +12 -0
  28. data/spec/output/add_heading.doc +14 -0
  29. data/spec/output/add_image.doc +674 -0
  30. data/spec/output/add_link.doc +10 -0
  31. data/spec/output/add_paragraph_break.doc +465 -0
  32. data/spec/{fixtures/add_paragraph_break.doc → output/add_text.doc} +2 -15
  33. data/spec/output/add_text_document.doc +464 -0
  34. data/spec/output/add_underlined_text.doc +12 -0
  35. data/spec/output/encoded_image.txt +199 -0
  36. data/spec/output/indent.doc +12 -0
  37. data/spec/output/link_test.doc +10 -0
  38. data/spec/output/match_header.doc +426 -0
  39. data/spec/output/mixed_paragraph_text.doc +19 -0
  40. data/spec/output/paragraph_add_text.doc +12 -0
  41. data/spec/paragraph_spec.rb +36 -0
  42. data/spec/spec_helper.rb +6 -1
  43. metadata +126 -47
  44. data/spec/fixtures/add_image.doc +0 -1205
  45. data/spec/fixtures/add_text.doc +0 -25
@@ -0,0 +1,23 @@
1
+ <w:pict>
2
+ <v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
3
+ <v:stroke joinstyle="miter"/>
4
+ <v:formulas>
5
+ <v:f eqn="if lineDrawn pixelLineWidth 0"/>
6
+ <v:f eqn="sum @0 1 0"/><v:f eqn="sum 0 0 @1"/>
7
+ <v:f eqn="prod @2 1 2"/>
8
+ <v:f eqn="prod @3 21600 pixelWidth"/>
9
+ <v:f eqn="prod @3 21600 pixelHeight"/>
10
+ <v:f eqn="sum @0 0 1"/>
11
+ <v:f eqn="prod @6 1 2"/>
12
+ <v:f eqn="prod @7 21600 pixelWidth"/>
13
+ <v:f eqn="sum @8 21600 0"/>
14
+ <v:f eqn="prod @7 21600 pixelHeight"/>
15
+ <v:f eqn="sum @10 21600 0"/>"
16
+ </v:formulas>
17
+ <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
18
+ <o:lock v:ext="edit" aspectratio="t"/>"
19
+ </v:shapetype>
20
+ <w:binData w:name="<%= wordml_filename %>" xml:space="preserve"><%= bindata %></w:binData>
21
+ <v:shape id="_x0000_i1026" type="#_x0000_t75" style="width:<%= width %>pt;height:<%= height %>pt"><v:imagedata src="<%= wordml_filename %>" o:title="<%= filename %>"/>
22
+ </v:shape>
23
+ </w:pict>
@@ -0,0 +1,10 @@
1
+ <w:p wsp:rsidR="0023207C" wsp:rsidRDefault="00A30FBB">
2
+ <w:hlink w:dest="<%= destination %>">
3
+ <w:r wsp:rsidRPr="00A30FBB">
4
+ <w:rPr>
5
+ <w:rStyle w:val="Hyperlink"/>
6
+ </w:rPr>
7
+ <w:t><%= text %></w:t>
8
+ </w:r>
9
+ </w:hlink>
10
+ </w:p>
@@ -0,0 +1,8 @@
1
+ <w:p wsp:rsidR="008979E8" wsp:rsidRDefault="00000000">
2
+ <w:pPr>
3
+ <w:ind w:left="<%= indent %>"/>
4
+ </w:pPr>
5
+ <%- items.each do |item| %>
6
+ <%= item.render %>
7
+ <%- end %>
8
+ </w:p>
@@ -0,0 +1,6 @@
1
+ <w:r wsp:rsidRPr="00032AFB">
2
+ <w:rPr>
3
+ <%= style %>
4
+ </w:rPr>
5
+ <w:t><%= text %></w:t>
6
+ </w:r>
@@ -0,0 +1,20 @@
1
+ module Clarus
2
+ class TextBlock
3
+ def initialize(text, text_style)
4
+ @text = text
5
+ if text_style == :bold
6
+ @style = '<w:b/>\n'
7
+ elsif text_style == :underline
8
+ @style = '<w:u w:val="single"/>\n'
9
+ elsif text_style == :italic
10
+ @style = '<w:i/>\n'
11
+ end
12
+ end
13
+
14
+ def render
15
+ document_template = File.read(File.expand_path('../templates/text_block_template.erb', __FILE__))
16
+ Erubis::Eruby.new(document_template).result(:style => @style,
17
+ :text => @text)
18
+ end
19
+ end
20
+ end
@@ -1,3 +1,3 @@
1
1
  module Clarus
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
@@ -2,13 +2,11 @@ require File.dirname(__FILE__) + "/spec_helper"
2
2
  require 'benchmark'
3
3
 
4
4
  Benchmark.benchmark do |x|
5
- x.report("creating 1 docs with 500 images and paragraphs") do
5
+ x.report("creating 1 docs with 100 images and paragraphs") do
6
6
  @clarus = Clarus::Document.new
7
7
  100.times do
8
- @clarus.add_text("istanbul, not constantinople")
9
- @clarus.add_paragraph_break
10
- @clarus.add_image("file://#{Dir.pwd}/spec/fixtures/image.jpg")
8
+ @clarus.image("https://www.studyspace.net/system/uploads/0011/7809/ruby.jpg")
11
9
  end
12
- @clarus.write_document(Dir.pwd + '/spec/output/benchmark_test.doc')
10
+ @clarus.write_document('benchmark_test.doc')
13
11
  end
14
12
  end
@@ -1,4 +1,6 @@
1
1
  require File.dirname(__FILE__) + "/spec_helper"
2
2
 
3
- describe Clarus do
3
+ class ClarusTest < MiniTest::Spec
4
+ describe Clarus do
5
+ end
4
6
  end
@@ -1,38 +1,46 @@
1
1
  require File.dirname(__FILE__) + "/spec_helper"
2
2
 
3
- describe Clarus::Document do
4
- before do
5
- @clarus = Clarus::Document.new
6
- end
7
-
8
- it "should be an instance of Clarus::Document" do
9
- @clarus.class.must_equal(Clarus::Document)
10
- end
3
+ class Clarus::DocumentSpec < MiniTest::Spec
4
+ describe Clarus::Document do
5
+ before do
6
+ @clarus = Clarus::Document.new
7
+ end
11
8
 
12
- it "should be able to add text to the document" do
13
- @clarus.add_text("istanbul, not constantinople")
14
- @clarus.stream_document.must_equal File.read(Dir.pwd + '/spec/fixtures/add_text.doc').strip
15
- end
9
+ describe "#new_paragraph" do
10
+ it "should yield a new instance of a Clarus::Paragraph" do
11
+ @clarus.new_paragraph do |p|
12
+ p.class.must_equal(Clarus::Paragraph)
13
+ end
14
+ end
15
+ end
16
16
 
17
- it "should be able to add a paragraph break" do
18
- @clarus.add_text("istanbul, not constantinople")
19
- @clarus.add_paragraph_break
20
- @clarus.add_text("istanbul, not constantinople")
21
- @clarus.stream_document.must_equal File.read(Dir.pwd + '/spec/fixtures/add_paragraph_break.doc').strip
22
- end
17
+ describe "#paragraph_break" do
18
+ it "should be able to add a paragraph break" do
19
+ @clarus.new_paragraph do |p|
20
+ p.add_text("istanbul, not constantinople")
21
+ end
22
+ @clarus.paragraph_break
23
+ @clarus.stream_document.must_match File.read(Dir.pwd + '/spec/output/add_paragraph_break.doc').strip
24
+ end
25
+ end
23
26
 
24
- it "should be able to add an image by url" do
25
- @clarus.add_text("istanbul, not constantinople")
26
- @clarus.add_paragraph_break
27
- @clarus.add_image("file://#{Dir.pwd}/spec/fixtures/image.jpg")
28
- @clarus.stream_document.must_match File.read(Dir.pwd + '/spec/fixtures/add_image.doc').strip
29
- end
27
+ describe 'writing to file or stdout' do
28
+ it "should stream out the document as text" do
29
+ @clarus.new_paragraph do |p|
30
+ p.add_text("now it's istanbul, not constantinople")
31
+ end
32
+ @clarus.stream_document.must_match File.read(Dir.pwd + '/spec/output/add_text_document.doc').strip
33
+ end
30
34
 
31
- it "should be able to write out the document to disk" do
32
- @clarus.add_text("istanbul, not constantinople")
33
- full_file_path = Dir.pwd + '/spec/output/test.doc'
34
- @clarus.write_document(full_file_path)
35
- File.exists?(full_file_path).must_equal true
36
- File.unlink(full_file_path)
35
+ it "should be able to write out the document to disk" do
36
+ @clarus.new_paragraph do |p|
37
+ p.add_text("istanbul, not constantinople")
38
+ end
39
+ full_file_path = Dir.pwd + '/spec/output/test.doc'
40
+ @clarus.write_document(full_file_path)
41
+ File.exists?(full_file_path).must_equal true
42
+ File.unlink(full_file_path)
43
+ end
44
+ end
37
45
  end
38
46
  end
@@ -0,0 +1,18 @@
1
+ require File.dirname(__FILE__) + "/spec_helper"
2
+
3
+ class Clarus::ImageSpec < MiniTest::Spec
4
+ describe Clarus::Image do
5
+ before do
6
+ @image = Clarus::Image.new("https://encrypted.google.com/images/logos/ssl_ps_logo.png")
7
+ end
8
+
9
+ it "should calculate the size of the image" do
10
+ @image.get_image_dimensions.height.must_equal 126
11
+ @image.get_image_dimensions.width.must_equal 364
12
+ end
13
+
14
+ it "should return the image base64 encoded" do
15
+ @image.encoded_image.must_match File.read(File.expand_path('../output/encoded_image.txt', __FILE__)).strip
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ require File.dirname(__FILE__) + "/spec_helper"
2
+
3
+ class Clarus::ParagraphSpec < MiniTest::Spec
4
+ before do
5
+ @link = Clarus::Link.new('http://ffffound.com', 'FFFFound!')
6
+ end
7
+
8
+ it "should render the link (and I should have better test names :()" do
9
+ @link.render.must_match(File.read(Dir.pwd + '/spec/output/link_test.doc').strip)
10
+ end
11
+ end
File without changes
@@ -0,0 +1,12 @@
1
+ <w:p wsp:rsidR="008979E8" wsp:rsidRDefault="00000000">
2
+ <w:pPr>
3
+ <w:ind w:left="0"/>
4
+ </w:pPr>
5
+ <w:r wsp:rsidRPr="00032AFB">
6
+ <w:rPr>
7
+ <w:b/>\n
8
+ </w:rPr>
9
+ <w:t>If you've a date in constantinople</w:t>
10
+ </w:r>
11
+
12
+ </w:p>
@@ -0,0 +1,14 @@
1
+ <w:body>
2
+
3
+ <w:p wsp:rsidR="004429ED" wsp:rsidRDefault="00000000" wsp:rsidP="004429ED">
4
+ <w:pPr>
5
+ <w:pStyle w:val="Heading1" />
6
+
7
+ <w:jc w:val="left" />
8
+ </w:pPr>
9
+ <w:r>
10
+
11
+ <w:t>She'll be waiting in istanbul</w:t>
12
+ </w:r>
13
+ </w:p>
14
+ </w:body>
@@ -0,0 +1,674 @@
1
+ <?xml version="1.0" encoding="utf-8" standalone="yes"?>
2
+ <?mso-application progid="Word.Document"?>
3
+ <w:wordDocument
4
+ xmlns:aml="http://schemas.microsoft.com/aml/2001/core"
5
+ xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"
6
+ xmlns:mo="http://schemas.microsoft.com/office/mac/office/2008/main"
7
+ xmlns:ve="http://schemas.openxmlformats.org/markup-compatibility/2006"
8
+ xmlns:mv="urn:schemas-microsoft-com:mac:vml"
9
+ xmlns:o="urn:schemas-microsoft-com:office:office"
10
+ xmlns:v="urn:schemas-microsoft-com:vml"
11
+ xmlns:w10="urn:schemas-microsoft-com:office:word"
12
+ xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml"
13
+ xmlns:wx="http://schemas.microsoft.com/office/word/2003/auxHint"
14
+ xmlns:wsp="http://schemas.microsoft.com/office/word/2003/wordml/sp2"
15
+ xmlns:sl="http://schemas.microsoft.com/schemaLibrary/2003/core"
16
+ w:macrosPresent="no"
17
+ w:embeddedObjPresent="no"
18
+ w:ocxPresent="no"
19
+ xml:space="preserve">
20
+ <w:ignoreSubtree w:val="http://schemas.microsoft.com/office/word/2003/wordml/sp2"/>
21
+ <o:DocumentProperties>
22
+ <o:Title/>
23
+ <o:Subject/>
24
+ <o:Keywords/>
25
+ <o:Description/>
26
+ <o:Category/>
27
+ <o:Author/>
28
+ <o:LastAuthor/>
29
+ <o:Manager/>
30
+ <o:Company/>
31
+ <o:Revision>1</o:Revision>
32
+ <o:TotalTime>1</o:TotalTime>
33
+ <o:Created/>
34
+ <o:LastSaved/>
35
+ <o:Pages>1</o:Pages>
36
+ <o:Words>0</o:Words>
37
+ <o:Characters>0</o:Characters>
38
+ <o:Bytes>1</o:Bytes>
39
+ <o:Lines>1</o:Lines>
40
+ <o:Paragraphs>1</o:Paragraphs>
41
+ <o:CharactersWithSpaces>0</o:CharactersWithSpaces>
42
+ <o:Version>1</o:Version>
43
+ </o:DocumentProperties>
44
+ <w:fonts>
45
+ <w:defaultFonts w:ascii="Cambria" w:fareast="Cambria" w:h-ansi="Cambria" w:cs="Times New Roman"/>
46
+ <w:font w:name="Times New Roman">
47
+ <w:panose-1 w:val="02020603050405020304"/>
48
+ <w:charset w:val="00"/>
49
+ <w:family w:val="auto"/>
50
+ <w:pitch w:val="variable"/>
51
+ <w:sig w:usb-0="00000003" w:usb-1="00000000" w:usb-2="00000000" w:usb-3="00000000" w:csb-0="00000001" w:csb-1="00000000"/>
52
+ </w:font>
53
+ <w:font w:name="Calibri">
54
+ <w:panose-1 w:val="020F0502020204030204"/>
55
+ <w:charset w:val="00"/>
56
+ <w:family w:val="auto"/>
57
+ <w:pitch w:val="variable"/>
58
+ <w:sig w:usb-0="00000003" w:usb-1="00000000" w:usb-2="00000000" w:usb-3="00000000" w:csb-0="00000001" w:csb-1="00000000"/>
59
+ </w:font>
60
+ <w:font w:name="Cambria">
61
+ <w:panose-1 w:val="02040503050406030204"/>
62
+ <w:charset w:val="00"/>
63
+ <w:family w:val="auto"/>
64
+ <w:pitch w:val="variable"/>
65
+ <w:sig w:usb-0="00000003" w:usb-1="00000000" w:usb-2="00000000" w:usb-3="00000000" w:csb-0="00000001" w:csb-1="00000000"/>
66
+ </w:font>
67
+ </w:fonts>
68
+ <w:styles>
69
+ <w:versionOfBuiltInStylenames w:val="2"/>
70
+ <w:latentStyles w:defLockedState="off" w:latentStyleCount="276">
71
+ <w:lsdException w:name="Normal"/>
72
+ <w:lsdException w:name="heading 1"/>
73
+ <w:lsdException w:name="heading 2"/>
74
+ <w:lsdException w:name="heading 3"/>
75
+ <w:lsdException w:name="heading 4"/>
76
+ <w:lsdException w:name="heading 5"/>
77
+ <w:lsdException w:name="heading 6"/>
78
+ <w:lsdException w:name="heading 7"/>
79
+ <w:lsdException w:name="heading 8"/>
80
+ <w:lsdException w:name="heading 9"/>
81
+ <w:lsdException w:name="toc 1"/>
82
+ <w:lsdException w:name="toc 2"/>
83
+ <w:lsdException w:name="toc 3"/>
84
+ <w:lsdException w:name="toc 4"/>
85
+ <w:lsdException w:name="toc 5"/>
86
+ <w:lsdException w:name="toc 6"/>
87
+ <w:lsdException w:name="toc 7"/>
88
+ <w:lsdException w:name="toc 8"/>
89
+ <w:lsdException w:name="toc 9"/>
90
+ <w:lsdException w:name="caption"/>
91
+ <w:lsdException w:name="Title"/>
92
+ <w:lsdException w:name="Default Paragraph Font"/>
93
+ <w:lsdException w:name="Subtitle"/>
94
+ <w:lsdException w:name="Strong"/>
95
+ <w:lsdException w:name="Emphasis"/>
96
+ <w:lsdException w:name="Table Grid"/>
97
+ <w:lsdException w:name="Placeholder Text"/>
98
+ <w:lsdException w:name="No Spacing"/>
99
+ <w:lsdException w:name="Light Shading"/>
100
+ <w:lsdException w:name="Light List"/>
101
+ <w:lsdException w:name="Light Grid"/>
102
+ <w:lsdException w:name="Medium Shading 1"/>
103
+ <w:lsdException w:name="Medium Shading 2"/>
104
+ <w:lsdException w:name="Medium List 1"/>
105
+ <w:lsdException w:name="Medium List 2"/>
106
+ <w:lsdException w:name="Medium Grid 1"/>
107
+ <w:lsdException w:name="Medium Grid 2"/>
108
+ <w:lsdException w:name="Medium Grid 3"/>
109
+ <w:lsdException w:name="Dark List"/>
110
+ <w:lsdException w:name="Colorful Shading"/>
111
+ <w:lsdException w:name="Colorful List"/>
112
+ <w:lsdException w:name="Colorful Grid"/>
113
+ <w:lsdException w:name="Light Shading Accent 1"/>
114
+ <w:lsdException w:name="Light List Accent 1"/>
115
+ <w:lsdException w:name="Light Grid Accent 1"/>
116
+ <w:lsdException w:name="Medium Shading 1 Accent 1"/>
117
+ <w:lsdException w:name="Medium Shading 2 Accent 1"/>
118
+ <w:lsdException w:name="Medium List 1 Accent 1"/>
119
+ <w:lsdException w:name="Revision"/>
120
+ <w:lsdException w:name="List Paragraph"/>
121
+ <w:lsdException w:name="Quote"/>
122
+ <w:lsdException w:name="Intense Quote"/>
123
+ <w:lsdException w:name="Medium List 2 Accent 1"/>
124
+ <w:lsdException w:name="Medium Grid 1 Accent 1"/>
125
+ <w:lsdException w:name="Medium Grid 2 Accent 1"/>
126
+ <w:lsdException w:name="Medium Grid 3 Accent 1"/>
127
+ <w:lsdException w:name="Dark List Accent 1"/>
128
+ <w:lsdException w:name="Colorful Shading Accent 1"/>
129
+ <w:lsdException w:name="Colorful List Accent 1"/>
130
+ <w:lsdException w:name="Colorful Grid Accent 1"/>
131
+ <w:lsdException w:name="Light Shading Accent 2"/>
132
+ <w:lsdException w:name="Light List Accent 2"/>
133
+ <w:lsdException w:name="Light Grid Accent 2"/>
134
+ <w:lsdException w:name="Medium Shading 1 Accent 2"/>
135
+ <w:lsdException w:name="Medium Shading 2 Accent 2"/>
136
+ <w:lsdException w:name="Medium List 1 Accent 2"/>
137
+ <w:lsdException w:name="Medium List 2 Accent 2"/>
138
+ <w:lsdException w:name="Medium Grid 1 Accent 2"/>
139
+ <w:lsdException w:name="Medium Grid 2 Accent 2"/>
140
+ <w:lsdException w:name="Medium Grid 3 Accent 2"/>
141
+ <w:lsdException w:name="Dark List Accent 2"/>
142
+ <w:lsdException w:name="Colorful Shading Accent 2"/>
143
+ <w:lsdException w:name="Colorful List Accent 2"/>
144
+ <w:lsdException w:name="Colorful Grid Accent 2"/>
145
+ <w:lsdException w:name="Light Shading Accent 3"/>
146
+ <w:lsdException w:name="Light List Accent 3"/>
147
+ <w:lsdException w:name="Light Grid Accent 3"/>
148
+ <w:lsdException w:name="Medium Shading 1 Accent 3"/>
149
+ <w:lsdException w:name="Medium Shading 2 Accent 3"/>
150
+ <w:lsdException w:name="Medium List 1 Accent 3"/>
151
+ <w:lsdException w:name="Medium List 2 Accent 3"/>
152
+ <w:lsdException w:name="Medium Grid 1 Accent 3"/>
153
+ <w:lsdException w:name="Medium Grid 2 Accent 3"/>
154
+ <w:lsdException w:name="Medium Grid 3 Accent 3"/>
155
+ <w:lsdException w:name="Dark List Accent 3"/>
156
+ <w:lsdException w:name="Colorful Shading Accent 3"/>
157
+ <w:lsdException w:name="Colorful List Accent 3"/>
158
+ <w:lsdException w:name="Colorful Grid Accent 3"/>
159
+ <w:lsdException w:name="Light Shading Accent 4"/>
160
+ <w:lsdException w:name="Light List Accent 4"/>
161
+ <w:lsdException w:name="Light Grid Accent 4"/>
162
+ <w:lsdException w:name="Medium Shading 1 Accent 4"/>
163
+ <w:lsdException w:name="Medium Shading 2 Accent 4"/>
164
+ <w:lsdException w:name="Medium List 1 Accent 4"/>
165
+ <w:lsdException w:name="Medium List 2 Accent 4"/>
166
+ <w:lsdException w:name="Medium Grid 1 Accent 4"/>
167
+ <w:lsdException w:name="Medium Grid 2 Accent 4"/>
168
+ <w:lsdException w:name="Medium Grid 3 Accent 4"/>
169
+ <w:lsdException w:name="Dark List Accent 4"/>
170
+ <w:lsdException w:name="Colorful Shading Accent 4"/>
171
+ <w:lsdException w:name="Colorful List Accent 4"/>
172
+ <w:lsdException w:name="Colorful Grid Accent 4"/>
173
+ <w:lsdException w:name="Light Shading Accent 5"/>
174
+ <w:lsdException w:name="Light List Accent 5"/>
175
+ <w:lsdException w:name="Light Grid Accent 5"/>
176
+ <w:lsdException w:name="Medium Shading 1 Accent 5"/>
177
+ <w:lsdException w:name="Medium Shading 2 Accent 5"/>
178
+ <w:lsdException w:name="Medium List 1 Accent 5"/>
179
+ <w:lsdException w:name="Medium List 2 Accent 5"/>
180
+ <w:lsdException w:name="Medium Grid 1 Accent 5"/>
181
+ <w:lsdException w:name="Medium Grid 2 Accent 5"/>
182
+ <w:lsdException w:name="Medium Grid 3 Accent 5"/>
183
+ <w:lsdException w:name="Dark List Accent 5"/>
184
+ <w:lsdException w:name="Colorful Shading Accent 5"/>
185
+ <w:lsdException w:name="Colorful List Accent 5"/>
186
+ <w:lsdException w:name="Colorful Grid Accent 5"/>
187
+ <w:lsdException w:name="Light Shading Accent 6"/>
188
+ <w:lsdException w:name="Light List Accent 6"/>
189
+ <w:lsdException w:name="Light Grid Accent 6"/>
190
+ <w:lsdException w:name="Medium Shading 1 Accent 6"/>
191
+ <w:lsdException w:name="Medium Shading 2 Accent 6"/>
192
+ <w:lsdException w:name="Medium List 1 Accent 6"/>
193
+ <w:lsdException w:name="Medium List 2 Accent 6"/>
194
+ <w:lsdException w:name="Medium Grid 1 Accent 6"/>
195
+ <w:lsdException w:name="Medium Grid 2 Accent 6"/>
196
+ <w:lsdException w:name="Medium Grid 3 Accent 6"/>
197
+ <w:lsdException w:name="Dark List Accent 6"/>
198
+ <w:lsdException w:name="Colorful Shading Accent 6"/>
199
+ <w:lsdException w:name="Colorful List Accent 6"/>
200
+ <w:lsdException w:name="Colorful Grid Accent 6"/>
201
+ <w:lsdException w:name="Subtle Emphasis"/>
202
+ <w:lsdException w:name="Intense Emphasis"/>
203
+ <w:lsdexception w:name="Subtle Reference"/>
204
+ <w:lsdException w:name="Intense Reference"/>
205
+ <w:lsdException w:name="Book Title"/>
206
+ <w:lsdException w:name="Bibliography"/>
207
+ <w:lsdException w:name="TOC Heading"/>
208
+ </w:latentStyles>
209
+ <w:style w:type="paragraph" w:default="on" w:styleId="Normal">
210
+ <w:name w:val="Normal"/>
211
+ <w:rsid w:val="00D711DA"/>
212
+ <w:rPr>
213
+ <wx:font wx:val="Cambria"/>
214
+ <w:sz w:val="24"/>
215
+ <w:sz-cs w:val="24"/>
216
+ <w:lang w:val="EN-US" w:fareast="EN-US" w:bidi="AR-SA"/>
217
+ </w:rPr>
218
+ </w:style>
219
+ <w:style w:type="paragraph" w:styleId="Heading1">
220
+ <w:name w:val="heading 1"/>
221
+ <wx:uiName wx:val="Heading 1"/>
222
+ <w:basedOn w:val="Normal"/>
223
+ <w:next w:val="Normal"/>
224
+ <w:link w:val="Heading1Char"/>
225
+ <w:rsid w:val="00401F80"/>
226
+ <w:pPr>
227
+ <w:keepNext/>
228
+ <w:keepLines/>
229
+ <w:spacing w:before="480"/>
230
+ <w:outlineLvl w:val="0"/>
231
+ </w:pPr>
232
+ <w:rPr>
233
+ <w:rFonts w:ascii="Calibri" w:fareast="Times New Roman" w:h-ansi="Calibri"/>
234
+ <wx:font wx:val="Calibri"/>
235
+ <w:b/>
236
+ <w:b-cs/>
237
+ <w:color w:val="345A8A"/>
238
+ <w:sz w:val="32"/>
239
+ <w:sz-cs w:val="32"/>
240
+ </w:rPr>
241
+ </w:style>
242
+ <w:style w:type="paragraph" w:styleId="Heading2">
243
+ <w:name w:val="heading 2"/>
244
+ <wx:uiName wx:val="Heading 2"/>
245
+ <w:basedOn w:val="Normal"/>
246
+ <w:next w:val="Normal"/>
247
+ <w:link w:val="Heading2Char"/>
248
+ <w:rsid w:val="00401F80"/>
249
+ <w:pPr>
250
+ <w:keepNext/>
251
+ <w:keepLines/>
252
+ <w:spacing w:before="200"/>
253
+ <w:outlineLvl w:val="1"/>
254
+ </w:pPr>
255
+ <w:rPr>
256
+ <w:rFonts w:ascii="Calibri" w:fareast="Times New Roman" w:h-ansi="Calibri"/>
257
+ <wx:font wx:val="Calibri"/>
258
+ <w:b/>
259
+ <w:b-cs/>
260
+ <w:color w:val="4F81BD"/>
261
+ <w:sz w:val="26"/>
262
+ <w:sz-cs w:val="26"/>
263
+ </w:rPr>
264
+ </w:style>
265
+ <w:style w:type="character" w:styleId="Hyperlink">
266
+ <w:name w:val="Hyperlink"/>
267
+ <w:basedOn w:val="DefaultParagraphFont"/>
268
+ <w:rsid w:val="00A30FBB"/>
269
+ <w:rPr>
270
+ <w:color w:val="0000FF"/>
271
+ <w:u w:val="single"/>
272
+ </w:rPr>
273
+ </w:style>
274
+ <w:style w:type="paragraph" w:styleId="Heading3">
275
+ <w:name w:val="heading 3"/>
276
+ <wx:uiName wx:val="Heading 3"/>
277
+ <w:basedOn w:val="Normal"/>
278
+ <w:next w:val="Normal"/>
279
+ <w:link w:val="Heading3Char"/>
280
+ <w:rsid w:val="00401F80"/>
281
+ <w:pPr>
282
+ <w:keepNext/>
283
+ <w:keepLines/>
284
+ <w:spacing w:before="200"/>
285
+ <w:outlineLvl w:val="2"/>
286
+ </w:pPr>
287
+ <w:rPr>
288
+ <w:rFonts w:ascii="Calibri" w:fareast="Times New Roman" w:h-ansi="Calibri"/>
289
+ <wx:font wx:val="Calibri"/>
290
+ <w:b/>
291
+ <w:b-cs/>
292
+ <w:color w:val="4F81BD"/>
293
+ </w:rPr>
294
+ </w:style>
295
+ <w:style w:type="character" w:default="on" w:styleId="DefaultParagraphFont">
296
+ <w:name w:val="Default Paragraph Font"/>
297
+ </w:style>
298
+ <w:style w:type="table" w:default="on" w:styleId="TableNormal">
299
+ <w:name w:val="Normal Table"/>
300
+ <wx:uiName wx:val="Table Normal"/>
301
+ <w:rPr>
302
+ <wx:font wx:val="Cambria"/>
303
+ <w:lang w:val="EN-US" w:fareast="EN-US" w:bidi="AR-SA"/>
304
+ </w:rPr>
305
+ <w:tblPr>
306
+ <w:tblInd w:w="0" w:type="dxa"/>
307
+ <w:tblCellMar>
308
+ <w:top w:w="0" w:type="dxa"/>
309
+ <w:left w:w="108" w:type="dxa"/>
310
+ <w:bottom w:w="0" w:type="dxa"/>
311
+ <w:right w:w="108" w:type="dxa"/>
312
+ </w:tblCellMar>
313
+ </w:tblPr>
314
+ </w:style>
315
+ <w:style w:type="list" w:default="on" w:styleId="NoList">
316
+ <w:name w:val="No List"/>
317
+ </w:style>
318
+ <w:style w:type="character" w:styleId="Heading1Char">
319
+ <w:name w:val="Heading 1 Char"/>
320
+ <w:basedOn w:val="DefaultParagraphFont"/>
321
+ <w:link w:val="Heading1"/>
322
+ <w:rsid w:val="00401F80"/>
323
+ <w:rPr>
324
+ <w:rFonts w:ascii="Calibri" w:fareast="Times New Roman" w:h-ansi="Calibri" w:cs="Times New Roman"/>
325
+ <w:b/>
326
+ <w:b-cs/>
327
+ <w:color w:val="345A8A"/>
328
+ <w:sz w:val="32"/>
329
+ <w:sz-cs w:val="32"/>
330
+ <w:lang w:val="EN-US"/>
331
+ </w:rPr>
332
+ </w:style>
333
+ <w:style w:type="character" w:styleId="Heading2Char">
334
+ <w:name w:val="Heading 2 Char"/>
335
+ <w:basedOn w:val="DefaultParagraphFont"/>
336
+ <w:link w:val="Heading2"/>
337
+ <w:rsid w:val="00401F80"/>
338
+ <w:rPr>
339
+ <w:rFonts w:ascii="Calibri" w:fareast="Times New Roman" w:h-ansi="Calibri" w:cs="Times New Roman"/>
340
+ <w:b/>
341
+ <w:b-cs/>
342
+ <w:color w:val="4F81BD"/>
343
+ <w:sz w:val="26"/>
344
+ <w:sz-cs w:val="26"/>
345
+ <w:lang w:val="EN-US"/>
346
+ </w:rPr>
347
+ </w:style>
348
+ <w:style w:type="character" w:styleId="Heading3Char">
349
+ <w:name w:val="Heading 3 Char"/>
350
+ <w:basedOn w:val="DefaultParagraphFont"/>
351
+ <w:link w:val="Heading3"/>
352
+ <w:rsid w:val="00401F80"/>
353
+ <w:rPr>
354
+ <w:rFonts w:ascii="Calibri" w:fareast="Times New Roman" w:h-ansi="Calibri" w:cs="Times New Roman"/>
355
+ <w:b/>
356
+ <w:b-cs/>
357
+ <w:color w:val="4F81BD"/>
358
+ <w:lang w:val="EN-AU"/>
359
+ </w:rPr>
360
+ </w:style>
361
+ <w:style w:type="list" w:default="on" w:styleId="NoList">
362
+ <w:name w:val="No List"/>
363
+ </w:style>
364
+ <w:style w:type="paragraph" w:styleId="Header">
365
+ <w:name w:val="header"/>
366
+ <wx:uiName wx:val="Header"/>
367
+ <w:basedOn w:val="Normal"/>
368
+ <w:link w:val="HeaderChar"/>
369
+ <w:rsid w:val="00B5709B"/>
370
+ <w:pPr>
371
+ <w:tabs>
372
+ <w:tab w:val="center" w:pos="4320"/>
373
+ <w:tab w:val="right" w:pos="8640"/>
374
+ </w:tabs>
375
+ </w:pPr>
376
+ <w:rPr>
377
+ <wx:font wx:val="Cambria"/>
378
+ </w:rPr>
379
+ </w:style>
380
+ <w:style w:type="character" w:styleId="HeaderChar">
381
+ <w:name w:val="Header Char"/>
382
+ <w:basedOn w:val="DefaultParagraphFont"/>
383
+ <w:link w:val="Header"/>
384
+ <w:rsid w:val="00B5709B"/>
385
+ <w:rPr>
386
+ <w:sz w:val="24"/>
387
+ <w:sz-cs w:val="24"/>
388
+ </w:rPr>
389
+ </w:style>
390
+ <w:style w:type="paragraph" w:styleId="Footer">
391
+ <w:name w:val="footer"/>
392
+ <wx:uiName wx:val="Footer"/>
393
+ <w:basedOn w:val="Normal"/>
394
+ <w:link w:val="FooterChar"/>
395
+ <w:rsid w:val="00B5709B"/>
396
+ <w:pPr>
397
+ <w:tabs>
398
+ <w:tab w:val="center" w:pos="4320"/>
399
+ <w:tab w:val="right" w:pos="8640"/>
400
+ </w:tabs>
401
+ </w:pPr>
402
+ <w:rPr>
403
+ <wx:font wx:val="Cambria"/>
404
+ </w:rPr>
405
+ </w:style>
406
+ <w:style w:type="character" w:styleId="FooterChar">
407
+ <w:name w:val="Footer Char"/>
408
+ <w:basedOn w:val="DefaultParagraphFont"/>
409
+ <w:link w:val="Footer"/>
410
+ <w:rsid w:val="00B5709B"/>
411
+ <w:rPr>
412
+ <w:sz w:val="24"/>
413
+ <w:sz-cs w:val="24"/>
414
+ </w:rPr>
415
+ </w:style>
416
+ <w:style w:type="character" w:styleId="PageNumber">
417
+ <w:name w:val="page number"/>
418
+ <wx:uiName wx:val="Page Number"/>
419
+ <w:basedOn w:val="DefaultParagraphFont"/>
420
+ <w:rsid w:val="009F65CC"/>
421
+ </w:style>
422
+ </w:styles>
423
+ <w:docPr>
424
+ <w:view w:val="print"/>
425
+ <w:zoom w:percent="100"/>
426
+ <w:proofState w:spelling="clean" w:grammar="clean"/>
427
+ <w:defaultTabStop w:val="720"/>
428
+ <w:drawingGridHorizontalSpacing w:val="360"/>
429
+ <w:drawingGridVerticalSpacing w:val="360"/>
430
+ <w:displayHorizontalDrawingGridEvery w:val="0"/>
431
+ <w:displayVerticalDrawingGridEvery w:val="0"/>
432
+ <w:punctuationKerning/>
433
+ <w:characterSpacingControl w:val="DontCompress"/>
434
+ <w:allowPNG/>
435
+ <w:doNotSaveWebPagesAsSingleFile/>
436
+ <w:savePreviewPicture/>
437
+ <w:validateAgainstSchema/>
438
+ <w:saveInvalidXML w:val="off"/>
439
+ <w:ignoreMixedContent w:val="off"/>
440
+ <w:alwaysShowPlaceholderText w:val="off"/>
441
+ <w:compat>
442
+ <w:breakWrappedTables/>
443
+ <w:snapToGridInCell/>
444
+ <w:wrapTextWithPunct/>
445
+ <w:useAsianBreakRules/>
446
+ <w:dontGrowAutofit/>
447
+ </w:compat>
448
+ </w:docPr>
449
+ <w:body>
450
+ <w:pict>
451
+ <v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
452
+ <v:stroke joinstyle="miter"/>
453
+ <v:formulas>
454
+ <v:f eqn="if lineDrawn pixelLineWidth 0"/>
455
+ <v:f eqn="sum @0 1 0"/><v:f eqn="sum 0 0 @1"/>
456
+ <v:f eqn="prod @2 1 2"/>
457
+ <v:f eqn="prod @3 21600 pixelWidth"/>
458
+ <v:f eqn="prod @3 21600 pixelHeight"/>
459
+ <v:f eqn="sum @0 0 1"/>
460
+ <v:f eqn="prod @6 1 2"/>
461
+ <v:f eqn="prod @7 21600 pixelWidth"/>
462
+ <v:f eqn="sum @8 21600 0"/>
463
+ <v:f eqn="prod @7 21600 pixelHeight"/>
464
+ <v:f eqn="sum @10 21600 0"/>"
465
+ </v:formulas>
466
+ <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
467
+ <o:lock v:ext="edit" aspectratio="t"/>"
468
+ </v:shapetype>
469
+ <w:binData w:name="wordml://1310752559ssl_ps_logo.png" xml:space="preserve">iVBORw0KGgoAAAANSUhEUgAAAWwAAAB+CAMAAAA3KNuvAAAC/VBMVEUAWAjO
470
+ DyuTAyHOw8LukwSUlJQoPaDTXgCEhITPr4HWYWjeNDufPUrZojprh29Zg97L
471
+ iTlmcZvfNkmqoZe+ZGb/qQDbITCrCSaZZmb3QT+/lGG6f0fqhwHOUgDptreh
472
+ KTzepqX/uRjeEDLFayOdf4Klmof3pQr/zUc9UKT6SELcWGLvIjHw4b7ecQDr
473
+ eIPFDir60XTvk5v5uznX0cfQGCypByP2Nji+eXnmITL2nARiieb/tA6ttaDv
474
+ REzAHC7Ru5Hcihe9DCnRolrXawWgqsTwMTnrrLC+UVTeGjGNm8Wrk3WebHKh
475
+ jI7DpXHypRPWDy3vwJQIriJ7e3uymJnrmBHjiAngIj/v4N6gUVriiYx3isO1
476
+ CShEa9f/rQnWS1TifAJfeMa6hofDyNHsqzKof3/lGjDReh2+jFJOX6bvOULf
477
+ oKDCPUj/viG9LD3xxavlwn3tzcvWGS/kKTPplZfvKTScBiH3rRTvvZziYW3p
478
+ slGnjXNrgMPwmwntxML42ZH39/elpaWZmZmtra3FxcU3VMfW1ta9vb3e3t7m
479
+ 5uY/ZNwQtiPv7+85W87///+1tbVSe+XW4fi1xe07Ytbp7vpjk+xLeeQsxT1F
480
+ YMH5dW1Ca96Ys+6/0vdHc+g7WcaRlJ73g4FjdLJTa77MzMwzUL45XNV2n+1s
481
+ mu5ci+4ZvChperCmwvb09/0xS70Frhn/7MCGjaAiwyxKe+z5wb7/3oj+7ekw
482
+ gNozUsb+8e53g6w8zE1fwWsDkBH3Y1tThOv/zMxL0FaGoej93tpCbeX4WVIB
483
+ YtP/1XJ8iKg6lEIAZAkwSrQqQa7d8eJah+dwi91VaK9BYtek5KSIlLD+z1b3
484
+ Uk73pKNKdNx4lOCpuul32YT7q6EAawpzk3UAcgkApRT419f/xDwqeDDyUVGU
485
+ q+eMsfQAfw8AnBL5nZf/xS16voP3S0lueqQ8VLL4a2JamF//9d4DpRuE3o6j
486
+ p7Oms9P+5abyYGXd2M3Ay+r/89ZfbaXS1+OLi4tDY85JX7F5g6Gu2bSkRCCH
487
+ AAAfo0lEQVR4XuzZVY/zRhSA4f7zmTFzmJlxmZnpY2YuMzOoZ8bOdqsvtZJo
488
+ 3VZO3ptRpFw9OjqeOO+YLk1Ct77q9QhaX1v/3hw9F+xJ6I/1nZ2dNVo8Hm9O
489
+ Pd/Y+Ogq+tewO6zxoNZv7UCONrV+/70TiRd1r7EjwUw7vVuLnlerpduhTNDH
490
+ 7FcfxWeh+JodWG88e4U5yVvsSCZdazS2oDm7QCAAH67RorvpTMSfu3qnGY+f
491
+ nJzMNmfj0KwG1qe/YF7WvdvZwXYt2qDM2Wx2/0LZbCwG4Kx6OtPx32DrMm9x
492
+ GOMprQkx61dYUpDpEXYkY0tTZ1UNX0xVUykADwQYd+DaG795I6UssaY0ralp
493
+ sK+fnJ5wIjK9wY60o0A950CXSq3VY7vVVilhGNUqBY/FGHcgAN5BX2Hrip32
494
+ F/bnkmJ6gh1J121qCl08zhOCMeeEMc4fFwE8HLa9WbHYg4zpv3pbBLCf8roX
495
+ 2JF2PRrdmoOhrv5anCEEnCW+LPYqSxKQHxcN8FbVfUf7/v3Udf9xN8+xnzwt
496
+ 99siu4fQ7ujYmTqMNZ1qI7GaB2mpLMqKrqNeuq7IIm9x+VYuB+MN0+1gq+EH
497
+ ER9j91vZS4espRGxYYPUG1tAXc21gNriRUVH/ZYaeOdLgmFzQylVrVarD32K
498
+ /ewUsPvNdSwUisFsj4QdrIH1XDYVNkozQF2WQbp/iF6Pbicot5qCYL0bgiCU
499
+ gmOEDdb0AG2TJWNC+PODKO7YoTq1hg0itGxqBuDCzRWZtmpTVyrdxM9obNYI
500
+ OjwMMTUHGxFeFDHvHCYRXbHTYA1PxptGboZwkk3tzi1Kq4JgQIz67OwGxys+
501
+ w9YYdr/Jho29FIOWnAlXCHxFlpzDHbvzLrXO7oeFRJ5wZQUNdP3nb+doVPrs
502
+ yg2Cxwj78EIMA+MyYgf9riu2Y52i1tga+JWLXv46sbwM1D1rNLbYJuIxsRA7
503
+ OOSGzawb1FogWJIHJ9NFLtGl1Fd+sq3HFxtSOMwOC7thM+u5fbDOD2MNIVmi
504
+ gw3WbGGPL7ZInWXiHC7Y6Z51ZWY4awh9UwHrT+ieN/2VNhQ2IpIocxw7LMsk
505
+ 9Fc36oPt3Plu5rotYg1pbXYEWCO2tS+xvxx0jSiYEAv1DkIT38YOgnV0K6sa
506
+ ld/I8K8Sr3e7zFo3xxvbvR52p84GO2XQJTK02UOhVPydWfsTe6rPGnHNHTsd
507
+ 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
667
+ Ff+/g6nF2WRP4ugAAAAASUVORK5CYII=
668
+ </w:binData>
669
+ <v:shape id="_x0000_i1026" type="#_x0000_t75" style="width:364pt;height:126pt"><v:imagedata src="wordml://1310752559ssl_ps_logo.png" o:title="ssl_ps_logo.png"/>
670
+ </v:shape>
671
+ </w:pict>
672
+
673
+ </w:body>
674
+ </w:wordDocument>