Cms my engine: MyEngine CMS — Простой движок на файлах для простых сайтов

Лента новостей

Лайфхаки

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

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

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

3. Администрация (владельцы, должностные лица, директора, акционеры, учредители, работники, агенты, Кураторы секций и иные представители) прикладывает все усилия, чтобы обеспечить пользователей точной и достоверной информацией, но в то же время не исключает возможности возникновения ошибок.

4. Webformyself.com — это проект, работающий по принципу «как есть», без заключения каких-либо договорённостей или договоров между вами, пользователями данного сайта, администрацией, владельцами серверов, на которых он размещён, либо кем-то ещё, любым образом связанными с этим или родственными ему проектами, которые (договора) могут стать предметом прямых претензий.


Не вздумайте платить мошенникам!

Получил письмо со следующим содержимым (дословно и без правок):

3дрaвcтвуйте!
У меня для Вас плохие новости.
Уже довольно давно я получил доступ к Вашему устройству через которое вы посещаете интернет и все это время наблюдаю за вами. Всему виной сайты для взрослых на которые вы посещали.
В общем-то сайты для взрослых, которые вы посещаете и стали ключом к моему проникновению к вашим данным.
Я залил троянца, который каждые несколько часов обновляет свои сигнатуры, чтобы антивирусные программы не могли его распознать.
Он дает мне доступ к вашим камере и микрофону. Кроме того, у меня есть все копии данных, включая фотографии, социальные сети, переписки и контакты.
Недавно у меня возникла отличная идея: сделать видео где в одной части экрана удовлетворяете себя, а в другой видео, которое в тот момент проигрывалось. Получилось очень занятно!
Не сомневайтесь, что я могу буквально в пару кликов мыши разослать это видео по всем вашим контактам. Я думаю вы бы хотели предотвратить подобное развитие событий.
Поэтому вот мое предложение. Вы переводите сумму эквивалентную 650 долларам на мой биткоин кошелек и мы забываем друг о друге, а все данные и видео я удаляю навсегда.
Поверьте, это очень скромная сумма за мои труды.
Как купить биткоин вы легко сможете найти при помощи поисковых систем по типу yandex или google
Мой биткоин-кошелек (btc-wallet): 19mx3bxNUbs6JFWTuqEGepRyMTph7RDpVL
На оплату у вас 50 часов, это более чем 2 суток, так что времени вполне достаточно.
Отвечать мне бессмысленно — адрес генерируется автоматически, жаловаться тоже, письмо не может быть отслежено как и биткоин адрес. Я не делаю ошибок.
Если я обнаружу, что вы каким-то образом поделились этим сообщением — видео будет немедленно распространено.
Удачи и не держите зла. У каждого своя работа.6593951481228186588455111

Дорогие друзья! Даже если у вас закралось подозрение, что подобное действие могло случиться (в жизни всякое бывает), никогда не отправляейте денег на анонимный Биткоин-кошелёк. Гарантий тут нет никаких, более того, если вы пошлёте деньги, вы будете на крючке у мошенника.

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

Помните: мошенники хитры, они стараются давить на самые уязвимые места, такие как стыд, любовь к семье, скрытые страхи и комплексы. Шантажисты, в отличие от мошенников, намного более прямолинейны. Они не пытаются вызвать у вас ни чуства вины, ни стыда. Они предлагают свой товар и хотят на нём заработать.


Базовый модуль для My-engine CMS

Этот сайт работает на My-engine #CMS. Но, при попытке создания блога, я столкнулся с некоторыми проблемами, часть из которых я описал в статьях Создание этого блога. Поскольку сам движок мне понравился, я решил не делать блог с нуля а написать модуль, расширяющий функционал этого движка в нужном мне направлении.

Скачать модуль last update — 2020-12-28 15:18:31

Внимание! Если вы переименовали директорию /admin — разместите в ней файл с именем admin.trigger. Он может быть с любым содержимым, в том числе, и пустым.

Модуль можно установить таким же образом, как и другие модули этой #CMS: через Панель управления. Также можно просто распаковать архив и поместить директорию kff_basic в корневую директорию /modules движка.

При первом запуске системы с установленным модулем, скорее всего, будут возникать серверные ошибки из-за некоторых архитектурных конфликтов модуля и движка. Для их устранения следует скачать файл fixUpdate.php, загрузить его в корневую папку сайта, и запустить из браузера — YOUR.DOMAIN/fixUpdate.php. После этого система будет готова к работе с модулем без конфликтов.


Антиспам для Регистрации

