Pull to refresh
398
0
Evgeny Vrublevsky @VEG

C++ Developer, Reverse Engineer

Send message
Не 60, но близко
P4VM800, встроенное видео S3
image
Вижу, что тема субъективного времени вызвала живой интерес. Почему время то летит, то тянется, от чего это зависит? Существует 3 научные теории, один забавный парадокс, два вида восприятия времени, и множество открытых вопросов. Постараюсь очень кратко обо всем этом рассказать.

Парадокс отпуска (из книги Клодии Хэмонд «Искаженное время», весьма и весьма рекомендую всем любителям темы времени): Время постоянно нас удивляет, к его проделкам невозможно привыкнуть. Отпуск заканчивается, едва успев начаться: только вы заселились в гостиницу, как уже пора в обратный путь. Но стоит вам вернуться, возникает ощущение, будто вы не были дома целую вечность
Я бы еще добавил 2 наблюдения:
1. Первый день отпуска все-таки тянется, не летит. Добрались до отеля — как, еще только обед?!
2. А еще, когда после долгого отсутствия я заходил домой, то странным выглядел почему-то только пол. Он словно бы был светлее, чем обычно (и несколько моих знакомых отмечали то же самое).

Вернемся к парадоксу чуть позже. Теперь к теориям (к сожалению, без ссылок, пишу весь текст по памяти). Насколько мне известно, их три, они плохо стыкуются, но я обязан их упомянуть. Чтобы не запутаться, обратите внимание на то, что они говорят о разном типе восприятия времени:
1. Ход времени сейчас — это то, как мы ощущаем текущий момент, время тянется (в очереди, на скучной лекции) или летит (на празднике). В общем случае связь очевидна: время тянется тогда, когда человек испытывает стресс, дискомфорт, скуку, сосредоточен на ожидании. И наоборот, когда человеку хорошо — время летит быстро (даже рабочий день может так пролететь, если «поймать волну», вовлечься в интересные задачи). Насколько помню, самое медленное время: ожидание микроволновки. Самое быстрое: интернет.
2. Наполненность времени — это ощущение уже прошедшего промежутка времени, например «день был такой длинный, столько всего произошло». Любопытно, что эти 2 параметра могут свободно сочетаться, давая 4 возможных комбинации. День может пролететь, но быть наполненным. Или тянуться, и быть пустым.

Хочу отметить, что ощущение хода — это просто вопрос комфорта, и в том, что оно летит — нет ничего страшного. А вот ощущение наполненности (прошедший день, неделя, месяц, год, жизнь!) — вот ключевой индикатор. Это невероятно комплексный индикатор самооценки, как он формируется мы очень кратко ниже рассмотрим, но вот то, что его нельзя игнорировать — это факт.

Три теории восприятия времени:
1. Модель биологических часов Хогленда, упрощенно: когда процессы в организме ускорены, то время тянется (т.к. ваши внутренние часы бегут быстрее). Измеряется тестом «длинна субъективной минуты», т.е. засекаете минуту без внутреннего счета, смотрите на часы, сколько там прошло реально. Проверено на больных с высокой температурой и на водолазах с низкой. Отчасти может объяснить почему время в детстве тянется: высокая скорость процессов в организме.

2. Когнитивная модель Орнштейна — связана с количеством регистрируемых событий. В простейшем опыте, минута, в которой было большей световых вспышек или звуковых сигналов, кажется «длиннее». В случае человека речь идет о количестве поступающей к нему информации. Обратите внимание, что в этой теории речь о «наполненности», а не о «ходе».

3. Когнитивно-аттенционная модель — условно говоря, мы либо воспринимаем процесс, либо сам ход времени (переводим на него внимание). В состоянии ожидания, когда человек сфокусирован на самом ходе времени, оно медленно тянется.

Резюмируя эту часть, хочу сказать, что более полную картину я получил благодаря четкому разделению восприятия времени на ход и наполненность (сама идея не моя), а также более глубокому переосмыслению того, как все это работает у человека. Опыты с мигающими лампочками — это, конечно, наглядно и измеримо, как того требует наука. Но на деле оно сложнее. Ощущение наполненности времени человеку дает не информация (ее полно), а новизна, т.е. те переживания и опыт, которые отсутствуют в его опыте (строятся новые нейронные связи?). Именно поэтому отпуск, после того как он прошел, кажется таким длинным — много новых впечатлений. При этом он летит (человеку комфортно), но первый день все-таки тянется (идет адаптация, стресс).

