Squashed commit of the following:

commit f129372563b631239e3df6a8023a2aa8e2113192
Author: Poturaev <nanopeni@gmail.com>
Date:   Tue Jun 25 11:28:30 2013 +0700

    ...