* contents/customXml/_rels/item1.xml.rels: preliminary work on build system
Diff
.gitignore | 17 +++++++++++++++++
CV.docx | 0
CV.pdf | 0
Makefile | 26 ++++++++++++++++++++++++++
README.org | 18 ++++++++++++++++++
YAMLParser.bas | 313 --------------------------------------------------------------------------------
cv.docm | 0
cv.docm.bak | 0
cv.dotx | 0
cv.thmx | 0
~$CV.docx | 0
contents/[Content_Types].xml | 2 ++
examples/CV.docx | 0
examples/CV.pdf | 0
python_build/compile_vba.py | 27 +++++++++++++++++++++++++++
python_build/extract_vba.py | 32 ++++++++++++++++++++++++++++++++
contents/_rels/.rels | 2 ++
contents/customXml/item1.xml | 1 +
contents/customXml/itemProps1.xml | 2 ++
contents/docProps/app.xml | 2 ++
contents/docProps/core.xml | 2 ++
contents/word/document.xml | 2 ++
contents/word/fontTable.xml | 2 ++
contents/word/numbering.xml | 2 ++
contents/word/settings.xml | 2 ++
contents/word/styles.xml | 2 ++
contents/word/webSettings.xml | 2 ++
src/Class Modules/YAML.cls | 353 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/Modules/NewMacros.bas | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/Modules/YAMLParser_old.bas | 313 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
contents/customXml/_rels/item1.xml.rels | 2 ++
contents/word/_rels/document.xml.rels | 2 ++
contents/word/_rels/numbering.xml.rels | 2 ++
contents/word/_rels/settings.xml.rels | 2 ++
contents/word/media/image1.png | 0
contents/word/theme/theme1.xml | 2 ++
36 files changed, 877 insertions(+), 313 deletions(-)
@@ -1,0 +1,17 @@
# Python virtual environment
venv/
# Python bytecode
*.pyc
__pycache__/
# Environment variables
.env
# Temporary files
*.swp
*.swo
.DS_Store
# Compressed files
*.zip
Binary files a/CV.docx and /dev/null differ
Binary files a/CV.pdf and /dev/null differ
@@ -1,0 +1,26 @@
docm=cv.docm
vba_dir=src
all: compress
extract: extract_vba
extract_vba:
@mkdir -p $(vba_dir)
@python3 python_build/extract_vba.py $(docm) $(vba_dir)
compress: insert_vba
@python3 python_build/compile_vba.py $(vba_dir) $(docm)
insert_vba:
@python3 python_build/compile_vba.py $(vba_dir) $(docm)
clean:
@rm -rf $(vba_dir)
@@ -1,0 +1,18 @@
* YAML CV Generator
** Features to implement
[*] YAML parsing function
[*] YAML class which can be instantiated
[*] docx writing functionality
[ ] proper formatting
*** Human-readable CV
[ ] phone/web/mail/etc icons
[ ] right-justified years and locations
[ ] footer
*** Machine-readable CV
[ ] everything
*** Build system
[ ] proper python scripts for extracting VBAProject.bin (olevba)
[ ] proper python scripts for re-injecting VBAProject.bin (maybe not possible)
*** Other things
[ ] LaTeX CV generator from the same YAML
@@ -1,313 +1,0 @@
Attribute VB_Name = "YAMLParser"
Option Explicit
Const yamlPath As String = "\\Mac\iCloud\Development\cv\cv.yml"
Const selfIdentifier As String = "___self___"
Const typeIdentifier As String = "___type___"
Const errIdentifier As String = "YAML Error in " & yamlPath
Const malformedTypeError As String = "Malformed YAML code at " & yamlPath & " on line "
Const malformedYAMLError As String = "Malformed type error - this is a problem with the internal dictionary"
Function RemoveEmptyStrings(arr() As String) As String()
Dim tempArray() As String
Dim i As Integer, j As Integer: j = 0
ReDim tempArray(LBound(arr) To UBound(arr))
j = 0
For i = LBound(arr) To UBound(arr)
If Len(arr(i)) > 0 Then
tempArray(j) = arr(i)
j = j + 1
End If
Next i
ReDim Preserve tempArray(0 To j - 1)
RemoveEmptyStrings = tempArray
End Function
Function RegexMatch(inputString As String, pattern As String, Optional isGlobal As Boolean = True) As Boolean
' checks for regex match without instantiating 80 gazillion objects
' parameters
' isGlobal: whether the regex check is global
Dim Regex As Object: Set Regex = CreateObject("VBScript.RegExp")
Regex.pattern = pattern
Regex.Global = isGlobal
RegexMatch = Regex.Test(inputString)
End Function
Function RegexSplit(inputString As String, pattern As String, Optional onlyFirst As Boolean = False, Optional splitBefore As Boolean = False) As String()
' splits array at any pattern that matches a regex
' parameters
' onlyFirst: if true, only splits the first instance of the match, creating an array of length 2
' splitBefore: if true, preserves the actual instance of the match
Dim Regex As Object: Set Regex = CreateObject("VBScript.RegExp")
Dim matches As Object
Dim match As Object
Dim splitParts() As String: ReDim splitParts(0 To 0)
Dim pos As Integer
Dim lastPos As Integer: lastPos = 1
Dim i As Integer: i = 0
' set regex flags
Regex.Global = True
Regex.IgnoreCase = False
Regex.pattern = pattern
Set matches = Regex.Execute(inputString)
' lastPos = 1
' i = 0
For Each match In matches
pos = match.FirstIndex + 1
ReDim Preserve splitParts(i)
splitParts(i) = Mid(inputString, lastPos, pos - lastPos)
If splitBefore Then
lastPos = pos
Else
lastPos = pos + Len(match.Value)
End If
i = i + 1
If onlyFirst Then Exit For
Next match
If lastPos <= Len(inputString) Then
ReDim Preserve splitParts(i)
splitParts(i) = Mid(inputString, lastPos)
End If
' retvrn
RegexSplit = RemoveEmptyStrings(splitParts)
End Function
Function RegexSubstitute(inputString As String, pattern As String, Optional substitution As String = "")
' does what it says on the tin
Dim Regex As Object: Set Regex = CreateObject("VBScript.RegExp")
Regex.pattern = pattern
Regex.IgnoreCase = False
Regex.Global = True
RegexSubstitute = Regex.Replace(inputString, substitution)
End Function
' YAML Layer Parser Pseudocode
' ====
' function GetYAMLLayerAsCollection(String fromYAML) {
' Collection mainDictionary = New Collection();
' if (fromYAML.containsRegex(/\n[A-Za-z]/)) {
' // is a dictionary
' String[] temporaryArray = fromYAML.split(/\n[A-Za-z]/);
' for each x in temporaryArray {
' x.splitByFirstInstanceOf(':\n');
' x[1].replaceAllInstancesOf('
' mainDictionary.add(x[0], x[1]);
' }
' } else if (fromYAML.containsRegex(/\n-/)) {
' // if array, process the array and return it as "self"
' String[] temporaryArray = fromYAML.splitBy('\n-');
' for each x in temporaryArray {
' x.removeAllInstancesOf('\n- ');
' x.replaceAllInstancesOf('\n ', '\n');
' mainDictionary.add("self", temporaryArray);
' }
' } else if (fromYAML.startsWith('"')) {
' mainDictionary.add("self", removeQuotes(fromYAML));
' } else {
' MsgBox("Processing error: neither array, dictionary, nor string");
' }
' }
Function GetYAMLLayerAsDictionary(fromYAML As String) As Dictionary
Dim mainDictionary As Dictionary: Set mainDictionary = New Dictionary
' create regex objects to test for dict, array, and string
'Dim regEx_dict As Object: Set regEx_dict = CreateObject("VBScript.RegExp")
'Dim regEx_arry As Object: Set regEx_arry = CreateObject("VBScript.RegExp")
'Dim regEx_strn As Object: Set regEx_strn = CreateObject("VBScript.RegExp")
'regEx_dict.Global = True: regEx_dict.Pattern = "\n[A-Za-z]"
'regEx_arry.Global = True: regEx_arry.Pattern = "\n-\s"
'regEx_strn.Global = False: regEx_strn.Pattern = "^\s*""(.*?)""\s*$"
Dim parts() As String
If RegexMatch(fromYAML, "(?:\n|\^)\w+:", True) Then
' is a dictionary
parts = RegexSplit(fromYAML, "\n\w+:", False, True)
Dim part As Variant ' not sure why it can't be as string but whatever billy gates
Call mainDictionary.Add(typeIdentifier, "Dictionary") ' identify as dict
For Each part In parts
Dim keyValue() As String: keyValue = RegexSplit(CStr(part), ":\s", True)
' trim trailing \n from category
If UBound(keyValue) > 0 Then
keyValue(0) = RegexSubstitute(keyValue(0), "^\n+")
' trim 2 spaces off of each line if they're there
keyValue(1) = RegexSubstitute(keyValue(1), "^\s{2}")
keyValue(1) = RegexSubstitute(keyValue(1), "\n\s{2}", vbLf)
Call mainDictionary.Add(keyValue(0), keyValue(1))
End If
Next part
ElseIf RegexMatch(fromYAML, "^-\s", True) Then
' is an array
Call mainDictionary.Add(typeIdentifier, "Array")
parts = RegexSplit(fromYAML, "(^|\n)-\s", False)
Dim i As Integer
For i = LBound(parts) To UBound(parts)
parts(i) = RegexSubstitute(parts(i), "\n\s{2}", vbLf)
Next i
Call mainDictionary.Add(selfIdentifier, parts)
ElseIf RegexMatch(fromYAML, "^\s*""(.*?)""\s*$", True) Then
' is a string
Call mainDictionary.Add(typeIdentifier, "String")
Call mainDictionary.Add(selfIdentifier, RegexSubstitute(fromYAML, """", ""))
Else
Call mainDictionary.Add(selfIdentifier, "")
Debug.Print _
"Neither array, dictionary, nor string:" & _
vbCrLf & vbCrLf & fromYAML & vbCrLf & vbCrLf & _
"Make sure all strings are enclosed in double quotes." ', _
'vbOKOnly, "YAML Error")
End If
Set GetYAMLLayerAsDictionary = mainDictionary
End Function
' YAML Traverser Pseudocode
' ===
'
' function TraverseYAML(String fromYAML) {
' Dictionary mainDictionary = GetYAMLLayerAsDictionary(fromYAML);
' if mainDictionary.___type___ = "Dictionary" {
' for each entry in mainDictionary {
' TraverseYAML(entry)
' }
' return mainDictionary;
' } else if mainDictionary.___type___ = "Array" {
' for each entry in mainDictionary.___self___ {
' TraverseYAML(entry)
' }
' return mainDictionary;
' } else if mainDictionary.___type___ = "String" {
' return mainDictionary;
' } else {
' MsgBox("Internal YAML Error")
' }
' }
Function GetYAMLAsDictionary(fromYAML As String) As Dictionary
Dim mainDictionary As Object: Set mainDictionary = GetYAMLLayerAsDictionary(fromYAML)
Dim entry As Variant
If mainDictionary(typeIdentifier) = "Dictionary" Then
For Each entry In mainDictionary
Debug.Print "=== PROCESSING DICTIONARY ENTRY ==="
Debug.Print entry & " => " & mainDictionary(entry)
If entry <> typeIdentifier And entry <> selfIdentifier Then
Set mainDictionary(entry) = GetYAMLAsDictionary(mainDictionary(entry))
End If
Next entry
ElseIf mainDictionary(typeIdentifier) = "Array" Then
Dim i As Integer
Dim subArray() As Object
For i = LBound(mainDictionary(selfIdentifier)) To UBound(mainDictionary(selfIdentifier))
Debug.Print "=== PROCESSING ARRAY ENTRY ==="
Debug.Print mainDictionary(selfIdentifier)(i)
'Set subDictionary = GetYAMLAsDictionary(mainDictionary(selfIdentifier)(i))
'Set mainDictionary(selfIdentifier)(i) = subDictionary
ReDim Preserve subArray(i)
Set subArray(i) = GetYAMLAsDictionary(CStr(mainDictionary(selfIdentifier)(i)))
Next i
mainDictionary(selfIdentifier) = subArray
ElseIf mainDictionary(typeIdentifier) <> "String" Then
Debug.Print malformedTypeError ', vbOKOnly, errIdentifier)
End If
Set GetYAMLAsDictionary = mainDictionary
End Function
' YAML Cleaner Pseudocode
' =====
' function YAMLCleaner(Dictionary mainDictionary) {
' for each entry in mainDictionary {
' if entry(typeIdentifier) == "Dictionary" {
' for each secondOrderEntry in entry {
' YAMLCleaner(secondOrderEntry)
' }
' } else if entry(typeIdentifier) == "Array" {
' for each secondOrderEntry in entry(selfIdentifier) {
' YAMLCleaner(secondOrderEntry)
' }
' }
' if entry(typeIdentifier) != "Dictionary" {
' mainDictionary(entry) = mainDictionary(entry)(selfIdentifier)
' }
' }
' return mainDictionary;
' }
Function YAMLCleaner(mainDictionary As Dictionary) As Dictionary
Dim entry As Variant
If mainDictionary(typeIdentifier) = "Array" Then ' go through array and yamlclean it
Dim i As Integer
Debug.Print JsonConverter.ConvertToJson(mainDictionary)
For i = LBound(mainDictionary(selfIdentifier)) To UBound(mainDictionary(selfIdentifier))
'If IsObject(mainDictionary(selfIdentifier)(i)) Then
'Set mainDictionary(selfIdentifier)(i) = YAMLCleaner(mainDictionary(selfIdentifier)(i))
'Else
' Debug.Print "encountered non-object"
'End If
Next i
End If
If mainDictionary(typeIdentifier) = "Dictionary" Then 'iterate through dict and yamlclena it
For Each entry In mainDictionary
If entry <> typeIdentifier Then
Set mainDictionary(entry) = YAMLCleaner(mainDictionary(entry))
End If
Next entry
End If
For Each entry In mainDictionary
If mainDictionary(typeIdentifier) = "Dictionary" And mainDictionary(entry)(typeIdentifier) <> "Dictionary" And entry <> typeIdentifier And entry <> selfIdentifier Then
Debug.Print "processing " & entry & " which is " & mainDictionary(entry)(typeIdentifier)
If IsObject(mainDictionary(entry)(selfIdentifier)) Then
Set mainDictionary(entry) = mainDictionary(entry)(selfIdentifier)
Else
mainDictionary(entry) = mainDictionary(entry)(selfIdentifier)
End If
End If
Next entry
' destroy type identifier?
Set YAMLCleaner = mainDictionary
End Function
Function GetFileAsString(filePath As String) As String
' Dim fileContent As String
Dim line As String
Dim fileNumber As Integer
'filePath = "\\Mac\iCloud\Development\cv\cv.yml"
fileNumber = FreeFile()
Open filePath For Input As fileNumber
Do While Not EOF(fileNumber)
Line Input #fileNumber, line
GetFileAsString = GetFileAsString & line & vbCrLf
Loop
End Function
Sub TryFunction()
Dim fileString As String: fileString = GetFileAsString("\\Mac\iCloud\Development\cv\cv.yml")
Dim yamlLayer As Object
Set yamlLayer = GetYAMLLayerAsDictionary(fileString)
Dim yamlWholeDict As Object: Set yamlWholeDict = GetYAMLAsDictionary(fileString)
'Debug.Print JsonConverter.ConvertToJson(yamlWholeDict, 2, 2)
Dim yamlCleanDict As Object: Set yamlCleanDict = YAMLCleaner(yamlWholeDict)
Debug.Print JsonConverter.ConvertToJson(yamlCleanDict, 2, 2)
End Sub
Binary files /dev/null and a/cv.docm differ
Binary files /dev/null and a/cv.docm.bak differ
Binary files /dev/null and a/cv.dotx differ
Binary files a/cv.thmx and /dev/null differ
Binary files a/~$CV.docx and /dev/null differ
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="png" ContentType="image/png"/><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/word/document.xml" ContentType="application/vnd.ms-word.document.macroEnabled.main+xml"/><Override PartName="/customXml/itemProps1.xml" ContentType="application/vnd.openxmlformats-officedocument.customXmlProperties+xml"/><Override PartName="/word/numbering.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml"/><Override PartName="/word/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"/><Override PartName="/word/settings.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml"/><Override PartName="/word/webSettings.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.webSettings+xml"/><Override PartName="/word/fontTable.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.fontTable+xml"/><Override PartName="/word/theme/theme1.xml" ContentType="application/vnd.openxmlformats-officedocument.theme+xml"/><Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/><Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/></Types>
Binary files /dev/null and a/examples/CV.docx differ
Binary files /dev/null and a/examples/CV.pdf differ
@@ -1,0 +1,27 @@
from vbaProjectCompiler.vbaProject import VbaProject
from vbaProjectCompiler.ole_file import OleFile
def compile_vba(input_dir, docm_file):
vba_project = VbaProject()
vba_project.addDirectory(input_dir)
ole_file = OleFile(vba_project)
ole_file.writeFile(docm_file)
print(f"VBA project compiled and saved to {docm_file}")
if __name__ == "__main__":
import sys
if len(sys.argv) != 3:
print("Usage: python compile_vba.py <input_directory> <output_docm_file>")
sys.exit(1)
input_dir = sys.argv[1]
docm_file = sys.argv[2]
compile_vba(input_dir, docm_file)
@@ -1,0 +1,32 @@
from oletools.olevba import VBA_Parser
import os
def extract_vba(docm_file, output_dir):
os.makedirs(output_dir, exist_ok=True)
vba_parser = VBA_Parser(docm_file)
if vba_parser.detect_vba_macros():
for (filename, stream_path, vba_filename, vba_code) in vba_parser.extract_macros():
output_file_path = os.path.join(output_dir, vba_filename)
with open(output_file_path, 'w') as vba_file:
vba_file.write(vba_code)
print(f"Extracted {vba_filename} to {output_file_path}")
else:
print("No VBA macros found in the document.")
vba_parser.close()
if __name__ == "__main__":
import sys
if len(sys.argv) != 3:
print("Usage: python extract_vba.py <input_docm_file> <output_directory>")
sys.exit(1)
docm_file = sys.argv[1]
output_dir = sys.argv[2]
extract_vba(docm_file, output_dir)
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="word/document.xml"/></Relationships>
@@ -1,0 +1,1 @@
<?xml version="1.0" standalone="no"?><b:Sources xmlns:b="http://schemas.openxmlformats.org/officeDocument/2006/bibliography" xmlns="http://schemas.openxmlformats.org/officeDocument/2006/bibliography" SelectedStyle="\APASixthEditionOfficeOnline.xsl" StyleName="APA" Version="6"></b:Sources>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<ds:datastoreItem ds:itemID="{B248A5C3-C6B1-49A1-A9B8-C0D60D0C1BE8}" xmlns:ds="http://schemas.openxmlformats.org/officeDocument/2006/customXml"><ds:schemaRefs><ds:schemaRef ds:uri="http://schemas.openxmlformats.org/officeDocument/2006/bibliography"/></ds:schemaRefs></ds:datastoreItem>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"><Template>cv.dotx</Template><TotalTime>496</TotalTime><Pages>1</Pages><Words>0</Words><Characters>0</Characters><Application>Microsoft Office Word</Application><DocSecurity>0</DocSecurity><Lines>0</Lines><Paragraphs>0</Paragraphs><ScaleCrop>false</ScaleCrop><HeadingPairs><vt:vector size="2" baseType="variant"><vt:variant><vt:lpstr>Title</vt:lpstr></vt:variant><vt:variant><vt:i4>1</vt:i4></vt:variant></vt:vector></HeadingPairs><TitlesOfParts><vt:vector size="1" baseType="lpstr"><vt:lpstr></vt:lpstr></vt:vector></TitlesOfParts><Company></Company><LinksUpToDate>false</LinksUpToDate><CharactersWithSpaces>0</CharactersWithSpaces><SharedDoc>false</SharedDoc><HyperlinksChanged>false</HyperlinksChanged><AppVersion>16.0000</AppVersion></Properties>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dcmitype="http://purl.org/dc/dcmitype/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><dc:title></dc:title><dc:subject></dc:subject><dc:creator>Jacob Walchuk</dc:creator><cp:keywords></cp:keywords><dc:description></dc:description><cp:lastModifiedBy>Jacob Walchuk</cp:lastModifiedBy><cp:revision>1</cp:revision><dcterms:created xsi:type="dcterms:W3CDTF">2024-08-20T16:37:00Z</dcterms:created><dcterms:modified xsi:type="dcterms:W3CDTF">2024-08-21T00:53:00Z</dcterms:modified></cp:coreProperties>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:document xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:cx="http://schemas.microsoft.com/office/drawing/2014/chartex" xmlns:cx1="http://schemas.microsoft.com/office/drawing/2015/9/8/chartex" xmlns:cx2="http://schemas.microsoft.com/office/drawing/2015/10/21/chartex" xmlns:cx3="http://schemas.microsoft.com/office/drawing/2016/5/9/chartex" xmlns:cx4="http://schemas.microsoft.com/office/drawing/2016/5/10/chartex" xmlns:cx5="http://schemas.microsoft.com/office/drawing/2016/5/11/chartex" xmlns:cx6="http://schemas.microsoft.com/office/drawing/2016/5/12/chartex" xmlns:cx7="http://schemas.microsoft.com/office/drawing/2016/5/13/chartex" xmlns:cx8="http://schemas.microsoft.com/office/drawing/2016/5/14/chartex" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:aink="http://schemas.microsoft.com/office/drawing/2016/ink" xmlns:am3d="http://schemas.microsoft.com/office/drawing/2017/model3d" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:oel="http://schemas.microsoft.com/office/2019/extlst" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16cex="http://schemas.microsoft.com/office/word/2018/wordml/cex" xmlns:w16cid="http://schemas.microsoft.com/office/word/2016/wordml/cid" xmlns:w16="http://schemas.microsoft.com/office/word/2018/wordml" xmlns:w16du="http://schemas.microsoft.com/office/word/2023/wordml/word16du" xmlns:w16sdtdh="http://schemas.microsoft.com/office/word/2020/wordml/sdtdatahash" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape" mc:Ignorable="w14 w15 w16se w16cid w16 w16cex w16sdtdh w16du wp14"><w:body><w:p w14:paraId="41D4F8B4" w14:textId="77777777" w:rsidR="00144410" w:rsidRPr="00144410" w:rsidRDefault="00144410" w:rsidP="002D6511"><w:pPr><w:pStyle w:val="NoSpacing"/><w:ind w:left="720"/></w:pPr></w:p><w:sectPr w:rsidR="00144410" w:rsidRPr="00144410"><w:pgSz w:w="12240" w:h="15840"/><w:pgMar w:top="1440" w:right="1440" w:bottom="1440" w:left="1440" w:header="720" w:footer="720" w:gutter="0"/><w:cols w:space="720"/><w:docGrid w:linePitch="360"/></w:sectPr></w:body></w:document>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:fonts xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16cex="http://schemas.microsoft.com/office/word/2018/wordml/cex" xmlns:w16cid="http://schemas.microsoft.com/office/word/2016/wordml/cid" xmlns:w16="http://schemas.microsoft.com/office/word/2018/wordml" xmlns:w16du="http://schemas.microsoft.com/office/word/2023/wordml/word16du" xmlns:w16sdtdh="http://schemas.microsoft.com/office/word/2020/wordml/sdtdatahash" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" mc:Ignorable="w14 w15 w16se w16cid w16 w16cex w16sdtdh w16du"><w:font w:name="Symbol"><w:panose1 w:val="05050102010706020507"/><w:charset w:val="02"/><w:family w:val="roman"/><w:pitch w:val="variable"/><w:sig w:usb0="00000000" w:usb1="10000000" w:usb2="00000000" w:usb3="00000000" w:csb0="80000000" w:csb1="00000000"/></w:font><w:font w:name="Times New Roman"><w:panose1 w:val="02020603050405020304"/><w:charset w:val="00"/><w:family w:val="roman"/><w:pitch w:val="variable"/><w:sig w:usb0="E0002EFF" w:usb1="C000785B" w:usb2="00000009" w:usb3="00000000" w:csb0="000001FF" w:csb1="00000000"/></w:font><w:font w:name="Courier New"><w:panose1 w:val="02070309020205020404"/><w:charset w:val="00"/><w:family w:val="modern"/><w:pitch w:val="fixed"/><w:sig w:usb0="E0002EFF" w:usb1="C0007843" w:usb2="00000009" w:usb3="00000000" w:csb0="000001FF" w:csb1="00000000"/></w:font><w:font w:name="Wingdings"><w:panose1 w:val="05000000000000000000"/><w:charset w:val="02"/><w:family w:val="auto"/><w:pitch w:val="variable"/><w:sig w:usb0="00000000" w:usb1="10000000" w:usb2="00000000" w:usb3="00000000" w:csb0="80000000" w:csb1="00000000"/></w:font><w:font w:name="Calibri"><w:panose1 w:val="020F0502020204030204"/><w:charset w:val="00"/><w:family w:val="swiss"/><w:pitch w:val="variable"/><w:sig w:usb0="E4002EFF" w:usb1="C200247B" w:usb2="00000009" w:usb3="00000000" w:csb0="000001FF" w:csb1="00000000"/></w:font><w:font w:name="Garamond"><w:panose1 w:val="02020404030301010803"/><w:charset w:val="00"/><w:family w:val="roman"/><w:pitch w:val="variable"/><w:sig w:usb0="00000287" w:usb1="00000000" w:usb2="00000000" w:usb3="00000000" w:csb0="0000009F" w:csb1="00000000"/></w:font><w:font w:name="Times New Roman (Headings CS)"><w:altName w:val="Times New Roman"/><w:panose1 w:val="00000000000000000000"/><w:charset w:val="00"/><w:family w:val="roman"/><w:notTrueType/><w:pitch w:val="default"/></w:font><w:font w:name="Calibri Light"><w:panose1 w:val="020F0302020204030204"/><w:charset w:val="00"/><w:family w:val="swiss"/><w:pitch w:val="variable"/><w:sig w:usb0="E4002EFF" w:usb1="C200247B" w:usb2="00000009" w:usb3="00000000" w:csb0="000001FF" w:csb1="00000000"/></w:font></w:fonts>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:numbering xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:cx="http://schemas.microsoft.com/office/drawing/2014/chartex" xmlns:cx1="http://schemas.microsoft.com/office/drawing/2015/9/8/chartex" xmlns:cx2="http://schemas.microsoft.com/office/drawing/2015/10/21/chartex" xmlns:cx3="http://schemas.microsoft.com/office/drawing/2016/5/9/chartex" xmlns:cx4="http://schemas.microsoft.com/office/drawing/2016/5/10/chartex" xmlns:cx5="http://schemas.microsoft.com/office/drawing/2016/5/11/chartex" xmlns:cx6="http://schemas.microsoft.com/office/drawing/2016/5/12/chartex" xmlns:cx7="http://schemas.microsoft.com/office/drawing/2016/5/13/chartex" xmlns:cx8="http://schemas.microsoft.com/office/drawing/2016/5/14/chartex" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:aink="http://schemas.microsoft.com/office/drawing/2016/ink" xmlns:am3d="http://schemas.microsoft.com/office/drawing/2017/model3d" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:oel="http://schemas.microsoft.com/office/2019/extlst" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16cex="http://schemas.microsoft.com/office/word/2018/wordml/cex" xmlns:w16cid="http://schemas.microsoft.com/office/word/2016/wordml/cid" xmlns:w16="http://schemas.microsoft.com/office/word/2018/wordml" xmlns:w16du="http://schemas.microsoft.com/office/word/2023/wordml/word16du" xmlns:w16sdtdh="http://schemas.microsoft.com/office/word/2020/wordml/sdtdatahash" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape" mc:Ignorable="w14 w15 w16se w16cid w16 w16cex w16sdtdh w16du wp14"><w:numPicBullet w:numPicBulletId="0"><w:pict><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"><v:stroke joinstyle="miter"/><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"/><v:f eqn="sum @0 1 0"/><v:f eqn="sum 0 0 @1"/><v:f eqn="prod @2 1 2"/><v:f eqn="prod @3 21600 pixelWidth"/><v:f eqn="prod @3 21600 pixelHeight"/><v:f eqn="sum @0 0 1"/><v:f eqn="prod @6 1 2"/><v:f eqn="prod @7 21600 pixelWidth"/><v:f eqn="sum @8 21600 0"/><v:f eqn="prod @7 21600 pixelHeight"/><v:f eqn="sum @10 21600 0"/></v:formulas><v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/><o:lock v:ext="edit" aspectratio="t"/></v:shapetype><v:shape id="_x0000_i1027" type="#_x0000_t75" alt="Receiver with solid fill" style="width:12.7pt;height:13.55pt;visibility:visible" o:gfxdata="UEsDBBQABgAIAAAAIQCo1seoEwEAAEkCAAATAAAAW0NvbnRlbnRfVHlwZXNdLnhtbJSSwU7DMBBE
70j8g+UrShx6QAgl6YGUIyBUPsCyN4lFvLa8JrR/j5O2ElRtpR493jc7I7tcbuzARghkHFb8Pi84
A1ROG+wq/rl+yR45oyhRy8EhVHwLxJf17U253noglmikivcx+ichSPVgJeXOA6ab1gUrYzqGTnip
vmQHYlEUD0I5jIAxi5MHr8sGWvk9RLbaJHmXxGPH2fNublpVcWMnftLFSSLAQEeI9H4wSsbUTYyo
j3Jl+0x5IucZ6o2nuxT8zAYaT2dK+gVq8vvf5G+s/ba39ATBaGDvMsRXaVNfoQMJWLjGqfyyx1TN
Uuba1ijIm0CrmTpkOuet3Q8GGK81bxL2AePBXcwfof4FAAD//wMAUEsDBBQABgAIAAAAIQA4/SH/
1gAAAJQBAAALAAAAX3JlbHMvLnJlbHOkkMFqwzAMhu+DvYPRfXGawxijTi+j0GvpHsDYimMaW0Yy
2fr2M4PBMnrbUb/Q94l/f/hMi1qRJVI2sOt6UJgd+ZiDgffL8ekFlFSbvV0oo4EbChzGx4f9GRdb
25HMsYhqlCwG5lrLq9biZkxWOiqY22YiTra2kYMu1l1tQD30/bPm3wwYN0x18gb45AdQl1tp5j/s
FB2T0FQ7R0nTNEV3j6o9feQzro1iOWA14Fm+Q8a1a8+Bvu/d/dMb2JY5uiPbhG/ktn4cqGU/er3p
cvwCAAD//wMAUEsDBAoAAAAAAAAAIQABMpY0kAMAAJADAAAUAAAAZHJzL21lZGlhL2ltYWdlMi5z
dmc8c3ZnIHZpZXdCb3g9IjAgMCA5NiA5NiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAv
c3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgaWQ9Ikljb25z
X1JlY2VpdmVyIiBvdmVyZmxvdz0iaGlkZGVuIj48cGF0aCBkPSJNMzkuMiAyOS4yQzQwIDI4LjQg
NDAuNSAyNy4zIDQwLjUgMjYuMSA0MC41IDI0LjkgNDAgMjMuOCAzOS4yIDIzTDI1LjQgOS4zQzI0
LjYgOC41IDIzLjUgOCAyMi40IDggMjEuMyA4IDIwLjEgOC41IDE5LjMgOS4zTDE3LjggMTAuOCAz
Ny43IDMwLjcgMzkuMiAyOS4yWiIvPjxwYXRoIGQ9Ik01OS4zIDY0LjVDNTguOSA2NC45IDU4LjMg
NjUuMSA1Ny44IDY1LjEgNTcuMyA2NS4xIDU2LjcgNjQuOSA1Ni4zIDY0LjVMMzEuNSAzOS44QzMx
LjEgMzkuNCAzMC45IDM4LjggMzAuOSAzOC4zIDMwLjkgMzcuOCAzMS4xIDM3LjIgMzEuNSAzNi44
TDM0LjYgMzMuOCAxNC43IDEzLjlDMTMuNCAxNS4yIDEyLjIgMTYuNCAxMS40IDE3LjIgOS40IDE5
LjEgOC4yIDIxLjYgOC4xIDI0LjMgNy44IDI4LjggOC45IDMzLjEgMTAuNCAzNy4zIDEyIDQxIDE0
LjEgNDQuNSAxNi40IDQ3LjggMjQuNiA2MC4xIDM0LjkgNzAuOCA0Ni45IDc5LjMgNDguOSA4MC44
IDUxIDgyLjEgNTMuMiA4My4zIDU4LjIgODUuOCA2My41IDg3LjYgNjkuMiA4OCA3MyA4OC4zIDc2
LjggODYuOCA3OS40IDg0TDgyLjEgODEuMyA2Mi4zIDYxLjQgNTkuMyA2NC41WiIvPjxwYXRoIGQ9
Ik04Ni43IDcwLjYgNzIuOSA1Ni44QzcyLjEgNTYgNzEgNTUuNSA2OS44IDU1LjUgNjguNiA1NS41
IDY3LjUgNTYgNjYuNyA1Ni44TDY1LjIgNTguNCA4NS4xIDc4LjMgODYuNiA3Ni44Qzg3LjQgNzYg
ODcuOSA3NC45IDg3LjkgNzMuNyA4Ny45IDcyLjUgODcuNSA3MS40IDg2LjcgNzAuNloiLz48L3N2
Zz5QSwMEFAAGAAgAAAAhAER4ROnHAQAA1QMAAA4AAABkcnMvZTJvRG9jLnhtbKSTTW7bMBCF9wV6
B4L7RFaAJo5gORsjQYGiNYr2ADQ5tIjyD0Pasm/focS4zqpFuhA15FBvPg6fVk8nZ9kRMJnge97e
LjgDL4Myft/znz+eb5acpSy8EjZ46PkZEn9af/ywGmMHd2EIVgEyEvGpG2PPh5xj1zRJDuBEug0R
PCV1QCcyTXHfKBQjqTvb3C0W980YUEUMElKi1c2c5OtJX2uQ+ZvWCTKzPSe2PI04jbsyNuuV6PYo
4mBkxRDvoHDCeCp6kdqILNgBzTukopH5gEBqFHX0VCyK/kOtirh/0nACfx3ijQwuimx2xpp8nrpd
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
AAAAAAcABwC+AQAA5C0AAAAA
" o:bullet="t"><v:imagedata r:id="rId1" o:title="" cropright="-5041f"/></v:shape></w:pict></w:numPicBullet><w:abstractNum w:abstractNumId="0" w15:restartNumberingAfterBreak="0"><w:nsid w:val="08F42F55"/><w:multiLevelType w:val="hybridMultilevel"/><w:tmpl w:val="861E92D8"/><w:lvl w:ilvl="0" w:tplc="04090001"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="720" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="1" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="1440" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="2" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="2160" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="3" w:tplc="04090001" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="2880" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="4" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="3600" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="5" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="4320" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="6" w:tplc="04090001" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="5040" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="7" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="5760" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="8" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="6480" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl></w:abstractNum><w:abstractNum w:abstractNumId="1" w15:restartNumberingAfterBreak="0"><w:nsid w:val="163947D1"/><w:multiLevelType w:val="multilevel"/><w:tmpl w:val="93EE981C"/><w:styleLink w:val="CurrentList1"/><w:lvl w:ilvl="0"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlPicBulletId w:val="0"/><w:lvlJc w:val="left"/><w:pPr><w:tabs><w:tab w:val="num" w:pos="720"/></w:tabs><w:ind w:left="720" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:tabs><w:tab w:val="num" w:pos="1440"/></w:tabs><w:ind w:left="1440" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="2"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:tabs><w:tab w:val="num" w:pos="2160"/></w:tabs><w:ind w:left="2160" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="3"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:tabs><w:tab w:val="num" w:pos="2880"/></w:tabs><w:ind w:left="2880" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="4"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:tabs><w:tab w:val="num" w:pos="3600"/></w:tabs><w:ind w:left="3600" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="5"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:tabs><w:tab w:val="num" w:pos="4320"/></w:tabs><w:ind w:left="4320" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="6"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:tabs><w:tab w:val="num" w:pos="5040"/></w:tabs><w:ind w:left="5040" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="7"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:tabs><w:tab w:val="num" w:pos="5760"/></w:tabs><w:ind w:left="5760" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="8"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:tabs><w:tab w:val="num" w:pos="6480"/></w:tabs><w:ind w:left="6480" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl></w:abstractNum><w:abstractNum w:abstractNumId="2" w15:restartNumberingAfterBreak="0"><w:nsid w:val="39A530A3"/><w:multiLevelType w:val="hybridMultilevel"/><w:tmpl w:val="06868BE0"/><w:lvl w:ilvl="0" w:tplc="04090001"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="720" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="1" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="1440" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="2" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="2160" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="3" w:tplc="04090001" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="2880" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="4" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="3600" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="5" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="4320" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="6" w:tplc="04090001" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="5040" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="7" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="5760" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="8" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="6480" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl></w:abstractNum><w:abstractNum w:abstractNumId="3" w15:restartNumberingAfterBreak="0"><w:nsid w:val="5B6C109D"/><w:multiLevelType w:val="hybridMultilevel"/><w:tmpl w:val="28F0EA78"/><w:lvl w:ilvl="0" w:tplc="44AAA75E"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlRestart w:val="0"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="720" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="1" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="1440" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="2" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="2160" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="3" w:tplc="04090001" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="2880" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="4" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="3600" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="5" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="4320" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="6" w:tplc="04090001" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="5040" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="7" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="5760" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="8" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="6480" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl></w:abstractNum><w:abstractNum w:abstractNumId="4" w15:restartNumberingAfterBreak="0"><w:nsid w:val="618B6657"/><w:multiLevelType w:val="hybridMultilevel"/><w:tmpl w:val="CF6C0B6C"/><w:lvl w:ilvl="0" w:tplc="04090001"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="720" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="1" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="1440" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="2" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="2160" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="3" w:tplc="04090001" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="2880" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="4" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="3600" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="5" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="4320" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="6" w:tplc="04090001" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="5040" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Symbol" w:hAnsi="Symbol" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="7" w:tplc="04090003" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val="o"/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="5760" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Courier New" w:hAnsi="Courier New" w:cs="Courier New" w:hint="default"/></w:rPr></w:lvl><w:lvl w:ilvl="8" w:tplc="04090005" w:tentative="1"><w:start w:val="1"/><w:numFmt w:val="bullet"/><w:lvlText w:val=""/><w:lvlJc w:val="left"/><w:pPr><w:ind w:left="6480" w:hanging="360"/></w:pPr><w:rPr><w:rFonts w:ascii="Wingdings" w:hAnsi="Wingdings" w:hint="default"/></w:rPr></w:lvl></w:abstractNum><w:num w:numId="1" w16cid:durableId="1428429609"><w:abstractNumId w:val="1"/></w:num><w:num w:numId="2" w16cid:durableId="1792043940"><w:abstractNumId w:val="2"/></w:num><w:num w:numId="3" w16cid:durableId="291251609"><w:abstractNumId w:val="0"/></w:num><w:num w:numId="4" w16cid:durableId="802885965"><w:abstractNumId w:val="4"/></w:num><w:num w:numId="5" w16cid:durableId="2055424400"><w:abstractNumId w:val="3"/></w:num></w:numbering>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:settings xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16cex="http://schemas.microsoft.com/office/word/2018/wordml/cex" xmlns:w16cid="http://schemas.microsoft.com/office/word/2016/wordml/cid" xmlns:w16="http://schemas.microsoft.com/office/word/2018/wordml" xmlns:w16du="http://schemas.microsoft.com/office/word/2023/wordml/word16du" xmlns:w16sdtdh="http://schemas.microsoft.com/office/word/2020/wordml/sdtdatahash" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" xmlns:sl="http://schemas.openxmlformats.org/schemaLibrary/2006/main" mc:Ignorable="w14 w15 w16se w16cid w16 w16cex w16sdtdh w16du"><w:zoom w:percent="89"/><w:proofState w:spelling="clean" w:grammar="clean"/><w:attachedTemplate r:id="rId1"/><w:linkStyles/><w:defaultTabStop w:val="720"/><w:characterSpacingControl w:val="doNotCompress"/><w:compat><w:useFELayout/><w:compatSetting w:name="compatibilityMode" w:uri="http://schemas.microsoft.com/office/word" w:val="15"/><w:compatSetting w:name="overrideTableStyleFontSizeAndJustification" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/><w:compatSetting w:name="enableOpenTypeFeatures" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/><w:compatSetting w:name="doNotFlipMirrorIndents" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/><w:compatSetting w:name="differentiateMultirowTableHeaders" w:uri="http://schemas.microsoft.com/office/word" w:val="1"/><w:compatSetting w:name="useWord2013TrackBottomHyphenation" w:uri="http://schemas.microsoft.com/office/word" w:val="0"/></w:compat><w:rsids><w:rsidRoot w:val="00144410"/><w:rsid w:val="00144410"/><w:rsid w:val="00167F49"/><w:rsid w:val="001945FC"/><w:rsid w:val="002D6511"/><w:rsid w:val="00D15AC7"/><w:rsid w:val="00EC707E"/></w:rsids><m:mathPr><m:mathFont m:val="Cambria Math"/><m:brkBin m:val="before"/><m:brkBinSub m:val="--"/><m:smallFrac m:val="0"/><m:dispDef/><m:lMargin m:val="0"/><m:rMargin m:val="0"/><m:defJc m:val="centerGroup"/><m:wrapIndent m:val="1440"/><m:intLim m:val="subSup"/><m:naryLim m:val="undOvr"/></m:mathPr><w:themeFontLang w:val="en-US"/><w:clrSchemeMapping w:bg1="light1" w:t1="dark1" w:bg2="light2" w:t2="dark2" w:accent1="accent1" w:accent2="accent2" w:accent3="accent3" w:accent4="accent4" w:accent5="accent5" w:accent6="accent6" w:hyperlink="hyperlink" w:followedHyperlink="followedHyperlink"/><w:shapeDefaults><o:shapedefaults v:ext="edit" spidmax="1026"/><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1"/></o:shapelayout></w:shapeDefaults><w:decimalSymbol w:val="."/><w:listSeparator w:val=","/><w14:docId w14:val="583CDA0A"/><w15:chartTrackingRefBased/><w15:docId w15:val="{27A4DF65-5A1E-432E-86F8-91410E29C3DB}"/></w:settings>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:styles xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16cex="http://schemas.microsoft.com/office/word/2018/wordml/cex" xmlns:w16cid="http://schemas.microsoft.com/office/word/2016/wordml/cid" xmlns:w16="http://schemas.microsoft.com/office/word/2018/wordml" xmlns:w16du="http://schemas.microsoft.com/office/word/2023/wordml/word16du" xmlns:w16sdtdh="http://schemas.microsoft.com/office/word/2020/wordml/sdtdatahash" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" mc:Ignorable="w14 w15 w16se w16cid w16 w16cex w16sdtdh w16du"><w:docDefaults><w:rPrDefault><w:rPr><w:rFonts w:asciiTheme="minorHAnsi" w:eastAsiaTheme="minorEastAsia" w:hAnsiTheme="minorHAnsi" w:cstheme="minorBidi"/><w:sz w:val="22"/><w:szCs w:val="22"/><w:lang w:val="en-US" w:eastAsia="en-US" w:bidi="ar-SA"/></w:rPr></w:rPrDefault><w:pPrDefault><w:pPr><w:spacing w:after="160" w:line="259" w:lineRule="auto"/></w:pPr></w:pPrDefault></w:docDefaults><w:latentStyles w:defLockedState="0" w:defUIPriority="99" w:defSemiHidden="0" w:defUnhideWhenUsed="0" w:defQFormat="0" w:count="376"><w:lsdException w:name="Normal" w:uiPriority="0" w:qFormat="1"/><w:lsdException w:name="heading 1" w:uiPriority="9" w:qFormat="1"/><w:lsdException w:name="heading 2" w:semiHidden="1" w:uiPriority="9" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="heading 3" w:semiHidden="1" w:uiPriority="9" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="heading 4" w:semiHidden="1" w:uiPriority="9" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="heading 5" w:semiHidden="1" w:uiPriority="9" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="heading 6" w:semiHidden="1" w:uiPriority="9" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="heading 7" w:semiHidden="1" w:uiPriority="9" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="heading 8" w:semiHidden="1" w:uiPriority="9" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="heading 9" w:semiHidden="1" w:uiPriority="9" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="index 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="index 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="index 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="index 4" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="index 5" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="index 6" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="index 7" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="index 8" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="index 9" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="toc 1" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/><w:lsdException w:name="toc 2" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/><w:lsdException w:name="toc 3" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/><w:lsdException w:name="toc 4" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/><w:lsdException w:name="toc 5" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/><w:lsdException w:name="toc 6" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/><w:lsdException w:name="toc 7" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/><w:lsdException w:name="toc 8" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/><w:lsdException w:name="toc 9" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1"/><w:lsdException w:name="Normal Indent" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="footnote text" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="annotation text" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="header" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="footer" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="index heading" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="caption" w:semiHidden="1" w:uiPriority="35" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="table of figures" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="envelope address" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="envelope return" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="footnote reference" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="annotation reference" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="line number" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="page number" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="endnote reference" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="endnote text" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="table of authorities" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="macro" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="toa heading" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Bullet" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Number" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List 4" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List 5" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Bullet 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Bullet 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Bullet 4" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Bullet 5" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Number 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Number 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Number 4" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Number 5" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Title" w:uiPriority="10" w:qFormat="1"/><w:lsdException w:name="Closing" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Signature" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Default Paragraph Font" w:semiHidden="1" w:uiPriority="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Body Text" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Body Text Indent" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Continue" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Continue 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Continue 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Continue 4" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="List Continue 5" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Message Header" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Subtitle" w:uiPriority="11" w:qFormat="1"/><w:lsdException w:name="Salutation" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Date" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Body Text First Indent" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Body Text First Indent 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Note Heading" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Body Text 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Body Text 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Body Text Indent 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Body Text Indent 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Block Text" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Hyperlink" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="FollowedHyperlink" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Strong" w:uiPriority="22" w:qFormat="1"/><w:lsdException w:name="Emphasis" w:uiPriority="20" w:qFormat="1"/><w:lsdException w:name="Document Map" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Plain Text" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="E-mail Signature" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Top of Form" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Bottom of Form" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Normal (Web)" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Acronym" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Address" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Cite" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Code" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Definition" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Keyboard" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Preformatted" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Sample" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Typewriter" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="HTML Variable" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Normal Table" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="annotation subject" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="No List" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Outline List 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Outline List 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Outline List 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Simple 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Simple 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Simple 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Classic 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Classic 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Classic 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Classic 4" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Colorful 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Colorful 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Colorful 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Columns 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Columns 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Columns 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Columns 4" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Columns 5" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Grid 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Grid 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Grid 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Grid 4" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Grid 5" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Grid 6" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Grid 7" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Grid 8" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table List 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table List 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table List 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table List 4" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table List 5" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table List 6" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table List 7" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table List 8" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table 3D effects 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table 3D effects 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table 3D effects 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Contemporary" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Elegant" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Professional" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Subtle 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Subtle 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Web 1" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Web 2" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Web 3" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Balloon Text" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Table Grid" w:uiPriority="39"/><w:lsdException w:name="Table Theme" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Placeholder Text" w:semiHidden="1"/><w:lsdException w:name="No Spacing" w:uiPriority="1" w:qFormat="1"/><w:lsdException w:name="Light Shading" w:uiPriority="60"/><w:lsdException w:name="Light List" w:uiPriority="61"/><w:lsdException w:name="Light Grid" w:uiPriority="62"/><w:lsdException w:name="Medium Shading 1" w:uiPriority="63"/><w:lsdException w:name="Medium Shading 2" w:uiPriority="64"/><w:lsdException w:name="Medium List 1" w:uiPriority="65"/><w:lsdException w:name="Medium List 2" w:uiPriority="66"/><w:lsdException w:name="Medium Grid 1" w:uiPriority="67"/><w:lsdException w:name="Medium Grid 2" w:uiPriority="68"/><w:lsdException w:name="Medium Grid 3" w:uiPriority="69"/><w:lsdException w:name="Dark List" w:uiPriority="70"/><w:lsdException w:name="Colorful Shading" w:uiPriority="71"/><w:lsdException w:name="Colorful List" w:uiPriority="72"/><w:lsdException w:name="Colorful Grid" w:uiPriority="73"/><w:lsdException w:name="Light Shading Accent 1" w:uiPriority="60"/><w:lsdException w:name="Light List Accent 1" w:uiPriority="61"/><w:lsdException w:name="Light Grid Accent 1" w:uiPriority="62"/><w:lsdException w:name="Medium Shading 1 Accent 1" w:uiPriority="63"/><w:lsdException w:name="Medium Shading 2 Accent 1" w:uiPriority="64"/><w:lsdException w:name="Medium List 1 Accent 1" w:uiPriority="65"/><w:lsdException w:name="Revision" w:semiHidden="1"/><w:lsdException w:name="List Paragraph" w:uiPriority="34" w:qFormat="1"/><w:lsdException w:name="Quote" w:uiPriority="29" w:qFormat="1"/><w:lsdException w:name="Intense Quote" w:uiPriority="30" w:qFormat="1"/><w:lsdException w:name="Medium List 2 Accent 1" w:uiPriority="66"/><w:lsdException w:name="Medium Grid 1 Accent 1" w:uiPriority="67"/><w:lsdException w:name="Medium Grid 2 Accent 1" w:uiPriority="68"/><w:lsdException w:name="Medium Grid 3 Accent 1" w:uiPriority="69"/><w:lsdException w:name="Dark List Accent 1" w:uiPriority="70"/><w:lsdException w:name="Colorful Shading Accent 1" w:uiPriority="71"/><w:lsdException w:name="Colorful List Accent 1" w:uiPriority="72"/><w:lsdException w:name="Colorful Grid Accent 1" w:uiPriority="73"/><w:lsdException w:name="Light Shading Accent 2" w:uiPriority="60"/><w:lsdException w:name="Light List Accent 2" w:uiPriority="61"/><w:lsdException w:name="Light Grid Accent 2" w:uiPriority="62"/><w:lsdException w:name="Medium Shading 1 Accent 2" w:uiPriority="63"/><w:lsdException w:name="Medium Shading 2 Accent 2" w:uiPriority="64"/><w:lsdException w:name="Medium List 1 Accent 2" w:uiPriority="65"/><w:lsdException w:name="Medium List 2 Accent 2" w:uiPriority="66"/><w:lsdException w:name="Medium Grid 1 Accent 2" w:uiPriority="67"/><w:lsdException w:name="Medium Grid 2 Accent 2" w:uiPriority="68"/><w:lsdException w:name="Medium Grid 3 Accent 2" w:uiPriority="69"/><w:lsdException w:name="Dark List Accent 2" w:uiPriority="70"/><w:lsdException w:name="Colorful Shading Accent 2" w:uiPriority="71"/><w:lsdException w:name="Colorful List Accent 2" w:uiPriority="72"/><w:lsdException w:name="Colorful Grid Accent 2" w:uiPriority="73"/><w:lsdException w:name="Light Shading Accent 3" w:uiPriority="60"/><w:lsdException w:name="Light List Accent 3" w:uiPriority="61"/><w:lsdException w:name="Light Grid Accent 3" w:uiPriority="62"/><w:lsdException w:name="Medium Shading 1 Accent 3" w:uiPriority="63"/><w:lsdException w:name="Medium Shading 2 Accent 3" w:uiPriority="64"/><w:lsdException w:name="Medium List 1 Accent 3" w:uiPriority="65"/><w:lsdException w:name="Medium List 2 Accent 3" w:uiPriority="66"/><w:lsdException w:name="Medium Grid 1 Accent 3" w:uiPriority="67"/><w:lsdException w:name="Medium Grid 2 Accent 3" w:uiPriority="68"/><w:lsdException w:name="Medium Grid 3 Accent 3" w:uiPriority="69"/><w:lsdException w:name="Dark List Accent 3" w:uiPriority="70"/><w:lsdException w:name="Colorful Shading Accent 3" w:uiPriority="71"/><w:lsdException w:name="Colorful List Accent 3" w:uiPriority="72"/><w:lsdException w:name="Colorful Grid Accent 3" w:uiPriority="73"/><w:lsdException w:name="Light Shading Accent 4" w:uiPriority="60"/><w:lsdException w:name="Light List Accent 4" w:uiPriority="61"/><w:lsdException w:name="Light Grid Accent 4" w:uiPriority="62"/><w:lsdException w:name="Medium Shading 1 Accent 4" w:uiPriority="63"/><w:lsdException w:name="Medium Shading 2 Accent 4" w:uiPriority="64"/><w:lsdException w:name="Medium List 1 Accent 4" w:uiPriority="65"/><w:lsdException w:name="Medium List 2 Accent 4" w:uiPriority="66"/><w:lsdException w:name="Medium Grid 1 Accent 4" w:uiPriority="67"/><w:lsdException w:name="Medium Grid 2 Accent 4" w:uiPriority="68"/><w:lsdException w:name="Medium Grid 3 Accent 4" w:uiPriority="69"/><w:lsdException w:name="Dark List Accent 4" w:uiPriority="70"/><w:lsdException w:name="Colorful Shading Accent 4" w:uiPriority="71"/><w:lsdException w:name="Colorful List Accent 4" w:uiPriority="72"/><w:lsdException w:name="Colorful Grid Accent 4" w:uiPriority="73"/><w:lsdException w:name="Light Shading Accent 5" w:uiPriority="60"/><w:lsdException w:name="Light List Accent 5" w:uiPriority="61"/><w:lsdException w:name="Light Grid Accent 5" w:uiPriority="62"/><w:lsdException w:name="Medium Shading 1 Accent 5" w:uiPriority="63"/><w:lsdException w:name="Medium Shading 2 Accent 5" w:uiPriority="64"/><w:lsdException w:name="Medium List 1 Accent 5" w:uiPriority="65"/><w:lsdException w:name="Medium List 2 Accent 5" w:uiPriority="66"/><w:lsdException w:name="Medium Grid 1 Accent 5" w:uiPriority="67"/><w:lsdException w:name="Medium Grid 2 Accent 5" w:uiPriority="68"/><w:lsdException w:name="Medium Grid 3 Accent 5" w:uiPriority="69"/><w:lsdException w:name="Dark List Accent 5" w:uiPriority="70"/><w:lsdException w:name="Colorful Shading Accent 5" w:uiPriority="71"/><w:lsdException w:name="Colorful List Accent 5" w:uiPriority="72"/><w:lsdException w:name="Colorful Grid Accent 5" w:uiPriority="73"/><w:lsdException w:name="Light Shading Accent 6" w:uiPriority="60"/><w:lsdException w:name="Light List Accent 6" w:uiPriority="61"/><w:lsdException w:name="Light Grid Accent 6" w:uiPriority="62"/><w:lsdException w:name="Medium Shading 1 Accent 6" w:uiPriority="63"/><w:lsdException w:name="Medium Shading 2 Accent 6" w:uiPriority="64"/><w:lsdException w:name="Medium List 1 Accent 6" w:uiPriority="65"/><w:lsdException w:name="Medium List 2 Accent 6" w:uiPriority="66"/><w:lsdException w:name="Medium Grid 1 Accent 6" w:uiPriority="67"/><w:lsdException w:name="Medium Grid 2 Accent 6" w:uiPriority="68"/><w:lsdException w:name="Medium Grid 3 Accent 6" w:uiPriority="69"/><w:lsdException w:name="Dark List Accent 6" w:uiPriority="70"/><w:lsdException w:name="Colorful Shading Accent 6" w:uiPriority="71"/><w:lsdException w:name="Colorful List Accent 6" w:uiPriority="72"/><w:lsdException w:name="Colorful Grid Accent 6" w:uiPriority="73"/><w:lsdException w:name="Subtle Emphasis" w:uiPriority="19" w:qFormat="1"/><w:lsdException w:name="Intense Emphasis" w:uiPriority="21" w:qFormat="1"/><w:lsdException w:name="Subtle Reference" w:uiPriority="31" w:qFormat="1"/><w:lsdException w:name="Intense Reference" w:uiPriority="32" w:qFormat="1"/><w:lsdException w:name="Book Title" w:uiPriority="33" w:qFormat="1"/><w:lsdException w:name="Bibliography" w:semiHidden="1" w:uiPriority="37" w:unhideWhenUsed="1"/><w:lsdException w:name="TOC Heading" w:semiHidden="1" w:uiPriority="39" w:unhideWhenUsed="1" w:qFormat="1"/><w:lsdException w:name="Plain Table 1" w:uiPriority="41"/><w:lsdException w:name="Plain Table 2" w:uiPriority="42"/><w:lsdException w:name="Plain Table 3" w:uiPriority="43"/><w:lsdException w:name="Plain Table 4" w:uiPriority="44"/><w:lsdException w:name="Plain Table 5" w:uiPriority="45"/><w:lsdException w:name="Grid Table Light" w:uiPriority="40"/><w:lsdException w:name="Grid Table 1 Light" w:uiPriority="46"/><w:lsdException w:name="Grid Table 2" w:uiPriority="47"/><w:lsdException w:name="Grid Table 3" w:uiPriority="48"/><w:lsdException w:name="Grid Table 4" w:uiPriority="49"/><w:lsdException w:name="Grid Table 5 Dark" w:uiPriority="50"/><w:lsdException w:name="Grid Table 6 Colorful" w:uiPriority="51"/><w:lsdException w:name="Grid Table 7 Colorful" w:uiPriority="52"/><w:lsdException w:name="Grid Table 1 Light Accent 1" w:uiPriority="46"/><w:lsdException w:name="Grid Table 2 Accent 1" w:uiPriority="47"/><w:lsdException w:name="Grid Table 3 Accent 1" w:uiPriority="48"/><w:lsdException w:name="Grid Table 4 Accent 1" w:uiPriority="49"/><w:lsdException w:name="Grid Table 5 Dark Accent 1" w:uiPriority="50"/><w:lsdException w:name="Grid Table 6 Colorful Accent 1" w:uiPriority="51"/><w:lsdException w:name="Grid Table 7 Colorful Accent 1" w:uiPriority="52"/><w:lsdException w:name="Grid Table 1 Light Accent 2" w:uiPriority="46"/><w:lsdException w:name="Grid Table 2 Accent 2" w:uiPriority="47"/><w:lsdException w:name="Grid Table 3 Accent 2" w:uiPriority="48"/><w:lsdException w:name="Grid Table 4 Accent 2" w:uiPriority="49"/><w:lsdException w:name="Grid Table 5 Dark Accent 2" w:uiPriority="50"/><w:lsdException w:name="Grid Table 6 Colorful Accent 2" w:uiPriority="51"/><w:lsdException w:name="Grid Table 7 Colorful Accent 2" w:uiPriority="52"/><w:lsdException w:name="Grid Table 1 Light Accent 3" w:uiPriority="46"/><w:lsdException w:name="Grid Table 2 Accent 3" w:uiPriority="47"/><w:lsdException w:name="Grid Table 3 Accent 3" w:uiPriority="48"/><w:lsdException w:name="Grid Table 4 Accent 3" w:uiPriority="49"/><w:lsdException w:name="Grid Table 5 Dark Accent 3" w:uiPriority="50"/><w:lsdException w:name="Grid Table 6 Colorful Accent 3" w:uiPriority="51"/><w:lsdException w:name="Grid Table 7 Colorful Accent 3" w:uiPriority="52"/><w:lsdException w:name="Grid Table 1 Light Accent 4" w:uiPriority="46"/><w:lsdException w:name="Grid Table 2 Accent 4" w:uiPriority="47"/><w:lsdException w:name="Grid Table 3 Accent 4" w:uiPriority="48"/><w:lsdException w:name="Grid Table 4 Accent 4" w:uiPriority="49"/><w:lsdException w:name="Grid Table 5 Dark Accent 4" w:uiPriority="50"/><w:lsdException w:name="Grid Table 6 Colorful Accent 4" w:uiPriority="51"/><w:lsdException w:name="Grid Table 7 Colorful Accent 4" w:uiPriority="52"/><w:lsdException w:name="Grid Table 1 Light Accent 5" w:uiPriority="46"/><w:lsdException w:name="Grid Table 2 Accent 5" w:uiPriority="47"/><w:lsdException w:name="Grid Table 3 Accent 5" w:uiPriority="48"/><w:lsdException w:name="Grid Table 4 Accent 5" w:uiPriority="49"/><w:lsdException w:name="Grid Table 5 Dark Accent 5" w:uiPriority="50"/><w:lsdException w:name="Grid Table 6 Colorful Accent 5" w:uiPriority="51"/><w:lsdException w:name="Grid Table 7 Colorful Accent 5" w:uiPriority="52"/><w:lsdException w:name="Grid Table 1 Light Accent 6" w:uiPriority="46"/><w:lsdException w:name="Grid Table 2 Accent 6" w:uiPriority="47"/><w:lsdException w:name="Grid Table 3 Accent 6" w:uiPriority="48"/><w:lsdException w:name="Grid Table 4 Accent 6" w:uiPriority="49"/><w:lsdException w:name="Grid Table 5 Dark Accent 6" w:uiPriority="50"/><w:lsdException w:name="Grid Table 6 Colorful Accent 6" w:uiPriority="51"/><w:lsdException w:name="Grid Table 7 Colorful Accent 6" w:uiPriority="52"/><w:lsdException w:name="List Table 1 Light" w:uiPriority="46"/><w:lsdException w:name="List Table 2" w:uiPriority="47"/><w:lsdException w:name="List Table 3" w:uiPriority="48"/><w:lsdException w:name="List Table 4" w:uiPriority="49"/><w:lsdException w:name="List Table 5 Dark" w:uiPriority="50"/><w:lsdException w:name="List Table 6 Colorful" w:uiPriority="51"/><w:lsdException w:name="List Table 7 Colorful" w:uiPriority="52"/><w:lsdException w:name="List Table 1 Light Accent 1" w:uiPriority="46"/><w:lsdException w:name="List Table 2 Accent 1" w:uiPriority="47"/><w:lsdException w:name="List Table 3 Accent 1" w:uiPriority="48"/><w:lsdException w:name="List Table 4 Accent 1" w:uiPriority="49"/><w:lsdException w:name="List Table 5 Dark Accent 1" w:uiPriority="50"/><w:lsdException w:name="List Table 6 Colorful Accent 1" w:uiPriority="51"/><w:lsdException w:name="List Table 7 Colorful Accent 1" w:uiPriority="52"/><w:lsdException w:name="List Table 1 Light Accent 2" w:uiPriority="46"/><w:lsdException w:name="List Table 2 Accent 2" w:uiPriority="47"/><w:lsdException w:name="List Table 3 Accent 2" w:uiPriority="48"/><w:lsdException w:name="List Table 4 Accent 2" w:uiPriority="49"/><w:lsdException w:name="List Table 5 Dark Accent 2" w:uiPriority="50"/><w:lsdException w:name="List Table 6 Colorful Accent 2" w:uiPriority="51"/><w:lsdException w:name="List Table 7 Colorful Accent 2" w:uiPriority="52"/><w:lsdException w:name="List Table 1 Light Accent 3" w:uiPriority="46"/><w:lsdException w:name="List Table 2 Accent 3" w:uiPriority="47"/><w:lsdException w:name="List Table 3 Accent 3" w:uiPriority="48"/><w:lsdException w:name="List Table 4 Accent 3" w:uiPriority="49"/><w:lsdException w:name="List Table 5 Dark Accent 3" w:uiPriority="50"/><w:lsdException w:name="List Table 6 Colorful Accent 3" w:uiPriority="51"/><w:lsdException w:name="List Table 7 Colorful Accent 3" w:uiPriority="52"/><w:lsdException w:name="List Table 1 Light Accent 4" w:uiPriority="46"/><w:lsdException w:name="List Table 2 Accent 4" w:uiPriority="47"/><w:lsdException w:name="List Table 3 Accent 4" w:uiPriority="48"/><w:lsdException w:name="List Table 4 Accent 4" w:uiPriority="49"/><w:lsdException w:name="List Table 5 Dark Accent 4" w:uiPriority="50"/><w:lsdException w:name="List Table 6 Colorful Accent 4" w:uiPriority="51"/><w:lsdException w:name="List Table 7 Colorful Accent 4" w:uiPriority="52"/><w:lsdException w:name="List Table 1 Light Accent 5" w:uiPriority="46"/><w:lsdException w:name="List Table 2 Accent 5" w:uiPriority="47"/><w:lsdException w:name="List Table 3 Accent 5" w:uiPriority="48"/><w:lsdException w:name="List Table 4 Accent 5" w:uiPriority="49"/><w:lsdException w:name="List Table 5 Dark Accent 5" w:uiPriority="50"/><w:lsdException w:name="List Table 6 Colorful Accent 5" w:uiPriority="51"/><w:lsdException w:name="List Table 7 Colorful Accent 5" w:uiPriority="52"/><w:lsdException w:name="List Table 1 Light Accent 6" w:uiPriority="46"/><w:lsdException w:name="List Table 2 Accent 6" w:uiPriority="47"/><w:lsdException w:name="List Table 3 Accent 6" w:uiPriority="48"/><w:lsdException w:name="List Table 4 Accent 6" w:uiPriority="49"/><w:lsdException w:name="List Table 5 Dark Accent 6" w:uiPriority="50"/><w:lsdException w:name="List Table 6 Colorful Accent 6" w:uiPriority="51"/><w:lsdException w:name="List Table 7 Colorful Accent 6" w:uiPriority="52"/><w:lsdException w:name="Mention" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Smart Hyperlink" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Hashtag" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Unresolved Mention" w:semiHidden="1" w:unhideWhenUsed="1"/><w:lsdException w:name="Smart Link" w:semiHidden="1" w:unhideWhenUsed="1"/></w:latentStyles><w:style w:type="paragraph" w:default="1" w:styleId="Normal"><w:name w:val="Normal"/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:spacing w:after="0" w:line="240" w:lineRule="auto"/></w:pPr><w:rPr><w:rFonts w:ascii="Garamond" w:hAnsi="Garamond"/><w:w w:val="90"/><w:kern w:val="2"/><w:sz w:val="24"/><w:szCs w:val="24"/><w:lang w:val="en-GB" w:eastAsia="zh-CN"/><w14:ligatures w14:val="standardContextual"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Heading1"><w:name w:val="heading 1"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="Heading1Char"/><w:uiPriority w:val="9"/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:keepNext/><w:keepLines/><w:outlineLvl w:val="0"/></w:pPr><w:rPr><w:rFonts w:eastAsiaTheme="majorEastAsia" w:cs="Times New Roman (Headings CS)"/><w:color w:val="000000" w:themeColor="text1"/><w:spacing w:val="-16"/><w:w w:val="85"/><w:sz w:val="32"/><w:szCs w:val="32"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Heading2"><w:name w:val="heading 2"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="Heading2Char"/><w:uiPriority w:val="9"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:keepNext/><w:keepLines/><w:spacing w:before="40"/><w:outlineLvl w:val="1"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="2F5496" w:themeColor="accent1" w:themeShade="BF"/><w:sz w:val="32"/><w:szCs w:val="32"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Heading3"><w:name w:val="heading 3"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="Heading3Char"/><w:uiPriority w:val="9"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:keepNext/><w:keepLines/><w:spacing w:before="40"/><w:outlineLvl w:val="2"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="2F5496" w:themeColor="accent1" w:themeShade="BF"/><w:sz w:val="28"/><w:szCs w:val="28"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Heading4"><w:name w:val="heading 4"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="Heading4Char"/><w:uiPriority w:val="9"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:keepNext/><w:keepLines/><w:spacing w:before="40"/><w:outlineLvl w:val="3"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="2F5496" w:themeColor="accent1" w:themeShade="BF"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Heading5"><w:name w:val="heading 5"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="Heading5Char"/><w:uiPriority w:val="9"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:keepNext/><w:keepLines/><w:spacing w:before="40"/><w:outlineLvl w:val="4"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:caps/><w:color w:val="2F5496" w:themeColor="accent1" w:themeShade="BF"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Heading6"><w:name w:val="heading 6"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="Heading6Char"/><w:uiPriority w:val="9"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:keepNext/><w:keepLines/><w:spacing w:before="40"/><w:outlineLvl w:val="5"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:i/><w:iCs/><w:caps/><w:color w:val="1F3864" w:themeColor="accent1" w:themeShade="80"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Heading7"><w:name w:val="heading 7"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="Heading7Char"/><w:uiPriority w:val="9"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:keepNext/><w:keepLines/><w:spacing w:before="40"/><w:outlineLvl w:val="6"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:b/><w:bCs/><w:color w:val="1F3864" w:themeColor="accent1" w:themeShade="80"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Heading8"><w:name w:val="heading 8"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="Heading8Char"/><w:uiPriority w:val="9"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:keepNext/><w:keepLines/><w:spacing w:before="40"/><w:outlineLvl w:val="7"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:b/><w:bCs/><w:i/><w:iCs/><w:color w:val="1F3864" w:themeColor="accent1" w:themeShade="80"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Heading9"><w:name w:val="heading 9"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="Heading9Char"/><w:uiPriority w:val="9"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:keepNext/><w:keepLines/><w:spacing w:before="40"/><w:outlineLvl w:val="8"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:i/><w:iCs/><w:color w:val="1F3864" w:themeColor="accent1" w:themeShade="80"/></w:rPr></w:style><w:style w:type="character" w:default="1" w:styleId="DefaultParagraphFont"><w:name w:val="Default Paragraph Font"/><w:uiPriority w:val="1"/><w:semiHidden/><w:unhideWhenUsed/><w:rsid w:val="00144410"/></w:style><w:style w:type="table" w:default="1" w:styleId="TableNormal"><w:name w:val="Normal Table"/><w:uiPriority w:val="99"/><w:semiHidden/><w:unhideWhenUsed/><w:tblPr><w:tblInd w:w="0" w:type="dxa"/><w:tblCellMar><w:top w:w="0" w:type="dxa"/><w:left w:w="108" w:type="dxa"/><w:bottom w:w="0" w:type="dxa"/><w:right w:w="108" w:type="dxa"/></w:tblCellMar></w:tblPr></w:style><w:style w:type="numbering" w:default="1" w:styleId="NoList"><w:name w:val="No List"/><w:uiPriority w:val="99"/><w:semiHidden/><w:unhideWhenUsed/><w:rsid w:val="00144410"/></w:style><w:style w:type="paragraph" w:styleId="Title"><w:name w:val="Title"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="TitleChar"/><w:uiPriority w:val="10"/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:contextualSpacing/></w:pPr><w:rPr><w:rFonts w:eastAsiaTheme="majorEastAsia" w:cs="Times New Roman (Headings CS)"/><w:spacing w:val="-24"/><w:w w:val="85"/><w:kern w:val="28"/><w:sz w:val="56"/><w:szCs w:val="56"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="TitleChar"><w:name w:val="Title Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Title"/><w:uiPriority w:val="10"/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:ascii="Garamond" w:eastAsiaTheme="majorEastAsia" w:hAnsi="Garamond" w:cs="Times New Roman (Headings CS)"/><w:spacing w:val="-24"/><w:w w:val="85"/><w:kern w:val="28"/><w:sz w:val="56"/><w:szCs w:val="56"/><w:lang w:val="en-GB" w:eastAsia="zh-CN"/><w14:ligatures w14:val="standardContextual"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="Heading1Char"><w:name w:val="Heading 1 Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Heading1"/><w:uiPriority w:val="9"/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:ascii="Garamond" w:eastAsiaTheme="majorEastAsia" w:hAnsi="Garamond" w:cs="Times New Roman (Headings CS)"/><w:color w:val="000000" w:themeColor="text1"/><w:spacing w:val="-16"/><w:w w:val="85"/><w:kern w:val="2"/><w:sz w:val="32"/><w:szCs w:val="32"/><w:lang w:val="en-GB" w:eastAsia="zh-CN"/><w14:ligatures w14:val="standardContextual"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="NoSpacing"><w:name w:val="No Spacing"/><w:uiPriority w:val="1"/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:spacing w:after="0" w:line="240" w:lineRule="auto"/></w:pPr><w:rPr><w:rFonts w:ascii="Garamond" w:hAnsi="Garamond"/><w:w w:val="90"/><w:kern w:val="2"/><w:sz w:val="24"/><w:szCs w:val="24"/><w:lang w:val="en-GB" w:eastAsia="zh-CN"/><w14:ligatures w14:val="standardContextual"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="Heading2Char"><w:name w:val="Heading 2 Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Heading2"/><w:uiPriority w:val="9"/><w:semiHidden/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="2F5496" w:themeColor="accent1" w:themeShade="BF"/><w:sz w:val="32"/><w:szCs w:val="32"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="Heading3Char"><w:name w:val="Heading 3 Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Heading3"/><w:uiPriority w:val="9"/><w:semiHidden/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="2F5496" w:themeColor="accent1" w:themeShade="BF"/><w:sz w:val="28"/><w:szCs w:val="28"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="Heading4Char"><w:name w:val="Heading 4 Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Heading4"/><w:uiPriority w:val="9"/><w:semiHidden/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="2F5496" w:themeColor="accent1" w:themeShade="BF"/><w:sz w:val="24"/><w:szCs w:val="24"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="Heading5Char"><w:name w:val="Heading 5 Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Heading5"/><w:uiPriority w:val="9"/><w:semiHidden/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:caps/><w:color w:val="2F5496" w:themeColor="accent1" w:themeShade="BF"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="Heading6Char"><w:name w:val="Heading 6 Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Heading6"/><w:uiPriority w:val="9"/><w:semiHidden/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:i/><w:iCs/><w:caps/><w:color w:val="1F3864" w:themeColor="accent1" w:themeShade="80"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="Heading7Char"><w:name w:val="Heading 7 Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Heading7"/><w:uiPriority w:val="9"/><w:semiHidden/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:b/><w:bCs/><w:color w:val="1F3864" w:themeColor="accent1" w:themeShade="80"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="Heading8Char"><w:name w:val="Heading 8 Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Heading8"/><w:uiPriority w:val="9"/><w:semiHidden/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:b/><w:bCs/><w:i/><w:iCs/><w:color w:val="1F3864" w:themeColor="accent1" w:themeShade="80"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="Heading9Char"><w:name w:val="Heading 9 Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Heading9"/><w:uiPriority w:val="9"/><w:semiHidden/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:i/><w:iCs/><w:color w:val="1F3864" w:themeColor="accent1" w:themeShade="80"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Subtitle"><w:name w:val="Subtitle"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="SubtitleChar"/><w:uiPriority w:val="11"/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:numPr><w:ilvl w:val="1"/></w:numPr><w:spacing w:after="240"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="4472C4" w:themeColor="accent1"/><w:sz w:val="28"/><w:szCs w:val="28"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="SubtitleChar"><w:name w:val="Subtitle Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Subtitle"/><w:uiPriority w:val="11"/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="4472C4" w:themeColor="accent1"/><w:sz w:val="28"/><w:szCs w:val="28"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Quote"><w:name w:val="Quote"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="QuoteChar"/><w:uiPriority w:val="29"/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:spacing w:before="120" w:after="120"/><w:ind w:left="720"/></w:pPr><w:rPr><w:color w:val="44546A" w:themeColor="text2"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="QuoteChar"><w:name w:val="Quote Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Quote"/><w:uiPriority w:val="29"/><w:rsid w:val="00144410"/><w:rPr><w:color w:val="44546A" w:themeColor="text2"/><w:sz w:val="24"/><w:szCs w:val="24"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="ListParagraph"><w:name w:val="List Paragraph"/><w:basedOn w:val="Normal"/><w:uiPriority w:val="34"/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:ind w:left="720"/><w:contextualSpacing/></w:pPr></w:style><w:style w:type="character" w:styleId="IntenseEmphasis"><w:name w:val="Intense Emphasis"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="21"/><w:qFormat/><w:rsid w:val="00144410"/><w:rPr><w:b/><w:bCs/><w:i/><w:iCs/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="IntenseQuote"><w:name w:val="Intense Quote"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:link w:val="IntenseQuoteChar"/><w:uiPriority w:val="30"/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:spacing w:before="100" w:beforeAutospacing="1" w:after="240"/><w:ind w:left="720"/><w:jc w:val="center"/></w:pPr><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="44546A" w:themeColor="text2"/><w:spacing w:val="-6"/><w:sz w:val="32"/><w:szCs w:val="32"/></w:rPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="IntenseQuoteChar"><w:name w:val="Intense Quote Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="IntenseQuote"/><w:uiPriority w:val="30"/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:asciiTheme="majorHAnsi" w:eastAsiaTheme="majorEastAsia" w:hAnsiTheme="majorHAnsi" w:cstheme="majorBidi"/><w:color w:val="44546A" w:themeColor="text2"/><w:spacing w:val="-6"/><w:sz w:val="32"/><w:szCs w:val="32"/></w:rPr></w:style><w:style w:type="character" w:styleId="IntenseReference"><w:name w:val="Intense Reference"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="32"/><w:qFormat/><w:rsid w:val="00144410"/><w:rPr><w:b/><w:bCs/><w:smallCaps/><w:color w:val="44546A" w:themeColor="text2"/><w:u w:val="single"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Caption"><w:name w:val="caption"/><w:basedOn w:val="Normal"/><w:next w:val="Normal"/><w:uiPriority w:val="35"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:rPr><w:b/><w:bCs/><w:smallCaps/><w:color w:val="44546A" w:themeColor="text2"/></w:rPr></w:style><w:style w:type="character" w:styleId="Strong"><w:name w:val="Strong"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="22"/><w:qFormat/><w:rsid w:val="00144410"/><w:rPr><w:b/><w:bCs/></w:rPr></w:style><w:style w:type="character" w:styleId="Emphasis"><w:name w:val="Emphasis"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="20"/><w:qFormat/><w:rsid w:val="00144410"/><w:rPr><w:i/><w:iCs/></w:rPr></w:style><w:style w:type="character" w:styleId="SubtleEmphasis"><w:name w:val="Subtle Emphasis"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="19"/><w:qFormat/><w:rsid w:val="00144410"/><w:rPr><w:i/><w:iCs/><w:color w:val="595959" w:themeColor="text1" w:themeTint="A6"/></w:rPr></w:style><w:style w:type="character" w:styleId="SubtleReference"><w:name w:val="Subtle Reference"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="31"/><w:qFormat/><w:rsid w:val="00144410"/><w:rPr><w:smallCaps/><w:color w:val="595959" w:themeColor="text1" w:themeTint="A6"/><w:u w:val="none" w:color="7F7F7F" w:themeColor="text1" w:themeTint="80"/><w:bdr w:val="none" w:sz="0" w:space="0" w:color="auto"/></w:rPr></w:style><w:style w:type="character" w:styleId="BookTitle"><w:name w:val="Book Title"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="33"/><w:qFormat/><w:rsid w:val="00144410"/><w:rPr><w:b/><w:bCs/><w:smallCaps/><w:spacing w:val="10"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="TOCHeading"><w:name w:val="TOC Heading"/><w:basedOn w:val="Heading1"/><w:next w:val="Normal"/><w:uiPriority w:val="39"/><w:semiHidden/><w:unhideWhenUsed/><w:qFormat/><w:rsid w:val="00144410"/><w:pPr><w:outlineLvl w:val="9"/></w:pPr></w:style><w:style w:type="numbering" w:customStyle="1" w:styleId="CurrentList1"><w:name w:val="Current List1"/><w:uiPriority w:val="99"/><w:rsid w:val="00144410"/><w:pPr><w:numPr><w:numId w:val="1"/></w:numPr></w:pPr></w:style><w:style w:type="character" w:styleId="Hyperlink"><w:name w:val="Hyperlink"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="99"/><w:unhideWhenUsed/><w:rsid w:val="00144410"/><w:rPr><w:color w:val="000000" w:themeColor="text1"/><w:u w:val="none"/></w:rPr></w:style><w:style w:type="character" w:styleId="UnresolvedMention"><w:name w:val="Unresolved Mention"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="99"/><w:semiHidden/><w:unhideWhenUsed/><w:rsid w:val="00144410"/><w:rPr><w:color w:val="605E5C"/><w:shd w:val="clear" w:color="auto" w:fill="E1DFDD"/></w:rPr></w:style><w:style w:type="character" w:styleId="FollowedHyperlink"><w:name w:val="FollowedHyperlink"/><w:basedOn w:val="DefaultParagraphFont"/><w:uiPriority w:val="99"/><w:semiHidden/><w:unhideWhenUsed/><w:rsid w:val="00144410"/><w:rPr><w:color w:val="000000" w:themeColor="text1"/><w:u w:val="none"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="BodyText"><w:name w:val="Body Text"/><w:basedOn w:val="Normal"/><w:link w:val="BodyTextChar"/><w:uiPriority w:val="99"/><w:semiHidden/><w:unhideWhenUsed/><w:rsid w:val="00144410"/><w:pPr><w:spacing w:after="120"/></w:pPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="BodyTextChar"><w:name w:val="Body Text Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="BodyText"/><w:uiPriority w:val="99"/><w:semiHidden/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:ascii="Garamond" w:hAnsi="Garamond"/><w:w w:val="90"/><w:kern w:val="2"/><w:sz w:val="24"/><w:szCs w:val="24"/><w:lang w:val="en-GB" w:eastAsia="zh-CN"/><w14:ligatures w14:val="standardContextual"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Header"><w:name w:val="header"/><w:basedOn w:val="Normal"/><w:link w:val="HeaderChar"/><w:uiPriority w:val="99"/><w:unhideWhenUsed/><w:rsid w:val="00144410"/><w:pPr><w:tabs><w:tab w:val="center" w:pos="4680"/><w:tab w:val="right" w:pos="9360"/></w:tabs></w:pPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="HeaderChar"><w:name w:val="Header Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Header"/><w:uiPriority w:val="99"/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:ascii="Garamond" w:hAnsi="Garamond"/><w:w w:val="90"/><w:kern w:val="2"/><w:sz w:val="24"/><w:szCs w:val="24"/><w:lang w:val="en-GB" w:eastAsia="zh-CN"/><w14:ligatures w14:val="standardContextual"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="Footer"><w:name w:val="footer"/><w:basedOn w:val="Normal"/><w:link w:val="FooterChar"/><w:uiPriority w:val="99"/><w:unhideWhenUsed/><w:rsid w:val="00144410"/><w:pPr><w:tabs><w:tab w:val="center" w:pos="4680"/><w:tab w:val="right" w:pos="9360"/></w:tabs></w:pPr></w:style><w:style w:type="character" w:customStyle="1" w:styleId="FooterChar"><w:name w:val="Footer Char"/><w:basedOn w:val="DefaultParagraphFont"/><w:link w:val="Footer"/><w:uiPriority w:val="99"/><w:rsid w:val="00144410"/><w:rPr><w:rFonts w:ascii="Garamond" w:hAnsi="Garamond"/><w:w w:val="90"/><w:kern w:val="2"/><w:sz w:val="24"/><w:szCs w:val="24"/><w:lang w:val="en-GB" w:eastAsia="zh-CN"/><w14:ligatures w14:val="standardContextual"/></w:rPr></w:style></w:styles>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:webSettings xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16cex="http://schemas.microsoft.com/office/word/2018/wordml/cex" xmlns:w16cid="http://schemas.microsoft.com/office/word/2016/wordml/cid" xmlns:w16="http://schemas.microsoft.com/office/word/2018/wordml" xmlns:w16du="http://schemas.microsoft.com/office/word/2023/wordml/word16du" xmlns:w16sdtdh="http://schemas.microsoft.com/office/word/2020/wordml/sdtdatahash" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" mc:Ignorable="w14 w15 w16se w16cid w16 w16cex w16sdtdh w16du"><w:optimizeForBrowser/><w:allowPNG/></w:webSettings>
@@ -1,0 +1,353 @@
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
END
Attribute VB_Name = "YAML"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Option Explicit
' Const yamlPath As String = "\\Mac\iCloud\Development\cv\cv.yml"
' enums
Public yamlPath As String
Public yamlSerialised As Dictionary
Private Const ID_SELF As String = "___self___"
Private Const ID_TYPE As String = "___type___"
Private Const MESSAGE_ERROR_GENERIC As String = "YAML Error in " & yamlPath
Private Const MESSAGE_MALFORMED_TYPE As String = "Malformed YAML code at " & yamlPath & " on line "
Private Const MESSAGE_MALFORMED_YAML As String = "Malformed type error - this is a problem with the internal dictionary"
Private Const MESSAGE_GETPROP_NOT_STR As String = "Your module has tried to use getProp(), which is meant for type String, on a "
Private Const MESSAGE_GETPROP_NOT_FOUND As String = "Property not found."
Private Function RemoveEmptyStrings(arr() As String) As String()
Dim tempArray() As String
Dim i As Integer, j As Integer: j = 0
ReDim tempArray(LBound(arr) To UBound(arr))
j = 0
For i = LBound(arr) To UBound(arr)
If Len(arr(i)) > 0 Then
tempArray(j) = arr(i)
j = j + 1
End If
Next i
ReDim Preserve tempArray(0 To j - 1)
RemoveEmptyStrings = tempArray
End Function
Private Function RegexMatch(inputString As String, pattern As String, Optional isGlobal As Boolean = True) As Boolean
' checks for regex match without instantiating 80 gazillion objects
' parameters
' isGlobal: whether the regex check is global
Dim Regex As Object: Set Regex = CreateObject("VBScript.RegExp")
Regex.pattern = pattern
Regex.Global = isGlobal
RegexMatch = Regex.Test(inputString)
End Function
Private Function RegexSplit(inputString As String, pattern As String, Optional onlyFirst As Boolean = False, Optional splitBefore As Boolean = False) As String()
' splits array at any pattern that matches a regex
' parameters
' onlyFirst: if true, only splits the first instance of the match, creating an array of length 2
' splitBefore: if true, preserves the actual instance of the match
Dim Regex As Object: Set Regex = CreateObject("VBScript.RegExp")
Dim matches As Object
Dim match As Object
Dim splitParts() As String: ReDim splitParts(0 To 0)
Dim pos As Integer
Dim lastPos As Integer: lastPos = 1
Dim i As Integer: i = 0
' set regex flags
Regex.Global = True
Regex.IgnoreCase = False
Regex.pattern = pattern
Set matches = Regex.Execute(inputString)
' lastPos = 1
' i = 0
For Each match In matches
pos = match.FirstIndex + 1
ReDim Preserve splitParts(i)
splitParts(i) = Mid(inputString, lastPos, pos - lastPos)
If splitBefore Then
lastPos = pos
Else
lastPos = pos + Len(match.Value)
End If
i = i + 1
If onlyFirst Then Exit For
Next match
If lastPos <= Len(inputString) Then
ReDim Preserve splitParts(i)
splitParts(i) = Mid(inputString, lastPos)
End If
' retvrn
RegexSplit = RemoveEmptyStrings(splitParts)
End Function
Private Function RegexSubstitute(inputString As String, pattern As String, Optional substitution As String = "")
' does what it says on the tin
Dim Regex As Object: Set Regex = CreateObject("VBScript.RegExp")
Regex.pattern = pattern
Regex.IgnoreCase = False
Regex.Global = True
RegexSubstitute = Regex.Replace(inputString, substitution)
End Function
' YAML Layer Parser Pseudocode
' ====
' function GetYAMLLayerAsCollection(String fromYAML) {
' Collection mainDictionary = New Collection();
' if (fromYAML.containsRegex(/\n[A-Za-z]/)) {
' // is a dictionary
' String[] temporaryArray = fromYAML.split(/\n[A-Za-z]/);
' for each x in temporaryArray {
' x.splitByFirstInstanceOf(':\n');
' x[1].replaceAllInstancesOf('
' mainDictionary.add(x[0], x[1]);
' }
' } else if (fromYAML.containsRegex(/\n-/)) {
' // if array, process the array and return it as "self"
' String[] temporaryArray = fromYAML.splitBy('\n-');
' for each x in temporaryArray {
' x.removeAllInstancesOf('\n- ');
' x.replaceAllInstancesOf('\n ', '\n');
' mainDictionary.add("self", temporaryArray);
' }
' } else if (fromYAML.startsWith('"')) {
' mainDictionary.add("self", removeQuotes(fromYAML));
' } else {
' MsgBox("Processing error: neither array, dictionary, nor string");
' }
' }
Private Function GetYAMLLayerAsDictionary(fromYAML As String) As Dictionary
Dim mainDictionary As Dictionary: Set mainDictionary = New Dictionary
' create regex objects to test for dict, array, and string
'Dim regEx_dict As Object: Set regEx_dict = CreateObject("VBScript.RegExp")
'Dim regEx_arry As Object: Set regEx_arry = CreateObject("VBScript.RegExp")
'Dim regEx_strn As Object: Set regEx_strn = CreateObject("VBScript.RegExp")
'regEx_dict.Global = True: regEx_dict.Pattern = "\n[A-Za-z]"
'regEx_arry.Global = True: regEx_arry.Pattern = "\n-\s"
'regEx_strn.Global = False: regEx_strn.Pattern = "^\s*""(.*?)""\s*$"
Dim parts() As String
If RegexMatch(fromYAML, "(?:\n|\^)\w+:", True) Then
' is a dictionary
parts = RegexSplit(fromYAML, "\n\w+:", False, True)
Dim part As Variant ' not sure why it can't be as string but whatever billy gates
Call mainDictionary.Add(typeIdentifier, "Dictionary") ' identify as dict
For Each part In parts
Dim keyValue() As String: keyValue = RegexSplit(CStr(part), ":\s", True)
' trim trailing \n from category
If UBound(keyValue) > 0 Then
keyValue(0) = RegexSubstitute(keyValue(0), "^\n+")
' trim 2 spaces off of each line if they're there
keyValue(1) = RegexSubstitute(keyValue(1), "^\s{2}")
keyValue(1) = RegexSubstitute(keyValue(1), "\n\s{2}", vbLf)
Call mainDictionary.Add(keyValue(0), keyValue(1))
End If
Next part
ElseIf RegexMatch(fromYAML, "^-\s", True) Then
' is an array
Call mainDictionary.Add(typeIdentifier, "Array")
parts = RegexSplit(fromYAML, "(^|\n)-\s", False)
Dim i As Integer
For i = LBound(parts) To UBound(parts)
parts(i) = RegexSubstitute(parts(i), "\n\s{2}", vbLf)
Next i
Call mainDictionary.Add(selfIdentifier, parts)
ElseIf RegexMatch(fromYAML, "^\s*""(.*?)""\s*$", True) Then
' is a string
Call mainDictionary.Add(typeIdentifier, "String")
Call mainDictionary.Add(selfIdentifier, RegexSubstitute(fromYAML, """", ""))
Else
Call mainDictionary.Add(selfIdentifier, "")
Debug.Print _
"Neither array, dictionary, nor string:" & _
vbCrLf & vbCrLf & fromYAML & vbCrLf & vbCrLf & _
"Make sure all strings are enclosed in double quotes." ', _
'vbOKOnly, "YAML Error")
End If
Set GetYAMLLayerAsDictionary = mainDictionary
End Function
' YAML Traverser Pseudocode
' ===
'
' function TraverseYAML(String fromYAML) {
' Dictionary mainDictionary = GetYAMLLayerAsDictionary(fromYAML);
' if mainDictionary.___type___ = "Dictionary" {
' for each entry in mainDictionary {
' TraverseYAML(entry)
' }
' return mainDictionary;
' } else if mainDictionary.___type___ = "Array" {
' for each entry in mainDictionary.___self___ {
' TraverseYAML(entry)
' }
' return mainDictionary;
' } else if mainDictionary.___type___ = "String" {
' return mainDictionary;
' } else {
' MsgBox("Internal YAML Error")
' }
' }
Private Function GetYAMLAsDictionary(fromYAML As String) As Dictionary
Dim mainDictionary As Object: Set mainDictionary = GetYAMLLayerAsDictionary(fromYAML)
Dim entry As Variant
If mainDictionary(typeIdentifier) = "Dictionary" Then
For Each entry In mainDictionary
Debug.Print "=== PROCESSING DICTIONARY ENTRY ==="
Debug.Print entry & " => " & mainDictionary(entry)
If entry <> typeIdentifier And entry <> selfIdentifier Then
Set mainDictionary(entry) = GetYAMLAsDictionary(mainDictionary(entry))
End If
Next entry
ElseIf mainDictionary(typeIdentifier) = "Array" Then
Dim i As Integer
Dim subArray() As Object
For i = LBound(mainDictionary(selfIdentifier)) To UBound(mainDictionary(selfIdentifier))
Debug.Print "=== PROCESSING ARRAY ENTRY ==="
Debug.Print mainDictionary(selfIdentifier)(i)
'Set subDictionary = GetYAMLAsDictionary(mainDictionary(selfIdentifier)(i))
'Set mainDictionary(selfIdentifier)(i) = subDictionary
ReDim Preserve subArray(i)
Set subArray(i) = GetYAMLAsDictionary(CStr(mainDictionary(selfIdentifier)(i)))
Next i
mainDictionary(selfIdentifier) = subArray
ElseIf mainDictionary(typeIdentifier) <> "String" Then
Debug.Print malformedTypeError ', vbOKOnly, errIdentifier)
End If
Set GetYAMLAsDictionary = mainDictionary
End Function
' YAML Cleaner Pseudocode
' =====
' function YAMLCleaner(Dictionary mainDictionary) {
' for each entry in mainDictionary {
' if entry(typeIdentifier) == "Dictionary" {
' for each secondOrderEntry in entry {
' YAMLCleaner(secondOrderEntry)
' }
' } else if entry(typeIdentifier) == "Array" {
' for each secondOrderEntry in entry(selfIdentifier) {
' YAMLCleaner(secondOrderEntry)
' }
' }
' if entry(typeIdentifier) != "Dictionary" {
' mainDictionary(entry) = mainDictionary(entry)(selfIdentifier)
' }
' }
' return mainDictionary;
' }
'Function YAMLCleaner(mainDictionary As Dictionary) As Dictionary
' Dim entry As Variant
' If mainDictionary(typeIdentifier) = "Array" Then ' go through array and yamlclean it
' Dim i As Integer
' Debug.Print JsonConverter.ConvertToJson(mainDictionary)
' For i = LBound(mainDictionary(selfIdentifier)) To UBound(mainDictionary(selfIdentifier))
'
' 'If IsObject(mainDictionary(selfIdentifier)(i)) Then
' 'Set mainDictionary(selfIdentifier)(i) = YAMLCleaner(mainDictionary(selfIdentifier)(i))
' 'Else
' ' Debug.Print "encountered non-object"
' 'End If
' Next i
' End If
' If mainDictionary(typeIdentifier) = "Dictionary" Then 'iterate through dict and yamlclena it
' For Each entry In mainDictionary
' If entry <> typeIdentifier Then
' Set mainDictionary(entry) = YAMLCleaner(mainDictionary(entry))
' End If
' Next entry
' End If
'
' For Each entry In mainDictionary
' If mainDictionary(typeIdentifier) = "Dictionary" And mainDictionary(entry)(typeIdentifier) <> "Dictionary" And entry <> typeIdentifier And entry <> selfIdentifier Then
' Debug.Print "processing " & entry & " which is " & mainDictionary(entry)(typeIdentifier)
' If IsObject(mainDictionary(entry)(selfIdentifier)) Then
' Set mainDictionary(entry) = mainDictionary(entry)(selfIdentifier)
' Else
' mainDictionary(entry) = mainDictionary(entry)(selfIdentifier)
' End If
' End If
' Next entry
'
' ' destroy type identifier?
' Set YAMLCleaner = mainDictionary
'End Function
Private Function GetFileAsString(filePath As String) As String
' Dim fileContent As String
Dim line As String
Dim fileNumber As Integer
'filePath = "\\Mac\iCloud\Development\cv\cv.yml"
fileNumber = FreeFile()
Open filePath For Input As fileNumber
Do While Not EOF(fileNumber)
Line Input #fileNumber, line
GetFileAsString = GetFileAsString & line & vbCrLf
Loop
End Function
Public Property Let path(thePath As String)
yamlPath = thePath
End Property
Public Property Get path() As String
path = yamlPath
End Property
Public Property Get props() As Dictionary
Set props = GetYAMLAsDictionary(GetFileAsString(yamlPath))
End Property
' YAML Indexer Pseudocode [implement later]
' =====
' function index(string theIndex) {
' Variant[] mainArray = theIndex.split(".");
' Dictionary mainDictionary = yamlProps;
' for each entry in mainArray {
' if entry is {
'
' ....
'Public Sub TryFunction()
' Dim fileString As String: fileString = GetFileAsString("\\Mac\iCloud\Development\cv\cv.yml")
' Dim yamlLayer As Object
' Set yamlLayer = GetYAMLLayerAsDictionary(fileString)
' Dim yamlWholeDict As Object: Set yamlWholeDict = GetYAMLAsDictionary(fileString)
' 'Debug.Print JsonConverter.ConvertToJson(yamlWholeDict, 2, 2)
' Dim yamlCleanDict As Object: Set yamlCleanDict = YAMLCleaner(yamlWholeDict)
' Debug.Print JsonConverter.ConvertToJson(yamlCleanDict, 2, 2)
'End Sub
@@ -1,0 +1,58 @@
Attribute VB_Name = "NewMacros"
Option Explicit
Sub Macro1()
Attribute Macro1.VB_ProcData.VB_Invoke_Func = "Normal.NewMacros.Macro1"
'
' Macro1 Macro
'
'
Selection.Style = ActiveDocument.Styles("Title")
Selection.TypeText Text:="This is a title"
Selection.TypeParagraph
Selection.TypeParagraph
Selection.Style = ActiveDocument.Styles("Heading 1")
Selection.TypeText Text:="Heading 1"
Selection.TypeParagraph
Selection.Style = ActiveDocument.Styles("No Spacing")
Selection.TypeText Text:="Whatababab"
Selection.TypeParagraph
With ListGalleries(wdBulletGallery).ListTemplates(1).ListLevels(1)
.NumberFormat = ChrW(61623)
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = InchesToPoints(0.25)
.Alignment = wdListLevelAlignLeft
.TextPosition = InchesToPoints(0.5)
.TabPosition = wdUndefined
.ResetOnHigher = 0
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Symbol"
End With
.LinkedStyle = ""
End With
ListGalleries(wdBulletGallery).ListTemplates(1).Name = ""
Selection.Range.ListFormat.ApplyListTemplateWithLevel ListTemplate:= _
ListGalleries(wdBulletGallery).ListTemplates(1), ContinuePreviousList:= _
False, ApplyTo:=wdListApplyToWholeList, DefaultListBehavior:= _
wdWord10ListBehavior
Selection.TypeText Text:="This is a bulletted list created manually"
Selection.EscapeKey
End Sub
@@ -1,0 +1,313 @@
Attribute VB_Name = "YAMLParser_old"
Option Explicit
Const yamlPath As String = "\\Mac\iCloud\Development\cv\cv.yml"
Const selfIdentifier As String = "___self___"
Const typeIdentifier As String = "___type___"
Const errIdentifier As String = "YAML Error in " & yamlPath
Const malformedTypeError As String = "Malformed YAML code at " & yamlPath & " on line "
Const malformedYAMLError As String = "Malformed type error - this is a problem with the internal dictionary"
Function RemoveEmptyStrings(arr() As String) As String()
Dim tempArray() As String
Dim i As Integer, j As Integer: j = 0
ReDim tempArray(LBound(arr) To UBound(arr))
j = 0
For i = LBound(arr) To UBound(arr)
If Len(arr(i)) > 0 Then
tempArray(j) = arr(i)
j = j + 1
End If
Next i
ReDim Preserve tempArray(0 To j - 1)
RemoveEmptyStrings = tempArray
End Function
Function RegexMatch(inputString As String, pattern As String, Optional isGlobal As Boolean = True) As Boolean
' checks for regex match without instantiating 80 gazillion objects
' parameters
' isGlobal: whether the regex check is global
Dim Regex As Object: Set Regex = CreateObject("VBScript.RegExp")
Regex.pattern = pattern
Regex.Global = isGlobal
RegexMatch = Regex.Test(inputString)
End Function
Function RegexSplit(inputString As String, pattern As String, Optional onlyFirst As Boolean = False, Optional splitBefore As Boolean = False) As String()
' splits array at any pattern that matches a regex
' parameters
' onlyFirst: if true, only splits the first instance of the match, creating an array of length 2
' splitBefore: if true, preserves the actual instance of the match
Dim Regex As Object: Set Regex = CreateObject("VBScript.RegExp")
Dim matches As Object
Dim match As Object
Dim splitParts() As String: ReDim splitParts(0 To 0)
Dim pos As Integer
Dim lastPos As Integer: lastPos = 1
Dim i As Integer: i = 0
' set regex flags
Regex.Global = True
Regex.IgnoreCase = False
Regex.pattern = pattern
Set matches = Regex.Execute(inputString)
' lastPos = 1
' i = 0
For Each match In matches
pos = match.FirstIndex + 1
ReDim Preserve splitParts(i)
splitParts(i) = Mid(inputString, lastPos, pos - lastPos)
If splitBefore Then
lastPos = pos
Else
lastPos = pos + Len(match.Value)
End If
i = i + 1
If onlyFirst Then Exit For
Next match
If lastPos <= Len(inputString) Then
ReDim Preserve splitParts(i)
splitParts(i) = Mid(inputString, lastPos)
End If
' retvrn
RegexSplit = RemoveEmptyStrings(splitParts)
End Function
Function RegexSubstitute(inputString As String, pattern As String, Optional substitution As String = "")
' does what it says on the tin
Dim Regex As Object: Set Regex = CreateObject("VBScript.RegExp")
Regex.pattern = pattern
Regex.IgnoreCase = False
Regex.Global = True
RegexSubstitute = Regex.Replace(inputString, substitution)
End Function
' YAML Layer Parser Pseudocode
' ====
' function GetYAMLLayerAsCollection(String fromYAML) {
' Collection mainDictionary = New Collection();
' if (fromYAML.containsRegex(/\n[A-Za-z]/)) {
' // is a dictionary
' String[] temporaryArray = fromYAML.split(/\n[A-Za-z]/);
' for each x in temporaryArray {
' x.splitByFirstInstanceOf(':\n');
' x[1].replaceAllInstancesOf('
' mainDictionary.add(x[0], x[1]);
' }
' } else if (fromYAML.containsRegex(/\n-/)) {
' // if array, process the array and return it as "self"
' String[] temporaryArray = fromYAML.splitBy('\n-');
' for each x in temporaryArray {
' x.removeAllInstancesOf('\n- ');
' x.replaceAllInstancesOf('\n ', '\n');
' mainDictionary.add("self", temporaryArray);
' }
' } else if (fromYAML.startsWith('"')) {
' mainDictionary.add("self", removeQuotes(fromYAML));
' } else {
' MsgBox("Processing error: neither array, dictionary, nor string");
' }
' }
Function GetYAMLLayerAsDictionary(fromYAML As String) As Dictionary
Dim mainDictionary As Dictionary: Set mainDictionary = New Dictionary
' create regex objects to test for dict, array, and string
'Dim regEx_dict As Object: Set regEx_dict = CreateObject("VBScript.RegExp")
'Dim regEx_arry As Object: Set regEx_arry = CreateObject("VBScript.RegExp")
'Dim regEx_strn As Object: Set regEx_strn = CreateObject("VBScript.RegExp")
'regEx_dict.Global = True: regEx_dict.Pattern = "\n[A-Za-z]"
'regEx_arry.Global = True: regEx_arry.Pattern = "\n-\s"
'regEx_strn.Global = False: regEx_strn.Pattern = "^\s*""(.*?)""\s*$"
Dim parts() As String
If RegexMatch(fromYAML, "(?:\n|\^)\w+:", True) Then
' is a dictionary
parts = RegexSplit(fromYAML, "\n\w+:", False, True)
Dim part As Variant ' not sure why it can't be as string but whatever billy gates
Call mainDictionary.Add(typeIdentifier, "Dictionary") ' identify as dict
For Each part In parts
Dim keyValue() As String: keyValue = RegexSplit(CStr(part), ":\s", True)
' trim trailing \n from category
If UBound(keyValue) > 0 Then
keyValue(0) = RegexSubstitute(keyValue(0), "^\n+")
' trim 2 spaces off of each line if they're there
keyValue(1) = RegexSubstitute(keyValue(1), "^\s{2}")
keyValue(1) = RegexSubstitute(keyValue(1), "\n\s{2}", vbLf)
Call mainDictionary.Add(keyValue(0), keyValue(1))
End If
Next part
ElseIf RegexMatch(fromYAML, "^-\s", True) Then
' is an array
Call mainDictionary.Add(typeIdentifier, "Array")
parts = RegexSplit(fromYAML, "(^|\n)-\s", False)
Dim i As Integer
For i = LBound(parts) To UBound(parts)
parts(i) = RegexSubstitute(parts(i), "\n\s{2}", vbLf)
Next i
Call mainDictionary.Add(selfIdentifier, parts)
ElseIf RegexMatch(fromYAML, "^\s*""(.*?)""\s*$", True) Then
' is a string
Call mainDictionary.Add(typeIdentifier, "String")
Call mainDictionary.Add(selfIdentifier, RegexSubstitute(fromYAML, """", ""))
Else
Call mainDictionary.Add(selfIdentifier, "")
Debug.Print _
"Neither array, dictionary, nor string:" & _
vbCrLf & vbCrLf & fromYAML & vbCrLf & vbCrLf & _
"Make sure all strings are enclosed in double quotes." ', _
'vbOKOnly, "YAML Error")
End If
Set GetYAMLLayerAsDictionary = mainDictionary
End Function
' YAML Traverser Pseudocode
' ===
'
' function TraverseYAML(String fromYAML) {
' Dictionary mainDictionary = GetYAMLLayerAsDictionary(fromYAML);
' if mainDictionary.___type___ = "Dictionary" {
' for each entry in mainDictionary {
' TraverseYAML(entry)
' }
' return mainDictionary;
' } else if mainDictionary.___type___ = "Array" {
' for each entry in mainDictionary.___self___ {
' TraverseYAML(entry)
' }
' return mainDictionary;
' } else if mainDictionary.___type___ = "String" {
' return mainDictionary;
' } else {
' MsgBox("Internal YAML Error")
' }
' }
Function GetYAMLAsDictionary(fromYAML As String) As Dictionary
Dim mainDictionary As Object: Set mainDictionary = GetYAMLLayerAsDictionary(fromYAML)
Dim entry As Variant
If mainDictionary(typeIdentifier) = "Dictionary" Then
For Each entry In mainDictionary
Debug.Print "=== PROCESSING DICTIONARY ENTRY ==="
Debug.Print entry & " => " & mainDictionary(entry)
If entry <> typeIdentifier And entry <> selfIdentifier Then
Set mainDictionary(entry) = GetYAMLAsDictionary(mainDictionary(entry))
End If
Next entry
ElseIf mainDictionary(typeIdentifier) = "Array" Then
Dim i As Integer
Dim subArray() As Object
For i = LBound(mainDictionary(selfIdentifier)) To UBound(mainDictionary(selfIdentifier))
Debug.Print "=== PROCESSING ARRAY ENTRY ==="
Debug.Print mainDictionary(selfIdentifier)(i)
'Set subDictionary = GetYAMLAsDictionary(mainDictionary(selfIdentifier)(i))
'Set mainDictionary(selfIdentifier)(i) = subDictionary
ReDim Preserve subArray(i)
Set subArray(i) = GetYAMLAsDictionary(CStr(mainDictionary(selfIdentifier)(i)))
Next i
mainDictionary(selfIdentifier) = subArray
ElseIf mainDictionary(typeIdentifier) <> "String" Then
Debug.Print malformedTypeError ', vbOKOnly, errIdentifier)
End If
Set GetYAMLAsDictionary = mainDictionary
End Function
' YAML Cleaner Pseudocode
' =====
' function YAMLCleaner(Dictionary mainDictionary) {
' for each entry in mainDictionary {
' if entry(typeIdentifier) == "Dictionary" {
' for each secondOrderEntry in entry {
' YAMLCleaner(secondOrderEntry)
' }
' } else if entry(typeIdentifier) == "Array" {
' for each secondOrderEntry in entry(selfIdentifier) {
' YAMLCleaner(secondOrderEntry)
' }
' }
' if entry(typeIdentifier) != "Dictionary" {
' mainDictionary(entry) = mainDictionary(entry)(selfIdentifier)
' }
' }
' return mainDictionary;
' }
Function YAMLCleaner(mainDictionary As Dictionary) As Dictionary
Dim entry As Variant
If mainDictionary(typeIdentifier) = "Array" Then ' go through array and yamlclean it
Dim i As Integer
Debug.Print JsonConverter.ConvertToJson(mainDictionary)
For i = LBound(mainDictionary(selfIdentifier)) To UBound(mainDictionary(selfIdentifier))
'If IsObject(mainDictionary(selfIdentifier)(i)) Then
'Set mainDictionary(selfIdentifier)(i) = YAMLCleaner(mainDictionary(selfIdentifier)(i))
'Else
' Debug.Print "encountered non-object"
'End If
Next i
End If
If mainDictionary(typeIdentifier) = "Dictionary" Then 'iterate through dict and yamlclena it
For Each entry In mainDictionary
If entry <> typeIdentifier Then
Set mainDictionary(entry) = YAMLCleaner(mainDictionary(entry))
End If
Next entry
End If
For Each entry In mainDictionary
If mainDictionary(typeIdentifier) = "Dictionary" And mainDictionary(entry)(typeIdentifier) <> "Dictionary" And entry <> typeIdentifier And entry <> selfIdentifier Then
Debug.Print "processing " & entry & " which is " & mainDictionary(entry)(typeIdentifier)
If IsObject(mainDictionary(entry)(selfIdentifier)) Then
Set mainDictionary(entry) = mainDictionary(entry)(selfIdentifier)
Else
mainDictionary(entry) = mainDictionary(entry)(selfIdentifier)
End If
End If
Next entry
' destroy type identifier?
Set YAMLCleaner = mainDictionary
End Function
Function GetFileAsString(filePath As String) As String
' Dim fileContent As String
Dim line As String
Dim fileNumber As Integer
'filePath = "\\Mac\iCloud\Development\cv\cv.yml"
fileNumber = FreeFile()
Open filePath For Input As fileNumber
Do While Not EOF(fileNumber)
Line Input #fileNumber, line
GetFileAsString = GetFileAsString & line & vbCrLf
Loop
End Function
Sub TryFunction()
Dim fileString As String: fileString = GetFileAsString("\\Mac\iCloud\Development\cv\cv.yml")
Dim yamlLayer As Object
Set yamlLayer = GetYAMLLayerAsDictionary(fileString)
Dim yamlWholeDict As Object: Set yamlWholeDict = GetYAMLAsDictionary(fileString)
'Debug.Print JsonConverter.ConvertToJson(yamlWholeDict, 2, 2)
Dim yamlCleanDict As Object: Set yamlCleanDict = YAMLCleaner(yamlWholeDict)
Debug.Print JsonConverter.ConvertToJson(yamlCleanDict, 2, 2)
End Sub
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps" Target="itemProps1.xml"/></Relationships>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/><Relationship Id="rId7" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="theme/theme1.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering" Target="numbering.xml"/><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml" Target="../customXml/item1.xml"/><Relationship Id="rId6" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable" Target="fontTable.xml"/><Relationship Id="rId5" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings" Target="webSettings.xml"/><Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml"/></Relationships>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image1.png"/></Relationships>
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/attachedTemplate" Target="file:///\\Mac\iCloud\Development\cv\cv.dotx" TargetMode="External"/></Relationships>
Binary files /dev/null and a/contents/word/media/image1.png differ
@@ -1,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office 2013 - 2022 Theme"><a:themeElements><a:clrScheme name="Office 2013 - 2022"><a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1><a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="44546A"/></a:dk2><a:lt2><a:srgbClr val="E7E6E6"/></a:lt2><a:accent1><a:srgbClr val="4472C4"/></a:accent1><a:accent2><a:srgbClr val="ED7D31"/></a:accent2><a:accent3><a:srgbClr val="A5A5A5"/></a:accent3><a:accent4><a:srgbClr val="FFC000"/></a:accent4><a:accent5><a:srgbClr val="5B9BD5"/></a:accent5><a:accent6><a:srgbClr val="70AD47"/></a:accent6><a:hlink><a:srgbClr val="0563C1"/></a:hlink><a:folHlink><a:srgbClr val="954F72"/></a:folHlink></a:clrScheme><a:fontScheme name="Office 2013 - 2022"><a:majorFont><a:latin typeface="Calibri Light" panose="020F0302020204030204"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="游ゴシック Light"/><a:font script="Hang" typeface="맑은 고딕"/><a:font script="Hans" typeface="等线 Light"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Times New Roman"/><a:font script="Hebr" typeface="Times New Roman"/><a:font script="Thai" typeface="Angsana New"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="MoolBoran"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Times New Roman"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/><a:font script="Armn" typeface="Arial"/><a:font script="Bugi" typeface="Leelawadee UI"/><a:font script="Bopo" typeface="Microsoft JhengHei"/><a:font script="Java" typeface="Javanese Text"/><a:font script="Lisu" typeface="Segoe UI"/><a:font script="Mymr" typeface="Myanmar Text"/><a:font script="Nkoo" typeface="Ebrima"/><a:font script="Olck" typeface="Nirmala UI"/><a:font script="Osma" typeface="Ebrima"/><a:font script="Phag" typeface="Phagspa"/><a:font script="Syrn" typeface="Estrangelo Edessa"/><a:font script="Syrj" typeface="Estrangelo Edessa"/><a:font script="Syre" typeface="Estrangelo Edessa"/><a:font script="Sora" typeface="Nirmala UI"/><a:font script="Tale" typeface="Microsoft Tai Le"/><a:font script="Talu" typeface="Microsoft New Tai Lue"/><a:font script="Tfng" typeface="Ebrima"/></a:majorFont><a:minorFont><a:latin typeface="Calibri" panose="020F0502020204030204"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="游明朝"/><a:font script="Hang" typeface="맑은 고딕"/><a:font script="Hans" typeface="等线"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Arial"/><a:font script="Hebr" typeface="Arial"/><a:font script="Thai" typeface="Cordia New"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="DaunPenh"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Arial"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/><a:font script="Armn" typeface="Arial"/><a:font script="Bugi" typeface="Leelawadee UI"/><a:font script="Bopo" typeface="Microsoft JhengHei"/><a:font script="Java" typeface="Javanese Text"/><a:font script="Lisu" typeface="Segoe UI"/><a:font script="Mymr" typeface="Myanmar Text"/><a:font script="Nkoo" typeface="Ebrima"/><a:font script="Olck" typeface="Nirmala UI"/><a:font script="Osma" typeface="Ebrima"/><a:font script="Phag" typeface="Phagspa"/><a:font script="Syrn" typeface="Estrangelo Edessa"/><a:font script="Syrj" typeface="Estrangelo Edessa"/><a:font script="Syre" typeface="Estrangelo Edessa"/><a:font script="Sora" typeface="Nirmala UI"/><a:font script="Tale" typeface="Microsoft Tai Le"/><a:font script="Talu" typeface="Microsoft New Tai Lue"/><a:font script="Tfng" typeface="Ebrima"/></a:minorFont></a:fontScheme><a:fmtScheme name="Office 2013 - 2022"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:lumMod val="110000"/><a:satMod val="105000"/><a:tint val="67000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:lumMod val="105000"/><a:satMod val="103000"/><a:tint val="73000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:lumMod val="105000"/><a:satMod val="109000"/><a:tint val="81000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:satMod val="103000"/><a:lumMod val="102000"/><a:tint val="94000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:satMod val="110000"/><a:lumMod val="100000"/><a:shade val="100000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:lumMod val="99000"/><a:satMod val="120000"/><a:shade val="78000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w="6350" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln><a:ln w="12700" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln><a:ln w="19050" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="57150" dist="19050" dir="5400000" algn="ctr" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="63000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:solidFill><a:schemeClr val="phClr"><a:tint val="95000"/><a:satMod val="170000"/></a:schemeClr></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="93000"/><a:satMod val="150000"/><a:shade val="98000"/><a:lumMod val="102000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:tint val="98000"/><a:satMod val="130000"/><a:shade val="90000"/><a:lumMod val="103000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="63000"/><a:satMod val="120000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults/><a:extraClrSchemeLst/><a:extLst><a:ext uri="{05A4C25C-085E-4340-85A3-A5531E510DB2}"><thm15:themeFamily xmlns:thm15="http://schemas.microsoft.com/office/thememl/2012/main" name="Office 2013 - 2022 Theme" id="{62F939B6-93AF-4DB8-9C6B-D6C7DFDC589F}" vid="{4A3C46E8-61CC-4603-A589-7422A47A8E4A}"/></a:ext></a:extLst></a:theme>