reducing each calls