 
 // MARK: - Implementation Details Follow
 
-
-private func undefined<A>() -> A {
-	fatalError("")
-}
-
 fileprivate final class ArrowOfImpl<T : Hashable & CoArbitrary, U : Arbitrary> : Arbitrary, CustomStringConvertible {
 	fileprivate var table : Dictionary<T, U>
 	fileprivate var arr : (T) -> U


	convenience init(_ embed : @escaping (T) -> U, _ project : @escaping (U) -> T) {
		var table = [T:U]()
		self.init(table, { (_ : T) -> U in return undefined() }, { (_ : U) -> T in return undefined() })

		self.embed = { t in
			if let v = table[t] {


	convenience init(_ arr : @escaping (T) -> U) {
		var table = [T:U]()
		self.init(table, { (_ : T) -> U in
			fatalError("Table forced before initialization completed; is something re-entrant?")
		})

		self.arr = { x in
			if let v = table[x] {
