cumul improvement

- randomized propagation
- memory leak fixed
- minor code opt
- enable override (protected)