Author: Rafkat Amirkhanovich Valitov