preprocessing requirements