Движок #MyEngine CMS обладает встроенным модулем для регистрации новых пользователей. Но в официальном чате стали появляться жалобы на массовую регистрацию спам-ботов через него.

Штатная каптча, размещённая в форме для регистраций, ситуацию никак не меняет. Боты сумели её обойти. В данной статье я приведу небольшой фикс, позволяющий отсечь изрядную часть спамеров. Идея реализации такой скрытой защиты не нова, но адаптирована именно для модуля Регистраций.

Всё, антиспам установлен. Боты уже не смогут определить путь отправки формы. Есть вопросы? Задавайте в комментарих внизу страницы.

При обновлении движка на новую версию потребуется повторно выполнить последний пункт инструкции — активацию Антиспама. При полной переустановке движка — нужно будет выполнить всю инструкцию полностью.

При повторном вызове файла YOUR.DOMAIN/modules/users/Antispam.php предусмотрена возможность восстановления системных файлов движка. Не думаю, что она кому-то понадобится, но тем не менее, чтобы не складывалось ложного ощущения необратимости внесённых изменений, я её предусмотрел.


Возврат средств с Айхор

Хочу здесь поделиться своей болью вывода средств с баланса хостинга Айхор.

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

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

Переписка с поддержкой Айхора была начата еще в прошлом (2019) году. Но, поскольку хостинг был перемещён в другой дата-центр, тикет с предыдущим запросом был утерян. После этого я открыл новый запрос в поддержку в конце прошлого года.

На сегодняшний день, 10.04.2020, прошло уже более ЧЕТЫРЁХ (!!!) месяцев со времени создания мною второго тикета. Поддержка мне исправно отвечает, чтобы я обратился через 2 недели. По их словам, что будет видно ниже, у них всё это время проводится какой-то аудит, который ещё не закончен, что является препятствием для возврата мне моих же денег.


Как я начал создавать этот блог. Часть 2

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

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

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

Так что остаётся придерживаться некоторых простых (с виду) правил:

Я не знаю пока, что у меня получится, но буду стараться соблюдать эти правила, дописывать к ним новые по мере получения полезной информации и использовать это на практике.


Как я начал создавать этот блог. Часть 1

Однажды я захотел сделать свой блог.

К этому моменту я уже довольно долго занимался веб-программированием. Поэтому начал подходить к выбору движка со знанием дела. Начал… и ничего подходящего не нашёл. Да, именно, среди бесплатных и популярных решений, существующих в интернете, не нашлось ничего подходящего к моим скромным требованиям.

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

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

Итак, что же именно я хотел получить?


Неубиваемая OC Windows — реальность

Если у вас получилось успешно установить ОС Windows на виртуальный диск и, при этом, вы воспользовались моими рекомендациями и создали именно динамический виртуальный диск, пришло время убедиться, что всё проделанное было не зря.

Став обладателем такой системы вы можете смело забыть про всевозможные бэкаперы и антивирусы. Если пользоваться системой по изложенной ниже инструкции, они станут просто не нужны.

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

Итак, вы уже имеете файл динамического виртуального диска Win8.1.vhdx с установленной операционной системой. Можно в дальнейшем использовать и его, но такое использование будет иметь ряд недостатков:

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


Установка ОС Windows на VHDX

Создание виртуального диска

Скажу сразу, что можно этого и не делать, если будете использовать 2-й способ установки, который будет описан ниже. А можно и сделать, и использовать его там же. Выбор за вами.

Как и говорилось в описании раздела, будет рассмотрен вариант установки Win 8.1×64. Сегодня уже трудно вспомнить компьютер, который бы не поддерживал 64-битную версию. Но если он у вас старый и оперативной памяти меньше 4ГБ, то лучше тогда ставить 32-битную версию (х86). Я бы рекомендовал именно 8.1, поскольку во-первых: она становится практически на любое железо и определяет его, а во-вторых: работает значительно стабильнее печально известной десятки. Также в ней исправлены многие недостатки, присущие её прототипу — Win 8.

Установить систему на ВД можно двумя способами: классическим — с загрузкой из-под БИОС, и из рабочей операционной системы. Первый способ несколько многоделен, поскольку в процессе установки нужно успеть из командной строки подмонтировать ВД, чтобы он определился установщиком как физический. Далее установка ничем не отличается от классической установки на логический раздел: такая же утомительная. Преимуществ перед вторым этот способ никаких не имеет, поэтому упоминаю о нём просто как о возможном варианте установки ОС, скажем, на компютер с установленным DOS или UNIX.

