 		}
 
 		let version: UInt8
-		var flags: Flags
+		private var flags: Flags
 		var hasCRC: Bool { flags.hasCRC }
 		var compression: CompressionAlgorithm? { flags.compression }
 		var dataOffset: Int { 8 + (flags.hasCRC ? 4 : 0) }


		guard header.version == 1 else { throw UTS46Error.unknownDataVersion }

		let offset = 8 + (header.hasCRC ? 4 : 0)

		guard fileData.count > offset else { throw UTS46Error.badSize }


		case zlib = 3
	}

	private struct Header: RawRepresentable, CustomDebugStringConvertible {
		typealias RawValue = [UInt8]

		var rawValue: [UInt8] {
			return Self.signature + [UInt8(0), version, flags.rawValue]
		}
