Implementation is not totally safe