added the super code
replaced Arraylists
merged?