meta17::contains_of<A, B> checks wether B contains A, when B is a typepack. However when B is not a typepack, it just checks, wether B is the same type as A. This makes it easier to make mistakes when using this construct and harder to find the errors that result from those mistakes.