reduced retrieve function complexity