Added files from Sergey Nozhenko