same as before, I think those function are useless and already provided by lib common