refactored for low memory footprint
help, examples, ...