     }
 }
 
-let n = 3
-var E = SpectralSequence(size: (2 * n + 1, 2))
-
-E.name = "S^1 -> S^{2n + 1} -> CP^n"
+var E = SerreSS(size: (5, 2))
+
+E.name = "S^1 -> S^5 -> CP^2"
 E.fiber = [Z, Z]
-E.total = [Z] + 0.repeating(2 * n) + [Z]
-
+E.total = [Z, 0, 0, 0, 0, Z]
 E.solve()
 
-print(E.detailDescription)
+print(E.name!, "\n")
+print(E.detailDescription, "\n")
+print("H^*(CP^2) = {", E.base.flatMap{ $0 == 1 ? "Z" : "0"}.join(", "), "}")

    }
}

final class SpectralSequence {
    var name: String? = nil
    let size: (width: Int, height: Int)
    

    }
    
    func solve() {
        fillEinf()
    }
    