Для первого способа установки нужен готовый отформатированный виртуальный диск. Конечно, теоретически, его можно создать и в процессе установки — из командной строки, но я этого делать не пробовал. Всем, у кого на компьютере установлен Windows 8+ второй способ будет предпочтительнее.


Создание VHDX

Если вы заглянули в этот раздел, то вы ещё не знаете, насколько удобные технологии предлагает современный MicroSoft. Да, удивительно, но даже UNIX-системы пока не смогут повторить тех трюков, о которых речь пойдёт ниже. Сразу оговорюсь, что основная система, в которой тестировались все описанные возможности — Windows 8.1×64. Большая часть из них будут работать и в 7sp1, но следует помнить, что семёрка поддерживает лишь виртуальные диски с расширением #VHD, которые уступают описываемым #VHDX по многим параметрам.

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

Операционная система, установленная на виртуальном диске, сразу приобретает качества, недоступные ей при установке на обычный раздел физического диска.

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

Далее попробуем разобрать все нюансы использования, с которыми я столкнулся на собственном опыте.


Car Mechanic Simulator 2018 Общие обсуждения

Учебное пособие по замене CMS Engine [ЗАПРОС ПИН-кода]

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

В этом кратком руководстве я расскажу об основном процессе работы новой функции Engine Swap. Я также собираюсь объяснить, где искать, если у вас возникли проблемы с чтением, какие движки разрешено менять (пожалуйста, добавьте функцию прокрутки для этих разработчиков!).

Теперь, без лишних слов, вот как поменять двигатель!

[ПРИМЕЧАНИЕ. Если вам нужна визуальная помощь, щелкните ссылки. Это снимки экрана, чтобы помочь людям, так как Steam глуп в том, что вы не можете вставлять изображения. ]

Машина, которую я буду использовать, это зверь, Bolt Reptilia D/R:

https://imgur .com/P81auu0

#1) Подойдите к машине и щелкните правой кнопкой мыши на машине, чтобы открыть колесо опций:

View post on imgur.com

#2) Когда колесо открыто, нажмите на опцию «Статус автомобиля». Вы увидите экран информации об автомобиле, который показывает состояние автомобиля, его состояние, двигатель, пробег, цвет…

View post on imgur.com

#3) Вы можете заметить это странное маленькое дополнение (если вы играли в эту игру и возвращаетесь к ней), прямо рядом с отображением мощности/крутящего момента двигателя. , это список двигателей, которые можно заменить на ваш автомобиль:

View post on imgur.com

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

ПРИЛОЖЕНИЕ

Теперь это должно помочь всем. Но проблема с текущим способом, которым он существует, имеет тенденцию прокручиваться слишком быстро (и нужна полоса прокрутки как можно скорее, разработчики!).

Но допустим, вы либо хотите просмотреть список двигателей, которые можно поменять местами, либо даже хотите ввести любые другие двигатели (если вы знаете идентификатор двигателя, я объясню позже), вот как вы можете это сделать. сделай это!

#A1) Первое, что я бы порекомендовал, это перейти к руководствам в формате PDF для CMS 2018. В этой папке так много ценной информации, что рекомендуется, если вы хотите модифицировать, но также вам нужны ссылки на папки и файлы.

Как видно на изображении, он находится в папке «…/Common/Car Mechanic Simulator 2018/ModdingTools/PDFGuides». Основной PDF-файл, на который я указываю, — это «CMS18 Car Modding Guide.pdf», в нем вы прокручиваете вниз, и вы увидите ссылку, где находятся все файлы автомобилей.

View post on imgur.com

#A2) Но для краткости, файлы автомобилей находятся в папке «. ../StreammingAssets/Cars/». Здесь я зашел в папку Bolt Reptilia R2 (но вы могли зайти в любую машину, какую хотите, это просто для примера).

#A3) Основной файл, который вы ищете, это файл «config.txt». Это текстовый файл конфигурации вашего автомобиля.

View post on imgur.com

#A4) После того, как вы его открыли. Найдите/найдите внутри документа слово «Двигатель».

#A5) После того, как вы это сделаете, сначала вы можете получить вещи, которые не имеют отношения к делу, но что именно вы ищете, так это «type=engine_v8swapoptions=» (я предполагаю, что это будет по-другому для V6 и т. д. ., двигатели, но опять же, я делаю это только для этой машины). Вы увидите различные идентификаторы движков, это не только движки, которые вы можете выбрать, но я также считаю, что если вы знаете идентификаторы других движков, вы можете ввести их здесь, чтобы добавить в список в игре. (поправьте меня, если я ошибаюсь, я просто указываю на это).

View post on imgur.com

Ну вот! Это должно помочь другим, вроде меня, которые не знали, где и как поменять местами двигатели в игре.