Далее, к статье. Тема, безусловно, не раскрыта. Человек не заставит себя одним лишь этим пониманием делать что-то для будущего. Ох, огромная тема, постараюсь два слова буквально. Вспомните "зефирный эксперимент" — те дети, которые выбирали подождать 10 минут и получить 2 сладости (вместо взять 1 прямо сейчас) в итоге становились более успешными. Эта модель поведения сидит глубоко (можно также почитать теорию об охотниках и земледельцах). Чувство времени формируется с самого детства, и оно лежит в основе всех последовательных навыков. Например, чтение. Нарушения в чувстве времени — причина СДВГ (есть исследования по этой теме). В общем, это очень глубокий процесс развития мозга, состоящий из множества факторов. Никто и ничто вас не заставит делать то, что вы не хотите, и все эти аффирмации — поверхностные психологические уловки, повод снять с человека побольше денег на тренингах.

Ловушка
Если построить кривую хода времени (как с годами меняется ощущение хода времени), то график нелинейно растет (особенно после 30 происходит скачок). Человек 70-ти лет субъективно ощущает середину своей жизни в 18 лет. Уже звучали объяснения, что есть 2 теории: с возрастом уменьшается поток новых впечатлений, и с возрастом меняется масштаб времени. Для 5 летнего ребенка год — это пятая часть его жизни. Поэтому время тянется, а еще ему очень сложно вспомнить, что было год назад. Все так, обе теории, наверняка, имеют место быть. Дело в другом: подумайте, чем вы старше, тем быстрее летит время. Есть когнитивные искажения, мешающие познанию. Есть «хроноискажения», мешающие жить полноценно. Ощущение «нет, сейчас не самое подходящее время чтобы ******, вот закончу сначала ****» приводит к неправильным решениям (неправильным с точки зрения самого же человека в будущем). Многие так откладывают важные дела, как создание семьи, рождение ребенка, крупные покупки, путешествия. А времени больше не будет. Его будет только меньше. И это страшно (подавляющее большинство людей испытывает ощущение ускорения времени с возрастом, и страх «не успеть», цифры видел в районе 70%). Хоть это и субъективное ощущение времени, для человека оно реально (влияет на его поступки, состояние, чувства). Теперь добавьте к этому второй график, условно, трудоспособности. Лет до 20 человеку сложно реализовать в жизни что-то серьезное, глобальное, значимое, он занят формированием себя как личности: физический рост, образование, социализация, и наконец независимость (в т.ч. финансовая). Условно, с 25 до 35 человек в отличной физической и умственной форме, но отдает большую часть сил работе. Именно тогда, когда он способен свернуть горы, он платит ипотеку, карабкается по карьерной лестнице. При переходе ко второй половине жизни не просто так возникают кризисы среднего возраста. Силы, правда, уже не те, и речь не о физических силах. Разные возрастные периоды отведены для разных этапов жизни. Да, вам не 90, а может только 35, но чем больше вы прожили, тем сильнее зафиксировали свою временную линию. В 17 лет вы можете выбрать профессию! А в 35 ее смена ой как не проста. Вы только-только накопили жизненный опыт, позволяющий вам совершенно по-новому делать многие вещи, избежать многих ошибок — и тут же попадаете в начало интенсивного роста кривой хода времени. Время летит все быстрее, организм из фазы роста плавно переходит в фазу старения. Когнитивные способности и физическая сила плавно уменьшаются, что должно с лихвой окупиться возросшим опытом, но зачастую в нем есть серьезные пробелы. И человек знает это. Нечто, что он мог сделать, когда действительно мог, а теперь просто нет времени.

Выводы

