Добавлена объективка (справка) Бойко К.С. в форматах md, docx, pdf
This commit is contained in:
1 parent
d7e3a6b345
commit
74e48aafc3
5 files changed
+692
No files matched your search
@@ -0,0 +1,262 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""Generate objectivka (spravka) for Бойко Кирилл Сергеевич in .md, .docx, .pdf."""
|
||||
import os
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding="utf-8")
|
||||
|
||||
from docx import Document
|
||||
from docx.shared import Pt, Cm, RGBColor
|
||||
from docx.enum.text import WD_ALIGN_PARAGRAPH
|
||||
|
||||
from reportlab.lib.pagesizes import A4
|
||||
from reportlab.lib.units import cm
|
||||
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
|
||||
from reportlab.lib.enums import TA_CENTER
|
||||
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle, Image
|
||||
from reportlab.pdfbase import pdfmetrics
|
||||
from reportlab.pdfbase.ttfonts import TTFont
|
||||
|
||||
OUT_DIR = r"C:\python\resume"
|
||||
PHOTO = os.path.join(OUT_DIR, "dca7a868-65c0-422e-be26-06a5f2564cca.jfif")
|
||||
MD_OUT = os.path.join(OUT_DIR, "Объективка_Бойко_Кирилл_Сергеевич.md")
|
||||
DOCX_OUT = os.path.join(OUT_DIR, "Объективка_Бойко_Кирилл_Сергеевич.docx")
|
||||
PDF_OUT = os.path.join(OUT_DIR, "Объективка_Бойко_Кирилл_Сергеевич.pdf")
|
||||
|
||||
FIO = "БОЙКО КИРИЛЛ СЕРГЕЕВИЧ"
|
||||
POSITION = ("Соучредитель IT-стартапа ITGuild; Председатель Комитета по предпринимательству "
|
||||
"и экономической грамотности молодежи Молодежного Парламента Донецкой Народной Республики")
|
||||
BIRTH_DATE = "18 декабря 1989 г."
|
||||
BIRTH_PLACE = "г. Донецк, Донецкая область."
|
||||
RESIDENCE = "г. Донецк, пр. Театральный, д. 5"
|
||||
|
||||
EDUCATION = [
|
||||
"Донецкий Национальный Технический Университет, экономический факультет, кафедра хозяйственного права, специальность «Менеджмент организаций» — бакалавр. Период обучения: 2008-2012 гг.",
|
||||
"Донецкий Национальный Технический Университет, экономический факультет, кафедра «Управления персоналом и Экономика труда», специальность «Управление персоналом и экономика труда» — магистр. Период обучения: 2012-2014 гг.",
|
||||
"Курсы, тренинги: «Старт бизнеса», «Школа предпринимательства 2.0. Перезагрузка»; обучение в «Школе 21» (в настоящее время).",
|
||||
]
|
||||
DEGREE = "не имеет"
|
||||
AWARDS = [
|
||||
"Благодарность Акселератора роста малого бизнеса (Луганская Народная Республика) — за высокий профессионализм, поддержку и наставничество;",
|
||||
"Благодарность Акселератора роста малого бизнеса — за активную поддержку молодежных инициатив и вклад в программу развития молодежных проектов Запорожской области;",
|
||||
"Сертификат члена Общероссийской общественной организации малого и среднего предпринимательства «ОПОРА РОССИИ» в Донецкой Народной Республике (№ 0002/2022);",
|
||||
"Сертификат за успешное прохождение заданий первого блока дистанционного этапа конкурса управленцев «Лидеры России» (2021 г.);",
|
||||
"Сертификат участника третьей флагманской встречи Клуба молодых предпринимателей Росмолодёжь.Бизнес (2024 г.);",
|
||||
"Сертификат о прохождении курса «Старт бизнеса» «Школы предпринимательства 2.0. Перезагрузка»;",
|
||||
"Сертификат Акселератора роста малого бизнеса об успешной защите итогового бизнес-проекта;",
|
||||
"Сертификат участника хакатона (Народная дружина В.А. Тараненко);",
|
||||
"Благодарственное письмо Росмолодёжь.Предпринимай — за активное участие и неоценимый вклад в развитие Сообщества молодых предпринимателей (Москва, 2025 г.);",
|
||||
"Благодарственное письмо Росмолодёжь.Предпринимай — члену региональной команды Донецкой Народной Республики Южного федерального округа (2025 г.);",
|
||||
"Благодарственное письмо за участие в качестве эксперта всероссийского форума «Амур»;",
|
||||
"Благодарственное письмо Министерства молодежной политики Донецкой Народной Республики — за высокий профессионализм, значительный личный вклад и добросовестный труд в области молодежной политики (2025 г.);",
|
||||
"Благодарственное письмо программы «Я в деле» — за поддержку и активное сотрудничество в повышении предпринимательской грамотности студентов (2026 г.);",
|
||||
"Награда за участие в полуфинале кадрового конкурса «Лидеры Возрождения. Донецкая Народная Республика».",
|
||||
]
|
||||
PARTY = "не имеет"
|
||||
FAMILY = "женат, детей не имеет"
|
||||
|
||||
WORK = [
|
||||
("2014 - н/вр.", "Предпринимательская деятельность в сфере информационных технологий"),
|
||||
("2019 - н/вр.", "Владелец интернет-портала для поиска работы Rabota Today (rabota.today)"),
|
||||
("2022 - н/вр.", "Соучредитель IT-стартапа ITGuild (itguild.info)"),
|
||||
("2022 - н/вр.", "Председатель Комитета «Информационных Технологий и Автоматизации Бизнеса» в ОО «ОПОРА РОССИИ»"),
|
||||
("2023 - н/вр.", "Лидер «Росмолодежь.Предпринимай» в Донецкой Народной Республике"),
|
||||
("2025 - н/вр.", "Председатель Комитета по предпринимательству и экономической грамотности молодежи Молодежного Парламента Донецкой Народной Республики"),
|
||||
("2025 - н/вр.", "Наставник проекта «Росмолодежь.Предпринимай»"),
|
||||
("2026 - н/вр.", "Руководитель ИТ-сообщества Донбасса"),
|
||||
]
|
||||
|
||||
|
||||
def build_md():
|
||||
lines = []
|
||||
lines.append(f"# СПРАВКА\n")
|
||||
lines.append(f"## {FIO}\n")
|
||||
lines.append(f"**Должность:** {POSITION}\n")
|
||||
lines.append(f"**Дата рождения:** {BIRTH_DATE}")
|
||||
lines.append(f"**Место рождения:** {BIRTH_PLACE}")
|
||||
lines.append(f"**Место жительства:** {RESIDENCE}\n")
|
||||
lines.append("**Образование:** высшее:")
|
||||
for e in EDUCATION:
|
||||
lines.append(f"- {e}")
|
||||
lines.append("")
|
||||
lines.append(f"**Учёная степень:** {DEGREE}\n")
|
||||
lines.append("**Награды, поощрения:**")
|
||||
for i, a in enumerate(AWARDS, 1):
|
||||
lines.append(f"{i}. {a}")
|
||||
lines.append("")
|
||||
lines.append(f"**Партийная принадлежность:** {PARTY}")
|
||||
lines.append(f"**Семейное положение:** {FAMILY}\n")
|
||||
lines.append("## Трудовая деятельность\n")
|
||||
for period, pos in WORK:
|
||||
lines.append(f"- **{period}** — {pos}")
|
||||
with open(MD_OUT, "w", encoding="utf-8") as f:
|
||||
f.write("\n".join(lines) + "\n")
|
||||
print("MD saved:", MD_OUT)
|
||||
|
||||
|
||||
def build_docx():
|
||||
doc = Document()
|
||||
style = doc.styles["Normal"]
|
||||
style.font.name = "Times New Roman"
|
||||
style.font.size = Pt(12)
|
||||
for section in doc.sections:
|
||||
section.top_margin = Cm(1.5)
|
||||
section.bottom_margin = Cm(1.5)
|
||||
section.left_margin = Cm(2)
|
||||
section.right_margin = Cm(1.5)
|
||||
|
||||
# Header table: photo + info
|
||||
t = doc.add_table(rows=1, cols=2)
|
||||
t.autofit = False
|
||||
t.columns[0].width = Cm(4)
|
||||
t.columns[1].width = Cm(12.5)
|
||||
photo_cell = t.cell(0, 0)
|
||||
p = photo_cell.paragraphs[0]
|
||||
if os.path.exists(PHOTO):
|
||||
p.add_run().add_picture(PHOTO, width=Cm(3.2))
|
||||
info_cell = t.cell(0, 1)
|
||||
def add_line(cell, text, bold=False, size=12, center=False, first=False):
|
||||
para = cell.paragraphs[0] if first else cell.add_paragraph()
|
||||
if center:
|
||||
para.alignment = WD_ALIGN_PARAGRAPH.CENTER
|
||||
r = para.add_run(text)
|
||||
r.bold = bold
|
||||
r.font.size = Pt(size)
|
||||
return para
|
||||
add_line(info_cell, "СПРАВКА", bold=True, size=14, center=True, first=True)
|
||||
add_line(info_cell, FIO, bold=True, size=14, center=True)
|
||||
add_line(info_cell, "")
|
||||
add_line(info_cell, f"Должность: {POSITION}")
|
||||
add_line(info_cell, f"Дата рождения: {BIRTH_DATE}")
|
||||
add_line(info_cell, f"Место рождения: {BIRTH_PLACE}")
|
||||
add_line(info_cell, f"Место жительства: {RESIDENCE}")
|
||||
|
||||
doc.add_paragraph()
|
||||
|
||||
# Fields table
|
||||
ft = doc.add_table(rows=5, cols=2)
|
||||
ft.autofit = False
|
||||
ft.columns[0].width = Cm(4.5)
|
||||
ft.columns[1].width = Cm(12)
|
||||
def set_cell(cell, text, bold=False, first=True):
|
||||
para = cell.paragraphs[0]
|
||||
r = para.add_run(text)
|
||||
r.bold = bold
|
||||
r.font.size = Pt(12)
|
||||
def set_cell_multi(cell, items, numbered=False):
|
||||
first = True
|
||||
for i, item in enumerate(items, 1):
|
||||
para = cell.paragraphs[0] if first else cell.add_paragraph()
|
||||
first = False
|
||||
txt = f"{i}. {item}" if numbered else f"— {item}"
|
||||
r = para.add_run(txt)
|
||||
r.font.size = Pt(11)
|
||||
set_cell(ft.cell(0, 0), "Образование:", bold=True)
|
||||
set_cell_multi(ft.cell(0, 1), EDUCATION)
|
||||
set_cell(ft.cell(1, 0), "Учёная степень:", bold=True)
|
||||
set_cell(ft.cell(1, 1), DEGREE)
|
||||
set_cell(ft.cell(2, 0), "Награды, поощрения:", bold=True)
|
||||
set_cell_multi(ft.cell(2, 1), AWARDS, numbered=True)
|
||||
set_cell(ft.cell(3, 0), "Партийная принадлежность:", bold=True)
|
||||
set_cell(ft.cell(3, 1), PARTY)
|
||||
set_cell(ft.cell(4, 0), "Семейное положение:", bold=True)
|
||||
set_cell(ft.cell(4, 1), FAMILY)
|
||||
|
||||
# Work heading
|
||||
hp = doc.add_paragraph()
|
||||
hp.alignment = WD_ALIGN_PARAGRAPH.CENTER
|
||||
hr = hp.add_run("Трудовая деятельность")
|
||||
hr.bold = True
|
||||
hr.font.size = Pt(13)
|
||||
|
||||
# Work table
|
||||
wt = doc.add_table(rows=len(WORK), cols=2)
|
||||
wt.autofit = False
|
||||
wt.columns[0].width = Cm(4)
|
||||
wt.columns[1].width = Cm(12.5)
|
||||
for i, (period, pos) in enumerate(WORK):
|
||||
r0 = wt.cell(i, 0).paragraphs[0].add_run(period)
|
||||
r0.font.size = Pt(11)
|
||||
r1 = wt.cell(i, 1).paragraphs[0].add_run(pos)
|
||||
r1.font.size = Pt(11)
|
||||
|
||||
doc.save(DOCX_OUT)
|
||||
print("DOCX saved:", DOCX_OUT)
|
||||
|
||||
|
||||
def build_pdf():
|
||||
pdfmetrics.registerFont(TTFont("DejaVuSans", r"C:\Windows\Fonts\DejaVuSans.ttf"))
|
||||
pdfmetrics.registerFont(TTFont("DejaVuSans-Bold", r"C:\Windows\Fonts\DejaVuSans-Bold.ttf"))
|
||||
pdfmetrics.registerFontFamily("DejaVuSans", normal="DejaVuSans", bold="DejaVuSans-Bold")
|
||||
|
||||
styles = getSampleStyleSheet()
|
||||
title = ParagraphStyle("T", parent=styles["Normal"], fontName="DejaVuSans-Bold", fontSize=15, leading=19, alignment=TA_CENTER, spaceAfter=2)
|
||||
fio_st = ParagraphStyle("F", parent=styles["Normal"], fontName="DejaVuSans-Bold", fontSize=14, leading=18, alignment=TA_CENTER, spaceAfter=8)
|
||||
body = ParagraphStyle("B", parent=styles["Normal"], fontName="DejaVuSans", fontSize=10.5, leading=14, spaceAfter=3)
|
||||
lab = ParagraphStyle("L", parent=body, fontName="DejaVuSans-Bold")
|
||||
head = ParagraphStyle("H", parent=styles["Normal"], fontName="DejaVuSans-Bold", fontSize=13, leading=17, alignment=TA_CENTER, spaceBefore=8, spaceAfter=4)
|
||||
|
||||
doc = SimpleDocTemplate(PDF_OUT, pagesize=A4,
|
||||
leftMargin=2 * cm, rightMargin=1.5 * cm,
|
||||
topMargin=1.5 * cm, bottomMargin=1.5 * cm,
|
||||
title="Справка — Бойко Кирилл Сергеевич")
|
||||
story = []
|
||||
# Header table
|
||||
header_lines = [
|
||||
Paragraph("СПРАВКА", title),
|
||||
Paragraph(FIO, fio_st),
|
||||
Paragraph(f"<b>Должность:</b> {POSITION}", body),
|
||||
Paragraph(f"<b>Дата рождения:</b> {BIRTH_DATE}", body),
|
||||
Paragraph(f"<b>Место рождения:</b> {BIRTH_PLACE}", body),
|
||||
Paragraph(f"<b>Место жительства:</b> {RESIDENCE}", body),
|
||||
]
|
||||
photo = Image(PHOTO, width=3.2 * cm, height=4.3 * cm) if os.path.exists(PHOTO) else Paragraph("", body)
|
||||
header_tbl = Table([[photo, header_lines]], colWidths=[4 * cm, 13 * cm])
|
||||
header_tbl.setStyle(TableStyle([
|
||||
("VALIGN", (0, 0), (-1, -1), "TOP"),
|
||||
("LEFTPADDING", (0, 0), (-1, -1), 0),
|
||||
("RIGHTPADDING", (0, 0), (-1, -1), 0),
|
||||
]))
|
||||
story.append(header_tbl)
|
||||
story.append(Spacer(1, 10))
|
||||
|
||||
# Fields table rows
|
||||
edu_flow = [Paragraph(f"— {e}", ParagraphStyle("e", parent=body, fontSize=10)) for e in EDUCATION]
|
||||
awards_flow = [Paragraph(f"{i}. {a}", ParagraphStyle("a", parent=body, fontSize=10)) for i, a in enumerate(AWARDS, 1)]
|
||||
rows = [
|
||||
[Paragraph("Образование:", lab), edu_flow],
|
||||
[Paragraph("Учёная степень:", lab), Paragraph(DEGREE, body)],
|
||||
[Paragraph("Награды, поощрения:", lab), awards_flow],
|
||||
[Paragraph("Партийная принадлежность:", lab), Paragraph(PARTY, body)],
|
||||
[Paragraph("Семейное положение:", lab), Paragraph(FAMILY, body)],
|
||||
]
|
||||
fields_tbl = Table(rows, colWidths=[4.5 * cm, 12.5 * cm])
|
||||
fields_tbl.setStyle(TableStyle([
|
||||
("VALIGN", (0, 0), (-1, -1), "TOP"),
|
||||
("LEFTPADDING", (0, 0), (-1, -1), 2),
|
||||
("RIGHTPADDING", (0, 0), (-1, -1), 2),
|
||||
("TOPPADDING", (0, 0), (-1, -1), 3),
|
||||
("BOTTOMPADDING", (0, 0), (-1, -1), 3),
|
||||
]))
|
||||
story.append(fields_tbl)
|
||||
|
||||
story.append(Paragraph("Трудовая деятельность", head))
|
||||
work_rows = [[Paragraph(f"<b>{p}</b>", body), Paragraph(pos, body)] for p, pos in WORK]
|
||||
work_tbl = Table(work_rows, colWidths=[4 * cm, 13 * cm])
|
||||
work_tbl.setStyle(TableStyle([
|
||||
("VALIGN", (0, 0), (-1, -1), "TOP"),
|
||||
("LEFTPADDING", (0, 0), (-1, -1), 2),
|
||||
("RIGHTPADDING", (0, 0), (-1, -1), 2),
|
||||
("TOPPADDING", (0, 0), (-1, -1), 2),
|
||||
("BOTTOMPADDING", (0, 0), (-1, -1), 2),
|
||||
]))
|
||||
story.append(work_tbl)
|
||||
|
||||
doc.build(story)
|
||||
print("PDF saved:", PDF_OUT)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
build_md()
|
||||
build_docx()
|
||||
build_pdf()
|
||||
Binary file not shown.
@@ -0,0 +1,46 @@
|
||||
# СПРАВКА
|
||||
|
||||
## БОЙКО КИРИЛЛ СЕРГЕЕВИЧ
|
||||
|
||||
**Должность:** Соучредитель IT-стартапа ITGuild; Председатель Комитета по предпринимательству и экономической грамотности молодежи Молодежного Парламента Донецкой Народной Республики
|
||||
|
||||
**Дата рождения:** 18 декабря 1989 г.
|
||||
**Место рождения:** г. Донецк, Донецкая область.
|
||||
**Место жительства:** г. Донецк, пр. Театральный, д. 5
|
||||
|
||||
**Образование:** высшее:
|
||||
- Донецкий Национальный Технический Университет, экономический факультет, кафедра хозяйственного права, специальность «Менеджмент организаций» — бакалавр. Период обучения: 2008-2012 гг.
|
||||
- Донецкий Национальный Технический Университет, экономический факультет, кафедра «Управления персоналом и Экономика труда», специальность «Управление персоналом и экономика труда» — магистр. Период обучения: 2012-2014 гг.
|
||||
- Курсы, тренинги: «Старт бизнеса», «Школа предпринимательства 2.0. Перезагрузка»; обучение в «Школе 21» (в настоящее время).
|
||||
|
||||
**Учёная степень:** не имеет
|
||||
|
||||
**Награды, поощрения:**
|
||||
1. Благодарность Акселератора роста малого бизнеса (Луганская Народная Республика) — за высокий профессионализм, поддержку и наставничество;
|
||||
2. Благодарность Акселератора роста малого бизнеса — за активную поддержку молодежных инициатив и вклад в программу развития молодежных проектов Запорожской области;
|
||||
3. Сертификат члена Общероссийской общественной организации малого и среднего предпринимательства «ОПОРА РОССИИ» в Донецкой Народной Республике (№ 0002/2022);
|
||||
4. Сертификат за успешное прохождение заданий первого блока дистанционного этапа конкурса управленцев «Лидеры России» (2021 г.);
|
||||
5. Сертификат участника третьей флагманской встречи Клуба молодых предпринимателей Росмолодёжь.Бизнес (2024 г.);
|
||||
6. Сертификат о прохождении курса «Старт бизнеса» «Школы предпринимательства 2.0. Перезагрузка»;
|
||||
7. Сертификат Акселератора роста малого бизнеса об успешной защите итогового бизнес-проекта;
|
||||
8. Сертификат участника хакатона (Народная дружина В.А. Тараненко);
|
||||
9. Благодарственное письмо Росмолодёжь.Предпринимай — за активное участие и неоценимый вклад в развитие Сообщества молодых предпринимателей (Москва, 2025 г.);
|
||||
10. Благодарственное письмо Росмолодёжь.Предпринимай — члену региональной команды Донецкой Народной Республики Южного федерального округа (2025 г.);
|
||||
11. Благодарственное письмо за участие в качестве эксперта всероссийского форума «Амур»;
|
||||
12. Благодарственное письмо Министерства молодежной политики Донецкой Народной Республики — за высокий профессионализм, значительный личный вклад и добросовестный труд в области молодежной политики (2025 г.);
|
||||
13. Благодарственное письмо программы «Я в деле» — за поддержку и активное сотрудничество в повышении предпринимательской грамотности студентов (2026 г.);
|
||||
14. Награда за участие в полуфинале кадрового конкурса «Лидеры Возрождения. Донецкая Народная Республика».
|
||||
|
||||
**Партийная принадлежность:** не имеет
|
||||
**Семейное положение:** женат, детей не имеет
|
||||
|
||||
## Трудовая деятельность
|
||||
|
||||
- **2014 - н/вр.** — Предпринимательская деятельность в сфере информационных технологий
|
||||
- **2019 - н/вр.** — Владелец интернет-портала для поиска работы Rabota Today (rabota.today)
|
||||
- **2022 - н/вр.** — Соучредитель IT-стартапа ITGuild (itguild.info)
|
||||
- **2022 - н/вр.** — Председатель Комитета «Информационных Технологий и Автоматизации Бизнеса» в ОО «ОПОРА РОССИИ»
|
||||
- **2023 - н/вр.** — Лидер «Росмолодежь.Предпринимай» в Донецкой Народной Республике
|
||||
- **2025 - н/вр.** — Председатель Комитета по предпринимательству и экономической грамотности молодежи Молодежного Парламента Донецкой Народной Республики
|
||||
- **2025 - н/вр.** — Наставник проекта «Росмолодежь.Предпринимай»
|
||||
- **2026 - н/вр.** — Руководитель ИТ-сообщества Донбасса
|
||||
@@ -0,0 +1,384 @@
|
||||
%PDF-1.4
|
||||
%“Œ‹ž ReportLab Generated PDF document (opensource)
|
||||
1 0 obj
|
||||
<<
|
||||
/F1 2 0 R /F2+0 10 0 R /F3+0 14 0 R
|
||||
>>
|
||||
endobj
|
||||
2 0 obj
|
||||
<<
|
||||
/BaseFont /Helvetica /Encoding /WinAnsiEncoding /Name /F1 /Subtype /Type1 /Type /Font
|
||||
>>
|
||||
endobj
|
||||
3 0 obj
|
||||
<<
|
||||
/BitsPerComponent 8 /ColorSpace /DeviceRGB /Filter [ /ASCII85Decode /DCTDecode ] /Height 1920 /Length 335050 /Subtype /Image
|
||||
/Type /XObject /Width 1440
|
||||
>>
|
||||
stream
|
||||
s4IA0!"_al8O`[\!WW3$!!*'"s4[N@!!<9(!s/N+!s8W.!s8Z0#R(A7"9f,;#6kGB$4I=N$4@4N%MB<^%M90Y$P4'b&JGin'bq,f(Dmo%(_RMt'`Znf6NI8l"9eo3#mCJ='FbEZ'GM5q'GM5q'GM5q'GM5q'GM5q'GM5q'GM5q'GM5q'GM5q'GM5q'GM5q'GM5q'GUSa!"fJAJ-DSJ!$VCD&HMqF!WU(<)uos?!s&E'!<<*"z!!!'&!!*3+"pYG6_uL_W!!<6&!<E3$zz!!*-'"9eu7s24mV!<<3&!<E3%zz!!!$$!sAc3#QNKX$j-J0!>,AF!!!&r:RLg(A*&-G=jJ>#1r0>pNAIu[0"cV(cP>(+I*Y>CFa@:n697c_/V?mc7lMN&148*7XB]T]1P78S'%<s6aL80%M`R&eD6^*T-<*[N#t'PK%P5I8b5`c]>_,CU\,\0LIVE<b"6DsQWZNQ$?F2h^LT@"5ZbK_.cO@OB0Y"]J'auSmN3H$dR`nrpR#?5IcRt?Db<DUsadm]MOZO2RONsApjD*=oB@,1q<nQX"F8@:mfOn"d>8^I<eVo)+;ULh3?U)2F-Ul3H;k9FO29iQcCui+Q97XT5-.@Er$3KRh.^"B!N0<+pOfF+O"hA);4dapJ"pCJD/V2)[FA)8>*'FGUQ=4^-8_/oK;Cq&_63B-;I^*uhD2&dIX%<UP$=^pg,?6!t'ceHO!(DJi0JSGiKR$?HlMS-8HV'KO-[5q'_@utcKhXQT[QR?t9(Y,l:<t<8p,K[J*j3e0+KC0jd*jlCpUSb:65*+Qg/uj?P5-!m88F[=QUX!<OcUN9;oKmoj_)aO]QprF_3.N+'Z,fFL7ra`'1K5jlQfrQk10UtSM"&f$s]Om*A0p+bZnWDP;q%#CuUdlSFN*!AZf2.b*OiR!c`p_8XZHCbep4rU<["oZ#qRN*4a1.:7d5*Tq*lFWiCXQ,aoX_$!19\I(HWRG@$g9WbXego3gXk>a[5=aCKfF@`ji@Uk8tq3@%$";_"1=:gl+N5tMYR@)V$[KNK#*QdR@`3L_aF+o4s#4/Ai\m[l0kmE):eU-_@M:X2.Q]Xn8M(<OoKP%p.VKs>)lOci:,a@IS=Pp?_\=C-GX/dHYtA)mQ8f??Qf#GVuT3YN'VFO2d!9VSlu\YYNBDWlAsqA=P75$O`Gnb/%lh9(_Ep"!s*UG?T3Rm:e-CR;#0\s&QD-_=tK=a)K6.-nFH:G^F-b?cLej':@'&G_+12Rt-a-Fm^;-Fq1E.Td((3Q-7NR>pr]Jp<)&j&L+WFp&FWC9BgrU1BT=WH9R?R^g?oQ0_LG6.-m,cjir+(9"7dX/!ttPn9uQBrk8^D.RB8FG3nT%Z=(f)0l!R<aA[2?!1d=a`dJ@lLrN"_#Ti&aTA<S)/q&r"!e5SThDFt8HMHbKS0qqD`uAhQS5-=\pWA,1Tq>:FLh:CPKhp<VgajiI/#=0V3bL;GdcVees91XKj9tC8-'i+V*e_/Q#r$W"U5!!))1O@UVqF1kD83NmCkg<GqV+kSTTE<lH>3p2qHC6bJ51odbqI8'_6mMP;eqjZI&a<00:@m])+VU]fo4`]?L#_T/3=97XhF9V`'Ys89;;,VN=E8-KR'$\>#A7XHQ8tk-IB[U5OV><2$Qt%"e\+\C4#]_mPaR-(@s]7EGh6EIq7cOH#.+`dj`d8LTa(WKE34P3E=BTN)Q6&2f![!oQ>m[gr?'3OY\G-.sLn@5g"-c@Rc!XSK9bjQes3F]?T=F%t-1rU>2u=K*DH>mdBX1-sEO.S(1C!@?/3+tcD!8-1%fc\$BRE7g\pJf]eo3ui_15=)b:R&l[`A?"fI%",`K[(5DZgWu4YIN?]!@`g5Q)_Y*XVR(i-!@2Dc=<+B<,_9u$/k9,u-dI*8Xn$kOIIkPVmk)T3_n*ULp%@T_6dt(V&FSO4c8@[1CS]asfh[6ed.@#n3B*`rriGqhkJqDu_,c#Kc2'Y;cgId5qC`p8d.TS>6NlUO8=(f.jLI?AP`8FBRA%Fck@NP5V8bf\OYd81+gWLBSh*_Q'UJu8%%tbgV0'K[X,0fc(A0lR`9rd5U(_Er:qT7L=h/(*Jh-muQrJ[i!!$CAF^_1s*LTnVMiA)-PpD$9=gVg-Yt^c(O(LR>ZIb:O8ESBh4*"WSMkle1<JV'F;FhK+!@34o5n&it,\3&@Op$pO/W44iIf'?-C@i7I*mA*:hVe.7Y<eimR_jf33`Kf05A!('D!(@MWK-lqfr0Yr[CIo%PWq,RCg-s49'&;^&d"4oQW=dFH64^dc2?ICNQ8Nar5Yl0\aSZ!rP(5Tl.W$2]EaP'CS#'o`s$bS5-I>s'sD%.mo>@feIFb;=h7^_O$bn7=_g/*SFdkp0;JZQVsuK)%_:+k:rP%Z9"?dJH<c2ukU7L-MdDA=)36,WN<r6G\4hTW_BCfSOU2Vo!`i#!Pc/#AZ:fff,#Ut]@bGIL5U2]I-L/ITqA%;QFGi>?L.NeE(;Ura6l7IYS</hA>4uI\QBm<#1b5Uu,UD['r9:VFCtc/[aiDiSGr=(]D)mNf)>%j0aY_:Cd30bTOoX%Zl:<?L$Bb`f!$mQG+A!\RR\mE!h9Qj23OG'X(>L[OqAom9MXEJWS*(3k>tismL+\6CUaPap4L)5B5BsS9ei(3%Fd1\8F';`gJQ.eiQVAKW!D-^D<mZ+6>N2@SkEF<Uno+:%=')#qnt/\JqPbBR-g.a9+.oU]9X!?D_1c"M:8"NpW&n;1O-o,iZ^99>(LI2I1&2l@G.@KWXSkL!rrB+hE#9@q[_]9#LS5$;=sp$%CO/oXP2U3,QW%%,DSoBuM:i1hN!q7jKQ\48B^g(UI\(gb$eDZ*p2lnZXKEA'&!Y*4U:_DLYBiAAkkZB"b5-S2FE>#u>$QN*5#7HkgE$MKoK>D^kZiI/r9fWJb/mRb"Yi;`UQQQ3!a:Zm\;biTD9GJ)U+MZV#V\)=*ee4V2JF&9k2Y]<b^21#k0oc4Zm#AcS<HY38/)70W?;V2WfdLJ'2h+)Ph_EW8J*4u.VbL7kO7Sp0&0Z$YFWG#+Snkql!h7n<u&keT513_B0@./I*SssQdY"SrV/DdBcF/<>;>I^jjfWR>8Ko-N0SC^F^S*4,6MD&5IL!+?\%>3EcZ$j:01)@eWt'$CM0'ce5n;0>%I4'gWOj@XQX[#SrWu5/D$7SL@T+YU?)c+C40CC%]!p4Ioi9%qH:BH[8$M2(q+j:cf;UMZe!X23^\ucaXV3uI/rppBq`X^[;*meXS@!JWKKQ0#mH\564t%&Herg*niX$ZY</HNRLcUj5'cVn0_O!Ck[ETN0=pYEIb5r?G'9rJ<;W:rj*cudbG1'Mj(TPVNS*69*FT$7hs!8\UiGdJ4RS94`5s?hKtT#T<!<J*dS3#-E>l8qfp7nq7XXi:#pb6WNi`gYUM?8M)78Pdl#rTNDF6=Pad^ZUngRYA8K^hH$A='^83%q&Op$p\&k:rD.S(1C!gb4Y4<++XBAJJj2kA@Z8nY!l^7$^U7_J2XV^AuZ\Xb?n(Y7\j>$j(84drkOq@N9"KMqO(g<#gR<\+XZA:h?<P3Tt`7M13+56:3OFcH1og,!ecpF\+/QeRR^d(LK=@.2.:$JE8ajS@\C`pC@OGkJ5CdIX;JCP0"Udo1P!kKqQ(jlr>IfelhY7jc?**Iao90;nIa/m>:?kLek,BkhCEOh/t4k]gf?<1\94K%7=G`g)1*$C[+fa=J2S#fX"Uch\/:Q$=oG@u][D$%]F,^[N<ACqY02cU4>LGX$Q63-ODA#9=-8H9JaEnK-<1jjh?:n[+>f_X6i?T!=Q)>!3sqoP6[0e)^0bITHtY`*3ua(_!["&2'oE6u(J7DAFXH,1o4L6%O\^cr%>JMFMGC\U#9s/ujWfe!X(D0&Ik`22PC"'m(iL+XDV:6.D!:83k9%,_8i_5p67rd,uGZp^1("4TS4q\^Ip4Il6Jsf;Y=oo<)ut4Xs7iFLaZ^[kFi,3-Jl0UOGqj;1h^]>B9!TBOY)OZ#le'X--Y>,a$1\A0fH%c2NLi/9LL:["gQ3CW"TBhp:;L2<FP<7V?:<.N.jW^FtB/3II9:1p26SMc<VK$W;.Qbe%ppkNCL!3qi2"llI_TYjh:2%aPZpoKHke[2loN#NjDj.!cOp]$`1PE\sl7=ptn)p>XfBkO^H-%$<PmBIg-XfX:g"48_dQkM0D$'@5lH(2Vms49rOR5A9+koQe+$K_Kp3ceF`o%(%siaS()3`VWG$RpQu>`R]Di$bO:HH;uRZB;5!HMR)s3DGOKejZBH9V4*&F275e\!EVQ>X>Ok6[iGV_6sFEiC*52e3@VA9DL,s?V`-g-eX'4"U$*B)0'L6LQPERqJ7'ji";29.805Ue@AXKtE^1KbjH@S01'1^934\qU%WB1s-/dV*Rd0`V3U(RtR5Nr'PG?FeV#F.gP0I8bIcg-4C2%cJj4fhT2Or04eX',ndc@Z"6V^2S8Ju[si3'1;\r?7\!&jZqc>_Bo%UUgdY:cVs>lHNCXF=5g[Oh$Pei2Xc>BaTL?=*Uec[@I_rHHQIJB[6MATM$SBc_-d])Fpq@BVnp`LdB0;blcNHTn>WF6V$,a0/NL;a:Nnk5u*MC7#oSl=j-gSN?=X$KlMVf)[._=&oQK@:f]I`pE6Wr;QbJk]e.u8kt@/?L,K*S[.tc1?e@UI/a1upV%#jISc-bWBCb&AaR,`\F_einbW0CB>SW"]Ite/E^s^)4T>D1ZhF?H7pFO*D,BI>ZWMsX@#9\9OG-tBC"nDd2CNkr7b,l4jLH[ok8TkejfW]=cd/q?A^ogTH5g?0c1!_>+VG\n=$^jUL!1&N06a&[]R6?Ul29Ipp5_N0J"Z$i^<l2'Oq(%b`.Skp:0Lchm)"nR_7_[5f9Tc^d-s1&GH7@NT/;S#1T2&3kjp4dm)cD*:lsDpD8it&4SgkYl$?UcFM/,/84o-n&kKk_,d(.OlKDPu`I/sP=7bGJ&]N0>Nh1_Dc0Oo4cJF@Zj/5;0Hl\\>=-E6*2ccOqm.l-Ho"RE.mJM]Line truncated
|
||||
endobj
|
||||
4 0 obj
|
||||
<<
|
||||
/Contents 18 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 17 0 R /Resources <<
|
||||
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] /XObject <<
|
||||
/FormXob.e18eb5fa35d753e8706691e0b6731117 3 0 R
|
||||
>>
|
||||
>> /Rotate 0 /Trans <<
|
||||
|
||||
>>
|
||||
/Type /Page
|
||||
>>
|
||||
endobj
|
||||
5 0 obj
|
||||
<<
|
||||
/Contents 19 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 17 0 R /Resources <<
|
||||
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
|
||||
>> /Rotate 0 /Trans <<
|
||||
|
||||
>>
|
||||
/Type /Page
|
||||
>>
|
||||
endobj
|
||||
6 0 obj
|
||||
<<
|
||||
/Contents 20 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 17 0 R /Resources <<
|
||||
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
|
||||
>> /Rotate 0 /Trans <<
|
||||
|
||||
>>
|
||||
/Type /Page
|
||||
>>
|
||||
endobj
|
||||
7 0 obj
|
||||
<<
|
||||
/Filter [ /FlateDecode ] /Length 803
|
||||
>>
|
||||
stream
|
||||
xœ}Õ]kAà{Å^¶”bvÎׂ`4�\ôƒ¦ôÞè˜Z’UVs‘_ßó.)”RAy]gwŸ9;ž™.î–wýîÔL¿ûõ}=5Û]¿êqÿ2¬kóPwý¤-Íf·>�ßòsý¼:L¦ç“ï_�§ú|×o÷“««fúíüãñ4¼6ïæùú°¬¿V?^îWýñãõþió~2ý2lê°ëÿ3äþåpxªÏµ?5“Ù¬ÙÔíùfŸV‡Ï«çÚLÿ}ÞŸQß_µ)ù½%z½ßÔãaµ®Ãª¬“«‹‹YsÕ-f“ÚoþúÕñœ‡íúçjÇ^œ_³sn‘µ´È%s{‹,<žc”Ç3sAvæ9r0çu:æäKæKä9s‡|Í|�¼`6ä%³ ßÐÈ·<®çܦ_×oé\§¥_™~Y"Ó¯°µô+ü-ýº@¦_0Ç–~ÍL¿ä}é8[úsiéWÔýyMú%ïE¿ÀPXÿ¬mi™óxaÆø"̨CQfŠ1ÃPœó-ÁŒZ•޶rÉŒú—93žW¹fFÝÊ‚æ²dFÝÊ
3ê\n™1G¡?k%ô缄þœ¯Ð/ðýYC¡?k(ôçóú~¡?k+ôüB¿À/ôçsú~¡?Ÿ»ÐŸëDèø•þ|¾J®
¥?׆үð+ý
|
||||
¿Ò¯ð+ý
|
||||
¿Ò¯ð+ý
|
||||
¿Ò¯ð+ý
|
||||
¿Ò¯ð+ý¹•~…_éWø•þ\cF¿ÁoôüF¿ÁoôüF¿ÁoôüF¿ÁoôüF¿ÁoôüF¿ÁoôüF¿ÁoôüF¿ÁoôüN¿Ãïô;üN¿Ãïô;üN¿Ãïô;üN¿Ãïô;üN¿Ãïô;üN¿Ãïô;üN¿Ãïô;üN¿Ãïô;üAÀôüAÀôüAÀôüAÀôüAÀôüAÀôüAÀôüAÀôüÝØ?q¯nìÿpv쟹†;öÏ\Wûgþwº±ÿãúûgþÇ;öÏ\ÏÝØ?aîÆþ™yìŸpvìŸÙ뺱Jî^ã.…}[òÛ&¹~†óþ™ûvnŠØw}}ÛÚûÎÂû7ÞœÄ6endstream
|
||||
endobj
|
||||
8 0 obj
|
||||
<<
|
||||
/Filter [ /FlateDecode ] /Length 21006 /Length1 39196
|
||||
>>
|
||||
stream
|
||||
xœì½ xU¶ | ||||