A generic instantiation for type '%1' from assembly '%2' was too deep. Is this generic type defined or used recursively? ...