summaryrefslogtreecommitdiff
path: root/examples/scala-js/javalib-ex-test-suite/src
diff options
context:
space:
mode:
Diffstat (limited to 'examples/scala-js/javalib-ex-test-suite/src')
-rw-r--r--examples/scala-js/javalib-ex-test-suite/src/test/scala/scala/scalajs/testsuite/javalibex/DataInputStreamTest.scala338
-rw-r--r--examples/scala-js/javalib-ex-test-suite/src/test/scala/scala/scalajs/testsuite/javalibex/ZipInputStreamTest.scala136
2 files changed, 0 insertions, 474 deletions
diff --git a/examples/scala-js/javalib-ex-test-suite/src/test/scala/scala/scalajs/testsuite/javalibex/DataInputStreamTest.scala b/examples/scala-js/javalib-ex-test-suite/src/test/scala/scala/scalajs/testsuite/javalibex/DataInputStreamTest.scala
deleted file mode 100644
index 61ec560..0000000
--- a/examples/scala-js/javalib-ex-test-suite/src/test/scala/scala/scalajs/testsuite/javalibex/DataInputStreamTest.scala
+++ /dev/null
@@ -1,338 +0,0 @@
-package scala.scalajs.testsuite.javalibex
-
-import java.io._
-
-import org.scalajs.jasminetest.JasmineTest
-
-import scala.scalajs.js.typedarray._
-import scala.scalajs.js.JSConverters._
-
-object DataInputStreamTest extends JasmineTest {
-
- def tests(name: String)(inFromBytes: Seq[Byte] => InputStream) {
- def newStream(data: Int*) =
- new DataInputStream(inFromBytes(data.map(_.toByte)))
-
- when("typedarray").
- describe(name) {
-
- it("should provide `readBoolean`") {
- val data = Seq(0x00, 0x01, 0xF1, 0x00, 0x01)
- val stream = newStream(data: _*)
-
- for (d <- data)
- expect(stream.readBoolean()).toBe(d != 0)
-
- expect(() => stream.readBoolean()).toThrow // EOF
- }
-
- it("should provide `readByte`") {
- val data = Seq(0x00, 0x01, 0xF1, 0x7D, 0x35)
- val stream = newStream(data: _*)
-
- for (d <- data)
- expect(stream.readByte()).toBe(d.toByte)
-
- expect(() => stream.readBoolean()).toThrow // EOF
- }
-
- it("should provide `readChar`") {
- val stream = newStream(
- 0x00, 0x48, // H
- 0x00, 0xF6, // ö
- 0x00, 0x6C, // l
- 0x00, 0x6C, // l
- 0x00, 0xF6, // ö
- 0x00, 0x20, // [space]
- 0x00, 0x57, // W
- 0x01, 0x03, // ă
- 0x00, 0x72, // r
- 0x02, 0x34, // ȴ
- 0x01, 0x11, // đ
- 0x56 // dangling
- )
- var res = ""
-
- for (i <- 1 to 11)
- res += stream.readChar()
-
- expect(res).toEqual("Höllö Wărȴđ")
-
- expect(() => stream.readChar()).toThrow // Dangling + EOF
- }
-
- it("should provide `readDouble`") {
- val stream = newStream(
- 0x3f, 0xe6, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
- 0x41, 0x15, 0x19, 0x20, 0x45, 0x8d, 0x9b, 0x5f,
- 0xc0, 0xab, 0x20, 0x22, 0x75, 0x25, 0x46, 0x0b,
- 0x7f, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xc0, 0x1c, 0x0d, 0xca, 0x65, 0xea, 0x3f, 0xa4,
- 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x01 // dangling
- )
-
- expect(stream.readDouble()).toBe(0.7)
- expect(stream.readDouble()).toBe(345672.067923)
- expect(stream.readDouble()).toBe(-3472.0673)
- expect(stream.readDouble().isNaN).toBe(true)
- expect(stream.readDouble()).toBe(Double.PositiveInfinity)
- expect(stream.readDouble()).toBe(-7.0134674)
- expect(stream.readDouble()).toBe(Double.NegativeInfinity)
- expect(stream.readDouble()).toBe(0)
- expect(() => stream.readDouble()).toThrow
- }
-
- it("should provide `readFloat`") {
- val stream = newStream(
- 0xbf, 0x80, 0x00, 0x00,
- 0x45, 0x8e, 0x9c, 0x83,
- 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x7f, 0xc0, 0x00, 0x00,
- 0x7f, 0x80, 0x00, 0x00,
- 0xbb, 0x03, 0x12, 0x6f,
- 0xff, 0x80, 0x00, 0x00,
- 0xff // dangling
- )
-
- expect(stream.readFloat()).toBeCloseTo(-1.0f, 6)
- expect(stream.readFloat()).toBeCloseTo(4563.564f, 6)
- expect(stream.readFloat()).toBeCloseTo(-0.0f, 6)
- expect(stream.readFloat()).toBeCloseTo(0.0f, 6)
- expect(stream.readFloat().isNaN).toBe(true)
- expect(stream.readFloat()).toBe(Float.PositiveInfinity)
- expect(stream.readFloat()).toBeCloseTo(-0.002f, 6)
- expect(stream.readFloat()).toBe(Float.NegativeInfinity)
- expect(() => stream.readDouble()).toThrow
- }
-
- it("should provide `readInt`") {
- val stream = newStream(
- 0x00, 0x00, 0x00, 0x00,
- 0x7f, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0xff, 0xfc,
- 0x00, 0x00, 0x00, 0x53,
- 0x00, 0x00, 0x89, 0xa2,
- 0xff, 0xfe, 0x82, 0xfd,
- 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x01)
-
- expect(stream.readInt()).toBe(0)
- expect(stream.readInt()).toBe(Int.MaxValue)
- expect(stream.readInt()).toBe(-4)
- expect(stream.readInt()).toBe(83)
- expect(stream.readInt()).toBe(35234)
- expect(stream.readInt()).toBe(-97539)
- expect(stream.readInt()).toBe(Int.MinValue)
- expect(stream.readInt()).toBe(1)
- expect(() => stream.readDouble()).toThrow
- }
-
- it("should provide `readLong`") {
- val stream = newStream(
- 0x00, 0x01, 0xf0, 0xec, 0x59, 0x0c, 0x70, 0x9a,
- 0xff, 0xff, 0xff, 0xff, 0xfe, 0x10, 0xd5, 0x5e,
- 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x79, 0x24,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2f)
-
- expect(stream.readLong() == 546372873646234L).toBeTruthy
- expect(stream.readLong() == -32451234L).toBeTruthy
- expect(stream.readLong() == Long.MaxValue).toBeTruthy
- expect(stream.readLong() == 0L).toBeTruthy
- expect(stream.readLong() == -1L).toBeTruthy
- expect(stream.readLong() == Long.MinValue).toBeTruthy
- expect(stream.readLong() == -34524L).toBeTruthy
- expect(stream.readLong() == 47L).toBeTruthy
- expect(() => stream.readDouble()).toThrow
- }
-
- it("should provide `readShort`") {
- val stream = newStream(
- 0x01, 0xc5,
- 0xff, 0xd5,
- 0x7f, 0xff,
- 0x18, 0xb0,
- 0x00, 0x00,
- 0x80, 0x00,
- 0xfe, 0xa6,
- 0x00, 0x22,
- 0x01 // dangling
- )
-
- expect(stream.readShort()).toBe(453)
- expect(stream.readShort()).toBe(-43)
- expect(stream.readShort()).toBe(Short.MaxValue)
- expect(stream.readShort()).toBe(6320)
- expect(stream.readShort()).toBe(0)
- expect(stream.readShort()).toBe(Short.MinValue)
- expect(stream.readShort()).toBe(-346)
- expect(stream.readShort()).toBe(34)
- expect(() => stream.readDouble()).toThrow
- }
-
- it("should provide `readUnsignedByte`") {
- val data = Seq(0x00, 0x01, 0xF1, 0x7D, 0x35)
- val stream = newStream(data: _*)
-
- for (d <- data)
- expect(stream.readUnsignedByte()).toBe(d)
-
- expect(() => stream.readBoolean()).toThrow // EOF
- }
-
- it("should provide `readUnsignedShort`") {
- val stream = newStream(
- 0xfe, 0x4c,
- 0x00, 0x00,
- 0x18, 0xee,
- 0x0d, 0xed,
- 0x00, 0x2b,
- 0x01, 0xce,
- 0x01, 0x56,
- 0x64, 0x2b,
- 0x01 // dangling
- )
-
- expect(stream.readUnsignedShort()).toBe(65100)
- expect(stream.readUnsignedShort()).toBe(0)
- expect(stream.readUnsignedShort()).toBe(6382)
- expect(stream.readUnsignedShort()).toBe(3565)
- expect(stream.readUnsignedShort()).toBe(43)
- expect(stream.readUnsignedShort()).toBe(462)
- expect(stream.readUnsignedShort()).toBe(342)
- expect(stream.readUnsignedShort()).toBe(25643)
- expect(() => stream.readDouble()).toThrow
- }
-
- it("should provide `readFully` (1 arg & 3 arg)") {
- val stream = newStream(-100 to 99: _*)
- val buf = new Array[Byte](50)
-
- stream.readFully(buf)
- expect(buf.toJSArray).toEqual((-100 to -51).toJSArray)
-
- expect(() => stream.readFully(null)).toThrow
-
- stream.readFully(buf, 40, 10)
- expect(buf.toJSArray).toEqual(((-100 to -61) ++ (-50 to -41)).toJSArray)
-
- expect(() => stream.readFully(buf, 70, 1)).toThrow
- expect(() => stream.readFully(buf, 10, 100)).toThrow
- expect(() => stream.readFully(buf, -1, 2)).toThrow
- expect(() => stream.readFully(buf, 0, -1)).toThrow
-
- stream.readFully(buf, 0, 50)
- expect(buf.toJSArray).toEqual((-40 to 9).toJSArray)
-
- stream.readFully(buf, 0, 50)
- expect(buf.toJSArray).toEqual((10 to 59).toJSArray)
-
- expect(() => stream.readFully(buf)).toThrow
- }
-
- it("should provide `readFully` for bursty streams") {
- class BurstyStream(length: Int, burst: Int) extends InputStream {
- private var i: Int = 0
- def read(): Int = if (i < length) { i += 1; i } else -1
- override def read(buf: Array[Byte], off: Int, reqLen: Int): Int = {
- val len = Math.min(Math.min(reqLen, burst), length - i)
- if (reqLen == 0) 0
- else if (len == 0) -1
- else {
- var j: Int = 0
- while (j < len) {
- buf(off+j) = read().toByte
- j += 1
- }
- len
- }
- }
- }
-
- val stream = new DataInputStream(new BurstyStream(100, 5))
- val buf = new Array[Byte](50)
-
- stream.readFully(buf)
- expect(buf.toJSArray).toEqual((1 to 50).toJSArray)
-
- stream.readFully(buf, 40, 10)
- expect(buf.toJSArray).toEqual(((1 to 40) ++ (51 to 60)).toJSArray)
-
- expect(() => stream.readFully(buf)).toThrow
- }
-
- it("should provide `readUTF`") {
- val stream = newStream(
- 0x00, 0x10, 0x48, 0xc3, 0xb6, 0x6c, 0x6c, 0xc3,
- 0xb6, 0x20, 0x57, 0xc4, 0x83, 0x72, 0xc8, 0xb4,
- 0xc4, 0x91, 0x00, 0x0d, 0x70, 0x6f, 0x6f, 0x20,
- 0x2d, 0x3e, 0x20, 0xed, 0xa0, 0xbd, 0xed, 0xb2,
- 0xa9, 0x00, 0x03, 0xe6, 0x84, 0x9b)
-
- expect(stream.readUTF).toEqual("Höllö Wărȴđ")
- expect(stream.readUTF).toEqual("poo -> 💩")
- expect(stream.readUTF).toEqual("愛")
-
- val badStream = newStream(0x00, 0x01, 0xC0, 0x82)
- expect(() => badStream.readUTF).toThrow
- }
-
- it("should provide `readLine`") {
- val stream = newStream(
- "Hello World\nUNIX\nWindows\r\nMac (old)\rStuff".map(_.toInt): _*)
-
- expect(stream.readLine()).toEqual("Hello World")
- expect(stream.readLine()).toEqual("UNIX")
- expect(stream.readLine()).toEqual("Windows")
- expect(stream.readLine()).toEqual("Mac (old)")
- expect(stream.readLine()).toEqual("Stuff")
- expect(stream.readLine()).toBe(null)
- }
-
- it("should allow marking even when `readLine` has to push back") {
- val stream = newStream(
- "Hello World\nUNIX\nWindows\r\nMac (old)\rStuff".map(_.toInt): _*)
-
- expect(stream.readLine()).toEqual("Hello World")
- stream.mark(1000)
- expect(stream.readLine()).toEqual("UNIX")
- stream.reset()
- expect(stream.readLine()).toEqual("UNIX")
- expect(stream.readLine()).toEqual("Windows")
- expect(stream.readLine()).toEqual("Mac (old)")
- stream.mark(1000)
- expect(stream.readLine()).toEqual("Stuff")
- stream.reset()
- expect(stream.readLine()).toEqual("Stuff")
- expect(stream.readLine()).toBe(null)
- }
-
- }
-
- }
-
- tests("java.io.DataInputStream - generic case")(bytes =>
- new ByteArrayInputStream(bytes.toArray))
-
- tests("java.io.DataInputStream - ArrayBufferInputStream case")(bytes =>
- new ArrayBufferInputStream(new Int8Array(bytes.toJSArray).buffer))
-
- tests("java.io.DataInputStream - partially consumed ArrayBufferInputStream case") { bytes =>
- val addBytes = Seq[Byte](0, 0, 0, 0)
- val allBytes = addBytes ++ bytes
- val in = new ArrayBufferInputStream(
- new Int8Array(allBytes.toJSArray).buffer)
-
- for (_ <- addBytes) in.read()
-
- in
- }
-
-}
diff --git a/examples/scala-js/javalib-ex-test-suite/src/test/scala/scala/scalajs/testsuite/javalibex/ZipInputStreamTest.scala b/examples/scala-js/javalib-ex-test-suite/src/test/scala/scala/scalajs/testsuite/javalibex/ZipInputStreamTest.scala
deleted file mode 100644
index b2a2fe2..0000000
--- a/examples/scala-js/javalib-ex-test-suite/src/test/scala/scala/scalajs/testsuite/javalibex/ZipInputStreamTest.scala
+++ /dev/null
@@ -1,136 +0,0 @@
-package scala.scalajs.testsuite.javalibex
-
-import org.scalajs.jasminetest.JasmineTest
-
-import java.io._
-import java.util.zip._
-
-object ZipInputStreamTest extends JasmineTest {
-
- when("typedarray").
- describe("java.util.zip.ZipInputStream") {
-
- it("should read zip archives") {
- val in = new ZipInputStream(new ByteArrayInputStream(binZip))
-
- def expectBinEntry(name: String, data: Seq[Int]): Unit = {
- val e = in.getNextEntry()
- expect(e.getName()).toEqual(name)
-
- for (d <- data)
- expect(in.read()).toBe(d)
-
- expect(in.read()).toBe(-1)
- }
-
- def expectStrEntry(name: String, content: String): Unit = {
- val e = in.getNextEntry()
- expect(e.getName()).toEqual(name)
-
- val r = new InputStreamReader(in)
-
- for (c <- content)
- expect(r.read().toChar).toBe(c)
-
- expect(r.read()).toBe(-1)
- }
-
- expectBinEntry("greetings/", Seq())
- expectStrEntry("greetings/en.txt", "Hello World, how are you doing?\n")
- expectStrEntry("greetings/es.txt", "¿Hola mundo, cómo estás?\n")
- expectStrEntry("greetings/fr.txt", "Bonjour, comment ça va?\n")
- expectStrEntry("greetings/ja.txt", "こんにちは、お元気ですか。\n")
- expectBinEntry("binary/", Seq())
- expectBinEntry("binary/bytes_0_to_50.bin", 0 to 50)
-
- expect(in.getNextEntry() == null).toBeTruthy
- in.close()
- }
-
- }
-
- /** A zip archive for testing:
- *
- * $ zipinfo test.zip
- * Archive: test.zip 1304 bytes 7 files
- * drwxr-xr-x 3.0 unx 0 bx stor 13-Aug-14 07:42 greetings/
- * -rw-r--r-- 3.0 unx 32 tx stor 13-Aug-14 07:40 greetings/en.txt
- * -rw-r--r-- 3.0 unx 28 tx stor 13-Aug-14 07:42 greetings/es.txt
- * -rw-r--r-- 3.0 unx 25 tx stor 13-Aug-14 07:41 greetings/fr.txt
- * -rw-r--r-- 3.0 unx 40 tx stor 13-Aug-14 07:40 greetings/ja.txt
- * drwxr-xr-x 3.0 unx 0 bx stor 13-Aug-14 07:48 binary/
- * -rw-r--r-- 3.0 unx 51 bx stor 13-Aug-14 07:48 binary/bytes_0_to_50.bin
- * 7 files, 176 bytes uncompressed, 176 bytes compressed: 0.0%
- */
- val binZip = Array[Byte](80, 75, 3, 4, 10, 0, 0, 0, 0, 0, 89, 61, 13, 69, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 28, 0, 103, 114, 101, 101, 116,
- 105, 110, 103, 115, 47, 85, 84, 9, 0, 3, -39, -6, -22, 83, -44, -4, -22,
- 83, 117, 120, 11, 0, 1, 4, -4, 1, 0, 0, 4, 0, 0, 0, 0, 80, 75, 3, 4, 10,
- 0, 2, 0, 0, 0, 13, 61, 13, 69, -125, -110, -96, -74, 32, 0, 0, 0, 32, 0,
- 0, 0, 16, 0, 28, 0, 103, 114, 101, 101, 116, 105, 110, 103, 115, 47, 101,
- 110, 46, 116, 120, 116, 85, 84, 9, 0, 3, 73, -6, -22, 83, -108, -4, -22,
- 83, 117, 120, 11, 0, 1, 4, -4, 1, 0, 0, 4, 0, 0, 0, 0, 72, 101, 108, 108,
- 111, 32, 87, 111, 114, 108, 100, 44, 32, 104, 111, 119, 32, 97, 114, 101,
- 32, 121, 111, 117, 32, 100, 111, 105, 110, 103, 63, 10, 80, 75, 3, 4, 10,
- 0, 2, 0, 0, 0, 89, 61, 13, 69, -27, 99, -56, -20, 28, 0, 0, 0, 28, 0, 0,
- 0, 16, 0, 28, 0, 103, 114, 101, 101, 116, 105, 110, 103, 115, 47, 101,
- 115, 46, 116, 120, 116, 85, 84, 9, 0, 3, -39, -6, -22, 83, -108, -4, -22,
- 83, 117, 120, 11, 0, 1, 4, -4, 1, 0, 0, 4, 0, 0, 0, 0, -62, -65, 72, 111,
- 108, 97, 32, 109, 117, 110, 100, 111, 44, 32, 99, -61, -77, 109, 111, 32,
- 101, 115, 116, -61, -95, 115, 63, 10, 80, 75, 3, 4, 10, 0, 2, 0, 0, 0, 42,
- 61, 13, 69, -2, -58, -42, 30, 25, 0, 0, 0, 25, 0, 0, 0, 16, 0, 28, 0, 103,
- 114, 101, 101, 116, 105, 110, 103, 115, 47, 102, 114, 46, 116, 120, 116,
- 85, 84, 9, 0, 3, -128, -6, -22, 83, -108, -4, -22, 83, 117, 120, 11, 0, 1,
- 4, -4, 1, 0, 0, 4, 0, 0, 0, 0, 66, 111, 110, 106, 111, 117, 114, 44, 32,
- 99, 111, 109, 109, 101, 110, 116, 32, -61, -89, 97, 32, 118, 97, 63, 10,
- 80, 75, 3, 4, 10, 0, 2, 0, 0, 0, 24, 61, 13, 69, -26, -5, 76, 91, 40, 0,
- 0, 0, 40, 0, 0, 0, 16, 0, 28, 0, 103, 114, 101, 101, 116, 105, 110, 103,
- 115, 47, 106, 97, 46, 116, 120, 116, 85, 84, 9, 0, 3, 96, -6, -22, 83,
- -108, -4, -22, 83, 117, 120, 11, 0, 1, 4, -4, 1, 0, 0, 4, 0, 0, 0, 0,
- -29, -127, -109, -29, -126, -109, -29, -127, -85, -29, -127, -95, -29,
- -127, -81, -29, -128, -127, -29, -127, -118, -27, -123, -125, -26, -80,
- -105, -29, -127, -89, -29, -127, -103, -29, -127, -117, -29, -128, -126,
- 10, 80, 75, 3, 4, 10, 0, 0, 0, 0, 0, 6, 62, 13, 69, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 7, 0, 28, 0, 98, 105, 110, 97, 114, 121, 47, 85, 84, 9, 0,
- 3, 28, -4, -22, 83, -44, -4, -22, 83, 117, 120, 11, 0, 1, 4, -4, 1, 0, 0,
- 4, 0, 0, 0, 0, 80, 75, 3, 4, 10, 0, 2, 0, 0, 0, 3, 62, 13, 69, -7, 93, 98,
- 55, 51, 0, 0, 0, 51, 0, 0, 0, 24, 0, 28, 0, 98, 105, 110, 97, 114, 121,
- 47, 98, 121, 116, 101, 115, 95, 48, 95, 116, 111, 95, 53, 48, 46, 98, 105,
- 110, 85, 84, 9, 0, 3, 22, -4, -22, 83, -108, -4, -22, 83, 117, 120, 11, 0,
- 1, 4, -4, 1, 0, 0, 4, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
- 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
- 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
- 48, 49, 50, 80, 75, 1, 2, 30, 3, 10, 0, 0, 0, 0, 0, 89, 61, 13, 69, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 24, 0, 0, 0, 0, 0, 0, 0, 16, 0, -19,
- 65, 0, 0, 0, 0, 103, 114, 101, 101, 116, 105, 110, 103, 115, 47, 85, 84,
- 5, 0, 3, -39, -6, -22, 83, 117, 120, 11, 0, 1, 4, -4, 1, 0, 0, 4, 0, 0, 0,
- 0, 80, 75, 1, 2, 30, 3, 10, 0, 2, 0, 0, 0, 13, 61, 13, 69, -125, -110,
- -96, -74, 32, 0, 0, 0, 32, 0, 0, 0, 16, 0, 24, 0, 0, 0, 0, 0, 1, 0, 0, 0,
- -92, -127, 68, 0, 0, 0, 103, 114, 101, 101, 116, 105, 110, 103, 115, 47,
- 101, 110, 46, 116, 120, 116, 85, 84, 5, 0, 3, 73, -6, -22, 83, 117, 120,
- 11, 0, 1, 4, -4, 1, 0, 0, 4, 0, 0, 0, 0, 80, 75, 1, 2, 30, 3, 10, 0, 2, 0,
- 0, 0, 89, 61, 13, 69, -27, 99, -56, -20, 28, 0, 0, 0, 28, 0, 0, 0, 16, 0,
- 24, 0, 0, 0, 0, 0, 1, 0, 0, 0, -92, -127, -82, 0, 0, 0, 103, 114, 101,
- 101, 116, 105, 110, 103, 115, 47, 101, 115, 46, 116, 120, 116, 85, 84, 5,
- 0, 3, -39, -6, -22, 83, 117, 120, 11, 0, 1, 4, -4, 1, 0, 0, 4, 0, 0, 0, 0,
- 80, 75, 1, 2, 30, 3, 10, 0, 2, 0, 0, 0, 42, 61, 13, 69, -2, -58, -42, 30,
- 25, 0, 0, 0, 25, 0, 0, 0, 16, 0, 24, 0, 0, 0, 0, 0, 1, 0, 0, 0, -92, -127,
- 20, 1, 0, 0, 103, 114, 101, 101, 116, 105, 110, 103, 115, 47, 102, 114,
- 46, 116, 120, 116, 85, 84, 5, 0, 3, -128, -6, -22, 83, 117, 120, 11, 0, 1,
- 4, -4, 1, 0, 0, 4, 0, 0, 0, 0, 80, 75, 1, 2, 30, 3, 10, 0, 2, 0, 0, 0, 24,
- 61, 13, 69, -26, -5, 76, 91, 40, 0, 0, 0, 40, 0, 0, 0, 16, 0, 24, 0, 0, 0,
- 0, 0, 1, 0, 0, 0, -92, -127, 119, 1, 0, 0, 103, 114, 101, 101, 116, 105,
- 110, 103, 115, 47, 106, 97, 46, 116, 120, 116, 85, 84, 5, 0, 3, 96, -6,
- -22, 83, 117, 120, 11, 0, 1, 4, -4, 1, 0, 0, 4, 0, 0, 0, 0, 80, 75, 1, 2,
- 30, 3, 10, 0, 0, 0, 0, 0, 6, 62, 13, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 7, 0, 24, 0, 0, 0, 0, 0, 0, 0, 16, 0, -19, 65, -23, 1, 0, 0, 98, 105,
- 110, 97, 114, 121, 47, 85, 84, 5, 0, 3, 28, -4, -22, 83, 117, 120, 11, 0,
- 1, 4, -4, 1, 0, 0, 4, 0, 0, 0, 0, 80, 75, 1, 2, 30, 3, 10, 0, 2, 0, 0, 0,
- 3, 62, 13, 69, -7, 93, 98, 55, 51, 0, 0, 0, 51, 0, 0, 0, 24, 0, 24, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, -92, -127, 42, 2, 0, 0, 98, 105, 110, 97, 114, 121,
- 47, 98, 121, 116, 101, 115, 95, 48, 95, 116, 111, 95, 53, 48, 46, 98, 105,
- 110, 85, 84, 5, 0, 3, 22, -4, -22, 83, 117, 120, 11, 0, 1, 4, -4, 1, 0, 0,
- 4, 0, 0, 0, 0, 80, 75, 5, 6, 0, 0, 0, 0, 7, 0, 7, 0, 83, 2, 0, 0, -81, 2,
- 0, 0, 0, 0)
-
-}