                             println("            }")
                             println("        }")
                             println()
-                            println("        var identifier: String { return self.description } ")
+                            println("        var identifier: String? { return self.description } ")
                             println("        var description: String { return self.rawValue }")
                             println("    }")
                             println()

    println()
    
    println("//MARK: - SegueProtocol")
    println("protocol SegueProtocol {")
    println("    var identifier: String { get }")
    println("}")
    println()
    

        println("//MARK: - \(controllerType) extension")
        println("extension \(controllerType) {")
        println("    class var storyboardIdentifier:String? { return nil }")
        println("    func performSegue<T: SegueProtocol>(segue: T, sender: AnyObject?) {")
        println("       performSegueWithIdentifier(segue.identifier, sender: sender)")
        println("    }")
        println("}")
        println()
    }
	
	println("extension UIStoryboardSegue: SegueProtocol {")
	println("}")
	println()
    
    for storyboard in storyboards {
        storyboard.processStoryboard()
