Explanation Requirements may refer to the template parameters that are in scope, to the local parameters introduced in the parameter-list, and to any other declarations that are visible from the enclosing context. The substitution of template arguments into a requires-expression used in a declaration of a templated entity may result in the formation of invalid types or expressions in its …
https://tcs.rwth-aachen.de/docs/cpp/reference/en.cppreference.com/w/cpp/language/requires.html

