Merge to @Taluu's refacto-3.0