На работоспособность не проверял. Отвечу на вопросы.