add return functions