i have code: var triangles: [[[cashapelayer]]] = array(repeating: array(repeating: array(repeating: 0, count: 2), count: 15), count: 15); but generates "cannot convert value of type..." compilation error. how can solve that? want access cashapelayers this: triangles[1][2][1].fillcolor = uicolor(red: 40/255, green: 73/255, blue: 80/255, alpha: 1).cgcolor; use optionals. var triangles: [[[cashapelayer?]]] = array(repeating: array(repeating: array(repeating: nil, count: 2), count: 15), count: 15) now there's nil instead of 0, think hinting at. every triangles[x][y][z] optional type you'll have safely unwrap. so have triangles[x][y][z] = cashapelayer() before object. edit correction. @ooper i thought more, , realized didn't really answer question. so may use loops initialize (which pain), or every time access index: if triangles[x][y][z] == nil { triangles[x][y][z] = cashapelayer() } let bloop = triangles[x][y][z]! bloop.fil...