Iterative
Recursive
Functional
prototype
clear