proper gradelization