refactored public interfaces to improve the use
generated new docs