began adding map and apply as primative procedures still todo