adding some fns