get rid of unsafeCoerce