v 1.0
only statements
v 1.0
v 0.5 very inefficient