Еще раз, разработчики, пожалуйста, закрепите этот пост, а также добавьте быструю полосу прокрутки в игру? Спасибо.

Последний раз редактировалось pjlx911;
29 Sep, 2018 @ 12:27

Кто платит, когда тест-драйв заканчивается отказом двигателя?

(Изображение предоставлено Getty Images)

Если автомобильный дилер позволяет вам взять автомобиль для тест-драйва, и он получает катастрофические повреждения двигателя и трансмиссии, вы несете ответственность за ремонт?

Заметьте, я не сказал «Из-за того, что вы сделали что-то не так», а сказал, что у него произошла поломка, которая произошла, когда вы управляли транспортным средством.

Запутались? Так же, как и моя читательница «Алиса», живущая в пригороде Лос-Анджелеса, недалеко от одного из самых живописных и вместе с тем опасных участков автомагистрали на межштатной автомагистрали 5, соединяющей Южную Калифорнию с Центральной долиной.

Подпишитесь на Kiplinger’s Personal Finance

Будьте умнее и лучше информированным инвестором.

Сэкономьте до 74%

Подпишитесь на бесплатные электронные информационные бюллетени Kiplinger

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

Прибыль и процветание с лучшими экспертными советами Kiplinger — прямо на вашу электронную почту.

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

Летом может вывести из строя двигатель и трансмиссию автомобиля, если они в плохом состоянии. У него есть два пандуса для безудержных грузовиков. Все это говорит о том, что съезд с I-5 является одним из самых драматичных драйвов, которые я знаю, и это никогда не надоедает.

Нашел «идеальный» подержанный компактный спортивный автомобиль

«Я искал спортивный автомобиль с автоматической коробкой передач и небольшим пробегом из Детройта и нашел модель 2013 года выпуска, которая, по моему мнению, была идеальной по цене 15 000 долларов США в автосалоне в Лос-Анджелесе. . Они сделали фотокопии моего удостоверения личности и водительских прав, вручили мне ключи и сказали: «Хотя эта конкретная модель больше не производится, она рассматривается как ответ Детройта BMW и Mercedes». Возьмите его с собой куда угодно».

«У меня есть семья, которая живет в Центральной долине и знает Виноградную лозу как свои пять пальцев. Достигнув вершины на высоте около 4000 футов, я начал спуск и переключился на более низкую передачу, как делал всегда. Это называется «торможением двигателем» и позволяет трансмиссии и двигателю замедлять автомобиль, чтобы вы не подвергались риску потери тормозов.

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

«Я попытался переключиться на более высокую передачу, но ничего не произошло, кроме этого ужасного, ужасного звука. Затем я услышал звук, похожий на взрыв, из машины повалил дым. Съехал с автострады на обочину, услышал еще странные, «хрустящие» звуки, потом машина совсем заглохла.

«Я позвонил в автосалон, и они прислали эвакуатор. Позже я узнал, что и трансмиссия, и двигатель были «взорваны» из-за превышения оборотов».

«Это ваша вина из-за переключения на пониженную передачу»

«Г-н. Бивер, менеджер подержанных автомобилей, и в письме, и в крике на меня по телефону настаивает на том, чтобы я оплатил ремонт автомобиля. «Вы используете автомобильные тормоза для замедления, а не для понижения передачи!» — повторил он.

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

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

Сказал техник из Денвера: «Автоматика, произведенная за последние несколько десятков лет, не позволит себе самоуничтожиться. Если вы едете со скоростью автомагистрали и пытаетесь переключить машину на неправильную передачу, это не сработает. Он может переключиться на более низкую передачу, чем та, на которой вы сейчас находитесь, но не позволит себе вызвать перегрузку двигателя».

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

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

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

Небольшая беседа с владельцем дилерского центра

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

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

Подводя итог, они сказали:

«Когда подержанный автомобиль терпит катастрофическую поломку на тест-драйве — особенно автомобиль, которому почти 10 лет — если вы не можете доказать, что клиент намеревался причинить вред автомобилю, вы взвешиваете стоимость ремонта. против того, чтобы просто выставить его на аукцион или объявить ломом».

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

«Это просто неправильно! Пожалуйста, скажите своему читателю, что мне очень жаль, что она пережила этот кошмар, и что если ей все еще нужно купить машину, она должна выбрать одну и договориться о встрече со мной. Я все исправлю».

Я передал эту информацию Алиссе, и насколько я понимаю, она примет его предложение.

Эта статья была написана и представляет точку зрения нашего консультанта, а не редакции Kiplinger.