Type argument T needs an upper bound (namely `Producer[_]`).