start implementation
rename arrays to collection
first lifecycle