reduce duplicated methods