improved documentation and explain function