little rewrite, add return false to unify if empty