The provided type '{0}' has member '{1}' which has declaring type '{2}'. Expected declaring type to be the same as provided ...