Мне бы не хотелось никого пугать, рисовать картину безысходности. Сколько бы вам ни было лет — всё возможно. Ведь экспоненциально не только ускоряется время, но и наши возможности. Человек способен на прорыв! Историй, когда старики создавали бизнес-империи достаточно. Однако такие экстремальные режимы — крайняя мера. Все мы хотим не терять время уже сейчас, организовать себя в цельную личность, которая видит достойную цель и испытывает наслаждение от процесса (вовсе не простого!) ее достижения. Что правильно, а что нет — определяется вашей же системой ценностей, вопрос лишь в следовании собственным мечтам. Но жизнь человека сильно не похожа на работу машины. Очень много неоптимальных действий, потери времени (при детальном трекинге времени и анализе просто волосы встают дыбом). Задумать и сделать — это и есть управление временем, но т.н. «тайм-менеджмент», как вы понимаете, не делает чуда, он применим лишь для определенных задач и не для всех людей. Только комплексное понимание того, что такое время, как оно связано с восприятием, с социальным ритмом, хронотипом, мотивацией и пр. — дает шанс решить этот наиважнейший вопрос. Восприятие времени очень комплексное явление. Знание — сила. Только через глубокое понимание того, как все это работает, может быть выстроен настоящий тайм-менеджмент. Всем нам удачи!

Шикарно!


Поделюсь трюком, который я вычитал в исходниках Elite для zx spectrum: быстрое умножение двух однобайтных чисел.
ab = (a^2 + b^2 - (a-b)^2)/2
Эта формула элементарно выводится из школьного разложения квадрата разности. Т.е. можно быстро и точно умножать однобайтные числа, используя таблицу квадратов (512 байт)

Закрыл для себя этот вопрос давным-давно.


Спор „пробелы против табов“ имел под собой хоть какие-то логические основания, когда IDE не умели с ними работать: надо было нажимать много раз пробел или бекспейс (при использовании пробелов), выравнивание ломалось при смене размера таба (при использовании табов).
Сейчас IDE умеют работать с табами, а люди до сих пор не научились.


Главный плюс табуляции — семантичность. Это символ, специально созданный для отступов.
Когда вам нужно поставить ссылку, вы же пишете <a href="…">, а не <span onclick="…"?
Наверняка, каждого более-менее технически подкованного человека бесит, когда в ворде отступ параграфа сделан не отступом параграфа, а пробелами (скачайте пару первых попавшихся рефератов). Но при этом такая же ситуация у себя в коде людей не бесит :-)
Разный стиль параграфов


Все остальные аргументы теряют свою важность перед смыслом: размер файла, можно конфигурировать ширину, выглядит одинаково — вы серьёзно?


Самый разумный и естественный метод отступов — это смарт-табуляция: табы для отступов, пробелы для выравнивания:
Иллюстрация смарт-табуляции


Если среда разработки не понимает смарт-табуляцию и не может автоматически понять, где вставить табуляцию, а где пробел, то грош ей цена, такой среде.
Вот скриншот из настроек джетбрейновской Идеи:
Настройка табуляции в стилях кодирования


https://github.com/maximal/tab
https://www.emacswiki.org/emacs/SmartTabs

набор сомнительных доводов и агрессивная автозамена табов на пробелы привела к победе одной из сторон.


Ага. А еще такие ложные статьи с ошибочной статистикой, как эта.

Никакой победы нету. Статья имеет ошибку в алгоритме и отсюда ложные выводы.
«at least 10 lines, that start with space» — нельзя считать по одному пробелу. В пример Гибернейт из Джавы.

https://github.com/hibernate/hibernate-orm/blob/master/hibernate-core/src/main/java/org/hibernate/Filter.java
/*
 * Hibernate, Relational Persistence for Idiomatic Java
 *
 * License: GNU Lesser General Public License (LGPL), version 2.1 or later.
 * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
 */
package org.hibernate;
import java.util.Collection;

import org.hibernate.engine.spi.FilterDefinition;

/**
 * Type definition of Filter.  Filter defines the user's view into enabled dynamic filters,
 * allowing them to set filter parameter values.
 *
 * @author Steve Ebersole
 */
public interface Filter {

	/**
	 * Get the name of this filter.
	 *
	 * @return This filter's name.
	 */
	public String getName();



А ведь вся джава начинается с таких заголовков. И они ложно засчитывают пункт в сторону пробела, хотя реально в файле используется табуляция.
Пару цифр, которые дают понять что такое рак, откуда он берётся и какова вероятность им заболеть.
1) 90% заболевших злокачественными новообразованиями находятся в возрастной группе старше 50 лет. 75% из которых старше 60 лет. Отсюда и динамика роста числа онкобольных из-за увеличения продолжительности жизни.
2) Как минимум половина (зависит от подсчёта) злокачественных новообразований вызвана исключительно образом жизни заболевшего. Топ причин:
— курение;
— злоупотребление крепким алкоголем;
— повреждение кожи ультрафиолетовыми лучами.

