fix bug because sometimes capabilities method is private