first and rest
test refactor
stupid reduce
non recursive reduce.... fuck php
cleaning code
doc new functions