Replace TypeSafety implementation with new concept