Copyright (c) 2013-2015 Vadim Ushakov