(По данным из статистического сборника Белстата)

При переходе на микросервисы надо учитывать общую стоимость владения, а не только затраты на разработку. Разработка микросервисного приложения и правда может оказаться дешевле. Но жизнь продукта разработкой не заканчивается, далее следует саппорт, затраты на который обычно в разы превышают затраты на разработку. По разным оценкам стоимость разработки составляет примерно 10-20%, в то время как саппорт — 60-80% в общих затратах в течение периода эксплуатации.

Так вот в случае микросервисной архитектуры затраты на саппорт минимум удваиваются.

Процитирую свой коммент к другой статье, почему это происходит
В моей компании тоже все на микросервисах, только счастья это не приносит:

  • если ищу причину какого-то бага, то в большинстве случаев где-то по ходу анализа исходника приложения натыкаешься на вызов очередного endpoint-а, приходится скачивать его исходники тоже, а там опять endpoint куда-то еще, и т.д. О локальном дебаге речь вообще даже не поднимается, так как слишком много приложений-микросервисов придется локально конфигурировать. В итоге баги ищутся, в основном, путем смотрения на код.

  • микросервисы, как правильно заметил автор, зачастую написаны на разных версиях разных языков, что делает локальный дебаг трудным или невозможным

  • особенно странно видеть, как зоопарк микросервисов на разных версиях разных языков оперирует с одними и теми же логическими связанными данными. Я, конечно, понимаю, что хотели делать масштабируемо, но на уровне данных все SQL-запросы в итоге идут к одним и тем же базам данных, от чего БД становятся узким местом. Но отмасштабировать БД, как правило, намного труднее.

  • иногда базы данных пытаются сделать масштабируемыми путем разбиения на логически независимые базы. Микросервисы тогда зависимы только от своей БД, и чувствуют себя отлично, но при этом возникает необходимость в процессах копирования данных между БД, синхронизация, ETL и все такое, что тоже немалый источник хлопот.

  • при необходимости внесения изменений в микросервис в большой компании зачастую представляет проблему выявить и, тем более, протестировать, все приложения-юзеры, его использующие. Поэтому часто всместо внесения изменений в существующий микросервис, просто создается очередной модифицированный клон, который делает почти то же самое. В итоге подход, призванный снизить избыточность кода, дает ровно обратный эффект.

  • микросервисы, когда вызывают другие микросервисы по HTTP, работают существенно медленнее, чем если бы тот же код исполнялся из одного процесса, что часто приводит к необходимости все переделывать без микросервисов

  • если любой из нужных микросервисов недоступен, то как правило пользоватетель получает не частично, а полностью неработающее приложение. Это из области мифив, что приложением можно будет пользоваться, но с ограниченниями. Я таких приложений не видел.

В общем идея микросервисов красиво выглядит на презентациях и в книжках. В реальной жизни лучше сто раз подумать, а надо ли.

В общем это не факт, что на микросервисах удасться сэкономить.
Нейроны не размножаются, но непрерывно умирают. Рано или поздно, пластичность нейросети мозга не сможет функционально компенсировать потери нейронов и сложные высшие функции начнут понемногу отваливаться и заменяться чем-то попроще. За счет этого, через 20-30-40-… лет он может изменить свое мировоззрение как угодно, но не факт, что это будет обусловлено чем-то кроме банального физического отупения мозга. Сам он этого, впрочем, не заметит и будет ошибочно полагать, что «стал мудрее».
И старые, проверенные временем, сорта бывают не то что неполезны для здоровья, а попросту опасны. Маниоком сырым можно легко отравиться насмерть, кожура кешью вызывает страшные ожоги, сырая фасоль разрушает слизистую желудка. Даже обычным картофелем можно отравиться, если неправильно хранить. Львиную долю культур просто не пустили бы на рынок, если бы тогда при одомашнивании проверяли также сурово, как сейчас ГМО.
>> неотъемлемый пока от 99% ГМО культур.

