separated build steps