done with arrays, hashes, nil and objects