         
         let seq : PersistentVector<Int> = [0,1,3]
         
-        let changedSeq = seq.assoc(index: 0, 42)
-        
-        XCTAssertEqual("[42, 1, 3]", changedSeq.description)
+        let changedSeq = seq
+            .assoc(index: 0, 42) // replace existing element
+            .assoc(index: 3, 9000) // append new element
+        
+        XCTAssertEqual("[42, 1, 3, 9000]", changedSeq.description)
         XCTAssertEqual("[0, 1, 3]", seq.description)
     }
     

    
    func testCollection() {
        
        let seq : PersistentVector<Int> = [0,1,3]
        
        XCTAssertEqual(1, seq[1], "subscript")
    }
    
    func testCompare() {

        
        let seqB = PersistentVector<Int>().conj(0).conj(1).conj(2).conj(3).conj(5).conj(6)
        
        XCTAssert(seqA == seqB)
        XCTAssert(seqA == seqA)
        XCTAssert(seqA != seqA.conj(7))
        XCTAssert(seqA != seqA.assoc(index: 1, 9000))
    }
    
    func testSubVector() {
