this map methods should be only in impl and should private