Зачем🟡
Я в течение продолжительного времени попадаю на каналы людей в Telegram, которые состоят из публикаций наподобие:
"Мне 20 лет, я имею 21 год опыта работы в Тинькофф/Яндекс/etc., являюсь призером и чемпионом N>100 олимпиад, рассказываю о своих достижениях".
Я долго думал, какую эмоцию испытывать при виде подобных публикаций и людей в принципе.
Зависть? Я искренне рад тому, что такие люди есть, и даже тому, что я не среди них.
Негодование? Тоже нет – ведь они потратили много сил на достижение этих целей, они явно заслужили свои успехи.
Однако никакой мотивации от подобных публикаций не возникает, потому что это говорят люди с совершенно иным опытом, и заветный вопрос "А как получить первый оффер?" остается не то, что без ответа – с ответом, что нужно скорее покинуть бренную материальную оболочку, слиться с бесконечно вечным, созерцать великие фрактальные подобия, и вот тогда шансы на успех появятся.
Я справедливо подумал: "Может, я такой не один, и на самом деле существуют обычные люди, которые просто осваивают профессию и пытаются в ней реализовать себя? Ведь, если есть победители олимпиад, есть и призеры? А если есть призеры, то есть и те, кто на четвертом месте?"
Именно с этой мыслью я и решил создать этот канал. Я не отношусь к людям, которые легко вкатились или имеют опыт, который можно указывать в резюме (хотя я бы слукавил, сказав, что у меня совсем нет бэкграунда). Хочу честно писать о личном опыте при поиске первой работы, помочь этим опытом нуждающимся, оставить более осязаемое эхо в вечности, а также дополнительно отслеживать свой прогресс, поднимая самодисциплину.
Не исключаю, что и помимо этого найдется, что рассказать, поэтому постараюсь делать информацию интересной не только для товарищей по счастью.
#self
Я в течение продолжительного времени попадаю на каналы людей в Telegram, которые состоят из публикаций наподобие:
"Мне 20 лет, я имею 21 год опыта работы в Тинькофф/Яндекс/etc., являюсь призером и чемпионом N>100 олимпиад, рассказываю о своих достижениях".
Я долго думал, какую эмоцию испытывать при виде подобных публикаций и людей в принципе.
Зависть? Я искренне рад тому, что такие люди есть, и даже тому, что я не среди них.
Негодование? Тоже нет – ведь они потратили много сил на достижение этих целей, они явно заслужили свои успехи.
Однако никакой мотивации от подобных публикаций не возникает, потому что это говорят люди с совершенно иным опытом, и заветный вопрос "А как получить первый оффер?" остается не то, что без ответа – с ответом, что нужно скорее покинуть бренную материальную оболочку, слиться с бесконечно вечным, созерцать великие фрактальные подобия, и вот тогда шансы на успех появятся.
Я справедливо подумал: "Может, я такой не один, и на самом деле существуют обычные люди, которые просто осваивают профессию и пытаются в ней реализовать себя? Ведь, если есть победители олимпиад, есть и призеры? А если есть призеры, то есть и те, кто на четвертом месте?"
Именно с этой мыслью я и решил создать этот канал. Я не отношусь к людям, которые легко вкатились или имеют опыт, который можно указывать в резюме (хотя я бы слукавил, сказав, что у меня совсем нет бэкграунда). Хочу честно писать о личном опыте при поиске первой работы, помочь этим опытом нуждающимся, оставить более осязаемое эхо в вечности, а также дополнительно отслеживать свой прогресс, поднимая самодисциплину.
Не исключаю, что и помимо этого найдется, что рассказать, поэтому постараюсь делать информацию интересной не только для товарищей по счастью.
#self
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Fley's flow
Название канала я попытался выбрать так, чтобы оно было созвучно с моим никнеймом и передавало смысл всей затеи.
Я совсем не отношу себя к людям, которые могут беспрекословно придерживаться расписания и работать стабильно и безостановочно; главная мотивация в моей жизни – это дедлайны. То есть, я нередко оказываюсь в ситуации, когда под учебный проект было выделено даже неприлично большое количество времени, и неспроста, а я сажусь за задачу в последний день. Однако, как правило, я даже успеваю с ней справиться и сдать вовремя. Впрочем, будет забавно, если на эти публикации наткнется какой-нибудь HR и разочаруется – зато я хотя бы честно признаю свои особенности.
И в эти особенности хорошо вписывается слово flow – поток, в котором я нахожусь, в котором стремлюсь к своим целям, при этом выдерживая баланс с собой, с окружающими и со своими интересами.
#self
Название канала я попытался выбрать так, чтобы оно было созвучно с моим никнеймом и передавало смысл всей затеи.
Я совсем не отношу себя к людям, которые могут беспрекословно придерживаться расписания и работать стабильно и безостановочно; главная мотивация в моей жизни – это дедлайны. То есть, я нередко оказываюсь в ситуации, когда под учебный проект было выделено даже неприлично большое количество времени, и неспроста, а я сажусь за задачу в последний день. Однако, как правило, я даже успеваю с ней справиться и сдать вовремя. Впрочем, будет забавно, если на эти публикации наткнется какой-нибудь HR и разочаруется – зато я хотя бы честно признаю свои особенности.
И в эти особенности хорошо вписывается слово flow – поток, в котором я нахожусь, в котором стремлюсь к своим целям, при этом выдерживая баланс с собой, с окружающими и со своими интересами.
#self
Под эту задачу я даже сделал отдельную версию своего логотипа, который тоже содержит в себе некоторый поток, движение — хотел соблюсти символизм.
Еще один интересный факт — я очень люблю желтый цвет. В последнее время он заметно вписался в мою жизнь, но я долго не мог найти тот самый желтый, а когда делал изображение, нашел – #FFCC00 (Tangerine yellow). Он легко читается и запоминается, содержит инициалы канала, является для меня идеально сбалансированным, а также впоследствии я узнал, что это цвет Яндекса 🤷♂️
Позднее напишу более подробный пост о себе, в котором попытаюсь сделать выжимку всего жизненного опыта, по большей части не вписывающегося в резюме по той специальности, к которой я стремлюсь.
#offtopic
Еще один интересный факт — я очень люблю желтый цвет. В последнее время он заметно вписался в мою жизнь, но я долго не мог найти тот самый желтый, а когда делал изображение, нашел – #FFCC00 (Tangerine yellow). Он легко читается и запоминается, содержит инициалы канала, является для меня идеально сбалансированным, а также впоследствии я узнал, что это цвет Яндекса 🤷♂️
Позднее напишу более подробный пост о себе, в котором попытаюсь сделать выжимку всего жизненного опыта, по большей части не вписывающегося в резюме по той специальности, к которой я стремлюсь.
#offtopic
👍1
Навигация по каналу:
Личное:
#self – информация обо мне
#path – ключевые этапы жизненного пути
#recommend – рекомендации, что посмотреть или почитать
#offtopic – что-нибудь от себя
Рабочее:
#papers – статьи, разборы
#links – ссылки на мой контент
#soft – soft-скиллы
#hard – hard-скиллы
#learn – обучающие материалы
#code – код или ссылки на код
#cases – случаи и задачи из работы
#tips – небольшие советы
#results – результаты работы
#progress – результаты личного роста
#offer – путь к первому офферу
Личное:
#self – информация обо мне
#path – ключевые этапы жизненного пути
#recommend – рекомендации, что посмотреть или почитать
#offtopic – что-нибудь от себя
Рабочее:
#papers – статьи, разборы
#links – ссылки на мой контент
#soft – soft-скиллы
#hard – hard-скиллы
#learn – обучающие материалы
#code – код или ссылки на код
#cases – случаи и задачи из работы
#tips – небольшие советы
#results – результаты работы
#progress – результаты личного роста
#offer – путь к первому офферу
Обо мне
Как я говорил ранее, непосредственно к ML/DA/DS мой бэкграунд имеет слабое отношение, однако что-то же я делал эти24 года? Этот пост я пишу для того, чтобы сложить цельную картинку моего "старта" к профессии. В силу большого количества различных событий в течение жизни, расположу по возможности в хронологическом порядке и разобью на несколько публикаций. Пост обещает быть длинным, а многое из написанного вообще не будет относиться к текущим интересам, но все же постараюсь писать нескучно.
🟡 🟡 🟡 лет.
Шли прекрасные нулевые годы: 2007-й был еще далеко впереди, а вера в светлое посткоммунистическое будущее пронизывала воздух, наполненный ароматом цветущих и распускающихся в конце апреля деревьев. Я жил совершенно обычной дворовой жизнью, где не было места ссорам и вражде — конфедерацией армян, азербайджанцев и русских мы гоняли бомжей камнями, часами не слезали с тютины (шелковицы), прыгали по гаражам, взрывали то, что взрывается, стреляли из всего, что способно стрелять, и вообще в полной мере осознавали свое величие, которое меркло разве что перед старшими приятелями, которые могли гулять в соседнем дворе через дорогу.
Моё счастливое детство омрачал лишь гнёт родителей и родственников, заставлявших меня читать, писать и считать. Несмотря на оказываемое сопротивление, я безнадежно проигрывал, и в 4 года научился читать, с 6 лет уже осваивал книги самостоятельно, а к 8 годам выиграл школьную олимпиаду "Кенгуру" по математике, заняв в регионе двузначное место.
После этого я начал уверенно побеждать в битве против обучения — книги я осваивал с большим удовольствием, однако свое собственное мнение обрёл чрезвычайно рано. И в связи с этим я решил, что изучать буду лишь то, что интересно лично мне.
🟡 🟡 🟡 🟡 лет.
За этот период жизни я не могу вспомнить практически ничего значимого и выдающегося — как и все, я ходил в обычную школу, занимался баскетболом, а впоследствии и легкой атлетикой, на карманные деньги посещал компьютерные клубы после занятий, дома же сидел на сайте vkontakte.ru с использованием 3G-модема от МТС, а также посещал занятия в компьютерной школе, где изучал Word, Excel, и мою среднестатистическую жизнь ничего не нарушало.
Время шло, одних лишь книг, игр и веб-скроллинга мне было очевидно мало, в связи с чем я уже в этом возрасте начал задумываться о том, чем буду заниматься в дальнейшем.
#self #path
Как я говорил ранее, непосредственно к ML/DA/DS мой бэкграунд имеет слабое отношение, однако что-то же я делал эти
Шли прекрасные нулевые годы: 2007-й был еще далеко впереди, а вера в светлое посткоммунистическое будущее пронизывала воздух, наполненный ароматом цветущих и распускающихся в конце апреля деревьев. Я жил совершенно обычной дворовой жизнью, где не было места ссорам и вражде — конфедерацией армян, азербайджанцев и русских мы гоняли бомжей камнями, часами не слезали с тютины (шелковицы), прыгали по гаражам, взрывали то, что взрывается, стреляли из всего, что способно стрелять, и вообще в полной мере осознавали свое величие, которое меркло разве что перед старшими приятелями, которые могли гулять в соседнем дворе через дорогу.
Моё счастливое детство омрачал лишь гнёт родителей и родственников, заставлявших меня читать, писать и считать. Несмотря на оказываемое сопротивление, я безнадежно проигрывал, и в 4 года научился читать, с 6 лет уже осваивал книги самостоятельно, а к 8 годам выиграл школьную олимпиаду "Кенгуру" по математике, заняв в регионе двузначное место.
После этого я начал уверенно побеждать в битве против обучения — книги я осваивал с большим удовольствием, однако свое собственное мнение обрёл чрезвычайно рано. И в связи с этим я решил, что изучать буду лишь то, что интересно лично мне.
За этот период жизни я не могу вспомнить практически ничего значимого и выдающегося — как и все, я ходил в обычную школу, занимался баскетболом, а впоследствии и легкой атлетикой, на карманные деньги посещал компьютерные клубы после занятий, дома же сидел на сайте vkontakte.ru с использованием 3G-модема от МТС, а также посещал занятия в компьютерной школе, где изучал Word, Excel, и мою среднестатистическую жизнь ничего не нарушало.
Время шло, одних лишь книг, игр и веб-скроллинга мне было очевидно мало, в связи с чем я уже в этом возрасте начал задумываться о том, чем буду заниматься в дальнейшем.
#self #path
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Подготовка к первому собеседованию, 14 дней
Прошло уже ± две недели подготовки — вспоминал алгоритмы, остановился на тренировках от Яндекса 1.0, там представлены любопытные задачи.
Если честно, то по большей части сложностей они не вызвали: как говорится, с помощью лома и какой-то там матери решил порядка 20 задач — пока хватит.
Если чуть подробнее, то действительно слегка пришлось поломать голову, но совокупно самые сложные задачи занимали порядка 1.5-3 часов и 2-3 попытки — если лениться самому продумать все тесты. Некоторые задачи были такого же уровня или даже точь-в-точь такие, какие я даю своим ученикам. С мыслью: "Если не сдам с первого раза, горе мне как преподавателю" я их все же успешно сдавал)
Выложил также репозиторий на github😁 (надеюсь, однажды он обновится, и я все же решу все задачи).
Однако, на аналитику данных требуются не столько алгоритмы, сколько фундаментальное понимание теорвера и статистики, в связи с чем пора переключиться на повторение вузовских материалов + углублённый разбор популярных вопросов с собеседований. Часть материалов уже нашел, как будет готово — поделюсь. Там будут интересные конспекты, которые не раз пригодились мне в том числе и в СПбГУ.
#hard #progress #offer #code
Прошло уже ± две недели подготовки — вспоминал алгоритмы, остановился на тренировках от Яндекса 1.0, там представлены любопытные задачи.
Если честно, то по большей части сложностей они не вызвали: как говорится, с помощью лома и какой-то там матери решил порядка 20 задач — пока хватит.
Если чуть подробнее, то действительно слегка пришлось поломать голову, но совокупно самые сложные задачи занимали порядка 1.5-3 часов и 2-3 попытки — если лениться самому продумать все тесты. Некоторые задачи были такого же уровня или даже точь-в-точь такие, какие я даю своим ученикам. С мыслью: "Если не сдам с первого раза, горе мне как преподавателю" я их все же успешно сдавал)
Выложил также репозиторий на github
Однако, на аналитику данных требуются не столько алгоритмы, сколько фундаментальное понимание теорвера и статистики, в связи с чем пора переключиться на повторение вузовских материалов + углублённый разбор популярных вопросов с собеседований. Часть материалов уже нашел, как будет готово — поделюсь. Там будут интересные конспекты, которые не раз пригодились мне в том числе и в СПбГУ.
#hard #progress #offer #code
Please open Telegram to view this post
VIEW IN TELEGRAM
Тренировки по алгоритмам от Яндекса
Новый сезон — новые задачи и форматы
👍2
К теме о навыках и об их применимости
После покупки премиума в Telegram захотел себе анимированный значок: пара запросов в🔎 и 📺 , 30 минут в 👉 , 15 минут конвертации и результат готов:
👨💻
Даже если кажется, что старый опыт уже никогда не пригодится — это скорее всего не так.
#offtopic
После покупки премиума в Telegram захотел себе анимированный значок: пара запросов в
Даже если кажется, что старый опыт уже никогда не пригодится — это скорее всего не так.
#offtopic
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
В этом возрасте я осознал, что пора двигаться вперед — изменчивый мир под меня прогибаться не спешил, и я решительно вмешался в этот процесс.
Уже не помню, как это произошло, но мне стукнуло в голову, что я хочу организовывать турниры по различным онлайн-играм. К этому времени я уже достаточно хорошо ознакомился с компьютером, чтобы уметь открыть
Я понимал, что это только начало, — за этим турниром последовал еще десяток, я вошел в руководство большого количества сообществ, связанных с теми играми, где проводил соревнования, а в некоторых случаях организовывал такие сообщества самостоятельно. На пике деятельности турниры собирали 128 команд по 5+ человек в каждой (подумать только – 640 игроков, это ведь несколько лиг). Порой удавалось даже договариваться с официальными представителями игр и формировать призовой фонд исключительно из выделенных ими средств. В иных случаях в качестве призовых шли средства, полученные с рекламы. В рамках организации собственных сообществ я налаживал работу добровольцев-администраторов, да так, что мы упирались в пределы публикаций в сутки— больше 50 постов в день
Сам играть я тоже не забывал — был даже период времени, когда я планировал попасть в киберспорт. На сайте aim400kg, на тот момент весьма известном, я уверенно забирал топ-3 в тестах на скорость реакции среди всего СНГ. Великая киберспортивная карьера закончилась тем, что у меня на пике славы на год забрали компьютер, и я вернулся к обычному любительскому формату. Здесь я тоже не обошелся без самовыражения: монтировал видео, связанные с играми, изучая различные материалы, преимущественно на английском языке — уже тогда стало ясно, насколько велика разница между русско- и англоязычным сообществом с точки зрения количества информации. В это же время начал изучать 3D-моделирование, преимущественно Cinema4D в связке с After Effects.
В связи с тем, что к тому времени я жил в доме, а не в квартире, я имел свои обязанности по хозяйству — кто в теме, тот знает афоризм про нескончаемый ремонт в доме, и сейчас разделяет мою боль. За эти годы я научился практически всему, что необходимо для самостоятельного ремонта в доме, а мои навыки в 3D позволили даже смоделировать будущую сауну и оценить расход материалов на её строительство.
Разумеется, времени на учебу, а главное – желания – практически не оставалось, но, несмотря на это, я даже плавно набирал обороты, а занятия математикой с родственниками позволили мне в некоторой степени проявить свои способности.
Если подводить черту этому периоду, на который пришелся переходный возраст, то, хоть и не без изъянов, прошел он достаточно спокойно. Теперь я был еще более готов к новым свершениям.
#self #path
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
К этому времени я влился в сообщество "Потрачено", посвященное кривым переводам различных игр, к которому имею некоторое отношение и по сей день. Там же сделал своего первого бота, который на волне популярности в то время очень быстро набрал лимит в 10.000 друзей (напомню, что когда боты
Программирования в этом всем, кстати, практически не было. Существовал сайт, где можно было создавать гибкие шаблоны запросов и ответов для так называемого искусственного интеллекта, а также софт, позволявший отправлять личные сообщения пользователей на этот сайт, получать ответ и выдавать его пользователю обратно. Таким образом, мне достаточно было сделать большой набор гибких шаблонов для взаимодействия с пользователями, запустить нужную программу, и наблюдать. Результат превзошел все ожидания – несмотря на все особенности, общение с ботом было веселым и осмысленным, он сильно выделялся на фоне конвейерных поделок.
Самым сложным вопросом стал хостинг проекта. Первое время товарищ по сообществу за 50р./мес. держал его на своем ПК (надо ли говорить о том, с каким downtime мы имели дело?). Конечно, долго так продолжаться не могло, и я изучил вопрос онлайн-хостинга. Я даже не могу передать ту боль, которую испытал, когда узнал, что мой Linux-сервер – это одна лишь командная строка, через которую нужно поставить рабочий стол и все сопутствующее. С учетом всех допущенных оплошностей, на следующий день я увидел заветный рабочий стол Ubuntu. Однако, с объемом ОЗУ ≈256 Мбайт, это был скорее рабочий стул, который при запуске
Помимо прочего, я длительное время принимал участие в одном из семейных проектов – ежегодной всероссийской конференции, где мои обязанности в раннем возрасте ограничивались базовыми задачами "подай-принеси", а к 16-ти годам и до недавнего времени (здесь немного отступлю от хронологии) я принимал все большее участие в вопросах, связанных с техническим обеспечением и взаимодействием с участниками. Когда наступил COVID-19, работа усложнилась еще и тем, что часть участников присутствовала очно, часть заочно, и в мои задачи входило обеспечение возможности всем увидеть и услышать друг друга. Задача осложнялась особенно тем, что среди них были и люди весьма почтенного возраста, и просто со своими особенностями — нужно было набраться терпения.
#self #path
Please open Telegram to view this post
VIEW IN TELEGRAM
Все накопленные на тот момент увлечения я лишь продолжал и развивал – участвовал и выигрывал в небольших конкурсах, мои видеоролики публиковались в официальных сообществах игровых проектов. Мы наращивали сотрудничество с сообществами близкой тематики — например, несколько раз исключительно из дружеских побуждений наши рекламные публикации оказывались в небезызвестном сообществе "Мои любимые юморески" — просто потому что неплохо складывалось личное общение с админом, который весьма альтруистично подходил к подобным вопросам. В определенный момент суммарная аудитория сообществ, которые находились под моим управлением, составляла порядка 300.000 человек, что давало мне некоторые возможности для направления аудитории на личные проекты, чем я время от времени пользовался в своих целях, или же помогал друзьям.
На тот момент в компьютерной школе я уже прошел базовые пользовательские курсы, и началось время программирования. Python как учебный язык только начал набирать обороты, поэтому учился я все еще на Pascal ABC NET, о чем, впрочем, не жалею. В рамках курса мы решали задачи для начинающих — простые задачи из геометрии, математики, ряды Тейлора, робот на координатной плоскости, базовые сортировки и так далее. Я всегда в таких вещах был "на передовой" — пытался решить эти задачи быстрее всех, что нередко удавалось, и в целом легко и быстро схватывал идеи алгоритмов.
Учеба в школе становилась всё проще, оценки всё лучше, личная жизнь кипела, да и вообще всё складывалось замечательно. Однако, над моей головой нависла угроза из трех страшных букв, и практически каждый из тех, кто прочитает этот текст, тоже в свое время прошёл (или пройдет) через этот этап.
#self #path
Please open Telegram to view this post
VIEW IN TELEGRAM
pyrssa – библиотека для анализа временных рядов 📈
Давненько тут не было публикаций, но не потому что ничего не происходило. Сегодня хочу рассказать немного о своей магистерской дипломной работе в СПбГУ, которая продолжается и по сей день – библиотека для анализа временных рядов на основе метода Singular Spectrum Analysis.
Данный метод имеет мощную теоретическую базу с большим количеством замечательных свойств: позволяет производить разложение временных рядов на отдельные составляющие (тренд, период, шум), строить различные виды прогноза, заполнять пропуски (как частный случай прогноза, разумеется), с помощью итеративных алгоритмов позволяет улучшать разделимость компонент ряда, если они смешиваются между собой, находить момент разладки временного ряда (когда он меняет свою структуру, временно или навсегда), имеет приложение к многомерным данным или сразу к нескольким временным рядам (multivariate time series), и многое другое.
В рамках работы мне предстояло адаптировать существующую библиотеку Rssa для R на язык Python. Сделано это в таком виде, потому что переписывать заново все структуры данных и кучу рутины бессмысленно, а потери в скорости исключительно константные — перевод типов данных, да и только.
Работа оказалась объемной в силу большого количества непредвиденных сложностей адаптации типов данных, косяков в сторонних библиотеках, необходимости в полностью новой реализации графиков, написания документации, тестов, примеров, да и в целом в оформлении работы в приличную библиотеку.
Пользоваться ей можно уже сейчас, удачи только разобраться в теории, потому что для применения метода на практике сперва нужно попотеть :)
📖 Cписок литературы (увы, не бесплатно):
Singular Spectrum Analysis with R (Use R!)
Analysis of Time Series Structure: SSA and related techniques
#self #code #hard
Давненько тут не было публикаций, но не потому что ничего не происходило. Сегодня хочу рассказать немного о своей магистерской дипломной работе в СПбГУ, которая продолжается и по сей день – библиотека для анализа временных рядов на основе метода Singular Spectrum Analysis.
Данный метод имеет мощную теоретическую базу с большим количеством замечательных свойств: позволяет производить разложение временных рядов на отдельные составляющие (тренд, период, шум), строить различные виды прогноза, заполнять пропуски (как частный случай прогноза, разумеется), с помощью итеративных алгоритмов позволяет улучшать разделимость компонент ряда, если они смешиваются между собой, находить момент разладки временного ряда (когда он меняет свою структуру, временно или навсегда), имеет приложение к многомерным данным или сразу к нескольким временным рядам (multivariate time series), и многое другое.
В рамках работы мне предстояло адаптировать существующую библиотеку Rssa для R на язык Python. Сделано это в таком виде, потому что переписывать заново все структуры данных и кучу рутины бессмысленно, а потери в скорости исключительно константные — перевод типов данных, да и только.
Работа оказалась объемной в силу большого количества непредвиденных сложностей адаптации типов данных, косяков в сторонних библиотеках, необходимости в полностью новой реализации графиков, написания документации, тестов, примеров, да и в целом в оформлении работы в приличную библиотеку.
Пользоваться ей можно уже сейчас, удачи только разобраться в теории, потому что для применения метода на практике сперва нужно попотеть :)
Singular Spectrum Analysis with R (Use R!)
Analysis of Time Series Structure: SSA and related techniques
#self #code #hard
Please open Telegram to view this post
VIEW IN TELEGRAM
🆒2