final method refactored