Either became more optional
creates an UnsafeConsumer
wtf
fix generics compile error