dependencies & guard