Тут проблема в полном непонимании процесса: если для обычных культур его нужно N, то для ГМО-культур того же раундапа нужно 2*N, что гарантированно убьёт сорняки, но во-первых ГМО-культуры (устойчивые) его в себе не накапливают (вопреки желаниям всяких истериков), во-вторых обработка производится на начальном этапе и из почвы он со временем уходит, а в третьих «обычные» культуры количеством N обрабатываются не однократно, а многократно (от чего вносимое количество сильно больше), в том числе и близко к периоду цветения (что даёт то самое, чего боятся боящиеся граждане, но, как обычно, совсем не там)

>> Потом накопившие его трупы людей на кладбищах не разлагаются десятилетиями, а птички дохнут.

Прямо чем-то знакомым повеяло… ХренТВ-ным духом пахнет…
Хотелось бы посмотреть первоисточники, а не непонятные перепевки.

Я сам живу в штатах. У меня куча знакомых, которые выращивают во дворе овощи и фрукты. Продавать их, формально, нельзя. Но это вопрос, главным образом, лицензирования бизнеса. А для себя и знакомых — пожалуйста. Более того, есть даже специальные «садово-огородные товарищества» — площадки, где можно взять в аренду небольшой кусок земли для тех же целей, если нет своего двора.

Так что я сильно подозреваю, что в видео речь идет именно о запрете на коммерческое выращивание. Если, конечно, это не полный фейк.
Ситуация такая в основном потому, что SecureBoot по прежнему очень редко используется, от этого он недостаточно протестирован и потому кривые реализации продолжают быть кривыми — просто никто не знает о том, что они кривые. При этом SecureBoot — единственная нормальная защита от вредоносных OROMов и загрузчиков, и без него на любой системе можно загрузить UEFI Shell и натворить кучу неприятных дел.
Вместо распространения вестей о том, что SecureBoot — это злодейское изобретение MS для ограничения свободы пользователя, нужно распространять знания о том, как им пользоваться правильно, как сгенерировать свои собственные PK и KEK, как удалить предустановленные, как подписать собственный загручик и так далее. Я напишу об этом статью после окончания этого цикла.
По поводу уровня жизни:
image
А вообще смотреть надо глубже, небольшое повышение уровня жизни но при этом репрессии, блокировки и прочие ограничения свобод — оно того стоит? И опять же люди не довольны тем что рост уровня жизни мог бы быть гораздо большим, если бы не коррупция и прочие сопутствующие вещи.
UFO landed and left these words here
Даже открытый Chromium может подгружать закрытые модули, содержимое которых останется для вас тайной.
Может. А может и не загружать. А уж исполняет он их только с вашего разрешения. С Яндекс.Браузером так не получится.

Другое дело, что не очень ясно, почему такие страсти вокруг исходников браузера. Ну да, туда вбиваются паспортные данные и данные кредиток. И? Вы их потом сразу же стираете и всё? Нет же — вы их пересылаете на сервер, на котором крутится куча всякого добра, о котором даже хозяева серверов мало что знают.

Сравните количество заметок в новостях на тему «у компании ABC слили базу кредиток» и «браузер XYZ тайно отсылал данные кредиток своим авторам» и сразу станет ясно чего на самом деле стоит опасаться.
Тогда о каком «божьем писании» изначально может идти речь? :) Если в итоге все решили какие-то люди, а не высший разум.
Впрочем, даже если каким-то образом им на самом деле удалось бы вычленить оригинал (по количеству копий там или еще как-то), то Левит то они оставили. И, если верующими (церковью) Библия признается написанной богом книгой (пусть и через посредников в виде пророков), то и описанные там (вполне детально, кстати) жертвоприношения так же написаны богом, верно? Или вот в Исход 21:17 написано, что ребенка, который плохо отзовется о своих родителях, то его нужно убить. Или в том же Исход 29:38 предписывается приносить в жертву аж двух ягненков в день. Ну и много еще такого.

Так вот, почему тогда стихи, связанные с гонениями на ЛГБТ некоторыми современными верующими и религиозными организациями соблюдаются, а остальное нет? Как разрешается этот парадокс с точки зрения божественного происхождения Библии и соблюдения написанного там? Вот что мне интересно.
NASA — 2,562 Photos
www.flickr.com/photos/nasacommons

Internet Archive Book Image — 3,840,573 Photos
www.flickr.com/photos/internetarchivebookimages

