First commit of advanced version.