Кто ещё что знает интересного?
В описанном эсплоите он пропускает данные сквозь себя, но делает довольно тупую обработку: просто заметив определённую сигнатуру выполняет определённое действие. А действия могут быть довольно экзотическими :-)

Например можно попросить его в сектор после команды записать содержимое другого сектора. Грубо говоря постим на форуме коммендарий SIG@SECTOR123:XXXXXX@, винчестер увидев SIG@SECTOR123 вместо XXXXXX@ вписывает содержимое сектора 123. Дальше мы тупо идём не форум и читаем свежезаписанный комментарий. Оп-па — у нас уже есть содержимое сектора 123. Точно также при желании можно и поменять содержимое секторов. Всё, пожалуйте бриться: найти всякие /etc/shadow, /etc/sshd/*, сделать backup и изменить на то, что нам нужно — дело техники. Ну а зайдя на машинку под суперпользователем уже можно и вычистить ошмётки, которые мы в форум навставляли.

То есть атака идёт просто на сервер, а винчестер предоставляет «услугу» удалённого доступа к собственному содержимому, что, согласитесь, сильно облегчает весь процесс.
Винчестер пока еще не имеет прямого выхода во внешний мир кроме одного единственного интерфейса.
Вы это серьёзно? Всё больше подтверждается, что паранойей озабочены люди, которые слабо понимают как устроен их компьютер на самом деле.

А ничего, что это «один-единственный интерфейс» позволяет HDD или SDD читать и писать произвольные области памяти? То есть даёт доступ ко всем структурам ядра, ко всем данным, которые программа только имеет в принципе, ко всем драйверам и прочему, прочему, прочему!

даже если внутренние блобы и будут содержать шпионскую часть, данные просто некуда передавать.
Как это некуда? Залезть «грязными ручками» в недра операционки, создать там процесс, который что угодно куда угодно отошлёт. Ну да, для этого нужно знать как у нас нонче операционка устроена. Ну так меняются они редко, а если обновление нужно выслать, то даже про операционку знать ничего не нужно: можно просто периодически сканировать память и смотреть на сигнатуры. Да можно даже и не сканировать: обновление будет в какой-то момент после скачивания будет писаться на диск — тут-то мы его и заметим. Поймать «секретную» сигнатуру — плёвое дело, много ресурсов не займёт.

А анализировать поступающие данные и подменять их — просто не хватит мощности внутреннего процессора, падение скорости обмена данными станет очевидным.
У вас какие-то данные есть или вы просто на это надеетесь? Вопрос «а может ли HDD или SSD взломать систему» как бы даже не стоит (тут даже думать не о чем — может, конечно). Вопрос, который сейчас обсуждается совсем другой: а насколько незаметно он может это сделать! Вот, почитайте на досуге. Если не хочется странную DMA-активность разводить, то можно обойтись просто замедлением на 1%. Хотя данные тут будут меняться, это можно заметить. Дорабатывать надо.

В любом случае у HDD или SSD на порядок (а то и на два) больше возможностей чем у того несчастного блоба, засунутого в «песочницу» с обнаружения которого начались вопли топикстартера.
Люди, которых волнует их безопаасноть, которые понимают что-то в IT, беспокоются из-за этого.
По-моему «беспокоются» как раз люди, которые ни черта не понимают в IT.

Мегабайты кода от Intel, которые работают всегда, делают бог знают что и от конторых ни у кого нет исходников — отлично!
Проприетарная операционка слушающая все пакеты, проходящие через ваш Ethernet — ни разу не проблема!
Добавьте в кусок дерьма бонус-функцию «а теперь сюда можно безболезенно вносить закладки» — и ваша безопасность, конечно же, повысится.

В современном мире нельзя пользоваться ни одним устройством не запуская при этом многих мегабайтов проприетарного кода. В любой персоналке с десяток процессоров и куча проприетарного кода к каждому. Никакого способа с ними что-то сделать в принципе нет: вам приходится верить в то, что вся эта куча кода реально делает то, что она, по спецификации, должна делать. Чем вся эта «куча-мала» от никому не известных разработчиков отличается от бинарного блоба от Google?

Если вместо разумной оценки рисков начать заниматься догматизмом, то безопасности вы вряд ли добъётесь, зато можете потратить массу времени и сил на борьбу с ветряными мельницами, да.
1

Information

Rating
Does not participate
Location
Финляндия
Date of birth
Registered
Activity