diff --git a/apps/pcx86/1981/visicalc/manifest.xml b/apps/pcx86/1981/visicalc/manifest.xml index 389fb09ce..3905fbf2b 100644 --- a/apps/pcx86/1981/visicalc/manifest.xml +++ b/apps/pcx86/1981/visicalc/manifest.xml @@ -1,5 +1,5 @@ - + VisiCalc diff --git a/apps/pcx86/1982/esuite/manifest.xml b/apps/pcx86/1982/esuite/manifest.xml index f3302c622..9a31ebdaf 100644 --- a/apps/pcx86/1982/esuite/manifest.xml +++ b/apps/pcx86/1982/esuite/manifest.xml @@ -1,5 +1,5 @@ - + Executive Suite diff --git a/apps/pcx86/1982/ratbas/manifest.xml b/apps/pcx86/1982/ratbas/manifest.xml index 532a59fc0..d4b5606e5 100644 --- a/apps/pcx86/1982/ratbas/manifest.xml +++ b/apps/pcx86/1982/ratbas/manifest.xml @@ -1,5 +1,5 @@ - + RatBas 2.13 diff --git a/apps/pcx86/1983/adventmath/manifest.xml b/apps/pcx86/1983/adventmath/manifest.xml index f94178176..4777a872c 100644 --- a/apps/pcx86/1983/adventmath/manifest.xml +++ b/apps/pcx86/1983/adventmath/manifest.xml @@ -1,5 +1,5 @@ - + Adventures in Math 1.00 diff --git a/apps/pcx86/1985/rogue/manifest.xml b/apps/pcx86/1985/rogue/manifest.xml index a7a5fce6a..d285ca31d 100644 --- a/apps/pcx86/1985/rogue/manifest.xml +++ b/apps/pcx86/1985/rogue/manifest.xml @@ -1,5 +1,5 @@ - + Rogue 1.49 diff --git a/apps/pcx86/1987/thinktank/manifest.xml b/apps/pcx86/1987/thinktank/manifest.xml index 5e443c722..b16db6889 100644 --- a/apps/pcx86/1987/thinktank/manifest.xml +++ b/apps/pcx86/1987/thinktank/manifest.xml @@ -1,5 +1,5 @@ - + ThinkTank 2.41NP diff --git a/apps/pcx86/1988/moria/manifest.xml b/apps/pcx86/1988/moria/manifest.xml index b246ecc34..f82fdadb6 100644 --- a/apps/pcx86/1988/moria/manifest.xml +++ b/apps/pcx86/1988/moria/manifest.xml @@ -1,5 +1,5 @@ - + The Dungeons of Moria 4.872 diff --git a/apps/pcx86/1992/moria/manifest.xml b/apps/pcx86/1992/moria/manifest.xml index 166d83987..9e0817eda 100644 --- a/apps/pcx86/1992/moria/manifest.xml +++ b/apps/pcx86/1992/moria/manifest.xml @@ -1,5 +1,5 @@ - + The Dungeons of Moria 5.5 diff --git a/devices/c1p/machine/32kb/machine.xml b/devices/c1p/machine/32kb/machine.xml index 31f2a7136..787a28f61 100644 --- a/devices/c1p/machine/32kb/machine.xml +++ b/devices/c1p/machine/32kb/machine.xml @@ -1,5 +1,5 @@ - + OSI Challenger 1P (32Kb) with Disk Support diff --git a/devices/c1p/machine/8kb/all/debugger/machine.xml b/devices/c1p/machine/8kb/all/debugger/machine.xml index 291af6f15..81e5cb3f7 100644 --- a/devices/c1p/machine/8kb/all/debugger/machine.xml +++ b/devices/c1p/machine/8kb/all/debugger/machine.xml @@ -1,5 +1,5 @@ - + OSI Challenger 1P (8Kb, Additional Software) diff --git a/devices/c1p/machine/8kb/all/machine.xml b/devices/c1p/machine/8kb/all/machine.xml index 5003e14e5..8ec0a4592 100644 --- a/devices/c1p/machine/8kb/all/machine.xml +++ b/devices/c1p/machine/8kb/all/machine.xml @@ -1,5 +1,5 @@ - + OSI Challenger 1P (8Kb, Additional Software) diff --git a/devices/c1p/machine/8kb/array/machine.xml b/devices/c1p/machine/8kb/array/machine.xml index 7d8e2c36e..302c55f18 100644 --- a/devices/c1p/machine/8kb/array/machine.xml +++ b/devices/c1p/machine/8kb/array/machine.xml @@ -1,5 +1,5 @@ - + Challenger 1P (8Kb) "Server Array" diff --git a/devices/c1p/machine/8kb/large/debugger/machine.xml b/devices/c1p/machine/8kb/large/debugger/machine.xml index 2c54da480..9e0340cda 100644 --- a/devices/c1p/machine/8kb/large/debugger/machine.xml +++ b/devices/c1p/machine/8kb/large/debugger/machine.xml @@ -1,5 +1,5 @@ - + OSI Challenger 1P (8Kb) with Debugger diff --git a/devices/c1p/machine/8kb/large/machine.xml b/devices/c1p/machine/8kb/large/machine.xml index c1858a9ad..2d1b8216d 100644 --- a/devices/c1p/machine/8kb/large/machine.xml +++ b/devices/c1p/machine/8kb/large/machine.xml @@ -1,5 +1,5 @@ - + OSI Challenger 1P (circa 1978) diff --git a/devices/c1p/machine/8kb/small/machine.xml b/devices/c1p/machine/8kb/small/machine.xml index f65150445..59440c9d1 100644 --- a/devices/c1p/machine/8kb/small/machine.xml +++ b/devices/c1p/machine/8kb/small/machine.xml @@ -1,5 +1,5 @@ - + diff --git a/devices/pc8080/machine/exerciser/machine-8080ex1.xml b/devices/pc8080/machine/exerciser/machine-8080ex1.xml index 3632a1516..9612e9cc6 100644 --- a/devices/pc8080/machine/exerciser/machine-8080ex1.xml +++ b/devices/pc8080/machine/exerciser/machine-8080ex1.xml @@ -1,5 +1,5 @@ - + 8080 Exerciser Test Machine diff --git a/devices/pc8080/machine/exerciser/machine-8080pre.xml b/devices/pc8080/machine/exerciser/machine-8080pre.xml index 2efe08f09..c90db2b86 100644 --- a/devices/pc8080/machine/exerciser/machine-8080pre.xml +++ b/devices/pc8080/machine/exerciser/machine-8080pre.xml @@ -1,5 +1,5 @@ - + 8080 Exerciser Preliminary Test Machine diff --git a/devices/pc8080/machine/exerciser/machine-cputest.xml b/devices/pc8080/machine/exerciser/machine-cputest.xml index 585a9bef9..3b20718d3 100644 --- a/devices/pc8080/machine/exerciser/machine-cputest.xml +++ b/devices/pc8080/machine/exerciser/machine-cputest.xml @@ -1,5 +1,5 @@ - + 8080 CPUTEST Machine diff --git a/devices/pc8080/machine/exerciser/machine-test.xml b/devices/pc8080/machine/exerciser/machine-test.xml index 6a061dc64..e96dd58ed 100644 --- a/devices/pc8080/machine/exerciser/machine-test.xml +++ b/devices/pc8080/machine/exerciser/machine-test.xml @@ -1,5 +1,5 @@ - + 8080 "Kelly Smith" Test Machine diff --git a/devices/pc8080/machine/exerciser/machine.xml b/devices/pc8080/machine/exerciser/machine.xml index 5f2b2e42a..2e36d7272 100644 --- a/devices/pc8080/machine/exerciser/machine.xml +++ b/devices/pc8080/machine/exerciser/machine.xml @@ -1,5 +1,5 @@ - + 8080 Exerciser Test Machine diff --git a/devices/pc8080/machine/invaders/debugger/machine.xml b/devices/pc8080/machine/invaders/debugger/machine.xml index 0a8ab923d..594989cc1 100644 --- a/devices/pc8080/machine/invaders/debugger/machine.xml +++ b/devices/pc8080/machine/invaders/debugger/machine.xml @@ -1,5 +1,5 @@ - + Space Invaders diff --git a/devices/pc8080/machine/invaders/machine.xml b/devices/pc8080/machine/invaders/machine.xml index fb4621085..292912bb9 100644 --- a/devices/pc8080/machine/invaders/machine.xml +++ b/devices/pc8080/machine/invaders/machine.xml @@ -1,5 +1,5 @@ - + Space Invaders diff --git a/devices/pc8080/machine/vt100/debugger/machine-left.xml b/devices/pc8080/machine/vt100/debugger/machine-left.xml index dfb2b8e61..b1ca5b2fc 100644 --- a/devices/pc8080/machine/vt100/debugger/machine-left.xml +++ b/devices/pc8080/machine/vt100/debugger/machine-left.xml @@ -1,5 +1,5 @@ - + VT100 Terminal diff --git a/devices/pc8080/machine/vt100/debugger/machine-right.xml b/devices/pc8080/machine/vt100/debugger/machine-right.xml index 3ff49b8e8..6a85dd0a7 100644 --- a/devices/pc8080/machine/vt100/debugger/machine-right.xml +++ b/devices/pc8080/machine/vt100/debugger/machine-right.xml @@ -1,5 +1,5 @@ - + VT100 Terminal diff --git a/devices/pc8080/machine/vt100/debugger/machine.xml b/devices/pc8080/machine/vt100/debugger/machine.xml index e8b8c2f13..c68695b59 100644 --- a/devices/pc8080/machine/vt100/debugger/machine.xml +++ b/devices/pc8080/machine/vt100/debugger/machine.xml @@ -1,5 +1,5 @@ - + VT100 Terminal diff --git a/devices/pc8080/machine/vt100/machine-left.xml b/devices/pc8080/machine/vt100/machine-left.xml index 929a9272c..0a3e1afbe 100644 --- a/devices/pc8080/machine/vt100/machine-left.xml +++ b/devices/pc8080/machine/vt100/machine-left.xml @@ -1,5 +1,5 @@ - + VT100 Terminal diff --git a/devices/pc8080/machine/vt100/machine-right.xml b/devices/pc8080/machine/vt100/machine-right.xml index 72217f2a3..31acc6f11 100644 --- a/devices/pc8080/machine/vt100/machine-right.xml +++ b/devices/pc8080/machine/vt100/machine-right.xml @@ -1,5 +1,5 @@ - + VT100 Terminal diff --git a/devices/pc8080/machine/vt100/machine.xml b/devices/pc8080/machine/vt100/machine.xml index e4220eb4e..def153c13 100644 --- a/devices/pc8080/machine/vt100/machine.xml +++ b/devices/pc8080/machine/vt100/machine.xml @@ -1,5 +1,5 @@ - + VT100 Terminal diff --git a/devices/pcx86/machine/5150/cga/256kb/debugger/machine.xml b/devices/pcx86/machine/5150/cga/256kb/debugger/machine.xml index 55556f58f..6fd39331c 100644 --- a/devices/pcx86/machine/5150/cga/256kb/debugger/machine.xml +++ b/devices/pcx86/machine/5150/cga/256kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 256K, Debugger diff --git a/devices/pcx86/machine/5150/cga/256kb/machine.xml b/devices/pcx86/machine/5150/cga/256kb/machine.xml index 9d3d754b2..b5880847f 100644 --- a/devices/pcx86/machine/5150/cga/256kb/machine.xml +++ b/devices/pcx86/machine/5150/cga/256kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 256K diff --git a/devices/pcx86/machine/5150/cga/384kb/softkbd/machine.xml b/devices/pcx86/machine/5150/cga/384kb/softkbd/machine.xml index e1d0ceec9..b9b41a25c 100644 --- a/devices/pcx86/machine/5150/cga/384kb/softkbd/machine.xml +++ b/devices/pcx86/machine/5150/cga/384kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 384K, Soft Keyboard diff --git a/devices/pcx86/machine/5150/cga/64kb/debugger/machine.xml b/devices/pcx86/machine/5150/cga/64kb/debugger/machine.xml index 7da3b4025..83fbbc518 100644 --- a/devices/pcx86/machine/5150/cga/64kb/debugger/machine.xml +++ b/devices/pcx86/machine/5150/cga/64kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 64K diff --git a/devices/pcx86/machine/5150/cga/64kb/machine.xml b/devices/pcx86/machine/5150/cga/64kb/machine.xml index 622543f7d..f522d621a 100644 --- a/devices/pcx86/machine/5150/cga/64kb/machine.xml +++ b/devices/pcx86/machine/5150/cga/64kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 64K diff --git a/devices/pcx86/machine/5150/cga/64kb/softkbd/machine.xml b/devices/pcx86/machine/5150/cga/64kb/softkbd/machine.xml index c3d820f15..01aaefbc1 100644 --- a/devices/pcx86/machine/5150/cga/64kb/softkbd/machine.xml +++ b/devices/pcx86/machine/5150/cga/64kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 64K diff --git a/devices/pcx86/machine/5150/dual/64kb/machine.xml b/devices/pcx86/machine/5150/dual/64kb/machine.xml index 9e1c5b1e1..56eb2ec6a 100644 --- a/devices/pcx86/machine/5150/dual/64kb/machine.xml +++ b/devices/pcx86/machine/5150/dual/64kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150) with Dual Displays diff --git a/devices/pcx86/machine/5150/mda/256kb/debugger/machine.xml b/devices/pcx86/machine/5150/mda/256kb/debugger/machine.xml index 18d37ae23..822a8d9b6 100644 --- a/devices/pcx86/machine/5150/mda/256kb/debugger/machine.xml +++ b/devices/pcx86/machine/5150/mda/256kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), MDA, 256K, Debugger diff --git a/devices/pcx86/machine/5150/mda/256kb/machine.xml b/devices/pcx86/machine/5150/mda/256kb/machine.xml index 3f2b270a1..75ae5d570 100644 --- a/devices/pcx86/machine/5150/mda/256kb/machine.xml +++ b/devices/pcx86/machine/5150/mda/256kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), MDA, 256K diff --git a/devices/pcx86/machine/5150/mda/64kb/debugger/machine.xml b/devices/pcx86/machine/5150/mda/64kb/debugger/machine.xml index 51b75717e..cd2ad6871 100644 --- a/devices/pcx86/machine/5150/mda/64kb/debugger/machine.xml +++ b/devices/pcx86/machine/5150/mda/64kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), MDA, 64K, Debugger diff --git a/devices/pcx86/machine/5150/mda/64kb/machine.xml b/devices/pcx86/machine/5150/mda/64kb/machine.xml index 90112a659..9b94fd87e 100644 --- a/devices/pcx86/machine/5150/mda/64kb/machine.xml +++ b/devices/pcx86/machine/5150/mda/64kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), MDA, 64K diff --git a/devices/pcx86/machine/5150/mda/64kb/softkbd/machine.xml b/devices/pcx86/machine/5150/mda/64kb/softkbd/machine.xml index ebd16ff87..88273d8cb 100644 --- a/devices/pcx86/machine/5150/mda/64kb/softkbd/machine.xml +++ b/devices/pcx86/machine/5150/mda/64kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), MDA, 64K, Soft Keyboard diff --git a/devices/pcx86/machine/5160/cga/256kb/array/machine.xml b/devices/pcx86/machine/5160/cga/256kb/array/machine.xml index 80dd2955f..cc414d483 100644 --- a/devices/pcx86/machine/5160/cga/256kb/array/machine.xml +++ b/devices/pcx86/machine/5160/cga/256kb/array/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256K, 10Mb Drive diff --git a/devices/pcx86/machine/5160/cga/256kb/debugger/machine.xml b/devices/pcx86/machine/5160/cga/256kb/debugger/machine.xml index 180e45726..959a156c3 100644 --- a/devices/pcx86/machine/5160/cga/256kb/debugger/machine.xml +++ b/devices/pcx86/machine/5160/cga/256kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive diff --git a/devices/pcx86/machine/5160/cga/256kb/machine.xml b/devices/pcx86/machine/5160/cga/256kb/machine.xml index 81ff82bdb..52f4a0e72 100644 --- a/devices/pcx86/machine/5160/cga/256kb/machine.xml +++ b/devices/pcx86/machine/5160/cga/256kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive diff --git a/devices/pcx86/machine/5160/cga/256kb/softkbd/machine.xml b/devices/pcx86/machine/5160/cga/256kb/softkbd/machine.xml index 98971933e..28ef88865 100644 --- a/devices/pcx86/machine/5160/cga/256kb/softkbd/machine.xml +++ b/devices/pcx86/machine/5160/cga/256kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256K, 10Mb Drive diff --git a/devices/pcx86/machine/5160/cga/512kb/softkbd/machine.xml b/devices/pcx86/machine/5160/cga/512kb/softkbd/machine.xml index 4e804b1d5..9f3e5b62f 100644 --- a/devices/pcx86/machine/5160/cga/512kb/softkbd/machine.xml +++ b/devices/pcx86/machine/5160/cga/512kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 512K, 10Mb Drive diff --git a/devices/pcx86/machine/5160/cga/640kb/debugger/machine.xml b/devices/pcx86/machine/5160/cga/640kb/debugger/machine.xml index 77d828625..b861c7309 100644 --- a/devices/pcx86/machine/5160/cga/640kb/debugger/machine.xml +++ b/devices/pcx86/machine/5160/cga/640kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 640K, 10Mb Drive (Formatted) diff --git a/devices/pcx86/machine/5160/cga/640kb/machine.xml b/devices/pcx86/machine/5160/cga/640kb/machine.xml index 482c234cb..cfd3973c0 100644 --- a/devices/pcx86/machine/5160/cga/640kb/machine.xml +++ b/devices/pcx86/machine/5160/cga/640kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 640K, 10Mb Drive (Formatted) diff --git a/devices/pcx86/machine/5160/cga/640kb/softkbd/machine.xml b/devices/pcx86/machine/5160/cga/640kb/softkbd/machine.xml index c8a4c2d41..e5172dac1 100644 --- a/devices/pcx86/machine/5160/cga/640kb/softkbd/machine.xml +++ b/devices/pcx86/machine/5160/cga/640kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 640K, 10Mb Drive diff --git a/devices/pcx86/machine/5160/ega/256kb/debugger/machine.xml b/devices/pcx86/machine/5160/ega/256kb/debugger/machine.xml index 81396dba4..47f9cbb1b 100644 --- a/devices/pcx86/machine/5160/ega/256kb/debugger/machine.xml +++ b/devices/pcx86/machine/5160/ega/256kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), 64K EGA, 256K RAM, 10Mb Hard Disk diff --git a/devices/pcx86/machine/5160/ega/256kb/machine.xml b/devices/pcx86/machine/5160/ega/256kb/machine.xml index f990e4d7f..ed94e696d 100644 --- a/devices/pcx86/machine/5160/ega/256kb/machine.xml +++ b/devices/pcx86/machine/5160/ega/256kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), 64K EGA, 256K RAM, 10Mb Hard Disk diff --git a/devices/pcx86/machine/5160/ega/640kb/array/machine.xml b/devices/pcx86/machine/5160/ega/640kb/array/machine.xml index c744c0fd4..e73d96be2 100644 --- a/devices/pcx86/machine/5160/ega/640kb/array/machine.xml +++ b/devices/pcx86/machine/5160/ega/640kb/array/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Disk diff --git a/devices/pcx86/machine/5160/ega/640kb/debugger/machine.xml b/devices/pcx86/machine/5160/ega/640kb/debugger/machine.xml index bde17d8d3..3ca7e285b 100644 --- a/devices/pcx86/machine/5160/ega/640kb/debugger/machine.xml +++ b/devices/pcx86/machine/5160/ega/640kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5160/ega/640kb/machine.xml b/devices/pcx86/machine/5160/ega/640kb/machine.xml index a582022d3..cfa514da4 100644 --- a/devices/pcx86/machine/5160/ega/640kb/machine.xml +++ b/devices/pcx86/machine/5160/ega/640kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5160/mda/256kb/debugger/machine.xml b/devices/pcx86/machine/5160/mda/256kb/debugger/machine.xml index 978a16bc2..d6935e3d9 100644 --- a/devices/pcx86/machine/5160/mda/256kb/debugger/machine.xml +++ b/devices/pcx86/machine/5160/mda/256kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive diff --git a/devices/pcx86/machine/5160/mda/256kb/fake188/debugger/machine.xml b/devices/pcx86/machine/5160/mda/256kb/fake188/debugger/machine.xml index b687d2a6f..a42968794 100644 --- a/devices/pcx86/machine/5160/mda/256kb/fake188/debugger/machine.xml +++ b/devices/pcx86/machine/5160/mda/256kb/fake188/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive diff --git a/devices/pcx86/machine/5160/mda/256kb/fake188/machine.xml b/devices/pcx86/machine/5160/mda/256kb/fake188/machine.xml index 8d80727d4..ceff00d84 100644 --- a/devices/pcx86/machine/5160/mda/256kb/fake188/machine.xml +++ b/devices/pcx86/machine/5160/mda/256kb/fake188/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive diff --git a/devices/pcx86/machine/5160/mda/256kb/machine.xml b/devices/pcx86/machine/5160/mda/256kb/machine.xml index 5c5519159..cb3f2a28d 100644 --- a/devices/pcx86/machine/5160/mda/256kb/machine.xml +++ b/devices/pcx86/machine/5160/mda/256kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive diff --git a/devices/pcx86/machine/5160/mda/64kb/softkbd/machine.xml b/devices/pcx86/machine/5160/mda/64kb/softkbd/machine.xml index a62b39f15..372933b56 100644 --- a/devices/pcx86/machine/5160/mda/64kb/softkbd/machine.xml +++ b/devices/pcx86/machine/5160/mda/64kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), MDA, 64K, 10Mb Drive diff --git a/devices/pcx86/machine/5170/cga/640kb/rev3/debugger/machine.xml b/devices/pcx86/machine/5170/cga/640kb/rev3/debugger/machine.xml index 971526996..1fae2b8ba 100644 --- a/devices/pcx86/machine/5170/cga/640kb/rev3/debugger/machine.xml +++ b/devices/pcx86/machine/5170/cga/640kb/rev3/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz, 640Kb, Dual Floppy) with Color Display diff --git a/devices/pcx86/machine/5170/cga/640kb/rev3/machine.xml b/devices/pcx86/machine/5170/cga/640kb/rev3/machine.xml index daa52bef5..6aeb12e6b 100644 --- a/devices/pcx86/machine/5170/cga/640kb/rev3/machine.xml +++ b/devices/pcx86/machine/5170/cga/640kb/rev3/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz, 640Kb, Dual Floppy) with Color Display diff --git a/devices/pcx86/machine/5170/ega/1152kb/rev1/debugger/machine.xml b/devices/pcx86/machine/5170/ega/1152kb/rev1/debugger/machine.xml index 53712bf33..b721c808e 100644 --- a/devices/pcx86/machine/5170/ega/1152kb/rev1/debugger/machine.xml +++ b/devices/pcx86/machine/5170/ega/1152kb/rev1/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (6Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk diff --git a/devices/pcx86/machine/5170/ega/1152kb/rev1/machine.xml b/devices/pcx86/machine/5170/ega/1152kb/rev1/machine.xml index 5006a93c5..68b3fe0bb 100644 --- a/devices/pcx86/machine/5170/ega/1152kb/rev1/machine.xml +++ b/devices/pcx86/machine/5170/ega/1152kb/rev1/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (6Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk diff --git a/devices/pcx86/machine/5170/ega/1152kb/rev3/debugger/backtrack/machine.xml b/devices/pcx86/machine/5170/ega/1152kb/rev3/debugger/backtrack/machine.xml index cfd0ada44..a5c3f8ba1 100644 --- a/devices/pcx86/machine/5170/ega/1152kb/rev3/debugger/backtrack/machine.xml +++ b/devices/pcx86/machine/5170/ega/1152kb/rev3/debugger/backtrack/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/ega/1152kb/rev3/debugger/machine.xml b/devices/pcx86/machine/5170/ega/1152kb/rev3/debugger/machine.xml index 00d8b60c4..af4631fda 100644 --- a/devices/pcx86/machine/5170/ega/1152kb/rev3/debugger/machine.xml +++ b/devices/pcx86/machine/5170/ega/1152kb/rev3/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/ega/1152kb/rev3/machine.xml b/devices/pcx86/machine/5170/ega/1152kb/rev3/machine.xml index 0a2cc6691..0559eeb6a 100644 --- a/devices/pcx86/machine/5170/ega/1152kb/rev3/machine.xml +++ b/devices/pcx86/machine/5170/ega/1152kb/rev3/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/backtrack/machine.xml b/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/backtrack/machine.xml index 9fbd34eb8..68bba50b5 100644 --- a/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/backtrack/machine.xml +++ b/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/backtrack/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 2Mb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/machine.xml b/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/machine.xml index 93df7dba1..f74e58c7f 100644 --- a/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/machine.xml +++ b/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 2Mb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/vt100/machine.xml b/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/vt100/machine.xml index c8c5ca326..c2e6f74ba 100644 --- a/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/vt100/machine.xml +++ b/devices/pcx86/machine/5170/ega/2048kb/rev3/debugger/vt100/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 2Mb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/ega/2048kb/rev3/machine.xml b/devices/pcx86/machine/5170/ega/2048kb/rev3/machine.xml index 06e0f0d13..d0cf7c7a9 100644 --- a/devices/pcx86/machine/5170/ega/2048kb/rev3/machine.xml +++ b/devices/pcx86/machine/5170/ega/2048kb/rev3/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 2Mb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/ega/640kb/rev1/debugger/machine.xml b/devices/pcx86/machine/5170/ega/640kb/rev1/debugger/machine.xml index 426297248..e827fcbaa 100644 --- a/devices/pcx86/machine/5170/ega/640kb/rev1/debugger/machine.xml +++ b/devices/pcx86/machine/5170/ega/640kb/rev1/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT, 640Kb RAM, 128K EGA diff --git a/devices/pcx86/machine/5170/ega/640kb/rev1/machine.xml b/devices/pcx86/machine/5170/ega/640kb/rev1/machine.xml index 06ed32914..9bc2d2313 100644 --- a/devices/pcx86/machine/5170/ega/640kb/rev1/machine.xml +++ b/devices/pcx86/machine/5170/ega/640kb/rev1/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT, 640Kb RAM, 128K EGA diff --git a/devices/pcx86/machine/5170/mda/640kb/rev3/debugger/machine.xml b/devices/pcx86/machine/5170/mda/640kb/rev3/debugger/machine.xml index c5fbd0fdc..318c76618 100644 --- a/devices/pcx86/machine/5170/mda/640kb/rev3/debugger/machine.xml +++ b/devices/pcx86/machine/5170/mda/640kb/rev3/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz, 640Kb, Dual Floppy) with Monochrome Display diff --git a/devices/pcx86/machine/5170/mda/640kb/rev3/machine.xml b/devices/pcx86/machine/5170/mda/640kb/rev3/machine.xml index b27bb783f..d1b656c34 100644 --- a/devices/pcx86/machine/5170/mda/640kb/rev3/machine.xml +++ b/devices/pcx86/machine/5170/mda/640kb/rev3/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz, 640Kb, Dual Floppy) with Monochrome Display diff --git a/devices/pcx86/machine/5170/vga/2048kb/debugger/machine.xml b/devices/pcx86/machine/5170/vga/2048kb/debugger/machine.xml index 1e44d62ed..98987841d 100644 --- a/devices/pcx86/machine/5170/vga/2048kb/debugger/machine.xml +++ b/devices/pcx86/machine/5170/vga/2048kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), VGA, 2Mb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/vga/2048kb/machine.xml b/devices/pcx86/machine/5170/vga/2048kb/machine.xml index cedce75c1..ddffaad5f 100644 --- a/devices/pcx86/machine/5170/vga/2048kb/machine.xml +++ b/devices/pcx86/machine/5170/vga/2048kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), VGA, 2Mb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/vga/4096kb/debugger/machine.xml b/devices/pcx86/machine/5170/vga/4096kb/debugger/machine.xml index 56c0542aa..0a541636f 100644 --- a/devices/pcx86/machine/5170/vga/4096kb/debugger/machine.xml +++ b/devices/pcx86/machine/5170/vga/4096kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), VGA, 4Mb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/5170/vga/4096kb/machine.xml b/devices/pcx86/machine/5170/vga/4096kb/machine.xml index bfada9bdb..88f771fc1 100644 --- a/devices/pcx86/machine/5170/vga/4096kb/machine.xml +++ b/devices/pcx86/machine/5170/vga/4096kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), VGA, 4Mb RAM, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/att/6300/cga/640kb/debugger/machine.xml b/devices/pcx86/machine/att/6300/cga/640kb/debugger/machine.xml index 841f26b81..153b21ede 100644 --- a/devices/pcx86/machine/att/6300/cga/640kb/debugger/machine.xml +++ b/devices/pcx86/machine/att/6300/cga/640kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + AT&T Personal Computer 6300 with Color Display diff --git a/devices/pcx86/machine/att/6300/cga/640kb/machine.xml b/devices/pcx86/machine/att/6300/cga/640kb/machine.xml index 54e1f586a..5f53193d9 100644 --- a/devices/pcx86/machine/att/6300/cga/640kb/machine.xml +++ b/devices/pcx86/machine/att/6300/cga/640kb/machine.xml @@ -1,5 +1,5 @@ - + AT&T Personal Computer 6300 with Color Display diff --git a/devices/pcx86/machine/cdp/mpc1600/cga/640kb/debugger/machine.xml b/devices/pcx86/machine/cdp/mpc1600/cga/640kb/debugger/machine.xml index 6dbcd04bb..f4ca0966c 100644 --- a/devices/pcx86/machine/cdp/mpc1600/cga/640kb/debugger/machine.xml +++ b/devices/pcx86/machine/cdp/mpc1600/cga/640kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + Columbia Data Products MPC 1600 with Color Display diff --git a/devices/pcx86/machine/cdp/mpc1600/cga/640kb/machine.xml b/devices/pcx86/machine/cdp/mpc1600/cga/640kb/machine.xml index 199df4956..c38250e71 100644 --- a/devices/pcx86/machine/cdp/mpc1600/cga/640kb/machine.xml +++ b/devices/pcx86/machine/cdp/mpc1600/cga/640kb/machine.xml @@ -1,5 +1,5 @@ - + Columbia Data Products MPC 1600 with Color Display diff --git a/devices/pcx86/machine/compaq/deskpro386/ega/2048kb/debugger/machine.xml b/devices/pcx86/machine/compaq/deskpro386/ega/2048kb/debugger/machine.xml index df166ca05..22d1a6fbb 100644 --- a/devices/pcx86/machine/compaq/deskpro386/ega/2048kb/debugger/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/ega/2048kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 2Mb RAM, 128Kb EGA, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/compaq/deskpro386/ega/2048kb/machine.xml b/devices/pcx86/machine/compaq/deskpro386/ega/2048kb/machine.xml index 39cc63c5e..03d7fc97b 100644 --- a/devices/pcx86/machine/compaq/deskpro386/ega/2048kb/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/ega/2048kb/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 2Mb RAM, 128Kb EGA, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/compaq/deskpro386/ega/4096kb/debugger/machine.xml b/devices/pcx86/machine/compaq/deskpro386/ega/4096kb/debugger/machine.xml index b5baa04e3..6f87205ec 100644 --- a/devices/pcx86/machine/compaq/deskpro386/ega/4096kb/debugger/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/ega/4096kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 4Mb RAM, 128Kb EGA, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/compaq/deskpro386/ega/4096kb/machine.xml b/devices/pcx86/machine/compaq/deskpro386/ega/4096kb/machine.xml index 323e3fb73..b06835feb 100644 --- a/devices/pcx86/machine/compaq/deskpro386/ega/4096kb/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/ega/4096kb/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 4Mb RAM, 128Kb EGA, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/compaq/deskpro386/other/2048kb/debugger/backtrack/machine.xml b/devices/pcx86/machine/compaq/deskpro386/other/2048kb/debugger/backtrack/machine.xml index acf6f4f69..7a880432d 100644 --- a/devices/pcx86/machine/compaq/deskpro386/other/2048kb/debugger/backtrack/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/other/2048kb/debugger/backtrack/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 2Mb RAM, COMPAQ VGA, 20Mb Hard Disk diff --git a/devices/pcx86/machine/compaq/deskpro386/other/2048kb/debugger/machine.xml b/devices/pcx86/machine/compaq/deskpro386/other/2048kb/debugger/machine.xml index 871777087..38f4d232b 100644 --- a/devices/pcx86/machine/compaq/deskpro386/other/2048kb/debugger/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/other/2048kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 2Mb RAM, COMPAQ VGA, 20Mb Hard Disk diff --git a/devices/pcx86/machine/compaq/deskpro386/vga/2048kb/debugger/machine.xml b/devices/pcx86/machine/compaq/deskpro386/vga/2048kb/debugger/machine.xml index f3bfa6861..dbf2ecace 100644 --- a/devices/pcx86/machine/compaq/deskpro386/vga/2048kb/debugger/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/vga/2048kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 2Mb RAM, IBM VGA, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/compaq/deskpro386/vga/2048kb/machine.xml b/devices/pcx86/machine/compaq/deskpro386/vga/2048kb/machine.xml index dd7d7d350..3de21b8f0 100644 --- a/devices/pcx86/machine/compaq/deskpro386/vga/2048kb/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/vga/2048kb/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 2Mb RAM, IBM VGA, 20Mb Hard Disk diff --git a/devices/pcx86/machine/compaq/deskpro386/vga/4096kb/debugger/machine.xml b/devices/pcx86/machine/compaq/deskpro386/vga/4096kb/debugger/machine.xml index 3ad80a5e6..cb3f153d3 100644 --- a/devices/pcx86/machine/compaq/deskpro386/vga/4096kb/debugger/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/vga/4096kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 4Mb RAM, IBM VGA, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/compaq/deskpro386/vga/4096kb/machine.xml b/devices/pcx86/machine/compaq/deskpro386/vga/4096kb/machine.xml index a3290c0aa..0e35f61df 100644 --- a/devices/pcx86/machine/compaq/deskpro386/vga/4096kb/machine.xml +++ b/devices/pcx86/machine/compaq/deskpro386/vga/4096kb/machine.xml @@ -1,5 +1,5 @@ - + COMPAQ DeskPro 386, 4Mb RAM, IBM VGA, 20Mb Hard Disk (Formatted) diff --git a/devices/pcx86/machine/custom/machine.xml b/devices/pcx86/machine/custom/machine.xml index 874bc1ca4..69f895987 100644 --- a/devices/pcx86/machine/custom/machine.xml +++ b/devices/pcx86/machine/custom/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150) with Monochrome Display diff --git a/devices/pcx86/machine/zenith/z150/cga/640kb/debugger/machine.xml b/devices/pcx86/machine/zenith/z150/cga/640kb/debugger/machine.xml index eb9ff1425..1e0776848 100644 --- a/devices/pcx86/machine/zenith/z150/cga/640kb/debugger/machine.xml +++ b/devices/pcx86/machine/zenith/z150/cga/640kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + Zenith Z-150 with Color Display diff --git a/devices/pcx86/machine/zenith/z150/cga/640kb/machine.xml b/devices/pcx86/machine/zenith/z150/cga/640kb/machine.xml index c81ea0b7b..14e13f5df 100644 --- a/devices/pcx86/machine/zenith/z150/cga/640kb/machine.xml +++ b/devices/pcx86/machine/zenith/z150/cga/640kb/machine.xml @@ -1,5 +1,5 @@ - + Zenith Z-150 with Color Display diff --git a/devices/pdp10/machine/ka10/test/debugger/machine.xml b/devices/pdp10/machine/ka10/test/debugger/machine.xml index 245f9046a..aa9feda18 100644 --- a/devices/pdp10/machine/ka10/test/debugger/machine.xml +++ b/devices/pdp10/machine/ka10/test/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-10 (Model KA10) with Debugger diff --git a/devices/pdp10/machine/ka10/test/machine.xml b/devices/pdp10/machine/ka10/test/machine.xml index 2538ca4cf..690844acb 100644 --- a/devices/pdp10/machine/ka10/test/machine.xml +++ b/devices/pdp10/machine/ka10/test/machine.xml @@ -1,5 +1,5 @@ - + PDP-10 Test Machine diff --git a/devices/pdp11/machine/1120/basic/debugger/machine.xml b/devices/pdp11/machine/1120/basic/debugger/machine.xml index 7e5f5b52f..03329e01d 100644 --- a/devices/pdp11/machine/1120/basic/debugger/machine.xml +++ b/devices/pdp11/machine/1120/basic/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/20: 16Kb, PDP-11 BASIC, Debugger diff --git a/devices/pdp11/machine/1120/basic/machine.xml b/devices/pdp11/machine/1120/basic/machine.xml index b68f98e93..82e18a868 100644 --- a/devices/pdp11/machine/1120/basic/machine.xml +++ b/devices/pdp11/machine/1120/basic/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/20: 16Kb, PDP-11 BASIC diff --git a/devices/pdp11/machine/1120/bootstrap/debugger/machine.xml b/devices/pdp11/machine/1120/bootstrap/debugger/machine.xml index 5f1484b24..4f5796a55 100644 --- a/devices/pdp11/machine/1120/bootstrap/debugger/machine.xml +++ b/devices/pdp11/machine/1120/bootstrap/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/20: 16Kb, Bootstrap Loader, Debugger diff --git a/devices/pdp11/machine/1120/bootstrap/machine.xml b/devices/pdp11/machine/1120/bootstrap/machine.xml index f8c843bc3..fc822bb51 100644 --- a/devices/pdp11/machine/1120/bootstrap/machine.xml +++ b/devices/pdp11/machine/1120/bootstrap/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/20: 16Kb, Bootstrap Loader diff --git a/devices/pdp11/machine/1120/monitor/debugger/machine.xml b/devices/pdp11/machine/1120/monitor/debugger/machine.xml index 83f187d50..9f90414ab 100644 --- a/devices/pdp11/machine/1120/monitor/debugger/machine.xml +++ b/devices/pdp11/machine/1120/monitor/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/20 Boot Monitor with 56Kb and Debugger diff --git a/devices/pdp11/machine/1120/monitor/machine.xml b/devices/pdp11/machine/1120/monitor/machine.xml index a87a5a127..fde893a0e 100644 --- a/devices/pdp11/machine/1120/monitor/machine.xml +++ b/devices/pdp11/machine/1120/monitor/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/20 Boot Monitor with 56Kb diff --git a/devices/pdp11/machine/1120/panel/debugger/machine.xml b/devices/pdp11/machine/1120/panel/debugger/machine.xml index b73ba892f..28f6f1c15 100644 --- a/devices/pdp11/machine/1120/panel/debugger/machine.xml +++ b/devices/pdp11/machine/1120/panel/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/20 with Front Panel and Debugger diff --git a/devices/pdp11/machine/1120/panel/debugger/test14/machine.xml b/devices/pdp11/machine/1120/panel/debugger/test14/machine.xml index f68fb25ed..1fe0fe120 100644 --- a/devices/pdp11/machine/1120/panel/debugger/test14/machine.xml +++ b/devices/pdp11/machine/1120/panel/debugger/test14/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/20 with Front Panel and TEST 14 diff --git a/devices/pdp11/machine/1120/panel/machine.xml b/devices/pdp11/machine/1120/panel/machine.xml index aea38d94f..986d22947 100644 --- a/devices/pdp11/machine/1120/panel/machine.xml +++ b/devices/pdp11/machine/1120/panel/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/20 with Front Panel diff --git a/devices/pdp11/machine/1145/panel/debugger/machine.xml b/devices/pdp11/machine/1145/panel/debugger/machine.xml index b0da528b7..6c65ff2ac 100644 --- a/devices/pdp11/machine/1145/panel/debugger/machine.xml +++ b/devices/pdp11/machine/1145/panel/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/45 with 256Kb, Front Panel and Debugger diff --git a/devices/pdp11/machine/1145/panel/machine.xml b/devices/pdp11/machine/1145/panel/machine.xml index 3df26d6e0..104980924 100644 --- a/devices/pdp11/machine/1145/panel/machine.xml +++ b/devices/pdp11/machine/1145/panel/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/45 with 256Kb and Front Panel diff --git a/devices/pdp11/machine/1145/vt100/debugger/machine-left.xml b/devices/pdp11/machine/1145/vt100/debugger/machine-left.xml index eda7437c3..ed3b2062b 100644 --- a/devices/pdp11/machine/1145/vt100/debugger/machine-left.xml +++ b/devices/pdp11/machine/1145/vt100/debugger/machine-left.xml @@ -1,5 +1,5 @@ - + PDP-11/45 with 256Kb, Front Panel, and Debugger diff --git a/devices/pdp11/machine/1145/vt100/debugger/machine-right.xml b/devices/pdp11/machine/1145/vt100/debugger/machine-right.xml index 5ba75955b..6cc31b92c 100644 --- a/devices/pdp11/machine/1145/vt100/debugger/machine-right.xml +++ b/devices/pdp11/machine/1145/vt100/debugger/machine-right.xml @@ -1,5 +1,5 @@ - + PDP-11/45 with 256Kb, Front Panel, and Debugger diff --git a/devices/pdp11/machine/1145/vt100/debugger/machine.xml b/devices/pdp11/machine/1145/vt100/debugger/machine.xml index d2616f9ad..f1e7d8b33 100644 --- a/devices/pdp11/machine/1145/vt100/debugger/machine.xml +++ b/devices/pdp11/machine/1145/vt100/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/45 with 256Kb, Front Panel, and Debugger diff --git a/devices/pdp11/machine/1145/vt100/machine-left.xml b/devices/pdp11/machine/1145/vt100/machine-left.xml index d77f000ed..55c464328 100644 --- a/devices/pdp11/machine/1145/vt100/machine-left.xml +++ b/devices/pdp11/machine/1145/vt100/machine-left.xml @@ -1,5 +1,5 @@ - + PDP-11/45 with 256Kb and Front Panel diff --git a/devices/pdp11/machine/1145/vt100/machine-right.xml b/devices/pdp11/machine/1145/vt100/machine-right.xml index c44e263c0..d7ce9c8d0 100644 --- a/devices/pdp11/machine/1145/vt100/machine-right.xml +++ b/devices/pdp11/machine/1145/vt100/machine-right.xml @@ -1,5 +1,5 @@ - + PDP-11/45 with 256Kb and Front Panel diff --git a/devices/pdp11/machine/1145/vt100/machine.xml b/devices/pdp11/machine/1145/vt100/machine.xml index 7d28108b0..a0e667cf6 100644 --- a/devices/pdp11/machine/1145/vt100/machine.xml +++ b/devices/pdp11/machine/1145/vt100/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/45 with 256Kb and Front Panel diff --git a/devices/pdp11/machine/1170/4mb/debugger/machine.xml b/devices/pdp11/machine/1170/4mb/debugger/machine.xml index a59b28a7c..f33a0c038 100644 --- a/devices/pdp11/machine/1170/4mb/debugger/machine.xml +++ b/devices/pdp11/machine/1170/4mb/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 4Mb, Front Panel and Debugger diff --git a/devices/pdp11/machine/1170/4mb/machine.xml b/devices/pdp11/machine/1170/4mb/machine.xml index 097964d81..8d4b017ed 100644 --- a/devices/pdp11/machine/1170/4mb/machine.xml +++ b/devices/pdp11/machine/1170/4mb/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 4Mb and Front Panel diff --git a/devices/pdp11/machine/1170/monitor/debugger/machine.xml b/devices/pdp11/machine/1170/monitor/debugger/machine.xml index 8f248aeb3..5a3eae001 100644 --- a/devices/pdp11/machine/1170/monitor/debugger/machine.xml +++ b/devices/pdp11/machine/1170/monitor/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb, Boot Monitor, and Debugger diff --git a/devices/pdp11/machine/1170/monitor/machine.xml b/devices/pdp11/machine/1170/monitor/machine.xml index 76e23cf9b..0183e374e 100644 --- a/devices/pdp11/machine/1170/monitor/machine.xml +++ b/devices/pdp11/machine/1170/monitor/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb and Boot Monitor diff --git a/devices/pdp11/machine/1170/panel/debugger/cpuexer/machine.xml b/devices/pdp11/machine/1170/panel/debugger/cpuexer/machine.xml index 72409f15a..6fb6bf12d 100644 --- a/devices/pdp11/machine/1170/panel/debugger/cpuexer/machine.xml +++ b/devices/pdp11/machine/1170/panel/debugger/cpuexer/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb running CPU Exerciser diff --git a/devices/pdp11/machine/1170/panel/debugger/machine-slim.xml b/devices/pdp11/machine/1170/panel/debugger/machine-slim.xml index 7c014336c..db3a10bd6 100644 --- a/devices/pdp11/machine/1170/panel/debugger/machine-slim.xml +++ b/devices/pdp11/machine/1170/panel/debugger/machine-slim.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb, Front Panel and Debugger diff --git a/devices/pdp11/machine/1170/panel/debugger/machine.xml b/devices/pdp11/machine/1170/panel/debugger/machine.xml index 102acc909..fda83ddff 100644 --- a/devices/pdp11/machine/1170/panel/debugger/machine.xml +++ b/devices/pdp11/machine/1170/panel/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb, Front Panel and Debugger diff --git a/devices/pdp11/machine/1170/panel/machine.xml b/devices/pdp11/machine/1170/panel/machine.xml index 5367dc05a..1c97367cc 100644 --- a/devices/pdp11/machine/1170/panel/machine.xml +++ b/devices/pdp11/machine/1170/panel/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb and Front Panel diff --git a/devices/pdp11/machine/1170/vt100/debugger/machine-left.xml b/devices/pdp11/machine/1170/vt100/debugger/machine-left.xml index 8dd8b1be9..35b89aa31 100644 --- a/devices/pdp11/machine/1170/vt100/debugger/machine-left.xml +++ b/devices/pdp11/machine/1170/vt100/debugger/machine-left.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb, Front Panel, and Debugger diff --git a/devices/pdp11/machine/1170/vt100/debugger/machine-right.xml b/devices/pdp11/machine/1170/vt100/debugger/machine-right.xml index 19bc10dfb..697b87460 100644 --- a/devices/pdp11/machine/1170/vt100/debugger/machine-right.xml +++ b/devices/pdp11/machine/1170/vt100/debugger/machine-right.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb, Front Panel, and Debugger diff --git a/devices/pdp11/machine/1170/vt100/debugger/machine.xml b/devices/pdp11/machine/1170/vt100/debugger/machine.xml index faeea9564..15f53196d 100644 --- a/devices/pdp11/machine/1170/vt100/debugger/machine.xml +++ b/devices/pdp11/machine/1170/vt100/debugger/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb, Front Panel, and Debugger diff --git a/devices/pdp11/machine/1170/vt100/machine-left.xml b/devices/pdp11/machine/1170/vt100/machine-left.xml index f8045a8cd..32847ea25 100644 --- a/devices/pdp11/machine/1170/vt100/machine-left.xml +++ b/devices/pdp11/machine/1170/vt100/machine-left.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb and Front Panel diff --git a/devices/pdp11/machine/1170/vt100/machine-right.xml b/devices/pdp11/machine/1170/vt100/machine-right.xml index 15169414a..7683c6193 100644 --- a/devices/pdp11/machine/1170/vt100/machine-right.xml +++ b/devices/pdp11/machine/1170/vt100/machine-right.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb and Front Panel diff --git a/devices/pdp11/machine/1170/vt100/machine.xml b/devices/pdp11/machine/1170/vt100/machine.xml index 9a7334c3d..0cfc2023a 100644 --- a/devices/pdp11/machine/1170/vt100/machine.xml +++ b/devices/pdp11/machine/1170/vt100/machine.xml @@ -1,5 +1,5 @@ - + PDP-11/70 with 256Kb and Front Panel diff --git a/disks/pcx86/apps/ibm/topview/1.01/manifest.xml b/disks/pcx86/apps/ibm/topview/1.01/manifest.xml index 6d5bcc9ec..deb34342f 100644 --- a/disks/pcx86/apps/ibm/topview/1.01/manifest.xml +++ b/disks/pcx86/apps/ibm/topview/1.01/manifest.xml @@ -1,5 +1,5 @@ - + TopView 1.01 diff --git a/disks/pcx86/apps/lotus/123/1a/manifest.xml b/disks/pcx86/apps/lotus/123/1a/manifest.xml index dbcfe9e50..1ead0b45a 100644 --- a/disks/pcx86/apps/lotus/123/1a/manifest.xml +++ b/disks/pcx86/apps/lotus/123/1a/manifest.xml @@ -1,5 +1,5 @@ - + 1-2-3 1A diff --git a/disks/pcx86/apps/lotus/123/1as/manifest.xml b/disks/pcx86/apps/lotus/123/1as/manifest.xml index ee2f4945c..14db9d9fd 100644 --- a/disks/pcx86/apps/lotus/123/1as/manifest.xml +++ b/disks/pcx86/apps/lotus/123/1as/manifest.xml @@ -1,5 +1,5 @@ - + 1-2-3 1A* diff --git a/disks/pcx86/apps/micropro/wordstar/3.30/manifest.xml b/disks/pcx86/apps/micropro/wordstar/3.30/manifest.xml index e0d5d63ac..f3bfed71a 100644 --- a/disks/pcx86/apps/micropro/wordstar/3.30/manifest.xml +++ b/disks/pcx86/apps/micropro/wordstar/3.30/manifest.xml @@ -1,5 +1,5 @@ - + WordStar 3.30 diff --git a/disks/pcx86/apps/micropro/wordstar/4.00/manifest.xml b/disks/pcx86/apps/micropro/wordstar/4.00/manifest.xml index e8d1900cb..d0c8397c2 100644 --- a/disks/pcx86/apps/micropro/wordstar/4.00/manifest.xml +++ b/disks/pcx86/apps/micropro/wordstar/4.00/manifest.xml @@ -1,5 +1,5 @@ - + WordStar 4.00 diff --git a/disks/pcx86/apps/microsoft/chart/2.02/manifest.xml b/disks/pcx86/apps/microsoft/chart/2.02/manifest.xml index cdf100061..fa8865acf 100644 --- a/disks/pcx86/apps/microsoft/chart/2.02/manifest.xml +++ b/disks/pcx86/apps/microsoft/chart/2.02/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Chart 2.02 diff --git a/disks/pcx86/apps/microsoft/winword/2.0c/manifest.xml b/disks/pcx86/apps/microsoft/winword/2.0c/manifest.xml index 3827f8b2b..b6d88453d 100644 --- a/disks/pcx86/apps/microsoft/winword/2.0c/manifest.xml +++ b/disks/pcx86/apps/microsoft/winword/2.0c/manifest.xml @@ -1,5 +1,5 @@ - + Word for Windows 2.0c diff --git a/disks/pcx86/apps/microsoft/word/3.0/manifest.xml b/disks/pcx86/apps/microsoft/word/3.0/manifest.xml index d409d99a3..31bbb78ab 100644 --- a/disks/pcx86/apps/microsoft/word/3.0/manifest.xml +++ b/disks/pcx86/apps/microsoft/word/3.0/manifest.xml @@ -1,5 +1,5 @@ - + MS Word 3.0 diff --git a/disks/pcx86/apps/microsoft/word/3.1/manifest.xml b/disks/pcx86/apps/microsoft/word/3.1/manifest.xml index cb3c4f824..87d090fb9 100644 --- a/disks/pcx86/apps/microsoft/word/3.1/manifest.xml +++ b/disks/pcx86/apps/microsoft/word/3.1/manifest.xml @@ -1,5 +1,5 @@ - + MS Word 3.1 diff --git a/disks/pcx86/apps/microsoft/word/5.0/manifest.xml b/disks/pcx86/apps/microsoft/word/5.0/manifest.xml index 997c2daa0..dd7404aa7 100644 --- a/disks/pcx86/apps/microsoft/word/5.0/manifest.xml +++ b/disks/pcx86/apps/microsoft/word/5.0/manifest.xml @@ -1,5 +1,5 @@ - + MS Word 5.0 diff --git a/disks/pcx86/apps/other/omniview/4.30/manifest.xml b/disks/pcx86/apps/other/omniview/4.30/manifest.xml index 4ea0d3ddc..2de91b38d 100644 --- a/disks/pcx86/apps/other/omniview/4.30/manifest.xml +++ b/disks/pcx86/apps/other/omniview/4.30/manifest.xml @@ -1,5 +1,5 @@ - + Omniview 386 4.30 diff --git a/disks/pcx86/apps/other/sc2/1.00/manifest.xml b/disks/pcx86/apps/other/sc2/1.00/manifest.xml index 039b7f7f3..79a70318e 100644 --- a/disks/pcx86/apps/other/sc2/1.00/manifest.xml +++ b/disks/pcx86/apps/other/sc2/1.00/manifest.xml @@ -1,5 +1,5 @@ - + SuperCalc2 1.00 diff --git a/disks/pcx86/apps/other/sc3/1.00/manifest.xml b/disks/pcx86/apps/other/sc3/1.00/manifest.xml index deb12c4d0..889cd7c69 100644 --- a/disks/pcx86/apps/other/sc3/1.00/manifest.xml +++ b/disks/pcx86/apps/other/sc3/1.00/manifest.xml @@ -1,5 +1,5 @@ - + SuperCalc3 1.00 diff --git a/disks/pcx86/cpm/1.1b/debugger/machine.xml b/disks/pcx86/cpm/1.1b/debugger/machine.xml index d69c37d23..9010c96a8 100644 --- a/disks/pcx86/cpm/1.1b/debugger/machine.xml +++ b/disks/pcx86/cpm/1.1b/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), MDA, 256K, Debugger diff --git a/disks/pcx86/cpm/1.1b/machine.xml b/disks/pcx86/cpm/1.1b/machine.xml index c1ed7e7c4..aaad6af54 100644 --- a/disks/pcx86/cpm/1.1b/machine.xml +++ b/disks/pcx86/cpm/1.1b/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), MDA, 256K diff --git a/disks/pcx86/cpm/1.1b/manifest.xml b/disks/pcx86/cpm/1.1b/manifest.xml index 62bd415a5..dbf195eb2 100644 --- a/disks/pcx86/cpm/1.1b/manifest.xml +++ b/disks/pcx86/cpm/1.1b/manifest.xml @@ -1,5 +1,5 @@ - + CP/M-86 1.1B diff --git a/disks/pcx86/diags/ibm/manifest.xml b/disks/pcx86/diags/ibm/manifest.xml index f499cde9e..316161c5a 100644 --- a/disks/pcx86/diags/ibm/manifest.xml +++ b/disks/pcx86/diags/ibm/manifest.xml @@ -1,5 +1,5 @@ - + IBM PC Diagnostics Diagnostics diff --git a/disks/pcx86/dos/compaq/1.11/manifest.xml b/disks/pcx86/dos/compaq/1.11/manifest.xml index 83a4a958a..dc03d5b0b 100644 --- a/disks/pcx86/dos/compaq/1.11/manifest.xml +++ b/disks/pcx86/dos/compaq/1.11/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 1.11 diff --git a/disks/pcx86/dos/compaq/1.12/manifest.xml b/disks/pcx86/dos/compaq/1.12/manifest.xml index f3d5eb855..a00ac0dda 100644 --- a/disks/pcx86/dos/compaq/1.12/manifest.xml +++ b/disks/pcx86/dos/compaq/1.12/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 1.12 diff --git a/disks/pcx86/dos/compaq/2.12/manifest.xml b/disks/pcx86/dos/compaq/2.12/manifest.xml index e32f157f1..bce6941fe 100644 --- a/disks/pcx86/dos/compaq/2.12/manifest.xml +++ b/disks/pcx86/dos/compaq/2.12/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 2.12 diff --git a/disks/pcx86/dos/compaq/3.00/manifest.xml b/disks/pcx86/dos/compaq/3.00/manifest.xml index 7ccb0ea2b..8bf126634 100644 --- a/disks/pcx86/dos/compaq/3.00/manifest.xml +++ b/disks/pcx86/dos/compaq/3.00/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.00 diff --git a/disks/pcx86/dos/compaq/3.10/manifest.xml b/disks/pcx86/dos/compaq/3.10/manifest.xml index 0a1e64084..86ad8c6ed 100644 --- a/disks/pcx86/dos/compaq/3.10/manifest.xml +++ b/disks/pcx86/dos/compaq/3.10/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.10 diff --git a/disks/pcx86/dos/compaq/3.31/manifest.xml b/disks/pcx86/dos/compaq/3.31/manifest.xml index 213c37cc6..454582cb5 100644 --- a/disks/pcx86/dos/compaq/3.31/manifest.xml +++ b/disks/pcx86/dos/compaq/3.31/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.31 diff --git a/disks/pcx86/dos/ibm/0.90/manifest.xml b/disks/pcx86/dos/ibm/0.90/manifest.xml index 1a7d0ee36..4518dbcc9 100644 --- a/disks/pcx86/dos/ibm/0.90/manifest.xml +++ b/disks/pcx86/dos/ibm/0.90/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 0.90 diff --git a/disks/pcx86/dos/ibm/1.00/manifest.xml b/disks/pcx86/dos/ibm/1.00/manifest.xml index 48659f417..cebd73b8f 100644 --- a/disks/pcx86/dos/ibm/1.00/manifest.xml +++ b/disks/pcx86/dos/ibm/1.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 1.00 diff --git a/disks/pcx86/dos/ibm/1.10/manifest.xml b/disks/pcx86/dos/ibm/1.10/manifest.xml index dd150c500..615a214da 100644 --- a/disks/pcx86/dos/ibm/1.10/manifest.xml +++ b/disks/pcx86/dos/ibm/1.10/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 1.10 diff --git a/disks/pcx86/dos/ibm/2.00/manifest.xml b/disks/pcx86/dos/ibm/2.00/manifest.xml index 3dc9230aa..1a327ce5b 100644 --- a/disks/pcx86/dos/ibm/2.00/manifest.xml +++ b/disks/pcx86/dos/ibm/2.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 2.00 diff --git a/disks/pcx86/dos/ibm/2.10/manifest.xml b/disks/pcx86/dos/ibm/2.10/manifest.xml index 4c7029a0e..bb91a3115 100644 --- a/disks/pcx86/dos/ibm/2.10/manifest.xml +++ b/disks/pcx86/dos/ibm/2.10/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 2.10 diff --git a/disks/pcx86/dos/ibm/3.00/manifest.xml b/disks/pcx86/dos/ibm/3.00/manifest.xml index 59ede49ae..fd501ed05 100644 --- a/disks/pcx86/dos/ibm/3.00/manifest.xml +++ b/disks/pcx86/dos/ibm/3.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 3.00 diff --git a/disks/pcx86/dos/ibm/3.10/manifest.xml b/disks/pcx86/dos/ibm/3.10/manifest.xml index 99796d57b..8acee4ef4 100644 --- a/disks/pcx86/dos/ibm/3.10/manifest.xml +++ b/disks/pcx86/dos/ibm/3.10/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 3.10 diff --git a/disks/pcx86/dos/ibm/3.20/manifest.xml b/disks/pcx86/dos/ibm/3.20/manifest.xml index 3a2d372dc..0b5b9baef 100644 --- a/disks/pcx86/dos/ibm/3.20/manifest.xml +++ b/disks/pcx86/dos/ibm/3.20/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 3.20 diff --git a/disks/pcx86/dos/ibm/3.30/manifest.xml b/disks/pcx86/dos/ibm/3.30/manifest.xml index f8dc957d0..13bb64c0c 100644 --- a/disks/pcx86/dos/ibm/3.30/manifest.xml +++ b/disks/pcx86/dos/ibm/3.30/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 3.30 diff --git a/disks/pcx86/dos/ibm/4.00/manifest.xml b/disks/pcx86/dos/ibm/4.00/manifest.xml index b293b7aa1..128284463 100644 --- a/disks/pcx86/dos/ibm/4.00/manifest.xml +++ b/disks/pcx86/dos/ibm/4.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 4.00 diff --git a/disks/pcx86/dos/ibm/5.00/manifest.xml b/disks/pcx86/dos/ibm/5.00/manifest.xml index 7e1520b67..27297f541 100644 --- a/disks/pcx86/dos/ibm/5.00/manifest.xml +++ b/disks/pcx86/dos/ibm/5.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 5.00 diff --git a/disks/pcx86/dos/ibm/6.10/manifest.xml b/disks/pcx86/dos/ibm/6.10/manifest.xml index 982650a85..5b399b5a2 100644 --- a/disks/pcx86/dos/ibm/6.10/manifest.xml +++ b/disks/pcx86/dos/ibm/6.10/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 6.10 diff --git a/disks/pcx86/dos/ibm/6.30/manifest.xml b/disks/pcx86/dos/ibm/6.30/manifest.xml index f425f0257..d084a8e6d 100644 --- a/disks/pcx86/dos/ibm/6.30/manifest.xml +++ b/disks/pcx86/dos/ibm/6.30/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 6.30 diff --git a/disks/pcx86/dos/ibm/7.00/manifest.xml b/disks/pcx86/dos/ibm/7.00/manifest.xml index 9c4935e5d..a11079663 100644 --- a/disks/pcx86/dos/ibm/7.00/manifest.xml +++ b/disks/pcx86/dos/ibm/7.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 7.00 diff --git a/disks/pcx86/dos/microsoft/3.20/manifest.xml b/disks/pcx86/dos/microsoft/3.20/manifest.xml index b1b49e175..f6f69a152 100644 --- a/disks/pcx86/dos/microsoft/3.20/manifest.xml +++ b/disks/pcx86/dos/microsoft/3.20/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.20 diff --git a/disks/pcx86/dos/microsoft/3.21/manifest.xml b/disks/pcx86/dos/microsoft/3.21/manifest.xml index 07352484b..208137528 100644 --- a/disks/pcx86/dos/microsoft/3.21/manifest.xml +++ b/disks/pcx86/dos/microsoft/3.21/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.21 diff --git a/disks/pcx86/dos/microsoft/3.30/manifest.xml b/disks/pcx86/dos/microsoft/3.30/manifest.xml index a98ed4a2a..73b6442da 100644 --- a/disks/pcx86/dos/microsoft/3.30/manifest.xml +++ b/disks/pcx86/dos/microsoft/3.30/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.30 diff --git a/disks/pcx86/dos/microsoft/3.31/manifest.xml b/disks/pcx86/dos/microsoft/3.31/manifest.xml index 3fbbf3799..054394980 100644 --- a/disks/pcx86/dos/microsoft/3.31/manifest.xml +++ b/disks/pcx86/dos/microsoft/3.31/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.31 diff --git a/disks/pcx86/dos/microsoft/4.00/manifest.xml b/disks/pcx86/dos/microsoft/4.00/manifest.xml index b9886db55..a8845d232 100644 --- a/disks/pcx86/dos/microsoft/4.00/manifest.xml +++ b/disks/pcx86/dos/microsoft/4.00/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 4.00 diff --git a/disks/pcx86/dos/microsoft/4.01/720K/manifest.xml b/disks/pcx86/dos/microsoft/4.01/720K/manifest.xml index 4977fef57..843dcafb6 100644 --- a/disks/pcx86/dos/microsoft/4.01/720K/manifest.xml +++ b/disks/pcx86/dos/microsoft/4.01/720K/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 4.01 diff --git a/disks/pcx86/dos/microsoft/4.01/manifest.xml b/disks/pcx86/dos/microsoft/4.01/manifest.xml index c04f98026..f150af335 100644 --- a/disks/pcx86/dos/microsoft/4.01/manifest.xml +++ b/disks/pcx86/dos/microsoft/4.01/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 4.01 diff --git a/disks/pcx86/dos/microsoft/4.0M/manifest.xml b/disks/pcx86/dos/microsoft/4.0M/manifest.xml index 19e3f0080..643ddf337 100644 --- a/disks/pcx86/dos/microsoft/4.0M/manifest.xml +++ b/disks/pcx86/dos/microsoft/4.0M/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 4.0M diff --git a/disks/pcx86/dos/microsoft/5.00/manifest.xml b/disks/pcx86/dos/microsoft/5.00/manifest.xml index 536476ae8..7074df36e 100644 --- a/disks/pcx86/dos/microsoft/5.00/manifest.xml +++ b/disks/pcx86/dos/microsoft/5.00/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 5.00 diff --git a/disks/pcx86/dos/microsoft/6.00/manifest.xml b/disks/pcx86/dos/microsoft/6.00/manifest.xml index 3cedf84cc..3f917354d 100644 --- a/disks/pcx86/dos/microsoft/6.00/manifest.xml +++ b/disks/pcx86/dos/microsoft/6.00/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 6.00 diff --git a/disks/pcx86/dos/microsoft/6.20/manifest.xml b/disks/pcx86/dos/microsoft/6.20/manifest.xml index 59bdefafc..7ca59f445 100644 --- a/disks/pcx86/dos/microsoft/6.20/manifest.xml +++ b/disks/pcx86/dos/microsoft/6.20/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 6.20 diff --git a/disks/pcx86/dos/microsoft/6.22/manifest.xml b/disks/pcx86/dos/microsoft/6.22/manifest.xml index a55bcc3a1..d94ce2a9b 100644 --- a/disks/pcx86/dos/microsoft/6.22/manifest.xml +++ b/disks/pcx86/dos/microsoft/6.22/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 6.22 diff --git a/disks/pcx86/empty/manifest.xml b/disks/pcx86/empty/manifest.xml index 096298835..331e7db0d 100644 --- a/disks/pcx86/empty/manifest.xml +++ b/disks/pcx86/empty/manifest.xml @@ -1,5 +1,5 @@ - + Empty Diskettes diff --git a/disks/pcx86/games/id/wolf3d/manifest.xml b/disks/pcx86/games/id/wolf3d/manifest.xml index 9311c742b..f8ebbb9c8 100644 --- a/disks/pcx86/games/id/wolf3d/manifest.xml +++ b/disks/pcx86/games/id/wolf3d/manifest.xml @@ -1,5 +1,5 @@ - + Wolfenstein 3D diff --git a/disks/pcx86/games/infocom/hhiker/manifest.xml b/disks/pcx86/games/infocom/hhiker/manifest.xml index de3945e0a..8a8a5cb5c 100644 --- a/disks/pcx86/games/infocom/hhiker/manifest.xml +++ b/disks/pcx86/games/infocom/hhiker/manifest.xml @@ -1,5 +1,5 @@ - + The Hitchhiker's Guide to the Galaxy diff --git a/disks/pcx86/games/infocom/machine.xml b/disks/pcx86/games/infocom/machine.xml index 3fbe43436..32787aa71 100644 --- a/disks/pcx86/games/infocom/machine.xml +++ b/disks/pcx86/games/infocom/machine.xml @@ -1,5 +1,5 @@ - + IBM PC Model 5150 (CGA, 64K) diff --git a/disks/pcx86/games/infocom/phobos/manifest.xml b/disks/pcx86/games/infocom/phobos/manifest.xml index aca880458..806bea26c 100644 --- a/disks/pcx86/games/infocom/phobos/manifest.xml +++ b/disks/pcx86/games/infocom/phobos/manifest.xml @@ -1,5 +1,5 @@ - + Leather Goddesses of Phobos diff --git a/disks/pcx86/games/infocom/planet/manifest.xml b/disks/pcx86/games/infocom/planet/manifest.xml index c3cdc93d8..99bb88b2b 100644 --- a/disks/pcx86/games/infocom/planet/manifest.xml +++ b/disks/pcx86/games/infocom/planet/manifest.xml @@ -1,5 +1,5 @@ - + Planetfall diff --git a/disks/pcx86/games/infocom/zork1/debugger/machine.xml b/disks/pcx86/games/infocom/zork1/debugger/machine.xml index e4989b67b..d50c22a33 100644 --- a/disks/pcx86/games/infocom/zork1/debugger/machine.xml +++ b/disks/pcx86/games/infocom/zork1/debugger/machine.xml @@ -1,5 +1,5 @@ - + Zork I (IBM PC Model 5150) diff --git a/disks/pcx86/games/infocom/zork1/manifest.xml b/disks/pcx86/games/infocom/zork1/manifest.xml index 82d0ac717..42b7a2344 100644 --- a/disks/pcx86/games/infocom/zork1/manifest.xml +++ b/disks/pcx86/games/infocom/zork1/manifest.xml @@ -1,5 +1,5 @@ - + Zork I diff --git a/disks/pcx86/games/infocom/zork2/manifest.xml b/disks/pcx86/games/infocom/zork2/manifest.xml index 4a6fd29f2..e34a79011 100644 --- a/disks/pcx86/games/infocom/zork2/manifest.xml +++ b/disks/pcx86/games/infocom/zork2/manifest.xml @@ -1,5 +1,5 @@ - + Zork II diff --git a/disks/pcx86/games/infocom/zork3/manifest.xml b/disks/pcx86/games/infocom/zork3/manifest.xml index ee406227c..b06c01162 100644 --- a/disks/pcx86/games/infocom/zork3/manifest.xml +++ b/disks/pcx86/games/infocom/zork3/manifest.xml @@ -1,5 +1,5 @@ - + Zork III diff --git a/disks/pcx86/games/microsoft/adventure/machine.xml b/disks/pcx86/games/microsoft/adventure/machine.xml index 3d2072e06..afbe2e980 100644 --- a/disks/pcx86/games/microsoft/adventure/machine.xml +++ b/disks/pcx86/games/microsoft/adventure/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150) running Microsoft Adventure diff --git a/disks/pcx86/games/microsoft/adventure/manifest.xml b/disks/pcx86/games/microsoft/adventure/manifest.xml index b511ea96c..4e8599ec5 100644 --- a/disks/pcx86/games/microsoft/adventure/manifest.xml +++ b/disks/pcx86/games/microsoft/adventure/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Adventure 1.00 diff --git a/disks/pcx86/games/microsoft/flightsim/1982/manifest.xml b/disks/pcx86/games/microsoft/flightsim/1982/manifest.xml index 8829bd0b5..3ddb2b293 100644 --- a/disks/pcx86/games/microsoft/flightsim/1982/manifest.xml +++ b/disks/pcx86/games/microsoft/flightsim/1982/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Flight Simulator diff --git a/disks/pcx86/games/microsoft/flightsim/1984/manifest.xml b/disks/pcx86/games/microsoft/flightsim/1984/manifest.xml index e13916450..94b3e71ba 100644 --- a/disks/pcx86/games/microsoft/flightsim/1984/manifest.xml +++ b/disks/pcx86/games/microsoft/flightsim/1984/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Flight Simulator diff --git a/disks/pcx86/minix/1.1/manifest.xml b/disks/pcx86/minix/1.1/manifest.xml index fb09b60b5..72490d520 100644 --- a/disks/pcx86/minix/1.1/manifest.xml +++ b/disks/pcx86/minix/1.1/manifest.xml @@ -1,5 +1,5 @@ - + MINIX 1.1 diff --git a/disks/pcx86/os2/ibm/1.0/manifest.xml b/disks/pcx86/os2/ibm/1.0/manifest.xml index c821e4cfa..e2ad946bf 100644 --- a/disks/pcx86/os2/ibm/1.0/manifest.xml +++ b/disks/pcx86/os2/ibm/1.0/manifest.xml @@ -1,5 +1,5 @@ - + IBM OS/2 1.0 diff --git a/disks/pcx86/os2/ibm/1.1/manifest.xml b/disks/pcx86/os2/ibm/1.1/manifest.xml index 25afcce7c..0434b4b99 100644 --- a/disks/pcx86/os2/ibm/1.1/manifest.xml +++ b/disks/pcx86/os2/ibm/1.1/manifest.xml @@ -1,5 +1,5 @@ - + IBM OS/2 1.1 diff --git a/disks/pcx86/os2/ibm/1.3/manifest.xml b/disks/pcx86/os2/ibm/1.3/manifest.xml index e7a82f2f5..c7eefd7a4 100644 --- a/disks/pcx86/os2/ibm/1.3/manifest.xml +++ b/disks/pcx86/os2/ibm/1.3/manifest.xml @@ -1,5 +1,5 @@ - + IBM OS/2 1.3 diff --git a/disks/pcx86/os2/microsoft/1.0/manifest.xml b/disks/pcx86/os2/microsoft/1.0/manifest.xml index bedd6c7e1..4bb29222a 100644 --- a/disks/pcx86/os2/microsoft/1.0/manifest.xml +++ b/disks/pcx86/os2/microsoft/1.0/manifest.xml @@ -1,5 +1,5 @@ - + MS OS/2 1.0 diff --git a/disks/pcx86/os2/misc/manifest.xml b/disks/pcx86/os2/misc/manifest.xml index 73f5337ec..8e17bd214 100644 --- a/disks/pcx86/os2/misc/manifest.xml +++ b/disks/pcx86/os2/misc/manifest.xml @@ -1,5 +1,5 @@ - + OS/2 Prototype Disks diff --git a/disks/pcx86/shareware/pcmag/manifest.xml b/disks/pcx86/shareware/pcmag/manifest.xml index 1321b8bff..12f965383 100644 --- a/disks/pcx86/shareware/pcmag/manifest.xml +++ b/disks/pcx86/shareware/pcmag/manifest.xml @@ -1,5 +1,5 @@ - + PC Magazine Diskettes diff --git a/disks/pcx86/shareware/pcsig08/debugger/machine.xml b/disks/pcx86/shareware/pcsig08/debugger/machine.xml index 355a1d90c..94225c90c 100644 --- a/disks/pcx86/shareware/pcsig08/debugger/machine.xml +++ b/disks/pcx86/shareware/pcsig08/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Disk (Formatted) diff --git a/disks/pcx86/shareware/pcsig08/machine.xml b/disks/pcx86/shareware/pcsig08/machine.xml index d56ef3335..1d89c5e81 100644 --- a/disks/pcx86/shareware/pcsig08/machine.xml +++ b/disks/pcx86/shareware/pcsig08/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Disk (Formatted) diff --git a/disks/pcx86/shareware/pcsig08/manifest.xml b/disks/pcx86/shareware/pcsig08/manifest.xml index ec463e43d..474f0c7fc 100644 --- a/disks/pcx86/shareware/pcsig08/manifest.xml +++ b/disks/pcx86/shareware/pcsig08/manifest.xml @@ -1,5 +1,5 @@ - + PC-SIG Library 8th Edition CD-ROM (April 1990) diff --git a/disks/pcx86/shareware/pctj/manifest.xml b/disks/pcx86/shareware/pctj/manifest.xml index ab97400ce..a6b54b533 100644 --- a/disks/pcx86/shareware/pctj/manifest.xml +++ b/disks/pcx86/shareware/pctj/manifest.xml @@ -1,5 +1,5 @@ - + PC Tech Journal Diskettes diff --git a/disks/pcx86/tools/borland/pascal/3.00b/manifest.xml b/disks/pcx86/tools/borland/pascal/3.00b/manifest.xml index 8e7b23098..b8f6549d6 100644 --- a/disks/pcx86/tools/borland/pascal/3.00b/manifest.xml +++ b/disks/pcx86/tools/borland/pascal/3.00b/manifest.xml @@ -1,5 +1,5 @@ - + Borland Turbo Pascal diff --git a/disks/pcx86/tools/borland/pascal/3.01a/manifest.xml b/disks/pcx86/tools/borland/pascal/3.01a/manifest.xml index 244d9fe12..fa3b78f61 100644 --- a/disks/pcx86/tools/borland/pascal/3.01a/manifest.xml +++ b/disks/pcx86/tools/borland/pascal/3.01a/manifest.xml @@ -1,5 +1,5 @@ - + Borland Turbo Pascal diff --git a/disks/pcx86/tools/ibm/bascom/1.00/manifest.xml b/disks/pcx86/tools/ibm/bascom/1.00/manifest.xml index d76bb84dc..2bc3761fb 100644 --- a/disks/pcx86/tools/ibm/bascom/1.00/manifest.xml +++ b/disks/pcx86/tools/ibm/bascom/1.00/manifest.xml @@ -1,5 +1,5 @@ - + IBM BASIC Compiler 1.00 diff --git a/disks/pcx86/tools/logitech/modula2/1.00/manifest.xml b/disks/pcx86/tools/logitech/modula2/1.00/manifest.xml index ea5675cde..311c5f5e9 100644 --- a/disks/pcx86/tools/logitech/modula2/1.00/manifest.xml +++ b/disks/pcx86/tools/logitech/modula2/1.00/manifest.xml @@ -1,5 +1,5 @@ - + Modula-2/86 1.00 diff --git a/disks/pcx86/tools/logitech/modula2/1.10/manifest.xml b/disks/pcx86/tools/logitech/modula2/1.10/manifest.xml index caa5eaf77..c8240b854 100644 --- a/disks/pcx86/tools/logitech/modula2/1.10/manifest.xml +++ b/disks/pcx86/tools/logitech/modula2/1.10/manifest.xml @@ -1,5 +1,5 @@ - + Modula-2/86 1.10 diff --git a/disks/pcx86/tools/microsoft/basic/manifest.xml b/disks/pcx86/tools/microsoft/basic/manifest.xml index 022c0ad36..a03ea7a7b 100644 --- a/disks/pcx86/tools/microsoft/basic/manifest.xml +++ b/disks/pcx86/tools/microsoft/basic/manifest.xml @@ -1,5 +1,5 @@ - + MS BASIC diff --git a/disks/pcx86/tools/microsoft/c/2.03/manifest.xml b/disks/pcx86/tools/microsoft/c/2.03/manifest.xml index 436cc7175..2ffe78d75 100644 --- a/disks/pcx86/tools/microsoft/c/2.03/manifest.xml +++ b/disks/pcx86/tools/microsoft/c/2.03/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft C Compiler 2.03 diff --git a/disks/pcx86/tools/microsoft/c/3.00/manifest.xml b/disks/pcx86/tools/microsoft/c/3.00/manifest.xml index f4bdef51d..ab1bc2c0c 100644 --- a/disks/pcx86/tools/microsoft/c/3.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/c/3.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft C Compiler 3.00 diff --git a/disks/pcx86/tools/microsoft/c/4.00/manifest.xml b/disks/pcx86/tools/microsoft/c/4.00/manifest.xml index 11b060346..8a038ee83 100644 --- a/disks/pcx86/tools/microsoft/c/4.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/c/4.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft C Compiler 4.00 diff --git a/disks/pcx86/tools/microsoft/c/5.00/manifest.xml b/disks/pcx86/tools/microsoft/c/5.00/manifest.xml index e13e707f5..d8ffaec38 100644 --- a/disks/pcx86/tools/microsoft/c/5.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/c/5.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft C Compiler 5.00 diff --git a/disks/pcx86/tools/microsoft/c/5.10-os2/manifest.xml b/disks/pcx86/tools/microsoft/c/5.10-os2/manifest.xml index 3a6254051..f6b9be39c 100644 --- a/disks/pcx86/tools/microsoft/c/5.10-os2/manifest.xml +++ b/disks/pcx86/tools/microsoft/c/5.10-os2/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft C Compiler 5.10-OS2 diff --git a/disks/pcx86/tools/microsoft/c/5.10/manifest.xml b/disks/pcx86/tools/microsoft/c/5.10/manifest.xml index c0159232e..5a379ca87 100644 --- a/disks/pcx86/tools/microsoft/c/5.10/manifest.xml +++ b/disks/pcx86/tools/microsoft/c/5.10/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft C Compiler 5.10 diff --git a/disks/pcx86/tools/microsoft/masm/1.00/manifest.xml b/disks/pcx86/tools/microsoft/masm/1.00/manifest.xml index 2580c0c55..cfea20846 100644 --- a/disks/pcx86/tools/microsoft/masm/1.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/masm/1.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Macro Assembler 1.00 diff --git a/disks/pcx86/tools/microsoft/masm/3.00/manifest.xml b/disks/pcx86/tools/microsoft/masm/3.00/manifest.xml index 7d0550463..9dfb94945 100644 --- a/disks/pcx86/tools/microsoft/masm/3.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/masm/3.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Macro Assembler 3.00 diff --git a/disks/pcx86/tools/microsoft/masm/3.01/manifest.xml b/disks/pcx86/tools/microsoft/masm/3.01/manifest.xml index 6ec5e2c10..e855fea8c 100644 --- a/disks/pcx86/tools/microsoft/masm/3.01/manifest.xml +++ b/disks/pcx86/tools/microsoft/masm/3.01/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Macro Assembler 3.01 diff --git a/disks/pcx86/tools/microsoft/masm/4.00/manifest.xml b/disks/pcx86/tools/microsoft/masm/4.00/manifest.xml index 1d2da6879..474698035 100644 --- a/disks/pcx86/tools/microsoft/masm/4.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/masm/4.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Macro Assembler 4.00 diff --git a/disks/pcx86/tools/microsoft/masm/5.00/manifest.xml b/disks/pcx86/tools/microsoft/masm/5.00/manifest.xml index 435677cfb..5b2a7dda4 100644 --- a/disks/pcx86/tools/microsoft/masm/5.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/masm/5.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Macro Assembler 5.00 diff --git a/disks/pcx86/tools/microsoft/masm/5.10/manifest.xml b/disks/pcx86/tools/microsoft/masm/5.10/manifest.xml index fce0adf7d..2c5384361 100644 --- a/disks/pcx86/tools/microsoft/masm/5.10/manifest.xml +++ b/disks/pcx86/tools/microsoft/masm/5.10/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Macro Assembler 5.10 diff --git a/disks/pcx86/tools/microsoft/masm/6.00/manifest.xml b/disks/pcx86/tools/microsoft/masm/6.00/manifest.xml index 980a42201..8ba2a961b 100644 --- a/disks/pcx86/tools/microsoft/masm/6.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/masm/6.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Macro Assembler 6.00 diff --git a/disks/pcx86/tools/microsoft/masm/6.11/manifest.xml b/disks/pcx86/tools/microsoft/masm/6.11/manifest.xml index 7de7f0820..4c8fcabce 100644 --- a/disks/pcx86/tools/microsoft/masm/6.11/manifest.xml +++ b/disks/pcx86/tools/microsoft/masm/6.11/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Macro Assembler 6.11 diff --git a/disks/pcx86/tools/microsoft/mouse/5.00/manifest.xml b/disks/pcx86/tools/microsoft/mouse/5.00/manifest.xml index 36998d2c2..d12b8ebda 100644 --- a/disks/pcx86/tools/microsoft/mouse/5.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/mouse/5.00/manifest.xml @@ -1,5 +1,5 @@ - + MS Mouse 5.00 diff --git a/disks/pcx86/tools/microsoft/os2/sdk/1.02/manifest.xml b/disks/pcx86/tools/microsoft/os2/sdk/1.02/manifest.xml index d3449e845..753776b0b 100644 --- a/disks/pcx86/tools/microsoft/os2/sdk/1.02/manifest.xml +++ b/disks/pcx86/tools/microsoft/os2/sdk/1.02/manifest.xml @@ -1,5 +1,5 @@ - + MS OS/2 SDK 1.02 diff --git a/disks/pcx86/tools/microsoft/windows/sdk/1.01/manifest.xml b/disks/pcx86/tools/microsoft/windows/sdk/1.01/manifest.xml index 6e4cc4ab7..8fa06317d 100644 --- a/disks/pcx86/tools/microsoft/windows/sdk/1.01/manifest.xml +++ b/disks/pcx86/tools/microsoft/windows/sdk/1.01/manifest.xml @@ -1,5 +1,5 @@ - + Windows SDK 1.01 diff --git a/disks/pcx86/tools/microsoft/windows/sdk/1.03/manifest.xml b/disks/pcx86/tools/microsoft/windows/sdk/1.03/manifest.xml index 0fceff8c6..fc3c1431d 100644 --- a/disks/pcx86/tools/microsoft/windows/sdk/1.03/manifest.xml +++ b/disks/pcx86/tools/microsoft/windows/sdk/1.03/manifest.xml @@ -1,5 +1,5 @@ - + Windows SDK 1.03 diff --git a/disks/pcx86/tools/microsoft/windows/sdk/1.04/manifest.xml b/disks/pcx86/tools/microsoft/windows/sdk/1.04/manifest.xml index 5a62b366c..da79d07fe 100644 --- a/disks/pcx86/tools/microsoft/windows/sdk/1.04/manifest.xml +++ b/disks/pcx86/tools/microsoft/windows/sdk/1.04/manifest.xml @@ -1,5 +1,5 @@ - + Windows SDK 1.04 os2museum.com diff --git a/disks/pcx86/tools/microsoft/windows/sdk/2.03/manifest.xml b/disks/pcx86/tools/microsoft/windows/sdk/2.03/manifest.xml index 72eea5008..ccbf05845 100644 --- a/disks/pcx86/tools/microsoft/windows/sdk/2.03/manifest.xml +++ b/disks/pcx86/tools/microsoft/windows/sdk/2.03/manifest.xml @@ -1,5 +1,5 @@ - + Windows SDK 2.03 os2museum.com diff --git a/disks/pcx86/tools/microsoft/windows/sdk/3.00/manifest.xml b/disks/pcx86/tools/microsoft/windows/sdk/3.00/manifest.xml index e78fa3d8e..d7c8d192e 100644 --- a/disks/pcx86/tools/microsoft/windows/sdk/3.00/manifest.xml +++ b/disks/pcx86/tools/microsoft/windows/sdk/3.00/manifest.xml @@ -1,5 +1,5 @@ - + Windows SDK 3.00 diff --git a/disks/pcx86/tools/misc/manifest.xml b/disks/pcx86/tools/misc/manifest.xml index 2bd2cc86c..441cc56c2 100644 --- a/disks/pcx86/tools/misc/manifest.xml +++ b/disks/pcx86/tools/misc/manifest.xml @@ -1,5 +1,5 @@ - + Enhanced DEBUG PC DOS Retro: Enhanced DEBUG for PC DOS and MS-DOS diff --git a/disks/pcx86/unix/ibm/pcix/1.0/manifest.xml b/disks/pcx86/unix/ibm/pcix/1.0/manifest.xml index 17adeb353..dc4a2ff43 100644 --- a/disks/pcx86/unix/ibm/pcix/1.0/manifest.xml +++ b/disks/pcx86/unix/ibm/pcix/1.0/manifest.xml @@ -1,5 +1,5 @@ - + PC/IX 1.0 diff --git a/disks/pcx86/unix/microport/system-v/2.3/manifest.xml b/disks/pcx86/unix/microport/system-v/2.3/manifest.xml index bd5b55b8f..8051c9ab3 100644 --- a/disks/pcx86/unix/microport/system-v/2.3/manifest.xml +++ b/disks/pcx86/unix/microport/system-v/2.3/manifest.xml @@ -1,5 +1,5 @@ - + Microport's AT&T UNIX System V-AT 2.3 (5¨) diff --git a/disks/pcx86/unix/sco/xenix/8086/2.1.3/manifest.xml b/disks/pcx86/unix/sco/xenix/8086/2.1.3/manifest.xml index 4a2b928a4..c199a7b64 100644 --- a/disks/pcx86/unix/sco/xenix/8086/2.1.3/manifest.xml +++ b/disks/pcx86/unix/sco/xenix/8086/2.1.3/manifest.xml @@ -1,5 +1,5 @@ - + SCO Xenix 8086 Operating System v2.1.3 diff --git a/disks/pcx86/windows/1.00/manifest.xml b/disks/pcx86/windows/1.00/manifest.xml index f0726e84d..69dd7c43a 100644 --- a/disks/pcx86/windows/1.00/manifest.xml +++ b/disks/pcx86/windows/1.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.00 diff --git a/disks/pcx86/windows/1.01/cga/softkbd/machine.xml b/disks/pcx86/windows/1.01/cga/softkbd/machine.xml index 5ded841bd..503d8cb1a 100644 --- a/disks/pcx86/windows/1.01/cga/softkbd/machine.xml +++ b/disks/pcx86/windows/1.01/cga/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256K, Windows 1.01 diff --git a/disks/pcx86/windows/1.01/manifest.xml b/disks/pcx86/windows/1.01/manifest.xml index a21229e06..531150734 100644 --- a/disks/pcx86/windows/1.01/manifest.xml +++ b/disks/pcx86/windows/1.01/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.01 diff --git a/disks/pcx86/windows/1.02/manifest.xml b/disks/pcx86/windows/1.02/manifest.xml index 8bdaa5927..c2edf6545 100644 --- a/disks/pcx86/windows/1.02/manifest.xml +++ b/disks/pcx86/windows/1.02/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.02 diff --git a/disks/pcx86/windows/1.03/manifest.xml b/disks/pcx86/windows/1.03/manifest.xml index 5e1c21278..603368a43 100644 --- a/disks/pcx86/windows/1.03/manifest.xml +++ b/disks/pcx86/windows/1.03/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.03 diff --git a/disks/pcx86/windows/1.03a/manifest.xml b/disks/pcx86/windows/1.03a/manifest.xml index c4179046a..afeacd6d4 100644 --- a/disks/pcx86/windows/1.03a/manifest.xml +++ b/disks/pcx86/windows/1.03a/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.03a diff --git a/disks/pcx86/windows/1.03b/manifest.xml b/disks/pcx86/windows/1.03b/manifest.xml index b30f02f17..8ac016584 100644 --- a/disks/pcx86/windows/1.03b/manifest.xml +++ b/disks/pcx86/windows/1.03b/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.03b diff --git a/disks/pcx86/windows/1.04/manifest.xml b/disks/pcx86/windows/1.04/manifest.xml index 78ddf022e..df47ef1da 100644 --- a/disks/pcx86/windows/1.04/manifest.xml +++ b/disks/pcx86/windows/1.04/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.04 os2museum.com diff --git a/disks/pcx86/windows/2.03/manifest.xml b/disks/pcx86/windows/2.03/manifest.xml index 4a5ad853e..be53cdc5f 100644 --- a/disks/pcx86/windows/2.03/manifest.xml +++ b/disks/pcx86/windows/2.03/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 2.03 diff --git a/disks/pcx86/windows/2.0x/manifest.xml b/disks/pcx86/windows/2.0x/manifest.xml index e5d676dda..8f9f29ead 100644 --- a/disks/pcx86/windows/2.0x/manifest.xml +++ b/disks/pcx86/windows/2.0x/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows/386 2.0x diff --git a/disks/pcx86/windows/2.10/manifest.xml b/disks/pcx86/windows/2.10/manifest.xml index f14f0264d..3ec0a7be9 100644 --- a/disks/pcx86/windows/2.10/manifest.xml +++ b/disks/pcx86/windows/2.10/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows/386 2.10 diff --git a/disks/pcx86/windows/2.11/manifest.xml b/disks/pcx86/windows/2.11/manifest.xml index 8b67f1ba0..56ccd6ef9 100644 --- a/disks/pcx86/windows/2.11/manifest.xml +++ b/disks/pcx86/windows/2.11/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 2.11 diff --git a/disks/pcx86/windows/3.00/720K/manifest.xml b/disks/pcx86/windows/3.00/720K/manifest.xml index ddc07f4a2..7a20fc3d6 100644 --- a/disks/pcx86/windows/3.00/720K/manifest.xml +++ b/disks/pcx86/windows/3.00/720K/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 3.00 diff --git a/disks/pcx86/windows/3.00/manifest.xml b/disks/pcx86/windows/3.00/manifest.xml index 6d02c7abf..b93feda44 100644 --- a/disks/pcx86/windows/3.00/manifest.xml +++ b/disks/pcx86/windows/3.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 3.00 diff --git a/disks/pcx86/windows/3.10/manifest.xml b/disks/pcx86/windows/3.10/manifest.xml index 4e9f67af1..9f8599998 100644 --- a/disks/pcx86/windows/3.10/manifest.xml +++ b/disks/pcx86/windows/3.10/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 3.10 diff --git a/disks/pcx86/windows/3.11/manifest.xml b/disks/pcx86/windows/3.11/manifest.xml index 22cfc8ab0..0f05cc579 100644 --- a/disks/pcx86/windows/3.11/manifest.xml +++ b/disks/pcx86/windows/3.11/manifest.xml @@ -1,5 +1,5 @@ - + Windows for Workgroups 3.11 diff --git a/disks/pcx86/windows/win95/4.00.499/manifest.xml b/disks/pcx86/windows/win95/4.00.499/manifest.xml index 710f20efe..1202bec6e 100644 --- a/disks/pcx86/windows/win95/4.00.499/manifest.xml +++ b/disks/pcx86/windows/win95/4.00.499/manifest.xml @@ -1,5 +1,5 @@ - + Windows 95 (Build 499) diff --git a/disks/pcx86/windows/win95/4.00.950/manifest.xml b/disks/pcx86/windows/win95/4.00.950/manifest.xml index 62642cc4a..48f9eaeb5 100644 --- a/disks/pcx86/windows/win95/4.00.950/manifest.xml +++ b/disks/pcx86/windows/win95/4.00.950/manifest.xml @@ -1,5 +1,5 @@ - + Windows 95 (RTM) 4.00.950 diff --git a/disks/pcx86/windows/wincomm/manifest.xml b/disks/pcx86/windows/wincomm/manifest.xml index 4be435a6e..b0a92882b 100644 --- a/disks/pcx86/windows/wincomm/manifest.xml +++ b/disks/pcx86/windows/wincomm/manifest.xml @@ -1,5 +1,5 @@ - + Windows COMM Driver (Source) diff --git a/docs/pcx86/examples/components.xsl b/docs/pcx86/examples/components.xsl index 2aade3a26..d98022e11 100644 --- a/docs/pcx86/examples/components.xsl +++ b/docs/pcx86/examples/components.xsl @@ -14,12 +14,12 @@ pcjs pcx86 PCx86 - 1.35.2 + 1.36.0 www.pcjs.org #FAEBD7 - + @@ -1279,10 +1279,16 @@ 60 + + + + 0.5 + + video - ,model:'',mode:,screenWidth:,screenHeight:,screenColor:'',screenRotate:,bufferAddr:,bufferRAM:,bufferFormat:'',bufferCols:,bufferRows:,bufferBits:,bufferLeft:,bufferRotate:,memory:,switches:'',scale:,cellWidth:,cellHeight:,charCols:,charRows:,fontROM:'',fontColor:'',touchScreen:'',autoLock:,aspectRatio:,smoothing:,interruptRate:,refreshRate: + ,model:'',mode:,screenWidth:,screenHeight:,screenColor:'',screenRotate:,bufferAddr:,bufferRAM:,bufferFormat:'',bufferCols:,bufferRows:,bufferBits:,bufferLeft:,bufferRotate:,memory:,switches:'',scale:,cellWidth:,cellHeight:,charCols:,charRows:,fontROM:'',fontColor:'',touchScreen:'',autoLock:,aspectRatio:,smoothing:,interruptRate:,refreshRate:,flicker: diff --git a/docs/pcx86/examples/pcx86-dbg.js b/docs/pcx86/examples/pcx86-dbg.js index 4be60421e..63336e8a5 100644 --- a/docs/pcx86/examples/pcx86-dbg.js +++ b/docs/pcx86/examples/pcx86-dbg.js @@ -46,9 +46,9 @@ var l,aa;function ca(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a;for(var d in b)if(Object.defineProperties){var e=Object.getOwnPropertyDescriptor(b,d);e&&Object.defineProperty(a,d,e)}else a[d]=b[d]} for(var da="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},ea="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global?global:this,fa=["Math","trunc"],ga=0;gaa?-b:b};ka!=ja&&null!=ka&&da(ea,ia,{configurable:!0,writable:!0,value:ka}); -var la={163840:[40,1,8,,254],184320:[40,1,9,,252],327680:[40,2,8,,255],368640:[40,2,9,,253],737280:[80,2,9,,249],1228800:[80,2,15,,249],1474560:[80,2,18,,240],2949120:[80,2,36,,240],10653696:[306,4,17],21411840:[615,4,17],256256:[77,1,26,128],2494464:[203,2,12,512],5242880:[256,2,40,256],10485760:[512,2,40,256]},n={tp:0,vp:1,wp:2,ml:3,xp:4,yp:5,zp:6,Ap:7,Bp:8,Cp:9,Dp:10,Ep:11,Fp:12,Gp:13,Hp:14,Ip:15,Jp:16,Kp:17,Lp:18,Mp:19,Np:20,Op:21,Pp:22,Qp:23,Rp:24,Sp:25,Tp:26," ":32,"!":33,'"':34,"#":35,$:36, -"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,ce:65,xi:66,yi:67,zi:68,E:69,Ai:70,Bi:71,Ci:72,Di:73,Ei:74,Fi:75,Gi:76,Hi:77,Ii:78,Ji:79,Ki:80,Q:81,Li:82,Mi:83,Ni:84,Oi:85,Pi:86,Qi:87,Ri:88,Si:89,gg:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,de:97,Al:98,Cl:99,d:100,e:101,Ml:102,Nl:103,Ol:104,Pl:105,gn:106,k:107,kn:108,qn:109,n:110,xn:111,p:112,q:113,r:114,Uo:115,t:116,Yo:117, -Zo:118,$o:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,Up:127},ma={};ma[173]=n["-"];ma[186]=n[";"];ma[187]=n["="];ma[189]=n["-"];ma[188]=n[","];ma[190]=n["."];ma[191]=n["/"];ma[192]=n["`"];ma[219]=n["["];ma[220]=n["\\"];ma[221]=n["]"];ma[222]=n["'"];var na={};na[n["1"]]=n["!"];na[n["2"]]=n["@"];na[n["3"]]=n["#"];na[n["4"]]=n.$;na[n["5"]]=n["%"];na[n["6"]]=n["^"];na[n["7"]]=n["&"];na[n["8"]]=n["*"];na[n["9"]]=n["("];na[n["0"]]=n[")"];na[186]=n[":"];na[187]=n["+"];na[188]=n["<"];na[189]=n._; +var la={163840:[40,1,8,,254],184320:[40,1,9,,252],327680:[40,2,8,,255],368640:[40,2,9,,253],737280:[80,2,9,,249],1228800:[80,2,15,,249],1474560:[80,2,18,,240],2949120:[80,2,36,,240],10653696:[306,4,17],21411840:[615,4,17],256256:[77,1,26,128],2494464:[203,2,12,512],5242880:[256,2,40,256],10485760:[512,2,40,256]},n={sp:0,up:1,vp:2,ll:3,wp:4,xp:5,yp:6,zp:7,Ap:8,Bp:9,Cp:10,Dp:11,Ep:12,Fp:13,Gp:14,Hp:15,Ip:16,Jp:17,Kp:18,Lp:19,Mp:20,Np:21,Op:22,Pp:23,Qp:24,Rp:25,Sp:26," ":32,"!":33,'"':34,"#":35,$:36, +"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,ge:65,wi:66,xi:67,yi:68,E:69,zi:70,Ai:71,Bi:72,Ci:73,Di:74,Ei:75,Fi:76,Gi:77,Hi:78,Ii:79,Ji:80,Q:81,Ki:82,Li:83,Mi:84,Ni:85,Oi:86,Pi:87,Qi:88,Ri:89,fg:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,he:97,zl:98,Bl:99,d:100,e:101,Ll:102,Ml:103,Nl:104,Ol:105,fn:106,k:107,jn:108,pn:109,n:110,wn:111,p:112,q:113,r:114,To:115,t:116,Xo:117, +Yo:118,Zo:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,Tp:127},ma={};ma[173]=n["-"];ma[186]=n[";"];ma[187]=n["="];ma[189]=n["-"];ma[188]=n[","];ma[190]=n["."];ma[191]=n["/"];ma[192]=n["`"];ma[219]=n["["];ma[220]=n["\\"];ma[221]=n["]"];ma[222]=n["'"];var na={};na[n["1"]]=n["!"];na[n["2"]]=n["@"];na[n["3"]]=n["#"];na[n["4"]]=n.$;na[n["5"]]=n["%"];na[n["6"]]=n["^"];na[n["7"]]=n["&"];na[n["8"]]=n["*"];na[n["9"]]=n["("];na[n["0"]]=n[")"];na[186]=n[":"];na[187]=n["+"];na[188]=n["<"];na[189]=n._; na[190]=n[">"];na[191]=n["?"];na[192]=n["~"];na[219]=n["{"];na[220]=n["|"];na[221]=n["}"];na[222]=n['"'];na[173]=n._;na[61]=n["+"];na[59]=n[":"]; function oa(a,b){var c;if(a){b||(b=10);var d,e,f=0=b&&(e=a.match(/(-?[0-9]+)B([0-9]*)/))&& (a=e[1],d=35-((e[2]||35)&255));e=a;((f=b)&&10!=f?16==f?e.match(/^-?[0-9a-f]+$/i):8==f?e.match(/^-?[0-7]+$/):2==f&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(g=parseInt(a,b))&&(d&&(0>g&&(g+=Math.pow(2,36)),g=0":">",'"':""","'":"'"},Ca={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",10:"LF",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"};function Da(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[g]);0a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())} function Fa(a){var b,c="";b||(b=new Date);for(var d=b.getHours(),e=b.getDate(),f=b.getMonth()+1,g=0;gd?"am":"pm";break;case "d":c+=("0"+e).slice(-2);break;case "D":c+=Ga[b.getDay()].substr(0,3);break;case "F":c+=Ha[f-1];break;case "g":c+=d?12=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.rh|g<>a.shift} +break;case "M":c+=Ha[f-1].substr(0,3);break;case "n":c+=f;break;case "s":c+=("0"+b.getSeconds()).slice(-2);break;case "y":c+=(""+b.getFullYear()).slice(-2);break;case "Y":c+=b.getFullYear();break;default:c+=h}}return c}function Ia(a,b){var c=0,d=1,e;for(e in a){if(d>=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.qh|g<>a.shift} function Ka(a,b){var c;if(Array.prototype.indexOf)return a.indexOf(b,c);c=c||0;0>c&&(c+=a.length);0>c&&(c=0);for(var d=a.length;ca?this.ye=this.id:(this.ze=this.id.substr(0,a),this.ye=this.id.substr(a+1));this.ba={ready:!1,qf:!1,eh:!1,sg:!1,dc:!1,Tf:!1,error:!1};this.rg=null;this.ba.error=!1;this.ic=c||0;this.ca=this.H=this.ma=this.pa=null;sb.push(this)} +bb(Wa("iOS")?"onpagehide":Wa("Opera")?"onunload":"onbeforeunload",function(){hb(gb.exit)});function rb(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Bj=b.comment;this.Tk=b;this.exports={};this.na=this.bindings={};a=this.id.indexOf(".");0>a?this.Ce=this.id:(this.De=this.id.substr(0,a),this.Ce=this.id.substr(a+1));this.ba={ready:!1,pf:!1,dh:!1,rg:!1,dc:!1,Sf:!1,error:!1};this.qg=null;this.ba.error=!1;this.ic=c||0;this.ca=this.H=this.ma=this.pa=null;sb.push(this)} function tb(a,b,c){ub[a]&&b&&(ub[a][b]=c)}function mb(a){window&&window.alert(a)}function vb(a){var b=!1;window&&(b=window.confirm(a));return b}function wb(a,b){a.value+=b;b=a.value;8192e?d+=b+"\n":d=d.substr(0,e)+c+d.substr(e+b.length);8192=this.x&&a=this.y&&b=c>>2);d?(b=new Zb(a.x,a.y,a.Nc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new Zb(a.x,a.y,a.Nc*b/c|0,a.A),a.x+=b.Nc,a.Nc-=b.Nc);return b}function ac(a){rb.call(this,"Panel",a);this.F=this.G=this.L=-1}ca(ac,rb);l=ac.prototype;l.Cb=function(a,b,c,d){return this.pa&&this.pa.Cb(a,b,c,d)||this.H&&this.H.Cb(a,b,c,d)||this.C&&this.C.Cb(a,b,c,d)||this.ca&&this.ca.Cb(a,b,c,d)?!0:rb.prototype.Cb.call(this,a,b,c,d)}; -l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.H=c;this.ca=d;this.C=bc(a,"Keyboard")};l.Xb=function(a,b){b||cc();return!0};l.Wb=function(){return!0};l.Wd=function(a,b){a.button||(this.L=b?0:-1,dc(this,a,b))};l.uf=function(a){dc(this,a)}; -function dc(a,b,c){var d=ec/null.offsetWidth,e=fc/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.L||(a.L=Math.abs(a.F-d)>Math.abs(a.G-b)?1:2),1==a.L?b=a.G:2==a.L&&(d=a.F));a.F=d;a.G=b;if(0<=d&&dd&&(f=d);c= -f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ga)){b=c;if(a.context&&a.N&&a.P){e=ic-jc;f=a.N.width;a.P.fillStyle=kc;a.P.fillRect(0,e,f,jc);lc(a,e+mc,a.N,a.P);a.W=a.ha.width/24|0;if(null==b)nc(a,"Mouse over memory to dump");else for(nc(a,q(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var k;k=a.ma;var m=b++;k=k.aa[(m&k.C)>>>k.A].$d(m&k.D,m);nc(a,q(k,2),null,1);g+=32<=k&&128>k?String.fromCharCode(k):"."}nc(a,g,null,0,1)}a.context.drawImage(a.N,0,e,f,jc,a.Ea,a.Ia,a.va,a.za)}a.ga=c}}} -function oc(a,b,c,d){a.A.mf[a.A.dj++]={Ql:b,Id:c,type:d};return Ia(hc,b,c,0,d)}function lc(a,b,c,d){var e,f=null.style.color,g=a.sa=10;a.B=g;a.I=b;a.J=a.aa=mc;e||(e=a.Z||a.aa+"px "+pc);a.M=a.Z=e;c&&(a.ha=c);d&&(a.D=d,a.ka=f||"white")}function nc(a,b,c,d,e){a.D.font=a.M;a.D.fillStyle=a.ka;a.D.fillText(b,a.B,a.I);a.B+=a.W;null!=c&&(16!=a.Da?b=c.toString():(b=8>a.qa?"0x":"",b+=q(c,a.qa)),a.D.fillText(b,a.B,a.I),a.B+=a.W);d&&(a.B+=a.W*d);e&&(a.B=a.sa,a.I+=(a.J+2)*(e||1))} +log:536870912,warn:1073741824,halt:-2147483648};function Yb(a,b,c,d){this.A=[a,b,c,d];this.B=null;void 0===a&&(this.A[0]=256*Math.random()|0,this.A[1]=256*Math.random()|0,this.A[2]=256*Math.random()|0,this.A[3]=255,this.B=null)}Yb.prototype.toString=function(){this.B||(this.B="#"+q(this.A[0],2)+q(this.A[1],2)+q(this.A[2],2));return this.B};function Zb(a,b,c,d){this.x=a;this.y=b;this.Qc=c;this.A=d}Zb.prototype.contains=function(a,b){return a>=this.x&&a=this.y&&b=c>>2);d?(b=new Zb(a.x,a.y,a.Qc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new Zb(a.x,a.y,a.Qc*b/c|0,a.A),a.x+=b.Qc,a.Qc-=b.Qc);return b}function ac(a){rb.call(this,"Panel",a);this.F=this.G=this.L=-1}ca(ac,rb);l=ac.prototype;l.Cb=function(a,b,c,d){return this.pa&&this.pa.Cb(a,b,c,d)||this.H&&this.H.Cb(a,b,c,d)||this.C&&this.C.Cb(a,b,c,d)||this.ca&&this.ca.Cb(a,b,c,d)?!0:rb.prototype.Cb.call(this,a,b,c,d)}; +l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.H=c;this.ca=d;this.C=bc(a,"Keyboard")};l.Xb=function(a,b){b||cc();return!0};l.Wb=function(){return!0};l.$d=function(a,b){a.button||(this.L=b?0:-1,dc(this,a,b))};l.tf=function(a){dc(this,a)}; +function dc(a,b,c){var d=ec/null.offsetWidth,e=fc/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.L||(a.L=Math.abs(a.F-d)>Math.abs(a.G-b)?1:2),1==a.L?b=a.G:2==a.L&&(d=a.F));a.F=d;a.G=b;if(0<=d&&dd&&(f=d);c= +f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ga)){b=c;if(a.context&&a.N&&a.P){e=ic-jc;f=a.N.width;a.P.fillStyle=kc;a.P.fillRect(0,e,f,jc);lc(a,e+mc,a.N,a.P);a.W=a.ha.width/24|0;if(null==b)nc(a,"Mouse over memory to dump");else for(nc(a,q(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var k;k=a.ma;var m=b++;k=k.aa[(m&k.C)>>>k.A].de(m&k.D,m);nc(a,q(k,2),null,1);g+=32<=k&&128>k?String.fromCharCode(k):"."}nc(a,g,null,0,1)}a.context.drawImage(a.N,0,e,f,jc,a.Ea,a.Ia,a.va,a.za)}a.ga=c}}} +function oc(a,b,c,d){a.A.lf[a.A.cj++]={Pl:b,Kd:c,type:d};return Ia(hc,b,c,0,d)}function lc(a,b,c,d){var e,f=null.style.color,g=a.sa=10;a.B=g;a.I=b;a.J=a.aa=mc;e||(e=a.Z||a.aa+"px "+pc);a.M=a.Z=e;c&&(a.ha=c);d&&(a.D=d,a.ka=f||"white")}function nc(a,b,c,d,e){a.D.font=a.M;a.D.fillStyle=a.ka;a.D.fillText(b,a.B,a.I);a.B+=a.W;null!=c&&(16!=a.Da?b=c.toString():(b=8>a.qa?"0x":"",b+=q(c,a.qa)),a.D.fillText(b,a.B,a.I),a.B+=a.W);d&&(a.B+=a.W*d);e&&(a.B=a.sa,a.I+=(a.J+2)*(e||1))} function cc(){for(var a=!1,b=Bb(document,"pcx86","panel"),c=0;c>2,qc=fc,ic=fc,kc="black",jc=fc>>1;eb(cc); -function sc(a,b,c){rb.call(this,"Bus",a);this.H=b;this.ca=c;this.I=a.busWidth||20;this.P=Math.pow(2,this.I);this.N=this.C=this.P-1|0;this.A=32==this.I||20>=this.I?12:24>=this.I?14:15;this.B=1<>2;this.D=this.B-1;this.M=this.P/this.B|0;this.W=this.M-1;this.F=[];this.G=[];this.K=this.L=!1;this.X=[];this.Z=[];a=new x;tc(a,this.ca);this.aa=Array(this.M);for(b=0;b>>a.A;0g&&(p=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.ya)return k.we+=k.ya-f,k.ya=f,!0;if(f>=k.ya+k.we){p=k.size-(f-m);p>g&&(p=g);k.we=f-k.ya+p;f=m+a.B;g-=p;h++;continue}}return xc(a,yc,f,g)}f=new x(f,p,a.B,d,e);tc(f,a.ca,k);a.aa[h++]=f;f=m+a.B;g-=p}return 0>=g?(zc(a.H),a.H.ba.jb||a.status(Math.floor(c/1024)+"Kb "+Ac[d]+" at "+q(b)),!0):xc(a,Bc,b,c)} -function uc(a,b){32==a.I?b?a.J&&(Cc(a,1048576,1048576,a.J),a.J=null):a.J||(a.J=Dc(a,1048576,1048576),Cc(a,1048576,1048576,Dc(a,0,1048576))):20>>this.A;0=this.I?12:24>=this.I?14:15;this.B=1<>2;this.D=this.B-1;this.M=this.P/this.B|0;this.W=this.M-1;this.F=[];this.G=[];this.K=this.L=!1;this.X=[];this.Z=[];a=new x;tc(a,this.ca);this.aa=Array(this.M);for(b=0;b>>a.A;0g&&(p=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.ya)return k.Be+=k.ya-f,k.ya=f,!0;if(f>=k.ya+k.Be){p=k.size-(f-m);p>g&&(p=g);k.Be=f-k.ya+p;f=m+a.B;g-=p;h++;continue}}return xc(a,yc,f,g)}f=new x(f,p,a.B,d,e);tc(f,a.ca,k);a.aa[h++]=f;f=m+a.B;g-=p}return 0>=g?(zc(a.H),a.H.ba.jb||a.status(Math.floor(c/1024)+"Kb "+Ac[d]+" at "+q(b)),!0):xc(a,Bc,b,c)} +function uc(a,b){32==a.I?b?a.J&&(Cc(a,1048576,1048576,a.J),a.J=null):a.J||(a.J=Dc(a,1048576,1048576),Cc(a,1048576,1048576,Dc(a,0,1048576))):20>>this.A;0>>a.A;0>>=a.A;0>>a.A;0>>this.A].Cc(a&this.D,a)};function Pc(a,b){var c=b&a.D,d=(b&a.C)>>>a.A;return c!=a.D?a.aa[d].Of(c,b):a.aa[d++].$d(c,b)|a.aa[d&a.W].$d(0,b+1)<<8} -l.fc=function(a,b){this.aa[(a&this.C)>>>this.A].Ec(a&this.D,b&255,a)};function Qc(a,b,c){var d=b&a.D,e=(b&a.C)>>>a.A;d!=a.D?a.aa[e].vi(d,c&65535,b):(a.aa[e++].df(d,c&255,b),a.aa[e&a.W].df(0,c>>8&255,b+1))}l.Bj=function(){return null}; -function Rc(a,b){var c=0,d=[],e=!a.J&&a.N==a.C;e||uc(a,!0);for(var f=0;f>>a.A;0>>this.A].Bc(a&this.D,a)};function Pc(a,b){var c=b&a.D,d=(b&a.C)>>>a.A;return c!=a.D?a.aa[d].Nf(c,b):a.aa[d++].de(c,b)|a.aa[d&a.W].de(0,b+1)<<8} +l.fc=function(a,b){this.aa[(a&this.C)>>>this.A].Dc(a&this.D,b&255,a)};function Qc(a,b,c){var d=b&a.D,e=(b&a.C)>>>a.A;d!=a.D?a.aa[e].ui(d,c&65535,b):(a.aa[e++].cf(d,c&255,b),a.aa[e&a.W].cf(0,c>>8&255,b+1))}l.Aj=function(){return null}; +function Rc(a,b){var c=0,d=[],e=!a.J&&a.N==a.C;e||uc(a,!0);for(var f=0;f>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,e);a.ca&&a.L!=g[1]&&Zc(a.ca,b,k)}else a.ca&&(Sb(a.ca,a,b,k,e),a.L&&Zc(a.ca,b,k));f+=h<<3;b+=h;c-=h}}function xc(a,b,c,d,e){b="Memory block error ("+b+": "+q(c)+","+q(d)+")";e?a.ca?a.ca.message(b):a.log(b):mb(b);return!1}var hc,$c={Nk:20,count:8,lq:1,type:3},ad=0,bd;for(bd in $c){var cd=$c[bd];$c[bd]={rh:(1<>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,e);a.ca&&a.L!=g[1]&&Zc(a.ca,b,k)}else a.ca&&(Sb(a.ca,a,b,k,e),a.L&&Zc(a.ca,b,k));f+=h<<3;b+=h;c-=h}}function xc(a,b,c,d,e){b="Memory block error ("+b+": "+q(c)+","+q(d)+")";e?a.ca?a.ca.message(b):a.log(b):mb(b);return!1}var hc,$c={Mk:20,count:8,kq:1,type:3},ad=0,bd;for(bd in $c){var cd=$c[bd];$c[bd]={qh:(1<>1),this.Y=new Int32Array(this.I,0,c>>2),Fc(this,Kc?Lc:Nc);else{this.Y=Array(c>>2);for(e=0;e>2),b=0;b>8,c)};l.ti=function(a,b,c){this.Ec(a++,b&255,c++);this.Ec(a++,b>>8&255,c++);this.Ec(a++,b>>16&255,c++);this.Ec(a,b>>>24,c)};l.Eo=function(a){return this.Y[a>>2]>>>((a&3)<<3)&255}; -l.Qo=function(a){var b=a>>2;a=(a&3)<<3;var c=this.Y[b]>>a;return 24>a?c&65535:c&255|(this.Y[b+1]&255)<<8};l.Ko=function(a){var b=a>>2;a=(a&3)<<3;var c=this.Y[b];a&&(c=c>>>a|this.Y[b+1]<<32-a);return c};l.cp=function(a,b){var c=a>>2;a=(a&3)<<3;this.Y[c]=this.Y[c]&~(255<>2;a=(a&3)<<3;24>a?this.Y[c]=this.Y[c]&~(65535<>8);this.Oa=!0}; -l.jp=function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<>>32-a}else this.Y[c]=b;this.Oa=!0};l.Do=function(a,b){this.ca&&null!=this.ya&&wd(this.ca,this.ya+a)||this.C&&xd(this.C,b,1,!1);return this.$d(a,b)};l.Po=function(a,b){this.ca&&null!=this.ya&&wd(this.ca,this.ya+a,2)||this.C&&xd(this.C,b,2,!1);return this.Of(a,b)};l.Jo=function(a,b){this.ca&&null!=this.ya&&wd(this.ca,this.ya+a,4)||this.C&&xd(this.C,b,4,!1);return this.ni(a,b)}; -l.bp=function(a,b,c){this.ca&&null!=this.ya&&yd(this.ca,this.ya+a)||this.C&&xd(this.C,c,1,!0);this.D?this.ef(0,b,c):this.df(a,b,c)};l.op=function(a,b,c){this.ca&&null!=this.ya&&yd(this.ca,this.ya+a,2)||this.C&&xd(this.C,c,2,!0);this.D?this.ef(0,b,c):this.vi(a,b,c)};l.ip=function(a,b,c){this.ca&&null!=this.ya&&yd(this.ca,this.ya+a,4)||this.C&&xd(this.C,c,4,!0);this.D?this.ef(0,b,c):this.K(a,b,c)};l.Go=function(a,b){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.F;return this.td.Cc(a,b)}; -l.So=function(a,b){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.F;return this.td.Nf(a,b)};l.Mo=function(a,b){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.F;return this.td.Nd(a,b)};l.fp=function(a,b,c){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.J;this.td.Ec(a,b,c)};l.rp=function(a,b,c){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.J;this.td.Vf(a,b,c)};l.lp=function(a,b,c){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.J;this.td.Uf(a,b,c)}; -l.Ho=function(a,b){return zd(this.C,b,!1).Cc(a,b)};l.To=function(a,b){return zd(this.C,b,!1).Nf(a,b)};l.No=function(a,b){return zd(this.C,b,!1).Nd(a,b)};l.gp=function(a,b,c){zd(this.C,c,!0).Ec(a,b,c)};l.sp=function(a,b,c){zd(this.C,c,!0).Vf(a,b,c)};l.mp=function(a,b,c){zd(this.C,c,!0).Uf(a,b,c)};l.Co=function(a){return this.Pa[a]};l.Wk=function(a){return this.Pa[a]};l.Fo=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Cc=this.Wk;return this.Pa[a]}; -l.Oo=function(a){return this.G.getUint16(a,!0)};l.al=function(a){return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.Sd[a>>1]};l.Ro=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Nf=this.al;return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.Sd[a>>1]};l.Io=function(a){return this.G.getInt32(a,!0)};l.Yk=function(a){return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.Y[a>>2]}; -l.Lo=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Nd=this.Yk;return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.Y[a>>2]};l.ap=function(a,b){this.Pa[a]=b;this.Oa=!0};l.jl=function(a,b){this.Pa[a]=b;this.Oa=!0};l.ep=function(a,b){this.Pa[a]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Ec=this.jl;this.td.Oa=!0};l.np=function(a,b){this.G.setUint16(a,b,!0);this.Oa=!0};l.ll=function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.Sd[a>>1]=b;this.Oa=!0}; -l.qp=function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.Sd[a>>1]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Vf=this.ll;this.td.Oa=!0};l.hp=function(a,b){this.G.setInt32(a,b,!0);this.Oa=!0};l.kl=function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.Y[a>>2]=b;this.Oa=!0}; -l.kp=function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.Y[a>>2]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Uf=this.kl;this.td.Oa=!0};function Ad(a){Tb&&!Kc&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a} -var gd=0,Jc=2,hd=5,jd=6,Bd=["black","blue","green","cyan"],Ac="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),fd=0,qd=[],Oc=[x.prototype.Eo,x.prototype.cp,x.prototype.Qo,x.prototype.pp,x.prototype.Ko,x.prototype.jp],vd=[x.prototype.Do,x.prototype.bp,x.prototype.Po,x.prototype.op,x.prototype.Jo,x.prototype.ip],kd=[x.prototype.Go,x.prototype.fp,x.prototype.So,x.prototype.rp,x.prototype.Mo,x.prototype.lp],id=[x.prototype.Ho,x.prototype.gp,x.prototype.To,x.prototype.sp,x.prototype.No,x.prototype.mp]; -if(Tb)var Nc=[x.prototype.Co,x.prototype.ap,x.prototype.Oo,x.prototype.np,x.prototype.Io,x.prototype.hp],Lc=[x.prototype.Wk,x.prototype.jl,x.prototype.al,x.prototype.ll,x.prototype.Yk,x.prototype.kl],Cd=[x.prototype.Fo,x.prototype.ep,x.prototype.Ro,x.prototype.qp,x.prototype.Lo,x.prototype.kp]; -function Dd(a,b){rb.call(this,"CPU",a,1);b=a.cycles||b;var c=a.multiplier||1;this.T={};this.T.xd=b;this.T.Kd=c;this.T.vg=Math.round(this.T.xd/1E4)/100;this.T.pe=this.T.vg*this.T.Kd;this.ba.jb=!1;this.ba.si=!1;this.ba.ge=a.autoStart;this.ba.pj=!1;this.ba.Ke=!1;this.T.vf=this.T.Ve=0;this.T.xf=a.csStart;this.T.Ue=a.csInterval;this.T.We=a.csStop;this.Vl=this.Wf.bind(this);Ob(this)}ca(Dd,rb);l=Dd.prototype; -l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.ca=d;for(b=0;b=a.T.Ve&&(a.T.Ve+=a.T.Ue,c=!0);0<=a.T.We&&a.T.We<=Kd(a)&&(a.T.Ue=a.T.We=-1,Hd(a),a.Kb(),c=!0);c&&a.O(Kd(a)+" cycles: checksum="+q(a.T.vf))}} -l.Cb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.na[b]=c;a=!0;break;case "run":this.na[b]=c;c.onclick=function(){var a;if(a=d.pa)if(a=d.pa,a.ba.dc)a=!0;else{var b=null,c,h=Db(a.id);for(c=0;ca.T.vg&&(c=Math.round(c/a.T.Kd));return c}function Gd(a){a.T.Xd=0;a.Qd=a.nd=a.zc=a.A=0;Hd(a);Ld(a,1)} -function Ld(a,b,c){var d=!1;if(void 0!==b){(c||a.ba.jb)&&.8>a.T.Xd/a.T.pe?b=1:d=!0;a.T.Kd=b;b=a.T.vg*a.T.Kd;if(a.T.pe!=b){a.T.pe=b;b=a.T.pe.toFixed(2)+"Mhz";var e=a.na.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.pa&&a.pa.od()}Od(a,a.nd);a.nd=0;a.T.Yd=Ma();a.T.qe=0;Pd(a);return d} -l.Wf=function(a){if(Qb(this,!0)){if(!this.ba.jb){Ld(this);this.pa&&this.pa.start(this.T.Yd,Kd(this));this.ba.jb=!0;this.ba.si=!0;this.W&&this.W.start();var b=this.na.run;b&&(b.textContent="Halt");this.pa&&(Td(this.pa,!0),a&&this.pa.od(!0))}this.T.xh>=this.T.xd&&Pd(this,!0);this.T.Af=0;this.T.wg=Ma();this.T.qe&&(a=this.T.wg-this.T.qe,a>this.T.Jj&&(this.T.Yd+=a,this.T.Yd>this.T.wg&&(this.T.Yd=this.T.wg)));try{do{var c=this.ba.Ke?1:this.T.un;if(this.W){Vd(this.W);var d=this.W;a=c;var e=d.G[0];if(e.me){var f= -(Kd(d.H,d.P)-e.jd)/d.Ba|0,g=Wd(d,0)-f;e.mode==Xd&&(g-=f);var h=g*d.Ba|0;e.mode==Xd&&(h>>=1);a>h&&(a=h)}var c=a,k=this.W;a=c;if(k.A&&k.A[Yd]&Zd){var m=k.Z-Kd(k.H,k.P);0m&&(a=m)}c=a}try{this.Pg(c)}catch(v){if("number"!=typeof v)throw v;}var p=this.zc-this.A;this.nd+=p;this.T.Af+=p;Od(this,0,!0);Jd(this,p);this.T.zf-=p;0>=this.T.zf&&(this.T.zf+=this.T.Lj,this.pa&&$d(this.pa));this.T.yf-=p;0>=this.T.yf&&(this.T.yf+=this.T.Kj,this.pa&&Td(this.pa));this.T.Xe-=p;if(0>=this.T.Xe){this.T.Xe+=this.T.wh; -break}}while(this.ba.jb)}catch(v){this.Kb();Id(this);this.pa&&this.pa.stop(Ma(),Kd(this));Qb(this,!1);Mb(this,v.stack||v.message);return}c=setTimeout;d=this.Vl;this.T.qe=Ma();e=this.T.Jj;this.T.Af&&(e=Math.round(e*this.T.Af/this.T.wh));e-=this.T.qe-this.T.wg;if(f=this.T.qe-this.T.Yd)this.T.Xd=Math.round(this.nd/(10*f))/100,864E5<=f&&(this.Qd=0,this.W&&Vd(this.W,!0),Ld(this));if(0>e||this.T.Xde&&(this.T.Yd-=e),e=0;this.T.xh+=this.T.Af;this.T.qe+=e;c(d,e)}else Id(this),this.pa&&this.pa.stop(Ma(), -Kd(this))};l.Pg=function(){return 0};l.Kb=function(a){Pb(this,!0);this.zc-=this.A;this.A=0;Od(this,this.nd);this.nd=0;if(this.ba.jb){this.ba.jb=!1;this.W&&this.W.stop();var b=this.na.run;b&&(b.textContent="Run")}this.ba.complete=a};function Id(a,b){a.pa&&($d(a.pa,b),Td(a.pa,b))}var Qd=30,Rd=60,Sd=2,Ed=["power","reset"]; -function ae(a,b,c,d){this.gc=a;this.ca=a.ca;this.id=b;this.Zb=c||"";this.U=0;this.Ka=65535;this.Nb=this.Ka+1;this.Ab=this.qc=this.ext=this.nb=this.type=this.ua=0;this.Lb=-1;this.V=this.Jc=2;this.R=this.wa=65535;this.G=this.qh;this.D=this.hj;this.F=this.jj;this.A={U:-1,ua:0,Ka:0,nb:0,type:0,ext:0,Lb:-1};1==this.id&&(this.Kf=0,this.C=null,this.Re=!1,this.H=Array(32),this.B=[]);be(this,!0,d)}function ce(a,b){a.B.push(b);return[a.B.length,de]}l=ae.prototype; -l.qh=function(a){this.U=a&65535;return this.ua=this.U<<4};l.ug=function(a,b){var c,d,e=this.gc;a&=65535;a&4?(c=e.Eb.ua,d=c+e.Eb.Ka|0):(c=e.Ib,d=e.Pc);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,ee(this,c,a,b);this.id>>0)+b<=this.Nb?this.ua+a|0:this.mg()};l.El=function(a,b){return(a>>>0)+b>this.Nb?this.ua+a|0:this.mg()};l.mg=function(){y.call(this.gc,13,0);return-1};l.ij=function(a,b){return(a>>>0)+b<=this.Nb?this.ua+a|0:this.ng()}; -l.Fl=function(a,b){return(a>>>0)+b>this.Nb?this.ua+a|0:this.ng()};l.ng=function(){y.call(this.gc,13,0);return-1};function he(a,b,c,d,e){a.U=b;a.ua=d;a.Ka=e;a.Nb=(e>>>0)+1;a.nb=c;a.type=c&7936;a.ext=c>>16&192;a.Lb=(b&4?a.gc.Eb.ua:a.gc.Ib)+(b&65528)|0;a.id>>0)+1;a.nb=e;a.type=e&7936;a.ext=0;a.Lb=b;a.id>>0)+1,a.nb=a.A.nb,a.type=a.A.type,a.ext=a.A.ext,a.Lb=a.A.Lb,a.A.U=-1,be(a,!0,!0,!1),a.ua;a.A.U=-1;var f=e.ja(b+0),g=e.ja(b+4),h=g&7936,k=e.ja(b+2)|(g&255)<<16,m=e.ja(b+6),p=c&65528;if(80386<=e.da){var v=f,k=k|(m&65280)<<16,f=f|(m&15)<<16;m&128&&(f=f<<12|4095)}switch(a.id){case ke:var u=a.C;a.Re=!1;if(u&&c==de&&a.B.length){var F=a.B[a.Kf-1];if(F&&!F())return-1}var H=c&3,I=(g&24576)>>13,F=-1,L,P;p||b>= -e.Ib&&b=a.Ab&&(H>a.Ab&&(F=le(e),me(e,le(e),!0),ne(e,F),a.Re=!0),F=0);else{if(256==h||2304==h)return oe(a,c,u)?a.ua:-1;if(1024==h)F=2,P=0,Hh||2048==(h&2560))return y.call(e,13,c&65532),-1;if(!(g&32768))return y.call(e,11,c&65532),-1}break;case ge:if(!p||4096>h||512!=(h&2560))return y.call(e,13,c&65532),-1;if(!(g&32768))return y.call(e,12,c&65532), --1;break;case ie:u=h&-513;if(!p||256!=u&&2304!=u)return y.call(e,13,c&65532),-1;2304==u&&(a.Wi=k+e.ja(k+102)|0,a.yl=k+a.Ka|0);break;case fe:if(!(h&4096)&&768>>0)+1,a.nb=g,a.type=h,a.ext=m,a.Lb=b,be(a,!0,!0,!1));return k} -function oe(a,b,c){var d=a.gc,e=a.Ab,f=d.ka.U,g=d.ka.ua;if(!c){if(!(d.ka.type&512))return y.call(d,13,b&65532),!1;d.gb(d.ka.Lb+4,d.ka.nb&=-513)}if(-1===d.ka.load(b))return!1;var h=d.ka.ua;if(!1!==c){if(d.ka.type&512)return y.call(d,13,b&65532),!1;d.gb(d.ka.Lb+4,d.ka.nb|=512)}d.ka.type=d.ka.type&-513|d.ka.nb&512;256==d.ka.type||768==d.ka.type?(d.gb(g+14,A(d)),d.gb(g+16,xe(d)),d.gb(g+18,d.D),d.gb(g+20,d.I),d.gb(g+22,d.L),d.gb(g+24,d.G),d.gb(g+26,z(d)),d.gb(g+28,d.M),d.gb(g+30,d.K),d.gb(g+32,d.J),d.gb(g+ -34,d.oa.U),d.gb(g+36,d.Z.U),d.gb(g+38,d.X.U),d.gb(g+40,d.Da.U),d.Eb.load(d.ja(h+42)),De(d,d.ja(h+16)|(c?16384:0)),d.D=d.ja(h+18),d.I=d.ja(h+20),d.L=d.ja(h+22),d.G=d.ja(h+24),d.M=d.ja(h+28),d.K=d.ja(h+30),d.J=d.ja(h+32),d.oa.load(d.ja(h+34)),d.Da.load(d.ja(h+40)),Ee(d,d.ja(h+14),d.ja(h+36)),b=38,g=26,a.Ab>>0)+1)}; -function be(a,b,c,d){void 0===c&&(c=!!(a.gc.qa&1));a.Oc=!1;if(c)if(a.load=a.ug,a.Hj=a.on,a.ac=a.gj,a.bc=a.ij,void 0===d&&(d=!!(a.gc.P&131072)),d)a.load=a.G,a.ac=a.D,a.bc=a.F,a.Ab=a.qc=3,a.V=2,a.R=a.wa=65535,a.Ka=65535,a.Nb=a.Ka+1,a.Jc=a.V,a.Lb=-1,a.Re=!1;else{if(!(a.U&-4))a.ac=a.mg,a.bc=a.ng;else if(a.type&4096){6144==(a.type&6656)&&(a.ac=a.mg);if(a.type&2048||!(a.type&512))a.bc=a.ng;1024==(a.type&3072)&&(a.ac==a.gj&&(a.ac=a.El),a.bc==a.ij&&(a.bc=a.Fl),a.Oc=!0);b&&a.id>13,80386>a.gc.da||!(a.ext&64)?(a.V=2,a.R=65535):(a.V=4,a.R=-1),a.Jc=a.V,a.wa=a.R)}else a.load=a.qh,a.Hj=a.pn,a.ac=a.hj,a.bc=a.jj,a.Ab=a.qc=0,a.Lb=-1,a.Re=!1}var ke=1,we=2,ge=3,ie=4,fe=6,de=1; -function Ge(a){var b=+a.model||8088,c;switch(b){default:c=4772727;break;case 80286:c=6E6;break;case 80386:c=16E6}Dd.call(this,a,c);this.da=b;a=a.stepping;this.xe=b+(a?oa(a,16):0);this.Vi=61442;this.Rd=1792;this.wi=28672;this.Xf=4;this.Ta=255;this.B=80286<=this.da?Vb:Ub;this.va=He;this.fj=Ie;this.nj=Je;this.sj=Ke;if(80186<=this.da&&(this.va=He.slice(),this.fj=Ie.slice(),this.nj=Je.slice(),this.Ta=31,this.va[15]=Le,this.va[96]=Me,this.va[97]=Ne,this.va[98]=Oe,this.va[99]=Le,this.va[100]=Le,this.va[101]= -Le,this.va[102]=Le,this.va[103]=Le,this.va[104]=Pe,this.va[105]=Qe,this.va[106]=Re,this.va[107]=Se,this.va[108]=Te,this.va[109]=Ue,this.va[110]=Ve,this.va[111]=We,this.va[192]=Xe,this.va[193]=Ye,this.va[200]=Ze,this.va[201]=$e,this.va[241]=af,this.fj[7]=bf,this.nj[7]=bf,80286<=this.da)){this.Vi=2;this.Rd|=28672;this.Xf=0;this.va[15]=cf;this.Pd=df.slice();for(b=0;b=this.xe&&(this.Pd[166]=pf,this.Pd[167]=qf)}}this.$f=[];this.ag=[];this.cg=0;Gd(this);this.ba.complete=this.ba.oj=!1;this.yj=0;this.sc=this.aa=[];this.kb=this.Rg=this.Db=this.Yf=this.ff=this.gf=this.ed=0;rf(this)}ca(Ge,Dd);function xf(a,b,c,d){b=(d?a.sc:a.aa)[b>>>a.kb];c?--b.je||ud(b):--b.ie||td(b);d&&zc(a)} -function yf(a){var b;if(a.aa===a.sc){a.aa=Array(a.Yf);a.bg=new x(null,0,0,hd,null,a);tc(a.bg,a.ca);for(b=0;b>>20,f=a.sc[(a.Wc+e&a.gf)>>>a.kb],g=f.Nd(e);if(!(g&1))return d||Af.call(a,b,!1,c),a.hf;if(!(g&4)&&3==a.Ma)return d||Af.call(a,b,!0,c),a.hf;var h=(b&4190208)>>>10,g=a.sc[((g&-4096)+h&a.gf)>>>a.kb],k=g.Nd(h);if(!(k&1))return d||Af.call(a,b,!1,c),a.hf;if(!(k&4)&&3==a.Ma)return d||Af.call(a,b,!0,c),a.hf;c=a.sc[((k&-4096)+(b&4095)&a.gf)>>>a.kb];if(d)return c;d=b>>>a.kb;k=a.aa[d];b&=-4096;var m;0>2;b.pb=g;b.B=h>>2;Tb&&Kc&&c.Y&&!c.controller&&!c.ie&&!c.je?(b.Pa=c.Pa,b.Sd=c.Sd,b.Y=c.Y,Fc(b,Cd)):(b.F=c?Ad(32):0,b.J=c?Ad(96):0,Fc(b,kd));tc(b,a.ca,k);a.aa[d]=b;a.Zf.push(d);return b}function Bf(a){a.aa!==a.sc&&(a.aa=a.sc,a.bg=null,a.Zf=null,a.hf=null)}l=Ge.prototype;l.reset=function(){this.ba.jb&&this.Kb();rf(this);Gd(this);this.ba.error=!1}; -function Cf(a,b){var c;switch(b){case 0:c=a.D;break;case 1:c=a.I;break;case 2:c=a.L;break;case 3:c=a.G;break;case 4:c=z(a);break;case 5:c=a.M;break;case 6:c=a.K;break;case 7:c=a.J}return c}function Df(a,b,c){switch(b){case 0:a.D=c;break;case 1:a.I=c;break;case 2:a.L=c;break;case 3:a.G=c;break;case 4:ne(a,c);break;case 5:a.M=c;break;case 6:a.K=c;break;case 7:a.J=c}} -function rf(a){a.D=0;a.G=0;a.I=0;a.L=0;a.Ac=0;a.M=0;a.K=0;a.J=0;a.vc=!1;a.Ba=a.Za=0;a.hn=[0,0];a.jn=[0,0];a.xa=0;a.xj=0;a.ga=0;a.qa=65520;a.Pb=0;a.cd=1023;a.P=a.lc=0;a.Be=a.kf=a.Ae=a.Ce=0;a.Uc=-1;a.pd=a.Vc=-1;a.Ed=a.sa=-1;a.Z=new ae(a,ke,"CS");a.Da=new ae(a,we,"DS");a.oa=new ae(a,we,"ES");a.X=new ae(a,ge,"SS");ne(a,0);me(a,0);if(80386<=a.da){switch(a.xe){case 80562:case 80563:a.L=771;break;case 80578:a.L=772;break;case 80594:a.L=773;break;case 80595:case 80596:a.L=776}a.qa=16;a.Sg=0;a.Fd=0;a.Wc=0; -a.Qb=[0,0,0,0,null,null,0,0];a.fg=[null,null,null,null,null,null,0,0];a.Ga=new ae(a,we,"FS");a.Ia=new ae(a,we,"GS");Bf(a)}a.Ug=new ae(a,0,"NULL");a.Ea=a.Da;a.Rb=a.X;a.N=a.ha=0;a.C=a.F=-1;a.fb=a.Ug;a.Ya=0;if(80286>a.da)Ee(a,0,65535);else{a.Ib=0;a.Pc=65535;a.Eb=new ae(a,5,"LDT",!0);a.ka=new ae(a,ie,"TSS",!0);a.xb=new ae(a,fe,"VER",!0);Ee(a,65520,61440);var b,c=A(a);b=a.Z;var d=-65536;80386>b.gc.da&&(d&=16777215);b=b.ua=d;a.ea=b+c|0;a.Tg=(b>>>0)+(a.Z.Ka>>>0)+1}De(a,0);pe(a)} -function Ef(a){2==a.Jc?(a.Sb=a.ja,a.kc=Ff,a.tc=Gf,a.md=Hf,2==a.V?(a.la=If,a.za=Jf,a.lb=Kf):(a.la=Lf,a.za=Mf,a.lb=Nf)):(a.Sb=a.ia,a.kc=Of,a.tc=Pf,a.md=Qf,2==a.V?(a.la=Rf,a.za=Sf,a.lb=Tf):(a.la=Uf,a.za=Vf,a.lb=Wf))}function qe(a,b){a.V!=b&&(a.ha|=1024,a.V=b,a.R=2==b?65535:-1,Xf(a))}function Xf(a){2==a.V?(a.Fb=32768,a.mb=a.ja,a.yb=a.gb,2==a.Jc?(a.la=If,a.za=Jf,a.lb=Kf):(a.la=Rf,a.za=Sf,a.lb=Tf)):(a.Fb=-2147483648,a.mb=a.ia,a.yb=a.ab,2==a.Jc?(a.la=Lf,a.za=Mf,a.lb=Nf):(a.la=Uf,a.za=Vf,a.lb=Wf))} -function Yf(a){a.Jc=a.Z.Jc;a.wa=a.Z.wa;Ef(a);a.V=a.Z.V;a.R=a.Z.R;Xf(a);a.ha&=-3073}l.zj=function(){var a=this.D+this.G+this.I+this.L+z(this)+this.M+this.K+this.J|0;return a=a+A(this)+this.Z.U+this.Da.U+this.X.U+this.oa.U+xe(this)|0};function Zf(a,b,c){void 0===a.$f[b]&&(a.$f[b]=[]);a.$f[b].push(c)}function $f(a,b,c){c&&(null==a.ag[b]&&a.cg++,a.ag[b]=c)}function ag(a,b){var c=a.ag[b];null!=c&&(c(--a.cg),delete a.ag[b])} -function bg(a,b){for(var c=a.Qb[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Qb[e],g=g&~(d>>2&3);b?a.aa[g>>>a.kb].rd(g&a.Db,f,a):(g=a.aa[g>>>a.kb],f?--g.je||ud(g):--g.ie||td(g))}c>>=2;d>>=4}}function xd(a,b,c,d){if(!(a.N&8192)&&a.Qb[7]&255){c--;var e=a.Qb[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Qb[g]&&b<=a.Qb[g]+h){a.Qb[6]|=1<>=2;f>>=4}}} -function pe(a,b,c){void 0===b&&(b=!!(a.qa&1));void 0===c&&(c=!!(a.P&131072));a.sj=b&&!c?cg:Ke;be(a.Z,!1,b,c);be(a.Da,!1,b,c);be(a.X,!1,b,c);be(a.oa,!1,b,c);80386<=a.da&&(be(a.Ga,!1,b,c),be(a.Ia,!1,b,c));Yf(a)} -l.save=function(a){var b=new dg(this);b.set(0,[this.D,this.G,this.I,this.L,z(this),this.M,this.K,this.J]);var c=A(this),d=this.Z.save(),e=this.Da.save(),f=this.X.save(),g=this.oa.save(),h;null!=this.Ib?(h=[this.qa,this.Ib,this.Pc,this.Pb,this.cd,this.Eb.save(),this.ka.save(),this.lc],80386<=this.da&&(h.push(this.Sg),h.push(this.Fd),h.push(this.Wc),h.push(this.Qb),h.push(this.fg))):h=null;c=[c,d,e,f,g,h,xe(this)];80386<=this.da&&(c.push(this.Ga.save()),c.push(this.Ia.save()));b.set(1,c);b.set(2,[this.Ea.Zb, -this.Rb.Zb,this.N,this.ha,this.Ya,this.C,this.F]);b.set(3,[0,this.Qd,this.T.Kd,a]);b.set(4,Rc(this.ma,!!(this.qa&-2147483648)));return b.data()}; -l.restore=function(a){var b=a[0];this.D=b[0];this.G=b[1];this.I=b[2];this.L=b[3];var c=b[4];this.M=b[5];this.K=b[6];this.J=b[7];b=a[1];this.Z.restore(b[1]);this.Da.restore(b[2]);this.X.restore(b[3]);this.oa.restore(b[4]);var d=b[5];d&&d.length&&(this.qa=d[0],this.Ib=d[1],this.Pc=d[2],this.Pb=d[3],this.cd=d[4],this.Eb.restore(d[5]),this.ka.restore(d[6]),this.lc=d[7],80386<=this.da&&(this.Sg=d[8],this.Fd=d[9],this.Wc=d[10],this.Qb=d[11],this.fg=d[12]),pe(this));De(this,b[6]);var d=!1,e;a:{e=this.ma; -var f=a[4],g;for(g=0;g>>0)+(a.Z.Ka>>>0)+1;a.Ma=a.Z.Ab;Yf(a)}function Ee(a,b,c,d){var e=a.Z;e.Kf=b;e.C=d;b=e.load(c);return-1!==b?(gg(a,b+(a.Z.Kf&a.Z.R)),a.Z.Re):null} -function hg(a,b){b=(a.ea>>>0)+b;b>a.Tg&&(8088>=a.da||a.Z.Ka==a.Z.wa?b=a.Z.ua+(b-a.Tg&a.R):y.call(a,13,0));return b|0}function ig(a){a.ea=a.Ed}function z(a){return a.Ac&~a.X.wa|a.Aa-a.X.ua}function ne(a,b){a.Ac=b;a.Aa=a.X.ua+(b&a.X.wa)|0}function jg(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&kg(a),g&2&&lg(a),g&4&&mg(a),g&8&&ng(a),g&16&&og(a),g&32&&pg(a))}f?(a.Be=d,a.Ae=b):(a.Be=b,a.Ae=d);a.kf=c;a.Ce=d;a.resultType=e} -function qg(a,b,c,d,e){a.resultType=c|26;a.Ce=b;d?rg(a):sg(a);e?tg(a):ug(a);return b}function vg(a,b,c,d){c&d?rg(a):sg(a);(b^c)&d?tg(a):ug(a)}function wg(a){return kg(a)?1:0}function kg(a){a.resultType&1&&(a.P&=-2,(a.Be^(a.Be^a.kf)&(a.kf^a.Ae))&a.resultType&-2147450752&&(a.P|=1),a.resultType&=-2);return a.P&1}function lg(a){a.resultType&2&&(a.P&=-5,38505>>((a.Ce^a.Ce>>4)&15)&1&&(a.P|=4),a.resultType&=-3);return a.P&4} -function mg(a){a.resultType&4&&(a.P&=-17,(a.Ae^a.Be^a.kf)&16&&(a.P|=16),a.resultType&=-5);return a.P&16}function ng(a){a.resultType&8&&(a.P&=-65,a.Ce&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.P|=64),a.resultType&=-9);return a.P&64}function og(a){a.resultType&16&&(a.P&=-129,a.Ce&a.resultType&-2147450752&&(a.P|=128),a.resultType&=-17);return a.P&128} -function pg(a){a.resultType&32&&(a.P&=-2049,(a.Be^a.Ae)&(a.kf^a.Ae)&a.resultType&-2147450752&&(a.P|=2048),a.resultType&=-33);return a.P&2048}function sg(a){a.resultType&=-2;a.P&=-2}function xg(a){a.resultType&=-5;a.P&=-17}function yg(a){a.resultType&=-9;a.P&=-65}function ug(a){a.resultType&=-33;a.P&=-2049}function rg(a){a.resultType&=-2;a.P|=1}function zg(a){a.resultType&=-5;a.P|=16}function Cg(a){a.resultType&=-9;a.P|=64}function tg(a){a.resultType&=-33;a.P|=2048} -function xe(a){return a.P&-2262|kg(a)|lg(a)|mg(a)|ng(a)|og(a)|pg(a)}function Dg(a,b){b|=a.qa&1|65520;a.qa=a.qa&-65536|b&65535;a.qa&1&&pe(a,!0)}function De(a,b,c){a.qa&1||(b&=~a.wi);void 0===c&&(c=a.Ma);c?b=b&-12289|a.P&12288:a.lc=(b&12288)>>12;c>a.lc&&(b=b&-513|a.P&512);a.resultType=128;a.P=a.P&~(a.Rd|2261)|b&(a.Rd|2261)|a.Vi;a.P&256&&(a.Ya|=2,a.N|=4)} -function Eg(a,b,c,d){var e=0;if(a.qa&1&&(a.Ma>a.lc||a.P&131072)&&a.ka.Wi)for(var f=a.ka.Wi+(b>>>3),e=(1<>>=8,f++;return e?(t(a,256)&&Rb(a,"checkIOPM("+ta(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),y.call(a,13,0),!1):!0} -l.Cb=function(a,b,c){switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.na[b]=c;this.yj++;a=!0;break;default:a=Dd.prototype.Cb.call(this,a,b,c)}return a}; -function Fg(a,b,c,d){var e=(d?a.sc:a.aa)[(b&a.ed)>>>a.kb];e&&e.type==hd&&(e=zd(a,b,!1,!0));if(e){var f=b&a.Db;if(!c||1==c)return e.$d(f,b);if(2==c)return f>>this.kb].Cc(a&this.Db,a)}; -l.ja=function(a){var b=a&this.Db,c=(a&this.ed)>>>this.kb;this.A-=this.B.Dg;if(b>>this.kb;if(b>>this.kb].Ec(a&this.Db,b&255,a)}; -l.gb=function(a,b){var c=a&this.Db,d=(a&this.ed)>>>this.kb;this.A-=this.B.Dg;c>8&255,a+1))};l.ab=function(a,b){var c=a&this.Db,d=(a&this.ed)>>>this.kb;this.A-=this.B.Dg;if(c>>=8}}; -function Gg(a,b,c){a.fb=b;a.tb=c&a.wa;a.C=b.ac(a.tb,1);return a.N&1?0:a.Ja(a.C)}function D(a,b){return Gg(a,a.Ea,b)}function Hg(a,b){return Gg(a,a.Rb,b)}function Ig(a,b,c){a.fb=b;a.tb=c&a.wa;a.C=b.ac(a.tb,a.V);return a.N&1?0:a.mb(a.C)}function E(a,b){a.fb=a.Ea;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,2);return a.N&1?0:a.ja(a.C)}function Jg(a,b){a.fb=a.Rb;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,2);return a.N&1?0:a.ja(a.C)}function G(a,b){a.fb=a.Ea;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,4);return a.N&1?0:a.ia(a.C)} -function Kg(a,b){a.fb=a.Rb;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,4);return a.N&1?0:a.ia(a.C)}function Lg(a,b){a.N&2||a.fc(a.fb.bc(a.tb,1),b)}function Mg(a,b){a.N&2||a.gb(a.fb.bc(a.tb,2),b)}function Ng(a,b){a.N&2||a.ab(a.fb.bc(a.tb,4),b)}function re(a,b,c){return a.mb(b.ac(c,a.V))}l.ra=function(){var a=hg(this,1),b=this.Ja(this.ea);this.ea=a;return b};function Og(a){var b=hg(a,2),c=a.ja(a.ea);a.ea=b;return c}function J(a){var b=hg(a,a.Jc),c=a.Sb(a.ea);a.ea=b;return c} -l.Fa=function(){var a=hg(this,this.V),b=this.mb(this.ea);this.ea=a;return b};l.S=function(){var a=hg(this,1),b=this.Ja(this.ea)<<24>>24;this.ea=a;return b};function le(a){var b=a.mb(a.Aa);a.Aa=a.Aa+a.V|0;var c=a.eg-a.Aa|0;0>c&&0<=(a.eg^a.Aa)&&(8088>=a.da||!a.X.Oc&&a.X.Ka==a.X.wa||a.X.Oc&&!a.X.Ka?ne(a,a.Aa-a.X.ua&a.X.wa):-1>c&&y.call(a,12,0));return b} -function se(a,b,c,d){c=a.Aa-c|0;0>(c-a.jf|0)&&0<=(a.jf^c)&&(8088>=a.da||!a.X.Oc&&a.X.Ka==a.X.wa||a.X.Oc&&!a.X.Ka?(ne(a,c-a.X.ua&a.X.wa),c=a.Aa):y.call(a,12,0));switch(d){case 1:a.fc(c,b);break;case 2:a.gb(c,b);break;case 4:a.ab(c,b)}a.Aa=c}function ve(a,b){var c=a.Aa-a.V|0;0>(c-a.jf|0)&&0<=(a.jf^c)&&(8088>=a.da||!a.X.Oc&&a.X.Ka==a.X.wa||a.X.Oc&&!a.X.Ka?(ne(a,c-a.X.ua&a.X.wa),c=a.Aa):y.call(a,12,0));a.yb(c,b);a.Aa=c} -function Pg(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.da)2this.da?0:1,e=0;2>e;e++){switch(d){case 0:if(this.Ya&1&&this.P&512){var f=Rg(this.W);if(-1<=f&&(this.Ya&=-2,0<=f)){this.Ya&=-5; -Sg.call(this,f);d=!0;break a}}break;case 1:if(this.Ya&2){this.Ya&=-3;80386<=this.da&&(this.Qb[6]|=16384);Sg.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.O("interrupt dispatched");this.N=0;break}if(this.Ya&4){this.N=this.A=0;break}}if(b){if(Tg(this.ca,this.ea,c)){this.Kb();break}c=1}this.N=0;this.va[this.ra()].call(this)}while(0>11;kh(this);lh(this,a[b++]);for(c=0;c=mh&&nh(a,oh))}function kh(a){a.fa&=-129;a.fa&~a.Yb&63&&(a.fa|=128);if(a.fa&128&&!(a.Yb&128))return a=a.W,a.da>=mh?ph(a,oh):a.ea&qh||Sg.call(a.H,2),!0;a=a.W;a.da>=mh&&nh(a,oh);return!1}function rh(a,b){80387<=a.da||(b&=-65);a.fa|=b;return kh(a)} -function ih(a){return a.fa|a.B<<11}function sh(a,b){return isFinite(b)?!0:!rh(a,Infinity===b?8:16)}function th(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,sh(a,d)||(d=null));return d}function uh(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,sh(a,d)||(d=null));return d}function vh(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,sh(a,d)||(d=null));return d}function wh(a,b,c){var d=null;null==b||null==c||!c&&rh(a,2)||(d=b/c,sh(a,d)||(d=null));return d} -function xh(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:b||(d=16384));a.fa=a.fa&-18177|d;return!0}return!1}function yh(a,b,c){if(null==b)return null;var d=a.Yb&3072;d?d=1024==d||3072==d&&0=c){if(rh(a,1))return null;d=-c}else if(d<-c){if(rh(a,1))return null;d=-c}a.G[0]=d|0;2147483648d&&(a.G[1]=-1))}return d} -function zh(a,b){var c=3;a.C&1<=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function Ah(a){var b=a.B+0&7;return a.C&1<>16}function Fh(a){return a.H.ia(a.H.C)}function Gh(a){a.ha[0]=a.H.ia(a.H.C);return a.Z[0]}function Hh(a){a.G[0]=a.H.ia(a.H.C);a.G[1]=a.H.ia(a.H.C+4);return a.K[0]} -function Ih(a){a.D[0]=a.H.ia(a.H.C);a.D[1]=a.H.ia(a.H.C+4);a.D[2]=a.H.ja(a.H.C+8);return a.D}l.ri=function(){this.H.ab(this.H.C,this.G[0])};l.hl=function(){this.H.ab(this.H.C,this.G[0]);this.H.ab(this.H.C+4,this.G[1])};function Jh(a){a.H.ab(a.H.C,a.D[0]);a.H.ab(a.H.C+4,a.D[1]);a.H.gb(a.H.C+8,a.D[2])}function Kh(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767;b=b[0]>>>11|c<<21;c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,b=c=0));a.G[0]=b;a.G[1]=c|(d|e)<<20;return a.K[0]} -function Dh(a,b,c){var d=c>>20&2047,e=2147483648|(c&1048575)<<11|b>>>21;2047==d?d=32767:d?d+=15360:e&=2147483647;a.D[0]=b<<11;a.D[1]=e;a.D[2]=c>>16&32768|d;return a.D}function Lh(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function Mh(a,b){for(var c=0,d=0;b--;)c|=a%10<>11;kh(a);lh(a,d.mb(b+=d.V));!(d.qa&1)||d.P&131072?(a.I=d.mb(b+=d.V),c=d.mb(b+=d.V),a.P=c&2047,a.I|=(c&-4096)<<4,a.M=-1,a.J=d.mb(b+=d.V),a.J|=(d.mb(b+=d.V)&-4096)<<4,a.N=-1):(a.I=d.mb(b+=d.V),c=d.mb(b+=d.V),a.M=c&65535,a.P=c>>16&2047,a.J=d.mb(b+=d.V),a.N=d.mb(b+=d.V)&65535);return b+d.V} -function Qh(a,b){var c=a.H;c.yb(b,a.Yb);c.yb(b+=c.V,ih(a));c.yb(b+=c.V,jh(a));if(!(c.qa&1)||c.P&131072){var d=(a.M<<4)+a.I;c.yb(b+=c.V,d);c.yb(b+=c.V,d>>4&-4096|a.P);d=(a.N<<4)+a.J;c.yb(b+=c.V,d);c.yb(b+=c.V,d>>4&-4096)}else c.yb(b+=c.V,a.I),c.yb(b+=c.V,a.M|a.P<<16),c.yb(b+=c.V,a.J),c.yb(b+=c.V,a.N);return b+c.V}function Rh(){this.fa&=-32896;kh(this)}function Sh(){xh(this,M(this,0),M(this,this.A))}function Th(){xh(this,M(this,0),M(this,this.A))&&Nh(this)}function Uh(){Th.call(this)} -function Vh(){N(this,0,wh(this,M(this,0),Gh(this)))}function Wh(){this.C&=~(1<>20&2047)-1023),this.G[1]=(this.G[1]|1072693248)&-1073741825,Oh(this,this.K[0]))},102:function(){this.B=this.B-1&7;this.fa&=-513},103:function(){this.B= -this.B+1&7;this.fa&=-513},112:function(){N(this,0,M(this,0)%M(this,1))},113:function(){N(this,1,M(this,1)*Math.log(M(this,0)+1)/Math.LN2)&&Nh(this)},114:function(){var a=M(this,0),b=null;if(0<=a||!rh(this,1))b=Math.sqrt(a),sh(this,b)||(b=null);N(this,0,b)},116:function(){N(this,0,yh(this,M(this,0),oi))},117:function(){var a=M(this,0),b=M(this,1);null!=a&&null!=b&&N(this,0,a*Math.pow(2,0>>0);Oh(this,a)},6:function(){var a=yh(this,Nh(this));null!=a&&(this.D[0]=Mh(a,8),this.D[1]=Mh(a/1E8,8),this.D[2]=Mh(a/1E16,2),0>a&&(this.D[2]|=32768),Jh(this))},7:function(){null!=yh(this,M(this,0),oi)&&(this.hl(),Nh(this))},48:function(){Wh.call(this);Nh(this)},49:ii,50:di,51:di,52:gi}},qi=[Rh,Xh,Yh,Zh,$h,ai,ei,bi,fi,gi];eb(function(){for(var a=Bb(document,"pcx86","fpu"),b=0;b>16,c=c<<16>>16,d=d<<16>>16);this.A-=this.B.Oj;(bd)&&y.call(this,5);this.N|=2;return a}function zi(a,b){var c=0;if(b){yg(this);for(var d=1;d&this.R;){if(b&d){a=c;break}d<<=1;c++}}else Cg(this);this.A-=11+3*c;return a}function Ai(a,b){var c=0;if(b){yg(this);for(var d=2==this.V?15:31,e=1<>>=1;c++;d--}}else Cg(this);this.A-=11+3*c;return a} -function Bi(a,b){a&1<<(b&(2==this.V?15:31))?rg(this):sg(this);this.A-=-1===this.C?3:6;this.N|=2;return a}function Ci(a,b){b=1<<(b&(2==this.V?15:31));a&b?rg(this):sg(this);this.A-=-1===this.C?6:8;return a^b}function Di(a,b){b=1<<(b&(2==this.V?15:31));a&b?rg(this):sg(this);this.A-=-1===this.C?6:8;return a&~b}function Ei(a,b){b=1<<(b&(2==this.V?15:31));a&b?rg(this):sg(this);this.A-=-1===this.C?6:8;return a|b} -function Fi(a,b){if(-1===this.C)return Bi.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Ig(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?rg(this):sg(this);this.A-=6;this.N|=2;return a}function Gi(a,b){if(-1===this.C)return Ci.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Ig(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?rg(this):sg(this);this.A-=8;return a^b} -function Hi(a,b){if(-1===this.C)return Di.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Ig(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?rg(this):sg(this);this.A-=8;return a&~b}function Ii(a,b){if(-1===this.C)return Ei.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Ig(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?rg(this):sg(this);this.A-=8;return a|b} -function Ji(a,b){jg(this,a,b,a-b|0,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Eh:this.B.Jb;this.N|=2;return a}function Ki(a,b){jg(this,a,b,a-b|0,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Eh:this.B.Jb;this.N|=2;return a} -function Li(a){if(this.Tc){var b=this.Tc,c=this.xj,d=this.ga,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=pi[c][f]){if(0>qi.indexOf(e)){var f=b.H,g=f.Ed;8087==b.da&&(f.ha&16&&g++,f.ha&32&&g++);b.M=f.Z.U;b.I=g-f.Z.ua;-1!==f.C&&(b.N=f.fb.U,b.J=f.C-f.fb.ua);b.P=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.C?2:8;return a}function Mi(a){if(80186>this.da)return Ni.call(this,a);y.call(this,13,0);return a}function bf(a){y.call(this,6);return a} -function Ni(a){ef.call(this);return a}function Oi(a,b){a=Pi.call(this,this.S(),b);80386>this.da&&(this.A-=12);return a}function Qi(a,b){a=this.Fa();a=2==this.V?Pi.call(this,a,b):Ri.call(this,a,b);80386>this.da&&(this.A-=12);return a}function Si(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);Ti.call(this,a,b);c&&(this.Ba=~this.Ba+1|0,this.Za=~this.Za+(this.Ba?0:1)|0)} -function Pi(a,b){a=(a<<16>>16)*(b<<16>>16)|0;32767a?(rg(this),tg(this)):(sg(this),ug(this));this.A-=-1===this.C?9:12;return a&65535}function Ri(a,b){Si.call(this,a,b);this.Za!=this.Ba>>31?(rg(this),tg(this)):(sg(this),ug(this));this.A-=-1===this.C?9:12;return this.Ba}function Ui(a,b){this.A-=14+(-1===this.C?0:2);yg(this);-1!==this.xb.load(b)&&this.xb.qc>=this.Ma&&this.xb.qc>=(b&3)&&(Cg(this),a=this.xb.nb&-256,2=this.Ma)&&this.xb.qc>=(b&3))return Cg(this),this.xb.Ka;yg(this);return a}function aj(a,b){if(-1===this.C)return ef.call(this),a;me(this,this.ja(this.C+this.V));this.A-=this.B.Ze;return b} -function bj(a,b){this.A-=-1===this.F?-1===this.C?this.B.yk:this.B.xk:this.B.vk;return b}function cj(a,b){switch(this.ga>>3&7){case 4:this.xa=this.D;break;case 5:this.xa=this.I;break;case 6:this.xa=this.L;break;case 7:this.xa=this.G}return b}function mj(a,b){return b} -function nj(a,b){a=this.ga>>3&7;switch(a){case 0:this.xa=this.D;break;case 2:this.xa=this.L;break;case 3:this.xa=this.G;break;default:if(80286==this.da||80386==this.da&&4!=a&&5!=a)y.call(this,6);else switch(a){case 1:this.xa=this.I;break;case 4:this.xa=z(this);break;case 5:this.xa=this.M;break;case 6:this.xa=this.K;break;case 7:this.xa=this.J}}return bj.call(this,0,b)} -function oj(a,b){switch(this.ga>>3&7){case 0:b=this.oa.U;break;case 1:b=this.Z.U;break;case 2:b=this.X.U;break;case 3:b=this.Da.U;break;case 4:if(80386<=this.da){b=this.Ga.U;break}y.call(this,6);b=a;break;case 5:if(80386<=this.da){b=this.Ia.U;break}default:y.call(this,6),b=a}-1!==this.F&&qe(this,2);return bj.call(this,0,b)} -function Ti(a,b){if(a&-65536||b&-65536){var c=b&65535;b>>>=16;var d=a&65535;a>>>=16;var e=c*d,d=(e>>>16)+b*d,f=d>>>16,d=(d&65535)+c*a;this.Ba=d<<16|e&65535;this.Za=f+((d>>>16)+b*a)|0}else this.Ba=a*b|0,this.Za=0}function pj(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Bc;return qg(this,a|b,128)}function qj(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Bc;return qg(this,a|b,this.Fb)&this.R} -function rj(a,b){var c=a-b-wg(this)|0;jg(this,a,b,c,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Bc;return c&255}function sj(a,b){var c=a-b-wg(this)|0;jg(this,a,b,c,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Bc;return c&this.R}function tj(){return pg(this)?1:0}function uj(){return kg(this)?1:0}function vj(){return kg(this)?0:1}function wj(){return ng(this)?1:0}function xj(){return ng(this)?0:1}function yj(){return kg(this)||ng(this)?1:0} -function zj(){return kg(this)||ng(this)?0:1}function Aj(){return og(this)?1:0}function Bj(){return og(this)?0:1}function Cj(){return lg(this)?1:0}function Dj(){return lg(this)?0:1}function Ej(){return!og(this)!=!pg(this)?1:0}function Fj(){return!og(this)!=!pg(this)?0:1}function Gj(){return ng(this)||!og(this)!=!pg(this)?1:0}function Hj(){return ng(this)||!og(this)!=!pg(this)?0:1}function Ij(a,b){return Jj.call(this,a,b,this.ra())}function Kj(a,b){return Lj.call(this,a,b,this.ra())} -function Mj(a,b){return Jj.call(this,a,b,this.I&31)}function Nj(a,b){return Lj.call(this,a,b,this.I&31)}function Oj(a,b){return Pj.call(this,a,b,this.ra())}function Qj(a,b){return Rj.call(this,a,b,this.ra())}function Sj(a,b){return Pj.call(this,a,b,this.I&31)}function Tj(a,b){return Rj.call(this,a,b,this.I&31)}function Uj(a,b){var c=a-b|0;jg(this,a,b,c,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Bc;return c&255} -function Vj(a,b){var c=a-b|0;jg(this,a,b,c,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Bc;return c&this.R}function Wj(a,b){qg(this,a&b,128);this.A-=-1===this.F?-1===this.C?this.B.fi:this.B.Hf:this.B.Hf;this.N|=2;return a}function Xj(a,b){qg(this,a&b,this.Fb);this.A-=-1===this.F?-1===this.C?this.B.fi:this.B.Hf:this.B.Hf;this.N|=2;return a}function Yj(a,b){var c=this.D&this.R,d=(1<<(this.I&31))-1;return a&~(d<>(this.D&this.R)&(1<<(this.I&31))-1&this.R}function ak(a,b){if(-1===this.C){switch(this.ga&7){case 0:this.D=this.D&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.L=this.L&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.D=this.D&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.L=this.L&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}this.A-=this.B.hi}else this.F=this.C,Lg(this,a),this.A-=this.B.gi;return b} -function bk(a,b){if(-1===this.C){switch(this.ga&7){case 0:this.D=this.D&~this.R|a;break;case 1:this.I=this.I&~this.R|a;break;case 2:this.L=this.L&~this.R|a;break;case 3:this.G=this.G&~this.R|a;break;case 4:ne(this,z(this)&~this.R|a);break;case 5:this.M=this.G&~this.R|a;break;case 6:this.K=this.K&~this.R|a;break;case 7:this.J=this.J&~this.R|a}this.A-=this.B.hi}else this.F=this.C,this.N&2||this.yb(this.fb.bc(this.tb,this.V),a),this.A-=this.B.gi;return b} -function ck(a,b){a^=b;qg(this,a,128);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Bc;return a}function dk(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Bc;return qg(this,a^b,this.Fb)&this.R}function ek(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function fk(a){var b=a-1|0;jg(this,a,1,b,this.Fb|62,!0);this.A-=2;return a&~this.R|b&this.R} -function gk(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1,f=this.hn;f[0]=c>>>0;f[1]=0;c=this.jn;c[0]=a>>>0;for(c[1]=b>>>0;0>>=0,a[1]++),e+=e;do 0<=ek(c,f)&&(a=c,b=f,a[0]-=b[0],a[1]-=b[1],0>a[0]&&(a[0]>>>=0,a[1]--),d+=e),a=f,a[0]>>>=1,a[1]&1&&(a[0]=(a[0]|2147483648)>>>0),a[1]>>>=1,e/=2;while(1<=e);this.Ba=d;this.Za=c[0];return!0}function hk(a){var b=a+1|0;jg(this,a,1,b,this.Fb|62);this.A-=2;return a&~this.R|b&this.R} -function ik(a){this.qa=a;pe(this);this.qa&-2147483648?yf(this):Bf(this)}function Fe(a){this.Wc=a;zc(this)}function jk(a){this.N|=1;this.tc.call(this,a);this.A-=-1===this.C?4:5}function Jj(a,b,c){if(c){16>>16-c)&65535;qg(this,a,32768,d&32768)}return a}function Lj(a,b,c){if(c){var d=a<>>32-c;qg(this,a,-2147483648,d&-2147483648)}return a} -function Pj(a,b,c){if(c){16>>c-1;a=(d>>>1|b<<16-c)&65535;qg(this,a,32768,d&1)}return a}function Rj(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;qg(this,a,-2147483648,d&1)}return a}function kk(){this.A-=-1===this.C?2:this.B.Lk;return 1}function lk(){var a=this.I&255;this.A-=(-1===this.C?this.B.Zh:this.B.Yh)+(a<this.Uc?(-1!=this.pd&&(this.pd!==this.Z.U&&(this.Z.Ab=this.pd&3,fg(this,this.pd)),this.pd=-1),this.Ed!==this.ea&&gg(this,this.Ed),-1!=this.Vc&&(this.Vc!==this.X.U&&me(this,this.Vc),this.Vc=-1),-1!==this.sa&&(this.sa!==this.Aa&&ne(this,this.Ac&~this.X.wa|this.sa-this.X.ua),this.sa=-1)):8!=this.Uc?(b=0,a=8):(b=0,a=-1,rf(this),e=d=!1)):gg(this,this.Ed);var f=a,g=b,h=32,k=Fg(this,this.ea);204!=k||this.cd||(d=!1);this.P&131072&&(6== -f&&99==k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.ea&&1048575>=this.ea&&(d=!1);t(this,h|-2147483648)&&(d=!0);if(t(this,h)||d){var m=this.ba.jb,f="Fault "+r(f)+(null!=g?" ("+ta(g)+")":"")+" on opcode "+r(k);d&&m&&(f+=" (blocked)");this.ca?(Rb(this,f,d||h,!0),d&&(d=m,this.ca.Kb())):(this.Ca(f),this.Kb())}if(d&&e)throw-1;if(e)throw this.Uc=a,qk.call(this,a,b,c),this.Ed=this.ea,this.N=1==a?this.N|8192:this.N|4096,a;} -function Af(a,b,c){this.Fd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Ma&&(a|=4);y.call(this,14,a)}function sk(a){var b=a.nb&7680;a.U&65528&&(6144==b||7168==b||7168>b&&a.qc>1),this.Y=new Int32Array(this.I,0,c>>2),Fc(this,Kc?Lc:Nc);else{this.Y=Array(c>>2);for(e=0;e>2),b=0;b>8,c)};l.si=function(a,b,c){this.Dc(a++,b&255,c++);this.Dc(a++,b>>8&255,c++);this.Dc(a++,b>>16&255,c++);this.Dc(a,b>>>24,c)};l.Do=function(a){return this.Y[a>>2]>>>((a&3)<<3)&255}; +l.Po=function(a){var b=a>>2;a=(a&3)<<3;var c=this.Y[b]>>a;return 24>a?c&65535:c&255|(this.Y[b+1]&255)<<8};l.Jo=function(a){var b=a>>2;a=(a&3)<<3;var c=this.Y[b];a&&(c=c>>>a|this.Y[b+1]<<32-a);return c};l.bp=function(a,b){var c=a>>2;a=(a&3)<<3;this.Y[c]=this.Y[c]&~(255<>2;a=(a&3)<<3;24>a?this.Y[c]=this.Y[c]&~(65535<>8);this.Oa=!0}; +l.ip=function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<>>32-a}else this.Y[c]=b;this.Oa=!0};l.Co=function(a,b){this.ca&&null!=this.ya&&wd(this.ca,this.ya+a)||this.C&&xd(this.C,b,1,!1);return this.de(a,b)};l.Oo=function(a,b){this.ca&&null!=this.ya&&wd(this.ca,this.ya+a,2)||this.C&&xd(this.C,b,2,!1);return this.Nf(a,b)};l.Io=function(a,b){this.ca&&null!=this.ya&&wd(this.ca,this.ya+a,4)||this.C&&xd(this.C,b,4,!1);return this.mi(a,b)}; +l.ap=function(a,b,c){this.ca&&null!=this.ya&&yd(this.ca,this.ya+a)||this.C&&xd(this.C,c,1,!0);this.D?this.df(0,b,c):this.cf(a,b,c)};l.np=function(a,b,c){this.ca&&null!=this.ya&&yd(this.ca,this.ya+a,2)||this.C&&xd(this.C,c,2,!0);this.D?this.df(0,b,c):this.ui(a,b,c)};l.hp=function(a,b,c){this.ca&&null!=this.ya&&yd(this.ca,this.ya+a,4)||this.C&&xd(this.C,c,4,!0);this.D?this.df(0,b,c):this.K(a,b,c)};l.Fo=function(a,b){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.F;return this.vd.Bc(a,b)}; +l.Ro=function(a,b){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.F;return this.vd.Mf(a,b)};l.Lo=function(a,b){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.F;return this.vd.Pd(a,b)};l.ep=function(a,b,c){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.J;this.vd.Dc(a,b,c)};l.qp=function(a,b,c){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.J;this.vd.Uf(a,b,c)};l.kp=function(a,b,c){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.J;this.vd.Tf(a,b,c)}; +l.Go=function(a,b){return zd(this.C,b,!1).Bc(a,b)};l.So=function(a,b){return zd(this.C,b,!1).Mf(a,b)};l.Mo=function(a,b){return zd(this.C,b,!1).Pd(a,b)};l.fp=function(a,b,c){zd(this.C,c,!0).Dc(a,b,c)};l.rp=function(a,b,c){zd(this.C,c,!0).Uf(a,b,c)};l.lp=function(a,b,c){zd(this.C,c,!0).Tf(a,b,c)};l.Bo=function(a){return this.Pa[a]};l.Vk=function(a){return this.Pa[a]};l.Eo=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Bc=this.Vk;return this.Pa[a]}; +l.No=function(a){return this.G.getUint16(a,!0)};l.$k=function(a){return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.Wd[a>>1]};l.Qo=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Mf=this.$k;return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.Wd[a>>1]};l.Ho=function(a){return this.G.getInt32(a,!0)};l.Xk=function(a){return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.Y[a>>2]}; +l.Ko=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Pd=this.Xk;return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.Y[a>>2]};l.$o=function(a,b){this.Pa[a]=b;this.Oa=!0};l.il=function(a,b){this.Pa[a]=b;this.Oa=!0};l.cp=function(a,b){this.Pa[a]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Dc=this.il;this.vd.Oa=!0};l.mp=function(a,b){this.G.setUint16(a,b,!0);this.Oa=!0};l.kl=function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.Wd[a>>1]=b;this.Oa=!0}; +l.pp=function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.Wd[a>>1]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Uf=this.kl;this.vd.Oa=!0};l.gp=function(a,b){this.G.setInt32(a,b,!0);this.Oa=!0};l.jl=function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.Y[a>>2]=b;this.Oa=!0}; +l.jp=function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.Y[a>>2]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Tf=this.jl;this.vd.Oa=!0};function Ad(a){Tb&&!Kc&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a} +var gd=0,Jc=2,hd=5,jd=6,Bd=["black","blue","green","cyan"],Ac="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),fd=0,qd=[],Oc=[x.prototype.Do,x.prototype.bp,x.prototype.Po,x.prototype.op,x.prototype.Jo,x.prototype.ip],vd=[x.prototype.Co,x.prototype.ap,x.prototype.Oo,x.prototype.np,x.prototype.Io,x.prototype.hp],kd=[x.prototype.Fo,x.prototype.ep,x.prototype.Ro,x.prototype.qp,x.prototype.Lo,x.prototype.kp],id=[x.prototype.Go,x.prototype.fp,x.prototype.So,x.prototype.rp,x.prototype.Mo,x.prototype.lp]; +if(Tb)var Nc=[x.prototype.Bo,x.prototype.$o,x.prototype.No,x.prototype.mp,x.prototype.Ho,x.prototype.gp],Lc=[x.prototype.Vk,x.prototype.il,x.prototype.$k,x.prototype.kl,x.prototype.Xk,x.prototype.jl],Cd=[x.prototype.Eo,x.prototype.cp,x.prototype.Qo,x.prototype.pp,x.prototype.Ko,x.prototype.jp]; +function Dd(a,b){rb.call(this,"CPU",a,1);b=a.cycles||b;var c=a.multiplier||1;this.T={};this.T.zd=b;this.T.Md=c;this.T.ug=Math.round(this.T.zd/1E4)/100;this.T.te=this.T.ug*this.T.Md;this.ba.jb=!1;this.ba.ri=!1;this.ba.ke=a.autoStart;this.ba.oj=!1;this.ba.Le=!1;this.T.uf=this.T.Ve=0;this.T.wf=a.csStart;this.T.Ue=a.csInterval;this.T.We=a.csStop;this.Ul=this.Vf.bind(this);Ob(this)}ca(Dd,rb);l=Dd.prototype; +l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.ca=d;for(b=0;b=a.T.Ve&&(a.T.Ve+=a.T.Ue,c=!0);0<=a.T.We&&a.T.We<=Kd(a)&&(a.T.Ue=a.T.We=-1,Hd(a),a.Kb(),c=!0);c&&a.O(Kd(a)+" cycles: checksum="+q(a.T.uf))}} +l.Cb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.na[b]=c;a=!0;break;case "run":this.na[b]=c;c.onclick=function(){var a;if(a=d.pa)if(a=d.pa,a.ba.dc)a=!0;else{var b=null,c,h=Db(a.id);for(c=0;ca.T.ug&&(c=Math.round(c/a.T.Md));return c}function Gd(a){a.T.ae=0;a.Hd=a.nd=a.cd=a.A=0;Hd(a);Ld(a,1)} +function Ld(a,b,c){var d=!1;if(void 0!==b){(c||a.ba.jb)&&.8>a.T.ae/a.T.te?b=1:d=!0;a.T.Md=b;b=a.T.ug*a.T.Md;if(a.T.te!=b){a.T.te=b;b=a.T.te.toFixed(2)+"Mhz";var e=a.na.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.pa&&a.pa.od()}Od(a,a.nd);a.nd=0;a.T.be=Ma();a.T.ue=0;Pd(a);return d}function Td(a){a.cd-=a.A;a.A=0} +l.Vf=function(a){if(Qb(this,!0)){if(!this.ba.jb){Ld(this);this.pa&&this.pa.start(this.T.be,Kd(this));this.ba.jb=!0;this.ba.ri=!0;this.W&&this.W.start();var b=this.na.run;b&&(b.textContent="Halt");this.pa&&(Vd(this.pa,!0),a&&this.pa.od(!0))}this.T.wh>=this.T.zd&&Pd(this,!0);this.T.zf=0;this.T.vg=Ma();this.T.ue&&(a=this.T.vg-this.T.ue,a>this.T.Ij&&(this.T.be+=a,this.T.be>this.T.vg&&(this.T.be=this.T.vg)));try{do{var c=this.ba.Le?1:this.T.tn;if(this.W){Wd(this.W);var d=this.W;a=c;var e=d.G[0];if(e.qe){var f= +(Kd(d.H,d.P)-e.jd)/d.Ba|0,g=Xd(d,0)-f;e.mode==Yd&&(g-=f);var h=g*d.Ba|0;e.mode==Yd&&(h>>=1);a>h&&(a=h)}var c=a,k=this.W;a=c;if(k.A&&k.A[Zd]&$d){var m=k.Z-Kd(k.H,k.P);0m&&(a=m)}c=a}try{this.Og(c)}catch(v){if("number"!=typeof v)throw v;}var p=this.cd-this.A;this.nd+=p;this.T.zf+=p;Od(this,0,!0);Jd(this,p);this.T.yf-=p;0>=this.T.yf&&(this.T.yf+=this.T.Kj,this.pa&&ae(this.pa));this.T.xf-=p;0>=this.T.xf&&(this.T.xf+=this.T.Jj,this.pa&&Vd(this.pa));this.T.ve-=p;if(0>=this.T.ve){this.T.ve+=this.T.vh; +break}}while(this.ba.jb)}catch(v){this.Kb();Id(this);this.pa&&this.pa.stop(Ma(),Kd(this));Qb(this,!1);Mb(this,v.stack||v.message);return}c=setTimeout;d=this.Ul;this.T.ue=Ma();e=this.T.Ij;this.T.zf&&(e=Math.round(e*this.T.zf/this.T.vh));e-=this.T.ue-this.T.vg;if(f=this.T.ue-this.T.be)this.T.ae=Math.round(this.nd/(10*f))/100,864E5<=f&&(this.Hd=0,this.W&&Wd(this.W,!0),Ld(this));if(0>e||this.T.aee&&(this.T.be-=e),e=0;this.T.wh+=this.T.zf;this.T.ue+=e;c(d,e)}else Id(this),this.pa&&this.pa.stop(Ma(), +Kd(this))};l.Og=function(){return 0};l.Kb=function(a){Pb(this,!0);Td(this);Od(this,this.nd);this.nd=0;if(this.ba.jb){this.ba.jb=!1;this.W&&this.W.stop();var b=this.na.run;b&&(b.textContent="Run")}this.ba.complete=a};function Id(a,b){a.pa&&(ae(a.pa,b),Vd(a.pa,b))}var Qd=30,Rd=60,Sd=2,Ed=["power","reset"]; +function be(a,b,c,d){this.gc=a;this.ca=a.ca;this.id=b;this.Zb=c||"";this.U=0;this.Ka=65535;this.Pb=this.Ka+1;this.Ab=this.qc=this.ext=this.nb=this.type=this.ua=0;this.Lb=-1;this.V=this.Mc=2;this.R=this.wa=65535;this.G=this.ph;this.D=this.gj;this.F=this.ij;this.A={U:-1,ua:0,Ka:0,nb:0,type:0,ext:0,Lb:-1};1==this.id&&(this.Jf=0,this.C=null,this.Re=!1,this.H=Array(32),this.B=[]);ce(this,!0,d)}function de(a,b){a.B.push(b);return[a.B.length,ee]}l=be.prototype; +l.ph=function(a){this.U=a&65535;return this.ua=this.U<<4};l.tg=function(a,b){var c,d,e=this.gc;a&=65535;a&4?(c=e.Eb.ua,d=c+e.Eb.Ka|0):(c=e.Ib,d=e.Hc);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,fe(this,c,a,b);this.id>>0)+b<=this.Pb?this.ua+a|0:this.lg()};l.Dl=function(a,b){return(a>>>0)+b>this.Pb?this.ua+a|0:this.lg()};l.lg=function(){y.call(this.gc,13,0);return-1};l.hj=function(a,b){return(a>>>0)+b<=this.Pb?this.ua+a|0:this.mg()}; +l.El=function(a,b){return(a>>>0)+b>this.Pb?this.ua+a|0:this.mg()};l.mg=function(){y.call(this.gc,13,0);return-1};function ie(a,b,c,d,e){a.U=b;a.ua=d;a.Ka=e;a.Pb=(e>>>0)+1;a.nb=c;a.type=c&7936;a.ext=c>>16&192;a.Lb=(b&4?a.gc.Eb.ua:a.gc.Ib)+(b&65528)|0;a.id>>0)+1;a.nb=e;a.type=e&7936;a.ext=0;a.Lb=b;a.id>>0)+1,a.nb=a.A.nb,a.type=a.A.type,a.ext=a.A.ext,a.Lb=a.A.Lb,a.A.U=-1,ce(a,!0,!0,!1),a.ua;a.A.U=-1;var f=e.ja(b+0),g=e.ja(b+4),h=g&7936,k=e.ja(b+2)|(g&255)<<16,m=e.ja(b+6),p=c&65528;if(80386<=e.da){var v=f,k=k|(m&65280)<<16,f=f|(m&15)<<16;m&128&&(f=f<<12|4095)}switch(a.id){case le:var u=a.C;a.Re=!1;if(u&&c==ee&&a.B.length){var F=a.B[a.Jf-1];if(F&&!F())return-1}var H=c&3,I=(g&24576)>>13,F=-1,L,P;p||b>= +e.Ib&&b=a.Ab&&(H>a.Ab&&(F=me(e),ne(e,me(e),!0),oe(e,F),a.Re=!0),F=0);else{if(256==h||2304==h)return pe(a,c,u)?a.ua:-1;if(1024==h)F=2,P=0,Hh||2048==(h&2560))return y.call(e,13,c&65532),-1;if(!(g&32768))return y.call(e,11,c&65532),-1}break;case he:if(!p||4096>h||512!=(h&2560))return y.call(e,13,c&65532),-1;if(!(g&32768))return y.call(e,12,c&65532), +-1;break;case je:u=h&-513;if(!p||256!=u&&2304!=u)return y.call(e,13,c&65532),-1;2304==u&&(a.Vi=k+e.ja(k+102)|0,a.xl=k+a.Ka|0);break;case ge:if(!(h&4096)&&768>>0)+1,a.nb=g,a.type=h,a.ext=m,a.Lb=b,ce(a,!0,!0,!1));return k} +function pe(a,b,c){var d=a.gc,e=a.Ab,f=d.ka.U,g=d.ka.ua;if(!c){if(!(d.ka.type&512))return y.call(d,13,b&65532),!1;d.gb(d.ka.Lb+4,d.ka.nb&=-513)}if(-1===d.ka.load(b))return!1;var h=d.ka.ua;if(!1!==c){if(d.ka.type&512)return y.call(d,13,b&65532),!1;d.gb(d.ka.Lb+4,d.ka.nb|=512)}d.ka.type=d.ka.type&-513|d.ka.nb&512;256==d.ka.type||768==d.ka.type?(d.gb(g+14,A(d)),d.gb(g+16,De(d)),d.gb(g+18,d.D),d.gb(g+20,d.I),d.gb(g+22,d.L),d.gb(g+24,d.G),d.gb(g+26,z(d)),d.gb(g+28,d.M),d.gb(g+30,d.K),d.gb(g+32,d.J),d.gb(g+ +34,d.oa.U),d.gb(g+36,d.Z.U),d.gb(g+38,d.X.U),d.gb(g+40,d.Da.U),d.Eb.load(d.ja(h+42)),Ee(d,d.ja(h+16)|(c?16384:0)),d.D=d.ja(h+18),d.I=d.ja(h+20),d.L=d.ja(h+22),d.G=d.ja(h+24),d.M=d.ja(h+28),d.K=d.ja(h+30),d.J=d.ja(h+32),d.oa.load(d.ja(h+34)),d.Da.load(d.ja(h+40)),Fe(d,d.ja(h+14),d.ja(h+36)),b=38,g=26,a.Ab>>0)+1)}; +function ce(a,b,c,d){void 0===c&&(c=!!(a.gc.qa&1));a.Rc=!1;if(c)if(a.load=a.tg,a.Gj=a.nn,a.ac=a.fj,a.bc=a.hj,void 0===d&&(d=!!(a.gc.P&131072)),d)a.load=a.G,a.ac=a.D,a.bc=a.F,a.Ab=a.qc=3,a.V=2,a.R=a.wa=65535,a.Ka=65535,a.Pb=a.Ka+1,a.Mc=a.V,a.Lb=-1,a.Re=!1;else{if(!(a.U&-4))a.ac=a.lg,a.bc=a.mg;else if(a.type&4096){6144==(a.type&6656)&&(a.ac=a.lg);if(a.type&2048||!(a.type&512))a.bc=a.mg;1024==(a.type&3072)&&(a.ac==a.fj&&(a.ac=a.Dl),a.bc==a.hj&&(a.bc=a.El),a.Rc=!0);b&&a.id>13,80386>a.gc.da||!(a.ext&64)?(a.V=2,a.R=65535):(a.V=4,a.R=-1),a.Mc=a.V,a.wa=a.R)}else a.load=a.ph,a.Gj=a.on,a.ac=a.gj,a.bc=a.ij,a.Ab=a.qc=0,a.Lb=-1,a.Re=!1}var le=1,xe=2,he=3,je=4,ge=6,ee=1; +function He(a){var b=+a.model||8088,c;switch(b){default:c=4772727;break;case 80286:c=6E6;break;case 80386:c=16E6}Dd.call(this,a,c);this.da=b;a=a.stepping;this.Sd=b+(a?oa(a,16):0);this.Ui=61442;this.Rd=1792;this.vi=28672;this.Wf=4;this.Ta=255;this.B=80286<=this.da?Vb:Ub;this.va=Ie;this.ej=Je;this.mj=Ke;this.rj=Le;if(80186<=this.da&&(this.va=Ie.slice(),this.ej=Je.slice(),this.mj=Ke.slice(),this.Ta=31,this.va[15]=Me,this.va[96]=Ne,this.va[97]=Oe,this.va[98]=Pe,this.va[99]=Me,this.va[100]=Me,this.va[101]= +Me,this.va[102]=Me,this.va[103]=Me,this.va[104]=Qe,this.va[105]=Re,this.va[106]=Se,this.va[107]=Te,this.va[108]=Ue,this.va[109]=Ve,this.va[110]=We,this.va[111]=Xe,this.va[192]=Ye,this.va[193]=Ze,this.va[200]=$e,this.va[201]=af,this.va[241]=bf,this.ej[7]=cf,this.mj[7]=cf,80286<=this.da)){this.Ui=2;this.Rd|=28672;this.Wf=0;this.va[15]=df;this.Gd=ef.slice();for(b=0;b=this.Sd&&(this.Gd[166]=qf,this.Gd[167]=rf)}}this.Zf=[];this.$f=[];this.bg=0;Gd(this);this.ba.complete=this.ba.nj=!1;this.xj=0;this.sc=this.aa=[];this.kb=this.Qg=this.Db=this.Xf=this.ef=this.ff=this.ed=0;xf(this)}ca(He,Dd);function yf(a,b,c,d){b=(d?a.sc:a.aa)[b>>>a.kb];c?--b.ne||ud(b):--b.me||td(b);d&&zc(a)} +function zf(a){var b;if(a.aa===a.sc){a.aa=Array(a.Xf);a.ag=new x(null,0,0,hd,null,a);tc(a.ag,a.ca);for(b=0;b>>20,f=a.sc[(a.Vc+e&a.ff)>>>a.kb],g=f.Pd(e);if(!(g&1))return d||Bf.call(a,b,!1,c),a.gf;if(!(g&4)&&3==a.Ma)return d||Bf.call(a,b,!0,c),a.gf;var h=(b&4190208)>>>10,g=a.sc[((g&-4096)+h&a.ff)>>>a.kb],k=g.Pd(h);if(!(k&1))return d||Bf.call(a,b,!1,c),a.gf;if(!(k&4)&&3==a.Ma)return d||Bf.call(a,b,!0,c),a.gf;c=a.sc[((k&-4096)+(b&4095)&a.ff)>>>a.kb];if(d)return c;d=b>>>a.kb;k=a.aa[d];b&=-4096;var m;0>2;b.pb=g;b.B=h>>2;Tb&&Kc&&c.Y&&!c.controller&&!c.me&&!c.ne?(b.Pa=c.Pa,b.Wd=c.Wd,b.Y=c.Y,Fc(b,Cd)):(b.F=c?Ad(32):0,b.J=c?Ad(96):0,Fc(b,kd));tc(b,a.ca,k);a.aa[d]=b;a.Yf.push(d);return b}function Cf(a){a.aa!==a.sc&&(a.aa=a.sc,a.ag=null,a.Yf=null,a.gf=null)}l=He.prototype;l.reset=function(){this.ba.jb&&this.Kb();xf(this);Gd(this);this.ba.error=!1}; +function Df(a,b){var c;switch(b){case 0:c=a.D;break;case 1:c=a.I;break;case 2:c=a.L;break;case 3:c=a.G;break;case 4:c=z(a);break;case 5:c=a.M;break;case 6:c=a.K;break;case 7:c=a.J}return c}function Ef(a,b,c){switch(b){case 0:a.D=c;break;case 1:a.I=c;break;case 2:a.L=c;break;case 3:a.G=c;break;case 4:oe(a,c);break;case 5:a.M=c;break;case 6:a.K=c;break;case 7:a.J=c}} +function xf(a){a.D=0;a.G=0;a.I=0;a.L=0;a.zc=0;a.M=0;a.K=0;a.J=0;a.vc=!1;a.Ba=a.Za=0;a.gn=[0,0];a.hn=[0,0];a.xa=0;a.wj=0;a.ga=0;a.qa=65520;a.Nb=0;a.bd=1023;a.P=a.lc=0;a.Ud=a.jf=a.Td=a.Vd=0;a.Kc=-1;a.pd=a.Lc=-1;a.qd=a.sa=-1;a.Z=new be(a,le,"CS");a.Da=new be(a,xe,"DS");a.oa=new be(a,xe,"ES");a.X=new be(a,he,"SS");oe(a,0);ne(a,0);if(80386<=a.da){switch(a.Sd){case 80562:case 80563:a.L=771;break;case 80578:a.L=772;break;case 80594:a.L=773;break;case 80595:case 80596:a.L=776}a.qa=16;a.Rg=0;a.rd=0;a.Vc=0; +a.Ob=[0,0,0,0,null,null,0,0];a.eg=[null,null,null,null,null,null,0,0];a.Ga=new be(a,xe,"FS");a.Ia=new be(a,xe,"GS");Cf(a)}a.Tg=new be(a,0,"NULL");a.Ea=a.Da;a.Rb=a.X;a.N=a.ha=0;a.C=a.F=-1;a.fb=a.Tg;a.Ya=0;if(80286>a.da)Fe(a,0,65535);else{a.Ib=0;a.Hc=65535;a.Eb=new be(a,5,"LDT",!0);a.ka=new be(a,je,"TSS",!0);a.ub=new be(a,ge,"VER",!0);Fe(a,65520,61440);var b,c=A(a);b=a.Z;var d=-65536;80386>b.gc.da&&(d&=16777215);b=b.ua=d;a.ea=b+c|0;a.Sg=(b>>>0)+(a.Z.Ka>>>0)+1}Ee(a,0);qe(a)} +function Ff(a){2==a.Mc?(a.Sb=a.ja,a.kc=Gf,a.tc=Hf,a.md=If,2==a.V?(a.la=Jf,a.za=Kf,a.lb=Lf):(a.la=Mf,a.za=Nf,a.lb=Of)):(a.Sb=a.ia,a.kc=Pf,a.tc=Qf,a.md=Rf,2==a.V?(a.la=Sf,a.za=Tf,a.lb=Uf):(a.la=Vf,a.za=Wf,a.lb=Xf))}function re(a,b){a.V!=b&&(a.ha|=1024,a.V=b,a.R=2==b?65535:-1,Yf(a))}function Yf(a){2==a.V?(a.Fb=32768,a.mb=a.ja,a.yb=a.gb,2==a.Mc?(a.la=Jf,a.za=Kf,a.lb=Lf):(a.la=Sf,a.za=Tf,a.lb=Uf)):(a.Fb=-2147483648,a.mb=a.ia,a.yb=a.ab,2==a.Mc?(a.la=Mf,a.za=Nf,a.lb=Of):(a.la=Vf,a.za=Wf,a.lb=Xf))} +function Zf(a){a.Mc=a.Z.Mc;a.wa=a.Z.wa;Ff(a);a.V=a.Z.V;a.R=a.Z.R;Yf(a);a.ha&=-3073}l.yj=function(){var a=this.D+this.G+this.I+this.L+z(this)+this.M+this.K+this.J|0;return a=a+A(this)+this.Z.U+this.Da.U+this.X.U+this.oa.U+De(this)|0};function $f(a,b,c){void 0===a.Zf[b]&&(a.Zf[b]=[]);a.Zf[b].push(c)}function ag(a,b,c){c&&(null==a.$f[b]&&a.bg++,a.$f[b]=c)}function bg(a,b){var c=a.$f[b];null!=c&&(c(--a.bg),delete a.$f[b])} +function cg(a,b){for(var c=a.Ob[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ob[e],g=g&~(d>>2&3);b?a.aa[g>>>a.kb].td(g&a.Db,f,a):(g=a.aa[g>>>a.kb],f?--g.ne||ud(g):--g.me||td(g))}c>>=2;d>>=4}}function xd(a,b,c,d){if(!(a.N&8192)&&a.Ob[7]&255){c--;var e=a.Ob[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Ob[g]&&b<=a.Ob[g]+h){a.Ob[6]|=1<>=2;f>>=4}}} +function qe(a,b,c){void 0===b&&(b=!!(a.qa&1));void 0===c&&(c=!!(a.P&131072));a.rj=b&&!c?dg:Le;ce(a.Z,!1,b,c);ce(a.Da,!1,b,c);ce(a.X,!1,b,c);ce(a.oa,!1,b,c);80386<=a.da&&(ce(a.Ga,!1,b,c),ce(a.Ia,!1,b,c));Zf(a)} +l.save=function(a){var b=new eg(this);b.set(0,[this.D,this.G,this.I,this.L,z(this),this.M,this.K,this.J]);var c=A(this),d=this.Z.save(),e=this.Da.save(),f=this.X.save(),g=this.oa.save(),h;null!=this.Ib?(h=[this.qa,this.Ib,this.Hc,this.Nb,this.bd,this.Eb.save(),this.ka.save(),this.lc],80386<=this.da&&(h.push(this.Rg),h.push(this.rd),h.push(this.Vc),h.push(this.Ob),h.push(this.eg))):h=null;c=[c,d,e,f,g,h,De(this)];80386<=this.da&&(c.push(this.Ga.save()),c.push(this.Ia.save()));b.set(1,c);b.set(2,[this.Ea.Zb, +this.Rb.Zb,this.N,this.ha,this.Ya,this.C,this.F]);b.set(3,[0,this.Hd,this.T.Md,a]);b.set(4,Rc(this.ma,!!(this.qa&-2147483648)));return b.data()}; +l.restore=function(a){var b=a[0];this.D=b[0];this.G=b[1];this.I=b[2];this.L=b[3];var c=b[4];this.M=b[5];this.K=b[6];this.J=b[7];b=a[1];this.Z.restore(b[1]);this.Da.restore(b[2]);this.X.restore(b[3]);this.oa.restore(b[4]);var d=b[5];d&&d.length&&(this.qa=d[0],this.Ib=d[1],this.Hc=d[2],this.Nb=d[3],this.bd=d[4],this.Eb.restore(d[5]),this.ka.restore(d[6]),this.lc=d[7],80386<=this.da&&(this.Rg=d[8],this.rd=d[9],this.Vc=d[10],this.Ob=d[11],this.eg=d[12]),qe(this));Ee(this,b[6]);var d=!1,e;a:{e=this.ma; +var f=a[4],g;for(g=0;g>>0)+(a.Z.Ka>>>0)+1;a.Ma=a.Z.Ab;Zf(a)}function Fe(a,b,c,d){var e=a.Z;e.Jf=b;e.C=d;b=e.load(c);return-1!==b?(hg(a,b+(a.Z.Jf&a.Z.R)),a.Z.Re):null} +function ig(a,b){b=(a.ea>>>0)+b;b>a.Sg&&(8088>=a.da||a.Z.Ka==a.Z.wa?b=a.Z.ua+(b-a.Sg&a.R):y.call(a,13,0));return b|0}function jg(a){a.ea=a.qd}function z(a){return a.zc&~a.X.wa|a.Aa-a.X.ua}function oe(a,b){a.zc=b;a.Aa=a.X.ua+(b&a.X.wa)|0}function kg(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&lg(a),g&2&&mg(a),g&4&&ng(a),g&8&&og(a),g&16&&pg(a),g&32&&qg(a))}f?(a.Ud=d,a.Td=b):(a.Ud=b,a.Td=d);a.jf=c;a.Vd=d;a.resultType=e} +function rg(a,b,c,d,e){a.resultType=c|26;a.Vd=b;d?sg(a):tg(a);e?ug(a):vg(a);return b}function wg(a,b,c,d){c&d?sg(a):tg(a);(b^c)&d?ug(a):vg(a)}function xg(a){return lg(a)?1:0}function lg(a){a.resultType&1&&(a.P&=-2,(a.Ud^(a.Ud^a.jf)&(a.jf^a.Td))&a.resultType&-2147450752&&(a.P|=1),a.resultType&=-2);return a.P&1}function mg(a){a.resultType&2&&(a.P&=-5,38505>>((a.Vd^a.Vd>>4)&15)&1&&(a.P|=4),a.resultType&=-3);return a.P&4} +function ng(a){a.resultType&4&&(a.P&=-17,(a.Td^a.Ud^a.jf)&16&&(a.P|=16),a.resultType&=-5);return a.P&16}function og(a){a.resultType&8&&(a.P&=-65,a.Vd&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.P|=64),a.resultType&=-9);return a.P&64}function pg(a){a.resultType&16&&(a.P&=-129,a.Vd&a.resultType&-2147450752&&(a.P|=128),a.resultType&=-17);return a.P&128} +function qg(a){a.resultType&32&&(a.P&=-2049,(a.Ud^a.Td)&(a.jf^a.Td)&a.resultType&-2147450752&&(a.P|=2048),a.resultType&=-33);return a.P&2048}function tg(a){a.resultType&=-2;a.P&=-2}function yg(a){a.resultType&=-5;a.P&=-17}function zg(a){a.resultType&=-9;a.P&=-65}function vg(a){a.resultType&=-33;a.P&=-2049}function sg(a){a.resultType&=-2;a.P|=1}function Cg(a){a.resultType&=-5;a.P|=16}function Dg(a){a.resultType&=-9;a.P|=64}function ug(a){a.resultType&=-33;a.P|=2048} +function De(a){return a.P&-2262|lg(a)|mg(a)|ng(a)|og(a)|pg(a)|qg(a)}function Eg(a,b){b|=a.qa&1|65520;a.qa=a.qa&-65536|b&65535;a.qa&1&&qe(a,!0)}function Ee(a,b,c){a.qa&1||(b&=~a.vi);void 0===c&&(c=a.Ma);c?b=b&-12289|a.P&12288:a.lc=(b&12288)>>12;c>a.lc&&(b=b&-513|a.P&512);a.resultType=128;a.P=a.P&~(a.Rd|2261)|b&(a.Rd|2261)|a.Ui;a.P&256&&(a.Ya|=2,a.N|=4)} +function Fg(a,b,c,d){var e=0;if(a.qa&1&&(a.Ma>a.lc||a.P&131072)&&a.ka.Vi)for(var f=a.ka.Vi+(b>>>3),e=(1<>>=8,f++;return e?(t(a,256)&&Rb(a,"checkIOPM("+ta(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),y.call(a,13,0),!1):!0} +l.Cb=function(a,b,c){switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.na[b]=c;this.xj++;a=!0;break;default:a=Dd.prototype.Cb.call(this,a,b,c)}return a}; +function Gg(a,b,c,d){var e=(d?a.sc:a.aa)[(b&a.ed)>>>a.kb];e&&e.type==hd&&(e=zd(a,b,!1,!0));if(e){var f=b&a.Db;if(!c||1==c)return e.de(f,b);if(2==c)return f>>this.kb].Bc(a&this.Db,a)}; +l.ja=function(a){var b=a&this.Db,c=(a&this.ed)>>>this.kb;this.A-=this.B.Cg;if(b>>this.kb;if(b>>this.kb].Dc(a&this.Db,b&255,a)}; +l.gb=function(a,b){var c=a&this.Db,d=(a&this.ed)>>>this.kb;this.A-=this.B.Cg;c>8&255,a+1))};l.ab=function(a,b){var c=a&this.Db,d=(a&this.ed)>>>this.kb;this.A-=this.B.Cg;if(c>>=8}}; +function Hg(a,b,c){a.fb=b;a.tb=c&a.wa;a.C=b.ac(a.tb,1);return a.N&1?0:a.Ja(a.C)}function D(a,b){return Hg(a,a.Ea,b)}function Ig(a,b){return Hg(a,a.Rb,b)}function Jg(a,b,c){a.fb=b;a.tb=c&a.wa;a.C=b.ac(a.tb,a.V);return a.N&1?0:a.mb(a.C)}function E(a,b){a.fb=a.Ea;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,2);return a.N&1?0:a.ja(a.C)}function Kg(a,b){a.fb=a.Rb;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,2);return a.N&1?0:a.ja(a.C)}function G(a,b){a.fb=a.Ea;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,4);return a.N&1?0:a.ia(a.C)} +function Lg(a,b){a.fb=a.Rb;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,4);return a.N&1?0:a.ia(a.C)}function Mg(a,b){a.N&2||a.fc(a.fb.bc(a.tb,1),b)}function Ng(a,b){a.N&2||a.gb(a.fb.bc(a.tb,2),b)}function Og(a,b){a.N&2||a.ab(a.fb.bc(a.tb,4),b)}function se(a,b,c){return a.mb(b.ac(c,a.V))}l.ra=function(){var a=ig(this,1),b=this.Ja(this.ea);this.ea=a;return b};function Pg(a){var b=ig(a,2),c=a.ja(a.ea);a.ea=b;return c}function J(a){var b=ig(a,a.Mc),c=a.Sb(a.ea);a.ea=b;return c} +l.Fa=function(){var a=ig(this,this.V),b=this.mb(this.ea);this.ea=a;return b};l.S=function(){var a=ig(this,1),b=this.Ja(this.ea)<<24>>24;this.ea=a;return b};function me(a){var b=a.mb(a.Aa);a.Aa=a.Aa+a.V|0;var c=a.dg-a.Aa|0;0>c&&0<=(a.dg^a.Aa)&&(8088>=a.da||!a.X.Rc&&a.X.Ka==a.X.wa||a.X.Rc&&!a.X.Ka?oe(a,a.Aa-a.X.ua&a.X.wa):-1>c&&y.call(a,12,0));return b} +function te(a,b,c,d){c=a.Aa-c|0;0>(c-a.hf|0)&&0<=(a.hf^c)&&(8088>=a.da||!a.X.Rc&&a.X.Ka==a.X.wa||a.X.Rc&&!a.X.Ka?(oe(a,c-a.X.ua&a.X.wa),c=a.Aa):y.call(a,12,0));switch(d){case 1:a.fc(c,b);break;case 2:a.gb(c,b);break;case 4:a.ab(c,b)}a.Aa=c}function we(a,b){var c=a.Aa-a.V|0;0>(c-a.hf|0)&&0<=(a.hf^c)&&(8088>=a.da||!a.X.Rc&&a.X.Ka==a.X.wa||a.X.Rc&&!a.X.Ka?(oe(a,c-a.X.ua&a.X.wa),c=a.Aa):y.call(a,12,0));a.yb(c,b);a.Aa=c} +function Qg(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.da)2this.da?0:1,e=0;2>e;e++){switch(d){case 0:if(this.Ya&1&&this.P&512){var f=Sg(this.W);if(-1<=f&&(this.Ya&=-2,0<=f)){this.Ya&=-5; +Tg.call(this,f);d=!0;break a}}break;case 1:if(this.Ya&2){this.Ya&=-3;80386<=this.da&&(this.Ob[6]|=16384);Tg.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.O("interrupt dispatched");this.N=0;break}if(this.Ya&4){this.N=this.A=0;break}}if(b){if(Ug(this.ca,this.ea,c)){this.Kb();break}c=1}this.N=0;this.va[this.ra()].call(this)}while(0>11;lh(this);mh(this,a[b++]);for(c=0;c=nh&&oh(a,ph))}function lh(a){a.fa&=-129;a.fa&~a.Yb&63&&(a.fa|=128);if(a.fa&128&&!(a.Yb&128))return a=a.W,a.da>=nh?qh(a,ph):a.ea&rh||Tg.call(a.H,2),!0;a=a.W;a.da>=nh&&oh(a,ph);return!1}function sh(a,b){80387<=a.da||(b&=-65);a.fa|=b;return lh(a)} +function jh(a){return a.fa|a.B<<11}function th(a,b){return isFinite(b)?!0:!sh(a,Infinity===b?8:16)}function uh(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,th(a,d)||(d=null));return d}function vh(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,th(a,d)||(d=null));return d}function wh(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,th(a,d)||(d=null));return d}function xh(a,b,c){var d=null;null==b||null==c||!c&&sh(a,2)||(d=b/c,th(a,d)||(d=null));return d} +function yh(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:b||(d=16384));a.fa=a.fa&-18177|d;return!0}return!1}function zh(a,b,c){if(null==b)return null;var d=a.Yb&3072;d?d=1024==d||3072==d&&0=c){if(sh(a,1))return null;d=-c}else if(d<-c){if(sh(a,1))return null;d=-c}a.G[0]=d|0;2147483648d&&(a.G[1]=-1))}return d} +function Ah(a,b){var c=3;a.C&1<=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function Bh(a){var b=a.B+0&7;return a.C&1<>16}function Gh(a){return a.H.ia(a.H.C)}function Hh(a){a.ha[0]=a.H.ia(a.H.C);return a.Z[0]}function Ih(a){a.G[0]=a.H.ia(a.H.C);a.G[1]=a.H.ia(a.H.C+4);return a.K[0]} +function Jh(a){a.D[0]=a.H.ia(a.H.C);a.D[1]=a.H.ia(a.H.C+4);a.D[2]=a.H.ja(a.H.C+8);return a.D}l.pi=function(){this.H.ab(this.H.C,this.G[0])};l.gl=function(){this.H.ab(this.H.C,this.G[0]);this.H.ab(this.H.C+4,this.G[1])};function Kh(a){a.H.ab(a.H.C,a.D[0]);a.H.ab(a.H.C+4,a.D[1]);a.H.gb(a.H.C+8,a.D[2])}function Lh(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767;b=b[0]>>>11|c<<21;c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,b=c=0));a.G[0]=b;a.G[1]=c|(d|e)<<20;return a.K[0]} +function Eh(a,b,c){var d=c>>20&2047,e=2147483648|(c&1048575)<<11|b>>>21;2047==d?d=32767:d?d+=15360:e&=2147483647;a.D[0]=b<<11;a.D[1]=e;a.D[2]=c>>16&32768|d;return a.D}function Mh(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function Nh(a,b){for(var c=0,d=0;b--;)c|=a%10<>11;lh(a);mh(a,d.mb(b+=d.V));!(d.qa&1)||d.P&131072?(a.I=d.mb(b+=d.V),c=d.mb(b+=d.V),a.P=c&2047,a.I|=(c&-4096)<<4,a.M=-1,a.J=d.mb(b+=d.V),a.J|=(d.mb(b+=d.V)&-4096)<<4,a.N=-1):(a.I=d.mb(b+=d.V),c=d.mb(b+=d.V),a.M=c&65535,a.P=c>>16&2047,a.J=d.mb(b+=d.V),a.N=d.mb(b+=d.V)&65535);return b+d.V} +function Rh(a,b){var c=a.H;c.yb(b,a.Yb);c.yb(b+=c.V,jh(a));c.yb(b+=c.V,kh(a));if(!(c.qa&1)||c.P&131072){var d=(a.M<<4)+a.I;c.yb(b+=c.V,d);c.yb(b+=c.V,d>>4&-4096|a.P);d=(a.N<<4)+a.J;c.yb(b+=c.V,d);c.yb(b+=c.V,d>>4&-4096)}else c.yb(b+=c.V,a.I),c.yb(b+=c.V,a.M|a.P<<16),c.yb(b+=c.V,a.J),c.yb(b+=c.V,a.N);return b+c.V}function Sh(){this.fa&=-32896;lh(this)}function Th(){yh(this,M(this,0),M(this,this.A))}function Uh(){yh(this,M(this,0),M(this,this.A))&&Oh(this)}function Vh(){Uh.call(this)} +function Wh(){N(this,0,xh(this,M(this,0),Hh(this)))}function Xh(){this.C&=~(1<>20&2047)-1023),this.G[1]=(this.G[1]|1072693248)&-1073741825,Ph(this,this.K[0]))},102:function(){this.B=this.B-1&7;this.fa&=-513},103:function(){this.B= +this.B+1&7;this.fa&=-513},112:function(){N(this,0,M(this,0)%M(this,1))},113:function(){N(this,1,M(this,1)*Math.log(M(this,0)+1)/Math.LN2)&&Oh(this)},114:function(){var a=M(this,0),b=null;if(0<=a||!sh(this,1))b=Math.sqrt(a),th(this,b)||(b=null);N(this,0,b)},116:function(){N(this,0,zh(this,M(this,0),pi))},117:function(){var a=M(this,0),b=M(this,1);null!=a&&null!=b&&N(this,0,a*Math.pow(2,0>>0);Ph(this,a)},6:function(){var a=zh(this,Oh(this));null!=a&&(this.D[0]=Nh(a,8),this.D[1]=Nh(a/1E8,8),this.D[2]=Nh(a/1E16,2),0>a&&(this.D[2]|=32768),Kh(this))},7:function(){null!=zh(this,M(this,0),pi)&&(this.gl(),Oh(this))},48:function(){Xh.call(this);Oh(this)},49:ji,50:ei,51:ei,52:hi}},ri=[Sh,Yh,Zh,$h,ai,bi,fi,ci,gi,hi];eb(function(){for(var a=Bb(document,"pcx86","fpu"),b=0;b>16,c=c<<16>>16,d=d<<16>>16);this.A-=this.B.Nj;(bd)&&y.call(this,5);this.N|=2;return a}function Ai(a,b){var c=0;if(b){zg(this);for(var d=1;d&this.R;){if(b&d){a=c;break}d<<=1;c++}}else Dg(this);this.A-=11+3*c;return a}function Bi(a,b){var c=0;if(b){zg(this);for(var d=2==this.V?15:31,e=1<>>=1;c++;d--}}else Dg(this);this.A-=11+3*c;return a} +function Ci(a,b){a&1<<(b&(2==this.V?15:31))?sg(this):tg(this);this.A-=-1===this.C?3:6;this.N|=2;return a}function Di(a,b){b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=-1===this.C?6:8;return a^b}function Ei(a,b){b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=-1===this.C?6:8;return a&~b}function Fi(a,b){b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=-1===this.C?6:8;return a|b} +function Gi(a,b){if(-1===this.C)return Ci.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Jg(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=6;this.N|=2;return a}function Hi(a,b){if(-1===this.C)return Di.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Jg(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=8;return a^b} +function Ii(a,b){if(-1===this.C)return Ei.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Jg(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=8;return a&~b}function Ji(a,b){if(-1===this.C)return Fi.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Jg(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=8;return a|b} +function Ki(a,b){kg(this,a,b,a-b|0,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Dh:this.B.Jb;this.N|=2;return a}function Li(a,b){kg(this,a,b,a-b|0,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Dh:this.B.Jb;this.N|=2;return a} +function Mi(a){if(this.Ic){var b=this.Ic,c=this.wj,d=this.ga,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=qi[c][f]){if(0>ri.indexOf(e)){var f=b.H,g=f.qd;8087==b.da&&(f.ha&16&&g++,f.ha&32&&g++);b.M=f.Z.U;b.I=g-f.Z.ua;-1!==f.C&&(b.N=f.fb.U,b.J=f.C-f.fb.ua);b.P=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.C?2:8;return a}function Ni(a){if(80186>this.da)return Oi.call(this,a);y.call(this,13,0);return a}function cf(a){y.call(this,6);return a} +function Oi(a){ff.call(this);return a}function Pi(a,b){a=Qi.call(this,this.S(),b);80386>this.da&&(this.A-=12);return a}function Ri(a,b){a=this.Fa();a=2==this.V?Qi.call(this,a,b):Si.call(this,a,b);80386>this.da&&(this.A-=12);return a}function Ti(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);Ui.call(this,a,b);c&&(this.Ba=~this.Ba+1|0,this.Za=~this.Za+(this.Ba?0:1)|0)} +function Qi(a,b){a=(a<<16>>16)*(b<<16>>16)|0;32767a?(sg(this),ug(this)):(tg(this),vg(this));this.A-=-1===this.C?9:12;return a&65535}function Si(a,b){Ti.call(this,a,b);this.Za!=this.Ba>>31?(sg(this),ug(this)):(tg(this),vg(this));this.A-=-1===this.C?9:12;return this.Ba}function Vi(a,b){this.A-=14+(-1===this.C?0:2);zg(this);-1!==this.ub.load(b)&&this.ub.qc>=this.Ma&&this.ub.qc>=(b&3)&&(Dg(this),a=this.ub.nb&-256,2=this.Ma)&&this.ub.qc>=(b&3))return Dg(this),this.ub.Ka;zg(this);return a}function bj(a,b){if(-1===this.C)return ff.call(this),a;ne(this,this.ja(this.C+this.V));this.A-=this.B.Ye;return b} +function cj(a,b){this.A-=-1===this.F?-1===this.C?this.B.xk:this.B.wk:this.B.uk;return b}function mj(a,b){switch(this.ga>>3&7){case 4:this.xa=this.D;break;case 5:this.xa=this.I;break;case 6:this.xa=this.L;break;case 7:this.xa=this.G}return b}function nj(a,b){return b} +function oj(a,b){a=this.ga>>3&7;switch(a){case 0:this.xa=this.D;break;case 2:this.xa=this.L;break;case 3:this.xa=this.G;break;default:if(80286==this.da||80386==this.da&&4!=a&&5!=a)y.call(this,6);else switch(a){case 1:this.xa=this.I;break;case 4:this.xa=z(this);break;case 5:this.xa=this.M;break;case 6:this.xa=this.K;break;case 7:this.xa=this.J}}return cj.call(this,0,b)} +function pj(a,b){switch(this.ga>>3&7){case 0:b=this.oa.U;break;case 1:b=this.Z.U;break;case 2:b=this.X.U;break;case 3:b=this.Da.U;break;case 4:if(80386<=this.da){b=this.Ga.U;break}y.call(this,6);b=a;break;case 5:if(80386<=this.da){b=this.Ia.U;break}default:y.call(this,6),b=a}-1!==this.F&&re(this,2);return cj.call(this,0,b)} +function Ui(a,b){if(a&-65536||b&-65536){var c=b&65535;b>>>=16;var d=a&65535;a>>>=16;var e=c*d,d=(e>>>16)+b*d,f=d>>>16,d=(d&65535)+c*a;this.Ba=d<<16|e&65535;this.Za=f+((d>>>16)+b*a)|0}else this.Ba=a*b|0,this.Za=0}function qj(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return rg(this,a|b,128)}function rj(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return rg(this,a|b,this.Fb)&this.R} +function sj(a,b){var c=a-b-xg(this)|0;kg(this,a,b,c,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return c&255}function tj(a,b){var c=a-b-xg(this)|0;kg(this,a,b,c,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return c&this.R}function uj(){return qg(this)?1:0}function vj(){return lg(this)?1:0}function wj(){return lg(this)?0:1}function xj(){return og(this)?1:0}function yj(){return og(this)?0:1}function zj(){return lg(this)||og(this)?1:0} +function Aj(){return lg(this)||og(this)?0:1}function Bj(){return pg(this)?1:0}function Cj(){return pg(this)?0:1}function Dj(){return mg(this)?1:0}function Ej(){return mg(this)?0:1}function Fj(){return!pg(this)!=!qg(this)?1:0}function Gj(){return!pg(this)!=!qg(this)?0:1}function Hj(){return og(this)||!pg(this)!=!qg(this)?1:0}function Ij(){return og(this)||!pg(this)!=!qg(this)?0:1}function Jj(a,b){return Kj.call(this,a,b,this.ra())}function Lj(a,b){return Mj.call(this,a,b,this.ra())} +function Nj(a,b){return Kj.call(this,a,b,this.I&31)}function Oj(a,b){return Mj.call(this,a,b,this.I&31)}function Pj(a,b){return Qj.call(this,a,b,this.ra())}function Rj(a,b){return Sj.call(this,a,b,this.ra())}function Tj(a,b){return Qj.call(this,a,b,this.I&31)}function Uj(a,b){return Sj.call(this,a,b,this.I&31)}function Vj(a,b){var c=a-b|0;kg(this,a,b,c,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return c&255} +function Wj(a,b){var c=a-b|0;kg(this,a,b,c,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return c&this.R}function Xj(a,b){rg(this,a&b,128);this.A-=-1===this.F?-1===this.C?this.B.ei:this.B.Gf:this.B.Gf;this.N|=2;return a}function Yj(a,b){rg(this,a&b,this.Fb);this.A-=-1===this.F?-1===this.C?this.B.ei:this.B.Gf:this.B.Gf;this.N|=2;return a}function Zj(a,b){var c=this.D&this.R,d=(1<<(this.I&31))-1;return a&~(d<>(this.D&this.R)&(1<<(this.I&31))-1&this.R}function bk(a,b){if(-1===this.C){switch(this.ga&7){case 0:this.D=this.D&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.L=this.L&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.D=this.D&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.L=this.L&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}this.A-=this.B.gi}else this.F=this.C,Mg(this,a),this.A-=this.B.fi;return b} +function ck(a,b){if(-1===this.C){switch(this.ga&7){case 0:this.D=this.D&~this.R|a;break;case 1:this.I=this.I&~this.R|a;break;case 2:this.L=this.L&~this.R|a;break;case 3:this.G=this.G&~this.R|a;break;case 4:oe(this,z(this)&~this.R|a);break;case 5:this.M=this.G&~this.R|a;break;case 6:this.K=this.K&~this.R|a;break;case 7:this.J=this.J&~this.R|a}this.A-=this.B.gi}else this.F=this.C,this.N&2||this.yb(this.fb.bc(this.tb,this.V),a),this.A-=this.B.fi;return b} +function dk(a,b){a^=b;rg(this,a,128);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return a}function ek(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return rg(this,a^b,this.Fb)&this.R}function fk(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function gk(a){var b=a-1|0;kg(this,a,1,b,this.Fb|62,!0);this.A-=2;return a&~this.R|b&this.R} +function hk(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1,f=this.gn;f[0]=c>>>0;f[1]=0;c=this.hn;c[0]=a>>>0;for(c[1]=b>>>0;0>>=0,a[1]++),e+=e;do 0<=fk(c,f)&&(a=c,b=f,a[0]-=b[0],a[1]-=b[1],0>a[0]&&(a[0]>>>=0,a[1]--),d+=e),a=f,a[0]>>>=1,a[1]&1&&(a[0]=(a[0]|2147483648)>>>0),a[1]>>>=1,e/=2;while(1<=e);this.Ba=d;this.Za=c[0];return!0}function ik(a){var b=a+1|0;kg(this,a,1,b,this.Fb|62);this.A-=2;return a&~this.R|b&this.R} +function jk(a){this.qa=a;qe(this);this.qa&-2147483648?zf(this):Cf(this)}function Ge(a){this.Vc=a;zc(this)}function kk(a){this.N|=1;this.tc.call(this,a);this.A-=-1===this.C?4:5}function Kj(a,b,c){if(c){16>>16-c)&65535;rg(this,a,32768,d&32768)}return a}function Mj(a,b,c){if(c){var d=a<>>32-c;rg(this,a,-2147483648,d&-2147483648)}return a} +function Qj(a,b,c){if(c){16>>c-1;a=(d>>>1|b<<16-c)&65535;rg(this,a,32768,d&1)}return a}function Sj(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;rg(this,a,-2147483648,d&1)}return a}function lk(){this.A-=-1===this.C?2:this.B.Kk;return 1}function mk(){var a=this.I&255;this.A-=(-1===this.C?this.B.Yh:this.B.Xh)+(a<this.Kc?(-1!=this.pd&&(this.pd!==this.Z.U&&(this.Z.Ab=this.pd&3,gg(this,this.pd)),this.pd=-1),this.qd!==this.ea&&hg(this,this.qd),-1!=this.Lc&&(this.Lc!==this.X.U&&ne(this,this.Lc),this.Lc=-1),-1!==this.sa&&(this.sa!==this.Aa&&oe(this,this.zc&~this.X.wa|this.sa-this.X.ua),this.sa=-1)):8!=this.Kc?(b=0,a=8):(b=0,a=-1,xf(this),e=d=!1)):hg(this,this.qd);var f=a,g=b,h=32,k=Gg(this,this.ea);204!=k||this.bd||(d=!1);this.P&131072&&(6== +f&&99==k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.ea&&1048575>=this.ea&&(d=!1);t(this,h|-2147483648)&&(d=!0);if(t(this,h)||d){var m=this.ba.jb,f="Fault "+r(f)+(null!=g?" ("+ta(g)+")":"")+" on opcode "+r(k);d&&m&&(f+=" (blocked)");this.ca?(Rb(this,f,d||h,!0),d&&(d=m,this.ca.Kb())):(this.Ca(f),this.Kb())}if(d&&e)throw-1;if(e)throw this.Kc=a,rk.call(this,a,b,c),this.qd=this.ea,this.N=1==a?this.N|8192:this.N|4096,a;} +function Bf(a,b,c){this.rd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Ma&&(a|=4);y.call(this,14,a)}function tk(a){var b=a.nb&7680;a.U&65528&&(6144==b||7168==b||7168>b&&a.qc>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D&255;break;case 1:b=this.I&255;break;case 2:b=this.L&255;break;case 3:b=this.G&255;break;case 4:b=this.D>>8&255;break;case 5:b=this.I>>8&255;break;case 6:b=this.L>>8&255;break;case 7:b=this.G>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D= this.D&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.L=this.L&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.D=this.D&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.L=this.L&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}} -function Gf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=D(this,this.G+this.K);this.F=this.C;break;case 1:b=D(this,this.G+this.J);this.F=this.C;break;case 2:b=Hg(this,this.M+this.K);this.F=this.C;break;case 3:b=Hg(this,this.M+this.J);this.F=this.C;break;case 4:b=D(this,this.K);this.F=this.C;break;case 5:b=D(this,this.J);this.F=this.C;break;case 6:b=D(this,J(this));this.F=this.C;break;case 7:b=D(this,this.G);this.F=this.C;break;case 64:b=D(this,this.G+this.K+this.S());this.F=this.C;break; -case 65:b=D(this,this.G+this.J+this.S());this.F=this.C;break;case 66:b=Hg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:b=Hg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:b=D(this,this.K+this.S());this.F=this.C;break;case 69:b=D(this,this.J+this.S());this.F=this.C;break;case 70:b=Hg(this,this.M+this.S());this.F=this.C;break;case 71:b=D(this,this.G+this.S());this.F=this.C;break;case 128:b=D(this,this.G+this.K+J(this));this.F=this.C;break;case 129:b=D(this,this.G+this.J+J(this)); -this.F=this.C;break;case 130:b=Hg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:b=Hg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:b=D(this,this.K+J(this));this.F=this.C;break;case 133:b=D(this,this.J+J(this));this.F=this.C;break;case 134:b=Hg(this,this.M+J(this));this.F=this.C;break;case 135:b=D(this,this.G+J(this));this.F=this.C;break;case 192:b=this.D&255;break;case 193:b=this.I&255;break;case 194:b=this.L&255;break;case 195:b=this.G&255;break;case 196:b=this.D>>8&255;break; -case 197:b=this.I>>8&255;break;case 198:b=this.L>>8&255;break;case 199:b=this.G>>8&255;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&255;break;case 1:c=this.I&255;break;case 2:c=this.L&255;break;case 3:c=this.G&255;break;case 4:c=this.D>>8&255;break;case 5:c=this.I>>8&255;break;case 6:c=this.L>>8&255;break;case 7:c=this.G>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Lg(this,a);this.A-=this.B.Rc;break;case 1:case 2:Lg(this,a);this.A-=this.B.Sc;break;case 4:case 5:case 7:Lg(this, -a);this.A-=this.B.wc;break;case 6:Lg(this,a);this.A-=this.B.yd;break;case 64:case 67:case 128:case 131:Lg(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Lg(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Lg(this,a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I= +function Hf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=D(this,this.G+this.K);this.F=this.C;break;case 1:b=D(this,this.G+this.J);this.F=this.C;break;case 2:b=Ig(this,this.M+this.K);this.F=this.C;break;case 3:b=Ig(this,this.M+this.J);this.F=this.C;break;case 4:b=D(this,this.K);this.F=this.C;break;case 5:b=D(this,this.J);this.F=this.C;break;case 6:b=D(this,J(this));this.F=this.C;break;case 7:b=D(this,this.G);this.F=this.C;break;case 64:b=D(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:b=D(this,this.G+this.J+this.S());this.F=this.C;break;case 66:b=Ig(this,this.M+this.K+this.S());this.F=this.C;break;case 67:b=Ig(this,this.M+this.J+this.S());this.F=this.C;break;case 68:b=D(this,this.K+this.S());this.F=this.C;break;case 69:b=D(this,this.J+this.S());this.F=this.C;break;case 70:b=Ig(this,this.M+this.S());this.F=this.C;break;case 71:b=D(this,this.G+this.S());this.F=this.C;break;case 128:b=D(this,this.G+this.K+J(this));this.F=this.C;break;case 129:b=D(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:b=Ig(this,this.M+this.K+J(this));this.F=this.C;break;case 131:b=Ig(this,this.M+this.J+J(this));this.F=this.C;break;case 132:b=D(this,this.K+J(this));this.F=this.C;break;case 133:b=D(this,this.J+J(this));this.F=this.C;break;case 134:b=Ig(this,this.M+J(this));this.F=this.C;break;case 135:b=D(this,this.G+J(this));this.F=this.C;break;case 192:b=this.D&255;break;case 193:b=this.I&255;break;case 194:b=this.L&255;break;case 195:b=this.G&255;break;case 196:b=this.D>>8&255;break; +case 197:b=this.I>>8&255;break;case 198:b=this.L>>8&255;break;case 199:b=this.G>>8&255;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&255;break;case 1:c=this.I&255;break;case 2:c=this.L&255;break;case 3:c=this.G&255;break;case 4:c=this.D>>8&255;break;case 5:c=this.I>>8&255;break;case 6:c=this.L>>8&255;break;case 7:c=this.G>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Mg(this,a);this.A-=this.B.Tc;break;case 1:case 2:Mg(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Mg(this, +a);this.A-=this.B.wc;break;case 6:Mg(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Mg(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Mg(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Mg(this,a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I= this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8}} -function Hf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=D(this,this.G+this.K);this.F=this.C;break;case 1:c=D(this,this.G+this.J);this.F=this.C;break;case 2:c=Hg(this,this.M+this.K);this.F=this.C;break;case 3:c=Hg(this,this.M+this.J);this.F=this.C;break;case 4:c=D(this,this.K);this.F=this.C;break;case 5:c=D(this,this.J);this.F=this.C;break;case 6:c=D(this,J(this));this.F=this.C;break;case 7:c=D(this,this.G);this.F=this.C;break;case 64:c=D(this,this.G+this.K+this.S());this.F=this.C;break; -case 65:c=D(this,this.G+this.J+this.S());this.F=this.C;break;case 66:c=Hg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:c=Hg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:c=D(this,this.K+this.S());this.F=this.C;break;case 69:c=D(this,this.J+this.S());this.F=this.C;break;case 70:c=Hg(this,this.M+this.S());this.F=this.C;break;case 71:c=D(this,this.G+this.S());this.F=this.C;break;case 128:c=D(this,this.G+this.K+J(this));this.F=this.C;break;case 129:c=D(this,this.G+this.J+J(this)); -this.F=this.C;break;case 130:c=Hg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:c=Hg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:c=D(this,this.K+J(this));this.F=this.C;break;case 133:c=D(this,this.J+J(this));this.F=this.C;break;case 134:c=Hg(this,this.M+J(this));this.F=this.C;break;case 135:c=D(this,this.G+J(this));this.F=this.C;break;case 192:c=this.D&255;break;case 193:c=this.I&255;break;case 194:c=this.L&255;break;case 195:c=this.G&255;break;case 196:c=this.D>>8&255;break; -case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Lg(this,a);this.A-=this.B.Rc;break;case 1:case 2:Lg(this,a);this.A-=this.B.Sc;break;case 4:case 5:case 7:Lg(this,a);this.A-=this.B.wc;break;case 6:Lg(this,a);this.A-=this.B.yd;break;case 64:case 67:case 128:case 131:Lg(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Lg(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Lg(this, +function If(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=D(this,this.G+this.K);this.F=this.C;break;case 1:c=D(this,this.G+this.J);this.F=this.C;break;case 2:c=Ig(this,this.M+this.K);this.F=this.C;break;case 3:c=Ig(this,this.M+this.J);this.F=this.C;break;case 4:c=D(this,this.K);this.F=this.C;break;case 5:c=D(this,this.J);this.F=this.C;break;case 6:c=D(this,J(this));this.F=this.C;break;case 7:c=D(this,this.G);this.F=this.C;break;case 64:c=D(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:c=D(this,this.G+this.J+this.S());this.F=this.C;break;case 66:c=Ig(this,this.M+this.K+this.S());this.F=this.C;break;case 67:c=Ig(this,this.M+this.J+this.S());this.F=this.C;break;case 68:c=D(this,this.K+this.S());this.F=this.C;break;case 69:c=D(this,this.J+this.S());this.F=this.C;break;case 70:c=Ig(this,this.M+this.S());this.F=this.C;break;case 71:c=D(this,this.G+this.S());this.F=this.C;break;case 128:c=D(this,this.G+this.K+J(this));this.F=this.C;break;case 129:c=D(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:c=Ig(this,this.M+this.K+J(this));this.F=this.C;break;case 131:c=Ig(this,this.M+this.J+J(this));this.F=this.C;break;case 132:c=D(this,this.K+J(this));this.F=this.C;break;case 133:c=D(this,this.J+J(this));this.F=this.C;break;case 134:c=Ig(this,this.M+J(this));this.F=this.C;break;case 135:c=D(this,this.G+J(this));this.F=this.C;break;case 192:c=this.D&255;break;case 193:c=this.I&255;break;case 194:c=this.L&255;break;case 195:c=this.G&255;break;case 196:c=this.D>>8&255;break; +case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Mg(this,a);this.A-=this.B.Tc;break;case 1:case 2:Mg(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Mg(this,a);this.A-=this.B.wc;break;case 6:Mg(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Mg(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Mg(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Mg(this, a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I=this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8}} -function If(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=E(this,this.G+this.K);this.A-=this.B.Rc;break;case 1:c=E(this,this.G+this.J);this.A-=this.B.Sc;break;case 2:c=Jg(this,this.M+this.K);this.A-=this.B.Sc;break;case 3:c=Jg(this,this.M+this.J);this.A-=this.B.Rc;break;case 4:c=E(this,this.K);this.A-=this.B.wc;break;case 5:c=E(this,this.J);this.A-=this.B.wc;break;case 6:c=E(this,J(this));this.A-=this.B.yd;break;case 7:c=E(this,this.G);this.A-=this.B.wc;break;case 64:c=E(this,this.G+this.K+ -this.S());this.A-=this.B.Tb;break;case 65:c=E(this,this.G+this.J+this.S());this.A-=this.B.Ub;break;case 66:c=Jg(this,this.M+this.K+this.S());this.A-=this.B.Ub;break;case 67:c=Jg(this,this.M+this.J+this.S());this.A-=this.B.Tb;break;case 68:c=E(this,this.K+this.S());this.A-=this.B.Xa;break;case 69:c=E(this,this.J+this.S());this.A-=this.B.Xa;break;case 70:c=Jg(this,this.M+this.S());this.A-=this.B.Xa;break;case 71:c=E(this,this.G+this.S());this.A-=this.B.Xa;break;case 128:c=E(this,this.G+this.K+J(this)); -this.A-=this.B.Tb;break;case 129:c=E(this,this.G+this.J+J(this));this.A-=this.B.Ub;break;case 130:c=Jg(this,this.M+this.K+J(this));this.A-=this.B.Ub;break;case 131:c=Jg(this,this.M+this.J+J(this));this.A-=this.B.Tb;break;case 132:c=E(this,this.K+J(this));this.A-=this.B.Xa;break;case 133:c=E(this,this.J+J(this));this.A-=this.B.Xa;break;case 134:c=Jg(this,this.M+J(this));this.A-=this.B.Xa;break;case 135:c=E(this,this.G+J(this));this.A-=this.B.Xa;break;case 192:c=this.D&65535;break;case 193:c=this.I& +function Jf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=E(this,this.G+this.K);this.A-=this.B.Tc;break;case 1:c=E(this,this.G+this.J);this.A-=this.B.Uc;break;case 2:c=Kg(this,this.M+this.K);this.A-=this.B.Uc;break;case 3:c=Kg(this,this.M+this.J);this.A-=this.B.Tc;break;case 4:c=E(this,this.K);this.A-=this.B.wc;break;case 5:c=E(this,this.J);this.A-=this.B.wc;break;case 6:c=E(this,J(this));this.A-=this.B.Ad;break;case 7:c=E(this,this.G);this.A-=this.B.wc;break;case 64:c=E(this,this.G+this.K+ +this.S());this.A-=this.B.Tb;break;case 65:c=E(this,this.G+this.J+this.S());this.A-=this.B.Ub;break;case 66:c=Kg(this,this.M+this.K+this.S());this.A-=this.B.Ub;break;case 67:c=Kg(this,this.M+this.J+this.S());this.A-=this.B.Tb;break;case 68:c=E(this,this.K+this.S());this.A-=this.B.Xa;break;case 69:c=E(this,this.J+this.S());this.A-=this.B.Xa;break;case 70:c=Kg(this,this.M+this.S());this.A-=this.B.Xa;break;case 71:c=E(this,this.G+this.S());this.A-=this.B.Xa;break;case 128:c=E(this,this.G+this.K+J(this)); +this.A-=this.B.Tb;break;case 129:c=E(this,this.G+this.J+J(this));this.A-=this.B.Ub;break;case 130:c=Kg(this,this.M+this.K+J(this));this.A-=this.B.Ub;break;case 131:c=Kg(this,this.M+this.J+J(this));this.A-=this.B.Tb;break;case 132:c=E(this,this.K+J(this));this.A-=this.B.Xa;break;case 133:c=E(this,this.J+J(this));this.A-=this.B.Xa;break;case 134:c=Kg(this,this.M+J(this));this.A-=this.B.Xa;break;case 135:c=E(this,this.G+J(this));this.A-=this.B.Xa;break;case 192:c=this.D&65535;break;case 193:c=this.I& 65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535;break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D&65535;break;case 1:b=this.I&65535;break;case 2:b=this.L&65535;break;case 3:b=this.G&65535;break;case 4:b=z(this)&65535;break;case 5:b=this.M&65535;break;case 6:b=this.K&65535;break;case 7:b=this.J&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D= -this.D&-65536|a;break;case 1:this.I=this.I&-65536|a;break;case 2:this.L=this.L&-65536|a;break;case 3:this.G=this.G&-65536|a;break;case 4:ne(this,z(this)&-65536|a);break;case 5:this.M=this.M&-65536|a;break;case 6:this.K=this.K&-65536|a;break;case 7:this.J=this.J&-65536|a}} -function Jf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=E(this,this.G+this.K);this.F=this.C;break;case 1:b=E(this,this.G+this.J);this.F=this.C;break;case 2:b=Jg(this,this.M+this.K);this.F=this.C;break;case 3:b=Jg(this,this.M+this.J);this.F=this.C;break;case 4:b=E(this,this.K);this.F=this.C;break;case 5:b=E(this,this.J);this.F=this.C;break;case 6:b=E(this,J(this));this.F=this.C;break;case 7:b=E(this,this.G);this.F=this.C;break;case 64:b=E(this,this.G+this.K+this.S());this.F=this.C;break; -case 65:b=E(this,this.G+this.J+this.S());this.F=this.C;break;case 66:b=Jg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:b=Jg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:b=E(this,this.K+this.S());this.F=this.C;break;case 69:b=E(this,this.J+this.S());this.F=this.C;break;case 70:b=Jg(this,this.M+this.S());this.F=this.C;break;case 71:b=E(this,this.G+this.S());this.F=this.C;break;case 128:b=E(this,this.G+this.K+J(this));this.F=this.C;break;case 129:b=E(this,this.G+this.J+J(this)); -this.F=this.C;break;case 130:b=Jg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:b=Jg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:b=E(this,this.K+J(this));this.F=this.C;break;case 133:b=E(this,this.J+J(this));this.F=this.C;break;case 134:b=Jg(this,this.M+J(this));this.F=this.C;break;case 135:b=E(this,this.G+J(this));this.F=this.C;break;case 192:b=this.D&65535;break;case 193:b=this.I&65535;break;case 194:b=this.L&65535;break;case 195:b=this.G&65535;break;case 196:b=z(this)&65535; -break;case 197:b=this.M&65535;break;case 198:b=this.K&65535;break;case 199:b=this.J&65535;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&65535;break;case 1:c=this.I&65535;break;case 2:c=this.L&65535;break;case 3:c=this.G&65535;break;case 4:c=z(this)&65535;break;case 5:c=this.M&65535;break;case 6:c=this.K&65535;break;case 7:c=this.J&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Mg(this,a);this.A-=this.B.Rc;break;case 1:case 2:Mg(this,a);this.A-=this.B.Sc;break;case 4:case 5:case 7:Mg(this, -a);this.A-=this.B.wc;break;case 6:Mg(this,a);this.A-=this.B.yd;break;case 64:case 67:case 128:case 131:Mg(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Mg(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Mg(this,a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:ne(this,z(this)&-65536|a);break; +this.D&-65536|a;break;case 1:this.I=this.I&-65536|a;break;case 2:this.L=this.L&-65536|a;break;case 3:this.G=this.G&-65536|a;break;case 4:oe(this,z(this)&-65536|a);break;case 5:this.M=this.M&-65536|a;break;case 6:this.K=this.K&-65536|a;break;case 7:this.J=this.J&-65536|a}} +function Kf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=E(this,this.G+this.K);this.F=this.C;break;case 1:b=E(this,this.G+this.J);this.F=this.C;break;case 2:b=Kg(this,this.M+this.K);this.F=this.C;break;case 3:b=Kg(this,this.M+this.J);this.F=this.C;break;case 4:b=E(this,this.K);this.F=this.C;break;case 5:b=E(this,this.J);this.F=this.C;break;case 6:b=E(this,J(this));this.F=this.C;break;case 7:b=E(this,this.G);this.F=this.C;break;case 64:b=E(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:b=E(this,this.G+this.J+this.S());this.F=this.C;break;case 66:b=Kg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:b=Kg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:b=E(this,this.K+this.S());this.F=this.C;break;case 69:b=E(this,this.J+this.S());this.F=this.C;break;case 70:b=Kg(this,this.M+this.S());this.F=this.C;break;case 71:b=E(this,this.G+this.S());this.F=this.C;break;case 128:b=E(this,this.G+this.K+J(this));this.F=this.C;break;case 129:b=E(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:b=Kg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:b=Kg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:b=E(this,this.K+J(this));this.F=this.C;break;case 133:b=E(this,this.J+J(this));this.F=this.C;break;case 134:b=Kg(this,this.M+J(this));this.F=this.C;break;case 135:b=E(this,this.G+J(this));this.F=this.C;break;case 192:b=this.D&65535;break;case 193:b=this.I&65535;break;case 194:b=this.L&65535;break;case 195:b=this.G&65535;break;case 196:b=z(this)&65535; +break;case 197:b=this.M&65535;break;case 198:b=this.K&65535;break;case 199:b=this.J&65535;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&65535;break;case 1:c=this.I&65535;break;case 2:c=this.L&65535;break;case 3:c=this.G&65535;break;case 4:c=z(this)&65535;break;case 5:c=this.M&65535;break;case 6:c=this.K&65535;break;case 7:c=this.J&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Ng(this,a);this.A-=this.B.Tc;break;case 1:case 2:Ng(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Ng(this, +a);this.A-=this.B.wc;break;case 6:Ng(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Ng(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Ng(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ng(this,a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:oe(this,z(this)&-65536|a);break; case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a}} -function Kf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=E(this,this.G+this.K);this.F=this.C;break;case 1:c=E(this,this.G+this.J);this.F=this.C;break;case 2:c=Jg(this,this.M+this.K);this.F=this.C;break;case 3:c=Jg(this,this.M+this.J);this.F=this.C;break;case 4:c=E(this,this.K);this.F=this.C;break;case 5:c=E(this,this.J);this.F=this.C;break;case 6:c=E(this,J(this));this.F=this.C;break;case 7:c=E(this,this.G);this.F=this.C;break;case 64:c=E(this,this.G+this.K+this.S());this.F=this.C;break; -case 65:c=E(this,this.G+this.J+this.S());this.F=this.C;break;case 66:c=Jg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:c=Jg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:c=E(this,this.K+this.S());this.F=this.C;break;case 69:c=E(this,this.J+this.S());this.F=this.C;break;case 70:c=Jg(this,this.M+this.S());this.F=this.C;break;case 71:c=E(this,this.G+this.S());this.F=this.C;break;case 128:c=E(this,this.G+this.K+J(this));this.F=this.C;break;case 129:c=E(this,this.G+this.J+J(this)); -this.F=this.C;break;case 130:c=Jg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:c=Jg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:c=E(this,this.K+J(this));this.F=this.C;break;case 133:c=E(this,this.J+J(this));this.F=this.C;break;case 134:c=Jg(this,this.M+J(this));this.F=this.C;break;case 135:c=E(this,this.G+J(this));this.F=this.C;break;case 192:c=this.D&65535;break;case 193:c=this.I&65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535; -break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Mg(this,a);this.A-=this.B.Rc;break;case 1:case 2:Mg(this,a);this.A-=this.B.Sc;break;case 4:case 5:case 7:Mg(this,a);this.A-=this.B.wc;break;case 6:Mg(this,a);this.A-=this.B.yd;break;case 64:case 67:case 128:case 131:Mg(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Mg(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Mg(this, -a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:ne(this,z(this)&-65536|a);break;case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a}} -function Lf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=G(this,this.G+this.K);this.A-=this.B.Rc;break;case 1:c=G(this,this.G+this.J);this.A-=this.B.Sc;break;case 2:c=Kg(this,this.M+this.K);this.A-=this.B.Sc;break;case 3:c=Kg(this,this.M+this.J);this.A-=this.B.Rc;break;case 4:c=G(this,this.K);this.A-=this.B.wc;break;case 5:c=G(this,this.J);this.A-=this.B.wc;break;case 6:c=G(this,J(this));this.A-=this.B.yd;break;case 7:c=G(this,this.G);this.A-=this.B.wc;break;case 64:c=G(this,this.G+this.K+ -this.S());this.A-=this.B.Tb;break;case 65:c=G(this,this.G+this.J+this.S());this.A-=this.B.Ub;break;case 66:c=Kg(this,this.M+this.K+this.S());this.A-=this.B.Ub;break;case 67:c=Kg(this,this.M+this.J+this.S());this.A-=this.B.Tb;break;case 68:c=G(this,this.K+this.S());this.A-=this.B.Xa;break;case 69:c=G(this,this.J+this.S());this.A-=this.B.Xa;break;case 70:c=Kg(this,this.M+this.S());this.A-=this.B.Xa;break;case 71:c=G(this,this.G+this.S());this.A-=this.B.Xa;break;case 128:c=G(this,this.G+this.K+J(this)); -this.A-=this.B.Tb;break;case 129:c=G(this,this.G+this.J+J(this));this.A-=this.B.Ub;break;case 130:c=Kg(this,this.M+this.K+J(this));this.A-=this.B.Ub;break;case 131:c=Kg(this,this.M+this.J+J(this));this.A-=this.B.Tb;break;case 132:c=G(this,this.K+J(this));this.A-=this.B.Xa;break;case 133:c=G(this,this.J+J(this));this.A-=this.B.Xa;break;case 134:c=Kg(this,this.M+J(this));this.A-=this.B.Xa;break;case 135:c=G(this,this.G+J(this));this.A-=this.B.Xa;break;case 192:c=this.D;break;case 193:c=this.I;break; -case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D;break;case 1:b=this.I;break;case 2:b=this.L;break;case 3:b=this.G;break;case 4:b=z(this);break;case 5:b=this.M;break;case 6:b=this.K;break;case 7:b=this.J;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D=a;break;case 1:this.I=a;break;case 2:this.L=a;break;case 3:this.G=a;break;case 4:ne(this, +function Lf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=E(this,this.G+this.K);this.F=this.C;break;case 1:c=E(this,this.G+this.J);this.F=this.C;break;case 2:c=Kg(this,this.M+this.K);this.F=this.C;break;case 3:c=Kg(this,this.M+this.J);this.F=this.C;break;case 4:c=E(this,this.K);this.F=this.C;break;case 5:c=E(this,this.J);this.F=this.C;break;case 6:c=E(this,J(this));this.F=this.C;break;case 7:c=E(this,this.G);this.F=this.C;break;case 64:c=E(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:c=E(this,this.G+this.J+this.S());this.F=this.C;break;case 66:c=Kg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:c=Kg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:c=E(this,this.K+this.S());this.F=this.C;break;case 69:c=E(this,this.J+this.S());this.F=this.C;break;case 70:c=Kg(this,this.M+this.S());this.F=this.C;break;case 71:c=E(this,this.G+this.S());this.F=this.C;break;case 128:c=E(this,this.G+this.K+J(this));this.F=this.C;break;case 129:c=E(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:c=Kg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:c=Kg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:c=E(this,this.K+J(this));this.F=this.C;break;case 133:c=E(this,this.J+J(this));this.F=this.C;break;case 134:c=Kg(this,this.M+J(this));this.F=this.C;break;case 135:c=E(this,this.G+J(this));this.F=this.C;break;case 192:c=this.D&65535;break;case 193:c=this.I&65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535; +break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Ng(this,a);this.A-=this.B.Tc;break;case 1:case 2:Ng(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Ng(this,a);this.A-=this.B.wc;break;case 6:Ng(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Ng(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Ng(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ng(this, +a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:oe(this,z(this)&-65536|a);break;case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a}} +function Mf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=G(this,this.G+this.K);this.A-=this.B.Tc;break;case 1:c=G(this,this.G+this.J);this.A-=this.B.Uc;break;case 2:c=Lg(this,this.M+this.K);this.A-=this.B.Uc;break;case 3:c=Lg(this,this.M+this.J);this.A-=this.B.Tc;break;case 4:c=G(this,this.K);this.A-=this.B.wc;break;case 5:c=G(this,this.J);this.A-=this.B.wc;break;case 6:c=G(this,J(this));this.A-=this.B.Ad;break;case 7:c=G(this,this.G);this.A-=this.B.wc;break;case 64:c=G(this,this.G+this.K+ +this.S());this.A-=this.B.Tb;break;case 65:c=G(this,this.G+this.J+this.S());this.A-=this.B.Ub;break;case 66:c=Lg(this,this.M+this.K+this.S());this.A-=this.B.Ub;break;case 67:c=Lg(this,this.M+this.J+this.S());this.A-=this.B.Tb;break;case 68:c=G(this,this.K+this.S());this.A-=this.B.Xa;break;case 69:c=G(this,this.J+this.S());this.A-=this.B.Xa;break;case 70:c=Lg(this,this.M+this.S());this.A-=this.B.Xa;break;case 71:c=G(this,this.G+this.S());this.A-=this.B.Xa;break;case 128:c=G(this,this.G+this.K+J(this)); +this.A-=this.B.Tb;break;case 129:c=G(this,this.G+this.J+J(this));this.A-=this.B.Ub;break;case 130:c=Lg(this,this.M+this.K+J(this));this.A-=this.B.Ub;break;case 131:c=Lg(this,this.M+this.J+J(this));this.A-=this.B.Tb;break;case 132:c=G(this,this.K+J(this));this.A-=this.B.Xa;break;case 133:c=G(this,this.J+J(this));this.A-=this.B.Xa;break;case 134:c=Lg(this,this.M+J(this));this.A-=this.B.Xa;break;case 135:c=G(this,this.G+J(this));this.A-=this.B.Xa;break;case 192:c=this.D;break;case 193:c=this.I;break; +case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D;break;case 1:b=this.I;break;case 2:b=this.L;break;case 3:b=this.G;break;case 4:b=z(this);break;case 5:b=this.M;break;case 6:b=this.K;break;case 7:b=this.J;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D=a;break;case 1:this.I=a;break;case 2:this.L=a;break;case 3:this.G=a;break;case 4:oe(this, a);break;case 5:this.M=a;break;case 6:this.K=a;break;case 7:this.J=a}} -function Mf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=G(this,this.G+this.K);this.F=this.C;break;case 1:b=G(this,this.G+this.J);this.F=this.C;break;case 2:b=Kg(this,this.M+this.K);this.F=this.C;break;case 3:b=Kg(this,this.M+this.J);this.F=this.C;break;case 4:b=G(this,this.K);this.F=this.C;break;case 5:b=G(this,this.J);this.F=this.C;break;case 6:b=G(this,J(this));this.F=this.C;break;case 7:b=G(this,this.G);this.F=this.C;break;case 64:b=G(this,this.G+this.K+this.S());this.F=this.C;break; -case 65:b=G(this,this.G+this.J+this.S());this.F=this.C;break;case 66:b=Kg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:b=Kg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:b=G(this,this.K+this.S());this.F=this.C;break;case 69:b=G(this,this.J+this.S());this.F=this.C;break;case 70:b=Kg(this,this.M+this.S());this.F=this.C;break;case 71:b=G(this,this.G+this.S());this.F=this.C;break;case 128:b=G(this,this.G+this.K+J(this));this.F=this.C;break;case 129:b=G(this,this.G+this.J+J(this)); -this.F=this.C;break;case 130:b=Kg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:b=Kg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:b=G(this,this.K+J(this));this.F=this.C;break;case 133:b=G(this,this.J+J(this));this.F=this.C;break;case 134:b=Kg(this,this.M+J(this));this.F=this.C;break;case 135:b=G(this,this.G+J(this));this.F=this.C;break;case 192:b=this.D;break;case 193:b=this.I;break;case 194:b=this.L;break;case 195:b=this.G;break;case 196:b=z(this);break;case 197:b=this.M;break; -case 198:b=this.K;break;case 199:b=this.J;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D;break;case 1:c=this.I;break;case 2:c=this.L;break;case 3:c=this.G;break;case 4:c=z(this);break;case 5:c=this.M;break;case 6:c=this.K;break;case 7:c=this.J;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Ng(this,a);this.A-=this.B.Rc;break;case 1:case 2:Ng(this,a);this.A-=this.B.Sc;break;case 4:case 5:case 7:Ng(this,a);this.A-=this.B.wc;break;case 6:Ng(this,a);this.A-=this.B.yd;break;case 64:case 67:case 128:case 131:Ng(this, -a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Ng(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ng(this,a);this.A-=this.B.Xa;break;case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:ne(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a}} -function Nf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=G(this,this.G+this.K);this.F=this.C;break;case 1:c=G(this,this.G+this.J);this.F=this.C;break;case 2:c=Kg(this,this.M+this.K);this.F=this.C;break;case 3:c=Kg(this,this.M+this.J);this.F=this.C;break;case 4:c=G(this,this.K);this.F=this.C;break;case 5:c=G(this,this.J);this.F=this.C;break;case 6:c=G(this,J(this));this.F=this.C;break;case 7:c=G(this,this.G);this.F=this.C;break;case 64:c=G(this,this.G+this.K+this.S());this.F=this.C;break; -case 65:c=G(this,this.G+this.J+this.S());this.F=this.C;break;case 66:c=Kg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:c=Kg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:c=G(this,this.K+this.S());this.F=this.C;break;case 69:c=G(this,this.J+this.S());this.F=this.C;break;case 70:c=Kg(this,this.M+this.S());this.F=this.C;break;case 71:c=G(this,this.G+this.S());this.F=this.C;break;case 128:c=G(this,this.G+this.K+J(this));this.F=this.C;break;case 129:c=G(this,this.G+this.J+J(this)); -this.F=this.C;break;case 130:c=Kg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:c=Kg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:c=G(this,this.K+J(this));this.F=this.C;break;case 133:c=G(this,this.J+J(this));this.F=this.C;break;case 134:c=Kg(this,this.M+J(this));this.F=this.C;break;case 135:c=G(this,this.G+J(this));this.F=this.C;break;case 192:c=this.D;break;case 193:c=this.I;break;case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break; -case 198:c=this.K;break;case 199:c=this.J}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Ng(this,a);this.A-=this.B.Rc;break;case 1:case 2:Ng(this,a);this.A-=this.B.Sc;break;case 4:case 5:case 7:Ng(this,a);this.A-=this.B.wc;break;case 6:Ng(this,a);this.A-=this.B.yd;break;case 64:case 67:case 128:case 131:Ng(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Ng(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ng(this, -a);this.A-=this.B.Xa;break;case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:ne(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a}} -function Of(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=D(this,this.D);break;case 1:c=D(this,this.I);break;case 2:c=D(this,this.L);break;case 3:c=D(this,this.G);break;case 4:c=D(this,uk.call(this,0));break;case 5:c=D(this,J(this));break;case 6:c=D(this,this.K);break;case 7:c=D(this,this.J);break;case 64:c=D(this,this.D+this.S());break;case 65:c=D(this,this.I+this.S());break;case 66:c=D(this,this.L+this.S());break;case 67:c=D(this,this.G+this.S());break;case 68:c=D(this,uk.call(this,1)+this.S()); -break;case 69:c=Hg(this,this.M+this.S());break;case 70:c=D(this,this.K+this.S());break;case 71:c=D(this,this.J+this.S());break;case 128:c=D(this,this.D+J(this));break;case 129:c=D(this,this.I+J(this));break;case 130:c=D(this,this.L+J(this));break;case 131:c=D(this,this.G+J(this));break;case 132:c=D(this,uk.call(this,2)+J(this));break;case 133:c=Hg(this,this.M+J(this));break;case 134:c=D(this,this.K+J(this));break;case 135:c=D(this,this.J+J(this));break;case 192:c=this.D&255;break;case 193:c=this.I& +function Nf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=G(this,this.G+this.K);this.F=this.C;break;case 1:b=G(this,this.G+this.J);this.F=this.C;break;case 2:b=Lg(this,this.M+this.K);this.F=this.C;break;case 3:b=Lg(this,this.M+this.J);this.F=this.C;break;case 4:b=G(this,this.K);this.F=this.C;break;case 5:b=G(this,this.J);this.F=this.C;break;case 6:b=G(this,J(this));this.F=this.C;break;case 7:b=G(this,this.G);this.F=this.C;break;case 64:b=G(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:b=G(this,this.G+this.J+this.S());this.F=this.C;break;case 66:b=Lg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:b=Lg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:b=G(this,this.K+this.S());this.F=this.C;break;case 69:b=G(this,this.J+this.S());this.F=this.C;break;case 70:b=Lg(this,this.M+this.S());this.F=this.C;break;case 71:b=G(this,this.G+this.S());this.F=this.C;break;case 128:b=G(this,this.G+this.K+J(this));this.F=this.C;break;case 129:b=G(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:b=Lg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:b=Lg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:b=G(this,this.K+J(this));this.F=this.C;break;case 133:b=G(this,this.J+J(this));this.F=this.C;break;case 134:b=Lg(this,this.M+J(this));this.F=this.C;break;case 135:b=G(this,this.G+J(this));this.F=this.C;break;case 192:b=this.D;break;case 193:b=this.I;break;case 194:b=this.L;break;case 195:b=this.G;break;case 196:b=z(this);break;case 197:b=this.M;break; +case 198:b=this.K;break;case 199:b=this.J;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D;break;case 1:c=this.I;break;case 2:c=this.L;break;case 3:c=this.G;break;case 4:c=z(this);break;case 5:c=this.M;break;case 6:c=this.K;break;case 7:c=this.J;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Og(this,a);this.A-=this.B.Tc;break;case 1:case 2:Og(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Og(this,a);this.A-=this.B.wc;break;case 6:Og(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Og(this, +a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Og(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Og(this,a);this.A-=this.B.Xa;break;case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:oe(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a}} +function Of(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=G(this,this.G+this.K);this.F=this.C;break;case 1:c=G(this,this.G+this.J);this.F=this.C;break;case 2:c=Lg(this,this.M+this.K);this.F=this.C;break;case 3:c=Lg(this,this.M+this.J);this.F=this.C;break;case 4:c=G(this,this.K);this.F=this.C;break;case 5:c=G(this,this.J);this.F=this.C;break;case 6:c=G(this,J(this));this.F=this.C;break;case 7:c=G(this,this.G);this.F=this.C;break;case 64:c=G(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:c=G(this,this.G+this.J+this.S());this.F=this.C;break;case 66:c=Lg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:c=Lg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:c=G(this,this.K+this.S());this.F=this.C;break;case 69:c=G(this,this.J+this.S());this.F=this.C;break;case 70:c=Lg(this,this.M+this.S());this.F=this.C;break;case 71:c=G(this,this.G+this.S());this.F=this.C;break;case 128:c=G(this,this.G+this.K+J(this));this.F=this.C;break;case 129:c=G(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:c=Lg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:c=Lg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:c=G(this,this.K+J(this));this.F=this.C;break;case 133:c=G(this,this.J+J(this));this.F=this.C;break;case 134:c=Lg(this,this.M+J(this));this.F=this.C;break;case 135:c=G(this,this.G+J(this));this.F=this.C;break;case 192:c=this.D;break;case 193:c=this.I;break;case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break; +case 198:c=this.K;break;case 199:c=this.J}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Og(this,a);this.A-=this.B.Tc;break;case 1:case 2:Og(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Og(this,a);this.A-=this.B.wc;break;case 6:Og(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Og(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Og(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Og(this, +a);this.A-=this.B.Xa;break;case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:oe(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a}} +function Pf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=D(this,this.D);break;case 1:c=D(this,this.I);break;case 2:c=D(this,this.L);break;case 3:c=D(this,this.G);break;case 4:c=D(this,vk.call(this,0));break;case 5:c=D(this,J(this));break;case 6:c=D(this,this.K);break;case 7:c=D(this,this.J);break;case 64:c=D(this,this.D+this.S());break;case 65:c=D(this,this.I+this.S());break;case 66:c=D(this,this.L+this.S());break;case 67:c=D(this,this.G+this.S());break;case 68:c=D(this,vk.call(this,1)+this.S()); +break;case 69:c=Ig(this,this.M+this.S());break;case 70:c=D(this,this.K+this.S());break;case 71:c=D(this,this.J+this.S());break;case 128:c=D(this,this.D+J(this));break;case 129:c=D(this,this.I+J(this));break;case 130:c=D(this,this.L+J(this));break;case 131:c=D(this,this.G+J(this));break;case 132:c=D(this,vk.call(this,2)+J(this));break;case 133:c=Ig(this,this.M+J(this));break;case 134:c=D(this,this.K+J(this));break;case 135:c=D(this,this.J+J(this));break;case 192:c=this.D&255;break;case 193:c=this.I& 255;break;case 194:c=this.L&255;break;case 195:c=this.G&255;break;case 196:c=this.D>>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D&255;break;case 1:b=this.I&255;break;case 2:b=this.L&255;break;case 3:b=this.G&255;break;case 4:b=this.D>>8&255;break;case 5:b=this.I>>8&255;break;case 6:b=this.L>>8&255;break;case 7:b=this.G>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D= this.D&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.L=this.L&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.D=this.D&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.L=this.L&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}} -function Pf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=D(this,this.D);this.F=this.C;break;case 1:b=D(this,this.I);this.F=this.C;break;case 2:b=D(this,this.L);this.F=this.C;break;case 3:b=D(this,this.G);this.F=this.C;break;case 4:b=D(this,uk.call(this,0));this.F=this.C;break;case 5:b=D(this,J(this));this.F=this.C;break;case 6:b=D(this,this.K);this.F=this.C;break;case 7:b=D(this,this.J);this.F=this.C;break;case 64:b=D(this,this.D+this.S());this.F=this.C;break;case 65:b=D(this,this.I+this.S()); -this.F=this.C;break;case 66:b=D(this,this.L+this.S());this.F=this.C;break;case 67:b=D(this,this.G+this.S());this.F=this.C;break;case 68:b=D(this,uk.call(this,1)+this.S());this.F=this.C;break;case 69:b=Hg(this,this.M+this.S());this.F=this.C;break;case 70:b=D(this,this.K+this.S());this.F=this.C;break;case 71:b=D(this,this.J+this.S());this.F=this.C;break;case 128:b=D(this,this.D+J(this));this.F=this.C;break;case 129:b=D(this,this.I+J(this));this.F=this.C;break;case 130:b=D(this,this.L+J(this));this.F= -this.C;break;case 131:b=D(this,this.G+J(this));this.F=this.C;break;case 132:b=D(this,uk.call(this,2)+J(this));this.F=this.C;break;case 133:b=Hg(this,this.M+J(this));this.F=this.C;break;case 134:b=D(this,this.K+J(this));this.F=this.C;break;case 135:b=D(this,this.J+J(this));this.F=this.C;break;case 192:b=this.D&255;break;case 193:b=this.I&255;break;case 194:b=this.L&255;break;case 195:b=this.G&255;break;case 196:b=this.D>>8&255;break;case 197:b=this.I>>8&255;break;case 198:b=this.L>>8&255;break;case 199:b= +function Qf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=D(this,this.D);this.F=this.C;break;case 1:b=D(this,this.I);this.F=this.C;break;case 2:b=D(this,this.L);this.F=this.C;break;case 3:b=D(this,this.G);this.F=this.C;break;case 4:b=D(this,vk.call(this,0));this.F=this.C;break;case 5:b=D(this,J(this));this.F=this.C;break;case 6:b=D(this,this.K);this.F=this.C;break;case 7:b=D(this,this.J);this.F=this.C;break;case 64:b=D(this,this.D+this.S());this.F=this.C;break;case 65:b=D(this,this.I+this.S()); +this.F=this.C;break;case 66:b=D(this,this.L+this.S());this.F=this.C;break;case 67:b=D(this,this.G+this.S());this.F=this.C;break;case 68:b=D(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:b=Ig(this,this.M+this.S());this.F=this.C;break;case 70:b=D(this,this.K+this.S());this.F=this.C;break;case 71:b=D(this,this.J+this.S());this.F=this.C;break;case 128:b=D(this,this.D+J(this));this.F=this.C;break;case 129:b=D(this,this.I+J(this));this.F=this.C;break;case 130:b=D(this,this.L+J(this));this.F= +this.C;break;case 131:b=D(this,this.G+J(this));this.F=this.C;break;case 132:b=D(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:b=Ig(this,this.M+J(this));this.F=this.C;break;case 134:b=D(this,this.K+J(this));this.F=this.C;break;case 135:b=D(this,this.J+J(this));this.F=this.C;break;case 192:b=this.D&255;break;case 193:b=this.I&255;break;case 194:b=this.L&255;break;case 195:b=this.G&255;break;case 196:b=this.D>>8&255;break;case 197:b=this.I>>8&255;break;case 198:b=this.L>>8&255;break;case 199:b= this.G>>8&255;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&255;break;case 1:c=this.I&255;break;case 2:c=this.L&255;break;case 3:c=this.G&255;break;case 4:c=this.D>>8&255;break;case 5:c=this.I>>8&255;break;case 6:c=this.L>>8&255;break;case 7:c=this.G>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I= -this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8;break;default:Lg(this,a)}} -function Qf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=D(this,this.D);this.F=this.C;break;case 1:c=D(this,this.I);this.F=this.C;break;case 2:c=D(this,this.L);this.F=this.C;break;case 3:c=D(this,this.G);this.F=this.C;break;case 4:c=D(this,uk.call(this,0));this.F=this.C;break;case 5:c=D(this,J(this));this.F=this.C;break;case 6:c=D(this,this.K);this.F=this.C;break;case 7:c=D(this,this.J);this.F=this.C;break;case 64:c=D(this,this.D+this.S());this.F=this.C;break;case 65:c=D(this,this.I+this.S()); -this.F=this.C;break;case 66:c=D(this,this.L+this.S());this.F=this.C;break;case 67:c=D(this,this.G+this.S());this.F=this.C;break;case 68:c=D(this,uk.call(this,1)+this.S());this.F=this.C;break;case 69:c=Hg(this,this.M+this.S());this.F=this.C;break;case 70:c=D(this,this.K+this.S());this.F=this.C;break;case 71:c=D(this,this.J+this.S());this.F=this.C;break;case 128:c=D(this,this.D+J(this));this.F=this.C;break;case 129:c=D(this,this.I+J(this));this.F=this.C;break;case 130:c=D(this,this.L+J(this));this.F= -this.C;break;case 131:c=D(this,this.G+J(this));this.F=this.C;break;case 132:c=D(this,uk.call(this,2)+J(this));this.F=this.C;break;case 133:c=Hg(this,this.M+J(this));this.F=this.C;break;case 134:c=D(this,this.K+J(this));this.F=this.C;break;case 135:c=D(this,this.J+J(this));this.F=this.C;break;case 192:c=this.D&255;break;case 193:c=this.I&255;break;case 194:c=this.L&255;break;case 195:c=this.G&255;break;case 196:c=this.D>>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c= -this.G>>8&255;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I=this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8;break;default:Lg(this,a)}} -function Rf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=E(this,this.D);break;case 1:c=E(this,this.I);break;case 2:c=E(this,this.L);break;case 3:c=E(this,this.G);break;case 4:c=E(this,uk.call(this,0));break;case 5:c=E(this,J(this));break;case 6:c=E(this,this.K);break;case 7:c=E(this,this.J);break;case 64:c=E(this,this.D+this.S());break;case 65:c=E(this,this.I+this.S());break;case 66:c=E(this,this.L+this.S());break;case 67:c=E(this,this.G+this.S());break;case 68:c=E(this,uk.call(this,1)+this.S()); -break;case 69:c=Jg(this,this.M+this.S());break;case 70:c=E(this,this.K+this.S());break;case 71:c=E(this,this.J+this.S());break;case 128:c=E(this,this.D+J(this));break;case 129:c=E(this,this.I+J(this));break;case 130:c=E(this,this.L+J(this));break;case 131:c=E(this,this.G+J(this));break;case 132:c=E(this,uk.call(this,2)+J(this));break;case 133:c=Jg(this,this.M+J(this));break;case 134:c=E(this,this.K+J(this));break;case 135:c=E(this,this.J+J(this));break;case 192:c=this.D&65535;break;case 193:c=this.I& +this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8;break;default:Mg(this,a)}} +function Rf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=D(this,this.D);this.F=this.C;break;case 1:c=D(this,this.I);this.F=this.C;break;case 2:c=D(this,this.L);this.F=this.C;break;case 3:c=D(this,this.G);this.F=this.C;break;case 4:c=D(this,vk.call(this,0));this.F=this.C;break;case 5:c=D(this,J(this));this.F=this.C;break;case 6:c=D(this,this.K);this.F=this.C;break;case 7:c=D(this,this.J);this.F=this.C;break;case 64:c=D(this,this.D+this.S());this.F=this.C;break;case 65:c=D(this,this.I+this.S()); +this.F=this.C;break;case 66:c=D(this,this.L+this.S());this.F=this.C;break;case 67:c=D(this,this.G+this.S());this.F=this.C;break;case 68:c=D(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:c=Ig(this,this.M+this.S());this.F=this.C;break;case 70:c=D(this,this.K+this.S());this.F=this.C;break;case 71:c=D(this,this.J+this.S());this.F=this.C;break;case 128:c=D(this,this.D+J(this));this.F=this.C;break;case 129:c=D(this,this.I+J(this));this.F=this.C;break;case 130:c=D(this,this.L+J(this));this.F= +this.C;break;case 131:c=D(this,this.G+J(this));this.F=this.C;break;case 132:c=D(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:c=Ig(this,this.M+J(this));this.F=this.C;break;case 134:c=D(this,this.K+J(this));this.F=this.C;break;case 135:c=D(this,this.J+J(this));this.F=this.C;break;case 192:c=this.D&255;break;case 193:c=this.I&255;break;case 194:c=this.L&255;break;case 195:c=this.G&255;break;case 196:c=this.D>>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c= +this.G>>8&255;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I=this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8;break;default:Mg(this,a)}} +function Sf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=E(this,this.D);break;case 1:c=E(this,this.I);break;case 2:c=E(this,this.L);break;case 3:c=E(this,this.G);break;case 4:c=E(this,vk.call(this,0));break;case 5:c=E(this,J(this));break;case 6:c=E(this,this.K);break;case 7:c=E(this,this.J);break;case 64:c=E(this,this.D+this.S());break;case 65:c=E(this,this.I+this.S());break;case 66:c=E(this,this.L+this.S());break;case 67:c=E(this,this.G+this.S());break;case 68:c=E(this,vk.call(this,1)+this.S()); +break;case 69:c=Kg(this,this.M+this.S());break;case 70:c=E(this,this.K+this.S());break;case 71:c=E(this,this.J+this.S());break;case 128:c=E(this,this.D+J(this));break;case 129:c=E(this,this.I+J(this));break;case 130:c=E(this,this.L+J(this));break;case 131:c=E(this,this.G+J(this));break;case 132:c=E(this,vk.call(this,2)+J(this));break;case 133:c=Kg(this,this.M+J(this));break;case 134:c=E(this,this.K+J(this));break;case 135:c=E(this,this.J+J(this));break;case 192:c=this.D&65535;break;case 193:c=this.I& 65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535;break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D&65535;break;case 1:b=this.I&65535;break;case 2:b=this.L&65535;break;case 3:b=this.G&65535;break;case 4:b=z(this)&65535;break;case 5:b=this.M&65535;break;case 6:b=this.K&65535;break;case 7:b=this.J&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D= -this.D&-65536|a;break;case 1:this.I=this.I&-65536|a;break;case 2:this.L=this.L&-65536|a;break;case 3:this.G=this.G&-65536|a;break;case 4:ne(this,z(this)&-65536|a);break;case 5:this.M=this.M&-65536|a;break;case 6:this.K=this.K&-65536|a;break;case 7:this.J=this.J&-65536|a}} -function Sf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=E(this,this.D);this.F=this.C;break;case 1:b=E(this,this.I);this.F=this.C;break;case 2:b=E(this,this.L);this.F=this.C;break;case 3:b=E(this,this.G);this.F=this.C;break;case 4:b=E(this,uk.call(this,0));this.F=this.C;break;case 5:b=E(this,J(this));this.F=this.C;break;case 6:b=E(this,this.K);this.F=this.C;break;case 7:b=E(this,this.J);this.F=this.C;break;case 64:b=E(this,this.D+this.S());this.F=this.C;break;case 65:b=E(this,this.I+this.S()); -this.F=this.C;break;case 66:b=E(this,this.L+this.S());this.F=this.C;break;case 67:b=E(this,this.G+this.S());this.F=this.C;break;case 68:b=E(this,uk.call(this,1)+this.S());this.F=this.C;break;case 69:b=Jg(this,this.M+this.S());this.F=this.C;break;case 70:b=E(this,this.K+this.S());this.F=this.C;break;case 71:b=E(this,this.J+this.S());this.F=this.C;break;case 128:b=E(this,this.D+J(this));this.F=this.C;break;case 129:b=E(this,this.I+J(this));this.F=this.C;break;case 130:b=E(this,this.L+J(this));this.F= -this.C;break;case 131:b=E(this,this.G+J(this));this.F=this.C;break;case 132:b=E(this,uk.call(this,2)+J(this));this.F=this.C;break;case 133:b=Jg(this,this.M+J(this));this.F=this.C;break;case 134:b=E(this,this.K+J(this));this.F=this.C;break;case 135:b=E(this,this.J+J(this));this.F=this.C;break;case 192:b=this.D&65535;break;case 193:b=this.I&65535;break;case 194:b=this.L&65535;break;case 195:b=this.G&65535;break;case 196:b=z(this)&65535;break;case 197:b=this.M&65535;break;case 198:b=this.K&65535;break; -case 199:b=this.J&65535;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&65535;break;case 1:c=this.I&65535;break;case 2:c=this.L&65535;break;case 3:c=this.G&65535;break;case 4:c=z(this)&65535;break;case 5:c=this.M&65535;break;case 6:c=this.K&65535;break;case 7:c=this.J&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:ne(this,z(this)& --65536|a);break;case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a;break;default:Mg(this,a)}} -function Tf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=E(this,this.D);this.F=this.C;break;case 1:c=E(this,this.I);this.F=this.C;break;case 2:c=E(this,this.L);this.F=this.C;break;case 3:c=E(this,this.G);this.F=this.C;break;case 4:c=E(this,uk.call(this,0));this.F=this.C;break;case 5:c=E(this,J(this));this.F=this.C;break;case 6:c=E(this,this.K);this.F=this.C;break;case 7:c=E(this,this.J);this.F=this.C;break;case 64:c=E(this,this.D+this.S());this.F=this.C;break;case 65:c=E(this,this.I+this.S()); -this.F=this.C;break;case 66:c=E(this,this.L+this.S());this.F=this.C;break;case 67:c=E(this,this.G+this.S());this.F=this.C;break;case 68:c=E(this,uk.call(this,1)+this.S());this.F=this.C;break;case 69:c=Jg(this,this.M+this.S());this.F=this.C;break;case 70:c=E(this,this.K+this.S());this.F=this.C;break;case 71:c=E(this,this.J+this.S());this.F=this.C;break;case 128:c=E(this,this.D+J(this));this.F=this.C;break;case 129:c=E(this,this.I+J(this));this.F=this.C;break;case 130:c=E(this,this.L+J(this));this.F= -this.C;break;case 131:c=E(this,this.G+J(this));this.F=this.C;break;case 132:c=E(this,uk.call(this,2)+J(this));this.F=this.C;break;case 133:c=Jg(this,this.M+J(this));this.F=this.C;break;case 134:c=E(this,this.K+J(this));this.F=this.C;break;case 135:c=E(this,this.J+J(this));this.F=this.C;break;case 192:c=this.D&65535;break;case 193:c=this.I&65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535;break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break; -case 199:c=this.J&65535;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:ne(this,z(this)&-65536|a);break;case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a;break;default:Mg(this,a)}} -function Uf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=G(this,this.D);break;case 1:c=G(this,this.I);break;case 2:c=G(this,this.L);break;case 3:c=G(this,this.G);break;case 4:c=G(this,uk.call(this,0));break;case 5:c=G(this,J(this));break;case 6:c=G(this,this.K);break;case 7:c=G(this,this.J);break;case 64:c=G(this,this.D+this.S());break;case 65:c=G(this,this.I+this.S());break;case 66:c=G(this,this.L+this.S());break;case 67:c=G(this,this.G+this.S());break;case 68:c=G(this,uk.call(this,1)+this.S()); -break;case 69:c=Kg(this,this.M+this.S());break;case 70:c=G(this,this.K+this.S());break;case 71:c=G(this,this.J+this.S());break;case 128:c=G(this,this.D+J(this));break;case 129:c=G(this,this.I+J(this));break;case 130:c=G(this,this.L+J(this));break;case 131:c=G(this,this.G+J(this));break;case 132:c=G(this,uk.call(this,2)+J(this));break;case 133:c=Kg(this,this.M+J(this));break;case 134:c=G(this,this.K+J(this));break;case 135:c=G(this,this.J+J(this));break;case 192:c=this.D;break;case 193:c=this.I;break; -case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D;break;case 1:b=this.I;break;case 2:b=this.L;break;case 3:b=this.G;break;case 4:b=z(this);break;case 5:b=this.M;break;case 6:b=this.K;break;case 7:b=this.J;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D=a;break;case 1:this.I=a;break;case 2:this.L=a;break;case 3:this.G=a;break;case 4:ne(this, +this.D&-65536|a;break;case 1:this.I=this.I&-65536|a;break;case 2:this.L=this.L&-65536|a;break;case 3:this.G=this.G&-65536|a;break;case 4:oe(this,z(this)&-65536|a);break;case 5:this.M=this.M&-65536|a;break;case 6:this.K=this.K&-65536|a;break;case 7:this.J=this.J&-65536|a}} +function Tf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=E(this,this.D);this.F=this.C;break;case 1:b=E(this,this.I);this.F=this.C;break;case 2:b=E(this,this.L);this.F=this.C;break;case 3:b=E(this,this.G);this.F=this.C;break;case 4:b=E(this,vk.call(this,0));this.F=this.C;break;case 5:b=E(this,J(this));this.F=this.C;break;case 6:b=E(this,this.K);this.F=this.C;break;case 7:b=E(this,this.J);this.F=this.C;break;case 64:b=E(this,this.D+this.S());this.F=this.C;break;case 65:b=E(this,this.I+this.S()); +this.F=this.C;break;case 66:b=E(this,this.L+this.S());this.F=this.C;break;case 67:b=E(this,this.G+this.S());this.F=this.C;break;case 68:b=E(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:b=Kg(this,this.M+this.S());this.F=this.C;break;case 70:b=E(this,this.K+this.S());this.F=this.C;break;case 71:b=E(this,this.J+this.S());this.F=this.C;break;case 128:b=E(this,this.D+J(this));this.F=this.C;break;case 129:b=E(this,this.I+J(this));this.F=this.C;break;case 130:b=E(this,this.L+J(this));this.F= +this.C;break;case 131:b=E(this,this.G+J(this));this.F=this.C;break;case 132:b=E(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:b=Kg(this,this.M+J(this));this.F=this.C;break;case 134:b=E(this,this.K+J(this));this.F=this.C;break;case 135:b=E(this,this.J+J(this));this.F=this.C;break;case 192:b=this.D&65535;break;case 193:b=this.I&65535;break;case 194:b=this.L&65535;break;case 195:b=this.G&65535;break;case 196:b=z(this)&65535;break;case 197:b=this.M&65535;break;case 198:b=this.K&65535;break; +case 199:b=this.J&65535;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&65535;break;case 1:c=this.I&65535;break;case 2:c=this.L&65535;break;case 3:c=this.G&65535;break;case 4:c=z(this)&65535;break;case 5:c=this.M&65535;break;case 6:c=this.K&65535;break;case 7:c=this.J&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:oe(this,z(this)& +-65536|a);break;case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a;break;default:Ng(this,a)}} +function Uf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=E(this,this.D);this.F=this.C;break;case 1:c=E(this,this.I);this.F=this.C;break;case 2:c=E(this,this.L);this.F=this.C;break;case 3:c=E(this,this.G);this.F=this.C;break;case 4:c=E(this,vk.call(this,0));this.F=this.C;break;case 5:c=E(this,J(this));this.F=this.C;break;case 6:c=E(this,this.K);this.F=this.C;break;case 7:c=E(this,this.J);this.F=this.C;break;case 64:c=E(this,this.D+this.S());this.F=this.C;break;case 65:c=E(this,this.I+this.S()); +this.F=this.C;break;case 66:c=E(this,this.L+this.S());this.F=this.C;break;case 67:c=E(this,this.G+this.S());this.F=this.C;break;case 68:c=E(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:c=Kg(this,this.M+this.S());this.F=this.C;break;case 70:c=E(this,this.K+this.S());this.F=this.C;break;case 71:c=E(this,this.J+this.S());this.F=this.C;break;case 128:c=E(this,this.D+J(this));this.F=this.C;break;case 129:c=E(this,this.I+J(this));this.F=this.C;break;case 130:c=E(this,this.L+J(this));this.F= +this.C;break;case 131:c=E(this,this.G+J(this));this.F=this.C;break;case 132:c=E(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:c=Kg(this,this.M+J(this));this.F=this.C;break;case 134:c=E(this,this.K+J(this));this.F=this.C;break;case 135:c=E(this,this.J+J(this));this.F=this.C;break;case 192:c=this.D&65535;break;case 193:c=this.I&65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535;break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break; +case 199:c=this.J&65535;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:oe(this,z(this)&-65536|a);break;case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a;break;default:Ng(this,a)}} +function Vf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=G(this,this.D);break;case 1:c=G(this,this.I);break;case 2:c=G(this,this.L);break;case 3:c=G(this,this.G);break;case 4:c=G(this,vk.call(this,0));break;case 5:c=G(this,J(this));break;case 6:c=G(this,this.K);break;case 7:c=G(this,this.J);break;case 64:c=G(this,this.D+this.S());break;case 65:c=G(this,this.I+this.S());break;case 66:c=G(this,this.L+this.S());break;case 67:c=G(this,this.G+this.S());break;case 68:c=G(this,vk.call(this,1)+this.S()); +break;case 69:c=Lg(this,this.M+this.S());break;case 70:c=G(this,this.K+this.S());break;case 71:c=G(this,this.J+this.S());break;case 128:c=G(this,this.D+J(this));break;case 129:c=G(this,this.I+J(this));break;case 130:c=G(this,this.L+J(this));break;case 131:c=G(this,this.G+J(this));break;case 132:c=G(this,vk.call(this,2)+J(this));break;case 133:c=Lg(this,this.M+J(this));break;case 134:c=G(this,this.K+J(this));break;case 135:c=G(this,this.J+J(this));break;case 192:c=this.D;break;case 193:c=this.I;break; +case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D;break;case 1:b=this.I;break;case 2:b=this.L;break;case 3:b=this.G;break;case 4:b=z(this);break;case 5:b=this.M;break;case 6:b=this.K;break;case 7:b=this.J;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D=a;break;case 1:this.I=a;break;case 2:this.L=a;break;case 3:this.G=a;break;case 4:oe(this, a);break;case 5:this.M=a;break;case 6:this.K=a;break;case 7:this.J=a}} -function Vf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=G(this,this.D);this.F=this.C;break;case 1:b=G(this,this.I);this.F=this.C;break;case 2:b=G(this,this.L);this.F=this.C;break;case 3:b=G(this,this.G);this.F=this.C;break;case 4:b=G(this,uk.call(this,0));this.F=this.C;break;case 5:b=G(this,J(this));this.F=this.C;break;case 6:b=G(this,this.K);this.F=this.C;break;case 7:b=G(this,this.J);this.F=this.C;break;case 64:b=G(this,this.D+this.S());this.F=this.C;break;case 65:b=G(this,this.I+this.S()); -this.F=this.C;break;case 66:b=G(this,this.L+this.S());this.F=this.C;break;case 67:b=G(this,this.G+this.S());this.F=this.C;break;case 68:b=G(this,uk.call(this,1)+this.S());this.F=this.C;break;case 69:b=Kg(this,this.M+this.S());this.F=this.C;break;case 70:b=G(this,this.K+this.S());this.F=this.C;break;case 71:b=G(this,this.J+this.S());this.F=this.C;break;case 128:b=G(this,this.D+J(this));this.F=this.C;break;case 129:b=G(this,this.I+J(this));this.F=this.C;break;case 130:b=G(this,this.L+J(this));this.F= -this.C;break;case 131:b=G(this,this.G+J(this));this.F=this.C;break;case 132:b=G(this,uk.call(this,2)+J(this));this.F=this.C;break;case 133:b=Kg(this,this.M+J(this));this.F=this.C;break;case 134:b=G(this,this.K+J(this));this.F=this.C;break;case 135:b=G(this,this.J+J(this));this.F=this.C;break;case 192:b=this.D;break;case 193:b=this.I;break;case 194:b=this.L;break;case 195:b=this.G;break;case 196:b=z(this);break;case 197:b=this.M;break;case 198:b=this.K;break;case 199:b=this.J;break;default:b=0}switch(this.ga>> -3&7){case 0:c=this.D;break;case 1:c=this.I;break;case 2:c=this.L;break;case 3:c=this.G;break;case 4:c=z(this);break;case 5:c=this.M;break;case 6:c=this.K;break;case 7:c=this.J;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:ne(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a;break;default:Ng(this,a)}} -function Wf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=G(this,this.D);this.F=this.C;break;case 1:c=G(this,this.I);this.F=this.C;break;case 2:c=G(this,this.L);this.F=this.C;break;case 3:c=G(this,this.G);this.F=this.C;break;case 4:c=G(this,uk.call(this,0));this.F=this.C;break;case 5:c=G(this,J(this));this.F=this.C;break;case 6:c=G(this,this.K);this.F=this.C;break;case 7:c=G(this,this.J);this.F=this.C;break;case 64:c=G(this,this.D+this.S());this.F=this.C;break;case 65:c=G(this,this.I+this.S()); -this.F=this.C;break;case 66:c=G(this,this.L+this.S());this.F=this.C;break;case 67:c=G(this,this.G+this.S());this.F=this.C;break;case 68:c=G(this,uk.call(this,1)+this.S());this.F=this.C;break;case 69:c=Kg(this,this.M+this.S());this.F=this.C;break;case 70:c=G(this,this.K+this.S());this.F=this.C;break;case 71:c=G(this,this.J+this.S());this.F=this.C;break;case 128:c=G(this,this.D+J(this));this.F=this.C;break;case 129:c=G(this,this.I+J(this));this.F=this.C;break;case 130:c=G(this,this.L+J(this));this.F= -this.C;break;case 131:c=G(this,this.G+J(this));this.F=this.C;break;case 132:c=G(this,uk.call(this,2)+J(this));this.F=this.C;break;case 133:c=Kg(this,this.M+J(this));this.F=this.C;break;case 134:c=G(this,this.K+J(this));this.F=this.C;break;case 135:c=G(this,this.J+J(this));this.F=this.C;break;case 192:c=this.D;break;case 193:c=this.I;break;case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}a=a[this.ga>> -3&7].call(this,c,b.call(this));switch(d){case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:ne(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a;break;default:Ng(this,a)}} -function uk(a){var b=this.ra(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.D;break;case 1:d=this.I;break;case 2:d=this.L;break;case 3:d=this.G;break;case 4:d=0;break;case 5:d=this.M;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.D;break;case 1:e=this.I;break;case 2:e=this.L;break;case 3:e=this.G;break;case 4:e=z(this);this.Ea=this.Rb;break;case 5:a?(e=this.M,this.Ea=this.Rb):e=J(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<>8&255;9<(c&15)||mg(this)?(c+=6,80286<=this.da&&255>8&255;9<(c&15)||mg(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.D=this.D&-65536|d<<8|c;a?rg(this):sg(this);b?zg(this):xg(this);this.A-=this.B.re},function(){this.D=hk.call(this,this.D)},function(){this.I=hk.call(this,this.I)},function(){this.L=hk.call(this,this.L)},function(){this.G=hk.call(this,this.G)},function(){ne(this, -hk.call(this,z(this)))},function(){this.M=hk.call(this,this.M)},function(){this.K=hk.call(this,this.K)},function(){this.J=hk.call(this,this.J)},function(){this.D=fk.call(this,this.D)},function(){this.I=fk.call(this,this.I)},function(){this.L=fk.call(this,this.L)},function(){this.G=fk.call(this,this.G)},function(){ne(this,fk.call(this,z(this)))},function(){this.M=fk.call(this,this.M)},function(){this.K=fk.call(this,this.K)},function(){this.J=fk.call(this,this.J)},function(){ve(this,this.D&this.R); -this.A-=this.B.Ic},function(){ve(this,this.I&this.R);this.A-=this.B.Ic},function(){ve(this,this.L&this.R);this.A-=this.B.Ic},function(){ve(this,this.G&this.R);this.A-=this.B.Ic},function(){ve(this,z(this)-2&65535);this.A-=this.B.Ic},function(){ve(this,this.M&this.R);this.A-=this.B.Ic},function(){ve(this,this.K&this.R);this.A-=this.B.Ic},function(){ve(this,this.J&this.R);this.A-=this.B.Ic},function(){this.D=this.D&~this.R|le(this);this.A-=this.B.nc},function(){this.I=this.I&~this.R|le(this);this.A-= -this.B.nc},function(){this.L=this.L&~this.R|le(this);this.A-=this.B.nc},function(){this.G=this.G&~this.R|le(this);this.A-=this.B.nc},function(){ne(this,z(this)&~this.R|le(this));this.A-=this.B.nc},function(){this.M=this.M&~this.R|le(this);this.A-=this.B.nc},function(){this.K=this.K&~this.R|le(this);this.A-=this.B.nc},function(){this.J=this.J&~this.R|le(this);this.A-=this.B.nc},vk,wk,xk,yk,zk,Ak,Bk,Ck,Dk,Ek,Fk,Gk,Hk,Ik,Jk,Kk,vk,wk,xk,yk,zk,Ak,Bk,Ck,Dk,Ek,Fk,Gk,Hk,Ik,Jk,Kk,Lk,function(){this.lb.call(this, -$k,this.Fa);this.A-=-1===this.F?1:this.B.Cg},Lk,function(){this.lb.call(this,$k,this.S);this.A-=-1===this.F?1:this.B.Cg},function(){this.tc.call(this,Wj)},function(){this.za.call(this,Xj)},function(){this.kc.call(this,ak)},function(){this.la.call(this,bk)},Nk,Ok,Pk,Qk,function(){this.N|=1;this.za.call(this,oj)},function(){this.N|=1;this.Ea=this.Rb=this.Ug;this.la.call(this,Wi)},function(){var a;this.la.call(this,nj);switch(this.ga>>3&7){case 0:a=this.D;this.D=this.xa;ue(this,a);break;case 1:a=this.I; -this.I=this.xa;fg(this,a);break;case 2:a=this.L;this.L=this.xa;me(this,a);break;case 3:a=this.G;this.G=this.xa;te(this,a);break;case 4:a=z(this);ne(this,this.xa);80386<=this.da?this.Ga.load(a):ue(this,a);break;case 5:a=this.M;this.M=this.xa;80386<=this.da?this.Ia.load(a):fg(this,a);break;case 6:a=this.K;this.K=this.xa;me(this,a);break;case 7:a=this.J,this.J=this.xa,te(this,a)}},function(){this.N|=1;this.sa=this.Aa;this.xa=le(this);this.lb.call(this,al,ok);this.sa=-1},function(){this.A-=3},function(){var a= -this.D;this.D=this.D&~this.R|this.I&this.R;this.I=this.I&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.L&this.R;this.L=this.L&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.G&this.R;this.G=this.G&~this.R|a&this.R;this.A-=3},function(){var a=this.D,b=z(this);this.D=this.D&~this.R|b&this.R;ne(this,b&~this.R|a&this.R);this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.M&this.R;this.M=this.M&~this.R|a&this.R;this.A-=3},function(){var a= -this.D;this.D=this.D&~this.R|this.K&this.R;this.K=this.K&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.J&this.R;this.J=this.J&~this.R|a&this.R;this.A-=3},function(){this.D=2==this.V?this.D&-65536|this.D<<24>>24&65535:this.D<<16>>16;this.A-=2},function(){this.L=2==this.V?this.L&-65536|(this.D&32768?65535:0):this.D&-2147483648?-1:0;this.A-=this.B.Qj},function(){pk.call(this,this.Fa(),Og(this));this.A-=this.B.Tj},function(){this.A-=3},function(){var a=xe(this);a&131072&& -3>this.lc?y.call(this,13,0):(ve(this,a&-196609),this.A-=this.B.Ic)},function(){if(this.P&131072&&3>this.lc)y.call(this,13,0);else{var a=le(this),a=a&65535|this.P&-65536;De(this,a);this.A-=this.B.nc}},function(){var a=this.D>>8&255;a&1?rg(this):sg(this);a&4?(this.resultType&=-3,this.P|=4):(this.resultType&=-3,this.P&=-5);a&16?zg(this):xg(this);a&64?Cg(this):yg(this);a&128?(this.resultType&=-17,this.P|=128):(this.resultType&=-17,this.P&=-129);this.A-=this.B.Vb},function(){this.D=this.D&-65281|(xe(this)& -213)<<8;this.A-=this.B.Vb},function(){var a=this.D&-256,b;b=J(this);b=this.Ja(this.Ea.ac(b,1));this.D=a|b;this.A-=this.B.Oh},function(){this.D=this.D&~this.R|re(this,this.Ea,J(this));this.A-=this.B.Oh},function(){var a=J(this),b=this.D;this.fc(this.Ea.bc(a,1),b);this.A-=this.B.Ph},function(){var a=J(this),b=this.D;this.yb(this.Ea.bc(a,this.V),b);this.A-=this.B.Ph},function(){var a=1,b=0,c=this.wa,d=this.B.Qh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Sh,this.ha&256||(this.A-=this.B.Rh));if(a--){var e= -this.Ja(this.Ea.ac(this.K&c,1));this.fc(this.oa.bc(this.J&c,1),e);e=this.P&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-b&c;a&&(ig(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Qh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Sh,this.ha&256||(this.A-=this.B.Rh));if(a--){var e=re(this,this.Ea,this.K&c);this.yb(this.oa.bc(this.J&c,this.V),e);e=this.P&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d; -this.I=this.I&~c|this.I-b&c;a&&(ig(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Bh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Dh,this.ha&256||(this.A-=this.B.Ch));if(a--){var e=Gg(this,this.Ea,this.K),f=Gg(this,this.oa,this.J);this.F=this.C;Ji.call(this,e,f);e=this.P&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Jb;a&&ng(this)==(this.ha&64)&&(ig(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Bh;this.ha&192&& -(a=this.I&c,b=1,d=this.B.Dh,this.ha&256||(this.A-=this.B.Ch));if(a--){var e=Ig(this,this.Ea,this.K&c),f=Ig(this,this.oa,this.J&c);this.F=this.C;Ki.call(this,e,f);e=this.P&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Jb;a&&ng(this)==(this.ha&64)&&(ig(this),this.N|=256)}},function(){qg(this,this.D&this.ra(),128);this.A-=this.B.re},function(){qg(this,this.D&this.Fa(),this.Fb);this.A-=this.B.re},function(){var a=1,b=0,c=this.wa, -d=this.B.ai;this.ha&192&&(a=this.I&c,b=1,d=this.B.ci,this.ha&256||(this.A-=this.B.bi));if(a--){var e=this.D;this.fc(this.oa.bc(this.J&c,1),e);this.I=this.I&~c|this.I-b&c;80546<=this.xe&&80564>=this.xe&&!(this.ha&2048)!=(103!=this.Ja(this.ea))&&(c^=-65536);this.J=this.J&~c|this.J+(this.P&1024?-1:1)&c;this.A-=d;a&&(ig(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.ai;this.ha&192&&(a=this.I&c,b=1,d=this.B.ci,this.ha&256||(this.A-=this.B.bi));if(a--){var e=this.D;this.yb(this.oa.bc(this.J& -c,this.V),e);this.J=this.J&~c|this.J+(this.P&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ig(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Ih;this.ha&192&&(a=this.I&c,b=1,d=this.B.Kh,this.ha&256||(this.A-=this.B.Jh));if(a--){var e=this.Ja(this.Ea.ac(this.K&c,1));this.D=this.D&-256|e;this.K=this.K&~c|this.K+(this.P&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ig(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Ih;this.ha&192&&(a=this.I&c, -b=1,d=this.B.Kh,this.ha&256||(this.A-=this.B.Jh));if(a--){var e=re(this,this.Ea,this.K&c);this.D=this.D&~this.R|e;this.K=this.K&~c|this.K+(this.P&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ig(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Vh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Xh,this.ha&256||(this.A-=this.B.Wh));if(a--){var e=this.D&255,f=Gg(this,this.oa,this.J);this.F=this.C;Ji.call(this,e,f);this.J=this.J&~c|this.J+(this.P&1024?-1:1)&c;this.I=this.I&~c|this.I- -b&c;this.A-=d-this.B.Jb;a&&ng(this)==(this.ha&64)&&(ig(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Vh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Xh,this.ha&256||(this.A-=this.B.Wh));if(a--){var e=this.D&this.R,f=Ig(this,this.oa,this.J&c);this.F=this.C;Ki.call(this,e,f);this.J=this.J&~c|this.J+(this.P&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Jb;a&&ng(this)==(this.ha&64)&&(ig(this),this.N|=256)}},function(){this.D=this.D&-256|this.ra();this.A-=this.B.Vb},function(){this.I= +function Wf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=G(this,this.D);this.F=this.C;break;case 1:b=G(this,this.I);this.F=this.C;break;case 2:b=G(this,this.L);this.F=this.C;break;case 3:b=G(this,this.G);this.F=this.C;break;case 4:b=G(this,vk.call(this,0));this.F=this.C;break;case 5:b=G(this,J(this));this.F=this.C;break;case 6:b=G(this,this.K);this.F=this.C;break;case 7:b=G(this,this.J);this.F=this.C;break;case 64:b=G(this,this.D+this.S());this.F=this.C;break;case 65:b=G(this,this.I+this.S()); +this.F=this.C;break;case 66:b=G(this,this.L+this.S());this.F=this.C;break;case 67:b=G(this,this.G+this.S());this.F=this.C;break;case 68:b=G(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:b=Lg(this,this.M+this.S());this.F=this.C;break;case 70:b=G(this,this.K+this.S());this.F=this.C;break;case 71:b=G(this,this.J+this.S());this.F=this.C;break;case 128:b=G(this,this.D+J(this));this.F=this.C;break;case 129:b=G(this,this.I+J(this));this.F=this.C;break;case 130:b=G(this,this.L+J(this));this.F= +this.C;break;case 131:b=G(this,this.G+J(this));this.F=this.C;break;case 132:b=G(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:b=Lg(this,this.M+J(this));this.F=this.C;break;case 134:b=G(this,this.K+J(this));this.F=this.C;break;case 135:b=G(this,this.J+J(this));this.F=this.C;break;case 192:b=this.D;break;case 193:b=this.I;break;case 194:b=this.L;break;case 195:b=this.G;break;case 196:b=z(this);break;case 197:b=this.M;break;case 198:b=this.K;break;case 199:b=this.J;break;default:b=0}switch(this.ga>> +3&7){case 0:c=this.D;break;case 1:c=this.I;break;case 2:c=this.L;break;case 3:c=this.G;break;case 4:c=z(this);break;case 5:c=this.M;break;case 6:c=this.K;break;case 7:c=this.J;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:oe(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a;break;default:Og(this,a)}} +function Xf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=G(this,this.D);this.F=this.C;break;case 1:c=G(this,this.I);this.F=this.C;break;case 2:c=G(this,this.L);this.F=this.C;break;case 3:c=G(this,this.G);this.F=this.C;break;case 4:c=G(this,vk.call(this,0));this.F=this.C;break;case 5:c=G(this,J(this));this.F=this.C;break;case 6:c=G(this,this.K);this.F=this.C;break;case 7:c=G(this,this.J);this.F=this.C;break;case 64:c=G(this,this.D+this.S());this.F=this.C;break;case 65:c=G(this,this.I+this.S()); +this.F=this.C;break;case 66:c=G(this,this.L+this.S());this.F=this.C;break;case 67:c=G(this,this.G+this.S());this.F=this.C;break;case 68:c=G(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:c=Lg(this,this.M+this.S());this.F=this.C;break;case 70:c=G(this,this.K+this.S());this.F=this.C;break;case 71:c=G(this,this.J+this.S());this.F=this.C;break;case 128:c=G(this,this.D+J(this));this.F=this.C;break;case 129:c=G(this,this.I+J(this));this.F=this.C;break;case 130:c=G(this,this.L+J(this));this.F= +this.C;break;case 131:c=G(this,this.G+J(this));this.F=this.C;break;case 132:c=G(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:c=Lg(this,this.M+J(this));this.F=this.C;break;case 134:c=G(this,this.K+J(this));this.F=this.C;break;case 135:c=G(this,this.J+J(this));this.F=this.C;break;case 192:c=this.D;break;case 193:c=this.I;break;case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}a=a[this.ga>> +3&7].call(this,c,b.call(this));switch(d){case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:oe(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a;break;default:Og(this,a)}} +function vk(a){var b=this.ra(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.D;break;case 1:d=this.I;break;case 2:d=this.L;break;case 3:d=this.G;break;case 4:d=0;break;case 5:d=this.M;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.D;break;case 1:e=this.I;break;case 2:e=this.L;break;case 3:e=this.G;break;case 4:e=z(this);this.Ea=this.Rb;break;case 5:a?(e=this.M,this.Ea=this.Rb):e=J(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<>8&255;9<(c&15)||ng(this)?(c+=6,80286<=this.da&&255>8&255;9<(c&15)||ng(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.D=this.D&-65536|d<<8|c;a?sg(this):tg(this);b?Cg(this):yg(this);this.A-=this.B.we},function(){this.D=ik.call(this,this.D)},function(){this.I=ik.call(this,this.I)},function(){this.L=ik.call(this,this.L)},function(){this.G=ik.call(this,this.G)},function(){oe(this, +ik.call(this,z(this)))},function(){this.M=ik.call(this,this.M)},function(){this.K=ik.call(this,this.K)},function(){this.J=ik.call(this,this.J)},function(){this.D=gk.call(this,this.D)},function(){this.I=gk.call(this,this.I)},function(){this.L=gk.call(this,this.L)},function(){this.G=gk.call(this,this.G)},function(){oe(this,gk.call(this,z(this)))},function(){this.M=gk.call(this,this.M)},function(){this.K=gk.call(this,this.K)},function(){this.J=gk.call(this,this.J)},function(){we(this,this.D&this.R); +this.A-=this.B.Jc},function(){we(this,this.I&this.R);this.A-=this.B.Jc},function(){we(this,this.L&this.R);this.A-=this.B.Jc},function(){we(this,this.G&this.R);this.A-=this.B.Jc},function(){we(this,z(this)-2&65535);this.A-=this.B.Jc},function(){we(this,this.M&this.R);this.A-=this.B.Jc},function(){we(this,this.K&this.R);this.A-=this.B.Jc},function(){we(this,this.J&this.R);this.A-=this.B.Jc},function(){this.D=this.D&~this.R|me(this);this.A-=this.B.nc},function(){this.I=this.I&~this.R|me(this);this.A-= +this.B.nc},function(){this.L=this.L&~this.R|me(this);this.A-=this.B.nc},function(){this.G=this.G&~this.R|me(this);this.A-=this.B.nc},function(){oe(this,z(this)&~this.R|me(this));this.A-=this.B.nc},function(){this.M=this.M&~this.R|me(this);this.A-=this.B.nc},function(){this.K=this.K&~this.R|me(this);this.A-=this.B.nc},function(){this.J=this.J&~this.R|me(this);this.A-=this.B.nc},wk,xk,yk,zk,Ak,Bk,Ck,Dk,Ek,Fk,Gk,Hk,Ik,Jk,Kk,Lk,wk,xk,yk,zk,Ak,Bk,Ck,Dk,Ek,Fk,Gk,Hk,Ik,Jk,Kk,Lk,Mk,function(){this.lb.call(this, +al,this.Fa);this.A-=-1===this.F?1:this.B.Bg},Mk,function(){this.lb.call(this,al,this.S);this.A-=-1===this.F?1:this.B.Bg},function(){this.tc.call(this,Xj)},function(){this.za.call(this,Yj)},function(){this.kc.call(this,bk)},function(){this.la.call(this,ck)},Ok,Pk,Qk,Rk,function(){this.N|=1;this.za.call(this,pj)},function(){this.N|=1;this.Ea=this.Rb=this.Tg;this.la.call(this,Xi)},function(){var a;this.la.call(this,oj);switch(this.ga>>3&7){case 0:a=this.D;this.D=this.xa;ve(this,a);break;case 1:a=this.I; +this.I=this.xa;gg(this,a);break;case 2:a=this.L;this.L=this.xa;ne(this,a);break;case 3:a=this.G;this.G=this.xa;ue(this,a);break;case 4:a=z(this);oe(this,this.xa);80386<=this.da?this.Ga.load(a):ve(this,a);break;case 5:a=this.M;this.M=this.xa;80386<=this.da?this.Ia.load(a):gg(this,a);break;case 6:a=this.K;this.K=this.xa;ne(this,a);break;case 7:a=this.J,this.J=this.xa,ue(this,a)}},function(){this.N|=1;this.sa=this.Aa;this.xa=me(this);this.lb.call(this,bl,pk);this.sa=-1},function(){this.A-=3},function(){var a= +this.D;this.D=this.D&~this.R|this.I&this.R;this.I=this.I&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.L&this.R;this.L=this.L&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.G&this.R;this.G=this.G&~this.R|a&this.R;this.A-=3},function(){var a=this.D,b=z(this);this.D=this.D&~this.R|b&this.R;oe(this,b&~this.R|a&this.R);this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.M&this.R;this.M=this.M&~this.R|a&this.R;this.A-=3},function(){var a= +this.D;this.D=this.D&~this.R|this.K&this.R;this.K=this.K&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.J&this.R;this.J=this.J&~this.R|a&this.R;this.A-=3},function(){this.D=2==this.V?this.D&-65536|this.D<<24>>24&65535:this.D<<16>>16;this.A-=2},function(){this.L=2==this.V?this.L&-65536|(this.D&32768?65535:0):this.D&-2147483648?-1:0;this.A-=this.B.Pj},function(){qk.call(this,this.Fa(),Pg(this));this.A-=this.B.Sj},function(){this.A-=3},function(){var a=De(this);a&131072&& +3>this.lc?y.call(this,13,0):(we(this,a&-196609),this.A-=this.B.Jc)},function(){if(this.P&131072&&3>this.lc)y.call(this,13,0);else{var a=me(this),a=a&65535|this.P&-65536;Ee(this,a);this.A-=this.B.nc}},function(){var a=this.D>>8&255;a&1?sg(this):tg(this);a&4?(this.resultType&=-3,this.P|=4):(this.resultType&=-3,this.P&=-5);a&16?Cg(this):yg(this);a&64?Dg(this):zg(this);a&128?(this.resultType&=-17,this.P|=128):(this.resultType&=-17,this.P&=-129);this.A-=this.B.Vb},function(){this.D=this.D&-65281|(De(this)& +213)<<8;this.A-=this.B.Vb},function(){var a=this.D&-256,b;b=J(this);b=this.Ja(this.Ea.ac(b,1));this.D=a|b;this.A-=this.B.Nh},function(){this.D=this.D&~this.R|se(this,this.Ea,J(this));this.A-=this.B.Nh},function(){var a=J(this),b=this.D;this.fc(this.Ea.bc(a,1),b);this.A-=this.B.Oh},function(){var a=J(this),b=this.D;this.yb(this.Ea.bc(a,this.V),b);this.A-=this.B.Oh},function(){var a=1,b=0,c=this.wa,d=this.B.Ph;this.ha&192&&(a=this.I&c,b=1,d=this.B.Rh,this.ha&256||(this.A-=this.B.Qh));if(a--){var e= +this.Ja(this.Ea.ac(this.K&c,1));this.fc(this.oa.bc(this.J&c,1),e);e=this.P&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-b&c;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Ph;this.ha&192&&(a=this.I&c,b=1,d=this.B.Rh,this.ha&256||(this.A-=this.B.Qh));if(a--){var e=se(this,this.Ea,this.K&c);this.yb(this.oa.bc(this.J&c,this.V),e);e=this.P&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d; +this.I=this.I&~c|this.I-b&c;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Ah;this.ha&192&&(a=this.I&c,b=1,d=this.B.Ch,this.ha&256||(this.A-=this.B.Bh));if(a--){var e=Hg(this,this.Ea,this.K),f=Hg(this,this.oa,this.J);this.F=this.C;Ki.call(this,e,f);e=this.P&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Jb;a&&og(this)==(this.ha&64)&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Ah;this.ha&192&& +(a=this.I&c,b=1,d=this.B.Ch,this.ha&256||(this.A-=this.B.Bh));if(a--){var e=Jg(this,this.Ea,this.K&c),f=Jg(this,this.oa,this.J&c);this.F=this.C;Li.call(this,e,f);e=this.P&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Jb;a&&og(this)==(this.ha&64)&&(jg(this),this.N|=256)}},function(){rg(this,this.D&this.ra(),128);this.A-=this.B.we},function(){rg(this,this.D&this.Fa(),this.Fb);this.A-=this.B.we},function(){var a=1,b=0,c=this.wa, +d=this.B.$h;this.ha&192&&(a=this.I&c,b=1,d=this.B.bi,this.ha&256||(this.A-=this.B.ai));if(a--){var e=this.D;this.fc(this.oa.bc(this.J&c,1),e);this.I=this.I&~c|this.I-b&c;80546<=this.Sd&&80564>=this.Sd&&!(this.ha&2048)!=(103!=this.Ja(this.ea))&&(c^=-65536);this.J=this.J&~c|this.J+(this.P&1024?-1:1)&c;this.A-=d;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.$h;this.ha&192&&(a=this.I&c,b=1,d=this.B.bi,this.ha&256||(this.A-=this.B.ai));if(a--){var e=this.D;this.yb(this.oa.bc(this.J& +c,this.V),e);this.J=this.J&~c|this.J+(this.P&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Hh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Jh,this.ha&256||(this.A-=this.B.Ih));if(a--){var e=this.Ja(this.Ea.ac(this.K&c,1));this.D=this.D&-256|e;this.K=this.K&~c|this.K+(this.P&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Hh;this.ha&192&&(a=this.I&c, +b=1,d=this.B.Jh,this.ha&256||(this.A-=this.B.Ih));if(a--){var e=se(this,this.Ea,this.K&c);this.D=this.D&~this.R|e;this.K=this.K&~c|this.K+(this.P&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Uh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Wh,this.ha&256||(this.A-=this.B.Vh));if(a--){var e=this.D&255,f=Hg(this,this.oa,this.J);this.F=this.C;Ki.call(this,e,f);this.J=this.J&~c|this.J+(this.P&1024?-1:1)&c;this.I=this.I&~c|this.I- +b&c;this.A-=d-this.B.Jb;a&&og(this)==(this.ha&64)&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Uh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Wh,this.ha&256||(this.A-=this.B.Vh));if(a--){var e=this.D&this.R,f=Jg(this,this.oa,this.J&c);this.F=this.C;Li.call(this,e,f);this.J=this.J&~c|this.J+(this.P&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Jb;a&&og(this)==(this.ha&64)&&(jg(this),this.N|=256)}},function(){this.D=this.D&-256|this.ra();this.A-=this.B.Vb},function(){this.I= this.I&-256|this.ra();this.A-=this.B.Vb},function(){this.L=this.L&-256|this.ra();this.A-=this.B.Vb},function(){this.G=this.G&-256|this.ra();this.A-=this.B.Vb},function(){this.D=this.D&-65281|this.ra()<<8;this.A-=this.B.Vb},function(){this.I=this.I&-65281|this.ra()<<8;this.A-=this.B.Vb},function(){this.L=this.L&-65281|this.ra()<<8;this.A-=this.B.Vb},function(){this.G=this.G&-65281|this.ra()<<8;this.A-=this.B.Vb},function(){this.D=this.D&~this.R|this.Fa();this.A-=this.B.Vb},function(){this.I=this.I& -~this.R|this.Fa();this.A-=this.B.Vb},function(){this.L=this.L&~this.R|this.Fa();this.A-=this.B.Vb},function(){this.G=this.G&~this.R|this.Fa();this.A-=this.B.Vb},function(){ne(this,z(this)&~this.R|this.Fa());this.A-=this.B.Vb},function(){this.M=this.M&~this.R|this.Fa();this.A-=this.B.Vb},function(){this.K=this.K&~this.R|this.Fa();this.A-=this.B.Vb},function(){this.J=this.J&~this.R|this.Fa();this.A-=this.B.Vb},Uk,Vk,Uk,Vk,function(){this.la.call(this,Xi)},function(){this.la.call(this,Vi)},function(){this.N|= -1;this.md.call(this,bl,this.ra)},function(){this.N|=1;this.lb.call(this,bl,this.Fa)},Wk,Xk,Wk,Xk,function(){if(this.P&131072&&3>this.lc)y.call(this,13,0);else{var a=this.B.jk;this.Uc=-1;qk.call(this,3,null,a)}},function(){var a=this.ra();if(this.P&131072&&3>this.lc)y.call(this,13,0);else{var b;a:{b=this.$f[a];if(void 0!==b)for(var c=0;cthis.lc)y.call(this,13,0);else{var a=this.B.kk;this.Uc=-1;qk.call(this,4,null,a)}else this.A-=this.B.lk},function(){if(this.P&131072&&3>this.lc)y.call(this,13,0);else{this.Vc=this.X.U;this.sa=this.Aa;this.A-=this.B.hk;if(this.qa&1&&this.P&16384){var a=this.ja(this.ka.ua+0);oe(this.Z,a,!1)}else{var a=this.Ma,b=le(this),c=le(this),d=le(this);if(this.P&131072)d=d&131071|this.P&-131072;else if(d&131072){var e=le(this),f=le(this),g=le(this),h=le(this),k=le(this),m=le(this);pe(this,!0,!0);me(this, -f);ne(this,e);ue(this,g);te(this,h);this.Ga.load(k);this.Ia.load(m)}null!=Ee(this,b,c,!1)&&(De(this,d,a),this.cg&&ag(this,this.ea))}this.Vc=this.sa=-1}},function(){this.md.call(this,Rk,kk)},function(){this.lb.call(this,2==this.V?Sk:Tk,kk)},function(){this.md.call(this,Rk,lk)},function(){this.lb.call(this,2==this.V?Sk:Tk,lk)},function(){var a=this.ra();if(a){var b=this.D&255;this.D=this.D&-65536|b/a<<8|b%a;qg(this,this.D,128);this.A-=this.B.Nj}else tk.call(this)},function(){var a=this.D&255,b=(this.D>> -8&255)*this.ra()|0,c=a+b|0;this.D=this.D&-65536|c&255;jg(this,a,b,c,191);this.A-=this.B.Mj},function(){this.D=this.D&-256|(kg(this)?255:0);this.A-=2},function(){this.D=this.D&-256|Gg(this,this.Ea,this.G+(this.D&255));this.A-=this.B.Mk},function(){Yk.call(this,216)},function(){Yk.call(this,217)},function(){Yk.call(this,218)},function(){Yk.call(this,219)},function(){Yk.call(this,220)},function(){Yk.call(this,221)},function(){Yk.call(this,222)},function(){Yk.call(this,223)},function(){var a=this.S(), -b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b&&!ng(this)?(C(this,A(this)+a),this.A-=this.B.tk):this.A-=this.B.Lh},function(){var a=this.S(),b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b&&ng(this)?(C(this,A(this)+a),this.A-=this.B.Mh):this.A-=this.B.Nh},function(){var a=this.S(),b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b?(C(this,A(this)+a),this.A-=this.B.sk):this.A-=this.B.Lh},function(){var a=this.S();this.I&this.wa?this.A-=this.B.Nh:(C(this,A(this)+a),this.A-=this.B.Mh)},function(){var a=this.ra(); -Eg(this,a,1,!0)&&(this.D=this.D&-256|Uc(this.ma,a,1,this.ea-2)&255,this.A-=this.B.Gh)},function(){var a=this.ra();Eg(this,a,this.V,!0)&&(this.D=this.D&~this.R|Uc(this.ma,a,this.V,this.ea-2)&this.R,this.A-=this.B.Gh)},function(){var a=this.ra();Eg(this,a,1,!1)&&(Yc(this.ma,a,1,this.D&255,this.ea-2),this.A-=this.B.Uh)},function(){var a=this.ra();Eg(this,a,this.V,!1)&&(Yc(this.ma,a,this.V,this.D&this.R,this.ea-2),this.A-=this.B.Uh)},function(){var a=this.Fa(),b=A(this),a=b+a;ve(this,b);C(this,a);this.A-= -this.B.Rj},function(){var a=this.Fa();C(this,A(this)+a);this.A-=this.B.Hh},function(){Ee(this,this.Fa(),Og(this));this.A-=this.B.nk},function(){var a=this.S();C(this,A(this)+a);this.A-=this.B.Hh},function(){var a=this.L&65535;Eg(this,a,1,!0)&&(this.D=this.D&-256|Uc(this.ma,a,1,this.ea-1)&255,this.A-=this.B.Fh)},function(){var a=this.L&65535;Eg(this,a,this.V,!0)&&(this.D=this.D&~this.R|Uc(this.ma,a,this.V,this.ea-1)&this.R,this.A-=this.B.Fh)},function(){var a=this.L&65535;Eg(this,a,1,!1)&&(Yc(this.ma, -a,1,this.D&255,this.ea-1),this.A-=this.B.Th)},function(){var a=this.L&65535;Eg(this,a,2,!1)&&(Yc(this.ma,a,this.V,this.D&this.R,this.ea-1),this.A-=this.B.Th)},Zk,Zk,function(){this.N|=132;this.A-=this.B.bd},function(){this.N|=68;this.A-=this.B.bd},function(){this.P&131072?y.call(this,13,0):(this.Ya|=4,this.A-=2,this.ca&&t(this,-2147483648)?(ig(this),this.ca.Kb()):this.P&512||(this.ca&&ig(this),this.Kb()))},function(){kg(this)?sg(this):rg(this);this.A-=2},function(){this.vc=!1;this.md.call(this,dl, -nk);this.vc&&(this.D=this.D&~this.R|this.Ba&this.R)},function(){this.vc=!1;this.lb.call(this,el,nk);this.vc&&(this.D=this.D&~this.R|this.Ba&this.R,this.L=this.L&~this.R|this.Za&this.R)},function(){sg(this);this.A-=2},function(){rg(this);this.A-=2},function(){this.Ma>this.lc?y.call(this,13,0):(this.P&=-513,this.A-=this.B.Pj)},function(){this.Ma>this.lc?y.call(this,13,0):(this.P|=512,this.N|=4,this.A-=2)},function(){this.P&=-1025;this.A-=2},function(){this.P|=1024;this.A-=2},function(){this.md.call(this, -Ie,nk)},function(){this.lb.call(this,Je,nk)}],Mk=[ti,pj,ri,rj,vi,Uj,ck,Ji],$k=[ui,qj,si,sj,wi,Vj,dk,Ki],al=[function(a,b){this.A-=-1===this.F?this.B.nc:this.B.Ek;return b},Mi,Mi,Mi,Mi,Mi,Mi,Mi],bl=[function(a,b){this.A-=-1===this.F?this.B.wk:this.B.uk;return b},Ni,Ni,Ni,Ni,Ni,Ni,Ni],Rk=[function(a,b){var c=a;if(b&=this.Ta){var d;(b&=7)?(d=a<>8-b)&255):d=a<<7;vg(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Ta){var d;(b&=7)?(d=a<<8-b,c=(a>>>b|d)&255):d=a;vg(this,c,d,128)}return c}, -function(a,b){var c=a;if(b&=this.Ta){var d=wg(this);(b%=9)?(c=(a<>9-b)&255,d=a<>b|d<<8-b|a<<9-b)&255,d=a<<8-b):d<<=7;vg(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Ta){var d=0;8>>b-1,a=b>>>1&255,qg(this,a,128,b&1,a&128);return a},Ni,function(a,b){if(b&=this.Ta)9>24>>b-1,a=b>>1&255,qg(this,a,128,b&1);return a}],Sk=[function(a,b){var c=a;if(b&=this.Ta){var d;(b&=15)?(d=a<>16-b)&65535):d=a<<15;vg(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ta){var d;(b&=15)?(d=a<<16-b,c=(a>>>b|d)&65535):d=a;vg(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ta){var d=wg(this);(b%=17)?(c=(a<>17-b)&65535,d=a<>b|d<<16-b|a<<17-b)&65535,d=a<<16-b):d<<=15;vg(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ta){var d=0;16>>b-1,a=b>>>1&65535,qg(this,a,32768,b&1,a&32768);return a},Ni,function(a,b){if(b&=this.Ta)17>16>>b-1,a=b>>1&65535,qg(this,a,32768,b&1);return a}],Tk=[function(a,b){var c=a;if(b&=this.Ta)c=a<>>32-b,vg(this,c,a<>>b|d;vg(this,c,d,-2147483648)}return c},function(a,b){var c=a;if(b&=this.Ta)c=wg(this),c=a<>>32-b>>>1,vg(this,c,a<>>b|c<<32-b|a<<32-b<<1,vg(this,c,a<<32-b,-2147483648);return c},function(a,b){var c=a;if(b&=this.Ta)a<<=b-1,c=a<<1,qg(this,c,-2147483648,a&-2147483648,(c^a)&-2147483648);return c},function(a,b){if(b&=this.Ta)b=a>>>b-1,a=b>>>1,qg(this,a,-2147483648, -b&1,a&-2147483648);return a},Ni,function(a,b){if(b&=this.Ta)b=a>>b-1,a=b>>1,qg(this,a,-2147483648,b&1);return a}],dl=[function(a,b){b=this.ra();qg(this,a&b,128);this.A-=-1===this.C?this.B.ei:this.B.di;this.N|=2;return a},Ni,function(a){this.A-=-1===this.C?this.B.Gf:this.B.Ff;return a^255},function(a){var b=-a|0;jg(this,0,a,b,191,!0);this.A-=-1===this.C?this.B.Gf:this.B.Ff;return b&255},function(a){this.Ba=(this.D&255)*a&65535;this.Ba&65280?(rg(this),tg(this)):(sg(this),ug(this));this.vc=!0;this.A-= --1===this.C?this.B.Ak:this.B.zk;this.N|=2;return a},function(a){var b=(this.D<<24>>24)*(a<<24>>24)|0;this.Ba=b&65535;127b?(rg(this),tg(this)):(sg(this),ug(this));this.vc=!0;this.A-=-1===this.C?this.B.ek:this.B.dk;this.N|=2;return a},function(a,b){if(!a)return tk.call(this),a;var c=(b=this.D&65535)/a;if(255>24,d= -(b=this.D<<16>>16)/c|0;if(d!=d<<24>>24||8086==this.da&&-128==d)return tk.call(this),a;this.Ba=d&255|(b%c&255)<<8;this.vc=!0;this.A-=-1===this.C?this.B.ak:this.B.$j;this.N|=2;return a}],el=[function(a,b){b=this.Fa();qg(this,a&b,this.Fb);this.A-=-1===this.C?this.B.ei:this.B.di;this.N|=2;return a},Ni,function(a){this.A-=-1===this.C?this.B.Gf:this.B.Ff;return a^this.R},function(a){var b=-a|0;jg(this,0,a,b,this.Fb|63,!0);this.A-=-1===this.C?this.B.Gf:this.B.Ff;return b&this.R},function(a,b){2==this.V? -(b=this.D&65535,b=b*a|0,this.Ba=b&65535,this.Za=b>>16&65535):(Ti.call(this,a,this.D),80563==this.xe&&68657152==this.D&&129==a&&(this.Za=0));this.Za?(rg(this),tg(this)):(sg(this),ug(this));this.vc=!0;this.A-=-1===this.C?this.B.Ck:this.B.Bk;this.N|=2;return a},function(a,b){2==this.V?(b=this.D&65535,b=(b<<16>>16)*(a<<16>>16)|0,this.Ba=b&65535,this.Za=b>>16&65535,b=32767b):(Si.call(this,a,this.D),b=this.Za!=this.Ba>>31);b?(rg(this),tg(this)):(sg(this),ug(this));this.vc=!0;this.A-=-1===this.C? -this.B.gk:this.B.fk;this.N|=2;return a},function(a,b){if(2==this.V){if(!a)return tk.call(this),a;b=65536*(this.L&65535)+(this.D&65535);var c=b/a;if(65536<=c)return tk.call(this),a;this.Ba=c&65535;this.Za=b%a&65535}else{if(!gk.call(this,this.D,this.L,a))return tk.call(this),a;this.Ba|=0;this.Za|=0}this.vc=!0;this.A-=-1===this.C?this.B.Zj:this.B.Yj;this.N|=2;return a},function(a,b){if(2==this.V){if(!a)return tk.call(this),a;var c=a<<16>>16,d=(b=this.L<<16|this.D&65535)/c|0;if(d!=d<<16>>16||8086==this.da&& --32768==d)return tk.call(this),a;this.Ba=d&65535;this.Za=b%c&65535}else{b=this.D;var c=this.L,d=a,e=0,f=0;0>d&&(d=-d|0,e=1-e);0>c&&(b=-b|0,c=~c+(b?0:1)|0,f=1,e=1-e);!gk.call(this,b,c,d)||this.Ba>2147483647+e||this.Za>2147483647+f?b=!1:(e&&(this.Ba=-this.Ba),f&&(this.Za=-this.Za),b=!0);if(!b)return tk.call(this),a;this.Ba|=0;this.Za|=0}this.vc=!0;this.A-=-1===this.C?this.B.ck:this.B.bk;this.N|=2;return a}],Ie=[function(a){var b=a+1|0;jg(this,a,1,b,190);this.A-=-1===this.C?this.B.Ef:this.B.Df;return b& -255},function(a){var b=a-1|0;jg(this,a,1,b,190,!0);this.A-=-1===this.C?this.B.Ef:this.B.Df;return b&255},Ni,Ni,Ni,Ni,Ni,Ni],Je=[function(a){var b=a+1|0;jg(this,a,1,b,this.Fb|62);this.A-=-1===this.C?this.B.Ef:this.B.Df;return b&this.R},function(a){var b=a-1|0;jg(this,a,1,b,this.Fb|62,!0);this.A-=-1===this.C?this.B.Ef:this.B.Df;return b&this.R},function(a){ve(this,A(this));C(this,a);this.A-=-1===this.C?this.B.Vj:this.B.Uj;this.N|=2;return a},function(a){if(-1===this.C)return Ni.call(this,a);this.sa= -this.Aa;pk.call(this,a,this.ja(this.C+this.V));this.A-=this.B.Sj;this.N|=2;this.sa=-1;return a},function(a){C(this,a);this.A-=-1===this.C?this.B.qk:this.B.pk;this.N|=2;return a},function(a){if(-1===this.C)return Ni.call(this,a);Ee(this,a,this.ja(this.C+this.V));this.A-=this.B.mk;this.N|=2;return a},function(a){var b=a;this.N&512&&(a=a-2&65535,80286>this.da&&(b=a));ve(this,b);this.A-=-1===this.C?this.B.Ic:this.B.Gk;this.N|=2;return a},Ni]; -function pf(){this.la.call(this,Zj);this.A-=-1===this.C?6:13}function qf(){this.za.call(this,Yj);this.A-=-1===this.C?12:19}var df=Array(256);df[0]=function(){16>(this.Ja(this.ea)&56)&&(this.N|=1);this.lb.call(this,this.sj,nk)};df[1]=function(){this.Ja(this.ea)&16||(this.N|=1);this.lb.call(this,fl,nk)};df[2]=function(){!(this.qa&1)||this.P&131072?y.call(this,6):this.la.call(this,Ui)};df[3]=function(){!(this.qa&1)||this.P&131072?y.call(this,6):this.la.call(this,$i)}; -df[5]=function(){this.Ma?y.call(this,13,0,0,!0):(Dg(this,this.ja(2054)),this.J=this.ja(2086),this.K=this.ja(2088),this.M=this.ja(2090),this.G=this.ja(2094),this.L=this.ja(2096),this.I=this.ja(2098),this.D=this.ja(2100),je(this.oa,2102,this.ja(2084)),je(this.Z,2108,this.ja(2082)),je(this.X,2114,this.ja(2080)),je(this.Da,2120,this.ja(2078)),De(this,this.ja(2072)),C(this,this.ja(2074)),ne(this,this.ja(2092)),this.Ib=this.ja(2126)|this.Ja(2128)<<16,this.Pc=this.Ib+this.ja(2130),this.Pb=this.ja(2138)| -this.Ja(2140)<<16,this.cd=this.Pb+this.ja(2142),je(this.Eb,2132,this.ja(2076)),je(this.ka,2144,this.ja(2070)),this.A-=195)};df[6]=function(){this.Ma?y.call(this,13,0):(this.qa&=-9,this.A-=2)};df[11]=Le;df[166]=Le;df[255]=Le;var B=[];B[5]=Le; -B[7]=function(){if(this.Ma)y.call(this,13,0,0,!0);else{var a=this.oa.ac(this.J&this.wa,204);if(-1!==a){ik.call(this,this.ia(a));var b=this.ia(a+168),c=(b&24576)>>13;De(this,this.ia(a+4),c);this.Ib=this.ia(a+112);this.Pc=this.Ib+this.ia(a+116);this.Pb=this.ia(a+100);this.cd=this.Pb+this.ia(a+104);he(this.Eb,this.ia(a+56),this.ia(a+120),this.ia(a+124),this.ia(a+128));he(this.ka,this.ia(a+52),this.ia(a+84),this.ia(a+88),this.ia(a+92));this.J=this.ia(a+12);this.K=this.ia(a+16);this.M=this.ia(a+20);this.G= -this.ia(a+28);this.L=this.ia(a+32);this.I=this.ia(a+36);this.D=this.ia(a+40);he(this.Ia,this.ia(a+60),this.ia(a+132),this.ia(a+136),this.ia(a+140));he(this.Ga,this.ia(a+64),this.ia(a+144),this.ia(a+148),this.ia(a+152));he(this.Da,this.ia(a+68),this.ia(a+156),this.ia(a+160),this.ia(a+164));he(this.X,this.ia(a+72),b,this.ia(a+172),this.ia(a+176));he(this.Z,this.ia(a+76),this.ia(a+180),this.ia(a+184),this.ia(a+188));he(this.oa,this.ia(a+80),this.ia(a+192),this.ia(a+196),this.ia(a+200));C(this,this.ia(a+ -8));ne(this,this.ia(a+24))}this.A-=122<<(a&3?1:0)}};B[16]=Nk;B[17]=Ok;B[18]=Pk;B[19]=Qk;B[32]=function(){if(this.Ma)y.call(this,13,0);else{var a,b=this.ra();switch((b&56)>>3){case 0:a=this.qa;break;case 2:a=this.Fd;break;case 3:a=this.Wc;break;default:ef.call(this);return}Df(this,b&7,a);this.A-=6}};B[33]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;4==b||5==b?ef.call(this):(Df(this,a&7,this.Qb[b]),this.A-=22)}}; -B[34]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=Cf(this,a&7);switch((a&56)>>3){case 0:ik.call(this,b);this.A-=10;break;case 2:this.Fd=b;this.A-=4;break;case 3:Fe.call(this,b);this.A-=5;break;default:ef.call(this)}}};B[35]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;4==b||5==b?ef.call(this):(a=Cf(this,a&7),a!=this.Qb[b]&&(bg(this,!1),this.Qb[b]=a,bg(this,!0)),this.A-=4>b?22:14)}}; -B[36]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;6>b?ef.call(this):(Df(this,a&7,this.fg[b]),this.A-=12)}};B[38]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;6>b?ef.call(this):(this.fg[b]=Cf(this,a&7),this.A-=12)}};B[128]=function(){var a=this.Fa();pg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[129]=function(){var a=this.Fa();pg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)}; -B[130]=function(){var a=this.Fa();kg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[131]=function(){var a=this.Fa();kg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[132]=function(){var a=this.Fa();ng(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[133]=function(){var a=this.Fa();ng(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[134]=function(){var a=this.Fa();kg(this)||ng(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra}; -B[135]=function(){var a=this.Fa();kg(this)||ng(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[136]=function(){var a=this.Fa();og(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[137]=function(){var a=this.Fa();og(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[138]=function(){var a=this.Fa();lg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[139]=function(){var a=this.Fa();lg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)}; -B[140]=function(){var a=this.Fa();!og(this)!=!pg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[141]=function(){var a=this.Fa();!og(this)==!pg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[142]=function(){var a=this.Fa();ng(this)||!og(this)!=!pg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[143]=function(){var a=this.Fa();ng(this)||!og(this)!=!pg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[144]=function(){jk.call(this,tj)}; -B[145]=function(){jk.call(this,tj)};B[146]=function(){jk.call(this,uj)};B[147]=function(){jk.call(this,vj)};B[148]=function(){jk.call(this,wj)};B[149]=function(){jk.call(this,xj)};B[150]=function(){jk.call(this,yj)};B[151]=function(){jk.call(this,zj)};B[152]=function(){jk.call(this,Aj)};B[153]=function(){jk.call(this,Bj)};B[154]=function(){jk.call(this,Cj)};B[155]=function(){jk.call(this,Dj)};B[156]=function(){jk.call(this,Ej)};B[157]=function(){jk.call(this,Fj)};B[158]=function(){jk.call(this,Gj)}; -B[159]=function(){jk.call(this,Hj)};B[160]=function(){se(this,this.Ga.U,this.V,2);this.A-=this.B.se};B[161]=function(){this.sa=this.Aa;var a=le(this);this.Ga.load(a);this.A-=this.B.nc;this.sa=-1};B[163]=function(){this.za.call(this,Fi);-1!==this.C&&(this.A-=6)};B[164]=function(){this.za.call(this,2==this.V?Ij:Kj);this.A-=-1===this.C?3:7};B[165]=function(){this.za.call(this,2==this.V?Mj:Nj);this.A-=-1===this.C?3:7};B[168]=function(){se(this,this.Ia.U,this.V,2);this.A-=this.B.se}; -B[169]=function(){this.sa=this.Aa;var a=le(this);this.Ia.load(a);this.A-=this.B.nc;this.sa=-1};B[171]=function(){this.za.call(this,Ii);-1!==this.C&&(this.A-=5)};B[172]=function(){this.za.call(this,2==this.V?Oj:Qj);this.A-=-1===this.C?3:7};B[173]=function(){this.za.call(this,2==this.V?Sj:Tj);this.A-=-1===this.C?3:7};B[175]=function(){this.la.call(this,2==this.V?Pi:Ri)};B[178]=function(){this.la.call(this,aj)};B[179]=function(){this.za.call(this,Hi);-1!==this.C&&(this.A-=5)}; -B[180]=function(){this.la.call(this,Yi)};B[181]=function(){this.la.call(this,Zi)}; -B[182]=function(){this.kc.call(this,cj);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|this.D&255;break;case 1:this.I=this.I&~this.R|this.I&255;break;case 2:this.L=this.L&~this.R|this.L&255;break;case 3:this.G=this.G&~this.R|this.G&255;break;case 4:this.Ac=this.Ac&~this.R|this.D>>8&255;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I>>8&255;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L>>8&255;this.L=this.xa;break;case 7:this.J=this.J&~this.R|this.G>>8&255,this.G=this.xa}this.A-= --1===this.C?3:6};B[183]=function(){qe(this,2);this.la.call(this,mj);switch(this.ga>>3&7){case 0:this.D=this.D&65535;break;case 1:this.I=this.I&65535;break;case 2:this.L=this.L&65535;break;case 3:this.G=this.G&65535;break;case 4:this.Ac=this.Ac&65535;break;case 5:this.M=this.M&65535;break;case 6:this.K=this.K&65535;break;case 7:this.J=this.J&65535}this.A-=-1===this.C?3:6};B[186]=function(){this.lb.call(this,gl,this.ra)};B[187]=function(){this.za.call(this,Gi);-1!==this.C&&(this.A-=5)}; -B[188]=function(){this.la.call(this,zi)};B[189]=function(){this.la.call(this,Ai)}; -B[190]=function(){this.kc.call(this,cj);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|(this.D&255)<<24>>24&this.R;break;case 1:this.I=this.I&~this.R|(this.I&255)<<24>>24&this.R;break;case 2:this.L=this.L&~this.R|(this.L&255)<<24>>24&this.R;break;case 3:this.G=this.G&~this.R|(this.G&255)<<24>>24&this.R;break;case 4:this.Ac=this.Ac&~this.R|this.D<<16>>24&this.R;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I<<16>>24&this.R;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L<<16>>24& -this.R;this.L=this.xa;break;case 7:this.J=this.J&~this.R|this.G<<16>>24&this.R,this.G=this.xa}this.A-=-1===this.C?3:6};B[191]=function(){qe(this,2);this.la.call(this,mj);switch(this.ga>>3&7){case 0:this.D=this.D<<16>>16;break;case 1:this.I=this.I<<16>>16;break;case 2:this.L=this.L<<16>>16;break;case 3:this.G=this.G<<16>>16;break;case 4:this.Ac=this.Ac<<16>>16;break;case 5:this.M=this.M<<16>>16;break;case 6:this.K=this.K<<16>>16;break;case 7:this.J=this.J<<16>>16}this.A-=-1===this.C?3:6}; -var cg=[function(){this.A-=2+(-1===this.C?0:1);return this.Eb.U},function(){this.A-=2+(-1===this.C?0:1);return this.ka.U},function(a){this.N|=2;this.Eb.load(a);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;-1!==this.ka.load(a)&&(this.gb(this.ka.Lb+4,this.ka.nb|=512),this.ka.type|=512);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.xb.load(a)&&2048!=(this.xb.nb&2560)&&(this.xb.qc>=this.Ma&&this.xb.qc>=(a&3)||7168==(this.xb.nb&7168)))return Cg(this), -a;yg(this);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.xb.load(a)&&512==(this.xb.nb&2560)&&this.xb.qc>=this.Ma&&this.xb.qc>=(a&3))return Cg(this),a;yg(this);return a},Ni,Ni],Ke=[bf,bf,bf,bf,bf,bf,Ni,Ni],fl=[function(a){if(-1===this.C)y.call(this,6);else{a=this.Pc-this.Ib;var b=this.Ib;80286==this.da?b|=-16777216:80386<=this.da&&2!=this.V&&(a|=b<<16);this.ab(this.C+2,b);this.A-=11}return a},function(a){if(-1===this.C)y.call(this,6);else{a=this.cd-this.Pb;var b=this.Pb; -80286==this.da?b|=-16777216:80386<=this.da&&2!=this.V&&(a|=b<<16);this.ab(this.C+2,b);this.A-=12}return a},function(a){-1===this.C||this.P&131072?y.call(this,6):(this.Ib=this.ia(this.C+2)&(this.R|this.R<<8),a&=65535,this.Pc=this.Ib+a,this.N|=2,this.A-=11);return a},function(a){-1===this.C||this.P&131072?y.call(this,6):(this.Pb=this.ia(this.C+2)&(this.R|this.R<<8),a&=65535,this.cd=this.Pb+a,this.N|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.C?0:1);return this.qa},Ni,function(a){this.P& -131072?y.call(this,6):(Dg(this,a),this.A-=-1===this.C?3:6,this.N|=2);return a},Ni],gl=[Ni,Ni,Ni,Ni,Bi,Ei,Di,Ci]; -function hl(a){rb.call(this,"ChipSet",a,32768);var b=a.model;b&&!il[b]&&mb("Unrecognized ChipSet model: "+b);this.da=il[b]||jl;this.B=[];b=kl(a[ll]);this.B[0]=[b,b];null==b&&(this.N=[360,360],(b=a.floppies)&&b.length&&(this.N=b),ml(this,nl,this.N.length),ml(this,ol,a.monitor||(this.da=mh&&(this.za=this.ha=2);this.P=a.scaleTimers||!1;this.Ma=a.rtcDate;this.Ga=!1;a.sound&&(this.Ea=this.ka=null,window&&(this.Ea=window.AudioContext|| -window.webkitAudioContext),this.Ea&&(this.ka=new this.Ea));this.reset(!0);Ob(this)}ca(hl,rb);l=hl.prototype;l.Cb=function(a,b,c){switch(b){case ll:return this.na[b]=c,ql(this,0,b),!0;case pl:if((this.da|0)==rl||this.da==sl)return this.na[b]=c,ql(this,1,b),!0;break;case tl:return this.na[b]=c,!0}return!1}; -l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.pa=a;this.Tc=bc(a,"FPU");ml(this,ul,this.Tc?1:0,!0);this.C=bc(a,"Keyboard");this.Ba=c.T.xd/vl;Tc(b,this,wl);Xc(b,this,xl);this.dathis.lc)y.call(this,13,0);else{var a=this.B.ik;this.Kc=-1;rk.call(this,3,null,a)}},function(){var a=this.ra();if(this.P&131072&&3>this.lc)y.call(this,13,0);else{var b;a:{b=this.Zf[a];if(void 0!==b)for(var c=0;cthis.lc)y.call(this,13,0);else{var a=this.B.jk;this.Kc=-1;rk.call(this,4,null,a)}else this.A-=this.B.kk},function(){if(this.P&131072&&3>this.lc)y.call(this,13,0);else{this.Lc=this.X.U;this.sa=this.Aa;this.A-=this.B.gk;if(this.qa&1&&this.P&16384){var a=this.ja(this.ka.ua+0);pe(this.Z,a,!1)}else{var a=this.Ma,b=me(this),c=me(this),d=me(this);if(this.P&131072)d=d&131071|this.P&-131072;else if(d&131072){var e=me(this),f=me(this),g=me(this),h=me(this),k=me(this),m=me(this);qe(this,!0,!0);ne(this, +f);oe(this,e);ve(this,g);ue(this,h);this.Ga.load(k);this.Ia.load(m)}null!=Fe(this,b,c,!1)&&(Ee(this,d,a),this.bg&&bg(this,this.ea))}this.Lc=this.sa=-1}},function(){this.md.call(this,Sk,lk)},function(){this.lb.call(this,2==this.V?Tk:Uk,lk)},function(){this.md.call(this,Sk,mk)},function(){this.lb.call(this,2==this.V?Tk:Uk,mk)},function(){var a=this.ra();if(a){var b=this.D&255;this.D=this.D&-65536|b/a<<8|b%a;rg(this,this.D,128);this.A-=this.B.Mj}else uk.call(this)},function(){var a=this.D&255,b=(this.D>> +8&255)*this.ra()|0,c=a+b|0;this.D=this.D&-65536|c&255;kg(this,a,b,c,191);this.A-=this.B.Lj},function(){this.D=this.D&-256|(lg(this)?255:0);this.A-=2},function(){this.D=this.D&-256|Hg(this,this.Ea,this.G+(this.D&255));this.A-=this.B.Lk},function(){Zk.call(this,216)},function(){Zk.call(this,217)},function(){Zk.call(this,218)},function(){Zk.call(this,219)},function(){Zk.call(this,220)},function(){Zk.call(this,221)},function(){Zk.call(this,222)},function(){Zk.call(this,223)},function(){var a=this.S(), +b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b&&!og(this)?(C(this,A(this)+a),this.A-=this.B.sk):this.A-=this.B.Kh},function(){var a=this.S(),b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b&&og(this)?(C(this,A(this)+a),this.A-=this.B.Lh):this.A-=this.B.Mh},function(){var a=this.S(),b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b?(C(this,A(this)+a),this.A-=this.B.rk):this.A-=this.B.Kh},function(){var a=this.S();this.I&this.wa?this.A-=this.B.Mh:(C(this,A(this)+a),this.A-=this.B.Lh)},function(){var a=this.ra(); +Fg(this,a,1,!0)&&(this.D=this.D&-256|Uc(this.ma,a,1,this.ea-2)&255,this.A-=this.B.Fh)},function(){var a=this.ra();Fg(this,a,this.V,!0)&&(this.D=this.D&~this.R|Uc(this.ma,a,this.V,this.ea-2)&this.R,this.A-=this.B.Fh)},function(){var a=this.ra();Fg(this,a,1,!1)&&(Yc(this.ma,a,1,this.D&255,this.ea-2),this.A-=this.B.Th)},function(){var a=this.ra();Fg(this,a,this.V,!1)&&(Yc(this.ma,a,this.V,this.D&this.R,this.ea-2),this.A-=this.B.Th)},function(){var a=this.Fa(),b=A(this),a=b+a;we(this,b);C(this,a);this.A-= +this.B.Qj},function(){var a=this.Fa();C(this,A(this)+a);this.A-=this.B.Gh},function(){Fe(this,this.Fa(),Pg(this));this.A-=this.B.mk},function(){var a=this.S();C(this,A(this)+a);this.A-=this.B.Gh},function(){var a=this.L&65535;Fg(this,a,1,!0)&&(this.D=this.D&-256|Uc(this.ma,a,1,this.ea-1)&255,this.A-=this.B.Eh)},function(){var a=this.L&65535;Fg(this,a,this.V,!0)&&(this.D=this.D&~this.R|Uc(this.ma,a,this.V,this.ea-1)&this.R,this.A-=this.B.Eh)},function(){var a=this.L&65535;Fg(this,a,1,!1)&&(Yc(this.ma, +a,1,this.D&255,this.ea-1),this.A-=this.B.Sh)},function(){var a=this.L&65535;Fg(this,a,2,!1)&&(Yc(this.ma,a,this.V,this.D&this.R,this.ea-1),this.A-=this.B.Sh)},$k,$k,function(){this.N|=132;this.A-=this.B.ad},function(){this.N|=68;this.A-=this.B.ad},function(){this.P&131072?y.call(this,13,0):(this.Ya|=4,this.A-=2,this.ca&&t(this,-2147483648)?(jg(this),this.ca.Kb()):this.P&512||(this.ca&&jg(this),this.Kb()))},function(){lg(this)?tg(this):sg(this);this.A-=2},function(){this.vc=!1;this.md.call(this,el, +ok);this.vc&&(this.D=this.D&~this.R|this.Ba&this.R)},function(){this.vc=!1;this.lb.call(this,fl,ok);this.vc&&(this.D=this.D&~this.R|this.Ba&this.R,this.L=this.L&~this.R|this.Za&this.R)},function(){tg(this);this.A-=2},function(){sg(this);this.A-=2},function(){this.Ma>this.lc?y.call(this,13,0):(this.P&=-513,this.A-=this.B.Oj)},function(){this.Ma>this.lc?y.call(this,13,0):(this.P|=512,this.N|=4,this.A-=2)},function(){this.P&=-1025;this.A-=2},function(){this.P|=1024;this.A-=2},function(){this.md.call(this, +Je,ok)},function(){this.lb.call(this,Ke,ok)}],Nk=[ui,qj,si,sj,wi,Vj,dk,Ki],al=[vi,rj,ti,tj,xi,Wj,ek,Li],bl=[function(a,b){this.A-=-1===this.F?this.B.nc:this.B.Dk;return b},Ni,Ni,Ni,Ni,Ni,Ni,Ni],cl=[function(a,b){this.A-=-1===this.F?this.B.vk:this.B.tk;return b},Oi,Oi,Oi,Oi,Oi,Oi,Oi],Sk=[function(a,b){var c=a;if(b&=this.Ta){var d;(b&=7)?(d=a<>8-b)&255):d=a<<7;wg(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Ta){var d;(b&=7)?(d=a<<8-b,c=(a>>>b|d)&255):d=a;wg(this,c,d,128)}return c}, +function(a,b){var c=a;if(b&=this.Ta){var d=xg(this);(b%=9)?(c=(a<>9-b)&255,d=a<>b|d<<8-b|a<<9-b)&255,d=a<<8-b):d<<=7;wg(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Ta){var d=0;8>>b-1,a=b>>>1&255,rg(this,a,128,b&1,a&128);return a},Oi,function(a,b){if(b&=this.Ta)9>24>>b-1,a=b>>1&255,rg(this,a,128,b&1);return a}],Tk=[function(a,b){var c=a;if(b&=this.Ta){var d;(b&=15)?(d=a<>16-b)&65535):d=a<<15;wg(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ta){var d;(b&=15)?(d=a<<16-b,c=(a>>>b|d)&65535):d=a;wg(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ta){var d=xg(this);(b%=17)?(c=(a<>17-b)&65535,d=a<>b|d<<16-b|a<<17-b)&65535,d=a<<16-b):d<<=15;wg(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ta){var d=0;16>>b-1,a=b>>>1&65535,rg(this,a,32768,b&1,a&32768);return a},Oi,function(a,b){if(b&=this.Ta)17>16>>b-1,a=b>>1&65535,rg(this,a,32768,b&1);return a}],Uk=[function(a,b){var c=a;if(b&=this.Ta)c=a<>>32-b,wg(this,c,a<>>b|d;wg(this,c,d,-2147483648)}return c},function(a,b){var c=a;if(b&=this.Ta)c=xg(this),c=a<>>32-b>>>1,wg(this,c,a<>>b|c<<32-b|a<<32-b<<1,wg(this,c,a<<32-b,-2147483648);return c},function(a,b){var c=a;if(b&=this.Ta)a<<=b-1,c=a<<1,rg(this,c,-2147483648,a&-2147483648,(c^a)&-2147483648);return c},function(a,b){if(b&=this.Ta)b=a>>>b-1,a=b>>>1,rg(this,a,-2147483648, +b&1,a&-2147483648);return a},Oi,function(a,b){if(b&=this.Ta)b=a>>b-1,a=b>>1,rg(this,a,-2147483648,b&1);return a}],el=[function(a,b){b=this.ra();rg(this,a&b,128);this.A-=-1===this.C?this.B.di:this.B.ci;this.N|=2;return a},Oi,function(a){this.A-=-1===this.C?this.B.Ff:this.B.Ef;return a^255},function(a){var b=-a|0;kg(this,0,a,b,191,!0);this.A-=-1===this.C?this.B.Ff:this.B.Ef;return b&255},function(a){this.Ba=(this.D&255)*a&65535;this.Ba&65280?(sg(this),ug(this)):(tg(this),vg(this));this.vc=!0;this.A-= +-1===this.C?this.B.zk:this.B.yk;this.N|=2;return a},function(a){var b=(this.D<<24>>24)*(a<<24>>24)|0;this.Ba=b&65535;127b?(sg(this),ug(this)):(tg(this),vg(this));this.vc=!0;this.A-=-1===this.C?this.B.dk:this.B.ck;this.N|=2;return a},function(a,b){if(!a)return uk.call(this),a;var c=(b=this.D&65535)/a;if(255>24,d= +(b=this.D<<16>>16)/c|0;if(d!=d<<24>>24||8086==this.da&&-128==d)return uk.call(this),a;this.Ba=d&255|(b%c&255)<<8;this.vc=!0;this.A-=-1===this.C?this.B.$j:this.B.Zj;this.N|=2;return a}],fl=[function(a,b){b=this.Fa();rg(this,a&b,this.Fb);this.A-=-1===this.C?this.B.di:this.B.ci;this.N|=2;return a},Oi,function(a){this.A-=-1===this.C?this.B.Ff:this.B.Ef;return a^this.R},function(a){var b=-a|0;kg(this,0,a,b,this.Fb|63,!0);this.A-=-1===this.C?this.B.Ff:this.B.Ef;return b&this.R},function(a,b){2==this.V? +(b=this.D&65535,b=b*a|0,this.Ba=b&65535,this.Za=b>>16&65535):(Ui.call(this,a,this.D),80563==this.Sd&&68657152==this.D&&129==a&&(this.Za=0));this.Za?(sg(this),ug(this)):(tg(this),vg(this));this.vc=!0;this.A-=-1===this.C?this.B.Bk:this.B.Ak;this.N|=2;return a},function(a,b){2==this.V?(b=this.D&65535,b=(b<<16>>16)*(a<<16>>16)|0,this.Ba=b&65535,this.Za=b>>16&65535,b=32767b):(Ti.call(this,a,this.D),b=this.Za!=this.Ba>>31);b?(sg(this),ug(this)):(tg(this),vg(this));this.vc=!0;this.A-=-1===this.C? +this.B.fk:this.B.ek;this.N|=2;return a},function(a,b){if(2==this.V){if(!a)return uk.call(this),a;b=65536*(this.L&65535)+(this.D&65535);var c=b/a;if(65536<=c)return uk.call(this),a;this.Ba=c&65535;this.Za=b%a&65535}else{if(!hk.call(this,this.D,this.L,a))return uk.call(this),a;this.Ba|=0;this.Za|=0}this.vc=!0;this.A-=-1===this.C?this.B.Yj:this.B.Xj;this.N|=2;return a},function(a,b){if(2==this.V){if(!a)return uk.call(this),a;var c=a<<16>>16,d=(b=this.L<<16|this.D&65535)/c|0;if(d!=d<<16>>16||8086==this.da&& +-32768==d)return uk.call(this),a;this.Ba=d&65535;this.Za=b%c&65535}else{b=this.D;var c=this.L,d=a,e=0,f=0;0>d&&(d=-d|0,e=1-e);0>c&&(b=-b|0,c=~c+(b?0:1)|0,f=1,e=1-e);!hk.call(this,b,c,d)||this.Ba>2147483647+e||this.Za>2147483647+f?b=!1:(e&&(this.Ba=-this.Ba),f&&(this.Za=-this.Za),b=!0);if(!b)return uk.call(this),a;this.Ba|=0;this.Za|=0}this.vc=!0;this.A-=-1===this.C?this.B.bk:this.B.ak;this.N|=2;return a}],Je=[function(a){var b=a+1|0;kg(this,a,1,b,190);this.A-=-1===this.C?this.B.Df:this.B.Cf;return b& +255},function(a){var b=a-1|0;kg(this,a,1,b,190,!0);this.A-=-1===this.C?this.B.Df:this.B.Cf;return b&255},Oi,Oi,Oi,Oi,Oi,Oi],Ke=[function(a){var b=a+1|0;kg(this,a,1,b,this.Fb|62);this.A-=-1===this.C?this.B.Df:this.B.Cf;return b&this.R},function(a){var b=a-1|0;kg(this,a,1,b,this.Fb|62,!0);this.A-=-1===this.C?this.B.Df:this.B.Cf;return b&this.R},function(a){we(this,A(this));C(this,a);this.A-=-1===this.C?this.B.Uj:this.B.Tj;this.N|=2;return a},function(a){if(-1===this.C)return Oi.call(this,a);this.sa= +this.Aa;qk.call(this,a,this.ja(this.C+this.V));this.A-=this.B.Rj;this.N|=2;this.sa=-1;return a},function(a){C(this,a);this.A-=-1===this.C?this.B.pk:this.B.nk;this.N|=2;return a},function(a){if(-1===this.C)return Oi.call(this,a);Fe(this,a,this.ja(this.C+this.V));this.A-=this.B.lk;this.N|=2;return a},function(a){var b=a;this.N&512&&(a=a-2&65535,80286>this.da&&(b=a));we(this,b);this.A-=-1===this.C?this.B.Jc:this.B.Fk;this.N|=2;return a},Oi]; +function qf(){this.la.call(this,ak);this.A-=-1===this.C?6:13}function rf(){this.za.call(this,Zj);this.A-=-1===this.C?12:19}var ef=Array(256);ef[0]=function(){16>(this.Ja(this.ea)&56)&&(this.N|=1);this.lb.call(this,this.rj,ok)};ef[1]=function(){this.Ja(this.ea)&16||(this.N|=1);this.lb.call(this,gl,ok)};ef[2]=function(){!(this.qa&1)||this.P&131072?y.call(this,6):this.la.call(this,Vi)};ef[3]=function(){!(this.qa&1)||this.P&131072?y.call(this,6):this.la.call(this,aj)}; +ef[5]=function(){this.Ma?y.call(this,13,0,0,!0):(Eg(this,this.ja(2054)),this.J=this.ja(2086),this.K=this.ja(2088),this.M=this.ja(2090),this.G=this.ja(2094),this.L=this.ja(2096),this.I=this.ja(2098),this.D=this.ja(2100),ke(this.oa,2102,this.ja(2084)),ke(this.Z,2108,this.ja(2082)),ke(this.X,2114,this.ja(2080)),ke(this.Da,2120,this.ja(2078)),Ee(this,this.ja(2072)),C(this,this.ja(2074)),oe(this,this.ja(2092)),this.Ib=this.ja(2126)|this.Ja(2128)<<16,this.Hc=this.Ib+this.ja(2130),this.Nb=this.ja(2138)| +this.Ja(2140)<<16,this.bd=this.Nb+this.ja(2142),ke(this.Eb,2132,this.ja(2076)),ke(this.ka,2144,this.ja(2070)),this.A-=195)};ef[6]=function(){this.Ma?y.call(this,13,0):(this.qa&=-9,this.A-=2)};ef[11]=Me;ef[166]=Me;ef[255]=Me;var B=[];B[5]=Me; +B[7]=function(){if(this.Ma)y.call(this,13,0,0,!0);else{var a=this.oa.ac(this.J&this.wa,204);if(-1!==a){jk.call(this,this.ia(a));var b=this.ia(a+168),c=(b&24576)>>13;Ee(this,this.ia(a+4),c);this.Ib=this.ia(a+112);this.Hc=this.Ib+this.ia(a+116);this.Nb=this.ia(a+100);this.bd=this.Nb+this.ia(a+104);ie(this.Eb,this.ia(a+56),this.ia(a+120),this.ia(a+124),this.ia(a+128));ie(this.ka,this.ia(a+52),this.ia(a+84),this.ia(a+88),this.ia(a+92));this.J=this.ia(a+12);this.K=this.ia(a+16);this.M=this.ia(a+20);this.G= +this.ia(a+28);this.L=this.ia(a+32);this.I=this.ia(a+36);this.D=this.ia(a+40);ie(this.Ia,this.ia(a+60),this.ia(a+132),this.ia(a+136),this.ia(a+140));ie(this.Ga,this.ia(a+64),this.ia(a+144),this.ia(a+148),this.ia(a+152));ie(this.Da,this.ia(a+68),this.ia(a+156),this.ia(a+160),this.ia(a+164));ie(this.X,this.ia(a+72),b,this.ia(a+172),this.ia(a+176));ie(this.Z,this.ia(a+76),this.ia(a+180),this.ia(a+184),this.ia(a+188));ie(this.oa,this.ia(a+80),this.ia(a+192),this.ia(a+196),this.ia(a+200));C(this,this.ia(a+ +8));oe(this,this.ia(a+24))}this.A-=122<<(a&3?1:0)}};B[16]=Ok;B[17]=Pk;B[18]=Qk;B[19]=Rk;B[32]=function(){if(this.Ma)y.call(this,13,0);else{var a,b=this.ra();switch((b&56)>>3){case 0:a=this.qa;break;case 2:a=this.rd;break;case 3:a=this.Vc;break;default:ff.call(this);return}Ef(this,b&7,a);this.A-=6}};B[33]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;4==b||5==b?ff.call(this):(Ef(this,a&7,this.Ob[b]),this.A-=22)}}; +B[34]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=Df(this,a&7);switch((a&56)>>3){case 0:jk.call(this,b);this.A-=10;break;case 2:this.rd=b;this.A-=4;break;case 3:Ge.call(this,b);this.A-=5;break;default:ff.call(this)}}};B[35]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;4==b||5==b?ff.call(this):(a=Df(this,a&7),a!=this.Ob[b]&&(cg(this,!1),this.Ob[b]=a,cg(this,!0)),this.A-=4>b?22:14)}}; +B[36]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;6>b?ff.call(this):(Ef(this,a&7,this.eg[b]),this.A-=12)}};B[38]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;6>b?ff.call(this):(this.eg[b]=Df(this,a&7),this.A-=12)}};B[128]=function(){var a=this.Fa();qg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[129]=function(){var a=this.Fa();qg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)}; +B[130]=function(){var a=this.Fa();lg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[131]=function(){var a=this.Fa();lg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[132]=function(){var a=this.Fa();og(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[133]=function(){var a=this.Fa();og(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[134]=function(){var a=this.Fa();lg(this)||og(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra}; +B[135]=function(){var a=this.Fa();lg(this)||og(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[136]=function(){var a=this.Fa();pg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[137]=function(){var a=this.Fa();pg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[138]=function(){var a=this.Fa();mg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[139]=function(){var a=this.Fa();mg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)}; +B[140]=function(){var a=this.Fa();!pg(this)!=!qg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[141]=function(){var a=this.Fa();!pg(this)==!qg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[142]=function(){var a=this.Fa();og(this)||!pg(this)!=!qg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[143]=function(){var a=this.Fa();og(this)||!pg(this)!=!qg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[144]=function(){kk.call(this,uj)}; +B[145]=function(){kk.call(this,uj)};B[146]=function(){kk.call(this,vj)};B[147]=function(){kk.call(this,wj)};B[148]=function(){kk.call(this,xj)};B[149]=function(){kk.call(this,yj)};B[150]=function(){kk.call(this,zj)};B[151]=function(){kk.call(this,Aj)};B[152]=function(){kk.call(this,Bj)};B[153]=function(){kk.call(this,Cj)};B[154]=function(){kk.call(this,Dj)};B[155]=function(){kk.call(this,Ej)};B[156]=function(){kk.call(this,Fj)};B[157]=function(){kk.call(this,Gj)};B[158]=function(){kk.call(this,Hj)}; +B[159]=function(){kk.call(this,Ij)};B[160]=function(){te(this,this.Ga.U,this.V,2);this.A-=this.B.xe};B[161]=function(){this.sa=this.Aa;var a=me(this);this.Ga.load(a);this.A-=this.B.nc;this.sa=-1};B[163]=function(){this.za.call(this,Gi);-1!==this.C&&(this.A-=6)};B[164]=function(){this.za.call(this,2==this.V?Jj:Lj);this.A-=-1===this.C?3:7};B[165]=function(){this.za.call(this,2==this.V?Nj:Oj);this.A-=-1===this.C?3:7};B[168]=function(){te(this,this.Ia.U,this.V,2);this.A-=this.B.xe}; +B[169]=function(){this.sa=this.Aa;var a=me(this);this.Ia.load(a);this.A-=this.B.nc;this.sa=-1};B[171]=function(){this.za.call(this,Ji);-1!==this.C&&(this.A-=5)};B[172]=function(){this.za.call(this,2==this.V?Pj:Rj);this.A-=-1===this.C?3:7};B[173]=function(){this.za.call(this,2==this.V?Tj:Uj);this.A-=-1===this.C?3:7};B[175]=function(){this.la.call(this,2==this.V?Qi:Si)};B[178]=function(){this.la.call(this,bj)};B[179]=function(){this.za.call(this,Ii);-1!==this.C&&(this.A-=5)}; +B[180]=function(){this.la.call(this,Zi)};B[181]=function(){this.la.call(this,$i)}; +B[182]=function(){this.kc.call(this,mj);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|this.D&255;break;case 1:this.I=this.I&~this.R|this.I&255;break;case 2:this.L=this.L&~this.R|this.L&255;break;case 3:this.G=this.G&~this.R|this.G&255;break;case 4:this.zc=this.zc&~this.R|this.D>>8&255;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I>>8&255;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L>>8&255;this.L=this.xa;break;case 7:this.J=this.J&~this.R|this.G>>8&255,this.G=this.xa}this.A-= +-1===this.C?3:6};B[183]=function(){re(this,2);this.la.call(this,nj);switch(this.ga>>3&7){case 0:this.D=this.D&65535;break;case 1:this.I=this.I&65535;break;case 2:this.L=this.L&65535;break;case 3:this.G=this.G&65535;break;case 4:this.zc=this.zc&65535;break;case 5:this.M=this.M&65535;break;case 6:this.K=this.K&65535;break;case 7:this.J=this.J&65535}this.A-=-1===this.C?3:6};B[186]=function(){this.lb.call(this,hl,this.ra)};B[187]=function(){this.za.call(this,Hi);-1!==this.C&&(this.A-=5)}; +B[188]=function(){this.la.call(this,Ai)};B[189]=function(){this.la.call(this,Bi)}; +B[190]=function(){this.kc.call(this,mj);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|(this.D&255)<<24>>24&this.R;break;case 1:this.I=this.I&~this.R|(this.I&255)<<24>>24&this.R;break;case 2:this.L=this.L&~this.R|(this.L&255)<<24>>24&this.R;break;case 3:this.G=this.G&~this.R|(this.G&255)<<24>>24&this.R;break;case 4:this.zc=this.zc&~this.R|this.D<<16>>24&this.R;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I<<16>>24&this.R;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L<<16>>24& +this.R;this.L=this.xa;break;case 7:this.J=this.J&~this.R|this.G<<16>>24&this.R,this.G=this.xa}this.A-=-1===this.C?3:6};B[191]=function(){re(this,2);this.la.call(this,nj);switch(this.ga>>3&7){case 0:this.D=this.D<<16>>16;break;case 1:this.I=this.I<<16>>16;break;case 2:this.L=this.L<<16>>16;break;case 3:this.G=this.G<<16>>16;break;case 4:this.zc=this.zc<<16>>16;break;case 5:this.M=this.M<<16>>16;break;case 6:this.K=this.K<<16>>16;break;case 7:this.J=this.J<<16>>16}this.A-=-1===this.C?3:6}; +var dg=[function(){this.A-=2+(-1===this.C?0:1);return this.Eb.U},function(){this.A-=2+(-1===this.C?0:1);return this.ka.U},function(a){this.N|=2;this.Eb.load(a);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;-1!==this.ka.load(a)&&(this.gb(this.ka.Lb+4,this.ka.nb|=512),this.ka.type|=512);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.ub.load(a)&&2048!=(this.ub.nb&2560)&&(this.ub.qc>=this.Ma&&this.ub.qc>=(a&3)||7168==(this.ub.nb&7168)))return Dg(this), +a;zg(this);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.ub.load(a)&&512==(this.ub.nb&2560)&&this.ub.qc>=this.Ma&&this.ub.qc>=(a&3))return Dg(this),a;zg(this);return a},Oi,Oi],Le=[cf,cf,cf,cf,cf,cf,Oi,Oi],gl=[function(a){if(-1===this.C)y.call(this,6);else{a=this.Hc-this.Ib;var b=this.Ib;80286==this.da?b|=-16777216:80386<=this.da&&2!=this.V&&(a|=b<<16);this.ab(this.C+2,b);this.A-=11}return a},function(a){if(-1===this.C)y.call(this,6);else{a=this.bd-this.Nb;var b=this.Nb; +80286==this.da?b|=-16777216:80386<=this.da&&2!=this.V&&(a|=b<<16);this.ab(this.C+2,b);this.A-=12}return a},function(a){-1===this.C||this.P&131072?y.call(this,6):(this.Ib=this.ia(this.C+2)&(this.R|this.R<<8),a&=65535,this.Hc=this.Ib+a,this.N|=2,this.A-=11);return a},function(a){-1===this.C||this.P&131072?y.call(this,6):(this.Nb=this.ia(this.C+2)&(this.R|this.R<<8),a&=65535,this.bd=this.Nb+a,this.N|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.C?0:1);return this.qa},Oi,function(a){this.P& +131072?y.call(this,6):(Eg(this,a),this.A-=-1===this.C?3:6,this.N|=2);return a},Oi],hl=[Oi,Oi,Oi,Oi,Ci,Fi,Ei,Di]; +function il(a){rb.call(this,"ChipSet",a,32768);var b=a.model;b&&!jl[b]&&mb("Unrecognized ChipSet model: "+b);this.da=jl[b]||kl;this.B=[];b=ll(a[ml]);this.B[0]=[b,b];null==b&&(this.N=[360,360],(b=a.floppies)&&b.length&&(this.N=b),nl(this,ol,this.N.length),nl(this,pl,a.monitor||(this.da=nh&&(this.za=this.ha=2);this.P=a.scaleTimers||!1;this.Ma=a.rtcDate;this.Ga=!1;a.sound&&(this.Ea=this.ka=null,window&&(this.Ea=window.AudioContext|| +window.webkitAudioContext),this.Ea&&(this.ka=new this.Ea));this.reset(!0);Ob(this)}ca(il,rb);l=il.prototype;l.Cb=function(a,b,c){switch(b){case ml:return this.na[b]=c,rl(this,0,b),!0;case ql:if((this.da|0)==sl||this.da==tl)return this.na[b]=c,rl(this,1,b),!0;break;case ul:return this.na[b]=c,!0}return!1}; +l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.pa=a;this.Ic=bc(a,"FPU");nl(this,vl,this.Ic?1:0,!0);this.C=bc(a,"Keyboard");this.Ba=c.T.zd/wl;Tc(b,this,xl);Xc(b,this,yl);this.da=mh){this.D=Ul;this.L=0;this.K=Vl;this.oa=0;this.M=Wl|Xl;512<=Yl(this)&&(this.M|=Zl);+$l(this,ol,void 0)==am&&(this.M|=bm);(this.da|0)==El&&(this.M=this.M|cm|dm);this.qa= -em|fm;this.X=Array(8);this.W=0;a&&(this.A=Array(Jl));gm(this,this.Ma);for(a=hm;a<=im;a++)this.A[a]=0;for(a=jm;ac?c=c?c:12:c=(c-=12)?c+128:140,d=!0);a.A[Yd]&an||(d&&128>8} -l.save=function(){var a=new dg(this);a.set(0,[this.B]);for(var b=[],c=0;c=mh&&(a.set(5,[this.D,this.L,this.K,this.oa,this.M,this.qa]),a.set(6,[this.X[7],this.X,this.W,this.A,this.la,this.Z]));return a.data()}; -l.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.B=b[0]:(this.B[0][0]=b[0],this.B[1][0]=b[1]&15,this.B[0][1]=b[2],this.B[1][1]=b[3]&15);Ml(this);b=a[1];for(c=0;c=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='
'+f+"
\n"}e.innerHTML=d;mn(a,b,c,!0)}function nn(a,b,c){if(b=(a=on[a.da|0])&&a[b])for(var d in b)if(a=b[d],a.yc&1<g.qb[0]&&(g.qb[0]=255,g.qb[1]--,0>g.qb[1]&&(g.qb[1]=255)));return h}function Cn(a,b,c,d,e,f){var g=a.F[b];t(a,768)&&w(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.zb+"]",null,!0);a=g.oc[c];a.qb[g.zb]=a.pc[g.zb]=e;g.zb^=1}function Dn(a,b,c,d){var e=a.F[b],f=e.Mb|En;e.Mb&=~Fn;t(a,768)&&w(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f} -function Gn(a,b,c,d,e){var f=a.F[b];t(a,768)&&w(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Mb=f.Mb&~(16<>2].oc[b&3],c,d,e)}function Kn(a,b,c){b=a.F[b>>2].oc[b&3];b.og&&b.ih&&b.Eg?(c&&(b.done=c),b.oe||Un(a,b,!0)):c&&c(!0)} -function Un(a,b,c){c&&(b.count=b.qb[1]<<8|b.qb[0],b.type=b.mode&Vn,b.wj=b.pg=!1);for(var d=!1;0<=b.count&&(c=b.jg<<16|b.ub[1]<<8|b.ub[0],b.type==Wn?(d=!0,function(c){b.ih.call(b.og,b.Eg,-1,function(e,g){0>e&&(b.wj||(b.wj=!0),e=255);b.oe||a.ma.fc(c,e);(d=g)&&setTimeout(function(){Xn(b)||Un(a,b)},0)})}(c)):b.type==Yn?(c=a.ma.Ja(c),0>b.ih.call(b.og,b.Eg,c)&&(b.pg=!0)):b.type!=Zn&&(b.pg=!0)),!d&&!Xn(b););} -function Xn(a){if(!a.pg&&0<=--a.count&&(a.mode&$n?(a.ub[0]--,0>a.ub[0]&&(a.ub[0]=255,a.ub[1]--,0>a.ub[1]&&(a.ub[1]=255))):(a.ub[0]++,255>3];b=1<<(b&7);d.$b&b||(d.$b|=b,d.Ye=c||0,po(a))}function nh(a,b){var c=a.hc[b>>3];b=1<<(b&7);c.$b&b&&(c.$b&=~b,po(a))}function po(a,b){var c,d=-1;1>=1),Nd(a.H,e))),b==Co&&c==Go&&en(a))}function Ho(a,b,c,d){w(a,c,null,d,"PIT"+b+".CTRL",null,2048);return b?a.va:a.sa} -function Io(a,b,c,d,e){w(a,c,d,e,"PIT"+b+".CTRL",null,2048);e=0;c=d&Jo;b?(e=3,a.va=d):a.sa=d;if(c==Ko){if(!(d&Lo))for(c=0;2>=c;c++)if(d&Mo<=c;c++)d&Mo<>=Ro;var f=d&So,g=d&To;d&=Uo;if(d==Vo)Qo(a,e+c);else{e+=c;var h=a.G[e];h.Rf=d;h.mode=g;h.dh=f;h.pc=[0,0];h.qb=[0,0];h.ke=[0,0];h.gd=!1;h.Oe=!1;h.me=!1;h.Se=!1;yo(a,e);b==Co&&c==Do&&nh(a,Eo);b==Co&&c==Go&&255==a.hc[0].sd&& -a.J==(Wo|Xo|Yo|Zo)&&(b=a.G[0],b.Mc[0]=b.pc[0],b.Mc[1]=b.pc[1],b.jd=Kd(a.H,a.P))}}}function Fo(a,b){a=a.G[b];(b=a.pc[1]<<8|a.pc[0])||(b=1==a.ad?256:65536);return b}function Wd(a,b){a=a.G[b];(b=a.Mc[1]<<8|a.Mc[0])||(b=1==a.ad?256:65536);return b}function Qo(a,b){Il(a,b);var c=a.G[b];c.ke[0]=c.qb[0];c.ke[1]=c.qb[1];c.Oe=!0;yo(a,b)}function yo(a,b){a=a.G[b];a.vd=a.Rf==$o?1:0;a.ad=a.Rf==ap?2:1} -function Il(a,b,c){var d=a.G[b];if(d.me&&(b!=Go||a.J&Wo)){var e=Kd(a.H,a.P),f=(e-d.jd)/a.Ba|0;0>f&&(d.jd=e,f=0);var g=Fo(a,b),h=Wd(a,b)-f;d.mode==Ao?(0>=h&&(h=0),h||(d.gd=!0,d.me=!1,b||ph(a,Eo))):d.mode==bp?(d.gd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Mc[0]=h&255,d.Mc[1]=h>>8&255,d.jd=e,!b&&d.gd&&ph(a,Eo))):d.mode==Xd&&(h-=f,0>=h&&(d.gd=!d.gd,h=g+h,0>=h&&(h=g),d.Mc[0]=h&255,d.Mc[1]=h>>8&255,d.jd=e,!b&&d.gd&&ph(a,Eo)));d.qb[0]=h&255;d.qb[1]=h>>8&255;c&&(a.jd=0)}return d} -function Vd(a,b){for(var c=0;c=mh){b=a.H.T.xd;c=Kd(a.H,a.P);null==a.Aa&&(a.la=Kd(a.H,a.P),a.Ia=1024,a.Aa=Math.floor(a.H.T.xd/a.Ia),cn(a));c>=a.Z&&(a.A[Zm]|=cp,a.A[Yd]&Zd&&(a.A[Zm]|=dp,ph(a,ep)),a.Z=c+a.Aa);a.A[sm]==a.A[tm]&&a.A[um]==a.A[vm]&&a.A[wm]==a.A[xm]&&(a.A[Zm]|=fp,a.A[Yd]&gp&&(a.A[Zm]|=dp,ph(a,ep)));var d=c-a.la,e=Math.floor(d/b);if(e&&!(a.A[Yd]&hp)){for(;e--;)if(60<=++a.A[sm]&&(a.A[sm]=0,60<=++a.A[um]&&(a.A[um]=0,24<=++a.A[wm]))){a.A[wm]=0;a.A[ym]=a.A[ym]% -7+1;var f;f=a.A[Vm];var g=La[a.A[Um]-1];28==g&&(f%4||!(f%100)&&f%400||g++);f=g;++a.A[zm]>f&&(a.A[zm]=1,12<++a.A[Um]&&(a.A[Um]=1,a.A[Vm]=(a.A[Vm]+1)%100))}a.A[Zm]|=ip;a.A[Yd]&jp&&(a.A[Zm]|=dp,ph(a,ep))}a.la=c-d%b}}l.Lm=function(a,b){var c=this.xa;this.ga&kp&&(this.J&lp?c=this.B[0][1]:this.C&&(c=mp(this.C)));w(this,a,null,b,"PPI_A",c);return c};l.qo=function(a,b,c){w(this,a,b,c,"PPI_A");this.xa=b};l.Mm=function(a,b){var c=this.J;w(this,a,null,b,"PPI_B",c);return c}; -l.ro=function(a,b,c){w(this,a,b,c,"PPI_B");np(this,b)};function np(a,b){var c=!!(b&op),d=!!(a.J&op);a.J=b;a.C&&pp(a.C,!(b&lp),!!(b&Zo));c!=d&&en(a,c)}l.Nm=function(a,b){var c=0,c=(this.da|0)==rl?this.J&Xo?c|this.B[1][1]&qp:c|this.B[1][1]>>4&1:this.J&rp?c|this.B[0][1]>>4:c|this.B[0][1]&15;this.J&Wo&&Il(this,Go).gd&&(c=this.J&op?c|sp:c|tp);w(this,a,null,b,"PPI_C",c,32896);return c};l.so=function(a,b,c){w(this,a,b,c,"PPI_C");this.Da=b};l.Om=function(a,b){var c=this.ga;w(this,a,null,b,"PPI_CTRL",c);return c}; -l.to=function(a,b,c){w(this,a,b,c,"PPI_CTRL");this.ga=b};l.Xl=function(a,b){var c=this.C?mp(this.C):0;w(this,a,null,b,"8041_KBD",c);this.aa&=~up;return c};l.An=function(a,b,c){w(this,a,b,c,"8041_KBD")};l.Wl=function(a,b){var c=this.J;w(this,a,null,b,"8041_CTRL",c);return c};l.zn=function(a,b,c){w(this,a,b,c,"8041_CTRL");np(this,b)};l.Yl=function(a,b){var c=this.aa;w(this,a,null,b,"8041_STATUS",c);return c}; -l.Zl=function(a,b){var c=this.oa;w(this,a,null,b,"8042_OUTBUFF",c,16384);this.D&=~(up|vp);this.C&&wp(this.C);return c}; -l.Cn=function(a,b,c){w(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.D&xp)switch(this.L){case yp:zp(this,b);break;case Ap:Bp(this,b);break;default:if(zp(this,this.K&~Vl),this.C){a=this.C;c=b;var d=-1;t(a)&&Rb(a,"sendCmd("+r(c)+")");switch(a.I||c){case Cp:d=Dp;Ep(a);break;case Fp:a.I&&(c=0);Gp(a,Dp);a.I=c;break;case Hp:a.I&&(c=0);Gp(a,Dp);a.I=c;break;default:Rb(a,"sendCmd(): unrecognized command")}Ip(this,d)}}this.L=b;this.D&=~xp}; -l.$l=function(a,b){var c=this.J&~(Jp|Kp)|(Kd(this.H)&64?Kp:0);w(this,a,null,b,"8042_RWREG",c,16384);return c};l.Dn=function(a,b,c){w(this,a,b,c,"8042_RWREG",null,16384);np(this,b)};l.am=function(a,b){w(this,a,null,b,"8042_STATUS",this.D,16384);a=this.D&255;this.D&vp&&(this.D|=up,this.D&=~vp);return a}; -l.Bn=function(a,b,c){w(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.L=b;this.D|=xp;a=0;this.L>=Lp&&(a=this.L^15,this.L=Lp);switch(this.L){case Mp:Ip(this,this.K);break;case Np:zp(this,this.K|Vl);break;case Op:zp(this,this.K&~Vl);this.C&&wp(this.C);break;case Pp:this.C&&(a=this.C,a.A=[],t(a)&&Rb(a,"scan codes flushed"));zp(this,this.K|Vl);Ip(this,Qp);Bp(this,em|fm);break;case Rp:Ip(this,Sp);break;case Tp:Ip(this,this.M);break;case Up:Ip(this,this.qa);break;case Vp:Ip(this,this.K&Vl?0:Wp);break;case Lp:a& -1&&rf(this.H)}};function zp(a,b){a.K=b;a.D=a.D&~Xp|b&Yp;a.C&&pp(a.C,!!(b&Zp),!(b&Vl))}function Ip(a,b,c){0<=b&&(a.oa=b,c?a.D|=up:(a.D&=~up,a.D|=vp))}function Bp(a,b){a.qa=b;uc(a.ma,!!(b&fm));b&em||rf(a.H)}function $p(a,b){a.da>4)+(c&15),e=!0);if(d==wm||d==xm)e&&23=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;d==Yd&&a&Zd&&b&Zd&&cn(this)};l.Tk=function(a,b,c){w(this,a,b,c,"NMI");this.ea=b};l.bo=function(a,b,c){w(this,a,b,c,"FPU.CLEAR")};l.co=function(a,b,c){w(this,a,b,c,"FPU.RESET");this.Tc&&hh(this.Tc)}; -l.bn=function(a){if(t(this,16)&&cl(this.ca,26,a)){var b=this.H.D>>8;$f(this.H,a,function(a,d){return function(c){d=Kd(a.H)-d;var e,g=a.H.L&255,h=a.H.L>>8,k=a.H.L&255,m=a.H.L>>8;if(2==b||3==b)e=" CH(hour)="+ta(h)+" CL(min)="+r(g)+" DH(sec)="+r(m);else if(4==b||5==b)e=" CX(year)="+ta(a.H.I)+" DH(month)="+r(m)+" DL(day)="+r(k);g=a.ca;h=d;g.message("INT "+r(26)+": C="+(kg(g.H)?1:0)+(e||"")+" (cycles="+h+(c?",level="+(c+1):"")+")")}}(this,Kd(this.H)))}return!0}; -function en(a,b){if(a.ka)try{void 0!==b?a.Ga=b:b=!!(a.Ga&&a.H&&a.H.ba.jb);var c=Math.round(vl/Fo(a,Go));if(20>c||2E4>>4,0,this.G,this.C,this.Hd),delete this.Hd);return!0};hq.prototype.Wb=function(){return!0}; -function iq(a,b,c,d){if(d)a.Ca("Unable to load system ROM (error "+d+": "+b+")",0>d);else{tb(a.ze,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.longs||e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Hd=e.symbols;if(!a.A.length){mb("Empty ROM: "+b);return}if(1==a.A.length){mb(a.A[0]);return}}catch(h){a.Ca("ROM data error: "+h.message);return}else for(b= -c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.A=Array(b.length),e=0;e>>d.A].df(e&d.D,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.F?b.push(a.F):null!=a.F&&a.F.length&&(b=a.F);for(c=0;c=nh){this.D=Vl;this.L=0;this.K=Wl;this.oa=0;this.M=Xl|Yl;512<=Zl(this)&&(this.M|=$l);+am(this,pl,void 0)==bm&&(this.M|=cm);(this.da|0)==Fl&&(this.M=this.M|dm|em);this.qa= +fm|gm;this.X=Array(8);this.W=0;a&&(this.A=Array(Kl));hm(this,this.Ma);for(a=im;a<=jm;a++)this.A[a]=0;for(a=km;ac?c=c?c:12:c=(c-=12)?c+128:140,d=!0);a.A[Zd]&bn||(d&&128>8} +l.save=function(){var a=new eg(this);a.set(0,[this.B]);for(var b=[],c=0;c=nh&&(a.set(5,[this.D,this.L,this.K,this.oa,this.M,this.qa]),a.set(6,[this.X[7],this.X,this.W,this.A,this.la,this.Z]));return a.data()}; +l.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.B=b[0]:(this.B[0][0]=b[0],this.B[1][0]=b[1]&15,this.B[0][1]=b[2],this.B[1][1]=b[3]&15);Nl(this);b=a[1];for(c=0;c=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='
'+f+"
\n"}e.innerHTML=d;nn(a,b,c,!0)}function on(a,b,c){if(b=(a=pn[a.da|0])&&a[b])for(var d in b)if(a=b[d],a.yc&1<g.qb[0]&&(g.qb[0]=255,g.qb[1]--,0>g.qb[1]&&(g.qb[1]=255)));return h}function Dn(a,b,c,d,e,f){var g=a.F[b];t(a,768)&&w(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.zb+"]",null,!0);a=g.oc[c];a.qb[g.zb]=a.pc[g.zb]=e;g.zb^=1}function En(a,b,c,d){var e=a.F[b],f=e.Mb|Fn;e.Mb&=~Gn;t(a,768)&&w(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f} +function Hn(a,b,c,d,e){var f=a.F[b];t(a,768)&&w(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Mb=f.Mb&~(16<>2].oc[b&3],c,d,e)}function Ln(a,b,c){b=a.F[b>>2].oc[b&3];b.ng&&b.hh&&b.Dg?(c&&(b.done=c),b.se||Vn(a,b,!0)):c&&c(!0)} +function Vn(a,b,c){c&&(b.count=b.qb[1]<<8|b.qb[0],b.type=b.mode&Wn,b.vj=b.og=!1);for(var d=!1;0<=b.count&&(c=b.ig<<16|b.vb[1]<<8|b.vb[0],b.type==Xn?(d=!0,function(c){b.hh.call(b.ng,b.Dg,-1,function(e,g){0>e&&(b.vj||(b.vj=!0),e=255);b.se||a.ma.fc(c,e);(d=g)&&setTimeout(function(){Yn(b)||Vn(a,b)},0)})}(c)):b.type==Zn?(c=a.ma.Ja(c),0>b.hh.call(b.ng,b.Dg,c)&&(b.og=!0)):b.type!=$n&&(b.og=!0)),!d&&!Yn(b););} +function Yn(a){if(!a.og&&0<=--a.count&&(a.mode&ao?(a.vb[0]--,0>a.vb[0]&&(a.vb[0]=255,a.vb[1]--,0>a.vb[1]&&(a.vb[1]=255))):(a.vb[0]++,255>3];b=1<<(b&7);d.$b&b||(d.$b|=b,d.Xe=c||0,qo(a))}function oh(a,b){var c=a.hc[b>>3];b=1<<(b&7);c.$b&b&&(c.$b&=~b,qo(a))}function qo(a,b){var c,d=-1;1>=1),Nd(a.H,e))),b==Do&&c==Ho&&fn(a))}function Io(a,b,c,d){w(a,c,null,d,"PIT"+b+".CTRL",null,2048);return b?a.va:a.sa} +function Jo(a,b,c,d,e){w(a,c,d,e,"PIT"+b+".CTRL",null,2048);e=0;c=d&Ko;b?(e=3,a.va=d):a.sa=d;if(c==Lo){if(!(d&Mo))for(c=0;2>=c;c++)if(d&No<=c;c++)d&No<>=So;var f=d&To,g=d&Uo;d&=Vo;if(d==Wo)Ro(a,e+c);else{e+=c;var h=a.G[e];h.Qf=d;h.mode=g;h.bh=f;h.pc=[0,0];h.qb=[0,0];h.oe=[0,0];h.gd=!1;h.Oe=!1;h.qe=!1;h.Se=!1;zo(a,e);b==Do&&c==Eo&&oh(a,Fo);b==Do&&c==Ho&&255==a.hc[0].ud&& +a.J==(Xo|Yo|Zo|$o)&&(b=a.G[0],b.Pc[0]=b.pc[0],b.Pc[1]=b.pc[1],b.jd=Kd(a.H,a.P))}}}function Go(a,b){a=a.G[b];(b=a.pc[1]<<8|a.pc[0])||(b=1==a.$c?256:65536);return b}function Xd(a,b){a=a.G[b];(b=a.Pc[1]<<8|a.Pc[0])||(b=1==a.$c?256:65536);return b}function Ro(a,b){Jl(a,b);var c=a.G[b];c.oe[0]=c.qb[0];c.oe[1]=c.qb[1];c.Oe=!0;zo(a,b)}function zo(a,b){a=a.G[b];a.xd=a.Qf==ap?1:0;a.$c=a.Qf==bp?2:1} +function Jl(a,b,c){var d=a.G[b];if(d.qe&&(b!=Ho||a.J&Xo)){var e=Kd(a.H,a.P),f=(e-d.jd)/a.Ba|0;0>f&&(d.jd=e,f=0);var g=Go(a,b),h=Xd(a,b)-f;d.mode==Bo?(0>=h&&(h=0),h||(d.gd=!0,d.qe=!1,b||qh(a,Fo))):d.mode==cp?(d.gd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Pc[0]=h&255,d.Pc[1]=h>>8&255,d.jd=e,!b&&d.gd&&qh(a,Fo))):d.mode==Yd&&(h-=f,0>=h&&(d.gd=!d.gd,h=g+h,0>=h&&(h=g),d.Pc[0]=h&255,d.Pc[1]=h>>8&255,d.jd=e,!b&&d.gd&&qh(a,Fo)));d.qb[0]=h&255;d.qb[1]=h>>8&255;c&&(a.jd=0)}return d} +function Wd(a,b){for(var c=0;c=nh){b=a.H.T.zd;c=Kd(a.H,a.P);null==a.Aa&&(a.la=Kd(a.H,a.P),a.Ia=1024,a.Aa=Math.floor(a.H.T.zd/a.Ia),dn(a));c>=a.Z&&(a.A[$m]|=dp,a.A[Zd]&$d&&(a.A[$m]|=ep,qh(a,fp)),a.Z=c+a.Aa);a.A[tm]==a.A[um]&&a.A[vm]==a.A[wm]&&a.A[xm]==a.A[ym]&&(a.A[$m]|=gp,a.A[Zd]&hp&&(a.A[$m]|=ep,qh(a,fp)));var d=c-a.la,e=Math.floor(d/b);if(e&&!(a.A[Zd]&ip)){for(;e--;)if(60<=++a.A[tm]&&(a.A[tm]=0,60<=++a.A[vm]&&(a.A[vm]=0,24<=++a.A[xm]))){a.A[xm]=0;a.A[zm]=a.A[zm]% +7+1;var f;f=a.A[Wm];var g=La[a.A[Vm]-1];28==g&&(f%4||!(f%100)&&f%400||g++);f=g;++a.A[Am]>f&&(a.A[Am]=1,12<++a.A[Vm]&&(a.A[Vm]=1,a.A[Wm]=(a.A[Wm]+1)%100))}a.A[$m]|=jp;a.A[Zd]&kp&&(a.A[$m]|=ep,qh(a,fp))}a.la=c-d%b}}l.Km=function(a,b){var c=this.xa;this.ga&lp&&(this.J&mp?c=this.B[0][1]:this.C&&(c=np(this.C)));w(this,a,null,b,"PPI_A",c);return c};l.po=function(a,b,c){w(this,a,b,c,"PPI_A");this.xa=b};l.Lm=function(a,b){var c=this.J;w(this,a,null,b,"PPI_B",c);return c}; +l.qo=function(a,b,c){w(this,a,b,c,"PPI_B");op(this,b)};function op(a,b){var c=!!(b&pp),d=!!(a.J&pp);a.J=b;a.C&&qp(a.C,!(b&mp),!!(b&$o));c!=d&&fn(a,c)}l.Mm=function(a,b){var c=0,c=(this.da|0)==sl?this.J&Yo?c|this.B[1][1]&rp:c|this.B[1][1]>>4&1:this.J&sp?c|this.B[0][1]>>4:c|this.B[0][1]&15;this.J&Xo&&Jl(this,Ho).gd&&(c=this.J&pp?c|tp:c|up);w(this,a,null,b,"PPI_C",c,32896);return c};l.ro=function(a,b,c){w(this,a,b,c,"PPI_C");this.Da=b};l.Nm=function(a,b){var c=this.ga;w(this,a,null,b,"PPI_CTRL",c);return c}; +l.so=function(a,b,c){w(this,a,b,c,"PPI_CTRL");this.ga=b};l.Wl=function(a,b){var c=this.C?np(this.C):0;w(this,a,null,b,"8041_KBD",c);this.aa&=~vp;return c};l.zn=function(a,b,c){w(this,a,b,c,"8041_KBD")};l.Vl=function(a,b){var c=this.J;w(this,a,null,b,"8041_CTRL",c);return c};l.yn=function(a,b,c){w(this,a,b,c,"8041_CTRL");op(this,b)};l.Xl=function(a,b){var c=this.aa;w(this,a,null,b,"8041_STATUS",c);return c}; +l.Yl=function(a,b){var c=this.oa;w(this,a,null,b,"8042_OUTBUFF",c,16384);this.D&=~(vp|wp);this.C&&xp(this.C);return c}; +l.Bn=function(a,b,c){w(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.D&yp)switch(this.L){case zp:Ap(this,b);break;case Bp:Cp(this,b);break;default:if(Ap(this,this.K&~Wl),this.C){a=this.C;c=b;var d=-1;t(a)&&Rb(a,"sendCmd("+r(c)+")");switch(a.I||c){case Dp:d=Ep;Fp(a);break;case Gp:a.I&&(c=0);Hp(a,Ep);a.I=c;break;case Ip:a.I&&(c=0);Hp(a,Ep);a.I=c;break;default:Rb(a,"sendCmd(): unrecognized command")}Jp(this,d)}}this.L=b;this.D&=~yp}; +l.Zl=function(a,b){var c=this.J&~(Kp|Lp)|(Kd(this.H)&64?Lp:0);w(this,a,null,b,"8042_RWREG",c,16384);return c};l.Cn=function(a,b,c){w(this,a,b,c,"8042_RWREG",null,16384);op(this,b)};l.$l=function(a,b){w(this,a,null,b,"8042_STATUS",this.D,16384);a=this.D&255;this.D&wp&&(this.D|=vp,this.D&=~wp);return a}; +l.An=function(a,b,c){w(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.L=b;this.D|=yp;a=0;this.L>=Mp&&(a=this.L^15,this.L=Mp);switch(this.L){case Np:Jp(this,this.K);break;case Op:Ap(this,this.K|Wl);break;case Pp:Ap(this,this.K&~Wl);this.C&&xp(this.C);break;case Qp:this.C&&(a=this.C,a.A=[],t(a)&&Rb(a,"scan codes flushed"));Ap(this,this.K|Wl);Jp(this,Rp);Cp(this,fm|gm);break;case Sp:Jp(this,Tp);break;case Up:Jp(this,this.M);break;case Vp:Jp(this,this.qa);break;case Wp:Jp(this,this.K&Wl?0:Xp);break;case Mp:a& +1&&xf(this.H)}};function Ap(a,b){a.K=b;a.D=a.D&~Yp|b&Zp;a.C&&qp(a.C,!!(b&$p),!(b&Wl))}function Jp(a,b,c){0<=b&&(a.oa=b,c?a.D|=vp:(a.D&=~vp,a.D|=wp))}function Cp(a,b){a.qa=b;uc(a.ma,!!(b&gm));b&fm||xf(a.H)}function aq(a,b){a.da>4)+(c&15),e=!0);if(d==xm||d==ym)e&&23=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;d==Zd&&a&$d&&b&$d&&dn(this)};l.Sk=function(a,b,c){w(this,a,b,c,"NMI");this.ea=b};l.ao=function(a,b,c){w(this,a,b,c,"FPU.CLEAR")};l.bo=function(a,b,c){w(this,a,b,c,"FPU.RESET");this.Ic&&ih(this.Ic)}; +l.an=function(a){if(t(this,16)&&dl(this.ca,26,a)){var b=this.H.D>>8;ag(this.H,a,function(a,d){return function(c){d=Kd(a.H)-d;var e,g=a.H.L&255,h=a.H.L>>8,k=a.H.L&255,m=a.H.L>>8;if(2==b||3==b)e=" CH(hour)="+ta(h)+" CL(min)="+r(g)+" DH(sec)="+r(m);else if(4==b||5==b)e=" CX(year)="+ta(a.H.I)+" DH(month)="+r(m)+" DL(day)="+r(k);g=a.ca;h=d;g.message("INT "+r(26)+": C="+(lg(g.H)?1:0)+(e||"")+" (cycles="+h+(c?",level="+(c+1):"")+")")}}(this,Kd(this.H)))}return!0}; +function fn(a,b){if(a.ka)try{void 0!==b?a.Ga=b:b=!!(a.Ga&&a.H&&a.H.ba.jb);var c=Math.round(wl/Go(a,Ho));if(20>c||2E4>>4,0,this.G,this.C,this.Jd),delete this.Jd);return!0};iq.prototype.Wb=function(){return!0}; +function jq(a,b,c,d){if(d)a.Ca("Unable to load system ROM (error "+d+": "+b+")",0>d);else{tb(a.De,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.longs||e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Jd=e.symbols;if(!a.A.length){mb("Empty ROM: "+b);return}if(1==a.A.length){mb(a.A[0]);return}}catch(h){a.Ca("ROM data error: "+h.message);return}else for(b= +c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.A=Array(b.length),e=0;e>>d.A].cf(e&d.D,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.F?b.push(a.F):null!=a.F&&a.F.length&&(b=a.F);for(c=0;cthis.B?hm:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+1]=c>>8;rm(a)}}else mb("No RAM allocated")}; -l.save=function(){var a=new dg(this);this.controller&&a.set(0,this.controller.save());return a.data()};l.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function pq(a){this.D=a;this.C=rq;this.H=sq;this.B=tq;this.A=null}l=pq.prototype;l.save=function(){return[this.C,this.B]};l.restore=function(a){this.fc(0,a[0]&255);this.fc(2,a[1]&255);return!0};l.Ja=function(a){var b=255;2>a?b=a&1?this.H>>8:this.H&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b}; -l.fc=function(a,b){if(a)2==a&&(this.B=this.B&-256|b);else if(b!=(this.C&255)){a=this.D.ma;if(b&uq)this.A&&(Cc(a,vq,wq,this.A),this.A=null);else{this.A||(this.A=Dc(a,vq,wq));var c=Dc(a,xq,wq);Cc(a,vq,wq,c,b&yq?1:Jc)}this.C=this.C&-256|b}};l.Aj=function(){return zq};l.jh=function(){return Aq};var qq=-2134900736,xq=16646144,vq=917504,wq=131072,uq=1,yq=2,rq=65535,sq=2575,tq=2,zq=[null,0],Aq=[function(a){return this.controller.Ja(a)},null,null,function(a,b){this.controller.fc(a,b)},null,null]; -eb(function(){for(var a=Bb(document,"pcx86","ram"),b=0;b=n.de&&d<=n.z&&(d-=n.de-n.ce),d=Lq[e]==d),d){(a=a.na["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}} -l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.H=c;this.ca=d;this.W=bc(a,"ChipSet");this.G=Fd(a,"autoType")||this.G;Zf(c,33,this.cn.bind(this))};l.cn=function(){if(10==(this.H.D>>8&255)&&!this.F&&this.G){var a=this.F=Pq(this.G);a&&!this.C&&(this.C=a,Nq(this,150))}return!0}; -function Pq(a){if(a){for(var b,c=/(?:^|[^$])\$([a-z]+)/g;b=c.exec(a);){var d;switch(b[1]){case "date":d=Fa("n-j-Y");break;case "time":d=Fa("h:i:s");break;default:continue}a=a.replace("$"+b[1],d)}a=a.replace(/\$\$/g,"$$")}return a}function Cq(a,b){var c=0;a.da=null;"string"==typeof b&&(a.da=b.toUpperCase(),c=Qq.indexOf(a.da),0>c&&(c=0));if(b=Qq[c])a.aa=parseInt(b.substr(2),10)}function Ep(a){Rb(a,"keyboard reset",65792);a.A=[];Gp(a,Rq)} -function pp(a,b,c){a.L!==c&&(a.L=a.M=c)&&(a.J=!0);a.K!==b&&(a.K=b)&&!a.M&&bq(a,!0);a.K&&a.M&&(Ep(a),a.M=!1)}function Gp(a,b){a.W&&(a.A.unshift(b),a.J=!0,$p(a.W,b))}function wp(a){var b=0;a.A.length&&a.J&&(b=a.A[0],a.W&&$p(a.W,b));t(a)&&Rb(a,b?"scan code "+r(b)+" available":"no scan codes available")}function mp(a){var b=0;a.A.length&&(b=a.A[0]);t(a)&&Rb(a,"scan code "+r(b)+" delivered");return b} -function bq(a,b){0>=1);if(b&Vq){if(!1===d)return!0;d=null}null==d?d=!((c?a.D:a.jc)&b):d||b&Wq&&(b=Wq);if(c){a.D&=~b;d&&(a.D|=b);c=b;var f,g;for(g in Xq)d="led-"+g,e=Xq[g],c&&c!=e||!(f=a.na[d])||(f.style.backgroundColor=a.D&e?"#00ff00":"#000000")}else a.jc&=~b,d&&(a.jc|=b);return!0}}return!1} -function Fq(a,b,c){if((O[b]||O[b+=1E3])&&a.H&&a.H.ba.jb){Tq[b]&&a.B.length&&0e||(e==a.B.length&&(d={},d.ve=b,d.jc=a.jc,Oq(a,b,!0),e++),0b.zd){if(!b.rf){Mq(a,b.ve);return}b.rf=!1;c=a.ea}else c=1==b.zd++?500:100;b.il=setTimeout(function(a){return function(){Yq(a,b)}}(a),c)}} -function $q(a,b,c){var d=b;if(b>=n.ce&&b<=n.gg)!(a.jc&(ar|br|cr))==c&&(d=b+(n.de-n.ce));else if(b>=n.de&&b<=n.z)!!(a.jc&(ar|br|cr))==c&&(d=b-(n.de-n.ce));else if(!!(a.jc&(ar|br))==c){if(a=na[b])d=a}else if(a=ma[b])d=a;return d}l.Fg=function(a){a||(this.jc&=~Wq)}; -function Dq(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode;a.C="";var h=$q(a,g,!0);a.hh&&h==n["`"]&&(g=h=27);if(O[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),Kq(a,h,!1,c)){if(20==g||144==g||145==g)a.Z||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k=n.ce&&b<=n.gg||b>=n.de&&b<=n.z;e>>>=8;){var g=0,h=e&255;f==mr||f==nr?d.push(f|(c?0:lr)):(h==Q?a.D&(ar|br)||a.D&cr&&b||(g=h):h==or?a.D&(dr|pr)||(g=h):h==qr?a.D&(er|rr)||(g=h):d.push(f|(c?0:lr)),g&&(c?d.unshift(g):d.push(g|lr)))}for(c=0;c"]]=52|Q<<8;O[n["/"]]=53; -O[n["?"]]=53|Q<<8;O[3016]=54;O[1044]=55;O[1018]=qr;O[1032]=57;O[Gq]=58;O[1112]=59;O[1113]=60;O[1114]=61;O[1115]=62;O[1116]=63;O[1117]=64;O[1118]=65;O[1119]=66;O[1120]=67;O[1121]=68;O[Hq]=69;O[Iq]=70;O[1036]=71;O[1038]=72;O[1033]=73;O[1109]=74;O[1037]=75;O[1101]=76;O[1039]=77;O[1107]=78;O[1035]=79;O[1040]=80;O[1034]=81;O[1045]=82;O[1046]=kr;O[4027]=84;O[1122]=87;O[1123]=88;O[1091]=91;O[1093]=93;O[1224]=91;O[ur]=46|or<<8;O[fr]=70|or<<8;O[4046]=kr|or<<8|qr<<16;O[4045]=82|or<<8|qr<<16; -O[4013]=28|or<<8|qr<<16;var Cp=255,Fp=243,Hp=237,Rq=170,Dp=250,tr=255,sr=20;eb(function(){for(var a=Bb(document,"pcx86","keyboard"),b=0;bc.length)c=[!1,0,null,null,0,Array(b>2,32768));this.rc=c[0];this.Xc=c[1];this.af=c[2];this.fa=c[3];this.ec=c[4]&255;this.Jg=c[4]>>8&255;this.Sa=c[5];this.sh=xr;this.ig=zr;this.kd=(this.Sa[Ar]<<8)+this.Sa[Br]|0;if(b>=lq){this.sh=yr;this.ig= -Cr;(b=c[6])||(b=[!1,0,Array(Dr),0,f==am?0:Er,0,0,Array(Fr),0,0,0,Array(Gr),0,[this.bb,this.Ob,this.ud],Array(this.ud>>2),Hr|Ir|Jr|Kr|Lr,0,-1,0,-1,0,-1,0,0,0,0,Mr,Nr,0,0,Or,Array(Pr)]);this.Me=b[0];this.Ad=b[1];this.Dc=b[2];this.Xg=Qr;this.Mg=b[3];this.cf=b[4];this.Qf=b[5];this.Dd=b[6];this.ae=b[7];this.Zg=Rr;this.bl=b[8];this.cl=b[9];this.Cd=b[10];this.Bd=b[11];this.Yg=Sr;this.vb=b[12];d=b[13];"number"==typeof d&&(d=[this.bb,this.Ob,d]);this.bb=d[0];this.Ob=d[1];d=this.ud>>2;if((this.fd=b[14])&&this.fd.length< -d){for(var e=this.fd,g=0,h=Array(d),k=0;k=lq){var c=[];c[0]=a.Me;c[1]=a.Ad;c[2]=a.Dc;c[3]=a.Mg;c[4]=a.cf;c[5]=a.Qf;c[6]=a.Dd;c[7]=a.ae;c[8]=a.bl;c[9]=a.cl;c[10]=a.Cd;c[11]=a.Bd;c[12]=a.vb;c[13]=[a.bb,a.Ob,a.ud];var d;if(d=a.fd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h>1;f[e++]=k;h=m}f.length=lq){var d=0,e=0,f=0;switch(b){case as:d=bs;a.La==nq&&(e=cs);break;case ds:a.La==lq&&(d=es);break;case fs:d=gs;a.La==nq&&(e=hs);break;case is:d=js;a.La==nq&&(e=ks);break;case ls:d=ms;a.La==nq&&(f=ns);break;case os:d=ps,a.La==nq&&(f=qs)}d&&(c|=a.Sa[rs]&d?256:0,c|=a.Sa[rs]&e?512:0,c|=a.Sa[ss]&f?512:0)}return c} -var Ar=12,Br=13,xr=18,as=6,rs=7,bs=1,js=2,gs=4,ms=8,ps=16,es=32,cs=32,ks=64,hs=128,ss=9,ns=32,qs=64,ds=10,fs=16,is=18,ls=21,os=24,yr=25,zr="HTOTAL HDISP HSYNC_POS HSYNC_WIDTH VTOTAL VTOTAL_ADJ VDISP VSYNC_POS INTERLACE_POS MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),Cr="HTOTAL HDISP_END HBLANK_START HBLANK_END HRETRACE_START HRETRACE_END VTOTAL OVERFLOW PRESET_SCAN MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO VRETRACE_START VRETRACE_END VDISP_END OFFSET UNDERLINE VBLANK_START VBLANK_END MODE_CTRL LINE_COMPARE".split(" "), -Dr=20,Qr="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVERSCAN PLANES HPAN".split(" "),Er=1,Mr=1,Fr=5,Rr=["RESET","CLOCKING","MAPMASK","CHARMAP","MEMMODE"],Nr=255,Or=0,Pr=256,Gr=9,Sr="SRESET ESRESET COLORCMP DATAROT READMAP MODE MISC COLORDC BITMASK".split(" "),Hr=1024,Ir=4096,Yr=65280,Jr=0,Kr=16,$r=255,Lr=-2147483648,Tr=[];Tr[2]=Hr;Tr[3]=Hr|Ir;Tr[16]=1280;Tr[512]=Jr;Tr[1024]=Jr|32;Tr[1536]=Jr|96;Tr[2560]=Jr|160;Tr[3584]=Jr|224;Tr[768]=Jr|Kr; -Tr[4096]=1;Tr[8192]=2;Tr[24576]=98;Tr[40960]=162;Tr[57344]=226;var Zr=[];Zr[Hr]=function(a){a+=this.H;return(this.controller.vb=this.Y[a])>>this.controller.ii&255};Zr[Hr|16384]=function(a){return(this.controller.vb=this.Y[(a&-4)+this.H])>>((a&3)<<3)&255};Zr[Hr|Ir]=function(a){a+=this.H;var b=this.controller.vb=this.Y[a&-2];return(a&1?b>>8:b)&255}; -Zr[1280]=function(a){a+=this.H;a=this.controller.vb=this.Y[a];for(var b=this.controller.uh,c=this.controller.th&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d};Zr[Jr]=function(a,b){a+=this.H;b=(b|b<<8|b<<16|b<<24)&this.controller.Md|this.controller.Zd;b=b&this.controller.Bb|this.controller.vb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; -Zr[Jr|32]=function(a,b){a+=this.H;b=b>>this.controller.Qc|b<<8-this.controller.Qc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Md|this.controller.Zd;b=b&this.controller.Bb|this.controller.vb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; -Zr[Jr|96]=function(a,b){a+=this.H;b=b>>this.controller.Qc|b<<8-this.controller.Qc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Md|this.controller.Zd;b&=this.controller.vb;b=b&this.controller.Bb|this.controller.vb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; -Zr[Jr|160]=function(a,b){a+=this.H;b=b>>this.controller.Qc|b<<8-this.controller.Qc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Md|this.controller.Zd;b|=this.controller.vb;b=b&this.controller.Bb|this.controller.vb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; -Zr[Jr|224]=function(a,b){a+=this.H;b=b>>this.controller.Qc|b<<8-this.controller.Qc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Md|this.controller.Zd;b^=this.controller.vb;b=b&this.controller.Bb|this.controller.vb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)};Zr[Jr|4]=function(a,b){var c=(a&-4)+this.H;a=(a&3)<<3;b=b<>this.controller.Qc|b<<8-this.controller.Qc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Bb;b=this.controller.If&b|this.controller.vb&~b;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; -function R(a,b,c,d,e){rb.call(this,"Video",a,262144);var f=this;this.Uc=Wa("Gecko/");var g=["","moz","ms","webkit"];this.da=a.model;var h=us[this.da]||us.mda;this.La=h[0];this.ud=a.memory||0;this.ed=a.switches;this.ea=a.mode;if(null==this.ea||null==vs[this.ea])this.ea=h[1];this.Ib=a.charCols;this.tc=a.charRows;if(void 0===this.Ib||void 0===this.tc)this.Ib=vs[this.ea][0],this.tc=vs[this.ea][1];this.Z=a.screenWidth;this.ka=a.screenHeight;this.Vc=a.scale;this.Pd=12<=Math.round(this.Z/this.Ib);this.P= -b;this.L=c;this.D=(this.tg=d)||b||null;b=a.smoothing;(c=Xa("smoothing"))&&(b="true"==c);if(null!=b)for(c=0;c=lq&&(Tc(b,this,Es),Xc(b,this,Fs));this.La==nq&&(Tc(b,this,Gs),Xc(b,this,Hs));d&&Hl(d,262144,function(a){if(e.B)if(a[0]){var b=e.B;if(b.fd){var c,d,f,g=!1,h=8,H=8,I=-1,L=b.video.F>>3;for(c=0;c=d&&(H=d,g=!0);break; -case "p":0<=d&&3>=d&&(I=d);break;case "w":d=b.bb&&(f-=b.bb);a="";for(c=0;cI?q(K):ra(K>>(I<<3),8));g&&(f+=L-H);a&&(a+="\n");a+=P}a&&b.ca.O(a);b.B=f}else b.ca.O("no buffer")}else e.ca.O("BIOSMODE: "+r(e.oa)),b=e.B,Wr(b,"CRTC",b.ec,b.Sa,b.ig),b.La>=lq&&(Wr(b," GRC",b.Cd,b.Bd,b.Yg),Wr(b," SEQ",b.Dd,b.ae,b.Zg),Wr(b," ATC",b.Ad,b.Dc, -b.Xg),Wr(b," ATCINDX",b.Ad),b.ca.O(" ATCDATA: "+b.Me),Wr(b," FEAT",b.Qf),Wr(b," MISC",b.cf),Wr(b," STATUS0",b.Mg)),Wr(b," STATUS1",b.fa),b.La!=Bs&&b.La!=ys||Wr(b," MODEREG",b.Xc),b.La==ys&&Wr(b," COLOR",b.af),b.La>=lq&&(b.ca.O(" LATCHES: "+q(b.vb)),b.ca.O(" ACCESS: "+q(b.xg,4)),b.ca.O("Use 'dump video [addr]' to dump video memory"));else e.ca.O("no active video card")});if((this.C=bc(a,"Keyboard"))&&this.P){for(var f in this.na)0c&&(a=Math.round(c/b*100)+"%")}this.Uc?(this.P.style.width=a,this.P.style.width=a,this.P.style.display="block",this.P.style.margin="auto"):(this.N.style.width=a,this.N.style.height="auto");this.N.style.backgroundColor="black";this.N.Le();a=!0}this.D&&this.D.focus()}return a}; -function xs(a,b){!b&&a.N&&(a.Uc?a.P.style.width=a.P.style.height="":a.N.style.width=a.N.style.height="");Rb(a,"notifyFullScreen("+b+")",!0);a.C&&(a.C.hh=b)}l.ne=function(a){var b=!1;this.D&&(a?this.D.ne&&(this.D.ne(),this.G&&this.G.Jf(!0),b=!0):this.D.A&&(this.D.A(),this.G&&this.G.Jf(!1),b=!0),this.D&&this.D.focus());return b};l.Jf=function(a){this.G&&(this.G.Jf(a),this.C&&(this.C.hh=a));var b=this.na.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Rd)}; -function Is(a,b){var c=a.D;c&&!a.vc&&(c.addEventListener("touchstart",function(b){Ns(a,b,!0)},!1),c.addEventListener("touchmove",function(b){Ns(a,b)},!0),c.addEventListener("touchend",function(b){Ns(a,b,!1)},!1),a.vc=b,a.lb=a.tb=a.nd=-1,a.sc=!1,a.Eb=null,a.lc=!1,a.Qd=function(){a.lc=!0;a.G.Wd(Os,!0)})}l.Fg=function(a){this.C&&this.C.Fg(a)}; -function Ns(a,b,c){var d,e,f=0,g=0;d=a.P;do isNaN(d.offsetLeft)||(f+=d.offsetLeft,g+=d.offsetTop);while(d=d.offsetParent);var h=a.Z/a.P.offsetWidth,k=a.ka/a.P.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(a.vc==Ks)c&&Fq(a.C,Ps[e/(a.ka/3)|0][d/(a.Z/3)|0],!0);else if(a.G){g=a.sc;f=b.timeStamp-a.nd;!0===c?(a.sc=500f){a.G.Wd(Os,!0);a.G.Wd(Os,!1);return}}if(c||0>a.lb||0>a.tb)a.lb=d,a.tb=e;c=Math.round(d-a.lb);b=Math.round(e-a.tb);a.lb=d;a.tb=e;a.G.uf(c,b,a.lb,a.tb)}}l.Xb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0}; -l.reset=function(){var a=!0,b=0;this.W&&(b=+$l(this.W,ol,void 0));this.da||(this.La=b==am?Bs:ys);this.ea=Qs;switch(this.La){case nq:b=7;break;case lq:var c=Rs[this.yb];c&&(b=c[0]);b||(b=4);break;case Bs:b=am;this.ea=Ss;break;default:b=2}this.ga!==b&&(this.ga=b,a=!0);this.B=null;this.X=this.Pb=new vr(this,Bs);this.K=this.Db=new vr(this,ys);this.La>1&255,d=d>>8&~Ws,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?Xs|Ys:Zs|$s)|at&d>>8);Qc(this.ma,b,c|d<<8)}Ms(this,!0)}};function Ts(a){a.A.cf&Er?(a.X=a.Pb,a.K=a.A):(a.X=a.A,a.K=a.Db)}l.save=function(){var a=new dg(this);a.set(0,Vr(this.Pb));a.set(1,Vr(this.Db));a.set(2,[this.ga,this.ea,this.oa]);a.set(3,Vr(this.A));return a.data()}; -l.restore=function(a){var b=a[2];this.ga=b[0];this.ea=b[1];this.oa=b[2];this.B=null;this.X=this.Pb=new vr(this,Bs,a[0]);this.K=this.Db=new vr(this,ys,a[1]);this.A=new vr(this,this.La,a[3],this.ud);this.A.rc&&Ts(this);Us(this);if(!bt(this))return!1;ct(this);return!0}; -function Ls(a,b,c,d){if(d)a.Ca("Unable to load font ROM (error "+d+": "+b+")",0>d);else{tb(a.ze,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){mb("Empty font ROM: "+b);return}if(1==f.length){mb(f[0]);return}if(8192==f.length)mq(a,f,[6144,0]);else if(2048==f.length)mq(a,f,[0]);else{a.Ca("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Ca("Font ROM data error: "+g.message);return}(a.L||a.ca)&&Ob(a)}} -function dt(a,b){if(1==b)return a.ha[0]=et[Zs],a.ha[1]=et[Xs],a.ha;if(2==b){var c=a.B.af;if(a.B===a.A){var d=a.A.Dc[0],c=d&7;d&16&&(c|=8);18!=a.A.Dc[1]&&(c|=32)}a.ha[0]=et[c&15];c=c&32?ft:gt;for(d=0;de;e++)f=d[e]||0,g=f<<2&252,h=f>>4&252,f=f>>10&252,a.ha[e]=[g,h,f,255];else{var k=d&&d[255];b=null!=c.Dc[15]?c.Dc:ht;for(e=0;16>e;e++)f=b[e]&63,k?(f|= -(c.Dc[20]&12)<<4,c.Dc[16]&128&&(f&=-49,f|=(c.Dc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.ha[e]=[g,h,f,255]}a.Ia=!0}return a.ha}function mq(a,b,c,d){a.xb=b;a.Ya=c;a.Ga=d} -function Us(a,b){var c=!1;if(window&&a.xb&&(!b||a.I)){var d=0,e=a.Ga?a.Ga:8,f=dt(a);null!=a.Ya[0]&&it(a,jt,a.Ya[0],d,e,8,a.xb,f)&&(c=!0);d=a.Ga?0:2048;e=a.Ga?a.Ga:9;null!=a.Ya[1]&&(it(a,kt,a.Ya[1],d,e,14,a.xb,lt,mt)&&(c=!0),a.Ga&&it(a,a.La,a.Ya[1],0,a.Ga,14,a.xb,f)&&(c=!0))}b||(a.aa=-1,a.Ba=-1,a.xa=0);return c}function it(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&(nt(a,b,c,d,e,f,g,h,k)&&(m=!0),a.Pd&&nt(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m} -function nt(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,v=a.va[b],u=16>h.length?h.length:16;v||(v={Gc:e<Ba||!P?Ba:8,kb=cb.createImageData(m.Gc,m.Hc);for(Oa=0;256>Oa;Oa++){for(db=0;db=Ba-2,Md=ba[db>(8<=jb&&192<=Oa&&223>=Oa?7:jb)?F:ib;ot(kb,Ag,jf,Bg);I&&ot(kb,Ag+1,jf,Bg)}cb.putImageData(kb,(Oa&15)*m.Gc,(Oa>>4)*m.Hc)}m.Ee[H]="#"+q(F[0],2)+q(F[1],2)+q(F[2],2);m.Ui[H]=F;m.Wg[H]=pa;m=!0}}a.va[b]=v;return m}function pt(a){0a.Ba&&(a.Ba=0):a.Ba=-1} -function ct(a){if(a.I){for(var b=10;15>=b;b++)if(null==a.B.Sa[b])return;var c=a.B.Sa[10],b=c&31,d=a.B.Sa[11]&31,e=a.B.Sa[9]&31,f=!1;a.B===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)qt(a);else{c=a.B.Sa[15]+((a.B.Sa[14]&63)<<8);a.aa!=c&&(qt(a),a.aa=c);d=d-b+1;if(a.pd!=b||a.Pc!=d)a.pd=b,a.Pc=d;a.za=e+1;pt(a)}}} -function qt(a){if(0<=a.aa){if(void 0!==a.M){var b=rt<<8,c=a.M[a.aa];if(c&b){var c=c&~b,b=a.aa%a.F,d=a.aa/a.F|0;a.I&&a.va[a.I]&&(a.Ea&&st(a,b,d,c,a.Ea),st(a,b,d,c));a.M[a.aa]=c}}a.aa=-1}} -function tt(a){var b,c=a.B;a.Tc=!1;var d=c.Bd[5];if(null!=d){b=Hr;var e=Jr,f=c.Bd[3]&31;switch(d&3){case 0:if(f){e=Jr|32;switch(f&24){case 8:e=Jr|96;break;case 16:e=Jr|160;break;case 24:e=Jr|224}c.Qc=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.La==nq&&(e=3,c.Qc=f&7)}d&8&&(b=1280);c=c.ae[4];null!=c&&(c&4||(b|=Ir,e|=Kr),d&64&&(c&8&&(b|=16384,e|=4),a.Tc=!0));b|=e}return b} -function ut(a,b){var c=a.B;return c&&null!=b&&b!=c.xg?(c.Og(b),a.ma.Og(c.bb,c.Ob,c.jh(),!0),!0):!1} -function bt(a,b){var c,d=a.oa,e=a.B;if(e)if(e.La==Bs)d=Ss;else if(e.La>=lq){var d=null,f=e.ud>>2,g=32768=e.Sa[is]?zt:At:Bt:g&128|| -350>f?d=m?Ct:Dt:480<=f&&(d=a.ga==am?Et:Ft):d=m?7-d:Gt:d-=m?2:0);c=tt(a)}}else e.Xc&8&&(e.Xc&2?(d=e.Xc&16?Gt:Ht,e.Xc&4||--d):(d=e.Xc&1?Qs:It,e.Xc&4&&--d));else a.oa=null,null==d&&(d=a.ea);if(!Vs(a,d,b))return!1;ut(a,c);return!0} -function Vs(a,b,c){if(null!=b&&(b!=a.oa||c)){a.Ed=0;a.oa=b;a.Ia=!1;b=a.B||(b==Ss?a.X:a.K);if(b!=a.B||b.bb!=a.bb||b.Ob!=a.Ob){qt(a);if(a.bb){if(!Hc(a.ma,a.bb,a.Ob))return!1;a.B&&(a.B.rc=!1)}a.B=b;b.rc=!0;a.bb=b.bb;a.Ob=b.Ob;if(!wc(a.ma,b.bb,b.Ob,3,b===a.A?b:null))return!1}a:{a.I=0;a.F=a.Ib;a.J=a.tc;a.Ta=a.F;a.Fb=vs[Ss][2];b=0;if(c=vs[a.oa])a.F=c[0],a.J=c[1],a.Fb=c[2],b=c[3],a.I=c[4],4!=a.ga&&7!=a.ga||a.B!==a.A||a.I!=jt||(7==(a.A.Sa[ss]&31)?a.J=350>Xr(a.A,is)?43:50:a.I=a.La);a.cd=a.F*a.J|0;a.Wc=a.cd/ -a.Fb|0;a.Za=a.Wc;a.Qb=0;void 0!==b&&(a.Za=(a.Za<<1)+b|0,a.Qb=a.Za+b>>1);if(a.va.length){a.qa=a.Z/a.F|0;a.sa=a.ka/a.J|0;if(a.I){b=a.va[a.I];if(!b)break a;c=a.va[a.I<<1];a.Vc&&80==a.F?c&&a.qa>=3*c.Gc>>2&&(a.I<<=1,b=c):(c&&a.qa>=c.Gc&&(a.I<<=1,b=c),a.Vc||(a.qa=b.Gc,a.sa=b.Hc));a.fb=a.kb=0;b&&(a.fb=a.F*b.Gc,a.kb=a.J*b.Hc)}else a.qa=a.sa=1,a.fb=a.F,a.kb=a.J;a.Ma=a.L.createImageData(a.fb,a.kb);a.Da=document.createElement("canvas");a.Da.width=a.fb;a.Da.height=a.kb;a.Ea=a.Da.getContext("2d");a.zc=a.Ac=0; -a.Rb=a.Z;a.kc=a.ka;b=a.Z-a.F*a.qa;c=a.ka-a.J*a.sa;0>1,a.Rb-=b);0>1,a.kc-=c);if(b||c)a.L.fillStyle=a.P.style.backgroundColor,a.L.fillRect(0,0,a.Z,a.ka)}}Jt(a,!0);Ms(a)}return!0}function ot(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Kt(a){a.xa=-1;a.la=!1;var b=a.Wc;if(void 0===a.M||a.M.length!=b)a.M=Array(b)}function Jt(a,b){b||(a.Ia=!1);Kt(a)} -function st(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.va[a.I];h.lf&&(d=h.lf[d]);var k=g>>4&15;h.lf&&(k=h.lf[k]);e?(b*=h.Gc,c*=h.Hc,e.fillStyle=h.Ee[k],e.fillRect(b,c,h.Gc,h.Hc)):(b=b*a.qa+a.zc,c=c*a.sa+a.Ac,a.L.fillStyle=h.Ee[k],a.L.fillRect(b,c,a.qa,a.sa));g&Lt&&(k=(f&15)*h.Gc,f=(f>>4)*h.Hc,e?e.drawImage(h.Wg[d],k,f,h.Gc,h.Hc,b,c,h.Gc,h.Hc):a.L.drawImage(h.Wg[d],k,f,h.Gc,h.Hc,b,c,a.qa,a.sa));g&rt&&(f=a.pd,g=a.Pc,e?(a.za&&a.za!==h.Hc&&(f=f*h.Hc/a.za|0,g=g*h.Hc/a.za|0),e.fillStyle=h.Ee[d],e.fillRect(b, -c+f,h.Gc,g)):(a.za&&a.za!==a.sa&&(f=f*a.sa/a.za|0,g=g*a.sa/a.za|0),a.L.fillStyle=h.Ee[d],a.L.fillRect(b,c+f,a.qa,g)))} -function Ms(a,b){if(a.ba.dc){var c=!1,d=a.B;d&&(d!==a.A?d.Xc&8&&(c=!0):d.Ad&32&&(c=!0));if(c||b){if(b)Kt(a);else if(void 0===a.M)return;var e=!1;!(b||++a.Ed&15)&&0<=a.Ba&&(a.Ba++,e=!0);var f=0,g=a.cd,h=a.bb,c=h,k=c+a.Ob;a.oa>=zt&&(h=c=655360,k=c+65536);if(Mt(a,d)&8||d.$e&&d.$e=lq&&d.Sa[19]&&d.Sa[19]<<1!=d.Sa[1]+1&&(a.Ta=d.Sa[19]<<(a.I?1:d.Sa[20]&64?3:4),m=(a.Ta*(a.J-1)+a.F)/a.Fb|0,a.oa<=Ss&& -(m<<=1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.la){b=a.ma;for(var p=!0,v=c>>>b.A;0f)return;g=f+1}}if(a.I){if(a.va[a.I]){d=f;f=0;e=a.xa=0;h=Lt<<8;b=1048575;p=a.B.Xc&32;a.La>=lq&&(p=a.B.Dc[16]&8);m=a.aa-a.B.kd;p&&(e=Ws<<8,b&=~e,a.Ba&2||(b&=~h));for(c+=d<<1;c>8|(u&255)<<8;var L=e,P=16;m>=h))>>(P-=h);ot(a.Ma,m++,p,b[Ba])}m>F&&(F=m);p=I&&(I=p+1)}k+=2;d++;if(m>=a.F){m=0;p+=2;if(p>a.J)break;p==a.J&&(p=1,k=c+a.Qb)}}a.la=!0; -va.F?a.Ta-a.F-u>>3:0;c>=8;b>v&&(v=b);m=H&&(H=m+1)}c+=I;if(b>=a.F){b=0;if(++m>a.J)break;c+=L}}u||(a.la=!0);pa.F?a.Ta-a.F-H>>3:0;cL&&(P=L)):(u<<=H,P-=H,a.la=!1):(a.la&&u===a.M[d]?(h+=P,P=0):a.M[d]=u,d++);if(P){hp&&(p=h);b=F&&(F=b+1)}if(h>=a.F){h=0;if(++b>a.J)break;c+=I}}H||(a.la=!0);ma&&(b.Ah=a,a=-a|0);a%b.vh>b.tn&&(c|=1);a%b.yh>b.vn&&(c|=9);b.ji=a/b.yh|0;return c}l.Hm=function(a,b){return nu(this,this.X,a,b)};l.no=function(a,b,c){var d=this.X;d.Jg=d.ec;d.ec=b&31;w(this,a,b,c,"CRTC.INDX")};l.Gm=function(a,b){return ou(this,this.X,a,b)};l.mo=function(a,b,c){pu(this,this.X,a,b,c)};l.Im=function(a,b){return qu(this,this.X,b)};l.oo=function(a,b,c){a=this.X;w(this,a.port+4,b,c,"MODE");a.Xc=b;bt(this,!1)}; -l.Jm=function(a,b){return ru(this,this.X,b)};l.Sk=function(a,b,c){this.A.Qf=this.A.Qf&-4|b&3;w(this,a,b,c,"FEAT")};l.fm=function(a,b){a=this.A.Ad;b&&!t(this)||w(this,960,null,b,"ATC.INDX",a);return a};l.wl=function(a,b){a=this.A.Dc[this.A.Ad&31];b&&!t(this)||w(this,960,null,b,"ATC."+this.A.Xg[this.A.Ad&31],a);return a}; -l.Rk=function(a,b,c){var d=this.A,e=d.Ad&32;if(d.Me){d.Me=!1;var f=d.Ad&31;if(16<=f||!e)if(su||d.Dc[f]!==b)c&&!t(this)||w(this,a,b,c,"ATC."+d.Xg[f]),d.Dc[f]=b,Jt(this,!1)}else d.Ad=b,w(this,a,b,c,"ATC.INDX"),d.Me=!0,b&32&&!e&&Us(this,!0)&&Ms(this,!0),a=(d.Sa[Ar]<<8)+d.Sa[Br]|0,d.kd!=a&&(d.kd=a,Jt(this)),d.$e=0}; -l.Tm=function(a,b){a=0;if(this.La==lq)a=3-((this.A.cf&12)>>2),a=(this.yb&1<>this.A.xc&63;b&&!t(this)||w(this,969,null,b,"DAC.DATA["+r(this.A.dd)+"]["+r(this.A.xc)+"]",a);this.A.xc+=6;12Missing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=Qa().indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height= -(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight),c.onresize(null));var f=+(d.aspect||Xa("aspect"));f&&.3<=f&&3.33>=f&&(bb("onresize",function(a,b,c){return function(){b.style.height=(a.clientWidth/c|0)+"px"}}(c,e,f)),window.onresize());c.appendChild(e);f=document.createElement("textarea");Wa("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"),f.style.fontSize="16px");c.appendChild(f);var g=e.getContext("2d"),d=new R(d,e,g,f,c);Ab(d,c)}}); -function tu(a){rb.call(this,"ParallelPort",a,4194304);this.G=a.adapter;switch(this.G){case 1:this.D=956;this.C=7;break;case 2:this.D=888;this.C=7;break;case 3:this.D=632;this.C=5;break;default:mb("Unrecognized parallel adapter #"+this.G);return}this.A=this.B=null;a=a.binding;"console"==a?this.B="":yb(this,a,uu)}ca(tu,rb);l=tu.prototype;l.Cb=function(a,b,c){switch(b){case uu:return this.na[b]=this.A=c,!0}return!1}; -l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.W=bc(a,"ChipSet");Tc(b,this,vu,this.D);Xc(b,this,wu,this.D);Ob(this)};l.Xb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){xu(this)};l.save=function(){var a=new dg(this),b=0,c=[];c[b++]=this.F;c[b++]=this.Mb;c[b]=this.nf;a.set(0,c);return a.data()};l.restore=function(a){return xu(this,a[0])}; -function xu(a,b){var c=0;b||(b=[0,0,0]);a.F=b[c++];a.Mb=b[c++];a.nf=b[c];return!0}l.um=function(a,b){var c=this.F;w(this,a,null,b,"DATA",c);return c};l.Sm=function(a,b){var c=this.Mb;w(this,a,null,b,"STAT",c);return c};l.qm=function(a,b){var c=this.nf;w(this,a,null,b,"CTRL",c);return c}; -l.Yn=function(a,b,c){w(this,a,b,c,"DATA");this.F=b;this.Mb|=yu;a=!1;Rb(this,"transmitByte("+r(b)+")");this.A&&(8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0);if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}a&&(this.Mb&=~yu);zu(this)};l.Tn=function(a,b,c){w(this,a,b,c,"CTRL");this.nf=b;zu(this)}; -function zu(a){a.W&&a.C&&(a.nf&Au&&!(a.Mb&yu)?ph(a.W,a.C):nh(a.W,a.C))}var uu="buffer",yu=64,Au=16,vu={0:tu.prototype.um,1:tu.prototype.Sm,2:tu.prototype.qm},wu={0:tu.prototype.Yn,2:tu.prototype.Tn};eb(function(){for(var a=Bb(document,"pcx86","parallel"),b=0;b=b)a.preventDefault&&a.preventDefault(),64");if(2==c.length){var d=Aa(c[0]);if(d!=this.ye)return;c=Aa(c[1]);if(this.D=Eb(c)){var e=this.D.exports;if(e){var f=e.connect;f&&f.call(this.D,this.P);if(this.aa=e.receiveData){this.P=a;this.X=e.receiveStatus;this.status("Connected "+this.ze+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}}; -l.Xb=function(a,b){if(!b)if(this.Ej(this.P),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){Hu(this)};l.save=function(){var a=new dg(this),b=0,c=[];c[b++]=this.ga;c[b++]=this.ka;c[b++]=this.L;c[b++]=this.N;c[b++]=this.G;c[b++]=this.C;c[b++]=this.Z;c[b++]=this.B;c[b++]=this.A;c[b]=this.J;a.set(0,c);return a.data()};l.restore=function(a){return Hu(this,a[0])}; -function Hu(a,b){var c=0;b||(b=[0,0,Iu,0,Ju,0,0,Ku|Lu,a.qa,[]]);a.ga=b[c++];a.ka=b[c++];a.L=b[c++];a.N=b[c++];a.G=b[c++];a.C=b[c++];a.Z=b[c++];a.B=b[c++];a.A=b[c++];a.J=b[c];return!0}l.Pf=function(a){if("number"==typeof a)this.J.push(a);else if("string"==typeof a)for(var b=0;b>8:this.N;w(this,a,null,b,this.C&Ru?"DLM":"IER",c);return c};l.Cm=function(a,b){var c=this.G;w(this,a,null,b,"IIR",c);return c};l.Dm=function(a,b){var c=this.C;w(this,a,null,b,"LCR",c);return c};l.Fm=function(a,b){var c=this.Z;w(this,a,null,b,"MCR",c);return c}; -l.Em=function(a,b){var c=this.B;w(this,a,null,b,"LSR",c);return c};l.Km=function(a,b){var c=this.A;this.A&=~(Nu|Ou);w(this,a,null,b,"MSR",c);return c}; -l.wo=function(a,b,c){w(this,a,b,c,this.C&Ru?"DLL":"THR");if(this.C&Ru)this.L=this.L&-256|b;else{this.ka=b;this.B&=~(Ku|Lu);a=!1;Rb(this,"transmitByte("+r(b)+")");this.aa&&this.aa.call(this.D,b)&&(a=!0);if(this.F){if(13==b)this.K=0;else if(8==b)this.F.value=this.F.value.slice(0,-1),0":String.fromCharCode(b);a=d.length;32>b&&1==a&&(a=0);9==b&&(b=this.oa||8,a=b-this.K%b,this.oa&&(d=za("",a)));this.la&&!this.K&&a&&(d=String.fromCharCode(this.la)+ -d);this.F.value+=d;this.F.scrollTop=this.F.scrollHeight;this.K+=a}a=!0}else if(null!=this.I){if(10==b||1024<=this.I.length)this.O(this.I),this.I="";10!=b&&(this.I+=String.fromCharCode(b));a=!0}a&&(this.B=this.B|Ku|Lu)}};l.jo=function(a,b,c){w(this,a,b,c,this.C&Ru?"DLM":"IER");this.C&Ru?this.L=this.L&255|b<<8:this.N=b};l.ko=function(a,b,c){w(this,a,b,c,"LCR");this.C=b}; -l.lo=function(a,b,c){var d=b^this.Z;w(this,a,b,c,"MCR");this.Z=b;d&(Su|Tu)&&this.X&&(a=0,this.P?(a|=b&Tu?32:0,a|=b&Su?320:0):(a|=b&Tu?16:0,a|=b&Su?1048576:0),this.X.call(this.D,a))};function Pu(a){var b=-1;a.B&Qu&&a.N&Uu?b=Vu:a.A&(Nu|Ou)&&a.N&Wu&&(b=Xu);0<=b?(a.G&=~(Ju|Yu),a.G|=b,a.W&&a.M&&ph(a.W,a.M,100)):(a.G|=Ju,a.W&&a.M&&nh(a.W,a.M))} -var Eu="buffer",Iu=384,Uu=1,Wu=8,Ju=1,Vu=4,Xu=0,Yu=6,Ru=128,Su=1,Tu=2,Qu=1,Ku=32,Lu=64,Nu=1,Ou=2,Cu=16,Du=32,Fu={0:Bu.prototype.Pm,1:Bu.prototype.Bm,2:Bu.prototype.Cm,3:Bu.prototype.Dm,4:Bu.prototype.Fm,5:Bu.prototype.Em,6:Bu.prototype.Km},Gu={0:Bu.prototype.wo,1:Bu.prototype.jo,3:Bu.prototype.ko,4:Bu.prototype.lo};eb(function(){for(var a=Bb(document,"pcx86","serial"),b=0;ba.F||0>a.G)a.F=b.screenX,a.G=b.screenY;a.M?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.screenX-a.F,d=b.screenY-a.G);a.F=b.screenX;a.G=b.screenY;a.uf(c,d,a.F,a.G)}} -l.Wd=function(a,b){if(this.rc&&this.H&&this.H.ba.jb){var c="mouse button"+a+" "+(b?"dn":"up");switch(a){case Os:if(this.K!=b){this.K=b;ev(this,c);return}break;case fv:if(this.L!=b){this.L=b;ev(this,c);return}}Rb(this,c+": ignored")}};l.uf=function(a,b,c,d){this.rc&&this.H&&this.H.ba.jb&&(a||b)&&(t(this,16777216)&&Rb(this,"moveMouse("+a+","+b+")"),this.I=a,this.J=b,ev(this,null,c,d))}; -function ev(a,b,c,d){var e=64|(a.K?32:0)|(a.L?16:0)|(a.J&192)>>4|(a.I&192)>>6,f=a.I&63,g=a.J&63;t(a,8388608)&&Rb(a,(b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+r(e)+","+r(f)+","+r(g)+"]",0,!0);a.D.Pf([e,f,g]);a.I=a.J=0} -l.ul=function(a){var b=1048592==(a&1048592);if(b){if(!this.rc){var c=!1;this.A&16||(this.reset(),Rb(this,"serial mouse reset"),c=!0);this.A&1048576||(Rb(this,"serial mouse ID requested"),c=!0);c&&(this.D.Pf([gv,gv]),Rb(this,"serial mouse ID sent"));$u(this);this.rc=b}}else this.rc&&(Rb(this,"serial mouse inactive"),av(this),this.rc=b);this.A=a};var gv=77,Os=0,fv=2;eb(function(){for(var a=Bb(document,"pcx86","mouse"),b=0;b>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.rb);for(c=0;cb.indexOf("/api/v1/dump")&&(a=va(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=ov(this,b),this.qg=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):wa(b, -"/")&&(c="dir"),f=Pa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Qe?"":d)+"&format=json"));var k="Loading "+f+"...";return!!Na(f,null,!0,function(a,b,c){pv(g,a,b,c)},function(){g.O(k,Lb.De)})}; -function pv(a,b,c,d){var e=null;a.Te=!1;var f=!(!(0>d&&a.pa)||a.pa.ba.dc);if(a.qg)d?a.Ca('Unable to connect to disk "'+a.G+'" (error '+d+": "+c+")",f):(a.D=!0,qv(a),e=a);else if(d)a.Ca('Unable to load disk "'+a.ld+'" (error '+d+": "+b+")",f);else{tb(a.controller.ze,b,c);try{if(0g&&0c.indexOf("0x")&& +l.reset=function(){if(!this.B&&!this.D&&this.W){var a=1024*Zl(this.W);this.A&&a!=this.A&&(Hc(this.ma,this.B,this.A),this.C=!1);this.A=a}!this.C&&this.A&&wc(this.ma,this.B,this.A,1)&&(this.C=!0,"ramCPQ"==this.Ce&&(this.controller=new qq(this),wc(this.ma,rq,4,4,this.controller)));if(this.C){if(this.F||Qc(this.ma,1138,4660),"ramCPQ"!=this.Ce&&this.W&&(a=this.W,a.A)){var b=1048576>this.B?im:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+1]=c>>8;sm(a)}}else mb("No RAM allocated")}; +l.save=function(){var a=new eg(this);this.controller&&a.set(0,this.controller.save());return a.data()};l.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function qq(a){this.D=a;this.C=sq;this.H=tq;this.B=uq;this.A=null}l=qq.prototype;l.save=function(){return[this.C,this.B]};l.restore=function(a){this.fc(0,a[0]&255);this.fc(2,a[1]&255);return!0};l.Ja=function(a){var b=255;2>a?b=a&1?this.H>>8:this.H&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b}; +l.fc=function(a,b){if(a)2==a&&(this.B=this.B&-256|b);else if(b!=(this.C&255)){a=this.D.ma;if(b&vq)this.A&&(Cc(a,wq,xq,this.A),this.A=null);else{this.A||(this.A=Dc(a,wq,xq));var c=Dc(a,yq,xq);Cc(a,wq,xq,c,b&zq?1:Jc)}this.C=this.C&-256|b}};l.zj=function(){return Aq};l.ih=function(){return Bq};var rq=-2134900736,yq=16646144,wq=917504,xq=131072,vq=1,zq=2,sq=65535,tq=2575,uq=2,Aq=[null,0],Bq=[function(a){return this.controller.Ja(a)},null,null,function(a,b){this.controller.fc(a,b)},null,null]; +eb(function(){for(var a=Bb(document,"pcx86","ram"),b=0;b=n.he&&d<=n.z&&(d-=n.he-n.ge),d=Mq[e]==d),d){(a=a.na["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}} +l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.H=c;this.ca=d;this.W=bc(a,"ChipSet");this.G=Fd(a,"autoType")||this.G;$f(c,33,this.bn.bind(this))};l.bn=function(){if(10==(this.H.D>>8&255)&&!this.F&&this.G){var a=this.F=Qq(this.G);a&&!this.C&&(this.C=a,Oq(this,150))}return!0}; +function Qq(a){if(a){for(var b,c=/(?:^|[^$])\$([a-z]+)/g;b=c.exec(a);){var d;switch(b[1]){case "date":d=Fa("n-j-Y");break;case "time":d=Fa("h:i:s");break;default:continue}a=a.replace("$"+b[1],d)}a=a.replace(/\$\$/g,"$$")}return a}function Dq(a,b){var c=0;a.da=null;"string"==typeof b&&(a.da=b.toUpperCase(),c=Rq.indexOf(a.da),0>c&&(c=0));if(b=Rq[c])a.aa=parseInt(b.substr(2),10)}function Fp(a){Rb(a,"keyboard reset",65792);a.A=[];Hp(a,Sq)} +function qp(a,b,c){a.L!==c&&(a.L=a.M=c)&&(a.J=!0);a.K!==b&&(a.K=b)&&!a.M&&cq(a,!0);a.K&&a.M&&(Fp(a),a.M=!1)}function Hp(a,b){a.W&&(a.A.unshift(b),a.J=!0,aq(a.W,b))}function xp(a){var b=0;a.A.length&&a.J&&(b=a.A[0],a.W&&aq(a.W,b));t(a)&&Rb(a,b?"scan code "+r(b)+" available":"no scan codes available")}function np(a){var b=0;a.A.length&&(b=a.A[0]);t(a)&&Rb(a,"scan code "+r(b)+" delivered");return b} +function cq(a,b){0>=1);if(b&Wq){if(!1===d)return!0;d=null}null==d?d=!((c?a.D:a.jc)&b):d||b&Xq&&(b=Xq);if(c){a.D&=~b;d&&(a.D|=b);c=b;var f,g;for(g in Yq)d="led-"+g,e=Yq[g],c&&c!=e||!(f=a.na[d])||(f.style.backgroundColor=a.D&e?"#00ff00":"#000000")}else a.jc&=~b,d&&(a.jc|=b);return!0}}return!1} +function Gq(a,b,c){if((O[b]||O[b+=1E3])&&a.H&&a.H.ba.jb){Uq[b]&&a.B.length&&0e||(e==a.B.length&&(d={},d.Ae=b,d.jc=a.jc,Pq(a,b,!0),e++),0b.Bd){if(!b.qf){Nq(a,b.Ae);return}b.qf=!1;c=a.ea}else c=1==b.Bd++?500:100;b.hl=setTimeout(function(a){return function(){Zq(a,b)}}(a),c)}} +function ar(a,b,c){var d=b;if(b>=n.ge&&b<=n.fg)!(a.jc&(br|cr|dr))==c&&(d=b+(n.he-n.ge));else if(b>=n.he&&b<=n.z)!!(a.jc&(br|cr|dr))==c&&(d=b-(n.he-n.ge));else if(!!(a.jc&(br|cr))==c){if(a=na[b])d=a}else if(a=ma[b])d=a;return d}l.Eg=function(a){a||(this.jc&=~Xq)}; +function Eq(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode;a.C="";var h=ar(a,g,!0);a.gh&&h==n["`"]&&(g=h=27);if(O[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),Lq(a,h,!1,c)){if(20==g||144==g||145==g)a.Z||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k=n.ge&&b<=n.fg||b>=n.he&&b<=n.z;e>>>=8;){var g=0,h=e&255;f==nr||f==or?d.push(f|(c?0:mr)):(h==Q?a.D&(br|cr)||a.D&dr&&b||(g=h):h==pr?a.D&(er|qr)||(g=h):h==rr?a.D&(fr|sr)||(g=h):d.push(f|(c?0:mr)),g&&(c?d.unshift(g):d.push(g|mr)))}for(c=0;c"]]=52|Q<<8;O[n["/"]]=53; +O[n["?"]]=53|Q<<8;O[3016]=54;O[1044]=55;O[1018]=rr;O[1032]=57;O[Hq]=58;O[1112]=59;O[1113]=60;O[1114]=61;O[1115]=62;O[1116]=63;O[1117]=64;O[1118]=65;O[1119]=66;O[1120]=67;O[1121]=68;O[Iq]=69;O[Jq]=70;O[1036]=71;O[1038]=72;O[1033]=73;O[1109]=74;O[1037]=75;O[1101]=76;O[1039]=77;O[1107]=78;O[1035]=79;O[1040]=80;O[1034]=81;O[1045]=82;O[1046]=lr;O[4027]=84;O[1122]=87;O[1123]=88;O[1091]=91;O[1093]=93;O[1224]=91;O[vr]=46|pr<<8;O[gr]=70|pr<<8;O[4046]=lr|pr<<8|rr<<16;O[4045]=82|pr<<8|rr<<16; +O[4013]=28|pr<<8|rr<<16;var Dp=255,Gp=243,Ip=237,Sq=170,Ep=250,ur=255,tr=20;eb(function(){for(var a=Bb(document,"pcx86","keyboard"),b=0;bc.length)c=[!1,0,null,null,0,Array(b>2,32768));this.rc=c[0];this.Wc=c[1];this.$e=c[2];this.fa=c[3];this.ec=c[4]&255;this.Ig=c[4]>>8&255;this.Sa=c[5];this.rh=yr;this.hg=Ar;this.kd=(this.Sa[Br]<<8)+this.Sa[Cr]|0;if(b>=mq){this.rh=zr;this.hg= +Dr;(b=c[6])||(b=[!1,0,Array(Er),0,f==bm?0:Fr,0,0,Array(Gr),0,0,0,Array(Hr),0,[this.bb,this.Qb,this.wd],Array(this.wd>>2),Ir|Jr|Kr|Lr|Mr,0,-1,0,-1,0,-1,0,0,0,0,Nr,Or,0,0,Pr,Array(Qr)]);this.Me=b[0];this.Cd=b[1];this.Cc=b[2];this.Wg=Rr;this.Lg=b[3];this.bf=b[4];this.Pf=b[5];this.Fd=b[6];this.ee=b[7];this.Yg=Sr;this.al=b[8];this.bl=b[9];this.Ed=b[10];this.Dd=b[11];this.Xg=Tr;this.wb=b[12];d=b[13];"number"==typeof d&&(d=[this.bb,this.Qb,d]);this.bb=d[0];this.Qb=d[1];d=this.wd>>2;if((this.fd=b[14])&&this.fd.length< +d){for(var e=this.fd,g=0,h=Array(d),k=0;k=mq){var c=[];c[0]=a.Me;c[1]=a.Cd;c[2]=a.Cc;c[3]=a.Lg;c[4]=a.bf;c[5]=a.Pf;c[6]=a.Fd;c[7]=a.ee;c[8]=a.al;c[9]=a.bl;c[10]=a.Ed;c[11]=a.Dd;c[12]=a.wb;c[13]=[a.bb,a.Qb,a.wd];var d;if(d=a.fd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h>1;f[e++]=k;h=m}f.length=mq){var d=0,e=0,f=0;switch(b){case bs:d=cs;a.La==oq&&(e=ds);break;case es:a.La==mq&&(d=fs);break;case gs:d=hs;a.La==oq&&(e=is);break;case js:d=ks;a.La==oq&&(e=ls);break;case ms:d=ns;a.La==oq&&(f=os);break;case ps:d=qs,a.La==oq&&(f=rs)}d&&(c|=a.Sa[ss]&d?256:0,c|=a.Sa[ss]&e?512:0,c|=a.Sa[ts]&f?512:0)}return c} +var Br=12,Cr=13,yr=18,bs=6,ss=7,cs=1,ks=2,hs=4,ns=8,qs=16,fs=32,ds=32,ls=64,is=128,ts=9,os=32,rs=64,es=10,gs=16,js=18,ms=21,ps=24,zr=25,Ar="HTOTAL HDISP HSYNC_POS HSYNC_WIDTH VTOTAL VTOTAL_ADJ VDISP VSYNC_POS INTERLACE_POS MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),Dr="HTOTAL HDISP_END HBLANK_START HBLANK_END HRETRACE_START HRETRACE_END VTOTAL OVERFLOW PRESET_SCAN MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO VRETRACE_START VRETRACE_END VDISP_END OFFSET UNDERLINE VBLANK_START VBLANK_END MODE_CTRL LINE_COMPARE".split(" "), +Er=20,Rr="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVERSCAN PLANES HPAN".split(" "),Fr=1,Nr=1,Gr=5,Sr=["RESET","CLOCKING","MAPMASK","CHARMAP","MEMMODE"],Or=255,Pr=0,Qr=256,Hr=9,Tr="SRESET ESRESET COLORCMP DATAROT READMAP MODE MISC COLORDC BITMASK".split(" "),Ir=1024,Jr=4096,Zr=65280,Kr=0,Lr=16,as=255,Mr=-2147483648,Ur=[];Ur[2]=Ir;Ur[3]=Ir|Jr;Ur[16]=1280;Ur[512]=Kr;Ur[1024]=Kr|32;Ur[1536]=Kr|96;Ur[2560]=Kr|160;Ur[3584]=Kr|224;Ur[768]=Kr|Lr; +Ur[4096]=1;Ur[8192]=2;Ur[24576]=98;Ur[40960]=162;Ur[57344]=226;var $r=[];$r[Ir]=function(a){a+=this.H;return(this.controller.wb=this.Y[a])>>this.controller.hi&255};$r[Ir|16384]=function(a){return(this.controller.wb=this.Y[(a&-4)+this.H])>>((a&3)<<3)&255};$r[Ir|Jr]=function(a){a+=this.H;var b=this.controller.wb=this.Y[a&-2];return(a&1?b>>8:b)&255}; +$r[1280]=function(a){a+=this.H;a=this.controller.wb=this.Y[a];for(var b=this.controller.th,c=this.controller.sh&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d};$r[Kr]=function(a,b){a+=this.H;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +$r[Kr|32]=function(a,b){a+=this.H;b=b>>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +$r[Kr|96]=function(a,b){a+=this.H;b=b>>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b&=this.controller.wb;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +$r[Kr|160]=function(a,b){a+=this.H;b=b>>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b|=this.controller.wb;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +$r[Kr|224]=function(a,b){a+=this.H;b=b>>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b^=this.controller.wb;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)};$r[Kr|4]=function(a,b){var c=(a&-4)+this.H;a=(a&3)<<3;b=b<>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Bb;b=this.controller.Hf&b|this.controller.wb&~b;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +function R(a,b,c,d,e){rb.call(this,"Video",a,262144);var f=this;this.cd=Wa("Gecko/");var g=["","moz","ms","webkit"];this.da=a.model;var h=vs[this.da]||vs.mda;this.La=h[0];this.wd=a.memory||0;this.qd=a.switches;this.aa=a.mode;if(null==this.aa||null==ws[this.aa])this.aa=h[1];this.Ob=a.charCols;this.Hc=a.charRows;if(void 0===this.Ob||void 0===this.Hc)this.Ob=ws[this.aa][0],this.Hc=ws[this.aa][1];this.X=a.screenWidth;this.ha=a.screenHeight;this.ed=a.scale;this.Td=12<=Math.round(this.X/this.Ob);this.N= +b;this.L=c;this.D=(this.sg=d)||b||null;this.lc=a.screenColor||"black";this.pd=(1-(a.flicker||0)).toString();this.Fb=!1;b&&(b.style.backgroundColor=this.lc);e&&(e.style.backgroundColor=this.lc);b=a.smoothing;(c=Xa("smoothing"))&&(b="true"==c);if(null!=b)for(c=0;c=mq&&(Tc(b,this,Fs),Xc(b,this,Gs));this.La==oq&&(Tc(b,this,Hs),Xc(b,this,Is));d&&Il(d,262144,function(a){if(e.B)if(a[0]){var b=e.B;if(b.fd){var c,d,f,g=!1,h=8,H=8,I=-1,L=b.video.F>>3;for(c=0;c=d&&(H=d,g=!0);break; +case "p":0<=d&&3>=d&&(I=d);break;case "w":d=b.bb&&(f-=b.bb);a="";for(c=0;cI?q(K):ra(K>>(I<<3),8));g&&(f+=L-H);a&&(a+="\n");a+=P}a&&b.ca.O(a);b.B=f}else b.ca.O("no buffer")}else e.ca.O("BIOSMODE: "+r(e.la)),b=e.B,Xr(b,"CRTC",b.ec,b.Sa,b.hg),b.La>=mq&&(Xr(b," GRC",b.Ed,b.Dd,b.Xg),Xr(b," SEQ",b.Fd,b.ee,b.Yg),Xr(b," ATC",b.Cd,b.Cc, +b.Wg),Xr(b," ATCINDX",b.Cd),b.ca.O(" ATCDATA: "+b.Me),Xr(b," FEAT",b.Pf),Xr(b," MISC",b.bf),Xr(b," STATUS0",b.Lg)),Xr(b," STATUS1",b.fa),b.La!=Cs&&b.La!=zs||Xr(b," MODEREG",b.Wc),b.La==zs&&Xr(b," COLOR",b.$e),b.La>=mq&&(b.ca.O(" LATCHES: "+q(b.wb)),b.ca.O(" ACCESS: "+q(b.wg,4)),b.ca.O("Use 'dump video [addr]' to dump video memory"));else e.ca.O("no active video card")});if((this.C=bc(a,"Keyboard"))&&this.N){for(var f in this.na)0c&&(a=Math.round(c/b*100)+"%")}d.cd?(d.N.style.width=a,d.N.style.width=a,d.N.style.display="block",d.N.style.margin="auto"):(d.Da.style.width=a,d.Da.style.height="auto");d.Da.style.backgroundColor=d.lc;d.lb()}d.D&&d.D.focus()}}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.Vd= +c.textContent,this.D&&this.D.re?c.onclick=function(){d.re(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){Ns(d,!0)},!0}return!1};function ys(a,b){!b&&a.Da&&(a.cd?a.N.style.width=a.N.style.height="":a.Da.style.width=a.Da.style.height="");Rb(a,"notifyFullScreen("+b+")",!0);a.C&&(a.C.gh=b)}l.re=function(a){var b=!1;this.D&&(a?this.D.re&&(this.D.re(),this.G&&this.G.If(!0),b=!0):this.D.A&&(this.D.A(),this.G&&this.G.If(!1),b=!0),this.D&&this.D.focus());return b}; +l.If=function(a){this.G&&(this.G.If(a),this.C&&(this.C.gh=a));var b=this.na.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Vd)};function Js(a,b){var c=a.D;c&&!a.Ic&&(c.addEventListener("touchstart",function(b){Os(a,b,!0)},!1),c.addEventListener("touchmove",function(b){Os(a,b)},!0),c.addEventListener("touchend",function(b){Os(a,b,!1)},!1),a.Ic=b,a.tb=a.ub=a.Gd=-1,a.zc=!1,a.Ib=null,a.vc=!1,a.Ud=function(){a.vc=!0;a.G.$d(Ps,!0)})}l.Eg=function(a){this.C&&this.C.Eg(a)}; +function Os(a,b,c){var d,e,f=0,g=0;d=a.N;do isNaN(d.offsetLeft)||(f+=d.offsetLeft,g+=d.offsetTop);while(d=d.offsetParent);var h=a.X/a.N.offsetWidth,k=a.ha/a.N.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(a.Ic==Ls)c&&Gq(a.C,Qs[e/(a.ha/3)|0][d/(a.X/3)|0],!0);else if(a.G){g=a.zc;f=b.timeStamp-a.Gd;!0===c?(a.zc=500f){a.G.$d(Ps,!0);a.G.$d(Ps,!1);return}}if(c||0>a.tb||0>a.ub)a.tb=d,a.ub=e;c=Math.round(d-a.tb);b=Math.round(e-a.ub);a.tb=d;a.ub=e;a.G.tf(c,b,a.tb,a.ub)}}l.Xb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0}; +l.reset=function(){var a=!0,b=0;this.W&&(b=+am(this.W,pl,void 0));this.da||(this.La=b==bm?Cs:zs);this.aa=Rs;switch(this.La){case oq:b=7;break;case mq:var c=Ss[this.Db];c&&(b=c[0]);b||(b=4);break;case Cs:b=bm;this.aa=Ts;break;default:b=2}this.ea!==b&&(this.ea=b,a=!0);this.B=null;this.P=this.Rb=new wr(this,Cs);this.K=this.Eb=new wr(this,zs);this.La>1&255,d=d>>8&~Xs,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?Ys|Zs:$s|at)|bt&d>>8);Qc(this.ma,b,c|d<<8)}Ns(this,!0)}};function Us(a){a.A.bf&Fr?(a.P=a.Rb,a.K=a.A):(a.P=a.A,a.K=a.Eb)}l.save=function(){var a=new eg(this);a.set(0,Wr(this.Rb));a.set(1,Wr(this.Eb));a.set(2,[this.ea,this.aa,this.la]);a.set(3,Wr(this.A));return a.data()}; +l.restore=function(a){var b=a[2];this.ea=b[0];this.aa=b[1];this.la=b[2];this.B=null;this.P=this.Rb=new wr(this,Cs,a[0]);this.K=this.Eb=new wr(this,zs,a[1]);this.A=new wr(this,this.La,a[3],this.wd);this.A.rc&&Us(this);Vs(this);if(!ct(this))return!1;dt(this);return!0}; +function Ms(a,b,c,d){if(d)a.Ca("Unable to load font ROM (error "+d+": "+b+")",0>d);else{tb(a.De,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){mb("Empty font ROM: "+b);return}if(1==f.length){mb(f[0]);return}if(8192==f.length)nq(a,f,[6144,0]);else if(2048==f.length)nq(a,f,[0]);else{a.Ca("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Ca("Font ROM data error: "+g.message);return}(a.L||a.ca)&&Ob(a)}} +function et(a,b){if(1==b)return a.ga[0]=ft[$s],a.ga[1]=ft[Ys],a.ga;if(2==b){var c=a.B.$e;if(a.B===a.A){var d=a.A.Cc[0],c=d&7;d&16&&(c|=8);18!=a.A.Cc[1]&&(c|=32)}a.ga[0]=ft[c&15];c=c&32?gt:ht;for(d=0;de;e++)f=d[e]||0,g=f<<2&252,h=f>>4&252,f=f>>10&252,a.ga[e]=[g,h,f,255];else{var k=d&&d[255];b=null!=c.Cc[15]?c.Cc:it;for(e=0;16>e;e++)f=b[e]&63,k?(f|= +(c.Cc[20]&12)<<4,c.Cc[16]&128&&(f&=-49,f|=(c.Cc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.ga[e]=[g,h,f,255]}a.Ia=!0}return a.ga}function nq(a,b,c,d){a.yb=b;a.Ya=c;a.Ga=d} +function Vs(a,b){var c=!1;if(window&&a.yb&&(!b||a.I)){var d=0,e=a.Ga?a.Ga:8,f=et(a);null!=a.Ya[0]&&jt(a,kt,a.Ya[0],d,e,8,a.yb,f)&&(c=!0);d=a.Ga?0:2048;e=a.Ga?a.Ga:9;null!=a.Ya[1]&&(jt(a,lt,a.Ya[1],d,e,14,a.yb,mt,nt)&&(c=!0),a.Ga&&jt(a,a.La,a.Ya[1],0,a.Ga,14,a.yb,f)&&(c=!0))}b||(a.Z=-1,a.Aa=-1,a.va=0);return c}function jt(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&(ot(a,b,c,d,e,f,g,h,k)&&(m=!0),a.Td&&ot(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m} +function ot(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,v=a.sa[b],u=16>h.length?h.length:16;v||(v={Fc:e<Ba||!P?Ba:8,kb=cb.createImageData(m.Fc,m.Gc);for(Oa=0;256>Oa;Oa++){for(db=0;db=Ba-2,Md=ba[db>(8<=jb&&192<=Oa&&223>=Oa?7:jb)?F:ib;pt(kb,Ag,jf,Bg);I&&pt(kb,Ag+1,jf,Bg)}cb.putImageData(kb,(Oa&15)*m.Fc,(Oa>>4)*m.Gc)}m.Fe[H]="#"+q(F[0],2)+q(F[1],2)+q(F[2],2);m.Ti[H]=F;m.Vg[H]=pa;m=!0}}a.sa[b]=v;return m}function qt(a){0a.Aa&&(a.Aa=0):a.Aa=-1} +function dt(a){if(a.I){for(var b=10;15>=b;b++)if(null==a.B.Sa[b])return;var c=a.B.Sa[10],b=c&31,d=a.B.Sa[11]&31,e=a.B.Sa[9]&31,f=!1;a.B===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)rt(a);else{c=a.B.Sa[15]+((a.B.Sa[14]&63)<<8);a.Z!=c&&(rt(a),a.Z=c);d=d-b+1;if(a.Hd!=b||a.Vc!=d)a.Hd=b,a.Vc=d;a.xa=e+1;qt(a)}}}function rt(a){if(0<=a.Z){if(void 0!==a.M){var b=st<<8,c=a.M[a.Z];if(c&b){var c=c&~b,b=a.Z%a.F,d=a.Z/a.F|0;a.I&&a.sa[a.I]&&(a.Ea&&tt(a,b,d,c,a.Ea),tt(a,b,d,c));a.M[a.Z]=c}}a.Z=-1}} +function ut(a){var b,c=a.B;a.bd=!1;var d=c.Dd[5];if(null!=d){b=Ir;var e=Kr,f=c.Dd[3]&31;switch(d&3){case 0:if(f){e=Kr|32;switch(f&24){case 8:e=Kr|96;break;case 16:e=Kr|160;break;case 24:e=Kr|224}c.Sc=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.La==oq&&(e=3,c.Sc=f&7)}d&8&&(b=1280);c=c.ee[4];null!=c&&(c&4||(b|=Jr,e|=Lr),d&64&&(c&8&&(b|=16384,e|=4),a.bd=!0));b|=e}return b} +function vt(a,b){var c=a.B;return c&&null!=b&&b!=c.wg?(c.Ng(b),a.ma.Ng(c.bb,c.Qb,c.ih(),!0),!0):!1} +function ct(a,b){var c,d=a.la,e=a.B;if(e)if(e.La==Cs)d=Ts;else if(e.La>=mq){var d=null,f=e.wd>>2,g=32768=e.Sa[js]?At:Bt:Ct:g&128|| +350>f?d=m?Dt:Et:480<=f&&(d=a.ea==bm?Ft:Gt):d=m?7-d:Ht:d-=m?2:0);c=ut(a)}}else e.Wc&8?(e.Wc&2?(d=e.Wc&16?Ht:It,e.Wc&4||--d):(d=e.Wc&1?Rs:Jt,e.Wc&4&&--d),a.Fb&&(a.N.style.opacity="1",a.Fb=!1)):!a.Fb&&1>+a.pd&&(a.Fb=!0,a.N.style.opacity=a.pd,e=a.H,Td(e),e.T.ve=0,Id(e));else a.la=null,null==d&&(d=a.aa);if(!Ws(a,d,b))return!1;vt(a,c);return!0} +function Ws(a,b,c){if(null!=b&&(b!=a.la||c)){a.Rd=0;a.la=b;a.Ia=!1;b=a.B||(b==Ts?a.P:a.K);if(b!=a.B||b.bb!=a.bb||b.Qb!=a.Qb){rt(a);if(a.bb){if(!Hc(a.ma,a.bb,a.Qb))return!1;a.B&&(a.B.rc=!1)}a.B=b;b.rc=!0;a.bb=b.bb;a.Qb=b.Qb;if(!wc(a.ma,b.bb,b.Qb,3,b===a.A?b:null))return!1}a:{a.I=0;a.F=a.Ob;a.J=a.Hc;a.Ta=a.F;a.Nb=ws[Ts][2];b=0;if(c=ws[a.la])a.F=c[0],a.J=c[1],a.Nb=c[2],b=c[3],a.I=c[4],4!=a.ea&&7!=a.ea||a.B!==a.A||a.I!=kt||(7==(a.A.Sa[ts]&31)?a.J=350>Yr(a.A,js)?43:50:a.I=a.La);a.nd=a.F*a.J|0;a.md=a.nd/ +a.Nb|0;a.Za=a.md;a.kc=0;void 0!==b&&(a.Za=(a.Za<<1)+b|0,a.kc=a.Za+b>>1);if(a.sa.length){a.oa=a.X/a.F|0;a.qa=a.ha/a.J|0;if(a.I){b=a.sa[a.I];if(!b)break a;c=a.sa[a.I<<1];a.ed&&80==a.F?c&&a.oa>=3*c.Fc>>2&&(a.I<<=1,b=c):(c&&a.oa>=c.Fc&&(a.I<<=1,b=c),a.ed||(a.oa=b.Fc,a.qa=b.Gc));a.fb=a.kb=0;b&&(a.fb=a.F*b.Fc,a.kb=a.J*b.Gc)}else a.oa=a.qa=1,a.fb=a.F,a.kb=a.J;a.Ma=a.L.createImageData(a.fb,a.kb);a.Ba=document.createElement("canvas");a.Ba.width=a.fb;a.Ba.height=a.kb;a.Ea=a.Ba.getContext("2d");a.Kc=a.Lc=0; +a.sc=a.X;a.tc=a.ha;b=a.X-a.F*a.oa;c=a.ha-a.J*a.qa;0>1,a.sc-=b);0>1,a.tc-=c);if(b||c)a.L.fillStyle=a.N.style.backgroundColor,a.L.fillRect(0,0,a.X,a.ha)}}Kt(a,!0);Ns(a)}return!0}function pt(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Lt(a){a.va=-1;a.ka=!1;var b=a.md;if(void 0===a.M||a.M.length!=b)a.M=Array(b)}function Kt(a,b){b||(a.Ia=!1);Lt(a)} +function tt(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.sa[a.I];h.kf&&(d=h.kf[d]);var k=g>>4&15;h.kf&&(k=h.kf[k]);e?(b*=h.Fc,c*=h.Gc,e.fillStyle=h.Fe[k],e.fillRect(b,c,h.Fc,h.Gc)):(b=b*a.oa+a.Kc,c=c*a.qa+a.Lc,a.L.fillStyle=h.Fe[k],a.L.fillRect(b,c,a.oa,a.qa));g&Mt&&(k=(f&15)*h.Fc,f=(f>>4)*h.Gc,e?e.drawImage(h.Vg[d],k,f,h.Fc,h.Gc,b,c,h.Fc,h.Gc):a.L.drawImage(h.Vg[d],k,f,h.Fc,h.Gc,b,c,a.oa,a.qa));g&st&&(f=a.Hd,g=a.Vc,e?(a.xa&&a.xa!==h.Gc&&(f=f*h.Gc/a.xa|0,g=g*h.Gc/a.xa|0),e.fillStyle=h.Fe[d],e.fillRect(b, +c+f,h.Fc,g)):(a.xa&&a.xa!==a.qa&&(f=f*a.qa/a.xa|0,g=g*a.qa/a.xa|0),a.L.fillStyle=h.Fe[d],a.L.fillRect(b,c+f,a.oa,g)))} +function Ns(a,b){if(a.ba.dc){var c=!1,d=a.B;d&&(d!==a.A?d.Wc&8&&(c=!0):d.Cd&32&&(c=!0));if(c||b){if(b)Lt(a);else if(void 0===a.M)return;var e=!1;!(b||++a.Rd&15)&&0<=a.Aa&&(a.Aa++,e=!0);var f=0,g=a.nd,h=a.bb,c=h,k=c+a.Qb;a.la>=At&&(h=c=655360,k=c+65536);if(Nt(a,d)&8||d.Ze&&d.Ze=mq&&d.Sa[19]&&d.Sa[19]<<1!=d.Sa[1]+1&&(a.Ta=d.Sa[19]<<(a.I?1:d.Sa[20]&64?3:4),m=(a.Ta*(a.J-1)+a.F)/a.Nb|0,a.la<=Ts&& +(m<<=1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.ka){b=a.ma;for(var p=!0,v=c>>>b.A;0f)return;g=f+1}}if(a.I){if(a.sa[a.I]){d=f;f=0;e=a.va=0;h=Mt<<8;b=1048575;p=a.B.Wc&32;a.La>=mq&&(p=a.B.Cc[16]&8);m=a.Z-a.B.kd;p&&(e=Xs<<8,b&=~e,a.Aa&2||(b&=~h));for(c+=d<<1;c>8|(u&255)<<8;var L=e,P=16;m>=h))>>(P-=h);pt(a.Ma,m++,p,b[Ba])}m>F&&(F=m);p=I&&(I=p+1)}k+=2;d++;if(m>=a.F){m=0;p+=2;if(p>a.J)break;p==a.J&&(p=1,k=c+a.kc)}}a.ka=!0; +va.F?a.Ta-a.F-u>>3:0;c>=8;b>v&&(v=b);m=H&&(H=m+1)}c+=I;if(b>=a.F){b=0;if(++m>a.J)break;c+=L}}u||(a.ka=!0);pa.F?a.Ta-a.F-H>>3:0;cL&&(P=L)):(u<<=H,P-=H,a.ka=!1):(a.ka&&u===a.M[d]?(h+=P,P=0):a.M[d]=u,d++);if(P){hp&&(p=h);b=F&&(F=b+1)}if(h>=a.F){h=0;if(++b>a.J)break;c+=I}}H||(a.ka=!0);ma&&(b.zh=a,a=-a|0);a%b.uh>b.sn&&(c|=1);a%b.xh>b.un&&(c|=9);b.ii=a/b.xh|0;return c}l.Gm=function(a,b){return ou(this,this.P,a,b)};l.mo=function(a,b,c){var d=this.P;d.Ig=d.ec;d.ec=b&31;w(this,a,b,c,"CRTC.INDX")};l.Fm=function(a,b){return pu(this,this.P,a,b)};l.lo=function(a,b,c){qu(this,this.P,a,b,c)};l.Hm=function(a,b){return ru(this,this.P,b)};l.no=function(a,b,c){a=this.P;w(this,a.port+4,b,c,"MODE");a.Wc=b;ct(this,!1)}; +l.Im=function(a,b){return su(this,this.P,b)};l.Rk=function(a,b,c){this.A.Pf=this.A.Pf&-4|b&3;w(this,a,b,c,"FEAT")};l.em=function(a,b){a=this.A.Cd;b&&!t(this)||w(this,960,null,b,"ATC.INDX",a);return a};l.vl=function(a,b){a=this.A.Cc[this.A.Cd&31];b&&!t(this)||w(this,960,null,b,"ATC."+this.A.Wg[this.A.Cd&31],a);return a}; +l.Qk=function(a,b,c){var d=this.A,e=d.Cd&32;if(d.Me){d.Me=!1;var f=d.Cd&31;if(16<=f||!e)if(tu||d.Cc[f]!==b)c&&!t(this)||w(this,a,b,c,"ATC."+d.Wg[f]),d.Cc[f]=b,Kt(this,!1)}else d.Cd=b,w(this,a,b,c,"ATC.INDX"),d.Me=!0,b&32&&!e&&Vs(this,!0)&&Ns(this,!0),a=(d.Sa[Br]<<8)+d.Sa[Cr]|0,d.kd!=a&&(d.kd=a,Kt(this)),d.Ze=0}; +l.Sm=function(a,b){a=0;if(this.La==mq)a=3-((this.A.bf&12)>>2),a=(this.Db&1<>this.A.xc&63;b&&!t(this)||w(this,969,null,b,"DAC.DATA["+r(this.A.dd)+"]["+r(this.A.xc)+"]",a);this.A.xc+=6;12Missing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.height="auto";0<=Qa().indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth, +d.screenHeight),c.onresize(null));var f=+(d.aspect||Xa("aspect"));f&&.3<=f&&3.33>=f&&(bb("onresize",function(a,b,c){return function(){b.style.height=(a.clientWidth/c|0)+"px"}}(c,e,f)),window.onresize());c.appendChild(e);f=document.createElement("textarea");Wa("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"),f.style.fontSize="16px");c.appendChild(f);var g=e.getContext("2d"),d=new R(d,e,g,f,c);Ab(d,c)}}); +function uu(a){rb.call(this,"ParallelPort",a,4194304);this.G=a.adapter;switch(this.G){case 1:this.D=956;this.C=7;break;case 2:this.D=888;this.C=7;break;case 3:this.D=632;this.C=5;break;default:mb("Unrecognized parallel adapter #"+this.G);return}this.A=this.B=null;a=a.binding;"console"==a?this.B="":yb(this,a,vu)}ca(uu,rb);l=uu.prototype;l.Cb=function(a,b,c){switch(b){case vu:return this.na[b]=this.A=c,!0}return!1}; +l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.W=bc(a,"ChipSet");Tc(b,this,wu,this.D);Xc(b,this,xu,this.D);Ob(this)};l.Xb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){yu(this)};l.save=function(){var a=new eg(this),b=0,c=[];c[b++]=this.F;c[b++]=this.Mb;c[b]=this.mf;a.set(0,c);return a.data()};l.restore=function(a){return yu(this,a[0])}; +function yu(a,b){var c=0;b||(b=[0,0,0]);a.F=b[c++];a.Mb=b[c++];a.mf=b[c];return!0}l.tm=function(a,b){var c=this.F;w(this,a,null,b,"DATA",c);return c};l.Rm=function(a,b){var c=this.Mb;w(this,a,null,b,"STAT",c);return c};l.pm=function(a,b){var c=this.mf;w(this,a,null,b,"CTRL",c);return c}; +l.Xn=function(a,b,c){w(this,a,b,c,"DATA");this.F=b;this.Mb|=zu;a=!1;Rb(this,"transmitByte("+r(b)+")");this.A&&(8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0);if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}a&&(this.Mb&=~zu);Au(this)};l.Sn=function(a,b,c){w(this,a,b,c,"CTRL");this.mf=b;Au(this)}; +function Au(a){a.W&&a.C&&(a.mf&Bu&&!(a.Mb&zu)?qh(a.W,a.C):oh(a.W,a.C))}var vu="buffer",zu=64,Bu=16,wu={0:uu.prototype.tm,1:uu.prototype.Rm,2:uu.prototype.pm},xu={0:uu.prototype.Xn,2:uu.prototype.Sn};eb(function(){for(var a=Bb(document,"pcx86","parallel"),b=0;b=b)a.preventDefault&&a.preventDefault(),64");if(2==c.length){var d=Aa(c[0]);if(d!=this.Ce)return;c=Aa(c[1]);if(this.D=Eb(c)){var e=this.D.exports;if(e){var f=e.connect;f&&f.call(this.D,this.P);if(this.aa=e.receiveData){this.P=a;this.X=e.receiveStatus;this.status("Connected "+this.De+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}}; +l.Xb=function(a,b){if(!b)if(this.Dj(this.P),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){Iu(this)};l.save=function(){var a=new eg(this),b=0,c=[];c[b++]=this.ga;c[b++]=this.ka;c[b++]=this.L;c[b++]=this.N;c[b++]=this.G;c[b++]=this.C;c[b++]=this.Z;c[b++]=this.B;c[b++]=this.A;c[b]=this.J;a.set(0,c);return a.data()};l.restore=function(a){return Iu(this,a[0])}; +function Iu(a,b){var c=0;b||(b=[0,0,Ju,0,Ku,0,0,Lu|Mu,a.qa,[]]);a.ga=b[c++];a.ka=b[c++];a.L=b[c++];a.N=b[c++];a.G=b[c++];a.C=b[c++];a.Z=b[c++];a.B=b[c++];a.A=b[c++];a.J=b[c];return!0}l.Of=function(a){if("number"==typeof a)this.J.push(a);else if("string"==typeof a)for(var b=0;b>8:this.N;w(this,a,null,b,this.C&Su?"DLM":"IER",c);return c};l.Bm=function(a,b){var c=this.G;w(this,a,null,b,"IIR",c);return c};l.Cm=function(a,b){var c=this.C;w(this,a,null,b,"LCR",c);return c};l.Em=function(a,b){var c=this.Z;w(this,a,null,b,"MCR",c);return c}; +l.Dm=function(a,b){var c=this.B;w(this,a,null,b,"LSR",c);return c};l.Jm=function(a,b){var c=this.A;this.A&=~(Ou|Pu);w(this,a,null,b,"MSR",c);return c}; +l.vo=function(a,b,c){w(this,a,b,c,this.C&Su?"DLL":"THR");if(this.C&Su)this.L=this.L&-256|b;else{this.ka=b;this.B&=~(Lu|Mu);a=!1;Rb(this,"transmitByte("+r(b)+")");this.aa&&this.aa.call(this.D,b)&&(a=!0);if(this.F){if(13==b)this.K=0;else if(8==b)this.F.value=this.F.value.slice(0,-1),0":String.fromCharCode(b);a=d.length;32>b&&1==a&&(a=0);9==b&&(b=this.oa||8,a=b-this.K%b,this.oa&&(d=za("",a)));this.la&&!this.K&&a&&(d=String.fromCharCode(this.la)+ +d);this.F.value+=d;this.F.scrollTop=this.F.scrollHeight;this.K+=a}a=!0}else if(null!=this.I){if(10==b||1024<=this.I.length)this.O(this.I),this.I="";10!=b&&(this.I+=String.fromCharCode(b));a=!0}a&&(this.B=this.B|Lu|Mu)}};l.io=function(a,b,c){w(this,a,b,c,this.C&Su?"DLM":"IER");this.C&Su?this.L=this.L&255|b<<8:this.N=b};l.jo=function(a,b,c){w(this,a,b,c,"LCR");this.C=b}; +l.ko=function(a,b,c){var d=b^this.Z;w(this,a,b,c,"MCR");this.Z=b;d&(Tu|Uu)&&this.X&&(a=0,this.P?(a|=b&Uu?32:0,a|=b&Tu?320:0):(a|=b&Uu?16:0,a|=b&Tu?1048576:0),this.X.call(this.D,a))};function Qu(a){var b=-1;a.B&Ru&&a.N&Vu?b=Wu:a.A&(Ou|Pu)&&a.N&Xu&&(b=Yu);0<=b?(a.G&=~(Ku|Zu),a.G|=b,a.W&&a.M&&qh(a.W,a.M,100)):(a.G|=Ku,a.W&&a.M&&oh(a.W,a.M))} +var Fu="buffer",Ju=384,Vu=1,Xu=8,Ku=1,Wu=4,Yu=0,Zu=6,Su=128,Tu=1,Uu=2,Ru=1,Lu=32,Mu=64,Ou=1,Pu=2,Du=16,Eu=32,Gu={0:Cu.prototype.Om,1:Cu.prototype.Am,2:Cu.prototype.Bm,3:Cu.prototype.Cm,4:Cu.prototype.Em,5:Cu.prototype.Dm,6:Cu.prototype.Jm},Hu={0:Cu.prototype.vo,1:Cu.prototype.io,3:Cu.prototype.jo,4:Cu.prototype.ko};eb(function(){for(var a=Bb(document,"pcx86","serial"),b=0;ba.F||0>a.G)a.F=b.screenX,a.G=b.screenY;a.M?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.screenX-a.F,d=b.screenY-a.G);a.F=b.screenX;a.G=b.screenY;a.tf(c,d,a.F,a.G)}} +l.$d=function(a,b){if(this.rc&&this.H&&this.H.ba.jb){var c="mouse button"+a+" "+(b?"dn":"up");switch(a){case Ps:if(this.K!=b){this.K=b;fv(this,c);return}break;case gv:if(this.L!=b){this.L=b;fv(this,c);return}}Rb(this,c+": ignored")}};l.tf=function(a,b,c,d){this.rc&&this.H&&this.H.ba.jb&&(a||b)&&(t(this,16777216)&&Rb(this,"moveMouse("+a+","+b+")"),this.I=a,this.J=b,fv(this,null,c,d))}; +function fv(a,b,c,d){var e=64|(a.K?32:0)|(a.L?16:0)|(a.J&192)>>4|(a.I&192)>>6,f=a.I&63,g=a.J&63;t(a,8388608)&&Rb(a,(b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+r(e)+","+r(f)+","+r(g)+"]",0,!0);a.D.Of([e,f,g]);a.I=a.J=0} +l.tl=function(a){var b=1048592==(a&1048592);if(b){if(!this.rc){var c=!1;this.A&16||(this.reset(),Rb(this,"serial mouse reset"),c=!0);this.A&1048576||(Rb(this,"serial mouse ID requested"),c=!0);c&&(this.D.Of([hv,hv]),Rb(this,"serial mouse ID sent"));av(this);this.rc=b}}else this.rc&&(Rb(this,"serial mouse inactive"),bv(this),this.rc=b);this.A=a};var hv=77,Ps=0,gv=2;eb(function(){for(var a=Bb(document,"pcx86","mouse"),b=0;b>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.rb);for(c=0;cb.indexOf("/api/v1/dump")&&(a=va(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=pv(this,b),this.pg=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):wa(b, +"/")&&(c="dir"),f=Pa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Qe?"":d)+"&format=json"));var k="Loading "+f+"...";return!!Na(f,null,!0,function(a,b,c){qv(g,a,b,c)},function(){g.O(k,Lb.Ee)})}; +function qv(a,b,c,d){var e=null;a.Te=!1;var f=!(!(0>d&&a.pa)||a.pa.ba.dc);if(a.pg)d?a.Ca('Unable to connect to disk "'+a.G+'" (error '+d+": "+c+")",f):(a.D=!0,rv(a),e=a);else if(d)a.Ca('Unable to load disk "'+a.ld+'" (error '+d+": "+b+")",f);else{tb(a.controller.De,b,c);try{if(0g&&0c.indexOf("0x")&& '["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)mb(h[0]);else{a.rb=h.length;a.cb=h[0].length;a.Va=h[0][0].length;var k=h[0][0][0];a.Na=k&&k.length||512;for(d=c=0;d>2,p=k.pattern;void 0===p&&(p=k.pattern=0);var v=k.data;if(void 0===v){var u=k.bytes;if(void 0!==u&&u.length){for(var F=m<<2,H=u.length;H< -F;H++)u[H]=p;rv(k,u,0)}else k.data=v=[],u&&(k.pattern=p|p<<8|p<<16|p<<24);delete k.bytes}nv(k,d,f);for(F=0;Fb;b++){if(128==tv(a,e,c+0,1)){d.Lf=tv(a,e,c+8,4);(e=sv(a,d.Lf))&&(f=!0);break}c+=16}if(!f)return}d.tf||(d.tf=tv(a,e,19,2)||tv(a,e,32,4),d.sf=tv(a,e,14,2),d.ph=d.sf+tv(a,e,22,2)*tv(a,e,16,1),d.zh=tv(a,e,17,2),d.wf=tv(a,e,13,1));d.nh=d.ph+((32*d.zh+(d.Na-1))/d.Na|0);d.sn=(d.tf-d.nh)/d.wf|0;d.zg=4084>=d.sn?12:16;d.Sl=12==d.zg?4086:65526;b=[];for(e=d.ph;e>=8;f+=2;if(k)for(;m--;)Hv(d,f,1),254>=k?(p=k,v=Hv(d,f+1),f+=3):(p=Hv(d,f+3,1),v=Hv(d,f+4),f+=6),d.qd[p]&&(d.qd[p].ee[h]=[v]),d.A[h]=[p,v],h++;else h+=m}(g=wv(e,Kv,c))&&Lv(e,g+c);g=wv(e,Mv,c);h=wv(e,Nv,c);g&&h&&Lv(e,g,g+h)}}}} -function vv(a,b,c,d,e){var f,g=a.C.length,h=b.Na/32|0;b.nq=d+"\\";for(var k=0;kH)break;for(var I=u.nh+(H-2)*u.wf,L=0;L>3,1),d?e=16==b.zg?e<<8:c&7?e<<4:(e&15)<<8:c&7&&(e>>=4));return e} -function sv(a,b){var c=a.cb*a.Va,d=b/c|0;return dg)break;e|=g<=f)break;e+=String.fromCharCode(f)}return e}function nv(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Tl=b;a.Ul=c;a.hd=a.Lc=0;a.Oa=!1;return a} -function ov(a,b){b="action=open&volume="+b+("&mode="+a.mode);b+="&chs="+a.rb+":"+a.cb+":"+a.Va+":"+a.Na;b+="&machine="+lv(a.controller);b+="&user="+mv(a.controller);return Pa()+"/api/v1/disk?"+b} -function Qv(a,b,c,d,e,f,g){if(a.D){var h;h="action=read&volume="+a.G;h+="&chs="+a.rb+":"+a.cb+":"+a.Va+":"+a.Na;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+lv(a.controller));h+="&user="+mv(a.controller);Na(Pa()+"/api/v1/disk?"+h,null,f,function(h,m,p){h=[b,c,d,e,f,g];var k=!1,u=h[0],F=h[1],H=h[2],I=h[3];if(!p){m=JSON.parse(m);for(k=0;I--;){var L=a.seek(u,F,H,!0);if(!L)break;rv(L,m,k);k+=L.length;H++}k=h[4]}(h=h[5])&&h(p,k)})}else g&&g(-1,!1)} -function Rv(a,b,c,d,e,f,g){if(a.D){var h={};a.M=!0;h.action="write";h.volume=a.G;h.chs=a.rb+":"+a.cb+":"+a.Va+":"+a.Na;h.addr=b+":"+c+":"+d+":"+e;h.machine=lv(a.controller);h.user=mv(a.controller);h.data=JSON.stringify(f);Na(Pa()+"/api/v1/disk",h,g,function(f,h,p){var k=[b,c,d,e,g];f=k[0];h=k[1];var m=k[2],F=k[3],k=k[4];a.M=!1;if(0<=f&&fb&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}l.read=function(a,b){var c=-1;if(a&&b>2,c=(d>((b&3)<<3)&255;return c}; -l.write=function(a,b,c){if(this.Te)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Lc?f=a.hd+a.Lc&&(a.Lc+=f-(a.hd+a.Lc)+1):(a.hd=f,a.Lc=1);d[f]=d[f]&~(255<=this.A.length||k>=this.A[h].length||m>=this.A[h][k].length){c="sector (CHS="+h+":"+k+":"+m+") out of range ("+ -b+" changes applied)";b=-1;break}if(this.Te){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][m]){for(k=h.data.length;kb?-2!=b&&this.Ca("Unable to restore disk '"+this.ld+": "+c):qv(this);return b}; -l.toJSON=function(){var a;a=0;for(var b;b=sv(this,a++);)Wv(b);a=JSON.stringify(this.A,function(a,b){if("file"!=a)return b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")}; -function Wv(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}var iv=0;function Pv(a,b,c,d,e,f){this.ta=a;this.Zb=c;this.$g=d;this.ej=e;this.fe=f}function Hv(a,b,c){var d;c=c||2;var e=b&511,f=sv(a.ta,a.fe[b>>9]);if(f){if(e+c<=f.length)return tv(a.ta,f,e,c);for(e=d=0;c--;)d|=Hv(a,b++,1)<=e.ki&&a<=e.Ok){d=a-=e.ki;var f,g;for(g in e.ee){var h=e.ee[g],k=a-h[0];if(!k){c=this.Sf+"!"+h[1];break}b&&0b;b++){if(128==uv(a,e,c+0,1)){d.Kf=uv(a,e,c+8,4);(e=tv(a,d.Kf))&&(f=!0);break}c+=16}if(!f)return}d.sf||(d.sf=uv(a,e,19,2)||uv(a,e,32,4),d.rf=uv(a,e,14,2),d.oh=d.rf+uv(a,e,22,2)*uv(a,e,16,1),d.yh=uv(a,e,17,2),d.vf=uv(a,e,13,1));d.mh=d.oh+((32*d.yh+(d.Na-1))/d.Na|0);d.rn=(d.sf-d.mh)/d.vf|0;d.yg=4084>=d.rn?12:16;d.Rl=12==d.yg?4086:65526;b=[];for(e=d.oh;e>=8;f+=2;if(k)for(;m--;)Iv(d,f,1),254>=k?(p=k,v=Iv(d,f+1),f+=3):(p=Iv(d,f+3,1),v=Iv(d,f+4),f+=6),d.sd[p]&&(d.sd[p].ie[h]=[v]),d.A[h]=[p,v],h++;else h+=m}(g=xv(e,Lv,c))&&Mv(e,g+c);g=xv(e,Nv,c);h=xv(e,Ov,c);g&&h&&Mv(e,g,g+h)}}}} +function wv(a,b,c,d,e){var f,g=a.C.length,h=b.Na/32|0;b.mq=d+"\\";for(var k=0;kH)break;for(var I=u.mh+(H-2)*u.vf,L=0;L>3,1),d?e=16==b.yg?e<<8:c&7?e<<4:(e&15)<<8:c&7&&(e>>=4));return e} +function tv(a,b){var c=a.cb*a.Va,d=b/c|0;return dg)break;e|=g<=f)break;e+=String.fromCharCode(f)}return e}function ov(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Sl=b;a.Tl=c;a.hd=a.Oc=0;a.Oa=!1;return a} +function pv(a,b){b="action=open&volume="+b+("&mode="+a.mode);b+="&chs="+a.rb+":"+a.cb+":"+a.Va+":"+a.Na;b+="&machine="+mv(a.controller);b+="&user="+nv(a.controller);return Pa()+"/api/v1/disk?"+b} +function Rv(a,b,c,d,e,f,g){if(a.D){var h;h="action=read&volume="+a.G;h+="&chs="+a.rb+":"+a.cb+":"+a.Va+":"+a.Na;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+mv(a.controller));h+="&user="+nv(a.controller);Na(Pa()+"/api/v1/disk?"+h,null,f,function(h,m,p){h=[b,c,d,e,f,g];var k=!1,u=h[0],F=h[1],H=h[2],I=h[3];if(!p){m=JSON.parse(m);for(k=0;I--;){var L=a.seek(u,F,H,!0);if(!L)break;sv(L,m,k);k+=L.length;H++}k=h[4]}(h=h[5])&&h(p,k)})}else g&&g(-1,!1)} +function Sv(a,b,c,d,e,f,g){if(a.D){var h={};a.M=!0;h.action="write";h.volume=a.G;h.chs=a.rb+":"+a.cb+":"+a.Va+":"+a.Na;h.addr=b+":"+c+":"+d+":"+e;h.machine=mv(a.controller);h.user=nv(a.controller);h.data=JSON.stringify(f);Na(Pa()+"/api/v1/disk",h,g,function(f,h,p){var k=[b,c,d,e,g];f=k[0];h=k[1];var m=k[2],F=k[3],k=k[4];a.M=!1;if(0<=f&&fb&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}l.read=function(a,b){var c=-1;if(a&&b>2,c=(d>((b&3)<<3)&255;return c}; +l.write=function(a,b,c){if(this.Te)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Oc?f=a.hd+a.Oc&&(a.Oc+=f-(a.hd+a.Oc)+1):(a.hd=f,a.Oc=1);d[f]=d[f]&~(255<=this.A.length||k>=this.A[h].length||m>=this.A[h][k].length){c="sector (CHS="+h+":"+k+":"+m+") out of range ("+ +b+" changes applied)";b=-1;break}if(this.Te){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][m]){for(k=h.data.length;kb?-2!=b&&this.Ca("Unable to restore disk '"+this.ld+": "+c):rv(this);return b}; +l.toJSON=function(){var a;a=0;for(var b;b=tv(this,a++);)Xv(b);a=JSON.stringify(this.A,function(a,b){if("file"!=a)return b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")}; +function Xv(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}var jv=0;function Qv(a,b,c,d,e,f){this.ta=a;this.Zb=c;this.Zg=d;this.dj=e;this.je=f}function Iv(a,b,c){var d;c=c||2;var e=b&511,f=tv(a.ta,a.je[b>>9]);if(f){if(e+c<=f.length)return uv(a.ta,f,e,c);for(e=d=0;c--;)d|=Iv(a,b++,1)<=e.ji&&a<=e.Nk){d=a-=e.ji;var f,g;for(g in e.ie){var h=e.ie[g],k=a-h[0];if(!k){c=this.Rf+"!"+h[1];break}b&&0'+b+"");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.na[b]=c,c.onchange=function(){var a=oa(c.value,10);null!=a&&Zv(d,a)},!0;case "loadDisk":return this.na[b]=c,c.onclick=function(){d.Ij()},!0;case "saveDisk":if(!this.L){c.parentNode.removeChild(c);break}this.na[b]=c;c.onclick=function(){var a=d.na.listDrives;a&&a.options&&d.A&&((a=d.A[oa(a.value,10)||0])?(a=a.ta)?(a=Za(Vv(a),"octet-stream",!0,a.Ng.replace(".json", -".img")),mb(a)):d.Ca("No diskette loaded in drive."):d.Ca("No diskette drive selected."))};return!0;case "mountDisk":if(this.L)return this.na[b]=c,c.onchange=function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length},c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;$v(d,ua(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; -l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.pa=a;this.W=bc(a,"ChipSet");Yv(Fd(this.pa,"autoMount"),this.M);aw(this);Tc(b,this,bw);Xc(b,this,cw);dw(this,"None","",!0);this.L&&dw(this,"Local Disk","?");dw(this,"Remote Disk","??");ew(this)||Ob(this)};function Yv(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){mb("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a} -l.Xb=function(a,b){if(!b){if(!a){if(this.reset(),this.pa.X){this.B=[];for(a=0;ag.ta.restore(F)&&(h=!1);h&&g.ta&&void 0!==g.Ua&&(g.eb=g.ta.seek(g.Gb,g.$a,g.hb));h||(e=!1)}a.G=b[c++]||0;a.Yb=b[c]||mw;return e} -function gw(a){var b=0,c=[];c[b++]=a.Wa;c[b++]=0;c[b++]=a.fa;c[b++]=a.F;c[b++]=a.D;c[b++]=a.C;c[b++]=a.I;for(var d=b++,e=0,f=[],g=0;gkw(a,e,b,c,!1,d);){if(!window.confirm("Click OK to reload the original disk and discard any changes."))return!1;var f=a,g=c,h;for(h=0;ha.rb||f[1]>a.cb)&&(this.Ca('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Wa)),b=null);b?(a.ta=b,a.el=c,a.ue=d,pw(this,d)||dw(this,c,d),lw(this,c,d,b),f=b.info(),this.G|=qw,this.Ca('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Wa),a.le||e),a.yg=f[0],a.Bf=f[1],a.Cf=f[2],this.pa&&this.pa.od()):a.Pe=!1;a.le&&(a.le=!1,--this.K||Ob(this));Zv(this,a.Wa)}; -function dw(a,b,c,d){if((a=a.na.listDisks)&&a.options){for(var e=0;e=this.C&&(this.fa&=~(tw|uw),this.D=this.C=0);return c}; -l.$n=function(a,b,c){t(this)&&w(this,a,b,c,"DATA["+this.C+"]");this.C=ww[a].Jd){b=!1;this.D=0;a=xw(this);var d,e,f,g,h=a&vw;switch(h){case yw:xw(this);xw(this);zw(this);break;case Aw:c=xw(this);this.Wa=c&3;d=this.A[this.Wa];zw(this);Bw(this,(d.sb&Cw)>>>24);break;case Dw:case Ew:c=xw(this);b=c>>2&1;this.Wa=c&3;d=this.A[this.Wa];d.$a=b;c=d.Gb=xw(this);e=xw(this);f=d.hb=xw(this);g=xw(this);d.wb=128<>2&1;this.Wa= -c&3;d=this.A[this.Wa];c=d.Gb;e=d.$a=b;f=d.hb=1;g=0;d.sb=ow;d.ta&&(d.eb=d.ta.seek(d.Gb,d.$a,d.hb))?g=d.eb.length>>8:d.sb=Fw|Gw;Iw(this,d,a,b,c,e,f,g);b=!0;break;case Pw:c=xw(this);b=c>>2&1;this.Wa=c&3;d=this.A[this.Wa];c=d.Gb;e=d.$a=b;f=1;g=xw(this);d.wb=128<>2&1,c=xw(this),d.Gb+=c-d.Td,0>d.Gb&&(d.Gb=0),d.Gb>=d.rb&&(d.Gb=d.rb-1),d.Td=c,d.sb=Kw,d.Gb||(d.sb|=Lw),zw(this),b=!0}0>>8);Bw(a,(b.sb&Sw)>>>16);var k=0;if(e!=b.Gb||f!=b.$a)k=g=1;c&Tw&&(f^=k,d||(k=0));Bw(a,e+k);Bw(a,f);Bw(a,g);Bw(a,h)}function xw(a){var b=a.F[a.D];a.D++;return b}function zw(a){a.D=a.C=0}function Bw(a,b){a.F[a.C++]=b}l.ol=function(a,b,c){void 0===b||0>b?this.te(a,c):c(-1,!1)};l.pl=function(a,b){return void 0!==b&&0<=b?Uw(a,b):-1}; -l.Hl=function(a,b){if(void 0!==b&&0<=b)a:if(a.sb)a=-1;else{a.$c[a.Je++]=b;if(a.Je==a.$c.length){a.Gb=a.$c[0];a.$a=a.$c[1];a.hb=a.$c[2];a.wb=128<Uw(a,a.$i)){a=-1;break a}a.lg++}a.lg>=a.Ud&&(b=-1);a=b}else a=-1;return a};l.te=function(a,b){var c=-1,d=null,e=0;if(!a.sb&&a.ta){do{if(a.eb&&(e=a.Ua,0<=(c=a.ta.read(a.eb,a.Ua++)))){d=a.eb;break}a.eb=a.ta.seek(a.Gb,a.$a,a.hb);if(!a.eb){a.sb=Vw|Gw;break}a.Ua=0;Ww(a)}while(1)}b(c,!1,d,e)}; -function Uw(a,b){if(a.sb||!a.ta)return-1;do{if(a.eb&&a.ta.write(a.eb,a.Ua++,b))break;a.eb=a.ta.seek(a.Gb,a.$a,a.hb);if(!a.eb){a.sb=Xw|Gw;b=-1;break}a.Ua=0;Ww(a)}while(1);return b}function Ww(a){a.hb++;a.hb>=a.Cf+1&&(a.hb=1,a.$a++,a.$a>=a.Bf&&(a.$a=0,a.Gb++))}var jw="Floppy Drive",rw=4,sw=8,uw=16,tw=64,hw=128,yw=3,Aw=4,Dw=5,Ew=6,Jw=7,Mw=8,Ow=10,Pw=13,Qw=15,vw=31,Tw=128,ow=0,Fw=8,Kw=32,Gw=64,iw=192,Nw=255,Hw=512,Vw=1024,Xw=8192,Rw=65280,Sw=16711680,Lw=268435456,Cw=-16777216,qw=128,mw=0;aa={}; -var ww={3:{Jd:3,Vd:0,name:aa.fq},4:{Jd:2,Vd:1,name:aa.cq},5:{Jd:9,Vd:7,name:aa.kq},6:{Jd:9,Vd:7,name:aa.Zp},7:{Jd:2,Vd:0,name:aa.aq},8:{Jd:1,Vd:2,name:aa.eq},10:{Jd:2,Vd:7,name:aa.$p},13:{Jd:6,Vd:7,name:aa.Vp},15:{Jd:3,Vd:0,name:aa.bq}},bw={1009:Xv.prototype.wm,1012:Xv.prototype.ym,1013:Xv.prototype.vm,1015:Xv.prototype.xm},cw={1010:Xv.prototype.ao,1013:Xv.prototype.$n,1015:Xv.prototype.Zn}; -eb(function(){for(var a=Bb(document,"pcx86","fdc"),b=0;bk.ta.restore(g)&&(F=!1),F&&void 0!==k.Ua&&(k.eb=k.ta.seek(k.Od,k.$a,k.hb+k.kg)));F||(e=!1);null!=a.P&&1>=d&&(a.P|=(f.type&3)<<(1-d<< +b&&(b="");g=g.href;void 0!==g&&(b=''+b+"");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.na[b]=c,c.onchange=function(){var a=oa(c.value,10);null!=a&&$v(d,a)},!0;case "loadDisk":return this.na[b]=c,c.onclick=function(){d.Hj()},!0;case "saveDisk":if(!this.L){c.parentNode.removeChild(c);break}this.na[b]=c;c.onclick=function(){var a=d.na.listDrives;a&&a.options&&d.A&&((a=d.A[oa(a.value,10)||0])?(a=a.ta)?(a=Za(Wv(a),"octet-stream",!0,a.Mg.replace(".json", +".img")),mb(a)):d.Ca("No diskette loaded in drive."):d.Ca("No diskette drive selected."))};return!0;case "mountDisk":if(this.L)return this.na[b]=c,c.onchange=function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length},c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;aw(d,ua(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; +l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.pa=a;this.W=bc(a,"ChipSet");Zv(Fd(this.pa,"autoMount"),this.M);bw(this);Tc(b,this,cw);Xc(b,this,dw);ew(this,"None","",!0);this.L&&ew(this,"Local Disk","?");ew(this,"Remote Disk","??");fw(this)||Ob(this)};function Zv(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){mb("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a} +l.Xb=function(a,b){if(!b){if(!a){if(this.reset(),this.pa.X){this.B=[];for(a=0;ag.ta.restore(F)&&(h=!1);h&&g.ta&&void 0!==g.Ua&&(g.eb=g.ta.seek(g.Gb,g.$a,g.hb));h||(e=!1)}a.G=b[c++]||0;a.Yb=b[c]||nw;return e} +function hw(a){var b=0,c=[];c[b++]=a.Wa;c[b++]=0;c[b++]=a.fa;c[b++]=a.F;c[b++]=a.D;c[b++]=a.C;c[b++]=a.I;for(var d=b++,e=0,f=[],g=0;glw(a,e,b,c,!1,d);){if(!window.confirm("Click OK to reload the original disk and discard any changes."))return!1;var f=a,g=c,h;for(h=0;ha.rb||f[1]>a.cb)&&(this.Ca('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Wa)),b=null);b?(a.ta=b,a.dl=c,a.ze=d,qw(this,d)||ew(this,c,d),mw(this,c,d,b),f=b.info(),this.G|=rw,this.Ca('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Wa),a.pe||e),a.xg=f[0],a.Af=f[1],a.Bf=f[2],this.pa&&this.pa.od()):a.Pe=!1;a.pe&&(a.pe=!1,--this.K||Ob(this));$v(this,a.Wa)}; +function ew(a,b,c,d){if((a=a.na.listDisks)&&a.options){for(var e=0;e=this.C&&(this.fa&=~(uw|vw),this.D=this.C=0);return c}; +l.Zn=function(a,b,c){t(this)&&w(this,a,b,c,"DATA["+this.C+"]");this.C=xw[a].Ld){b=!1;this.D=0;a=yw(this);var d,e,f,g,h=a&ww;switch(h){case zw:yw(this);yw(this);Aw(this);break;case Bw:c=yw(this);this.Wa=c&3;d=this.A[this.Wa];Aw(this);Cw(this,(d.sb&Dw)>>>24);break;case Ew:case Fw:c=yw(this);b=c>>2&1;this.Wa=c&3;d=this.A[this.Wa];d.$a=b;c=d.Gb=yw(this);e=yw(this);f=d.hb=yw(this);g=yw(this);d.xb=128<>2&1;this.Wa= +c&3;d=this.A[this.Wa];c=d.Gb;e=d.$a=b;f=d.hb=1;g=0;d.sb=pw;d.ta&&(d.eb=d.ta.seek(d.Gb,d.$a,d.hb))?g=d.eb.length>>8:d.sb=Gw|Hw;Jw(this,d,a,b,c,e,f,g);b=!0;break;case Qw:c=yw(this);b=c>>2&1;this.Wa=c&3;d=this.A[this.Wa];c=d.Gb;e=d.$a=b;f=1;g=yw(this);d.xb=128<>2&1,c=yw(this),d.Gb+=c-d.Xd,0>d.Gb&&(d.Gb=0),d.Gb>=d.rb&&(d.Gb=d.rb-1),d.Xd=c,d.sb=Lw,d.Gb||(d.sb|=Mw),Aw(this),b=!0}0>>8);Cw(a,(b.sb&Tw)>>>16);var k=0;if(e!=b.Gb||f!=b.$a)k=g=1;c&Uw&&(f^=k,d||(k=0));Cw(a,e+k);Cw(a,f);Cw(a,g);Cw(a,h)}function yw(a){var b=a.F[a.D];a.D++;return b}function Aw(a){a.D=a.C=0}function Cw(a,b){a.F[a.C++]=b}l.nl=function(a,b,c){void 0===b||0>b?this.ye(a,c):c(-1,!1)};l.ol=function(a,b){return void 0!==b&&0<=b?Vw(a,b):-1}; +l.Gl=function(a,b){if(void 0!==b&&0<=b)a:if(a.sb)a=-1;else{a.Zc[a.Ke++]=b;if(a.Ke==a.Zc.length){a.Gb=a.Zc[0];a.$a=a.Zc[1];a.hb=a.Zc[2];a.xb=128<Vw(a,a.Zi)){a=-1;break a}a.kg++}a.kg>=a.Yd&&(b=-1);a=b}else a=-1;return a};l.ye=function(a,b){var c=-1,d=null,e=0;if(!a.sb&&a.ta){do{if(a.eb&&(e=a.Ua,0<=(c=a.ta.read(a.eb,a.Ua++)))){d=a.eb;break}a.eb=a.ta.seek(a.Gb,a.$a,a.hb);if(!a.eb){a.sb=Ww|Hw;break}a.Ua=0;Xw(a)}while(1)}b(c,!1,d,e)}; +function Vw(a,b){if(a.sb||!a.ta)return-1;do{if(a.eb&&a.ta.write(a.eb,a.Ua++,b))break;a.eb=a.ta.seek(a.Gb,a.$a,a.hb);if(!a.eb){a.sb=Yw|Hw;b=-1;break}a.Ua=0;Xw(a)}while(1);return b}function Xw(a){a.hb++;a.hb>=a.Bf+1&&(a.hb=1,a.$a++,a.$a>=a.Af&&(a.$a=0,a.Gb++))}var kw="Floppy Drive",sw=4,tw=8,vw=16,uw=64,iw=128,zw=3,Bw=4,Ew=5,Fw=6,Kw=7,Nw=8,Pw=10,Qw=13,Rw=15,ww=31,Uw=128,pw=0,Gw=8,Lw=32,Hw=64,jw=192,Ow=255,Iw=512,Ww=1024,Yw=8192,Sw=65280,Tw=16711680,Mw=268435456,Dw=-16777216,rw=128,nw=0;aa={}; +var xw={3:{Ld:3,Zd:0,name:aa.eq},4:{Ld:2,Zd:1,name:aa.bq},5:{Ld:9,Zd:7,name:aa.jq},6:{Ld:9,Zd:7,name:aa.Yp},7:{Ld:2,Zd:0,name:aa.$p},8:{Ld:1,Zd:2,name:aa.cq},10:{Ld:2,Zd:7,name:aa.Zp},13:{Ld:6,Zd:7,name:aa.Up},15:{Ld:3,Zd:0,name:aa.aq}},cw={1009:Yv.prototype.vm,1012:Yv.prototype.xm,1013:Yv.prototype.um,1015:Yv.prototype.wm},dw={1010:Yv.prototype.$n,1013:Yv.prototype.Zn,1015:Yv.prototype.Yn}; +eb(function(){for(var a=Bb(document,"pcx86","fdc"),b=0;bk.ta.restore(g)&&(F=!1),F&&void 0!==k.Ua&&(k.eb=k.ta.seek(k.Qd,k.$a,k.hb+k.jg)));F||(e=!1);null!=a.P&&1>=d&&(a.P|=(f.type&3)<<(1-d<< 1))}0<=a.Wa&&(a.B=a.A[a.Wa]);return e} -function fx(a){var b=0,c=[];a.M?(c[b++]=a.I,c[b++]=a.va,c[b++]=a.J,c[b++]=a.ga,c[b++]=a.ea,c[b++]=a.aa,c[b++]=a.X,c[b++]=a.fa,c[b++]=a.ha,c[b++]=[a.L,a.Wa]):(c[b++]=a.P,c[b++]=a.fa,c[b++]=a.F,c[b++]=a.D,c[b++]=a.C,c[b++]=a.sa,c[b++]=a.qa,c[b++]=a.oa,c[b++]=a.N);for(var d=0,e=[],f=0;f=this.C&&(this.D=this.C=0,this.fa&=~(ox|px|qx));return c};l.yo=function(a,b,c){w(this,a,b,c,"DATA["+this.C+"]");this.C=a&&(this.fa|=ox,this.fa&=~sx,tx(this))};l.Zm=function(a,b){var c=this.fa;w(this,a,null,b,"STATUS",c);this.D=a.B.Na?(a.fa=vx,a.te(a.B,function(b){0<=b?(wx(a),a.W&&a.W.da==El&&(a.fa=0),a.fa=a.fa|gx|xx|yx):(a.fa=zx,a.I=Ax)},!1)):a.fa=gx|xx));return d}l.sl=function(a,b){return ux(this,a,b)|ux(this,a,b)<<8}; -function Bx(a,b,c,d){if(a.B&&a.B.wb>=a.B.Na)if(0>Cx(a.B,c))a.fa=zx,a.I=Ax;else if(1==a.B.Ua||a.B.Ua==a.B.Na)t(a,1048832)&&w(a,b,c,d,"DATA["+a.B.Ua+"]"),1=a.B.Na&&(a.fa|=yx))}l.Hn=function(a,b,c){Bx(this,a,b&255,c);Bx(this,a,b>>8&255,c)};l.em=function(a,b){var c=this.I;w(this,a,null,b,"ERROR",c);return c};l.Mn=function(a,b,c){w(this,a,b,c,"WPREC");this.va=b};l.gm=function(a,b){var c=this.J;w(this,a,null,b,"SECCNT",c);return c}; -l.Kn=function(a,b,c){w(this,a,b,c,"SECCNT");this.J=b};l.hm=function(a,b){var c=this.ga;w(this,a,null,b,"SECNUM",c);return c};l.Ln=function(a,b,c){w(this,a,b,c,"SECNUM");this.ga=b};l.cm=function(a,b){var c=this.ea;w(this,a,null,b,"CYLLO",c);return c};l.Gn=function(a,b,c){w(this,a,b,c,"CYLLO");this.ea=b};l.bm=function(a,b){var c=this.aa;w(this,a,null,b,"CYLHI",c);return c};l.Fn=function(a,b,c){w(this,a,b,c,"CYLHI");this.aa=b};l.dm=function(a,b){var c=this.X;w(this,a,null,b,"DRVHD",c);return c}; -l.In=function(a,b,c){w(this,a,b,c,"DRVHD");this.X=b;this.fa=this.A[this.X&Dx?1:0]?this.fa|gx|xx:this.fa&~gx};l.im=function(a,b){var c=this.fa;w(this,a,null,b,"STATUS",c);this.fa&gx&&(this.fa&=~vx);return c};l.En=function(a,b,c){w(this,a,b,c,"COMMAND");this.ha=b;this.W&&nh(this.W,14);Ex(this)};l.Jn=function(a,b,c){w(this,a,b,c,"FDR");this.L&Fx&&!(b&Fx)&&(this.I=Gx);this.L=b}; -function Ex(a){var b=!1,c=a.ha,d=a.X&Dx?1:0,e=a.X&Hx,f=a.ea|(a.aa&Ix)<<8,g=a.ga,h=a.J||256;a.Wa=-1;a.B=null;a.I=Jx;a.fa=gx|xx;var k=a.A[d];k?(k.Od=f,k.$a=e,k.hb=g,k.wb=h*k.Na,c=c>=Kx?c:c&Lx,k.eb=null,k.Ua=0,k.errorCode=0,a.Wa=d,a.B=k):c=-1;switch(c&Lx){case Mx:b=!0;break;case Nx:a.fa=vx;a.te(k,function(b){0<=b&&a.W?(wx(a),a.fa=gx|xx|yx):(a.fa=zx,a.I=Ax)},!1);break;case Ox:a.fa=yx;break;case Px:b=!0;break;case Qx:b=!0;break;case Kx:a.I=Gx;b=!0;break;case Rx:k.cb=e+1,k.Va=h,b=!0}b&&wx(a)} -function wx(a){!a.W||a.L&Sx||ph(a.W,14,120)} -function tx(a){a.D=0;var b=Tx(a),c=Tx(a),d=c&32,e=d>>5,f=c&31,g=Tx(a),h=Tx(a),k=g<<2&768|h,m=g&63,p=Tx(a),v=Tx(a),u=a.A[e];u&&(u.Od=k,u.$a=f,u.hb=m,u.wb=p*u.Na);switch(b){case Ux:Vx(a,u?u.errorCode:Wx);Xx(a,c);Xx(a,g);Xx(a,h);Xx(a,Yx|d);b=-1;break;case rx:for(c=0;0<=(b=Tx(a));)u&&cb?this.te(a,c):c(-1,!1)};l.rl=function(a,b){return void 0!==b&&0<=b?Cx(a,b):-1}; -l.Il=function(a,b){void 0!==b&&0<=b?(a.UaCx(a,a.$i)){a=-1;break a}a.lg++}a.lg>=a.Ud&&(b=-1);a=b}else a=-1;return a}; -function fy(a,b,c){b.errorCode=Wx;if(b.ta&&(b.eb=null,a.W)){b.errorCode=ix;Tn(a.W,3,a,"dmaRead",b);Kn(a.W,3,function(a){a||b.errorCode!=ix||(b.errorCode=Wx);c(b.errorCode?Zx:Yx)});return}c(b.errorCode?Zx:Yx)}function hy(a,b,c){b.errorCode=Wx;if(b.ta&&(b.eb=null,a.W)){b.errorCode=ix;Tn(a.W,3,a,"dmaWrite",b);Kn(a.W,3,function(a){a||(b.errorCode==ix&&(b.errorCode=Wx),b.errorCode==ky&&(b.errorCode=ix));c(b.errorCode?Zx:Yx)});return}c(b.errorCode?Zx:Yx)} -function jy(a,b,c){b.errorCode=Wx;b.He&&b.He.length==b.wb||(b.He=Array(b.wb));b.Ua=0;a.W?(b.errorCode=ix,Tn(a.W,3,a,"dmaWriteBuffer",b),Kn(a.W,3,function(a){a||b.errorCode!=ix||(b.errorCode=Wx);c(b.errorCode?Zx:Yx)})):c(b.errorCode?Zx:Yx)} -l.te=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.eb&&(f=a.Ua,d=a.ta.read(a.eb,a.Ua),a.Ua+=g,0<=d))return e=a.eb,b&&b(d,!1,e,f),d;if(b){if(a.ta)return a.ta.seek(a.Od,a.$a,a.hb+a.kg,!1,function(c,k){(a.eb=c)?(e=c,f=a.Ua=0,ly(a),d=a.ta.read(a.eb,a.Ua),a.Ua+=g):a.errorCode=ky;b(d,k,e,f)}),d;a.errorCode=ky;b(d,!1,e,f)}return d}; -function Cx(a,b){if(a.errorCode)return-1;do{if(a.eb&&a.ta.write(a.eb,a.Ua++,b))break;a.ta&&a.ta.seek(a.Od,a.$a,a.hb+a.kg,!0,function(b){a.eb=b});if(!a.eb){a.errorCode=ky;b=-1;break}a.Ua=0;ly(a)}while(1);return b}function ly(a){a.hb++;var b=1-a.kg;a.hb>=a.Va+b&&(a.hb=b,a.$a++,a.$a>=a.cb&&(a.$a=0,a.Od++))}l.$m=function(){var a=this.H.L&255;!(this.H.D>>8)&&128>8||!this.W)||(a=!(this.W.hc[0].sd&64));return a?!0:!1}; -var jx="Hard Drive",mx=["XTC","ATC","COMPAQ"],kx=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966, -6],19:[1023,8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}],cx=496,Gx=1,Jx=0,Ax=16,Ix=3,Hx=15,Dx=16,zx=1,yx=8,xx=16,gx=64,vx=128,Mx=16,Nx=32,Ox=48,Px=64,Qx= -112,Kx=144,Rx=145,Lx=240,Sx=2,Fx=4,Yx=0,Zx=2,by=0,cy=1,Ux=3,dy=5,ey=8,gy=10,rx=12,iy=15,$x=224,ay=228,ix=0,Wx=4,ky=20,hx=0,sx=1,ox=2,px=4,qx=8,nx=32,$w={800:Yw.prototype.Ym,801:Yw.prototype.Zm,802:Yw.prototype.Xm},Zw={496:Yw.prototype.sl,497:Yw.prototype.em,498:Yw.prototype.gm,499:Yw.prototype.hm,500:Yw.prototype.cm,501:Yw.prototype.bm,502:Yw.prototype.dm,503:Yw.prototype.im},bx={800:Yw.prototype.yo,801:Yw.prototype.Bo,802:Yw.prototype.Ao,803:Yw.prototype.zo,807:Yw.prototype.li,811:Yw.prototype.li, -815:Yw.prototype.li},ax={496:Yw.prototype.Hn,497:Yw.prototype.Mn,498:Yw.prototype.Kn,499:Yw.prototype.Ln,500:Yw.prototype.Gn,501:Yw.prototype.Fn,502:Yw.prototype.In,503:Yw.prototype.En,1014:Yw.prototype.Jn};eb(function(){for(var a=Bb(document,"pcx86","hdc"),b=0;bthis.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else this.ga?a="end":a=this.C[this.A+1];b=[];if(a){a=a.replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(Aa(a.substring(d,f))),d=f+1}}return b}; -function ny(a,b,c){var d=a;b=b||32;if(c)if(32==b)d=a>>>0;else if(32>b)d=a&(1<a||a>=b)d=a%b,0>d&&(d+=b)}else 32>=b?d=a<<32-b>>32-b:(b=Math.pow(2,b-1),a>=b?(d=a%b,(a/b|0)&1&&(d-=b)):a<-b&&(d=a%b,((-a-1)/b|0)&1?d&&(d+=b):d||(d-=b)));a!=d&&(a=d);return a} -function oy(a,b,c){for(c=void 0===c?-1:c;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e,f=a.pop();e=a.pop();switch(d){case "*":e*=f;break;case "/":if(!f)return!1;e=Math.trunc(e/f);break;case "^/":if(!f)return!1;e%=f;break;case "+":e+=f;break;case "-":e-=f;break;case "<<":e<<=f;break;case ">>":e>>=f;break;case ">>>":e>>>=f;break;case "<":e=e":e=e>f?1:0;break;case ">=":e=e>=f?1:0;break;case "==":e=e==f?1:0;break;case "!=":e=e!=f?1:0;break;case "&":e&= -f;break;case "!":case "|":e|=f;break;case "^!":e|=f;break;case "&&":e=e&&f?1:0;break;case "||":e=e||f?1:0;break;case ",,":e=ny(e,18,!0)*Math.pow(2,18)+ny(f,18,!0);break;case "_":case "^_":"^_"==d&&(f=35-(f&255));f&&(e=ny(e,0,!0),e=0=|>>>|>>|>|<=|<<|<|-|\+|\^\/|\/|\*|,,| )/);d=py(a,b,0,b.length,a.D,c);void 0!==d&&e&&xy(a,null,d)}return d} -function yy(a,b){var c,d=a.ha[0],e=a.ha[1];c="("==d||"{"==d||"["==d?"\\":"";for(var f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);){var g=wy(a,c[1]);if(void 0===g)return;b=b.replace(d+c[1]+e,null!=g?vy(a,g):"undefined")}if(a.Ba.length)for(d=a.Ba[0],e=a.Ba[1],c="("==d||"{"==d||"["==d?"\\":"",f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);)b=a.Vk(b,c[1]);for(;d=b.match(/\$([a-z]+)/i);){e=null;switch(d[1].toLowerCase()){case "ops":e=a.aa-a.ka}if(null== -e)break;b=b.replace(d[0],e.toString())}return b}function ry(a,b){for(;b;){switch(b&3){case 1:a=-ny(a);break;case 2:a|=-1;break;case 3:for(var c=35;0<=c&&!(a&Math.pow(2,c));)c--;a=35-c}b>>>=2}return a} -function qy(a,b,c,d,e){e=void 0===e?0:e;var f,g=Array.isArray(d)?d:void 0;if(null!=b){f=a.kh(b);if(0<=f)f=a.lh(f);else if(f=b,a.I[f]?f=a.I[f].value:(f=f.substr(0,6),f=a.I[f]&&a.I[f].value),null!=f){var h=a.I[b]&&a.I[b].Xo;h&&(g?g.push(h):(g=wy(a,h,d),void 0!==g?f+=g:(d||a.O("undefined "+(c||"value")+": "+b+" ("+h+")"),f=void 0)))}else f=oa(b,1c&&(d+=" '"+String.fromCharCode(c)+"'"));a.O((null!=b?b+": ":"")+d);return e}function zy(a,b){var c=0;if(a.I){if(b)return xy(a,b,a.I[b]&&a.I[b].value);b=Object.keys(a.I);b.sort();for(var d=0;d=Math.abs(b)?5:11;b=qa(b,10,a);break;default:b=q(b,0>2:0,!!e)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c} -var ty={"||":5,"&&":6,"!":7,"|":7,"^!":8,"&":9,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,_:19,"^_":19,"{":20,"}":20},sy={",,":1,"||":5,"&&":6,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,"!":15,"|":15,"^!":15,"&":15,_:19,"^_":19,"{":20,"}":20}; -function Ay(a){my.call(this,a);this.sa=4;this.la=5;this.wa=1048575;this.N=By(this,0,0);this.Aa=By(this,0,0);this.ea=By(this,0,0);this.F=[];this.B=this.W=this.L=[];Cy(this);this.xa=0;Dy(this);this.Da={};Ey(this,a.messages);this.Ia=a.commands;var b=this;window?void 0===window.pcx86&&(window.pcx86=function(a){return Fy(b,a)}):void 0===global.pcx86&&(global.pcx86=function(a){return Fy(b,a)})}ca(Ay,my);l=Ay.prototype; -l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.pa=a;this.fb=bc(a,"FDC");this.Ta=bc(a,"HDC");this.Tc=bc(a,"FPU");this.G=bc(a,"Mouse");(a=Fd(a,"messages"))&&Ey(this,a);this.la=b.I>>2;this.wa=b.N;this.Za=new ae(this.H,7,"DBG");this.qa=Gy;80186<=this.H.da&&(this.qa=Gy.slice(),this.qa[15]=Hy,80286<=this.H.da&&(this.qa[15]=Iy,80386<=this.H.da&&(this.sa=8)));Hl(this,64,function(a){Jy(d,d.H.sc,a[0])});Hl(this,4,function(a){if(a=a[0]){var b=qy(d,a);if(void 0===b)d.O("invalid selector: "+a);else if(a=Ky(d, -b,Ly),d.O("dumpSel("+ta(a?a.U:b)+"): %"+q(a?a.Lb:null,d.la)),a){var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else{var e=My[a.type];e&&(c=e[0],b=e[1])}!c||a.nb&32768||(c+=",not present");d.O((b?"seg="+ta(a.ua&65535)+" off="+ta(a.Ka):"base="+q(a.ua,d.la)+" limit="+Ny(a.Ka))+" type="+r(a.type>>8)+" ("+c+") ext="+ta(a.ext&-65296)+ -" dpl="+r(a.qc))}}else d.O("no selector")});Hl(this,134217728,function(a){var b;(a=a[0])&&(b=qy(d,a));if(void 0===b)d.O("invalid MCB");else for(d.O("dumpMCB("+ta(b)+")");b;){a=By(d,0,b);var c=d.Ja(a,1),e=d.Yc(a,2),k=d.Yc(a,5);if(77!=c&&90!=c)break;d.O(Oy(0,b)+": '"+String.fromCharCode(c)+"' PID="+ta(e)+" LEN="+ta(k)+' "'+Py(d,a,8)+'"');b+=1+k}});Hl(this,128,function(a){Jy(d,d.H.aa,a[0],d.H.aa!==d.H.sc)});Hl(this,8,function(a){a:{if(a=a[0]){var b=qy(d,a);if(void 0===b){d.O("invalid task selector: "+ -a);break a}a=Ky(d,b,Ly)}else a=d.H.ka;d.O("dumpTSS("+ta(a?a.U:b)+"): %"+q(a?a.ua:null,d.la));if(a){var b="",c=a.type&-513,e=256==c?4:8,k=256==c?Qy:Ry,m,p,v,u;for(u in k)m=k[u],p=a.ua+m,v=Fg(d.H,p,2),2304==c&&(v|=Fg(d.H,p+2,2)<<16),b&&(b+="\n"),b+=ta(m)+" "+za(u+":",11)+q(v,e);if(2304==c)for(u=0,m=v>>>16;mu;){p=a.ua+m;v=Fg(d.H,p,2);p=2;c="";if(!p||4>=8;b+="\n"+ta(m)+" ports "+ta(u)+"-"+ta(u+15)+": "+(""+c);u+=16;m+=2}d.O(b)}}});this.J= -null;this.Ma=0;this.Ea=!1;Zf(this.H,48,this.dn.bind(this));Zf(this.H,65,this.en.bind(this));this.Z=null;Zf(this.H,104,this.fn.bind(this));Ob(this)};function Sy(a,b,c,d,e,f){b=Py(a,b);var g=Ky(a,d),g=g?g.Ka+1:0,h=(e?"_CODE":"_DATA")+q(c,2);f&&t(a,128)&&a.message(b+" "+(e?"code":"data")+"("+q(c,4)+")=#"+q(d,4)+" len "+q(g));e=Ty(a,b,c);e[b+h]=0;jq(a,b,c,d,0,null,g,e)} -function Uy(a,b,c,d){var e=a.Yc(b,2),f=a.Yc(b,2),g=Vy(a,b,4),h=Vy(a,b,4),k=By(a,Vy(a,b,4),a.Yc(b,2));b=By(a,Vy(a,b,4),a.Yc(b,2));b=Py(a,b).toUpperCase();var k=Py(a,k).toUpperCase(),m=(c?"_CODE":"_DATA")+q(e,2);d&&t(a,128)&&a.message((b==k?"":b+"!")+k+" "+(c?"code":"data")+"("+q(e,4)+")="+q(f,4)+":"+q(g)+" len "+q(h));c=Ty(a,k,e);c[k+m]=g;jq(a,k,e,f,g,null,h,c)}function Wy(a,b,c){c=Py(a,c).toUpperCase();Xy(a,c,b)} -l.dn=function(){var a=this.H;if(null!=this.J&&2752554==a.D){var b=a.L&65535,c=a.K&65535,d=By(this,z(a)+12,a.X.U);switch(Vy(this,d)){case 336:Uy(this,By(this,a.G,b),!c,!!this.J)}}return!0}; -l.en=function(a){var b=this.H,c=b.D&65535,d=b.G&65535,e=b.I&65535,f=b.L&65535,g=b.K&65535,h=b.J&65535,k=b.oa.U;if(null==this.J)return 79==c&&$f(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Rb(a,"INT 0x41 handling enabled",128),a.J=!0):(Rb(a,"INT 0x41 monitoring enabled",128),a.J=!1)}}(this)),!0;switch(c){case 79:this.J&&(b.D=b.D&-65536|62342,Rb(this,"INT 0x41 handling enabled",128));break;case 80:Sy(this,By(this,h,k),d+1,e,!(g&1),!!this.J);break;case 82:Xy(this,null, -d);break;case 127:this.J&&(b.D=b.D&-65536|(this.Ea?0:1));break;case 131:this.J&&(a=By(this,b.L,e),this.Ma++?(this.O("TRAPFAULT failed"),Yy(this,this.B,a,!0,!0),this.Ma=0,this.Kb()):(this.O("INT 0x41 TRAPFAULT: fault="+ta(d)+" error="+q(b.K,8,!0)+" addr="+Zy(a)),this.rd(this.B,a,!0),Dy(this,!0)));break;case 141:this.J&&(b.D=b.D&-65536|1);break;case 336:Uy(this,By(this,b.G,f),!g,!!this.J);break;case 338:Wy(this,d,By(this,b.J,f))}this.Ea=!1;return!this.J}; -l.fn=function(a){var b=this.H,c=b.D&255,d=b.D>>8&255,e=b.G&65535,f=b.I&65535,g=b.L&65535,h=b.J&65535,k=b.oa.U;if(null==this.Z){if(67==d){if(609437257==b.ia((b.Z.U<<4)+10)||1111835735==b.ia((b.Z.U<<4)+95))return!0;$f(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Rb(a,"INT 0x68 handling enabled",128),a.J=a.Z=!0):(Rb(a,"INT 0x68 monitoring enabled",128),a.Z=!1)}}(this))}return!0}switch(d){case 67:this.Z&&(b.D=b.D&-65536|62342);break;case 68:this.Z&&(a=ce(b.Z,this.Dl.bind(this)))&& -(b.J=a[0],ue(b,a[1]));break;case 72:Xy(this,null,e);break;case 80:32==c?Sy(this,By(this,h,k),0,f,!0,!!this.Z):128>c?Sy(this,By(this,h,k),e+1,c&64?g:f,!(c&1),!!this.Z):Uy(this,By(this,h,k),!(c&1),!!this.Z),this.Z&&(b.D=b.D&-256|1)}return!this.Z};l.Dl=function(){var a=this.H;5==(a.D&255)&&(a.I=a.K=0,a.D=a.D&-256|1);return!1}; -l.Cb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.va=this.na[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Fy(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.A>>0)+1;a.nb=f;a.type=g;a.ext=k;a.Lb=d;be(a,!0,!0,!1)}}return a}l.Sb=function(a,b,c){var d=a&&a.ya;if(null==d&&(d=-1,a)){var e=Ky(this,a.U,a.type);e&&(b=a.Ha||0,c=c||1,d=e=-1===e.Lb||e.Oc&&(b>>>0)+c>e.Nb||!e.Oc&&(b>>>0)+c<=e.Nb?e.ua+b|0:-1,a.ya=d)}return d};l.Ja=function(a,b){var c=255,d=this.Sb(a,!1,1);-1!==d&&(c=Fg(this.H,d,1,a.type==cz)|0,b&&dz(this,a,b));return c}; -l.mb=function(a,b){return a.Hb?Vy(this,a,b?4:0):this.Yc(a,b?2:0)};l.Yc=function(a,b){var c=65535,d=this.Sb(a,!1,2);-1!==d&&(c=Fg(this.H,d,2,a.type==cz)|0,b&&dz(this,a,b));return c};function Vy(a,b,c){var d=-1,e=a.Sb(b,!1,4);-1!==e&&(d=Fg(a.H,e,4,b.type==cz)|0,c&&dz(a,b,c));return d}l.fc=function(a,b,c,d){var e=this.Sb(a,!0,1);if(-1!==e){if(a.type!=cz)this.H.fc(e,b);else{var f=this.ma;f.aa[(e&f.C)>>>f.A].df(e&f.D,b&255,e)}c&&dz(this,a,c);d||Id(this.H,!0)}}; -l.nl=function(a,b,c){var d=this.Sb(a,!0,2);-1!==d&&(a.type!=cz?this.H.gb(d,b):Qc(this.ma,d,b),c&&dz(this,a,c),Id(this.H,!0))};function By(a,b,c,d,e,f,g){return ez(a,{},b,c,d,e,f,g)}function ez(a,b,c,d,e,f,g,h){b.Ha=c||0;b.U=d;b.ya=e;b.type=f||(az(a)?Ly:bz);b.Hb=null!=g?g:!(!a.H||4!=a.H.Z.V);b.cc=null!=h?h:!(!a.H||4!=a.H.Z.Jc);b.wd=!1;return b}function fz(a){return[a.Ha,a.U,a.ya,a.wd,a.Hb,a.cc,a.Ie,a.gh]}function gz(a){return{Ha:a[0],U:a[1],ya:a[2],wd:a[3],Hb:a[4],cc:a[5],Ie:a[6],gh:a[7]}} -function hz(a,b,c){if(null!=b.U&&(a=Ky(a,b.U,b.type))){var d=b.Ha&a.wa;if(!a.Oc){if(d>>>0>=a.Nb)return!1}else if(d>>>0f?null!=h?(g=wy(a,b,void 0),f=null):(f=wy(a,b,void 0),null==f&&(g=null)):(h=wy(a,b.substring(0,f),void 0),g=wy(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=By(a,g,h,f,c),d||hz(a,e,!0)||(a.O("invalid offset: "+Zy(e)),e=null));return e}function lz(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.xl=a.Gg(b.dl=c[2]))}l.Vk=function(a,b){var c=iz(this,b);return a.replace("["+b+"]",c?q(this.mb(c),c.Hb?8:4):"undefined")}; -function dz(a,b,c){c=c||1;null!=b.ya&&(b.ya+=c);null!=b.U&&(b.Ha+=c,hz(a,b)||(b.Ha=0,b.ya=null))}function Oy(a,b,c){return null!=b?q(b,4)+":"+q(a,a&-65536||c?8:4):q(a)}function Zy(a){var b;switch(a.type){case bz:case mz:b="&";break;case Ly:b="#";break;case kz:b="%";break;case cz:b="%%";break;default:b=a.U?"":"%"}return a.type>=kz||null==a.U?b+q(a.ya):b+Oy(a.Ha,a.U,a.cc)} -function Py(a,b,c){var d="";for(c=c||256;d.length>>a.H.kb;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&d.type==hd&&(d=zd(a.H,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=Ac[c],c==jd&&(d=d.td,h+=" -> "+Ac[d.type]),d&&a.O(q(d.id,8)+" %"+q(f<c&&(c=Ka(oz,a.substr(b,2))));return c}; -function pz(a,b){var c=0,d=a.lh(b);if(null!=d)switch(b){case qz:case rz:case sz:case tz:case uz:case vz:case wz:case xz:c=2;break;case yz:case zz:case Az:case Bz:case Cz:case Dz:case Ez:case Fz:case Gz:case Hz+Iz:case Hz+Jz:case Hz+Kz:case Hz+Lz:case Hz+Mz:case Hz+Nz:c=4;break;case Oz:case Pz:case Qz:case Rz:case Sz:case Tz:case Uz:case Vz:case Wz:case Xz:case Yz:case Zz:case $z:c=8;break;case aA:c=a.sa}return c?q(d,c):"??"} -l.lh=function(a){var b;if(0<=a){var c=this.H;switch(a){case qz:b=c.D&255;break;case rz:b=c.I&255;break;case sz:b=c.L&255;break;case tz:b=c.G&255;break;case uz:b=c.D>>8&255;break;case vz:b=c.I>>8&255;break;case wz:b=c.L>>8&255;break;case xz:b=c.G>>8&255;break;case yz:b=c.D&65535;break;case zz:b=c.I&65535;break;case Az:b=c.L&65535;break;case Bz:b=c.G&65535;break;case Cz:b=z(c)&65535;break;case Dz:b=c.M&65535;break;case Ez:b=c.K&65535;break;case Fz:b=c.J&65535;break;case Gz:b=A(c)&65535;break;case aA:b= -xe(c);break;case Hz+Iz:b=c.oa.U;break;case Hz+Jz:b=c.Z.U;break;case Hz+Kz:b=c.X.U;break;case Hz+Lz:b=c.Da.U;break;default:if(80286==this.H.da)a==Wz&&(b=c.qa);else if(80386<=this.H.da)switch(a){case Oz:b=c.D;break;case Pz:b=c.I;break;case Qz:b=c.L;break;case Rz:b=c.G;break;case Sz:b=z(c);break;case Tz:b=c.M;break;case Uz:b=c.K;break;case Vz:b=c.J;break;case Wz:b=c.qa;break;case Xz:b=c.Sg;break;case Yz:b=c.Fd;break;case Zz:b=c.Wc;break;case Hz+Mz:b=c.Ga.U;break;case Hz+Nz:b=c.Ia.U;break;case $z:b=A(c)}}}return b}; -function bA(a,b){b=yy(a,b)||b;for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=a.kh(b,c+1),0<=e&&(b=b.substr(0,c)+pz(a,e)+b.substr(c+1+oz[e].length)),c++;for(c=0;0<=(c=b.indexOf("#",c));)e=b.substr(c+1,2),d=oa(e,16),null!=d&&32<=d&&128>d?(d=e+" '"+String.fromCharCode(d)+"'",b=b.replace("#"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("$",c));)e=b.substr(c+1,9),(d=iz(a,e))?(d=e+' "'+Py(a,d)+'"',b=b.replace("$"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("^",c));)e=b.substr(c+1,9),(d=iz(a,e))?(dz(a,d), -d=e+' "'+Py(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}l.message=function(a,b){b&&(a+=" at "+Zy(By(this,A(this.H),this.H.Z.U))+" (%"+q(this.H.ea)+")");this.za&&a==this.za||(this.za=a,this.ic&-2147483648&&(this.Kb(),a+=" (cpu halted)"),this.O(a),this.H&&(a=this.H,a.zc-=a.A,a.A=0,a.T.Xe=0,Id(a)))}; -function cl(a,b,c,d){var e,f;if(!d&&(d=t(a,1)&&0>cA.indexOf(b),!d)){var g=dA[b];g&&(d=t(a,g)?!0:524288==g&&t(a,g=1048576))}d&&(e=a.H.D>>8&255,f=a.H.L&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=Wb[b])&&g[e]||"")&&(g=" "+bA(a,g)),a.message("INT "+r(b)+": AH="+r(e)+" at "+Oy(c-2-a.H.Z.ua,a.H.Z.U)+g));return d} -function Sb(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.ic&h)==h)h=null,null!=e&&(h=a.H.Z.U,e-=a.H.Z.ua),a.message(b.ye+"."+(null!=d?"outPort":"inPort")+"("+ta(c)+","+(f?f:"unknown")+(null!=d?","+r(d):"")+")"+(null!=g?": "+r(g):"")+(null!=e?" at "+Oy(e,h):""))}l.mh=function(){this.O("Type ? for help with PCx86 Debugger commands");eA(this);if(this.Ia){var a=this.Ia;this.Ia=null;Fy(this,a)}}; -function Dy(a,b){var c;if(Qg(a)){if(!a.X||!a.X.length){a.X=Array(fA);for(c=0;c>>g.kb].rd(f&g.Db,a==this.L);h&&zc(g)}}e&&(a.push(b),c?(null!=b.ya&&(b.U=null),b.wd=!0):(d||nA(this,a,a.length-1,"set"),Dy(this)));return e}; -function Yy(a,b,c,d,e){for(var f=!1,g=oA(a,a.Sb(c)),h=1;h>3&7,F=(3>(g>>6&3)?0:48)+u;(217==f||219==f)&&52<=F&&(F=u<<4|g&7);(u=wA[f])&&(v=u[F]);v&&(p=xA,k=v,m=k[0])}m>=p.length&&(g=a.Ja(b,1),k=yA[m-p.length][g>>3&7],m=k[0]);p=p[m];u=k.length-1;v="";b.Hb&&(m==zA? -p="CWDE":m==AA?p="CDQ":m>=BA&&m<=CA&&(p+="D"));if(164<=f&&167>=f||170<=f&&175>=f)u=0,b.Hb&&"W"==p.slice(-1)&&(p=p.slice(0,-1)+"D");for(var f=-1,F=!0,H=1;H<=u;H++){var I,L;I="";L=k[H];if(void 0!==L){0>f&&(f=L>>DA);m==EA&&(f==FA?v="[%800]":f==GA&&(v="ES:["+(b.cc?"E":"")+"DI]"));var P=L&HA;if(P!=IA)if(P==JA)F=!1;else{var K=L&KA;if(K>=S)if(0>g&&(g=a.Ja(b,1)),K>6,pa=g&7;if(3>ib){P=!p.indexOf("FI");if(!ib&&(!L.cc&&6==pa||L.cc&&5==pa))ib=2;else{if(L.cc)if(4!=pa)pa+= -8;else{var ba=K,cb=ib,Oa=L,jb=ba.Ja(Oa,1),db=jb>>6,rc=jb>>3&7,jb=jb&7,kb="";if(cb||5!=jb)kb=MA[jb+8];4!=rc&&(kb&&(kb+="+"),kb+=MA[rc+8],db&&(kb+="*"+(1<>24),2)):ba+("+"+q(K,2))):2==ib&&(ba&&(ba+="+"),L.cc?(K=Vy(K,L,4),ba+=q(K)):(K=K.Yc(L,2),ba+=q(K,4)));ba="["+ba+"]";if(1==Ba){K="";I&=HA;I==T&&(I=L.Hb?NA:U);switch(I){case OA:K="FAR";break;case V:K="BYTE";break;case U:if(P){K="INT16"; -break}K="WORD";break;case NA:K="DWORD";break;case PA:if(P){K="INT32";break}case QA:K="REAL32";break;case RA:if(P){K="INT64";break}case SA:K="REAL64";break;case TA:K="REAL80";break;case UA:K="BCD80"}K&&(ba=K+" "+ba)}}else ba=VA(K,pa,I,L);I=ba}else I=K==LA?VA(a,g&7,L,b):VA(a,g>>3&7,L,b);else if(K==WA)I="1";else if(K==W){I=a;P=L;K=b;L=" ";switch(P&HA){case V:P&X&&(L=q(I.Ja(K,1),2));break;case XA:L=q(I.Ja(K,1)<<24>>24,K.Hb?8:4);break;case T:if(K.Hb){L=q(Vy(I,K,4));break}case U:L=q(I.Yc(K,2),4);break; -case OA:K=By(I,I.mb(K,!0),I.Yc(K,2),null,K.type,K.Hb,K.cc);L=Zy(K);I=YA(I,K);I[0]&&(L+=" ("+I[0]+")");break;default:L="imm("+ta(P)+")"}I=L}else K==ZA?(b.cc?(I=8,L=Vy(a,b,4)):(I=4,L=a.Yc(b,2)),I="["+q(L,I)+"]"):K==$A?(I=P==V?a.Ja(b,1)<<24>>24:a.mb(b,!0),L=b.Ha+I&(b.Hb?-1:65535),I=q(L,b.Hb?8:4),L=YA(a,By(a,L,b.U)),L[0]&&(I+=" ("+L[0]+")")):K==Y?I=P==aB?"ST":P==bB?"ST("+(g&7)+")":VA(a,(L&cB)>>8,L,b):K==dB?I=VA(a,(L&cB)>>8,eB,b):K==fB?I="DS:[SI]":K==gB&&(I="ES:[DI]");if(!I||!I.length){v="INVALID";break}0< -v.length&&(v+=",");v+=I||"???"}}}g="";k=Zy(e)+" ";if(-1!==e.ya&&-1!==b.ya){do if(g+=q(a.Ja(e,1),2),null==e.ya)break;while(e.ya!=b.ya)}k+=za(g,e.cc?24:16);k+=za(p,8);v&&(k+=" "+v);a.H.daNz||b>=Mz&&80386>a.H.da)return"??";b+=Hz}else if(e==jB)b+=Wz;else if(e==kB)b+=lB;else if(e==mB)b+=nB;else if(a=c&HA,a>=U&&(b=yz&&b<=Fz&&4a.H.da&&(d="\n"+d,c+=e,e="");c+="\n"+qB(a,a.H.Z,b)+" ";80386<=a.H.da&&(e+="\n",c+=qB(a,a.H.Ga,b)+" "+qB(a,a.H.Ia,b)+"\n");c+=rB(a,"LD",a.H.Eb.U,a.H.Eb.ua,a.H.Eb.ua+a.H.Eb.Ka)+" "+rB(a,"GD",null,a.H.Ib,a.H.Pc)+" "+rB(a,"ID", -null,a.H.Pb,a.H.cd)+" ";c=c+(d+" "+e)+pB(a,Wz);80386<=a.H.da&&(c+=pB(a,Yz)+pB(a,Zz))}else 80386<=a.H.da&&(c+=qB(a,a.H.Ga,b)+" "+qB(a,a.H.Ia,b)+" ");return c+=pB(a,aA)+oB(a,"V")+oB(a,"D")+oB(a,"I")+oB(a,"T")+oB(a,"S")+oB(a,"Z")+oB(a,"A")+oB(a,"P")+oB(a,"C")}l.kj=function(a,b){return a[0]>b[0]?1:a[0]>>0,p],I=Da(F,u,a.kj);0>I&&F.splice(-(I+1),0,u)}H&&(v.a=H.replace(/''/g,'"'))}a.F.push({Sf:b,wn:c,U:d,Ha:e,ya:f,mn:g,Hd:h,Ti:m})} -function Xy(a,b,c){for(var d=0;d>>0,f=a.Sb(b)>>>0,g=0;g>>0,p=h.ya;null!=p&&(p>>>=0);var v=h.mn;48==k&&(k=40);if(k==b.U&&e>=m&&e=p&&fc?(a.O("out of data at address "+Zy(b)),p=!0):(a.fc(b,c,1,!0),m++)})})(a,g);Id(a.H, +function gx(a){var b=0,c=[];a.M?(c[b++]=a.I,c[b++]=a.va,c[b++]=a.J,c[b++]=a.ga,c[b++]=a.ea,c[b++]=a.aa,c[b++]=a.X,c[b++]=a.fa,c[b++]=a.ha,c[b++]=[a.L,a.Wa]):(c[b++]=a.P,c[b++]=a.fa,c[b++]=a.F,c[b++]=a.D,c[b++]=a.C,c[b++]=a.sa,c[b++]=a.qa,c[b++]=a.oa,c[b++]=a.N);for(var d=0,e=[],f=0;f=this.C&&(this.D=this.C=0,this.fa&=~(px|qx|rx));return c};l.xo=function(a,b,c){w(this,a,b,c,"DATA["+this.C+"]");this.C=a&&(this.fa|=px,this.fa&=~tx,ux(this))};l.Ym=function(a,b){var c=this.fa;w(this,a,null,b,"STATUS",c);this.D=a.B.Na?(a.fa=wx,a.ye(a.B,function(b){0<=b?(xx(a),a.W&&a.W.da==Fl&&(a.fa=0),a.fa=a.fa|hx|yx|zx):(a.fa=Ax,a.I=Bx)},!1)):a.fa=hx|yx));return d}l.rl=function(a,b){return vx(this,a,b)|vx(this,a,b)<<8}; +function Cx(a,b,c,d){if(a.B&&a.B.xb>=a.B.Na)if(0>Dx(a.B,c))a.fa=Ax,a.I=Bx;else if(1==a.B.Ua||a.B.Ua==a.B.Na)t(a,1048832)&&w(a,b,c,d,"DATA["+a.B.Ua+"]"),1=a.B.Na&&(a.fa|=zx))}l.Gn=function(a,b,c){Cx(this,a,b&255,c);Cx(this,a,b>>8&255,c)};l.dm=function(a,b){var c=this.I;w(this,a,null,b,"ERROR",c);return c};l.Ln=function(a,b,c){w(this,a,b,c,"WPREC");this.va=b};l.fm=function(a,b){var c=this.J;w(this,a,null,b,"SECCNT",c);return c}; +l.Jn=function(a,b,c){w(this,a,b,c,"SECCNT");this.J=b};l.gm=function(a,b){var c=this.ga;w(this,a,null,b,"SECNUM",c);return c};l.Kn=function(a,b,c){w(this,a,b,c,"SECNUM");this.ga=b};l.bm=function(a,b){var c=this.ea;w(this,a,null,b,"CYLLO",c);return c};l.Fn=function(a,b,c){w(this,a,b,c,"CYLLO");this.ea=b};l.am=function(a,b){var c=this.aa;w(this,a,null,b,"CYLHI",c);return c};l.En=function(a,b,c){w(this,a,b,c,"CYLHI");this.aa=b};l.cm=function(a,b){var c=this.X;w(this,a,null,b,"DRVHD",c);return c}; +l.Hn=function(a,b,c){w(this,a,b,c,"DRVHD");this.X=b;this.fa=this.A[this.X&Ex?1:0]?this.fa|hx|yx:this.fa&~hx};l.hm=function(a,b){var c=this.fa;w(this,a,null,b,"STATUS",c);this.fa&hx&&(this.fa&=~wx);return c};l.Dn=function(a,b,c){w(this,a,b,c,"COMMAND");this.ha=b;this.W&&oh(this.W,14);Fx(this)};l.In=function(a,b,c){w(this,a,b,c,"FDR");this.L&Gx&&!(b&Gx)&&(this.I=Hx);this.L=b}; +function Fx(a){var b=!1,c=a.ha,d=a.X&Ex?1:0,e=a.X&Ix,f=a.ea|(a.aa&Jx)<<8,g=a.ga,h=a.J||256;a.Wa=-1;a.B=null;a.I=Kx;a.fa=hx|yx;var k=a.A[d];k?(k.Qd=f,k.$a=e,k.hb=g,k.xb=h*k.Na,c=c>=Lx?c:c&Mx,k.eb=null,k.Ua=0,k.errorCode=0,a.Wa=d,a.B=k):c=-1;switch(c&Mx){case Nx:b=!0;break;case Ox:a.fa=wx;a.ye(k,function(b){0<=b&&a.W?(xx(a),a.fa=hx|yx|zx):(a.fa=Ax,a.I=Bx)},!1);break;case Px:a.fa=zx;break;case Qx:b=!0;break;case Rx:b=!0;break;case Lx:a.I=Hx;b=!0;break;case Sx:k.cb=e+1,k.Va=h,b=!0}b&&xx(a)} +function xx(a){!a.W||a.L&Tx||qh(a.W,14,120)} +function ux(a){a.D=0;var b=Ux(a),c=Ux(a),d=c&32,e=d>>5,f=c&31,g=Ux(a),h=Ux(a),k=g<<2&768|h,m=g&63,p=Ux(a),v=Ux(a),u=a.A[e];u&&(u.Qd=k,u.$a=f,u.hb=m,u.xb=p*u.Na);switch(b){case Vx:Wx(a,u?u.errorCode:Xx);Yx(a,c);Yx(a,g);Yx(a,h);Yx(a,Zx|d);b=-1;break;case sx:for(c=0;0<=(b=Ux(a));)u&&cb?this.ye(a,c):c(-1,!1)};l.ql=function(a,b){return void 0!==b&&0<=b?Dx(a,b):-1}; +l.Hl=function(a,b){void 0!==b&&0<=b?(a.UaDx(a,a.Zi)){a=-1;break a}a.kg++}a.kg>=a.Yd&&(b=-1);a=b}else a=-1;return a}; +function gy(a,b,c){b.errorCode=Xx;if(b.ta&&(b.eb=null,a.W)){b.errorCode=jx;Un(a.W,3,a,"dmaRead",b);Ln(a.W,3,function(a){a||b.errorCode!=jx||(b.errorCode=Xx);c(b.errorCode?$x:Zx)});return}c(b.errorCode?$x:Zx)}function iy(a,b,c){b.errorCode=Xx;if(b.ta&&(b.eb=null,a.W)){b.errorCode=jx;Un(a.W,3,a,"dmaWrite",b);Ln(a.W,3,function(a){a||(b.errorCode==jx&&(b.errorCode=Xx),b.errorCode==ly&&(b.errorCode=jx));c(b.errorCode?$x:Zx)});return}c(b.errorCode?$x:Zx)} +function ky(a,b,c){b.errorCode=Xx;b.Ie&&b.Ie.length==b.xb||(b.Ie=Array(b.xb));b.Ua=0;a.W?(b.errorCode=jx,Un(a.W,3,a,"dmaWriteBuffer",b),Ln(a.W,3,function(a){a||b.errorCode!=jx||(b.errorCode=Xx);c(b.errorCode?$x:Zx)})):c(b.errorCode?$x:Zx)} +l.ye=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.eb&&(f=a.Ua,d=a.ta.read(a.eb,a.Ua),a.Ua+=g,0<=d))return e=a.eb,b&&b(d,!1,e,f),d;if(b){if(a.ta)return a.ta.seek(a.Qd,a.$a,a.hb+a.jg,!1,function(c,k){(a.eb=c)?(e=c,f=a.Ua=0,my(a),d=a.ta.read(a.eb,a.Ua),a.Ua+=g):a.errorCode=ly;b(d,k,e,f)}),d;a.errorCode=ly;b(d,!1,e,f)}return d}; +function Dx(a,b){if(a.errorCode)return-1;do{if(a.eb&&a.ta.write(a.eb,a.Ua++,b))break;a.ta&&a.ta.seek(a.Qd,a.$a,a.hb+a.jg,!0,function(b){a.eb=b});if(!a.eb){a.errorCode=ly;b=-1;break}a.Ua=0;my(a)}while(1);return b}function my(a){a.hb++;var b=1-a.jg;a.hb>=a.Va+b&&(a.hb=b,a.$a++,a.$a>=a.cb&&(a.$a=0,a.Qd++))}l.Zm=function(){var a=this.H.L&255;!(this.H.D>>8)&&128>8||!this.W)||(a=!(this.W.hc[0].ud&64));return a?!0:!1}; +var kx="Hard Drive",nx=["XTC","ATC","COMPAQ"],lx=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966, +6],19:[1023,8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}],dx=496,Hx=1,Kx=0,Bx=16,Jx=3,Ix=15,Ex=16,Ax=1,zx=8,yx=16,hx=64,wx=128,Nx=16,Ox=32,Px=48,Qx=64,Rx= +112,Lx=144,Sx=145,Mx=240,Tx=2,Gx=4,Zx=0,$x=2,cy=0,dy=1,Vx=3,ey=5,fy=8,hy=10,sx=12,jy=15,ay=224,by=228,jx=0,Xx=4,ly=20,ix=0,tx=1,px=2,qx=4,rx=8,ox=32,ax={800:Zw.prototype.Xm,801:Zw.prototype.Ym,802:Zw.prototype.Wm},$w={496:Zw.prototype.rl,497:Zw.prototype.dm,498:Zw.prototype.fm,499:Zw.prototype.gm,500:Zw.prototype.bm,501:Zw.prototype.am,502:Zw.prototype.cm,503:Zw.prototype.hm},cx={800:Zw.prototype.xo,801:Zw.prototype.Ao,802:Zw.prototype.zo,803:Zw.prototype.yo,807:Zw.prototype.ki,811:Zw.prototype.ki, +815:Zw.prototype.ki},bx={496:Zw.prototype.Gn,497:Zw.prototype.Ln,498:Zw.prototype.Jn,499:Zw.prototype.Kn,500:Zw.prototype.Fn,501:Zw.prototype.En,502:Zw.prototype.Hn,503:Zw.prototype.Dn,1014:Zw.prototype.In};eb(function(){for(var a=Bb(document,"pcx86","hdc"),b=0;bthis.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else this.ga?a="end":a=this.C[this.A+1];b=[];if(a){a=a.replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(Aa(a.substring(d,f))),d=f+1}}return b}; +function oy(a,b,c){var d=a;b=b||32;if(c)if(32==b)d=a>>>0;else if(32>b)d=a&(1<a||a>=b)d=a%b,0>d&&(d+=b)}else 32>=b?d=a<<32-b>>32-b:(b=Math.pow(2,b-1),a>=b?(d=a%b,(a/b|0)&1&&(d-=b)):a<-b&&(d=a%b,((-a-1)/b|0)&1?d&&(d+=b):d||(d-=b)));a!=d&&(a=d);return a} +function py(a,b,c){for(c=void 0===c?-1:c;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e,f=a.pop();e=a.pop();switch(d){case "*":e*=f;break;case "/":if(!f)return!1;e=Math.trunc(e/f);break;case "^/":if(!f)return!1;e%=f;break;case "+":e+=f;break;case "-":e-=f;break;case "<<":e<<=f;break;case ">>":e>>=f;break;case ">>>":e>>>=f;break;case "<":e=e":e=e>f?1:0;break;case ">=":e=e>=f?1:0;break;case "==":e=e==f?1:0;break;case "!=":e=e!=f?1:0;break;case "&":e&= +f;break;case "!":case "|":e|=f;break;case "^!":e|=f;break;case "&&":e=e&&f?1:0;break;case "||":e=e||f?1:0;break;case ",,":e=oy(e,18,!0)*Math.pow(2,18)+oy(f,18,!0);break;case "_":case "^_":"^_"==d&&(f=35-(f&255));f&&(e=oy(e,0,!0),e=0=|>>>|>>|>|<=|<<|<|-|\+|\^\/|\/|\*|,,| )/);d=qy(a,b,0,b.length,a.D,c);void 0!==d&&e&&yy(a,null,d)}return d} +function zy(a,b){var c,d=a.ha[0],e=a.ha[1];c="("==d||"{"==d||"["==d?"\\":"";for(var f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);){var g=xy(a,c[1]);if(void 0===g)return;b=b.replace(d+c[1]+e,null!=g?wy(a,g):"undefined")}if(a.Ba.length)for(d=a.Ba[0],e=a.Ba[1],c="("==d||"{"==d||"["==d?"\\":"",f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);)b=a.Uk(b,c[1]);for(;d=b.match(/\$([a-z]+)/i);){e=null;switch(d[1].toLowerCase()){case "ops":e=a.aa-a.ka}if(null== +e)break;b=b.replace(d[0],e.toString())}return b}function sy(a,b){for(;b;){switch(b&3){case 1:a=-oy(a);break;case 2:a|=-1;break;case 3:for(var c=35;0<=c&&!(a&Math.pow(2,c));)c--;a=35-c}b>>>=2}return a} +function ry(a,b,c,d,e){e=void 0===e?0:e;var f,g=Array.isArray(d)?d:void 0;if(null!=b){f=a.jh(b);if(0<=f)f=a.kh(f);else if(f=b,a.I[f]?f=a.I[f].value:(f=f.substr(0,6),f=a.I[f]&&a.I[f].value),null!=f){var h=a.I[b]&&a.I[b].Wo;h&&(g?g.push(h):(g=xy(a,h,d),void 0!==g?f+=g:(d||a.O("undefined "+(c||"value")+": "+b+" ("+h+")"),f=void 0)))}else f=oa(b,1c&&(d+=" '"+String.fromCharCode(c)+"'"));a.O((null!=b?b+": ":"")+d);return e}function Ay(a,b){var c=0;if(a.I){if(b)return yy(a,b,a.I[b]&&a.I[b].value);b=Object.keys(a.I);b.sort();for(var d=0;d=Math.abs(b)?5:11;b=qa(b,10,a);break;default:b=q(b,0>2:0,!!e)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c} +var uy={"||":5,"&&":6,"!":7,"|":7,"^!":8,"&":9,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,_:19,"^_":19,"{":20,"}":20},ty={",,":1,"||":5,"&&":6,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,"!":15,"|":15,"^!":15,"&":15,_:19,"^_":19,"{":20,"}":20}; +function By(a){ny.call(this,a);this.sa=4;this.la=5;this.wa=1048575;this.N=Cy(this,0,0);this.Aa=Cy(this,0,0);this.ea=Cy(this,0,0);this.F=[];this.B=this.W=this.L=[];Dy(this);this.xa=0;Ey(this);this.Da={};Fy(this,a.messages);this.Ia=a.commands;var b=this;window?void 0===window.pcx86&&(window.pcx86=function(a){return Gy(b,a)}):void 0===global.pcx86&&(global.pcx86=function(a){return Gy(b,a)})}ca(By,ny);l=By.prototype; +l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.pa=a;this.fb=bc(a,"FDC");this.Ta=bc(a,"HDC");this.Ic=bc(a,"FPU");this.G=bc(a,"Mouse");(a=Fd(a,"messages"))&&Fy(this,a);this.la=b.I>>2;this.wa=b.N;this.Za=new be(this.H,7,"DBG");this.qa=Hy;80186<=this.H.da&&(this.qa=Hy.slice(),this.qa[15]=Iy,80286<=this.H.da&&(this.qa[15]=Jy,80386<=this.H.da&&(this.sa=8)));Il(this,64,function(a){Ky(d,d.H.sc,a[0])});Il(this,4,function(a){if(a=a[0]){var b=ry(d,a);if(void 0===b)d.O("invalid selector: "+a);else if(a=Ly(d, +b,My),d.O("dumpSel("+ta(a?a.U:b)+"): %"+q(a?a.Lb:null,d.la)),a){var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else{var e=Ny[a.type];e&&(c=e[0],b=e[1])}!c||a.nb&32768||(c+=",not present");d.O((b?"seg="+ta(a.ua&65535)+" off="+ta(a.Ka):"base="+q(a.ua,d.la)+" limit="+Oy(a.Ka))+" type="+r(a.type>>8)+" ("+c+") ext="+ta(a.ext&-65296)+ +" dpl="+r(a.qc))}}else d.O("no selector")});Il(this,134217728,function(a){var b;(a=a[0])&&(b=ry(d,a));if(void 0===b)d.O("invalid MCB");else for(d.O("dumpMCB("+ta(b)+")");b;){a=Cy(d,0,b);var c=d.Ja(a,1),e=d.Xc(a,2),k=d.Xc(a,5);if(77!=c&&90!=c)break;d.O(Py(0,b)+": '"+String.fromCharCode(c)+"' PID="+ta(e)+" LEN="+ta(k)+' "'+Qy(d,a,8)+'"');b+=1+k}});Il(this,128,function(a){Ky(d,d.H.aa,a[0],d.H.aa!==d.H.sc)});Il(this,8,function(a){a:{if(a=a[0]){var b=ry(d,a);if(void 0===b){d.O("invalid task selector: "+ +a);break a}a=Ly(d,b,My)}else a=d.H.ka;d.O("dumpTSS("+ta(a?a.U:b)+"): %"+q(a?a.ua:null,d.la));if(a){var b="",c=a.type&-513,e=256==c?4:8,k=256==c?Ry:Sy,m,p,v,u;for(u in k)m=k[u],p=a.ua+m,v=Gg(d.H,p,2),2304==c&&(v|=Gg(d.H,p+2,2)<<16),b&&(b+="\n"),b+=ta(m)+" "+za(u+":",11)+q(v,e);if(2304==c)for(u=0,m=v>>>16;mu;){p=a.ua+m;v=Gg(d.H,p,2);p=2;c="";if(!p||4>=8;b+="\n"+ta(m)+" ports "+ta(u)+"-"+ta(u+15)+": "+(""+c);u+=16;m+=2}d.O(b)}}});this.J= +null;this.Ma=0;this.Ea=!1;$f(this.H,48,this.cn.bind(this));$f(this.H,65,this.dn.bind(this));this.Z=null;$f(this.H,104,this.en.bind(this));Ob(this)};function Ty(a,b,c,d,e,f){b=Qy(a,b);var g=Ly(a,d),g=g?g.Ka+1:0,h=(e?"_CODE":"_DATA")+q(c,2);f&&t(a,128)&&a.message(b+" "+(e?"code":"data")+"("+q(c,4)+")=#"+q(d,4)+" len "+q(g));e=Uy(a,b,c);e[b+h]=0;kq(a,b,c,d,0,null,g,e)} +function Vy(a,b,c,d){var e=a.Xc(b,2),f=a.Xc(b,2),g=Wy(a,b,4),h=Wy(a,b,4),k=Cy(a,Wy(a,b,4),a.Xc(b,2));b=Cy(a,Wy(a,b,4),a.Xc(b,2));b=Qy(a,b).toUpperCase();var k=Qy(a,k).toUpperCase(),m=(c?"_CODE":"_DATA")+q(e,2);d&&t(a,128)&&a.message((b==k?"":b+"!")+k+" "+(c?"code":"data")+"("+q(e,4)+")="+q(f,4)+":"+q(g)+" len "+q(h));c=Uy(a,k,e);c[k+m]=g;kq(a,k,e,f,g,null,h,c)}function Xy(a,b,c){c=Qy(a,c).toUpperCase();Yy(a,c,b)} +l.cn=function(){var a=this.H;if(null!=this.J&&2752554==a.D){var b=a.L&65535,c=a.K&65535,d=Cy(this,z(a)+12,a.X.U);switch(Wy(this,d)){case 336:Vy(this,Cy(this,a.G,b),!c,!!this.J)}}return!0}; +l.dn=function(a){var b=this.H,c=b.D&65535,d=b.G&65535,e=b.I&65535,f=b.L&65535,g=b.K&65535,h=b.J&65535,k=b.oa.U;if(null==this.J)return 79==c&&ag(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Rb(a,"INT 0x41 handling enabled",128),a.J=!0):(Rb(a,"INT 0x41 monitoring enabled",128),a.J=!1)}}(this)),!0;switch(c){case 79:this.J&&(b.D=b.D&-65536|62342,Rb(this,"INT 0x41 handling enabled",128));break;case 80:Ty(this,Cy(this,h,k),d+1,e,!(g&1),!!this.J);break;case 82:Yy(this,null, +d);break;case 127:this.J&&(b.D=b.D&-65536|(this.Ea?0:1));break;case 131:this.J&&(a=Cy(this,b.L,e),this.Ma++?(this.O("TRAPFAULT failed"),Zy(this,this.B,a,!0,!0),this.Ma=0,this.Kb()):(this.O("INT 0x41 TRAPFAULT: fault="+ta(d)+" error="+q(b.K,8,!0)+" addr="+$y(a)),this.td(this.B,a,!0),Ey(this,!0)));break;case 141:this.J&&(b.D=b.D&-65536|1);break;case 336:Vy(this,Cy(this,b.G,f),!g,!!this.J);break;case 338:Xy(this,d,Cy(this,b.J,f))}this.Ea=!1;return!this.J}; +l.en=function(a){var b=this.H,c=b.D&255,d=b.D>>8&255,e=b.G&65535,f=b.I&65535,g=b.L&65535,h=b.J&65535,k=b.oa.U;if(null==this.Z){if(67==d){if(609437257==b.ia((b.Z.U<<4)+10)||1111835735==b.ia((b.Z.U<<4)+95))return!0;ag(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Rb(a,"INT 0x68 handling enabled",128),a.J=a.Z=!0):(Rb(a,"INT 0x68 monitoring enabled",128),a.Z=!1)}}(this))}return!0}switch(d){case 67:this.Z&&(b.D=b.D&-65536|62342);break;case 68:this.Z&&(a=de(b.Z,this.Cl.bind(this)))&& +(b.J=a[0],ve(b,a[1]));break;case 72:Yy(this,null,e);break;case 80:32==c?Ty(this,Cy(this,h,k),0,f,!0,!!this.Z):128>c?Ty(this,Cy(this,h,k),e+1,c&64?g:f,!(c&1),!!this.Z):Vy(this,Cy(this,h,k),!(c&1),!!this.Z),this.Z&&(b.D=b.D&-256|1)}return!this.Z};l.Cl=function(){var a=this.H;5==(a.D&255)&&(a.I=a.K=0,a.D=a.D&-256|1);return!1}; +l.Cb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.va=this.na[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Gy(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.A>>0)+1;a.nb=f;a.type=g;a.ext=k;a.Lb=d;ce(a,!0,!0,!1)}}return a}l.Sb=function(a,b,c){var d=a&&a.ya;if(null==d&&(d=-1,a)){var e=Ly(this,a.U,a.type);e&&(b=a.Ha||0,c=c||1,d=e=-1===e.Lb||e.Rc&&(b>>>0)+c>e.Pb||!e.Rc&&(b>>>0)+c<=e.Pb?e.ua+b|0:-1,a.ya=d)}return d};l.Ja=function(a,b){var c=255,d=this.Sb(a,!1,1);-1!==d&&(c=Gg(this.H,d,1,a.type==dz)|0,b&&ez(this,a,b));return c}; +l.mb=function(a,b){return a.Hb?Wy(this,a,b?4:0):this.Xc(a,b?2:0)};l.Xc=function(a,b){var c=65535,d=this.Sb(a,!1,2);-1!==d&&(c=Gg(this.H,d,2,a.type==dz)|0,b&&ez(this,a,b));return c};function Wy(a,b,c){var d=-1,e=a.Sb(b,!1,4);-1!==e&&(d=Gg(a.H,e,4,b.type==dz)|0,c&&ez(a,b,c));return d}l.fc=function(a,b,c,d){var e=this.Sb(a,!0,1);if(-1!==e){if(a.type!=dz)this.H.fc(e,b);else{var f=this.ma;f.aa[(e&f.C)>>>f.A].cf(e&f.D,b&255,e)}c&&ez(this,a,c);d||Id(this.H,!0)}}; +l.ml=function(a,b,c){var d=this.Sb(a,!0,2);-1!==d&&(a.type!=dz?this.H.gb(d,b):Qc(this.ma,d,b),c&&ez(this,a,c),Id(this.H,!0))};function Cy(a,b,c,d,e,f,g){return fz(a,{},b,c,d,e,f,g)}function fz(a,b,c,d,e,f,g,h){b.Ha=c||0;b.U=d;b.ya=e;b.type=f||(bz(a)?My:cz);b.Hb=null!=g?g:!(!a.H||4!=a.H.Z.V);b.cc=null!=h?h:!(!a.H||4!=a.H.Z.Mc);b.yd=!1;return b}function gz(a){return[a.Ha,a.U,a.ya,a.yd,a.Hb,a.cc,a.Je,a.fh]}function hz(a){return{Ha:a[0],U:a[1],ya:a[2],yd:a[3],Hb:a[4],cc:a[5],Je:a[6],fh:a[7]}} +function iz(a,b,c){if(null!=b.U&&(a=Ly(a,b.U,b.type))){var d=b.Ha&a.wa;if(!a.Rc){if(d>>>0>=a.Pb)return!1}else if(d>>>0f?null!=h?(g=xy(a,b,void 0),f=null):(f=xy(a,b,void 0),null==f&&(g=null)):(h=xy(a,b.substring(0,f),void 0),g=xy(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=Cy(a,g,h,f,c),d||iz(a,e,!0)||(a.O("invalid offset: "+$y(e)),e=null));return e}function mz(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.wl=a.Fg(b.cl=c[2]))}l.Uk=function(a,b){var c=jz(this,b);return a.replace("["+b+"]",c?q(this.mb(c),c.Hb?8:4):"undefined")}; +function ez(a,b,c){c=c||1;null!=b.ya&&(b.ya+=c);null!=b.U&&(b.Ha+=c,iz(a,b)||(b.Ha=0,b.ya=null))}function Py(a,b,c){return null!=b?q(b,4)+":"+q(a,a&-65536||c?8:4):q(a)}function $y(a){var b;switch(a.type){case cz:case nz:b="&";break;case My:b="#";break;case lz:b="%";break;case dz:b="%%";break;default:b=a.U?"":"%"}return a.type>=lz||null==a.U?b+q(a.ya):b+Py(a.Ha,a.U,a.cc)} +function Qy(a,b,c){var d="";for(c=c||256;d.length>>a.H.kb;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&d.type==hd&&(d=zd(a.H,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=Ac[c],c==jd&&(d=d.vd,h+=" -> "+Ac[d.type]),d&&a.O(q(d.id,8)+" %"+q(f<c&&(c=Ka(pz,a.substr(b,2))));return c}; +function qz(a,b){var c=0,d=a.kh(b);if(null!=d)switch(b){case rz:case sz:case tz:case uz:case vz:case wz:case xz:case yz:c=2;break;case zz:case Az:case Bz:case Cz:case Dz:case Ez:case Fz:case Gz:case Hz:case Iz+Jz:case Iz+Kz:case Iz+Lz:case Iz+Mz:case Iz+Nz:case Iz+Oz:c=4;break;case Pz:case Qz:case Rz:case Sz:case Tz:case Uz:case Vz:case Wz:case Xz:case Yz:case Zz:case $z:case aA:c=8;break;case bA:c=a.sa}return c?q(d,c):"??"} +l.kh=function(a){var b;if(0<=a){var c=this.H;switch(a){case rz:b=c.D&255;break;case sz:b=c.I&255;break;case tz:b=c.L&255;break;case uz:b=c.G&255;break;case vz:b=c.D>>8&255;break;case wz:b=c.I>>8&255;break;case xz:b=c.L>>8&255;break;case yz:b=c.G>>8&255;break;case zz:b=c.D&65535;break;case Az:b=c.I&65535;break;case Bz:b=c.L&65535;break;case Cz:b=c.G&65535;break;case Dz:b=z(c)&65535;break;case Ez:b=c.M&65535;break;case Fz:b=c.K&65535;break;case Gz:b=c.J&65535;break;case Hz:b=A(c)&65535;break;case bA:b= +De(c);break;case Iz+Jz:b=c.oa.U;break;case Iz+Kz:b=c.Z.U;break;case Iz+Lz:b=c.X.U;break;case Iz+Mz:b=c.Da.U;break;default:if(80286==this.H.da)a==Xz&&(b=c.qa);else if(80386<=this.H.da)switch(a){case Pz:b=c.D;break;case Qz:b=c.I;break;case Rz:b=c.L;break;case Sz:b=c.G;break;case Tz:b=z(c);break;case Uz:b=c.M;break;case Vz:b=c.K;break;case Wz:b=c.J;break;case Xz:b=c.qa;break;case Yz:b=c.Rg;break;case Zz:b=c.rd;break;case $z:b=c.Vc;break;case Iz+Nz:b=c.Ga.U;break;case Iz+Oz:b=c.Ia.U;break;case aA:b=A(c)}}}return b}; +function cA(a,b){b=zy(a,b)||b;for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=a.jh(b,c+1),0<=e&&(b=b.substr(0,c)+qz(a,e)+b.substr(c+1+pz[e].length)),c++;for(c=0;0<=(c=b.indexOf("#",c));)e=b.substr(c+1,2),d=oa(e,16),null!=d&&32<=d&&128>d?(d=e+" '"+String.fromCharCode(d)+"'",b=b.replace("#"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("$",c));)e=b.substr(c+1,9),(d=jz(a,e))?(d=e+' "'+Qy(a,d)+'"',b=b.replace("$"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("^",c));)e=b.substr(c+1,9),(d=jz(a,e))?(ez(a,d), +d=e+' "'+Qy(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}l.message=function(a,b){b&&(a+=" at "+$y(Cy(this,A(this.H),this.H.Z.U))+" (%"+q(this.H.ea)+")");this.za&&a==this.za||(this.za=a,this.ic&-2147483648&&(this.Kb(),a+=" (cpu halted)"),this.O(a),this.H&&(a=this.H,Td(a),a.T.ve=0,Id(a)))}; +function dl(a,b,c,d){var e,f;if(!d&&(d=t(a,1)&&0>dA.indexOf(b),!d)){var g=eA[b];g&&(d=t(a,g)?!0:524288==g&&t(a,g=1048576))}d&&(e=a.H.D>>8&255,f=a.H.L&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=Wb[b])&&g[e]||"")&&(g=" "+cA(a,g)),a.message("INT "+r(b)+": AH="+r(e)+" at "+Py(c-2-a.H.Z.ua,a.H.Z.U)+g));return d} +function Sb(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.ic&h)==h)h=null,null!=e&&(h=a.H.Z.U,e-=a.H.Z.ua),a.message(b.Ce+"."+(null!=d?"outPort":"inPort")+"("+ta(c)+","+(f?f:"unknown")+(null!=d?","+r(d):"")+")"+(null!=g?": "+r(g):"")+(null!=e?" at "+Py(e,h):""))}l.lh=function(){this.O("Type ? for help with PCx86 Debugger commands");fA(this);if(this.Ia){var a=this.Ia;this.Ia=null;Gy(this,a)}}; +function Ey(a,b){var c;if(Rg(a)){if(!a.X||!a.X.length){a.X=Array(gA);for(c=0;c>>g.kb].td(f&g.Db,a==this.L);h&&zc(g)}}e&&(a.push(b),c?(null!=b.ya&&(b.U=null),b.yd=!0):(d||oA(this,a,a.length-1,"set"),Ey(this)));return e}; +function Zy(a,b,c,d,e){for(var f=!1,g=pA(a,a.Sb(c)),h=1;h>3&7,F=(3>(g>>6&3)?0:48)+u;(217==f||219==f)&&52<=F&&(F=u<<4|g&7);(u=xA[f])&&(v=u[F]);v&&(p=yA,k=v,m=k[0])}m>=p.length&&(g=a.Ja(b,1),k=zA[m-p.length][g>>3&7],m=k[0]);p=p[m];u=k.length-1;v="";b.Hb&&(m==AA? +p="CWDE":m==BA?p="CDQ":m>=CA&&m<=DA&&(p+="D"));if(164<=f&&167>=f||170<=f&&175>=f)u=0,b.Hb&&"W"==p.slice(-1)&&(p=p.slice(0,-1)+"D");for(var f=-1,F=!0,H=1;H<=u;H++){var I,L;I="";L=k[H];if(void 0!==L){0>f&&(f=L>>EA);m==FA&&(f==GA?v="[%800]":f==HA&&(v="ES:["+(b.cc?"E":"")+"DI]"));var P=L&IA;if(P!=JA)if(P==KA)F=!1;else{var K=L&LA;if(K>=S)if(0>g&&(g=a.Ja(b,1)),K>6,pa=g&7;if(3>ib){P=!p.indexOf("FI");if(!ib&&(!L.cc&&6==pa||L.cc&&5==pa))ib=2;else{if(L.cc)if(4!=pa)pa+= +8;else{var ba=K,cb=ib,Oa=L,jb=ba.Ja(Oa,1),db=jb>>6,rc=jb>>3&7,jb=jb&7,kb="";if(cb||5!=jb)kb=NA[jb+8];4!=rc&&(kb&&(kb+="+"),kb+=NA[rc+8],db&&(kb+="*"+(1<>24),2)):ba+("+"+q(K,2))):2==ib&&(ba&&(ba+="+"),L.cc?(K=Wy(K,L,4),ba+=q(K)):(K=K.Xc(L,2),ba+=q(K,4)));ba="["+ba+"]";if(1==Ba){K="";I&=IA;I==T&&(I=L.Hb?OA:U);switch(I){case PA:K="FAR";break;case V:K="BYTE";break;case U:if(P){K="INT16"; +break}K="WORD";break;case OA:K="DWORD";break;case QA:if(P){K="INT32";break}case RA:K="REAL32";break;case SA:if(P){K="INT64";break}case TA:K="REAL64";break;case UA:K="REAL80";break;case VA:K="BCD80"}K&&(ba=K+" "+ba)}}else ba=WA(K,pa,I,L);I=ba}else I=K==MA?WA(a,g&7,L,b):WA(a,g>>3&7,L,b);else if(K==XA)I="1";else if(K==W){I=a;P=L;K=b;L=" ";switch(P&IA){case V:P&X&&(L=q(I.Ja(K,1),2));break;case YA:L=q(I.Ja(K,1)<<24>>24,K.Hb?8:4);break;case T:if(K.Hb){L=q(Wy(I,K,4));break}case U:L=q(I.Xc(K,2),4);break; +case PA:K=Cy(I,I.mb(K,!0),I.Xc(K,2),null,K.type,K.Hb,K.cc);L=$y(K);I=ZA(I,K);I[0]&&(L+=" ("+I[0]+")");break;default:L="imm("+ta(P)+")"}I=L}else K==$A?(b.cc?(I=8,L=Wy(a,b,4)):(I=4,L=a.Xc(b,2)),I="["+q(L,I)+"]"):K==aB?(I=P==V?a.Ja(b,1)<<24>>24:a.mb(b,!0),L=b.Ha+I&(b.Hb?-1:65535),I=q(L,b.Hb?8:4),L=ZA(a,Cy(a,L,b.U)),L[0]&&(I+=" ("+L[0]+")")):K==Y?I=P==bB?"ST":P==cB?"ST("+(g&7)+")":WA(a,(L&dB)>>8,L,b):K==eB?I=WA(a,(L&dB)>>8,fB,b):K==gB?I="DS:[SI]":K==hB&&(I="ES:[DI]");if(!I||!I.length){v="INVALID";break}0< +v.length&&(v+=",");v+=I||"???"}}}g="";k=$y(e)+" ";if(-1!==e.ya&&-1!==b.ya){do if(g+=q(a.Ja(e,1),2),null==e.ya)break;while(e.ya!=b.ya)}k+=za(g,e.cc?24:16);k+=za(p,8);v&&(k+=" "+v);a.H.daOz||b>=Nz&&80386>a.H.da)return"??";b+=Iz}else if(e==kB)b+=Xz;else if(e==lB)b+=mB;else if(e==nB)b+=oB;else if(a=c&IA,a>=U&&(b=zz&&b<=Gz&&4a.H.da&&(d="\n"+d,c+=e,e="");c+="\n"+rB(a,a.H.Z,b)+" ";80386<=a.H.da&&(e+="\n",c+=rB(a,a.H.Ga,b)+" "+rB(a,a.H.Ia,b)+"\n");c+=sB(a,"LD",a.H.Eb.U,a.H.Eb.ua,a.H.Eb.ua+a.H.Eb.Ka)+" "+sB(a,"GD",null,a.H.Ib,a.H.Hc)+" "+sB(a,"ID", +null,a.H.Nb,a.H.bd)+" ";c=c+(d+" "+e)+qB(a,Xz);80386<=a.H.da&&(c+=qB(a,Zz)+qB(a,$z))}else 80386<=a.H.da&&(c+=rB(a,a.H.Ga,b)+" "+rB(a,a.H.Ia,b)+" ");return c+=qB(a,bA)+pB(a,"V")+pB(a,"D")+pB(a,"I")+pB(a,"T")+pB(a,"S")+pB(a,"Z")+pB(a,"A")+pB(a,"P")+pB(a,"C")}l.jj=function(a,b){return a[0]>b[0]?1:a[0]>>0,p],I=Da(F,u,a.jj);0>I&&F.splice(-(I+1),0,u)}H&&(v.a=H.replace(/''/g,'"'))}a.F.push({Rf:b,vn:c,U:d,Ha:e,ya:f,kn:g,Jd:h,Si:m})} +function Yy(a,b,c){for(var d=0;d>>0,f=a.Sb(b)>>>0,g=0;g>>0,p=h.ya;null!=p&&(p>>>=0);var v=h.kn;48==k&&(k=40);if(k==b.U&&e>=m&&e=p&&fc?(a.O("out of data at address "+$y(b)),p=!0):(a.fc(b,c,1,!0),m++)})})(a,g);Id(a.H, !0);a.O(m+" bytes read at "+b)}else a.O("sector "+e+" request out of range");else a.O("drive "+d+" not loaded");else a.O("invalid drive: "+d)}else a.O("disk controller not present")}}else a.O("load commands:"),a.O("\tl [address] [drive #] [sector #] [# sectors]")} -function iA(a,b){var c;if(b&&"?"==b[1])a.O("register commands:"),a.O("\tr\tdump registers"),a.Tc&&a.O("\trfp\tdump floating-point registers"),a.O("\trp\tdump all registers"),a.O("\trx [#]\tset flag or register x to [#]");else{var d;null==c&&(c=!0);if(b&&1f;f++){var g=c,e=null;if(f=a.sa&&(h=null);switch(h){case "AL":a.H.D= -a.H.D&-256|g&255;break;case "AH":a.H.D=a.H.D&-65281|g<<8&255;break;case "AX":a.H.D=a.H.D&-65536|g&65535;break;case "BL":a.H.G=a.H.G&-256|g&255;break;case "BH":a.H.G=a.H.G&-65281|g<<8&255;break;case "BX":a.H.G=a.H.G&-65536|g&65535;break;case "CL":a.H.I=a.H.I&-256|g&255;break;case "CH":a.H.I=a.H.I&-65281|g<<8&255;break;case "CX":a.H.I=a.H.I&-65536|g&65535;break;case "DL":a.H.L=a.H.L&-256|g&255;break;case "DH":a.H.L=a.H.L&-65281|g<<8&255;break;case "DX":a.H.L=a.H.L&-65536|g&65535;break;case "SP":ne(a.H, -z(a.H)&-65536|g&65535);break;case "BP":a.H.M=a.H.M&-65536|g&65535;break;case "SI":a.H.K=a.H.K&-65536|g&65535;break;case "DI":a.H.J=a.H.J&-65536|g&65535;break;case "DS":te(a.H,g);break;case "ES":ue(a.H,g);break;case "SS":me(a.H,g);break;case "CS":fg(a.H,g);a.N=By(a,A(a.H),a.H.Z.U);break;case "IP":case "EIP":C(a.H,g);a.N=By(a,A(a.H),a.H.Z.U);break;case "PC":case "PS":De(a.H,g);break;case "C":g?rg(a.H):sg(a.H);break;case "P":g?(e=a.H,e.resultType&=-3,e.P|=4):(e=a.H,e.resultType&=-3,e.P&=-5);break;case "A":g? -zg(a.H):xg(a.H);break;case "Z":g?Cg(a.H):yg(a.H);break;case "S":g?(e=a.H,e.resultType&=-17,e.P|=128):(e=a.H,e.resultType&=-17,e.P&=-129);break;case "I":g?(e=a.H,e.P|=512):(e=a.H,e.P&=-513);break;case "D":g?(e=a.H,e.P|=1024):(e=a.H,e.P&=-1025);break;case "V":g?tg(a.H):ug(a.H);break;default:var k=!0;if(80286<=a.H.da)switch(k=!1,h){case "MS":Dg(a.H,g);break;case "TR":-1===a.H.ka.load(g)&&(f=!1);break;default:if(k=!0,80386<=a.H.da)switch(k=!1,h){case "EAX":a.H.D=g;break;case "EBX":a.H.G=g;break;case "ECX":a.H.I= -g;break;case "EDX":a.H.L=g;break;case "ESP":ne(a.H,g);break;case "EBP":a.H.M=g;break;case "ESI":a.H.K=g;break;case "EDI":a.H.J=g;break;case "FS":a.H.Ga.load(g);break;case "GS":a.H.Ia.load(g);break;case "CR0":a.H.qa=g;ik.call(a.H,g);break;case "CR2":a.H.Fd=g;break;case "CR3":a.H.Wc=g;Fe.call(a.H,g);break;default:k=!0}}if(k){a.O("unknown register: "+e);return}}if(!f){a.O("invalid value: "+b);return}Id(a.H);a.O("updated registers:")}}a.O(sB(a,d));c&&(a.N=By(a,A(a.H),a.H.Z.U),jA(a,Zy(a.N)))}} -function AB(a,b){b=Aa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(bA(a,c[2])):wy(a,b,!1)}function BB(a,b,c){for(var d=null,e=b.Ha,f=e,g=1;6>=g&&e;g++){if(2e&&(e=1);4096h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.O(m)}h[3]&&(g=h[3],f=null);f=rA(a,b,g,f);b.gh||d||d++;a.O(f);a.N=b;e-=b.ya-k;c++}}} -l.Gg=function(a,b,c){if(b)if(a){0>this.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else a=this.C[this.A+1];b=[];if(a){a=a.toLowerCase().replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(Aa(a.substring(d,f))),d=f+1}}return b}; -function qA(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.ga&&(a.O("ended assemble at "+Zy(a.ea)),a.N=a.ea,a.ga=!1),b="";else if(!c){var e=">> ";a.H.qa&1&&(e=a.H.P&131072?"-- ":"## ");a.O(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.za=null;if(Nb(a)&&0p||"z">>20;Ra.Xi=a.H.Wc+Ra.Pk;Ra.ob=tf.aa[(Ra.Xi&tf.C)>>>tf.A];Ra.Fj=Ra.ob.Nd(Ra.Pk);Ra.Qk=(Vg&4190208)>>>10;Ra.Yi=(Ra.Fj&-4096)+Ra.Qk;Ra.pb=tf.aa[(Ra.Yi&tf.C)>>>tf.A];Ra.Gj=Ra.pb.Nd(Ra.Qk);Ra.zl=(Ra.Gj&-4096)+(Vg&4095)}if(sf=Ra){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var ye="%"+q(Vg),ye=ye+(" %%"+nz(sf.Xi,sf.Fj)),ye= -ye+(" %%"+nz(sf.Yi,sf.Gj,!0)),ye=ye+(" %%"+q(sf.zl));a.O(ye)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==pa){if("disk"==cb){ba[0]="l";ba[1]="json";xB(a,ba);break a}for(ib in Xb)if(ba[1]==ib){var Nt=a.Da[ib];Nt?(ba.shift(),ba.shift(),Nt(ba)):a.O("no dump registered for "+cb);break a}cb||(pa=a.lb||"db")}if("dh"==pa){var Ot=cb,Pt=Oa,Wg=jb,Wg=void 0===Wg?"history":Wg,Qt="",Rt=0,Mc=a.oa,ld=a.X;if(ld.length){var vc=+Ot||a.Ya,Xg=+Pt||10;isNaN(vc)?vc=Xg:Qt="more ";vc>ld.length&& -(a.O("note: only "+ld.length+" available"),vc=ld.length);Mc-=vc;0>Mc&&(null==ld[ld.length-1].U?(vc=Mc+vc,Mc=0):Mc+=ld.length);var Bm=[];"call"==Pt&&(Xg=1E5,Bm=["CALL"]);for(void 0!==Ot&&a.O(vc+" instructions earlier:");0=ld.length&&(Mc=0);a.Ya=vc; -Rt++;Xg--}}Rt||(a.O("no "+Qt+"history available"),a.Ya=void 0)}else if("di"==pa){ba.shift();var Cm=ba[0];if(Cm){var Zg=qy(a,Cm);if(void 0===Zg||0>Zg||255"abwd".indexOf(pa[1]))a.O("unrecognized dump command"); -else{a.lb=pa;var ze=iz(a,cb);if(ze&&(null!=ze.U||null!=ze.ya)){var uf=0;if(Oa){if("l"==Oa.charAt(0))Oa=Oa.substr(1)||jb,uf=qy(a,Oa);else{var Yt=iz(a,Oa);if(!Yt)break a;uf=Yt.Ha-ze.Ha+1}if(0>uf||65536>4||1,Fm=4==vf?16:a.D;"a"==pa[1]&&(Dm=!0,Em=25,Fm=160,$g=Em*Fm);for(;Em--&&0<$g;){var ah=0,Gm=0,bh,Hm="",ej="",cb=Zy(ze);for(bh=Fm;0fj?String.fromCharCode(fj):Dm?"":".";$g--}Ae&&(Ae+="\n");Ae=Dm?Ae+ej:Ae+(cb+" "+Hm+za(ej,ej.length+3*bh+1,!0))}Ae&&a.O(Ae.replace(/\s*$/,""));a.Aa=ze}}}}}break;case "e":if("else"==g[0])break;var gj=1,Zt=255,$t=a.Ja,au=a.fc;"ew"==g[0]&&(gj=2,Zt=65535,$t=a.Yc,au=a.nl);var bu=gj<<1,cu=g[1];if(null==cu)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var hj=iz(a,cu);if(hj)for(var ij= -2;ijNm;){for(var nd=null,zC=256;Ud.Ha>>>0>>0;){eh.Ha=a.mb(Ud,!0);if(null==Ud.ya||!zC--)break;eh.U=eu;if(nd=BB(a,eh))break;eh.U=a.mb(Ud); -if(nd=BB(a,eh,!0)){eu=a.mb(Ud,!0);0\nLicense: GPL version 3 or later "); -for(b=0;bYB){if(d.load(this.M)){this.G=new dg(this,"1.35.2",jC);this.G.load()&&(a!=hC&&kC(this,d)&&(a=lC),mC(this.G));this.G.set(gC,Ea());nC(this.G);var e=this.A&&!this.J;if(a==hC||vb("Click OK to restore the previous PCx86 machine state.")){if(c=fC(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.Ca("Error: "+ -g),"unable to verify user"==g&&(Va(oC,""),this.B=null)):this.O(f+": "+g),mC(d),d.load()?(c=fC(d),e=!0):c=!1))}e&&dC(this,c?d:null)}else a==lC&&d.clear()}else dC(this);delete this.M;delete this.N}e=Db(this.id);for(f=0;fa[1];a=a[2];if(!this.ba.sg){for(var d=0;df;f++){var g=c,e=null;if(f=a.sa&&(h=null);switch(h){case "AL":a.H.D= +a.H.D&-256|g&255;break;case "AH":a.H.D=a.H.D&-65281|g<<8&255;break;case "AX":a.H.D=a.H.D&-65536|g&65535;break;case "BL":a.H.G=a.H.G&-256|g&255;break;case "BH":a.H.G=a.H.G&-65281|g<<8&255;break;case "BX":a.H.G=a.H.G&-65536|g&65535;break;case "CL":a.H.I=a.H.I&-256|g&255;break;case "CH":a.H.I=a.H.I&-65281|g<<8&255;break;case "CX":a.H.I=a.H.I&-65536|g&65535;break;case "DL":a.H.L=a.H.L&-256|g&255;break;case "DH":a.H.L=a.H.L&-65281|g<<8&255;break;case "DX":a.H.L=a.H.L&-65536|g&65535;break;case "SP":oe(a.H, +z(a.H)&-65536|g&65535);break;case "BP":a.H.M=a.H.M&-65536|g&65535;break;case "SI":a.H.K=a.H.K&-65536|g&65535;break;case "DI":a.H.J=a.H.J&-65536|g&65535;break;case "DS":ue(a.H,g);break;case "ES":ve(a.H,g);break;case "SS":ne(a.H,g);break;case "CS":gg(a.H,g);a.N=Cy(a,A(a.H),a.H.Z.U);break;case "IP":case "EIP":C(a.H,g);a.N=Cy(a,A(a.H),a.H.Z.U);break;case "PC":case "PS":Ee(a.H,g);break;case "C":g?sg(a.H):tg(a.H);break;case "P":g?(e=a.H,e.resultType&=-3,e.P|=4):(e=a.H,e.resultType&=-3,e.P&=-5);break;case "A":g? +Cg(a.H):yg(a.H);break;case "Z":g?Dg(a.H):zg(a.H);break;case "S":g?(e=a.H,e.resultType&=-17,e.P|=128):(e=a.H,e.resultType&=-17,e.P&=-129);break;case "I":g?(e=a.H,e.P|=512):(e=a.H,e.P&=-513);break;case "D":g?(e=a.H,e.P|=1024):(e=a.H,e.P&=-1025);break;case "V":g?ug(a.H):vg(a.H);break;default:var k=!0;if(80286<=a.H.da)switch(k=!1,h){case "MS":Eg(a.H,g);break;case "TR":-1===a.H.ka.load(g)&&(f=!1);break;default:if(k=!0,80386<=a.H.da)switch(k=!1,h){case "EAX":a.H.D=g;break;case "EBX":a.H.G=g;break;case "ECX":a.H.I= +g;break;case "EDX":a.H.L=g;break;case "ESP":oe(a.H,g);break;case "EBP":a.H.M=g;break;case "ESI":a.H.K=g;break;case "EDI":a.H.J=g;break;case "FS":a.H.Ga.load(g);break;case "GS":a.H.Ia.load(g);break;case "CR0":a.H.qa=g;jk.call(a.H,g);break;case "CR2":a.H.rd=g;break;case "CR3":a.H.Vc=g;Ge.call(a.H,g);break;default:k=!0}}if(k){a.O("unknown register: "+e);return}}if(!f){a.O("invalid value: "+b);return}Id(a.H);a.O("updated registers:")}}a.O(tB(a,d));c&&(a.N=Cy(a,A(a.H),a.H.Z.U),kA(a,$y(a.N)))}} +function BB(a,b){b=Aa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(cA(a,c[2])):xy(a,b,!1)}function CB(a,b,c){for(var d=null,e=b.Ha,f=e,g=1;6>=g&&e;g++){if(2e&&(e=1);4096h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.O(m)}h[3]&&(g=h[3],f=null);f=sA(a,b,g,f);b.fh||d||d++;a.O(f);a.N=b;e-=b.ya-k;c++}}} +l.Fg=function(a,b,c){if(b)if(a){0>this.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else a=this.C[this.A+1];b=[];if(a){a=a.toLowerCase().replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(Aa(a.substring(d,f))),d=f+1}}return b}; +function rA(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.ga&&(a.O("ended assemble at "+$y(a.ea)),a.N=a.ea,a.ga=!1),b="";else if(!c){var e=">> ";a.H.qa&1&&(e=a.H.P&131072?"-- ":"## ");a.O(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.za=null;if(Nb(a)&&0p||"z">>20;Ra.Wi=a.H.Vc+Ra.Ok;Ra.ob=tf.aa[(Ra.Wi&tf.C)>>>tf.A];Ra.Ej=Ra.ob.Pd(Ra.Ok);Ra.Pk=(Vg&4190208)>>>10;Ra.Xi=(Ra.Ej&-4096)+Ra.Pk;Ra.pb=tf.aa[(Ra.Xi&tf.C)>>>tf.A];Ra.Fj=Ra.pb.Pd(Ra.Pk);Ra.yl=(Ra.Fj&-4096)+(Vg&4095)}if(sf=Ra){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var ye="%"+q(Vg),ye=ye+(" %%"+oz(sf.Wi,sf.Ej)),ye= +ye+(" %%"+oz(sf.Xi,sf.Fj,!0)),ye=ye+(" %%"+q(sf.yl));a.O(ye)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==pa){if("disk"==cb){ba[0]="l";ba[1]="json";yB(a,ba);break a}for(ib in Xb)if(ba[1]==ib){var Ot=a.Da[ib];Ot?(ba.shift(),ba.shift(),Ot(ba)):a.O("no dump registered for "+cb);break a}cb||(pa=a.lb||"db")}if("dh"==pa){var Pt=cb,Qt=Oa,Wg=jb,Wg=void 0===Wg?"history":Wg,Rt="",St=0,Mc=a.oa,ld=a.X;if(ld.length){var vc=+Pt||a.Ya,Xg=+Qt||10;isNaN(vc)?vc=Xg:Rt="more ";vc>ld.length&& +(a.O("note: only "+ld.length+" available"),vc=ld.length);Mc-=vc;0>Mc&&(null==ld[ld.length-1].U?(vc=Mc+vc,Mc=0):Mc+=ld.length);var Cm=[];"call"==Qt&&(Xg=1E5,Cm=["CALL"]);for(void 0!==Pt&&a.O(vc+" instructions earlier:");0=ld.length&&(Mc=0);a.Ya=vc; +St++;Xg--}}St||(a.O("no "+Rt+"history available"),a.Ya=void 0)}else if("di"==pa){ba.shift();var Dm=ba[0];if(Dm){var Zg=ry(a,Dm);if(void 0===Zg||0>Zg||255"abwd".indexOf(pa[1]))a.O("unrecognized dump command"); +else{a.lb=pa;var ze=jz(a,cb);if(ze&&(null!=ze.U||null!=ze.ya)){var uf=0;if(Oa){if("l"==Oa.charAt(0))Oa=Oa.substr(1)||jb,uf=ry(a,Oa);else{var Zt=jz(a,Oa);if(!Zt)break a;uf=Zt.Ha-ze.Ha+1}if(0>uf||65536>4||1,Gm=4==vf?16:a.D;"a"==pa[1]&&(Em=!0,Fm=25,Gm=160,$g=Fm*Gm);for(;Fm--&&0<$g;){var ah=0,Hm=0,bh,Im="",ej="",cb=$y(ze);for(bh=Gm;0fj?String.fromCharCode(fj):Em?"":".";$g--}Ae&&(Ae+="\n");Ae=Em?Ae+ej:Ae+(cb+" "+Im+za(ej,ej.length+3*bh+1,!0))}Ae&&a.O(Ae.replace(/\s*$/,""));a.Aa=ze}}}}}break;case "e":if("else"==g[0])break;var gj=1,$t=255,au=a.Ja,bu=a.fc;"ew"==g[0]&&(gj=2,$t=65535,au=a.Xc,bu=a.ml);var cu=gj<<1,du=g[1];if(null==du)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var hj=jz(a,du);if(hj)for(var ij= +2;ijOm;){for(var nd=null,AC=256;Ud.Ha>>>0>>0;){eh.Ha=a.mb(Ud,!0);if(null==Ud.ya||!AC--)break;eh.U=fu;if(nd=CB(a,eh))break;eh.U=a.mb(Ud); +if(nd=CB(a,eh,!0)){fu=a.mb(Ud,!0);0\nLicense: GPL version 3 or later "); +for(b=0;bZB){if(d.load(this.M)){this.G=new eg(this,"1.36.0",kC);this.G.load()&&(a!=iC&&lC(this,d)&&(a=mC),nC(this.G));this.G.set(hC,Ea());oC(this.G);var e=this.A&&!this.J;if(a==iC||vb("Click OK to restore the previous PCx86 machine state.")){if(c=gC(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.Ca("Error: "+ +g),"unable to verify user"==g&&(Va(pC,""),this.B=null)):this.O(f+": "+g),nC(d),d.load()?(c=gC(d),e=!0):c=!1))}e&&eC(this,c?d:null)}else a==mC&&d.clear()}else eC(this);delete this.M;delete this.N}e=Db(this.id);for(f=0;fa[1];a=a[2];if(!this.ba.rg){for(var d=0;d>>b.A;d=d+e-1>>>b.A;c.fh=0;for(c.Id=0;f<=d;)e=b.aa[f],c.fh+=e.size,e.size&&(c.Vg.push(Ia(hc,f,0,0,e.type)),c.Id++),f++;a.A=c;a.ea=a.A.Id*a.ma.B/(gc*qc);d=0;a.A.dj=0;a.A.mf||(a.A.mf=[]);e=-1;b=0;for(var g=-1,c=0;c>1),g=f.y+(f.A>>1),h=f.A,f.Nc>1,b.I+=(b.J>>1)-2,nc(b,e),b.X&&(b.D.restore(),b.X=!1)}}else nc(a,"This space intentionally left blank");a.context.drawImage(a.K,0,0,a.K.width,a.K.height,a.Ga,a.Ma,a.xa,a.Aa);a.oa=!1}}var jC="failsafe",eC="validate",gC="timestamp",qC="version",rC="url",sC="browser",oC="user",iC=-1,YB=0,hC=1,lC=2,DC=3; -eb(function(){for(var a=Bb(document,"pcx86-machine"),b=0;bf.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/, -"$1PCx86$2"),a=a.replace(/().*?(<\/xsl:variable>)/,"$1pcx86$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(p){f=null,a=p.message}else a="unrecognized XML: "+(255>>b.A;d=d+e-1>>>b.A;c.eh=0;for(c.Kd=0;f<=d;)e=b.aa[f],c.eh+=e.size,e.size&&(c.Ug.push(Ia(hc,f,0,0,e.type)),c.Kd++),f++;a.A=c;a.ea=a.A.Kd*a.ma.B/(gc*qc);d=0;a.A.cj=0;a.A.lf||(a.A.lf=[]);e=-1;b=0;for(var g=-1,c=0;c>1),g=f.y+(f.A>>1),h=f.A,f.Qc>1,b.I+=(b.J>>1)-2,nc(b,e),b.X&&(b.D.restore(),b.X=!1)}}else nc(a,"This space intentionally left blank");a.context.drawImage(a.K,0,0,a.K.width,a.K.height,a.Ga,a.Ma,a.xa,a.Aa);a.oa=!1}}var kC="failsafe",fC="validate",hC="timestamp",rC="version",sC="url",tC="browser",pC="user",jC=-1,ZB=0,iC=1,mC=2,EC=3; +eb(function(){for(var a=Bb(document,"pcx86-machine"),b=0;bf.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/, +"$1PCx86$2"),a=a.replace(/().*?(<\/xsl:variable>)/,"$1pcx86$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(p){f=null,a=p.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");Na(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/gi;m=p.exec(f);)k=0>k.toLowerCase().indexOf(m[1].toLowerCase())?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+ -"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(d[0],g);JC(a,b,c)}})}else c(a,null)} -function KC(a,b,c,d){function e(a){if(void 0===h){var b=g&&Bb(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=xa(a))}function f(a){e("Error: "+a);k&&(--GC||nb(!0));k=!1}var g,h,k=!0;GC++;ub[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],v=document.createElement("style");v.type="text/css";v.styleSheet?v.styleSheet.cssText=m:v.appendChild(document.createTextNode(m));p.appendChild(v)}c|| -(c="/versions/pcx86/1.35.2/components.xsl");m=function(d,h){h?HC(c,null,null,!1,e,function(d,k){k?(tb(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--GC||nb(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--GC||nb(!0)):f("invalid machine element: "+ -a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?HC(b,a,d,!0,e,m):IC(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(u){f(u.message)}return k}function LC(a,b,c,d){nb(!1);return KC(a,b,c,d)}window.embedPC=LC;window.embedPCx86=LC;window.findMachineComponent=function(a,b){return zb(b,a+".machine")}; +function KC(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");Na(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/gi;m=p.exec(f);)k=0>k.toLowerCase().indexOf(m[1].toLowerCase())?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+ +"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(d[0],g);KC(a,b,c)}})}else c(a,null)} +function LC(a,b,c,d){function e(a){if(void 0===h){var b=g&&Bb(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=xa(a))}function f(a){e("Error: "+a);k&&(--HC||nb(!0));k=!1}var g,h,k=!0;HC++;ub[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],v=document.createElement("style");v.type="text/css";v.styleSheet?v.styleSheet.cssText=m:v.appendChild(document.createTextNode(m));p.appendChild(v)}c|| +(c="/versions/pcx86/1.36.0/components.xsl");m=function(d,h){h?IC(c,null,null,!1,e,function(d,k){k?(tb(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--HC||nb(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--HC||nb(!0)):f("invalid machine element: "+ +a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?IC(b,a,d,!0,e,m):JC(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(u){f(u.message)}return k}function MC(a,b,c,d){nb(!1);return LC(a,b,c,d)}window.embedPC=MC;window.embedPCx86=MC;window.findMachineComponent=function(a,b){return zb(b,a+".machine")}; window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!Gb[a]){for(var c=!0,d=Gb,e=a,f=b.length,g=[],h=[],k="",m=null,p=0;p]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;d=v.exec(h[m]);){var u=d[2];u&&(h[u]||(p=p.replace(d[0],"")))}d=m=ua(m)}else"xsl"==v&&(e=m=ua(m));k[m]=p}a&&(k[m="css"]=a);b[2]&&(k[m="parms"]=b[2]);b[3]&&(k[m="state"]=b[3]);d&&e?(a=JSON.stringify(k),g+=".js",c=c[1]+"var resources="+a+";"+c[2]+c[3],c=c.replace(/\u00A9/g, +function NC(a,b,c,d){if(!c&&b){d.push(b);a=ub[d[0]];b=null;for(var e in a)if(wa(e,"components.xsl")){b=e.replace(".xsl",".css");break}b?Na(b,null,!0,function(a,b){OC(b,d)}):OC(null,d)}else mb("Error ("+c+") requesting "+a)} +function OC(a,b){var c,d,e,f=b[0],g=b[1];c=b[4];c=c.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/);var h=ub[f],k={},m;for(m in h){var p=h[m],v=va(m);if("xml"==v){for(v=/[ \t]*]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;d=v.exec(h[m]);){var u=d[2];u&&(h[u]||(p=p.replace(d[0],"")))}d=m=ua(m)}else"xsl"==v&&(e=m=ua(m));k[m]=p}a&&(k[m="css"]=a);b[2]&&(k[m="parms"]=b[2]);b[3]&&(k[m="state"]=b[3]);d&&e?(a=JSON.stringify(k),g+=".js",c=c[1]+"var resources="+a+";"+c[2]+c[3],c=c.replace(/\u00A9/g, "©"),a=Za(c,"javascript",!1,g),a=a+(', copy it to your web server as "'+g+'", and then add the following to your web page:\n\n')+('
\n')+"...\n",a=a+(' + + + + + + + + + + + + + + +
+ + + + js + , + + +
+
+ + + + + + + + + + + + + , + + + + + + + + + + + + .machine + . + + + + + + + + + + + + + + border:1px solid black;border-radius:10px; + border:; + + + + + + left:; + + + + + + top:; + + + + + + + + width:; + width:auto;max-width:; + + + + + + + + height:; + + + + + + padding:; + + padding-top:; + padding-right:; + padding-bottom:; + padding-left:; + + + + + + float:left; + float:right; + margin:0 auto; + position:; + position:absolute; + + + + + overflow:auto;width:100%; + + background-color:; + background-color:; + + + + + - -component + +
+ + + + + + +
+ +
+
+ +
+ +
+
+ +
+ + +
[XML]
+ +
+ +
+
+
+
+ + + + + text-align:center; + + + +

+
+ + +
+
+ + + + type:'' + + + binding:'' + + + + border:1px solid black; + border:; + + + + + + width:; + + + + + + height:; + + + + + + left:; + + + + + + top:; + + + + + + position:absolute; + float:left; + float:right; + margin:0 auto; + ; + float:left; + + + + + + + + +
+ + + font-size:; + + + + + -label + + + width:; + + + + + + +
+
+
+ + + + + + + + + + + + + + + + + +
+
+ +
+
+ + +
+
+
+ +
+
+ +

+
+ +
+
+
+ + +
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + null + + + + + + ,autoStart: + + + + + + + + + + + + + + + 600 + + + + + keyboard + ,model: + + + + + + + + + + + + + + + false + + + + + serial + ,demo: + + + + + + + + + + + + + + disk + + + + + + + + + + + + + + + 0 + + + + + + + + + + + rom + ,size:,image:'' + + + + + + + + + + + + + + + 0 + + + + + ram + ,size: + + + + + + + + + + + + + + + 600 + + + + + + + 256 + + + + + + + 224 + + + + + + + black + + + + + + 32 + + + + + + 32 + + + + + + + 0 + + + + + + + 0 + + + + + + + + + + + + + + null + + + + + video + ,model:,screenWidth:,screenHeight:,charCols:,charRows:,charWidth:,charHeight:,charSet:'',screenColor:'',smoothing: + + + + + + + + + + + + + + debugger + + + + + + + + + + + + + + panel + + + + + + + + + + + + + [ + {} + , + ] + + + + computer + ,modules: + + + + + type:'',refID:'',start:,end: + + + diff --git a/versions/c1pjs/1.36.0/document.css b/versions/c1pjs/1.36.0/document.css new file mode 100644 index 000000000..7072b406e --- /dev/null +++ b/versions/c1pjs/1.36.0/document.css @@ -0,0 +1,162 @@ +@CHARSET "UTF-8"; + +.page { + margin: 2% 2%; + padding: 2% 2%; + min-width: 30em; + overflow: auto; + font-size: large; + font-family: Helvetica, Arial, sans-serif; + background: #303030; + color: #ccc; + +} +.page-header { +} +.page-header-title { + text-align: center; + +} +.page a { + color: #7fc07f; + text-decoration: none; +} +a.footlink, a.paralink { + text-decoration: none; +} +a.footlink:link, a.paralink:link { + color: blue; +} +a.footlink:visited, a.paralink:visited { + color: blue; +} +.galleryitem { + float: left; + width: 200px; +} +.item { + float: left; + width: 2em; + text-indent: 1em; +} +.list { + margin-left: 3em; + text-indent: 0; + text-align: justify; +} +ul { + list-style: none; +} +div.pnumber { + float: left; + width: 2em; + text-indent: 1em; +} +div.pitem { + margin-left: 10em; +} +p.indent, .justified p { + text-indent: 2em; + text-align: justify; + line-height: 1.5em; +} +p.noindent { + text-indent: 0; + text-align: justify; +} +p.center, .center { + text-align: center; +} +li.para { + margin-top: 1em; + margin-bottom: 1em; +} +.left { + text-align: left; +} +.right { + text-align: right; +} +blockquote.tag { + font-size: small; + font-family: Monaco, Fixed, monospace; + margin-top: 0; + margin-bottom: 0; +} +.blockquote { + padding-left: 1em; + text-indent: 0; + text-align: justify; +} +.italics { + font-style: italic; +} +.medium { + font-size: medium; +} +.small { + font-size: x-small; +} +.smallcaps { + font-variant: small-caps; +} +.strike { + text-decoration: line-through; +} +.summation, .bracelist { + display: inline-block; + position: relative; + vertical-align: middle; + text-align: center; + margin-bottom: 0.5ex; + text-indent: 0; +} +.bracelist-symbol { + font-size: 3em; + vertical-align: -40%; +} +.summation .summation-lower, .summation .summation-upper, .bracelist-item { + display: block; + font-size: 75%; + text-align: center; +} +.summation .summation-upper { + margin-bottom: 0; + margin-left: 0.8ex; + font-style: italic; +} +.summation .summation-lower{ + margin-bottom: -0.6ex; + font-style: italic; +} +.summation .summation-symbol { + font-size: 2em; +} +p sup { + vertical-align: baseline; + position: relative; + bottom: .5em; + font-size: small; +} +p sub { + vertical-align: baseline; + position: relative; + bottom: -.5em; + font-size: small; +} +.footnote { + font-size: medium; + text-indent: 1em; + text-align: justify; + margin-top: .5em; +} +.image-right { + float: right; + margin-left: 1em; + margin-top: 1em; + margin-bottom: 1em; +} +.image-caption { + font-size: small; + text-align: center; +} \ No newline at end of file diff --git a/versions/c1pjs/1.36.0/document.xsl b/versions/c1pjs/1.36.0/document.xsl new file mode 100644 index 000000000..b6570f952 --- /dev/null +++ b/versions/c1pjs/1.36.0/document.xsl @@ -0,0 +1,452 @@ + + + + + +]> + + + + + + + + + +

+
+ + + + + + + +

+
+ +

+
+
+
+ + + + + + +
+
+ + +
+ +   + + +
+
+ +
+
+ + + + + + + + + + + + + + + + +

+
+ + +

+
+ + +

+
+ + +
+
+ + +
+
+ + + + + + + + + + + + + + +
+
+ + +
+
+ + +
  • +
    + + +
    image
    +
    + + +
    +
    + + + + +
    {.}
    +
    + +
    {.}
    +
    +
    +
    + + + + + + + + + + < + > + + + + × + + ÷ + σ + + + + + + + + + + + + { + + + + + + + + + + [] + + + + +
    + +
    +
    + + + , and + + + + + MDY + + + + + + + + + + + + + + + + + + + + January + February + March + April + May + June + July + August + September + October + November + December + + + , + + + + + +

    + +
    +
    + + +
    + {.}
    +
    +
    +
    + + + +

    Timeline

    +
    + +

    +
    +
    + +
    +
    + + + + + + + + + +

    +
    + +
    +
    +
    + + + +

    People

    +
    + +

    +
    +
    + +
    +
    + + +

    + +
    + + +

    +
      + +
    +
    + + + + + + + + + + +
  • + +
  • +
    + + + +

    +
    +

    + +

    +
    +
    + + + + false + + + + + + [Original] + + + + + + + + + + [] + + +
    by
    + + +
    + [Source: + + + + + + + ] +
    +
    +
    + + + +

    Resources

    +
    + +

    +
    +
    + +
    +
    + + +

    + +
    + + + +

    +
    +
      + +
    +
    + + +
  • +
    + + + +

    +
    +
    + +
    +
    + + + +

    +
    + +
    + + + +

    +
    +
      + +
    +
    + + + + + +
      + +
    +
    + + + + +
  • +
    + +
  • +
    + +
  • +
    +
    +
    + + +
  • +
    + + + + + + + + + + +
    + < ="" + + ></> + ></> + /> + +
    +
    + +
    diff --git a/versions/c1pjs/1.36.0/machine.xsl b/versions/c1pjs/1.36.0/machine.xsl new file mode 100644 index 000000000..194ab0419 --- /dev/null +++ b/versions/c1pjs/1.36.0/machine.xsl @@ -0,0 +1,61 @@ + + + + +]> + + + + + + + + + + + + + + + + + js + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    +
    + + + + + , + +
    +
    + +
    + + + + -dbg + + + + + + +
    + +
    diff --git a/versions/c1pjs/1.36.0/manifest.xsl b/versions/c1pjs/1.36.0/manifest.xsl new file mode 100644 index 000000000..de5eb1709 --- /dev/null +++ b/versions/c1pjs/1.36.0/manifest.xsl @@ -0,0 +1,247 @@ + + + + +]> + + + + + + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    Document Manifest

    +
    +
      + + + + None + + + + + + + + + + + + + + + + +
    +
    +
    +

    + +
    +
    +
    + + +
    + + + + + + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    Software Manifest

    +
    +
      + + + + None + + + + + Unknown + + + + + None + + + + + None + + + + + + + + + + + + + UpdatedReleased + + Unknown + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +

    No default machine specified for '' in manifest.xml

    +
    + +
    +
    +
    + + + + -dbg + + + + + + +
    + + + + + Unknown + +
  • +
      + + + + + + + + +
    • + + + + + + + + + + + + + + + + + + + + + + + + + +
        + +
      • + + + + + + +
      • +
        +
      +
      +
    • +
      + + + + + + + + +
    +
  • +
    +
    + +
    diff --git a/versions/c1pjs/1.36.0/outline.xsl b/versions/c1pjs/1.36.0/outline.xsl new file mode 100644 index 000000000..d188901a3 --- /dev/null +++ b/versions/c1pjs/1.36.0/outline.xsl @@ -0,0 +1,47 @@ + + + + +]> + + + + + + + + + + + + + + + + + + <xsl:value-of select="title"/><xsl:text> | </xsl:text><xsl:value-of select="$SITEHOST"/> + + + + + +
    +
    + +
    +
    + + + + -dbg + + + + + + +
    + +
    diff --git a/versions/pc8080/1.36.0/common.css b/versions/pc8080/1.36.0/common.css new file mode 100644 index 000000000..a569abc64 --- /dev/null +++ b/versions/pc8080/1.36.0/common.css @@ -0,0 +1,278 @@ +@CHARSET "UTF-8"; +/** + @author Jeff Parsons (@jeffpar) + @website http://www.pcjs.org/ + @created 2013-05-05 + @modified 2014-02-23 + @license http://www.gnu.org/licenses/gpl.html + */ +body { + margin: 0; + background: #202020; +} +h1, h2 { + margin-top: 0; + color: #cccccc; +} +h1, h2, h3, h4 { + word-wrap: break-word; +} + +h4 a { + color: #cccccc !important; +} +p { + line-height: 1.5em; +} +img { + max-width: 100%; +} +a img { + vertical-align: bottom; +} +pre, code { + color: #000000; + background-color: #cccccc; + font-family: Monaco, Consolas, "Lucida Console", monospace; + font-size: 12px; +} +pre { + margin: 1em 2em; + padding: 1em; + border-radius: 5px; + overflow: auto; +} +code { + padding: 1px; +} +pre a, code a { + color: #006400 !important; +} +.common { + width: 100%; + margin: 0 auto; + color: #cccccc; +} +.common a { + + color: #7fc07f; + text-decoration: none; +} +.common hr { + border-color: #808080; +} +.common a:hover { + text-decoration: underline; +} +.common, .machine { + font-family: "Helvetica Neue", Helvetica, Arial, Geneva, sans-serif; + font-size: 15px; +} +.machine { + + overflow: hidden; +} +.c1pjs { + overflow: visible; +} +.machine-placeholder { + text-align: center; + font-weight: bold; +} +.machine-floating { + position: relative; + z-index: auto; + background-color: transparent; + padding-right: 0; +} +.machine-sticky { + position: fixed !important; + z-index: 1 !important; + background-color: #404040 !important; + padding-right: 16px !important; + top: 0 !important; +} +.common-top { + background: #202020; + font-size: small; +} +.common-top-left { + float: left; + width: 60%; +} +.common-top-left ul { + line-height: 1.5em; + list-style-type: none; + margin: 0; + padding: 1em 1em 1em 9px; + overflow: hidden; +} +.common-top-left ul li { + display: block; + float: left; +} +.common-top-left ul li a { + border-right: 1px solid #6f6f6f; + padding: 2px 6px 2px 6px; +} +.common-top-left ul li:last-child a { + border-right: none; +} +.common-top-right { + float: right; + width: 40%; +} +.common-top-right p { + float: right; + margin: 0; + padding: 1em; +} +.common-middle { + clear: both; + padding: 1px 1em 1px 1em; + background: #404040; +} +.common-sidebar { + float: left; + font-size: small; + width: 140px; + padding-bottom: 20px; + overflow: hidden; + white-space: nowrap; + word-wrap: break-word; +} +.common-list { + list-style-type: none; + margin-top: 0; + margin-bottom: 0; + padding-left: 0; +} +.common-list li { + + padding-bottom: 7px; +} +.common-list-data { + list-style-type: none; + margin-top: 0; + margin-bottom: 0; + padding-left: 0; +} +.common-list-data li { + line-height: 1.5em; +} +.common-list-data-items, .common-list-data-subitems { + font-size: x-small; + list-style-type: none; + margin-top: 0; + margin-bottom: 0; + padding-left: 2em; +} +.common-list-data-items li, .common-list-data-subitems li { + padding-bottom: 0; +} +.common-main { + margin-left: 150px; + +} +.common-main blockquote { + text-align: justify; +} +.common-image-gallery { + margin: 0 auto; + text-align: center; +} +.common-image-gallery:after { + content: ''; + display: block; +} +.common-image-frame { + display: inline-block; + margin: 8px; + text-align: center; +} +.common-image-link { + padding: 5px; + border: 1px solid black; + border-radius: 5px; + background-color: #FAEBD7; +} +.common-image-label { + font-size: x-small; +} +.common-bottom { + clear: both; + padding-top: 1em; +} +.common-bottom:after { + content: ''; + display: block; + clear: both; +} +.common-reference { + float: left; + font-size: x-small; +} +.common-reference a { + text-decoration: none; +} +.common-copyright { + float: right; + font-size: x-small; +} +.common-copyright a { + text-decoration: none; +} +.md-list { +} +.md-list li { + line-height: 1.5em; + margin-bottom: 1em; +} +.md-list li p { + padding-left: 2em; +} +.md-list-compact { +} +.md-list-compact li { + margin-bottom: 0; +} +.md-list-none { + list-style-type: none; + padding-left: 2em; +} +.md-list-none li { + margin-bottom: 0; +} +@media screen and (max-width: 900px) { + + .common-sidebar { + width: 100%; + white-space: normal; + } + .common-list { + padding-left: 0; + } + .common-list-data { + padding-left: 0; + } + .common-sidebar h4, .common-list li, .common-list-data li, .common-list-data-items li { + width: 130px; + float: left; + overflow: hidden; + vertical-align: top; + padding-right: 1em; + margin-top: 0; + } + .common-list-data-subitems { + display: none; + } + .common-main { + clear: both; + margin-left: 0; + padding-left: 0; + padding-right: 0; + } + .md-list-none { + padding-left: 1em; + } +} diff --git a/versions/pc8080/1.36.0/common.xsl b/versions/pc8080/1.36.0/common.xsl new file mode 100644 index 000000000..46a718390 --- /dev/null +++ b/versions/pc8080/1.36.0/common.xsl @@ -0,0 +1,58 @@ + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + +
    +
    + +
    +
    +

    Powered by JavaScript, Vanilla JS, and GitHub

    +
    +
    +
    + + +
    +

    + +
    +
    + +
    diff --git a/versions/pc8080/1.36.0/components.css b/versions/pc8080/1.36.0/components.css new file mode 100644 index 000000000..101b964a4 --- /dev/null +++ b/versions/pc8080/1.36.0/components.css @@ -0,0 +1,262 @@ +@CHARSET "UTF-8"; + + +*:not(input,textarea) { + -webkit-user-select: none; +} +.pcjs-embed { +} +.pcjs-embed:after { + clear:both; +} +.pcjs-machine { +} +.pcjs-name, .pcjs-menu { + clear: both; + font-weight: bold; + padding-bottom: 4px; +} +.pcjs-menu { + float: left; +} +.pcjs-canvas { + width: 100%; + height: auto; +} +.pcjs-container { + color: #000000; + position: relative; +} +.pcjs-label { + font-size: small; + line-height: 20px; + vertical-align: middle; + float: left; + font-family: Monaco, "Lucida Console", monospace; +} +.pcjs-controls textarea { + font-family: Monaco, "Lucida Console", monospace; + font-size: x-small; +} +.pcjs-fieldset { + border: none; + margin: 0; + padding: 0; +} +.pcjs-flag { + font-family: Monaco, "Lucida Console", monospace; + font-size: small; + text-align: center; + line-height: 20px; + vertical-align: middle; +} +.pcjs-progress { + height: 20px; + width: 200px; + margin-top: 8px; + border: 1px solid black; + position: relative; +} +.pcjs-progress-bar { + height: 20px; + width: 0; + background-color: gold; + position: absolute; + top: 0; +} +.pcjs-progress-text { + height: 20px; + width: 200px; + font-size: small; + line-height: 20px; + text-align: center; + position: absolute; + top: 0; + z-index: 1; +} +.pcjs-register { + font-family: Monaco, "Lucida Console", monospace; + font-size: small; + text-align: center; + line-height: 20px; + vertical-align: middle; + border: 1px solid black; +} +.pcjs-switches { + float: left; +} +.pcjs-bitBucket { + float: left; + width: 19px; + height: 38px; +} +.pcjs-bitCell { + float: left; + width: 19px; + height: 19px; + margin-right: -1px; + margin-bottom: -1px; + border: 1px solid black; + text-align: center; + line-height: 19px; +} +.pcjs-bitCellLeft { + border-left: 1px solid black; +} +.pcjs-bitLabel { + font-size: xx-small; + text-align: center; +} +.pcjs-description, .pcjs-status { + font-size: x-small; + line-height: 2.0em; +} +.pcjs-key { + border: 1px solid black; + font-size: x-small; + text-align: center; + position: absolute; + height: 34px; + line-height: 34px; + background-color: #ffffff; +} +.pcjs-panel-group { + color: #ffffff; + background-color: #404040; +} +.pcjs-triplet { + padding: 1px; +} +.pcjs-ledlbl { + text-align: center; + font-size: 40%; + background-color: #000000; +} +.pcjs-ledlbl0 { + text-align: right; + font-size: 50%; + background-color: #8d4076; +} +.pcjs-ledlbl1 { + text-align: right; + font-size: 50%; + background-color: #d83662; +} +.pcjs-ledpad { + text-align: center; + font-size: x-small; + line-height: 32px; + background-color: #000000; + border-bottom-left-radius: 20%; + border-bottom-right-radius: 20%; +} +.pcjs-led { + float: left; + width: 8px; + height: 8px; + margin: 4px; + border: 1px solid black; + text-align: center; + vertical-align: middle; + background-color: #000000; +} +.pcjs-rled { + float: left; + width: 8px; + height: 8px; + margin: 4px; + border: 1px solid black; + border-radius: 50%; + text-align: center; + vertical-align: middle; + background-color: #ff0000; + max-width: 50%; + max-height: 50%; +} +.pcjs-swlbl { + text-align: center; + font-size: 40%; + line-height: 16px; + background-color: #000000; + border-top-left-radius: 20%; + border-top-right-radius: 20%; +} +.pcjs-swpad { + height: 32px; + background-color: #000000; +} +.pcjs-switch { + height: 10px; + width: 28px; + margin-top: 0; + max-width: 90%; + background-color: #00ff00; +} +.pcjs-screen { + clear: both; + height: auto; + position: relative; + line-height: 0; +} +.pcjs-screen textarea { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + border: 0; + padding: 0; + resize: none; + color: white; + font-family: Monaco, "Lucida Console", monospace; + font-size: medium; + background: rgba(0, 0, 0, .5); + opacity: 0; + line-height: 0; +} +.pcjs-reference { + float: left; + font-size: x-small; +} +.pcjs-reference a { + text-decoration: none; +} +.pcjs-copyright { + float: right; + font-size: x-small; +} +.pcjs-copyright a { + text-decoration: none; +} +@media screen and (max-width: 800px) { + .pcjs-textarea { + width: 100% !important; + } + .pcjs-registers { + width: 100% !important; + max-width: none !important; + padding-left: 0 !important; + padding-right: 0 !important; + } + .pdp11-device { + width: 98% !important; + max-width: none !important; + margin-left: 8px !important; + padding-left: 0 !important; + padding-right: 0 !important; + } +} +@media screen and (min-width: 1200px) { + .machine-left { + max-width: 48%; + float: left; + } + .machine-right { + max-width: 48%; + float: left; + margin-left: 30px; + } + .machine-right + * { + clear: both; + } +} diff --git a/versions/pc8080/1.36.0/components.xsl b/versions/pc8080/1.36.0/components.xsl new file mode 100644 index 000000000..7df5697bd --- /dev/null +++ b/versions/pc8080/1.36.0/components.xsl @@ -0,0 +1,1393 @@ + + + +]> + + + + + + + + pc + pcjs + pc8080 + PC8080 + 1.36.0 + www.pcjs.org + #FAEBD7 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + float: + + + + + + + js + + + +
    + + + + + + + + + + js + + + "" + + + + + +
    +
    + + + + + + + + + + + + + + + , + + + + + + + + + + + + + .machine + . + . + + + + + + + + + + + + + + + + + + + + ,comment:'' + + + + + + border:1px solid black;border-radius:15px; + border:; + + + + + + left:; + + + + + + top:; + + + + + + + + width:; + width:;max-width:; + width:auto;max-width:; + + + + + + + + height:; + + + + + + padding:; + + padding-top:; + padding-right:; + padding-bottom:; + padding-left:; + + + + + + float:left; + float:right; + margin:0 auto;clear:both; + position:; + position:relative; + + + + + overflow:auto;width:100%; + + background-color:; + background-color:; + + + + + - -component + +
    + + + + + + +
    + + + + + + + + --object -screen + + +
    +
    + +
    + +
    +
    + + + + +
    + + +
    [XML]
    + +
    + + +
    +
    +
    +
    + + + + + text-align:center; + + + +

    +
    + + +
    +
    + + + + + + +
    +
    + + + + type:'' + + + binding:'' + + + value:'' + + + + border:1px solid black; + border:; + + + + + + width:; + + + + + + height:; + + + + + + left:; + + + + + + top:; + + + + + + padding:; + + padding-top:; + padding-right:; + padding-bottom:; + padding-left:; + + + + + + float:left; + float:right; + margin:0 auto; + clear:both; + position:; + position:relative; + text-align:; + float:left; + + + + + + + + + + + + + + + + + + +
    + + + font-size:; + + + + + -label + + + + width:; + width:; + + + + + + + + text-align:right; + + + + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    +
    + +
    +
    + + +
    +
    +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    + + + + +
    +
    + +
    +
    +
    + + +
    +
    +
    +
    +
    +
    + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + + + + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + + + + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + ; + + + + + + + + + + + + + + + : + + + + + + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + + + + + ; + + + + + + + + + + + + + + + + + + + + + + + + + + + + 8088 + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + 1 + + + + + + + null + + + + + + 0 + + + + + + + -1 + + + + + + + -1 + + + + + + + -1 + + + + + + ,model:'',stepping:'',fpu:,cycles:,multiplier:,autoStart:,addrReset:,csStart:,csInterval:,csStop: + + + + + + + + + + + + + + + 8087 + + + + + + + + + + + + ,model:'',stepping:'' + + + + + + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + true + + + + + + false + + + + + + {} + + + + + + + + + + + + + + + + + chipset + ,model:'',scaleTimers:,sw1:'',sw2:'',sound:,floppies:,monitor:'',rtcDate:'' + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + device + ,type:'',baudReceive:,baudTransmit:,autoMount:'' + + + + + + + + + + + + + + + + + + + + keyboard + ,model:'' + + + + + + + + + + + + + + + 0 + + + + + + + + + + + parallel + ,adapter:,binding:'' + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + + 0 + + + + + + + 0 + + + + + + + false + + + + + serial + ,adapter:,baudReceive:,baudTransmit:,binding:'',tabSize:,charBOL:,upperCase: + + + + + + + + + + + + + + + + + + + + mouse + ,serial:'' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + fdc + ,autoMount:'',sortBy:'' + + + + + + + + + + + + + + + + + + + + + xt + + + + + hdc + ,drives:'',type:'' + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + null + + + + + + + + + + + + + + + + + rom + ,addr:,size:,alias:,file:'',notify:'' + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + null + + + + + + null + + + + + + true + + + + + ram + ,addr:,size:,file:'',load:,exec:,test: + + + + + + + + + + + + + + + + + + + + + null + + + + + + + 256 + + + + + + + 224 + + + + + + + black + + + + + + 0 + + + + + + 0 + + + + + + false + + + + + + 1bpp + + + + + + 0 + + + + + + 0 + + + + + + 1 + + + + + + 0 + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + false + + + + + + 1 + + + + + + 1 + + + + + + + 80 + + + + + + + 25 + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + 0 + + + + + + null + + + + + + 0 + + + + + + 60 + + + + + + 0.5 + + + + + video + ,model:'',mode:,screenWidth:,screenHeight:,screenColor:'',screenRotate:,bufferAddr:,bufferRAM:,bufferFormat:'',bufferCols:,bufferRows:,bufferBits:,bufferLeft:,bufferRotate:,memory:,switches:'',scale:,cellWidth:,cellHeight:,charCols:,charRows:,fontROM:'',fontColor:'',touchScreen:'',autoLock:,aspectRatio:,smoothing:,interruptRate:,refreshRate:,flicker: + + + + + + + + + + + + + + + 16 + + + + + + + + + + + + + + + + + debugger + ,base:,commands:'',messages:'' + + + + + + + + + + + + + + panel + + + + + + + + + + + + + + + + + + + + + true + + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + computer + ,autoPower:,busWidth:,resume:'',state:'' + + + + + + + +
    diff --git a/versions/pc8080/1.36.0/document.css b/versions/pc8080/1.36.0/document.css new file mode 100644 index 000000000..7072b406e --- /dev/null +++ b/versions/pc8080/1.36.0/document.css @@ -0,0 +1,162 @@ +@CHARSET "UTF-8"; + +.page { + margin: 2% 2%; + padding: 2% 2%; + min-width: 30em; + overflow: auto; + font-size: large; + font-family: Helvetica, Arial, sans-serif; + background: #303030; + color: #ccc; + +} +.page-header { +} +.page-header-title { + text-align: center; + +} +.page a { + color: #7fc07f; + text-decoration: none; +} +a.footlink, a.paralink { + text-decoration: none; +} +a.footlink:link, a.paralink:link { + color: blue; +} +a.footlink:visited, a.paralink:visited { + color: blue; +} +.galleryitem { + float: left; + width: 200px; +} +.item { + float: left; + width: 2em; + text-indent: 1em; +} +.list { + margin-left: 3em; + text-indent: 0; + text-align: justify; +} +ul { + list-style: none; +} +div.pnumber { + float: left; + width: 2em; + text-indent: 1em; +} +div.pitem { + margin-left: 10em; +} +p.indent, .justified p { + text-indent: 2em; + text-align: justify; + line-height: 1.5em; +} +p.noindent { + text-indent: 0; + text-align: justify; +} +p.center, .center { + text-align: center; +} +li.para { + margin-top: 1em; + margin-bottom: 1em; +} +.left { + text-align: left; +} +.right { + text-align: right; +} +blockquote.tag { + font-size: small; + font-family: Monaco, Fixed, monospace; + margin-top: 0; + margin-bottom: 0; +} +.blockquote { + padding-left: 1em; + text-indent: 0; + text-align: justify; +} +.italics { + font-style: italic; +} +.medium { + font-size: medium; +} +.small { + font-size: x-small; +} +.smallcaps { + font-variant: small-caps; +} +.strike { + text-decoration: line-through; +} +.summation, .bracelist { + display: inline-block; + position: relative; + vertical-align: middle; + text-align: center; + margin-bottom: 0.5ex; + text-indent: 0; +} +.bracelist-symbol { + font-size: 3em; + vertical-align: -40%; +} +.summation .summation-lower, .summation .summation-upper, .bracelist-item { + display: block; + font-size: 75%; + text-align: center; +} +.summation .summation-upper { + margin-bottom: 0; + margin-left: 0.8ex; + font-style: italic; +} +.summation .summation-lower{ + margin-bottom: -0.6ex; + font-style: italic; +} +.summation .summation-symbol { + font-size: 2em; +} +p sup { + vertical-align: baseline; + position: relative; + bottom: .5em; + font-size: small; +} +p sub { + vertical-align: baseline; + position: relative; + bottom: -.5em; + font-size: small; +} +.footnote { + font-size: medium; + text-indent: 1em; + text-align: justify; + margin-top: .5em; +} +.image-right { + float: right; + margin-left: 1em; + margin-top: 1em; + margin-bottom: 1em; +} +.image-caption { + font-size: small; + text-align: center; +} \ No newline at end of file diff --git a/versions/pc8080/1.36.0/document.xsl b/versions/pc8080/1.36.0/document.xsl new file mode 100644 index 000000000..7c6705b5b --- /dev/null +++ b/versions/pc8080/1.36.0/document.xsl @@ -0,0 +1,452 @@ + + + + + +]> + + + + + + + + + +

    +
    + + + + + + + +

    +
    + +

    +
    +
    +
    + + + + + + +
    +
    + + +
    + +   + + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + +

    +
    + + +

    +
    + + +

    +
    + + +
    +
    + + +
    +
    + + + + + + + + + + + + + + +
    +
    + + +
    +
    + + +
  • +
    + + +
    image
    +
    + + +
    +
    + + + + +
    {.}
    +
    + +
    {.}
    +
    +
    +
    + + + + + + + + + + < + > + + + + × + + ÷ + σ + + + + + + + + + + + + { + + + + + + + + + + [] + + + + +
    + +
    +
    + + + , and + + + + + MDY + + + + + + + + + + + + + + + + + + + + January + February + March + April + May + June + July + August + September + October + November + December + + + , + + + + + +

    + +
    +
    + + +
    + {.}
    +
    +
    +
    + + + +

    Timeline

    +
    + +

    +
    +
    + +
    +
    + + + + + + + + + +

    +
    + +
    +
    +
    + + + +

    People

    +
    + +

    +
    +
    + +
    +
    + + +

    + +
    + + +

    +
      + +
    +
    + + + + + + + + + + +
  • + +
  • +
    + + + +

    +
    +

    + +

    +
    +
    + + + + false + + + + + + [Original] + + + + + + + + + + [] + + +
    by
    + + +
    + [Source: + + + + + + + ] +
    +
    +
    + + + +

    Resources

    +
    + +

    +
    +
    + +
    +
    + + +

    + +
    + + + +

    +
    +
      + +
    +
    + + +
  • +
    + + + +

    +
    +
    + +
    +
    + + + +

    +
    + +
    + + + +

    +
    +
      + +
    +
    + + + + + +
      + +
    +
    + + + + +
  • +
    + +
  • +
    + +
  • +
    +
    +
    + + +
  • +
    + + + + + + + + + + +
    + < ="" + + ></> + ></> + /> + +
    +
    + +
    diff --git a/versions/pc8080/1.36.0/machine.xsl b/versions/pc8080/1.36.0/machine.xsl new file mode 100644 index 000000000..de04bf9bb --- /dev/null +++ b/versions/pc8080/1.36.0/machine.xsl @@ -0,0 +1,61 @@ + + + + +]> + + + + + + + + + + + + + + + + + js + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    +
    + + + + + , + +
    +
    + +
    + + + + -dbg + + + + + + +
    + +
    diff --git a/versions/pc8080/1.36.0/manifest.xsl b/versions/pc8080/1.36.0/manifest.xsl new file mode 100644 index 000000000..f2b5c4050 --- /dev/null +++ b/versions/pc8080/1.36.0/manifest.xsl @@ -0,0 +1,247 @@ + + + + +]> + + + + + + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    Document Manifest

    +
    +
      + + + + None + + + + + + + + + + + + + + + + +
    +
    +
    +

    + +
    +
    +
    + + +
    + + + + + + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    Software Manifest

    +
    +
      + + + + None + + + + + Unknown + + + + + None + + + + + None + + + + + + + + + + + + + UpdatedReleased + + Unknown + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +

    No default machine specified for '' in manifest.xml

    +
    + +
    +
    +
    + + + + -dbg + + + + + + +
    + + + + + Unknown + +
  • +
      + + + + + + + + +
    • + + + + + + + + + + + + + + + + + + + + + + + + + +
        + +
      • + + + + + + +
      • +
        +
      +
      +
    • +
      + + + + + + + + +
    +
  • +
    +
    + +
    diff --git a/versions/pc8080/1.36.0/outline.xsl b/versions/pc8080/1.36.0/outline.xsl new file mode 100644 index 000000000..68ae0386b --- /dev/null +++ b/versions/pc8080/1.36.0/outline.xsl @@ -0,0 +1,47 @@ + + + + +]> + + + + + + + + + + + + + + + + + + <xsl:value-of select="title"/><xsl:text> | </xsl:text><xsl:value-of select="$SITEHOST"/> + + + + + +
    +
    + +
    +
    + + + + -dbg + + + + + + +
    + +
    diff --git a/versions/pc8080/1.36.0/pc8080-dbg.js b/versions/pc8080/1.36.0/pc8080-dbg.js new file mode 100644 index 000000000..472ea2ca6 --- /dev/null +++ b/versions/pc8080/1.36.0/pc8080-dbg.js @@ -0,0 +1,311 @@ +(function(){/* + http://pcjs.org/modules/shared/lib/dumpapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/reportapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/userapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/keys.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/strlib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/weblib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/cpudef.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/messages.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/state.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/embed.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/defines.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/component.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/defines.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/panel.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/bus.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/memory.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/cpu.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/cpustate.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/cpuops.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/chipset.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/rom.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/ram.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/keyboard.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/video.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/serial.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/debugger.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/debugger.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pc8080/lib/computer.js (C) Jeff Parsons 2012-2017 +*/ +var l;function aa(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a;for(var d in b)if(Object.defineProperties){var e=Object.getOwnPropertyDescriptor(b,d);e&&Object.defineProperty(a,d,e)}else a[d]=b[d]} +for(var ca="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},da="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global?global:this,ea=["Math","trunc"],fa=0;faa?-b:b};ja!=ia&&null!=ja&&ca(da,ha,{configurable:!0,writable:!0,value:ja}); +var m={De:0,Ge:1,He:2,Ie:3,Je:4,Ke:5,Le:6,Me:7,Ne:8,Oe:9,Pe:10,Qe:11,Re:12,Se:13,Te:14,Ue:15,Ve:16,We:17,Xe:18,Ye:19,Ze:20,$e:21,af:22,bf:23,cf:24,df:25,ef:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,$a:65,Ub:66,Vb:67,Db:68,E:69,Yb:70,Zb:71,$b:72,ac:73,bc:74,cc:75,Fb:76,gc:77,hc:78,lc:79,mc:80,Q:81,nc:82,pc:83,qc:84,rc:85,tc:86,uc:87, +wc:88,xc:89,ub:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,yc:97,vd:98,yd:99,d:100,e:101,Cd:102,Ed:103,Fd:104,Gd:105,Pd:106,k:107,Qd:108,Sd:109,n:110,Td:111,p:112,q:113,r:114,pe:115,t:116,re:117,se:118,te:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,ff:127},ka={59:186,61:187,173:189,224:91}; +function la(a,b){var c;if(a){b||(b=10);var d,e,f=0=b&&(e=a.match(/(-?[0-9]+)B([0-9]*)/))&& +(a=e[1],d=35-((e[2]||35)&255));e=a;((f=b)&&10!=f?16==f?e.match(/^-?[0-9a-f]+$/i):8==f?e.match(/^-?[0-7]+$/):2==f&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(g=parseInt(a,b))&&(d&&(0>g&&(g+=Math.pow(2,36)),g=0a&&-1a&&(a+=Math.pow(b,c)),a>=Math.pow(b,c)&&(c=Math.ceil(Math.log(a)/Math.log(b))));for(var g=e||-1;0=h?48:55),f=String.fromCharCode(h)+f;a=Math.trunc(a/b)}g--}return(void 0===d?"":d)+f}function n(a,b,c){b?9=b?4:4294967295>=b?8:9);return ma(a,16,b,c?"0x":"")}function na(a){return n(a,2,!0)} +function q(a){return n(a,4,!0)}function oa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0"']/g,function(a){return va[a]})}function wa(a,b){return(a+" ").slice(0,b)} +function xa(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}var va={"&":"&","<":"<",">":">",'"':""","'":"'"},Ca={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",10:"LF",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"}; +function Ea(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[g]);0a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())} +function Ga(a,b){var c;if(Array.prototype.indexOf)return a.indexOf(b,c);c=c||0;0>c&&(c+=a.length);0>c&&(c=0);for(var d=a.length;cb.indexOf("0x")&&0>b.indexOf("0o")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.Pa=g.load;d.Ha=g.exec;if(e=g.bytes)d.la=e;else if(e=g.words)for(d.la=Array(2*e.length),f=c=0;c>8&255;else if(e=g.longs)for(d.la=Array(4*e.length),f=c=0;c>8&255,d.la[f++]=e[c]>>16&255,d.la[f++]=e[c]>>24&255;else(e=g.data)?d.Qf=e:d.la=g;d.la&&(d.la.length?1==d.la.length&&(r(d.la[0]),d=null):(r("Empty resource: "+a),d=null));d.ra=g.symbols}catch(h){r("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;ca?this.Gb=this.id:(this.bb=this.id.substr(0,a),this.Gb=this.id.substr(a+1));this.F={ready:!1,kb:!1,Hb:!1,Rf:!1,ja:!1,Qb:!1,error:!1};this.xb=null;this.F.error=!1;this.ha=c||0;this.K=this.w=this.I=this.R=null;gb.push(this)} +function hb(a,b,c){ib[a]&&b&&(ib[a][b]=c)}function jb(){return Date.now()||+new Date}function Za(a,b,c){b||r((c?c+": ":"")+a)}function r(a){window&&window.alert(a)}function kb(a){var b=!1;window&&(b=window.confirm(a));return b}function lb(a,b){a.value+=b;b=a.value;8192d?c+=a+"\n":c=c.substr(0,d)+(a+ +".")+c.substr(d+a.length);8192>1)+2;10>this.g&&(this.g=10);15>2;this.j=this.u-1;this.L=this.N/this.u|0;this.H=this.L-1;this.A=[];this.B=[];this.D=this.G=!1;this.S=[];this.T=[];a=new z;Pb(a,this.K);this.b=Array(this.L);for(b=0;b>>a.g;0f&&(p=f);if(h&&h.size){if(h.type==d){if(e+f<=h.J)return h.nb+=h.J-e,h.J=e,!0;if(e>=h.J+h.nb){p=h.size-(e-k);p>f&&(p=f);h.nb=e-h.J+p;e=k+a.u;f-=p;g++;continue}}return Tb(Ub,e,f)}e=new z(e,p,a.u,d);Pb(e,a.K,h);a.b[g++]=e;e=k+a.u;f-=p}return 0>=f?(a.status(Math.floor(c/1024)+"Kb "+Vb[d]+" at "+q(b)),!0):Tb(Wb,b,c)} +function Xb(a,b){return a.b[(b&a.C)>>>a.g].mb(b&a.j,b)}function Yb(a,b){var c=b&a.j,d=(b&a.C)>>>a.g;return c!=a.j?a.b[d].Hc(c,b):a.b[d++].Xa(c,b)|a.b[d&a.H].Xa(0,b+1)<<8}function Zb(a,b){var c=b&a.j,d=(b&a.C)>>>a.g;return c!=a.j?a.b[d].Mb(c,b):a.b[d++].mb(c,b)|a.b[d&a.H].mb(0,b+1)<<8}function $b(a,b,c){a.b[(b&a.C)>>>a.g].ob(b&a.j,c&255,b)}function ac(a,b,c){var d=b&a.j,e=(b&a.C)>>>a.g;d!=a.j?a.b[e].Kc(d,c&65535,b):(a.b[e++].Za(d,c&255,b),a.b[e&a.H].Za(0,c>>8&255,b+1))} +function bc(a){for(var b=0,c=[],d=0;d>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,d);a.K&&a.G!=g[1]&&jc(a.K,b,k)}else a.K&&(Hb(a.K,a,b,k,d),a.G&&jc(a.K,b,k));f+=h<<3;b+=h;e-=h}}function Tb(a,b,c){r("Memory block error ("+a+": "+n(b)+","+n(c)+")");return!1}var Ub=1,Wb=2,kc;if(Ib){var lc=new ArrayBuffer(2);(new DataView(lc)).setUint16(0,256,!0);kc=256===(new Uint16Array(lc))[0]}else kc=!1;var vc=kc; +function z(a,b,c,d){this.id=wc+=2;this.b=null;this.J=a;this.nb=b;this.size=c||0;this.type=d||xc;this.w=d==yc;Pb(this);this.Da=this.Dc=!1;if(c)if(Ib)this.R=new ArrayBuffer(c),this.j=new DataView(this.R,0,c),this.g=new Uint8Array(this.R,0,c),this.u=new Uint16Array(this.R,0,c>>1),this.b=new Int32Array(this.R,0,c>>2),zc(this,vc?Ac:Bc);else{this.b=Array(c>>2);for(a=0;a>2),b=0;b>8,c)};l.je=function(a){return this.b[a>>2]>>>((a&3)<<3)&255};l.ne=function(a){var b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:c&255|(this.b[b+1]&255)<<8};l.xe=function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=this.b[c]&~(255<>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<>8);this.Da=!0};l.he=function(a,b){if(this.K&&null!=this.J){var c=this.K;Ic(c,this.J+a,1,c.M)&&c.ea(!0)}return this.mb(a,b)};l.le=function(a,b){if(this.K&&null!=this.J){var c=this.K;Ic(c,this.J+a,2,c.M)&&c.ea(!0)}return this.Mb(a,b)}; +l.ve=function(a,b,c){if(this.K&&null!=this.J){var d=this.K;Ic(d,this.J+a,1,d.B)&&d.ea(!0)}this.w?this.pb(0,b):this.ob(a,b,c)};l.ze=function(a,b,c){if(this.K&&null!=this.J){var d=this.K;Ic(d,this.J+a,2,d.B)&&d.ea(!0)}this.w?this.pb(0,b):this.Sb(a,b,c)};l.ge=function(a){return this.g[a]};l.ie=function(a){return this.g[a]};l.ke=function(a){return this.j.getUint16(a,!0)};l.me=function(a){return a&1?this.g[a]|this.g[a+1]<<8:this.u[a>>1]};l.ue=function(a,b){this.g[a]=b;this.Da=!0}; +l.we=function(a,b){this.g[a]=b;this.Da=!0};l.ye=function(a,b){this.j.setUint16(a,b,!0);this.Da=!0};l.Ae=function(a,b){a&1?(this.g[a]=b,this.g[a+1]=b>>8):this.u[a>>1]=b;this.Da=!0};var xc=0,yc=2,Vb=["NONE","RAM","ROM","VID","H/W"],wc=0,Dc=[],Cc=[z.prototype.je,z.prototype.xe,z.prototype.ne,z.prototype.Be],Gc=[z.prototype.he,z.prototype.ve,z.prototype.le,z.prototype.ze];if(Ib)var Bc=[z.prototype.ge,z.prototype.ue,z.prototype.ke,z.prototype.ye],Ac=[z.prototype.ie,z.prototype.we,z.prototype.me,z.prototype.Ae]; +function Jc(a,b){t.call(this,"CPU",a,1);var c=a.multiplier||1;this.za=a.cycles||b;this.U=c;this.Sa=Math.round(this.za/1E4)/100;this.Z=this.Sa*this.U;this.F.ma=!1;this.F.Pb=!1;this.F.jb=a.autoStart;this.F.Bc=!1;this.F.Va=!1;this.wa=this.oa=0;this.ya=a.csStart;this.na=a.csInterval;this.sa=a.csStop;this.T=[];this.Bb=this.rb.bind(this);Cb(this)}aa(Jc,t);l=Jc.prototype; +l.Fa=function(a,b,c,d){this.R=a;this.I=b;this.K=d;for(b=0;b=a.oa&&(a.oa+=a.na,c=!0);0<=a.sa&&a.sa<=Sc(a)&&(a.na=a.sa=-1,Nc(a),a.ea(),c=!0);c&&a.i(Sc(a)+" cycles: checksum="+n(a.wa))}} +l.da=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.P[b]=c;a=!0;break;case "run":this.P[b]=c;c.onclick=function(){var a;if(a=d.R)if(a=d.R,a.F.ja)a=!0;else{var b=null,c,h=qb(a.id);for(c=0;ca.Y/a.Z?b=1:d=!0;a.U=b;b=a.Sa*a.U;if(a.Z!=b){a.Z=b;b=a.Z.toFixed(2)+"Mhz";var e=a.P.setSpeed;e&&(e.textContent=b);a.i("target speed: "+b)}c&&a.R&&a.R.Ya()}Uc(a,a.X);a.X=0;a.V=jb();a.ba=0;Vc(a);return d}function Xc(a,b){var c=a.T.length;a.T.push([-1,b]);return c}function Yc(a,b,c){0<=b&&ba.T[b][0]&&(c*=a.za*a.U/1E3,a.T[b][0]=c+Zc(a))}function Zc(a,b){var c=a.fa-=a.b;a.b=0;b&&(a.fa=0);return c} +l.rb=function(a){if(Eb(this,!0)){if(!this.F.ma){Tc(this);this.R&&this.R.start(this.V,Sc(this));this.F.ma=!0;this.F.Pb=!0;this.W&&this.W.start();var b=this.P.run;b&&(b.textContent="Halt");this.R&&($c(this.R,!0),a&&this.R.Ya(!0))}this.Ua>=this.za&&Vc(this,!0);this.Ca=0;this.La=jb();this.ba&&(a=this.La-this.ba,a>this.hb&&(this.V+=a,this.V>this.La&&(this.V=this.La)));try{do{for(var c,d=this.F.Va?1:this.Ma,e=this.T.length-1;0<=e;e--){var f=this.T[e];0>f[0]||d>f[0]&&(d=f[0])}c=d;this.Cb(c);c=Zc(this,!0); +this.Ca+=c;this.X+=c;Rc(this,c);a=c;for(var g=this.T.length-1;0<=g;g--){var h=this.T[g];0>h[0]||(h[0]-=a,0>=h[0]&&(h[0]=-1,h[1]()))}this.ta-=c;if(0>=this.ta){this.ta+=this.Ma;++this.ib>=ad&&(this.R&&$c(this.R),this.ib=0);break}}while(this.F.ma)}catch(k){this.ea();Qc(this);this.R&&this.R.stop(jb(),Sc(this));Eb(this,!1);Ab(this,k.stack||k.message);return}c=setTimeout;d=this.Bb;this.ba=jb();e=this.hb;this.Ca&&(e=Math.round(e*this.Ca/this.Ma));e-=this.ba-this.La;if(f=this.ba-this.V)this.Y=Math.round(this.X/ +(10*f))/100,864E5<=f&&(this.ka=0,Tc(this));if(0>e||this.Ye&&(this.V-=e),e=0;this.Ua+=this.Ca;this.ba+=e;c(d,e)}else Qc(this),this.R&&this.R.stop(jb(),Sc(this))};l.Cb=function(){return 0};l.ea=function(a){Db(this,!0);Zc(this);Uc(this,this.X);this.X=0;if(this.F.ma){this.F.ma=!1;this.W&&this.W.stop();var b=this.P.run;b&&(b.textContent="Run")}this.F.complete=a};function Qc(a,b){if(a.R){for(var c=a.R,d=0;d>8&255;a.A=b&255}function yd(a){return a.B<<8|a.C}function zd(a,b){a.B=b>>8&255;a.C=b&255}function D(a){return a.D<<8|a.G} +function Ad(a,b){a.D=b>>8&255;a.G=b&255}function A(a,b){a.j=b&65535}function Bd(a){return a.H&256?1:0}function Cd(a,b){a.H=a.H&255|b}function Dd(a){return Jb[a.L&255]?4:0}function Ed(a){return(a.L^a.O)&16?16:0}function Fd(a){return a.H&255?0:64}function Gd(a){return a.L&128?128:0}function ud(a){return a.N&-214|Gd(a)|Fd(a)|Ed(a)|Dd(a)|Bd(a)}function sd(a,b){a.H=a.L=a.O=0;b&1&&(a.H|=256);b&4||(a.L|=1);b&16&&(a.O|=16);b&64||(a.H|=255);b&128&&(a.L^=192);a.N=a.N&-726|b&512|2} +function Hd(a,b){a.O=a.g^b;return a.L=(a.H=a.g+b)&255}function Id(a,b){a.O=a.g^b;return a.L=(a.H=a.g+b+(a.H&256?1:0))&255}function Jd(a,b){a.H=a.L=a.O=a.g&b;(a.g|b)&8&&(a.O^=16);return a.H}function Kd(a,b){a.O=b^255;b=a.L=b+255&255;a.H=a.H&-256|b;return b}function Ld(a,b){a.O=b;b=a.L=b+1&255;a.H=a.H&-256|b;return b}function Md(a,b){return a.L=a.H=a.O=a.g|b}function Nd(a,b){b^=255;a.O=a.g^b;return a.L=(a.H=a.g+b+1^256)&255} +function Od(a,b){b^=255;a.O=a.g^b;return a.L=(a.H=a.g+b+(a.H&256?0:1)^256)&255}function Pd(a,b){return a.L=a.H=a.O=a.g^b}function E(a,b){a=a.I;return a.b[(b&a.C)>>>a.g].Xa(b&a.j,b)}function Qd(a,b,c){a=a.I;a.b[(b&a.C)>>>a.g].Za(b&a.j,c&255,b)}function F(a){var b=E(a,a.j);A(a,a.j+1);return b}function G(a){var b=Yb(a.I,a.j);A(a,a.j+2);return b}function Rd(a){var b=Yb(a.I,a.M);a.M=a.M+2&65535;return b}function H(a,b){a.M=a.M-2&65535;ac(a.I,a.M,b)} +function Sd(a){if(a.b&&a.S&255&&a.N&512){for(var b=0;8>b&&!(a.S&1<b?255:1<>8;Cd(this,a&256);this.b-=4},Wd,function(){var a;Ad(this,a=D(this)+wd(this));Cd(this,a>>8&256);this.b-=10},function(){this.g=E(this,wd(this));this.b-=7},function(){xd(this,wd(this)-1);this.b-= +5},function(){this.A=Ld(this,this.A);this.b-=5},function(){this.A=Kd(this,this.A);this.b-=5},function(){this.A=F(this);this.b-=7},function(){var a=this.g<<8&256;this.g=(a|this.g)>>1;Cd(this,a);this.b-=4},Wd,function(){zd(this,G(this));this.b-=10},function(){Qd(this,yd(this),this.g);this.b-=7},function(){zd(this,yd(this)+1);this.b-=5},function(){this.B=Ld(this,this.B);this.b-=5},function(){this.B=Kd(this,this.B);this.b-=5},function(){this.B=F(this);this.b-=7},function(){var a=this.g<<1;this.g=a&255| +Bd(this);Cd(this,a&256);this.b-=4},Wd,function(){var a;Ad(this,a=D(this)+yd(this));Cd(this,a>>8&256);this.b-=10},function(){this.g=E(this,yd(this));this.b-=7},function(){zd(this,yd(this)-1);this.b-=5},function(){this.C=Ld(this,this.C);this.b-=5},function(){this.C=Kd(this,this.C);this.b-=5},function(){this.C=F(this);this.b-=7},function(){var a=this.g<<8;this.g=(Bd(this)<<8|this.g)>>1;Cd(this,a&256);this.b-=4},Wd,function(){Ad(this,G(this));this.b-=10},function(){var a=G(this);ac(this.I,a,D(this)); +this.b-=16},function(){Ad(this,D(this)+1);this.b-=5},function(){this.D=Ld(this,this.D);this.b-=5},function(){this.D=Kd(this,this.D);this.b-=5},function(){this.D=F(this);this.b-=7},function(){var a=0,b=Bd(this);if(Ed(this)||9<(this.g&15))a|=6;if(b||154<=this.g)a|=96,b=1;this.g=Hd(this,a);Cd(this,b?256:0);this.b-=4},Wd,function(){var a;Ad(this,a=D(this)+D(this));Cd(this,a>>8&256);this.b-=10},function(){var a;a=G(this);a=Yb(this.I,a);Ad(this,a);this.b-=16},function(){Ad(this,D(this)-1);this.b-=5},function(){this.G= +Ld(this,this.G);this.b-=5},function(){this.G=Kd(this,this.G);this.b-=5},function(){this.G=F(this);this.b-=7},function(){this.g=~this.g&255;this.b-=4},Wd,function(){this.M=G(this)&65535;this.b-=10},function(){Qd(this,G(this),this.g);this.b-=13},function(){this.M=this.M+1&65535;this.b-=5},function(){var a=D(this);Qd(this,a,Ld(this,E(this,a)));this.b-=10},function(){var a=D(this);Qd(this,a,Kd(this,E(this,a)));this.b-=10},function(){Qd(this,D(this),F(this));this.b-=10},function(){this.H|=256;this.b-= +4},Wd,function(){var a;Ad(this,a=D(this)+this.M);Cd(this,a>>8&256);this.b-=10},function(){this.g=E(this,G(this));this.b-=13},function(){this.M=this.M-1&65535;this.b-=5},function(){this.g=Ld(this,this.g);this.b-=5},function(){this.g=Kd(this,this.g);this.b-=5},function(){this.g=F(this);this.b-=7},function(){Cd(this,Bd(this)?0:256);this.b-=4},function(){this.b-=5},function(){this.u=this.A;this.b-=5},function(){this.u=this.B;this.b-=5},function(){this.u=this.C;this.b-=5},function(){this.u=this.D;this.b-= +5},function(){this.u=this.G;this.b-=5},function(){this.u=E(this,D(this));this.b-=7},function(){this.u=this.g;this.b-=5},function(){this.A=this.u;this.b-=5},function(){this.b-=5},function(){this.A=this.B;this.b-=5},function(){this.A=this.C;this.b-=5},function(){this.A=this.D;this.b-=5},function(){this.A=this.G;this.b-=5},function(){this.A=E(this,D(this));this.b-=7},function(){this.A=this.g;this.b-=5},function(){this.B=this.u;this.b-=5},function(){this.B=this.A;this.b-=5},function(){this.b-=5},function(){this.B= +this.C;this.b-=5},function(){this.B=this.D;this.b-=5},function(){this.B=this.G;this.b-=5},function(){this.B=E(this,D(this));this.b-=7},function(){this.B=this.g;this.b-=5},function(){this.C=this.u;this.b-=5},function(){this.C=this.A;this.b-=5},function(){this.C=this.B;this.b-=5},function(){this.b-=5},function(){this.C=this.D;this.b-=5},function(){this.C=this.G;this.b-=5},function(){this.C=E(this,D(this));this.b-=7},function(){this.C=this.g;this.b-=5},function(){this.D=this.u;this.b-=5},function(){this.D= +this.A;this.b-=5},function(){this.D=this.B;this.b-=5},function(){this.D=this.C;this.b-=5},function(){this.b-=5},function(){this.D=this.G;this.b-=5},function(){this.D=E(this,D(this));this.b-=7},function(){this.D=this.g;this.b-=5},function(){this.G=this.u;this.b-=5},function(){this.G=this.A;this.b-=5},function(){this.G=this.B;this.b-=5},function(){this.G=this.C;this.b-=5},function(){this.G=this.D;this.b-=5},function(){this.b-=5},function(){this.G=E(this,D(this));this.b-=7},function(){this.G=this.g; +this.b-=5},function(){Qd(this,D(this),this.u);this.b-=7},function(){Qd(this,D(this),this.A);this.b-=7},function(){Qd(this,D(this),this.B);this.b-=7},function(){Qd(this,D(this),this.C);this.b-=7},function(){Qd(this,D(this),this.D);this.b-=7},function(){Qd(this,D(this),this.G);this.b-=7},function(){var a=this.j-1;if(this.Ka.length)for(var b=0;b>8;this.b-=10},function(){var a=G(this);Gd(this)||A(this,a);this.b-=10},function(){this.N&=-513;this.b-=4},function(){var a=G(this);Gd(this)||(H(this,this.j),A(this,a),this.b-=6);this.b-=11},function(){H(this,ud(this)&255|this.g<<8);this.b-=11},function(){this.g=Md(this,F(this));this.b-=7},function(){H(this,this.j);A(this,48);this.b-=11},function(){Gd(this)&& +(A(this,Rd(this)),this.b-=6);this.b-=5},function(){this.M=D(this)&65535;this.b-=5},function(){var a=G(this);Gd(this)&&A(this,a);this.b-=10},function(){this.N|=512;this.b-=4;Sd(this)},function(){var a=G(this);Gd(this)&&(H(this,this.j),A(this,a),this.b-=6);this.b-=11},Zd,function(){Nd(this,F(this));this.b-=7},function(){H(this,this.j);A(this,56);this.b-=11}]; +function $d(a){t.call(this,"ChipSet",a,32768);var b=a.model;b&&!ae[b]&&Za("Unrecognized ChipSet model: "+b);this.g=ae[b]||{};a.sound&&(this.U=null,window&&(this.U=window.AudioContext||window.webkitAudioContext),this.U&&new this.U);Cb(this)}aa($d,t);l=$d.prototype;l.da=function(){return!1}; +l.Fa=function(a,b,c,d){this.I=b;this.w=c;this.K=d;this.R=a;this.B=Mb(a,"Keyboard");this.C=Mb(a,"SerialPort");this.video=Mb(a,"Video");dc(b,this,this.g.zb);hc(b,this,this.g.Ab);if(d){var e=this;be(d,16384,function(){for(var a="",b=0;b>8-this.T&255;x(this,a,null,b,"SHIFT.RESULT",c,!0);return c};l.Xd=function(a,b,c){x(this,a,b,c,"SHIFT.COUNT",null,!0);this.T=b};l.Zd=function(a,b,c){x(this,a,b,c,"SOUND1",null,!0);this.Y=b};l.Yd=function(a,b,c){x(this,a,b,c,"SHIFT.DATA",null,!0);this.N=b<<8|this.N>>8}; +l.$d=function(a,b,c){x(this,a,b,c,"SOUND2",null,!0);this.Z=b};l.ae=function(a,b,c){x(this,a,b,c,"WATCHDOG",null,!0)};function de(a){var b=0,c=0,d=~a.M;for(a=0;10>a;a++)d&1&&(b=9-a),d>>=1;for(a=0;10>a;a++)d&1&&(c=9-a),d>>=1;return 10*b+c} +l.Nd=function(a,b){var c=this.D,c=c&~J.xa.jc;if((Sc(this.w)&64)<<1&&(c|=J.xa.jc,c!=this.D)){var d,e;d=this.L&1;e=this.L>>1&7;switch(e){case J.Aa.Ia.od:break;case J.Aa.Ia.Lc:this.M=this.M<<1|d;break;case J.Aa.Ia.Rc:d=de(this);this.j[d]=J.Aa.tb;Gb(this,"doNVRCommand(): erase data at addr "+q(d));break;case J.Aa.Ia.Mc:this.b=this.b<<1|d;break;case J.Aa.Ia.sd:d=de(this);e=this.b&J.Aa.tb;this.j[d]=e;Gb(this,"doNVRCommand(): write data "+q(e)+" to addr "+q(d));break;case J.Aa.Ia.md:d=de(this);e=this.j[d]; +null==e&&(e=J.Aa.tb);this.b=e;Gb(this,"doNVRCommand(): read data "+q(e)+" from addr "+q(d));break;case J.Aa.Ia.nd:this.b<<=1;this.S=this.b&J.Aa.tb+1;break;default:Gb(this,"doNVRCommand(): unrecognized command "+na(e))}}c&=~J.xa.kc;this.S&&(c|=J.xa.kc);c&=~J.xa.dc;if(d=this.B){d=this.B;if(e=d.A)e=d.w,e=Sc(d.w)>=d.G+e.za*e.U/1E3*1.2731488;e&&(d.A=!1);d=!d.A}d&&(c|=J.xa.dc);c&=~J.xa.sc;this.C&&this.C.ia&ee&&(c|=J.xa.sc);this.D=c;x(this,a,null,b,"FLAGS",c);return c}; +l.be=function(a,b,c){x(this,a,b,c,"BRIGHTNESS");this.W=b};l.ee=function(a,b,c){x(this,a,b,c,"NVR.LATCH");this.L=b};l.de=function(a,b,c){x(this,a,b,c,"DC012");a=b&3;switch(b>>2&3){case 0:this.u=this.u&-4|a;break;case 1:this.u=this.u&-13|a<<2;this.video&&(b=this.video,a=this.u,Gb(b,"updateScrollOffset("+a+")"),b.sa!==a&&((b.sa=a)?bd(b,!0):b.wa=!0));break;case 2:switch(a){case 0:this.O=~this.O;break;case 2:case 3:this.X=3-a}break;case 3:this.V=a}}; +l.ce=function(a,b,c){x(this,a,b,c,"DC011");b&J.Ja.ld?(b&=J.Ja.oc,this.H!=b&&(this.H=b,this.video&&(a=this.video,b=this.H==J.Ja.oc?50:60,Gb(a,"updateRate("+b+")"),a.hb=b))):(b&=J.Ja.Wb,this.G!=b&&(this.G=b,this.video&&(a=this.G==J.Ja.Wb?132:80,b=this.video,Gb(b,"updateDimensions("+a+","+(80>>0,g],v=Ea(u,k,a.Ac);0>v&&u.splice(-(v+1),0,k)}p&&(h.a=p.replace(/''/g,'"'))}a.C.push({Sf:b,J:c,Rd:d,ra:e,zc:f})}delete this.ra}return!0};he.prototype.ua=function(){return!0}; +function ie(a,b,c,d){if(d)a.aa("Unable to load system ROM (error "+d+": "+b+")");else{hb(a.bb,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.longs||e.data;if(f)a.b=f;else if(g)for(a.b=Array(4*g.length),d=c=0;c>8&255,a.b[d++]=g[c]>>16&255,a.b[d++]=g[c]>>24&255;else a.b=e;a.ra=e.symbols;if(!a.b.length){r("Empty ROM: "+b);return}if(1==a.b.length){r(a.b[0]);return}}catch(h){a.aa("ROM data error: "+h.message);return}else for(b= +c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.b=Array(b.length),e=0;e>>f.g;0>>= +f.g;0=m.$a&&a<=m.ub?d.g&(Re|Se)||(d.g|=Se,Oe(d,20,!0),Te(d)):a>=m.yc&&a<=m.z&&d.g&Se&&(d.g&=~Se,Oe(d,20,!1),Te(d));return!0}),c.onpaste=function(a){a:{if(d.C&&d.C.Qa&&(a.stopPropagation&&a.stopPropagation(),a.preventDefault&&a.preventDefault(),a=a.clipboardData||window.clipboardData)){Ue(d.C,a.getData("Text"));a=!1;break a}a=!0}return a},!0;default:if(this.b.Ta&&void 0!==this.b.Ta[b])return this.P[e]=c,c.onclick= +function(a,b){return function(d){d.preventDefault&&d.preventDefault();d=!0;var e=0;17==b?e=Ve:20==b&&(e=Se);if(e){c.style.fontWeight="normal";if(d=!(a.g&e))c.style.fontWeight="bold";We(a,b,d)}Oe(a,b,d,!e);a.R&&a.R.Ya()}}(this,this.b.Ta[b]),!0}}return!1};l.Fa=function(a,b,c,d){this.R=a;this.w=c;this.K=d;var e=this;this.L=Xc(this.w,function(){Xe(e)});this.W=Mb(a,"ChipSet");this.C=Mb(a,"SerialPort");dc(b,this,this.b.zb);hc(b,this,this.b.Ab)}; +l.va=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};l.ua=function(a){return a?this.save():!0};l.reset=function(){this.j=[];this.g=0;this.b.INIT&&!this.restore(this.b.INIT)&&this.aa("reset error")};l.save=function(){var a=new vd(this);switch(this.b.pa){case K.pa:a.set(0,[this.D,this.B,this.A,this.G,-1])}return a.data()}; +l.restore=function(a){var b;if(a&&(b=a[0])&&b.length)switch(this.b.pa){case Ye.pa:return!0;case K.pa:return this.D=b[0],Te(this,this.D&K.Ba.ec),this.B=b[1],this.A=b[2],this.G=b[3],this.u=b[4],!0}return!1};function Te(a,b){var c;null!=b?a.H=b:b=a.H;for(var d in a.b.cb)if(c="led-"+d,c=a.P[c]){var e=a.b.cb[d],f=!!(b&e);e&e-1&&(f=!(b&~e));c.style.backgroundColor=f?"#"+n(16711680,6):"#000000"}if(c=a.P["led-caps-lock"])c.style.backgroundColor=a.g&Se?"#"+n(65280,6):"#000000"} +function We(a,b,c,d){var e=0;switch(b){case 16:e=d?Ze:$e;break;case 17:e=d?af:Ve;break;case 18:e=d?bf:cf;break;case 91:e=d?df:ef;break;case 20:e=Se,c=!(a.g&e)}e&&(a.g=c?a.g|e:a.g&~e);return c} +function Qe(a,b,c){var d=!0,e=b.keyCode,e=ka[e]||e;c=We(a,e,c,2==b.location);var f;a:if(e=a.b.Tb[e]||e,a.b.Ra[e])f=e;else{for(f in a.b.Ta)if(a.b.Ta[f]===e)break a;f=null}f&&!b.metaKey&&(d=!1,a.g&(ff|gf)&&(13==f?(f=118,d=!0):8==f&&(f=46,d=!0),d&&(a.g=c?a.g|gf:a.g&~gf)),d=Oe(a,f,c),(!(f>=m.$a&&f<=m.ub)||a.g|hf)&&b.preventDefault&&b.preventDefault());return d} +function Pe(a,b,c){var d=!0;if(c){var e=b.keyCode,f=a.b.Ra[e],g;if(g=f){a:{for(var h in a.b.qb)if(a.b.qb[h]==f){f=+h;break a}f=0}g=!f}g&&(d=Oe(a,e,c,!0),b.preventDefault&&b.preventDefault())}return d} +function Oe(a,b,c,d){var e;a:{for(e=0;ee?a.j.push({Ob:b,Lb:Date.now(),wb:d||!1}):(a.j[e].Lb=Date.now(),a.j[e].wb=d||!1),d&&Xe(a);else if(0<=e){if(!a.j[e].wb&&(d=a.j[e].Lb)&&Date.now()-dc||c>e)c=e}else{Oe(a,d,!1);b=0;continue}}b++}0<=c&&Yc(a.w,a.L,c)}l.Od=function(a,b){var c=this.B;0<=this.u&&(this.u"]]= +229,N[m["<"]]=230,N[m.hc]=231,N[m.Ub]=232,N[m.wc]=233,N[m["?"]]=245,N[m.gc]=246,N[m.tc]=248,N[m.Vb]=249,N[m.ub]=250,N),Tb:{},cb:{},Ta:{"caps-lock":20,ctrl:17,esc:27,tab:9,"num-comma":116,"break":117,"line-feed":118,"no-scroll":119,setup:120},Nc:{qa:130,INIT:127},Ba:{qa:130,bd:1,ad:2,$c:4,Zc:8,cd:16,fc:32,ec:63,pd:64,Ee:128,INIT:0},Yc:127};K.cb={l4:K.Ba.bd,l3:K.Ba.ad,l2:K.Ba.$c,l1:K.Ba.Zc,locked:K.Ba.cd,local:K.Ba.fc,online:~K.Ba.fc,"caps-lock":Se};var Ne={SI1978:Ye,VT100:K}; +K.INIT=[[K.Ba.INIT,K.Nc.INIT,!1,0,-1]];K.zb={130:Me.prototype.Od};K.Ab={130:Me.prototype.fe};Va(function(){for(var a=nb(document,"pc8080","keyboard"),b=0;b>3)*a.N,!Sb(a.I,a.ka,a.L,3)))return!1;a.L?(a.Ua=a.j.createImageData(b,c),a.fb=16/a.na|0,qf(a,a.L>>1)):qf(a,(a.O+1)*a.Z);a.D=document.createElement("canvas");a.D.width=b;a.D.height=c;a.ta=a.D.getContext("2d");a.T={};a.X=1<=a.Ca?8:16,f=8>(7>4)*c)}return k}l.va=function(a,b){return b||!a||this.restore(a)?!0:!1};l.ua=function(a){return!a||this.save()};l.save=function(){var a=new vd(this);a.set(0,[]);return a.data()};l.restore=function(){return!0}; +l.Wa=function(){var a=!1;if(this.b){if(this.b.Wa){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.M/this.H;b>c&&(a=Math.round(c/b*100)+"%")}this.Sa?(this.G.style.width=a,this.G.style.width=a,this.G.style.display="block",this.G.style.margin="auto"):(this.b.style.width=a,this.b.style.height="auto");this.b.style.backgroundColor="black";this.b.Wa();a=!0}this.V&&this.V.focus()}return a}; +function of(a,b){!b&&a.b&&(a.Sa?a.G.style.width=a.G.style.height="":a.b.style.width=a.b.style.height="");Gb(a,"notifyFullScreen("+b+")")}function qf(a,b){a.eb=b;a.W=!1;if(void 0===a.A||a.A.length!=a.eb)a.A=Array(a.eb)}function Bf(a,b,c,d,e){d=a.g?(b.height-c-1)*b.width+d:c+d*b.width;e&&a.Y==sf&&(208<=c&&236>c?e=a.X+tf:28<=c&&72>c&&(e=a.X+uf));a=a.U[e];d*=a.length;b.data[d]=a[0];b.data[d+1]=a[1];b.data[d+2]=a[2];b.data[d+3]=a[3]} +function bd(a,b){var c=!0;if(!b){a.oa&&(120==a.oa?a.gb&1?(Td(a.w,2),c=!1):Td(a.w,1):Td(a.w,4));if(c&&a.W&&a.L){for(var d=a.I,e=a.L,f=!0,g=a.ka>>>d.g;0>=1);;){var y=Xb(a.I,u++);if((y&Cf)==Cf){var w=Xb(a.I,u++),d=w&Df,c=(w&Ef)<<8|Xb(a.I,u),c=c+(w&Ff? +Gf:Hf);break}if(p>4)*y.ca,L,za,sa,Aa,ta=y.ga,Ba=y.ca;C?(L=B*w.ga,za=e*w.ca,sa=w.ga,Aa=w.ca):(L=B*w.Ka,za=e*w.La,sa=w.Ka,Aa=w.La);y.ga>w.ga&&(L*=2,sa*=2);y.ca>w.ca&&(v==Af&&(T+=w.ca),Ba=w.ca);C?C.drawImage(y.canvas,ya,T,ta,Ba,L,za,sa,Aa):(L+=0,za+=0,w.j.drawImage(y.canvas, +ya,T,ta,Ba,L,za,sa,Aa))}h++}g++}e++}}a.W=!0;!b&&a.wa&&1==h&&(a.A[k]=-1,h=0);a.wa=!1;(h||b)&&a.ta&&a.j.drawImage(a.D,0,a.sa,a.C,a.N-a.ca,0,0,a.Bb,a.ud)}else{e=a.ka;f=e+a.L;k=h=g=0;b=a.C;p=0;c=a.N;v=d=0;u=a.na;B=(1<>8|(w&255)<<8);h>C&B,Bf(a,a.Ua,h++,k,ya),C+=u;h>p&&(p=h);k=d&&(d=k+1)}e+=2;g++;if(h>=a.C&&(h=0,k++,k>a.N))break}a.W=!0;bMissing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=Ja().indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height= +(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight),c.onresize());var f=+(d.aspect||Qa("aspect"));f&&.3<=f&&3.33>=f&&(Ua("onresize",function(a,b,c){return function(){b.style.height=(a.clientWidth/c|0)+"px"}}(c,e,f)),window.onresize());c.appendChild(e);f=document.createElement("textarea");Pa("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"),f.style.fontSize="16px");c.appendChild(f);var g=e.getContext("2d"),d=new lf(d,e,g,f,c);mb(d,c)}}); +function If(a){t.call(this,"SerialPort",a,8388608);this.T=+a.adapter;switch(this.T){case 0:this.U=0;this.X=2;break;default:r("Unrecognized serial adapter #"+this.T);return}this.g=this.j=null;this.V=a.tabSize;this.S=a.charBOL;this.u=0;this.N=!1;this.D=!0;var b=a.binding;if("console"==b)this.j="";else{var c;a=Jf;b&&(void 0===c&&(c="Panel"),(c=sb(c,this.id))&&(b=c.P[b])&&this.da(null,a,b))}this.A="";this.b=this.Qa=this.H=null;this.exports={connect:this.Fc,receiveData:this.Nb,receiveStatus:this.oe}} +aa(If,t);l=If.prototype;l.da=function(a,b,c,d){var e=this;switch(b){case Jf:return this.P[b]=this.g=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64");if(2==c.length){var d=xa(c[0]);if(d!=this.Gb)return;c=xa(c[1]);if(this.b=rb(c)){var e=this.b.exports;if(e){var f=e.connect;f&&f.call(this.b,this.D);if(this.Qa=e.receiveData){this.D=a;this.H=e.receiveStatus;this.status("Connected "+this.bb+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}}; +l.va=function(a,b){if(!b)if(this.Fc(this.D),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.ua=function(a){return a?this.save():!0};l.reset=function(){Nf(this)};l.save=function(){var a=new vd(this),b=0,c=[];c[b++]=this.G;c[b++]=this.M;c[b++]=this.O;c[b++]=this.ia;c[b++]=this.B;c[b++]=this.C;c[b]=this.L;a.set(0,c);return a.data()};l.restore=function(a){return Nf(this,a[0])}; +function Nf(a,b){var c=0;b||(b=Of);a.G=b[c++];a.M=b[c++];a.O=b[c++];a.ia=b[c++];a.B=b[c++];a.C=b[c++];a.L=b[c];return!0}function Pf(a,b){var c=a.L&b;b&15||(c>>=4);b=Qf[c];c=((a.B&Rf)>>2)+6;a.B&Sf&&c++;c+=((a.B&Tf)>>6)+1>>1;return 1E3/Math.round(b/c)}function Kf(a,b){Gb(a,"receiveByte("+na(b)+"), status="+na(a.ia));return a.N||a.ia&Uf?!1:(a.M=b,a.ia|=Uf,Td(a.w,a.X),!0)} +l.Nb=function(a){null!=a&&(this.A="number"!=typeof a?a:this.A+String.fromCharCode(a));this.A&&(Kf(this,this.A.charCodeAt(0))&&(this.A=this.A.substr(1)),this.A&&this.w&&Yc(this.w,this.Y,Pf(this,Vf)));return!0};l.oe=function(a){this.ia&=~Wf;a&64&&(this.ia|=Wf)};function Ue(a,b){a.ia=a.ia|ee|Xf;b&&a.Qa&&a.Qa.call(a.b,b)}l.Id=function(a,b){var c=this.M;x(this,a,null,b,"DATA",c);this.ia&=~Uf;return c};l.Hd=function(a,b){var c=this.ia;x(this,a,null,b,"STATUS",c);return c}; +l.Wd=function(a,b,c){x(this,a,b,c,"DATA");this.O=b;this.ia&=~(ee|Xf);Gb(this,"transmitByte("+na(b)+")");if(19==b)this.N=!0;else if(17==b)this.N=!1;else if(this.Qa&&this.Qa.call(this.b,b),this.g)if(8==b)this.g.value=this.g.value.slice(0,-1),0":String.fromCharCode(b);c=a.length;9==b?(b=this.V||8,c=b-this.u%b,this.V&&(a=wa("",c))):13==b&&(this.u=c=0,a="\n");this.S&&!this.u&&c&&(a=String.fromCharCode(this.S)+a);this.g.value+=a;this.g.scrollTop= +this.g.scrollHeight;this.u+=c}else if(null!=this.j){if(10==b||1024<=this.j.length)this.i(this.j),this.j="";10!=b&&(this.j+=String.fromCharCode(b))}this.w&&Yc(this.w,this.Z,Pf(this,Yf))};l.Vd=function(a,b,c){x(this,a,b,c,"CONTROL");this.G?(this.H&&(b^this.C)&(Zf|$f)&&(a=0,this.D?(a|=b&Zf?32:0,a|=b&$f?320:0):(a|=b&Zf?16:0,a|=b&$f?1048576:0),this.H.call(this.b,a)),this.C=b,this.C&ag&&(this.G=!1)):(this.B=b,this.G=!0)};l.Ud=function(a,b,c){x(this,a,b,c,"BAUDRATES");this.L=b}; +var Rf=12,Sf=16,Tf=192,$f=2,Zf=32,ag=64,ee=1,Uf=2,Xf=4,Wf=128,Vf=15,Yf=240,Qf=[50,75,110,134.5,150,200,300,600,1200,1800,2E3,2400,3600,4800,9600,19200],Of=[!1,0,0,133,142,39,238],Jf="buffer",Lf={0:If.prototype.Id,1:If.prototype.Hd},Mf={0:If.prototype.Wd,1:If.prototype.Vd,2:If.prototype.Ud};Va(function(){for(var a=nb(document,"pc8080","serial"),b=0;bthis.b&&this.g.length&&(this.b=0);if(0>this.b||a!=this.g[this.b])this.g.splice(0,0,a),this.b=0;this.b--}else this.N?a="end":a=this.g[this.b+1];b=[];if(a){a=a.replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(xa(a.substring(d,f))),d=f+1}}return b}; +function cg(a,b,c){var d=a;b=b||32;if(c)if(32==b)d=a>>>0;else if(32>b)d=a&(1<a||a>=b)d=a%b,0>d&&(d+=b)}else 32>=b?d=a<<32-b>>32-b:(b=Math.pow(2,b-1),a>=b?(d=a%b,(a/b|0)&1&&(d-=b)):a<-b&&(d=a%b,((-a-1)/b|0)&1?d&&(d+=b):d||(d-=b)));a!=d&&(a=d);return a} +function dg(a,b,c){for(c=void 0===c?-1:c;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e,f=a.pop();e=a.pop();switch(d){case "*":e*=f;break;case "/":if(!f)return!1;e=Math.trunc(e/f);break;case "^/":if(!f)return!1;e%=f;break;case "+":e+=f;break;case "-":e-=f;break;case "<<":e<<=f;break;case ">>":e>>=f;break;case ">>>":e>>>=f;break;case "<":e=e":e=e>f?1:0;break;case ">=":e=e>=f?1:0;break;case "==":e=e==f?1:0;break;case "!=":e=e!=f?1:0;break;case "&":e&= +f;break;case "!":case "|":e|=f;break;case "^!":e|=f;break;case "&&":e=e&&f?1:0;break;case "||":e=e||f?1:0;break;case ",,":e=cg(e,18,!0)*Math.pow(2,18)+cg(f,18,!0);break;case "_":case "^_":"^_"==d&&(f=35-(f&255));f&&(e=cg(e,0,!0),e=0=|>>>|>>|>|<=|<<|<|-|\+|\^\/|\/|\*|,,| )/);d=eg(a,b,0,b.length,a.u,c);void 0!==d&&e&&mg(a,null,d)}return d} +function ng(a,b){var c,d=a.U[0],e=a.U[1];c="("==d||"{"==d||"["==d?"\\":"";for(var f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);){var g=lg(a,c[1]);if(void 0===g)return;b=b.replace(d+c[1]+e,null!=g?kg(a,g):"undefined")}if(a.fa.length)for(d=a.fa[0],e=a.fa[1],c="("==d||"{"==d||"["==d?"\\":"",f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);)b=b.replace("["+c[1]+"]","unimplemented");for(;d=b.match(/\$([a-z]+)/i);){e=null;switch(d[1].toLowerCase()){case "ops":e= +a.S-a.ba}if(null==e)break;b=b.replace(d[0],e.toString())}return b}function gg(a,b){for(;b;){switch(b&3){case 1:a=-cg(a);break;case 2:a|=-1;break;case 3:for(var c=35;0<=c&&!(a&Math.pow(2,c));)c--;a=35-c}b>>>=2}return a} +function fg(a,b,c,d,e){e=void 0===e?0:e;var f,g=Array.isArray(d)?d:void 0;if(null!=b){f=a.Jb(b);if(0<=f)f=a.Kb(f);else if(f=b,a.A[f]?f=a.A[f].value:(f=f.substr(0,6),f=a.A[f]&&a.A[f].value),null!=f){var h=a.A[b]&&a.A[b].qe;h&&(g?g.push(h):(g=lg(a,h,d),void 0!==g?f+=g:(d||a.i("undefined "+(c||"value")+": "+b+" ("+h+")"),f=void 0)))}else f=la(b,1c&&(d+=" '"+String.fromCharCode(c)+"'"));a.i((null!=b?b+": ":"")+d);return e}function og(a,b){var c=0;if(a.A){if(b)return mg(a,b,a.A[b]&&a.A[b].value);b=Object.keys(a.A);b.sort();for(var d=0;d=a?8:262143>=a?18:36);b=ma(b,2,a,"",e);break;case 8:(a=0=a?6:16777215>=a?8:12);b=ma(b,8,a,e?"0o":"");break;case 10:(e=0=Math.abs(b)?5:11;b=ma(b,10,e);break;default:b=n(b,0>2:0,!!e)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c} +var ig={"||":5,"&&":6,"!":7,"|":7,"^!":8,"&":9,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,_:19,"^_":19,"{":20,"}":20},hg={",,":1,"||":5,"&&":6,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,"!":15,"|":15,"^!":15,"&":15,_:19,"^_":19,"{":20,"}":20}; +function pg(a){bg.call(this,a);this.style=qg;this.L=rg();this.sa=rg();this.T=rg();this.C=[];this.j=this.M=this.B=[];sg(this);this.X=0;tg(this);this.ka={};ug(this,a.messages);this.na=a.commands;var b=this;window?void 0===window.pc8080&&(window.pc8080=function(a){return Pc(b,a)}):void 0===global.pc8080&&(global.pc8080=function(a){return Pc(b,a)})}aa(pg,bg);l=pg.prototype; +l.Fa=function(a,b,c,d){this.I=b;this.w=c;this.R=a;(a=Lc(a,"messages"))&&ug(this,a);this.oa=vg;be(this,64,function(a){a:{var b=d.I.b,c=a[0],e=a=0,k=b.length;if(c){a=wg(xg(d,c));if(-1===a){d.i("invalid address: "+c);break a}e=a>>>d.I.g;k=1}d.i("blockid physical blockaddr used size type");d.i("-------- --------- ---------- ------ ------ ----");for(var c=-1,p=0;k--;){var u=b[e];u.type==c?p++||d.i("..."):(c=u.type,p=Vb[c],u&&d.i(n(u.id)+" %"+n(e<>>e.g;f!=e.j?e.b[g].Sb(f,b&65535,d):(e.b[g++].ob(f,b&255,d),e.b[g&e.H].ob(0,b>>8&255,d+1));c&&Xg(a,c);Qc(this.w,!0)}};function rg(a){return{J:a,Ea:!1}}function Zg(a){return[a.J,a.Ea]}function $g(a){return{J:a[0],Ea:a[1]}} +function xg(a,b,c){var d;c=(c?a.L:a.sa).J;if(void 0!==b){d=b=ng(a,b)||b;var e;if(d.match(/^[a-z_][a-z0-9_]*$/i))for(d=d.toUpperCase(),c=0;cc&&(c=Ga(dh,a.substr(b,1))));return c};function eh(a,b){var c=0;a=a.Kb(b);if(void 0!==a)switch(b){case fh:case gh:case hh:case ih:case jh:case kh:case lh:case mh:c=2;break;case nh:case oh:case ph:case qh:case rh:case sh:case th:c=4}return c?n(a,c):"??"} +l.Kb=function(a){var b;if(0<=a){var c=this.w;switch(a){case fh:b=c.g;break;case gh:b=c.u;break;case hh:b=c.A;break;case nh:b=wd(c);break;case ih:b=c.B;break;case jh:b=c.C;break;case oh:b=yd(c);break;case kh:b=c.D;break;case lh:b=c.G;break;case ph:b=D(c);break;case mh:b=E(c,D(c));break;case qh:b=c.M;break;case rh:b=c.j;break;case sh:b=ud(c);break;case th:b=ud(c)&255|c.g<<8}}return b}; +function uh(a,b){b=ng(a,b)||b;for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=a.Jb(b,c+1),0<=e&&(b=b.substr(0,c)+eh(a,e)+b.substr(c+1+dh[e].length)),c++;for(c=0;0<=(c=b.indexOf("#",c));)e=b.substr(c+1,2),d=la(e,16),null!=d&&32<=d&&128>d?(d=e+" '"+String.fromCharCode(d)+"'",b=b.replace("#"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("$",c));)e=b.substr(c+1,9),(d=xg(a,e))?(d=e+' "'+ch(a,d)+'"',b=b.replace("$"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("^",c));)e=b.substr(c+1,9),(d=xg(a,e))?(Xg(d),d= +e+' "'+ch(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}l.message=function(a,b){b&&(a+=" at "+bh(rg(this.w.j).J));this.ha&1073741824?this.Z.push(a):this.Y&&a==this.Y||(this.Y=a,this.ha&-2147483648&&(this.ea(),a+=" (cpu halted)"),this.i(a),this.w&&(a=this.w,Zc(a),a.ta=0,Qc(a)))}; +function Hb(a,b,c,d,e,f,g,h){h|=256;null!=f&&(a.ha&h)!=h||a.message(b.Gb+"."+(null!=d?"outPort":"inPort")+"("+q(c)+","+(f?f:"unknown")+(null!=d?","+na(d):"")+")"+(null!=g?": "+na(g):"")+(null!=e?" at "+bh(e):""))} +function tg(a){var b;if(Ud(a)){if(!a.H||!a.H.length){a.H=Array(vh);for(b=0;b>>d.g],!1)}a.M=["br"];if(a.B)for(b=1;b>>d.g],!0);a.B=["bw"];a.ta=0}l.Oa=function(a,b,c){var d=!0;c||Bh(this,a,b,!1,!0);if(a!=this.j){var e=wg(b);if(-1===e)this.i("invalid address: "+bh(b.J)),d=!1;else{var f=this.I;f.b[e>>>f.g].Oa(e&f.j,a==this.B)}}d&&(a.push(b),c?b.Ea=!0:(Ch(this,a,a.length-1,"set"),tg(this)));return d}; +function Bh(a,b,c,d,e){var f=!1;c=wg(c);for(var g=1;g>>d.g],b==a.B));h.Ea||tg(a);break}}return f}function Dh(a,b){for(var c=1;c>24,4);break;case Qh:C=n(y.Eb(C,2),4);break;default:y="imm("+q(w)+")";break a}y.style==Gh&&w&Rh?C="["+C+"]":w&Sh||(C=(y.style==qg?"$":"0x")+C);y=C}else w&Sh?(y=(v&Th)>>8, +w=dh[y],a.style==Gh&&v&Rh&&(y==mh&&(w="HL"),w="["+w+"]"),y=w):w&Uh&&(y=(f>>3&7).toString());if(!y||!y.length){h="INVALID";break}0b[0]?1:a[0]>>0;for(b=0;b>>0,h=f.Rd;if(e>=g&&e>8&255;case "C":d.A=f&255;break;case "D":d.B=f&255;break; +case "DE":d.B=f>>8&255;case "E":d.C=f&255;break;case "H":d.D=f&255;break;case "HL":d.D=f>>8&255;case "L":d.G=f&255;break;case "SP":d.M=f&65535;break;case "PC":A(d,f);a.L=rg(d.j);break;case "PS":sd(d,f);break;case "PSW":sd(d,f&255|d.N&-256);d.g=f>>8;break;case "CF":d.H=f?d.H|256:d.H&255;break;case "PF":f?Dd(d)||(d.L^=1):Dd(d)&&(d.L^=1);break;case "AF":d.O=f?~d.L&16|d.O&-17:d.L&16|d.O&-17;break;case "ZF":d.H=f?d.H&-256:d.H|255;break;case "SF":f?Gd(d)||(d.L^=192):Gd(d)&&(d.L^=192);break;case "IF":d.N= +f?d.N|512:d.N&-513;break;default:a.i("unknown register: "+e);return}Qc(d);a.i("updated registers:")}a.i(Yh(a));c&&(a.L=rg(d.j),zh(a,bh(a.L.J)))}}function ei(a,b){b=xa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.i(uh(a,c[2])):lg(a,b,!1)}function fi(a,b,c){var d="t"!=b;c=fg(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Sa(c,function(){return Eb(a,!0)&&yg(a,e,d,!1)},function(){Qc(a.w);Eb(a,!1)})} +function zh(a,b,c,d){if(b=xg(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=xg(a,c,!0);if(!d||d.Jh[0].indexOf("+"))){var p=h[0]+":";h[2]&&(p+=" "+h[2]);a.i(p)}h[3]&&(g=h[3],f=null);f=Fh(a,b,g,f);a.i(f);a.L=b;e-=b.J-k;c++}}} +l.yb=function(a,b,c){if(b)if(a){0>this.b&&this.g.length&&(this.b=0);if(0>this.b||a!=this.g[this.b])this.g.splice(0,0,a),this.b=0;this.b--}else this.N?a="end":a=this.g[this.b+1];b=[];if(a){a=a.toLowerCase().replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(xa(a.substring(d,f))),d=f+1}}return b}; +function Eh(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.i(">> "+b):(a.N&&(a.i("ended assemble at "+bh(a.T.J)),a.L=a.T,a.N=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.Y=null;if(Bb(a)&&0p||"z"bb.length&&(a.i("note: only "+bb.length+" available"),Da=bb.length);Oa-=Da;0>Oa&&(null==bb[bb.length-1].J?(Da=Oa+Da,Oa=0):Oa+=bb.length);var ue= +[];"call"==Eg&&(mc=1E5,ue=["CALL"]);for(void 0!==Dg&&a.i(Da+" instructions earlier:");0=bb.length&&(Oa=0);a.wa=Da;Gg++;mc--}}Gg||(a.i("no "+Fg+"history available"),a.wa=void 0)}else{var dd=xg(a,ta);if(dd){var ed=0;Ba&&("l"==Ba.charAt(0)&&(Ba=Ba.substr(1)||Ki),ed=fg(a,Ba)>>>0,65536>4||1;Mi--&&0id?String.fromCharCode(id):".";gd--}oc&&(oc+="\n");oc+=ta+" "+we+(pc?"":" "+Jg)}oc&&a.i(oc);a.sa=dd}}}}break;case "e":if("else"==f[0])break;var jd=1,Kg=255,Lg=a.Ga,Mg=a.Xb;"ew"==f[0]&&(jd=2,Kg=65535,Lg=a.Eb,Mg=a.Qc);var Ng=jd<<1,Og=f[1];if(null==Og)a.i("edit memory commands:"), +a.i("\teb [a] [...] edit bytes at address a"),a.i("\tew [a] [...] edit words at address a");else{var kd=xg(a,Og);if(kd)for(var ld=2;ldDe;){for(var wb=null,Si=256;65536>sc.J>>>0;){Qg.J= +a.Eb(sc,2);if(null==sc.J||!Si--)break;for(var Ti=a,nd=Qg,Rg=null,tc=nd.J,Sg=tc,Ee=1;6>=Ee&&tc;Ee++){if(2\nLicense: GPL version 3 or later ");for(b=0;bpi){if(ri(d,this.H)){this.u=new vd(this,"1.36.0",Ai);ri(this.u)&&(Bi(this,d),a=Ci,Di(this.u));this.u.set(xi,Fa());Ei(this.u);var e=this.b&&!this.D;if(a==yi||kb("Click OK to restore the previous PC8080 machine state, or CANCEL to reset the machine.")){if(c=wi(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?ri(d,g):("error"==f&&"no machine state"!= +g?(this.aa("Error: "+g),"unable to verify user"==g&&(Na(Fi,""),this.g=null)):this.i(f+": "+g),Di(d),ri(d)?(c=wi(d),e=!0):c=!1))}e&&ui(this,c?d:null)}else a==Ci&&d.clear()}else ui(this);delete this.H;delete this.L}e=qb(this.id);for(f=0;fa[1];a=a[2];this.V=!0;this.F.ja=!0;var d=this.P.power;d&&(d.textContent="Shutdown");this.w&&(Gi(this,this.w,b,c,a),this.w.jb());this.O&&(Bi(this,b),b.clear());!c&&this.u&&(this.u.clear(),delete this.u);this.j=0}; +function Bi(a,b){if(kb("There may be a problem with your PC8080 machine.\n\nTo help us diagnose it, click OK to send this PC8080 machine state to http://www.pcjs.org.")){var c=a.g||"";b=b.toString();var d={app:"PC8080",ver:"1.36.0"};d.url=a.W;d.user=c;d.type="bug";d.data=b;Ha("http://www.pcjs.org/api/v1/report",d,!0)}} +function gi(a,b,c){var d,e="none";if(a.j)return null;a.j--;var f=new vd(a,"1.36.0"),g=new vd(a,"1.36.0",vi),h=Fa();g.set(xi,h);f.set(xi,h);f.set(Hi,"1.36.0");f.set(Ii,window?window.location.href:null);f.set(Ji,Ja());a.w&&a.w.ua&&(c&&a.w.ea(),d=a.w.ua(b,c),"object"===typeof d&&f.set(a.w.id,d),c&&(a.w.F.ja=!1,!1===d&&(e=null)));for(var h=qb(a.id),k=0;kf.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/, +"$1PC8080$2"),a=a.replace(/().*?(<\/xsl:variable>)/,"$1pc8080$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(u){f=null,a=u.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");Ha(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],p,u=/( [a-z]+=)(['"])(.*?)\2/gi;p=u.exec(f);)k=0>k.toLowerCase().indexOf(p[1].toLowerCase())?k.replace(">",p[0]+">"):k.replace(new RegExp(p[1]+"(['\"])(.*?)\\1"),p[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+ +"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(d[0],g);ej(a,b,c)}})}else c(a,null)} +function fj(a,b,c,d){function e(a){if(void 0===h){var b=g&&nb(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ua(a))}function f(a){e("Error: "+a);k&&(--bj||$a(!0));k=!1}var g,h,k=!0;bj++;ib[a]={};try{if(g=document.getElementById(a)){var p;if("object"==typeof resources&&(p=resources.css)){var u=document.head||document.getElementsByTagName("head")[0],v=document.createElement("style");v.type="text/css";v.styleSheet?v.styleSheet.cssText=p:v.appendChild(document.createTextNode(p));u.appendChild(v)}c|| +(c="/versions/pc8080/1.36.0/components.xsl");p=function(d,h){h?cj(c,null,null,!1,e,function(d,k){k?(hb(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--bj||$a(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--bj||$a(!0)):f("invalid machine element: "+ +a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?cj(b,a,d,!0,e,p):dj(b,null,a,d,!1,e,p)}else f("missing machine element: "+a)}catch(B){f(B.message)}return k}window.embedPC8080=function(a,b,c,d){$a(!1);return fj(a,b,c,d)};window.findMachineComponent=function(a,b){return sb(b,a+".machine")}; +window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!ub[a]){for(var c=!0,d=ub,e=a,f=b.length,g=[],h=[],k="",p=null,u=0;u 1 G (Ground) + * TD 2 <-> 3 RD (Received Data) + * RD 3 <-> 2 TD (Transmitted Data) + * RTS 4 <-> 5 CTS (Clear To Send) + * CTS 5 <-> 4 RTS (Request To Send) + * DSR 6+8 <-> 20 DTR (Data Terminal Ready) + * SG 7 <-> 7 SG (Signal Ground) + * DTR 20 <-> 6+8 DSR (Data Set Ready + Carrier Detect) + * RI 22 <-> 22 RI (Ring Indicator) + * + * TODO: Move these definitions to a more appropriate shared file at some point. + */ +var RS232 = { + RTS: { + PIN: 4, + MASK: 0x00000010 + }, + CTS: { + PIN: 5, + MASK: 0x00000020 + }, + DSR: { + PIN: 6, + MASK: 0x00000040 + }, + CD: { + PIN: 8, + MASK: 0x00000100 + }, + DTR: { + PIN: 20, + MASK: 0x00100000 + }, + RI: { + PIN: 22, + MASK: 0x00400000 + } +}; + +/* + * NODE should be true if we're running under NodeJS (eg, command-line), false if not (eg, web browser) + */ +var NODE = false; + + +/** + * @copyright http://pcjs.org/modules/shared/lib/dumpapi.js (C) Jeff Parsons 2012-2017 + */ + +/* + * Our "DiskDump API", such as it was, used to look like: + * + * http://jsmachines.net/bin/convdisk.php?disk=/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json&format=img + * + * To make it (a bit) more "REST-like", the above request now looks like: + * + * http://www.pcjs.org/api/v1/dump?disk=/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json&format=img + * + * Similarly, our "FileDump API" used to look like: + * + * http://jsmachines.net/bin/convrom.php?rom=/devices/pc/rom/5150/1981-04-24/PCBIOS-REV1.rom&format=json + * + * and that request now looks like: + * + * http://www.pcjs.org/api/v1/dump?file=/devices/pc/rom/5150/1981-04-24/PCBIOS-REV1.rom&format=json + * + * I don't think it makes sense to avoid "query" parameters, because blending the path of a disk image with the + * the rest of the URL would be (a) confusing, and (b) more work to parse. + */ +var DumpAPI = { + ENDPOINT: "/api/v1/dump", + QUERY: { + DIR: "dir", // value is path of a directory (DiskDump only) + DISK: "disk", // value is path of a disk image (DiskDump only) + FILE: "file", // value is path of a ROM image file (FileDump only) + IMG: "img", // alias for DISK + PATH: "path", // value is path of a one or more files (DiskDump only) + FORMAT: "format", // value is one of FORMAT values below + COMMENTS: "comments", // value is either "true" or "false" + DECIMAL: "decimal", // value is either "true" to force all numbers to decimal, "false" or undefined otherwise + MBHD: "mbhd", // value is hard drive size in Mb (formerly "mbsize") (DiskDump only) (DEPRECATED) + SIZE: "size" // value is target disk size in Kb (supersedes "mbhd") (DiskDump only) + }, + FORMAT: { + JSON: "json", // default + JSON_GZ: "gz", // gzip is currently used ONLY for compressed JSON + DATA: "data", // same as "json", but built without JSON.stringify() (DiskDump only) + HEX: "hex", // deprecated + OCTAL: "octal", // displays data as octal words + BYTES: "bytes", // displays data as hex bytes; normally used only when comments are enabled + WORDS: "words", // displays data as hex words; normally used only when comments are enabled + LONGS: "longs", // displays data as dwords + IMG: "img", // returns the raw disk data (ie, using a Buffer object) (DiskDump only) + ROM: "rom" // returns the raw file data (ie, using a Buffer object) (FileDump only) + } +}; + +/* + * Because we use an overloaded API endpoint (ie, one that's shared with the FileDump module), we must + * also provide a list of commands which, when combined with the endpoint, define a unique request. + */ +DumpAPI.asDiskCommands = [DumpAPI.QUERY.DIR, DumpAPI.QUERY.DISK, DumpAPI.QUERY.PATH]; +DumpAPI.asFileCommands = [DumpAPI.QUERY.FILE]; + + + +/** + * @copyright http://pcjs.org/modules/shared/lib/reportapi.js (C) Jeff Parsons 2012-2017 + */ + +var ReportAPI = { + ENDPOINT: "/api/v1/report", + QUERY: { + APP: "app", + VER: "ver", + URL: "url", + USER: "user", + TYPE: "type", + DATA: "data" + }, + TYPE: { + BUG: "bug" + }, + RES: { + OK: "Thank you" + } +}; + + + +/** + * @copyright http://pcjs.org/modules/shared/lib/userapi.js (C) Jeff Parsons 2012-2017 + */ + +/* + * Examples of User API requests: + * + * web.getHost() + UserAPI.ENDPOINT + '?' + UserAPI.QUERY.REQ + '=' + UserAPI.REQ.VERIFY + '&' + UserAPI.QUERY.USER + '=' + sUser; + */ +var UserAPI = { + ENDPOINT: "/api/v1/user", + QUERY: { + REQ: "req", // specifies a request + USER: "user", // specifies a user ID + STATE: "state", // specifies a state ID + DATA: "data" // specifies state data + }, + REQ: { + CREATE: "create", // creates a user ID + VERIFY: "verify", // requests verification of a user ID + STORE: "store", // stores a machine state on the server + LOAD: "load" // loads a machine state from the server + }, + RES: { + CODE: "code", + DATA: "data" + }, + CODE: { + OK: "ok", + FAIL: "error" + }, + FAIL: { + DUPLICATE: "user already exists", + VERIFY: "unable to verify user", + BADSTATE: "invalid state parameter", + NOSTATE: "no machine state", + BADLOAD: "unable to load machine state", + BADSTORE: "unable to save machine state" + } +}; + + + +/** + * @copyright http://pcjs.org/modules/shared/lib/keys.js (C) Jeff Parsons 2012-2017 + */ + +var Keys = { + /* + * Keys and/or key combinations that generate common ASCII codes. + * + * NOTE: If you're looking for a general-purpose ASCII code table, see Str.ASCII in strlib.js; + * if something's missing, that's probably the more appropriate table to add it to. + * + * TODO: The Closure Compiler doesn't inline all references to these values, at least those with + * quoted property names, which is why I've 'unquoted' as many of them as possible. One solution + * would be to add mnemonics for all of them, not just the non-printable ones (eg, SPACE instead + * of ' ', AMP instead of '&', etc.) + */ + ASCII: { + BREAK: 0, CTRL_A: 1, CTRL_B: 2, CTRL_C: 3, CTRL_D: 4, CTRL_E: 5, CTRL_F: 6, CTRL_G: 7, + CTRL_H: 8, CTRL_I: 9, CTRL_J: 10, CTRL_K: 11, CTRL_L: 12, CTRL_M: 13, CTRL_N: 14, CTRL_O: 15, + CTRL_P: 16, CTRL_Q: 17, CTRL_R: 18, CTRL_S: 19, CTRL_T: 20, CTRL_U: 21, CTRL_V: 22, CTRL_W: 23, + CTRL_X: 24, CTRL_Y: 25, CTRL_Z: 26, + ' ': 32, '!': 33, '"': 34, '#': 35, '$': 36, '%': 37, '&': 38, "'": 39, + '(': 40, ')': 41, '*': 42, '+': 43, ',': 44, '-': 45, '.': 46, '/': 47, + '0': 48, '1': 49, '2': 50, '3': 51, '4': 52, '5': 53, '6': 54, '7': 55, + '8': 56, '9': 57, ':': 58, ';': 59, '<': 60, '=': 61, '>': 62, '?': 63, + '@': 64, A: 65, B: 66, C: 67, D: 68, E: 69, F: 70, G: 71, + H: 72, I: 73, J: 74, K: 75, L: 76, M: 77, N: 78, O: 79, + P: 80, Q: 81, R: 82, S: 83, T: 84, U: 85, V: 86, W: 87, + X: 88, Y: 89, Z: 90, '[': 91, '\\':92, ']': 93, '^': 94, '_': 95, + '`': 96, a: 97, b: 98, c: 99, d: 100, e: 101, f: 102, g: 103, + h: 104, i: 105, j: 106, k: 107, l: 108, m: 109, n: 110, o: 111, + p: 112, q: 113, r: 114, s: 115, t: 116, u: 117, v: 118, w: 119, + x: 120, y: 121, z: 122, '{':123, '|':124, '}':125, '~':126, DEL: 127 + }, + /* + * Browser keyCodes we must pay particular attention to. For the most part, these are non-alphanumeric + * or function keys, some which may require special treatment (eg, preventDefault() if returning false on + * the initial keyDown event is insufficient). + * + * keyCodes for most common ASCII keys can simply use the appropriate ASCII code above. + * + * Most of these represent non-ASCII keys (eg, the LEFT arrow key), yet for some reason, browsers defined + * them using ASCII codes (eg, the LEFT arrow key uses the ASCII code for '%' or 37). + */ + KEYCODE: { + /* 0x08 */ BS: 8, // BACKSPACE (ASCII.CTRL_H) + /* 0x09 */ TAB: 9, // TAB (ASCII.CTRL_I) + /* 0x0A */ LF: 10, // LINE FEED (ASCII.CTRL_J) (TODO: Determine if any key actually generates this) + /* 0x0D */ CR: 13, // CARRIAGE RETURN (ASCII.CTRL_M) + /* 0x10 */ SHIFT: 16, + /* 0x11 */ CTRL: 17, + /* 0x12 */ ALT: 18, + /* 0x13 */ PAUSE: 19, // PAUSE/BREAK + /* 0x14 */ CAPS_LOCK: 20, + /* 0x1B */ ESC: 27, + /* 0x20 */ SPACE: 32, + /* 0x21 */ PGUP: 33, + /* 0x22 */ PGDN: 34, + /* 0x23 */ END: 35, + /* 0x24 */ HOME: 36, + /* 0x25 */ LEFT: 37, + /* 0x26 */ UP: 38, + /* 0x27 */ RIGHT: 39, + /* 0x27 */ FF_QUOTE: 39, + /* 0x28 */ DOWN: 40, + /* 0x2C */ FF_COMMA: 44, + /* 0x2C */ PRTSC: 44, + /* 0x2D */ INS: 45, + /* 0x2E */ DEL: 46, + /* 0x2E */ FF_PERIOD: 46, + /* 0x2F */ FF_SLASH: 47, + /* 0x30 */ ZERO: 48, + /* 0x31 */ ONE: 49, + /* 0x32 */ TWO: 50, + /* 0x33 */ THREE: 51, + /* 0x34 */ FOUR: 52, + /* 0x35 */ FIVE: 53, + /* 0x36 */ SIX: 54, + /* 0x37 */ SEVEN: 55, + /* 0x38 */ EIGHT: 56, + /* 0x39 */ NINE: 57, + /* 0x3B */ FF_SEMI: 59, + /* 0x3D */ FF_EQUALS: 61, + /* 0x5B */ CMD: 91, // aka WIN + /* 0x5B */ FF_LBRACK: 91, + /* 0x5C */ FF_BSLASH: 92, + /* 0x5D */ RCMD: 93, // aka MENU + /* 0x5D */ FF_RBRACK: 93, + /* 0x60 */ NUM_0: 96, + /* 0x60 */ NUM_INS: 96, + /* 0x60 */ FF_BQUOTE: 96, + /* 0x61 */ NUM_1: 97, + /* 0x61 */ NUM_END: 97, + /* 0x62 */ NUM_2: 98, + /* 0x62 */ NUM_DOWN: 98, + /* 0x63 */ NUM_3: 99, + /* 0x63 */ NUM_PGDN: 99, + /* 0x64 */ NUM_4: 100, + /* 0x64 */ NUM_LEFT: 100, + /* 0x65 */ NUM_5: 101, + /* 0x65 */ NUM_CENTER: 101, + /* 0x66 */ NUM_6: 102, + /* 0x66 */ NUM_RIGHT: 102, + /* 0x67 */ NUM_7: 103, + /* 0x67 */ NUM_HOME: 103, + /* 0x68 */ NUM_8: 104, + /* 0x68 */ NUM_UP: 104, + /* 0x69 */ NUM_9: 105, + /* 0x69 */ NUM_PGUP: 105, + /* 0x6A */ NUM_MUL: 106, + /* 0x6B */ NUM_ADD: 107, + /* 0x6D */ NUM_SUB: 109, + /* 0x6E */ NUM_DEL: 110, // aka PERIOD + /* 0x6F */ NUM_DIV: 111, + /* 0x70 */ F1: 112, + /* 0x71 */ F2: 113, + /* 0x72 */ F3: 114, + /* 0x73 */ F4: 115, + /* 0x74 */ F5: 116, + /* 0x75 */ F6: 117, + /* 0x76 */ F7: 118, + /* 0x77 */ F8: 119, + /* 0x78 */ F9: 120, + /* 0x79 */ F10: 121, + /* 0x7A */ F11: 122, + /* 0x7B */ F12: 123, + /* 0x90 */ NUM_LOCK: 144, + /* 0x91 */ SCROLL_LOCK: 145, + /* 0xAD */ FF_DASH: 173, + /* 0xBA */ SEMI: 186, // Firefox: 59 (FF_SEMI) + /* 0xBB */ EQUALS: 187, // Firefox: 61 (FF_EQUALS) + /* 0xBC */ COMMA: 188, + /* 0xBD */ DASH: 189, // Firefox: 173 (FF_DASH) + /* 0xBE */ PERIOD: 190, + /* 0xBF */ SLASH: 191, + /* 0xC0 */ BQUOTE: 192, + /* 0xDB */ LBRACK: 219, + /* 0xDC */ BSLASH: 220, + /* 0xDD */ RBRACK: 221, + /* 0xDE */ QUOTE: 222, + /* 0xE0 */ FF_CMD: 224, // Firefox only (used for both CMD and RCMD) + // + // The following biases use what I'll call Decimal Coded Binary or DCB (the opposite of BCD), + // where the thousands digit is used to store the sum of "binary" digits 1 and/or 2 and/or 4. + // + // Technically, that makes it DCO (Decimal Coded Octal), but then again, BCD should have really + // been called HCD (Hexadecimal Coded Decimal), so if "they" can take liberties, so can I. + // + // ONDOWN is a bias we add to browser keyCodes that we want to handle on "down" rather than on "press". + // + ONDOWN: 1000, + // + // ONRIGHT is a bias we add to browser keyCodes that need to check for a "right" location (default is "left") + // + ONRIGHT: 2000, + // + // FAKE is a bias we add to signal these are fake keyCodes corresponding to internal keystroke combinations. + // The actual values are for internal use only and merely need to be unique and used consistently. + // + FAKE: 4000 + }, + /* + * The set of values that a browser may store in the 'location' property of a keyboard event object + * which we also support. + */ + LOCATION: { + LEFT: 1, + RIGHT: 2, + NUMPAD: 3 + } +}; + +/* + * Check the event object's 'location' property for a non-zero value for the following ONRIGHT keys. + */ +Keys.KEYCODE.NUM_CR = Keys.KEYCODE.CR + Keys.KEYCODE.ONRIGHT; + + +/* + * Maps Firefox keyCodes to their more common keyCode counterparts; a number of entries in this table + * are no longer valid (if indeed they ever were), so they've been commented out. It's likely that I + * simply extended this table to resolve additional differences in other browsers (ie, Opera), but without + * browser-specific checks, it's not safe to perform all the mappings shown below. + */ +Keys.FF_KEYCODES = {}; +Keys.FF_KEYCODES[Keys.KEYCODE.FF_SEMI] = Keys.KEYCODE.SEMI; // 59 -> 186 +Keys.FF_KEYCODES[Keys.KEYCODE.FF_EQUALS] = Keys.KEYCODE.EQUALS; // 61 -> 187 +Keys.FF_KEYCODES[Keys.KEYCODE.FF_DASH] = Keys.KEYCODE.DASH; // 173 -> 189 +Keys.FF_KEYCODES[Keys.KEYCODE.FF_CMD] = Keys.KEYCODE.CMD; // 224 -> 91 +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_COMMA] = Keys.KEYCODE.COMMA; // 44 -> 188 +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_PERIOD] = Keys.KEYCODE.PERIOD; // 46 -> 190 +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_SLASH] = Keys.KEYCODE.SLASH; // 47 -> 191 +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_BQUOTE] = Keys.KEYCODE.BQUOTE; // 96 -> 192 +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_LBRACK = Keys.KEYCODE.LBRACK; // 91 -> 219 +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_BSLASH] = Keys.KEYCODE.BSLASH; // 92 -> 220 +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_RBRACK] = Keys.KEYCODE.RBRACK; // 93 -> 221 +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_QUOTE] = Keys.KEYCODE.QUOTE; // 39 -> 222 + +/* + * Maps non-ASCII keyCodes to their ASCII counterparts + */ +Keys.NONASCII_KEYCODES = {}; +Keys.NONASCII_KEYCODES[Keys.KEYCODE.FF_DASH] = Keys.ASCII['-']; // 173 -> 45 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.SEMI] = Keys.ASCII[';']; // 186 -> 59 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.EQUALS] = Keys.ASCII['=']; // 187 -> 61 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.DASH] = Keys.ASCII['-']; // 189 -> 45 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.COMMA] = Keys.ASCII[',']; // 188 -> 44 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.PERIOD] = Keys.ASCII['.']; // 190 -> 46 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.SLASH] = Keys.ASCII['/']; // 191 -> 47 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.BQUOTE] = Keys.ASCII['`']; // 192 -> 96 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.LBRACK] = Keys.ASCII['[']; // 219 -> 91 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.BSLASH] = Keys.ASCII['\\']; // 220 -> 92 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.RBRACK] = Keys.ASCII[']']; // 221 -> 93 +Keys.NONASCII_KEYCODES[Keys.KEYCODE.QUOTE] = Keys.ASCII["'"]; // 222 -> 39 + +/* + * Maps unshifted keyCodes to their shifted counterparts; to be used when a shift-key is down. + * Alphabetic characters are handled in code, since they must also take CAPS_LOCK into consideration. + */ +Keys.SHIFTED_KEYCODES = {}; +Keys.SHIFTED_KEYCODES[Keys.ASCII['1']] = Keys.ASCII['!']; +Keys.SHIFTED_KEYCODES[Keys.ASCII['2']] = Keys.ASCII['@']; +Keys.SHIFTED_KEYCODES[Keys.ASCII['3']] = Keys.ASCII['#']; +Keys.SHIFTED_KEYCODES[Keys.ASCII['4']] = Keys.ASCII['$']; +Keys.SHIFTED_KEYCODES[Keys.ASCII['5']] = Keys.ASCII['%']; +Keys.SHIFTED_KEYCODES[Keys.ASCII['6']] = Keys.ASCII['^']; +Keys.SHIFTED_KEYCODES[Keys.ASCII['7']] = Keys.ASCII['&']; +Keys.SHIFTED_KEYCODES[Keys.ASCII['8']] = Keys.ASCII['*']; +Keys.SHIFTED_KEYCODES[Keys.ASCII['9']] = Keys.ASCII['(']; +Keys.SHIFTED_KEYCODES[Keys.ASCII['0']] = Keys.ASCII[')']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.SEMI] = Keys.ASCII[':']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.EQUALS] = Keys.ASCII['+']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.COMMA] = Keys.ASCII['<']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.DASH] = Keys.ASCII['_']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.PERIOD] = Keys.ASCII['>']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.SLASH] = Keys.ASCII['?']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.BQUOTE] = Keys.ASCII['~']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.LBRACK] = Keys.ASCII['{']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.BSLASH] = Keys.ASCII['|']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.RBRACK] = Keys.ASCII['}']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.QUOTE] = Keys.ASCII['"']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.FF_DASH] = Keys.ASCII['_']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.FF_EQUALS] = Keys.ASCII['+']; +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.FF_SEMI] = Keys.ASCII[':']; + + + +/** + * @copyright http://pcjs.org/modules/shared/lib/strlib.js (C) Jeff Parsons 2012-2017 + */ + +class Str { + /** + * isValidInt(s, base) + * + * The built-in parseInt() function has the annoying feature of returning a partial value (ie, + * up to the point where it encounters an invalid character); eg, parseInt("foo", 16) returns 0xf. + * + * So it's best to use our own Str.parseInt() function, which will in turn use this function to + * validate the entire string. + * + * @param {string} s is the string representation of some number + * @param {number} [base] is the radix to use (default is 10); only 2, 8, 10 and 16 are supported + * @return {boolean} true if valid, false if invalid (or the specified base isn't supported) + */ + static isValidInt(s, base) + { + if (!base || base == 10) return s.match(/^-?[0-9]+$/) !== null; + if (base == 16) return s.match(/^-?[0-9a-f]+$/i) !== null; + if (base == 8) return s.match(/^-?[0-7]+$/) !== null; + if (base == 2) return s.match(/^-?[01]+$/) !== null; + return false; + } + + /** + * parseInt(s, base) + * + * This is a wrapper around the built-in parseInt() function. Our wrapper recognizes certain prefixes + * ('$' or "0x" for hex, '#' or "0o" for octal) and suffixes ('.' for decimal, 'h' for hex, 'y' for + * binary), and then calls isValidInt() to ensure we don't convert strings that contain partial values; + * see isValidInt() for details. + * + * The use of multiple prefix/suffix combinations is undefined (although for the record, we process + * prefixes first). We do NOT support the "0b" prefix to indicate binary UNLESS one or more commas are + * also present (because "0b" is also a valid hex sequence), and we do NOT support a single leading zero + * to indicate octal (because such a number could also be decimal or hex). Any number of commas are + * allowed; we remove them all before calling the built-in parseInt(). + * + * More recently, we've added support for "^D", "^O", and "^B" prefixes to accommodate the base overrides + * that the PDP-10's MACRO-10 assembly language supports (decimal, octal, and binary, respectively). + * If this support turns out to adversely affect other debuggers, then it will have to be "conditionalized". + * Similarly, we've added support for "K", "M", and "G" MACRO-10-style suffixes that add 3, 6, or 9 zeros + * to the value to be parsed, respectively. + * + * @param {string} s is the string representation of some number + * @param {number} [base] is the radix to use (default is 10); can be overridden by prefixes/suffixes + * @return {number|undefined} corresponding value, or undefined if invalid + */ + static parseInt(s, base) + { + var value; + + if (s) { + if (!base) base = 10; + + var ch, chPrefix, chSuffix; + var fCommas = (s.indexOf(',') > 0); + if (fCommas) s = s.replace(/,/g, ''); + + ch = chPrefix = s.charAt(0); + if (chPrefix == '#') { + base = 8; + chPrefix = ''; + } + else if (chPrefix == '$') { + base = 16; + chPrefix = ''; + } + if (ch != chPrefix) { + s = s.substr(1); + } + else { + ch = chPrefix = s.substr(0, 2); + if (chPrefix == '0b' && fCommas || chPrefix == '^B') { + base = 2; + chPrefix = ''; + } + else if (chPrefix == '0o' || chPrefix == '^O') { + base = 8; + chPrefix = ''; + } + else if (chPrefix == '^D') { + base = 10; + chPrefix = ''; + } + else if (chPrefix == '0x') { + base = 16; + chPrefix = ''; + } + if (ch != chPrefix) s = s.substr(2); + } + ch = chSuffix = s.slice(-1); + if (chSuffix == 'Y' || chSuffix == 'y') { + base = 2; + chSuffix = ''; + } + else if (chSuffix == '.') { + base = 10; + chSuffix = ''; + } + else if (chSuffix == 'H' || chSuffix == 'h') { + base = 16; + chSuffix = ''; + } + else if (chSuffix == 'K') { + chSuffix = '000'; + } + else if (chSuffix == 'M') { + chSuffix = '000000'; + } + else if (chSuffix == 'G') { + chSuffix = '000000000'; + } + if (ch != chSuffix) s = s.slice(0, -1) + chSuffix; + /* + * This adds support for the MACRO-10 binary shifting (Bn) suffix, which must be stripped from the + * number before parsing, and then applied to the value after parsing. If n is omitted, 35 is assumed, + * which is a net shift of zero. If n < 35, then a left shift of (35 - n) is required; if n > 35, then + * a right shift of -(35 - n) is required. + */ + var v, shift = 0; + if (base <= 10) { + var match = s.match(/(-?[0-9]+)B([0-9]*)/); + if (match) { + s = match[1]; + shift = 35 - ((match[2] || 35) & 0xff); + } + } + if (Str.isValidInt(s, base) && !isNaN(v = parseInt(s, base))) { + /* + * With the need to support larger (eg, 36-bit) integers, truncating to 32 bits is no longer helpful. + * + * value = v|0; + */ + if (shift) { + /* + * Since binary shifting is a logical operation, and since shifting by division only works properly + * with positive numbers, we must convert a negative value to a positive value, by computing the two's + * complement. + */ + if (v < 0) v += Math.pow(2, 36); + if (shift > 0) { + v *= Math.pow(2, shift); + } else { + v = Math.trunc(v / Math.pow(2, -shift)); + } + } + value = v; + } + } + return value; + } + + /** + * toBase(n, radix, cch, sPrefix, nGrouping) + * + * Displays the given number as an unsigned integer using the specified radix and number of digits. + * + * @param {number|null|undefined} n + * @param {number} radix (ie, the base) + * @param {number} cch (the desired number of digits) + * @param {string} [sPrefix] (default is none) + * @param {number} [nGrouping] + * @return {string} + */ + static toBase(n, radix, cch, sPrefix = "", nGrouping = 0) + { + /* + * An initial "falsey" check for null takes care of both null and undefined; + * we can't rely entirely on isNaN(), because isNaN(null) returns false, oddly enough. + * + * Alternatively, we could mask and shift n regardless of whether it's null/undefined/NaN, + * since JavaScript coerces such operands to zero, but I think there's "value" in seeing those + * values displayed differently. + */ + var s = ""; + if (isNaN(n)) { + n = null; + } else if (n != null) { + /* + * Callers that produced an input by dividing by a power of two rather than shifting (in order + * to access more than 32 bits) may produce a fractional result, which ordinarily we would simply + * ignore, but if the integer portion is zero and the sign is negative, we should probably treat + * this value as a sign-extension. + */ + if (n < 0 && n > -1) n = -1; + /* + * Negative values should be two's complemented according to the number of digits; for example, + * 12 octal digits implies an upper limit 8^12. + */ + if (n < 0) { + n += Math.pow(radix, cch); + } + if (n >= Math.pow(radix, cch)) { + cch = Math.ceil(Math.log(n) / Math.log(radix)); + } + } + var g = nGrouping || -1; + while (cch-- > 0) { + if (!g) { + s = ',' + s; + g = nGrouping; + } + if (n == null) { + s = '?' + s; + } else { + var d = n % radix; + d += (d >= 0 && d <= 9? 0x30 : 0x41 - 10); + s = String.fromCharCode(d) + s; + n = Math.trunc(n / radix); + } + g--; + } + return sPrefix + s; + } + + /** + * toBin(n, cch, nGrouping) + * + * Converts an integer to binary, with the specified number of digits (up to a maximum of 36). + * + * @param {number|null|undefined} n (supports integers up to 36 bits now) + * @param {number} [cch] is the desired number of binary digits (0 or undefined for default of either 8, 18, or 36) + * @param {number} [nGrouping] + * @return {string} the binary representation of n + */ + static toBin(n, cch, nGrouping) + { + if (!cch) { + // cch = Math.ceil(Math.log(Math.abs(n) + 1) / Math.LN2) || 1; + var v = Math.abs(n); + if (v <= 0b11111111) { + cch = 8; + } else if (v <= 0b111111111111111111) { + cch = 18; + } else { + cch = 36; + } + } else if (cch > 36) cch = 36; + return Str.toBase(n, 2, cch, "", nGrouping); + } + + /** + * toBinBytes(n, cb, fPrefix) + * + * Converts an integer to binary, with the specified number of bytes (up to the default of 4). + * + * @param {number|null|undefined} n (interpreted as a 32-bit value) + * @param {number} [cb] is the desired number of binary bytes (4 is both the default and the maximum) + * @param {boolean} [fPrefix] + * @return {string} the binary representation of n + */ + static toBinBytes(n, cb, fPrefix) + { + var s = ""; + if (!cb || cb > 4) cb = 4; + for (var i = 0; i < cb; i++) { + if (s) s = ',' + s; + s = Str.toBin(n & 0xff, 8) + s; + n >>= 8; + } + return (fPrefix? "0b" : "") + s; + } + + /** + * toOct(n, cch, fPrefix) + * + * Converts an integer to octal, with the specified number of digits (default of 6; max of 12) + * + * You might be tempted to use the built-in n.toString(8) instead, but it doesn't zero-pad and it + * doesn't properly convert negative values. Moreover, if n is undefined, n.toString() will throw + * an exception, whereas this function will return '?' characters. + * + * @param {number|null|undefined} n (supports integers up to 36 bits now) + * @param {number} [cch] is the desired number of octal digits (0 or undefined for default of either 6, 8, or 12) + * @param {boolean} [fPrefix] + * @return {string} the octal representation of n + */ + static toOct(n, cch, fPrefix) + { + if (!cch) { + // cch = Math.ceil(Math.log(Math.abs(n) + 1) / Math.log(8)) || 1; + var v = Math.abs(n); + if (v <= 0o777777) { + cch = 6; + } else if (v <= 0o77777777) { + cch = 8; + } else { + cch = 12; + } + } else if (cch > 12) cch = 12; + return Str.toBase(n, 8, cch, fPrefix? "0o" : ""); + } + + /** + * toDec(n, cch) + * + * Converts an integer to decimal, with the specified number of digits (default of 5; max of 11) + * + * You might be tempted to use the built-in n.toString(10) instead, but it doesn't zero-pad and it + * doesn't properly convert negative values. Moreover, if n is undefined, n.toString() will throw + * an exception, whereas this function will return '?' characters. + * + * @param {number|null|undefined} n (supports integers up to 36 bits now) + * @param {number} [cch] is the desired number of decimal digits (0 or undefined for default of either 5 or 11) + * @return {string} the decimal representation of n + */ + static toDec(n, cch) + { + if (!cch) { + // cch = Math.ceil(Math.log(Math.abs(n) + 1) / Math.LN10) || 1; + var v = Math.abs(n); + if (v <= 99999) { + cch = 5; + } else { + cch = 11; + } + } else if (cch > 11) cch = 11; + return Str.toBase(n, 10, cch); + } + + /** + * toHex(n, cch, fPrefix) + * + * Converts an integer to hex, with the specified number of digits (default of 4 or 8, max of 9). + * + * You might be tempted to use the built-in n.toString(16) instead, but it doesn't zero-pad and it + * doesn't properly convert negative values; for example, if n is -2147483647, then n.toString(16) + * will return "-7fffffff" instead of "80000001". Moreover, if n is undefined, n.toString() will + * throw an exception, whereas this function will return '?' characters. + * + * NOTE: The following work-around (adapted from code found on StackOverflow) would be another solution, + * taking care of negative values, zero-padding, and upper-casing, but not null/undefined/NaN values: + * + * s = (n < 0? n + 0x100000000 : n).toString(16); + * s = "00000000".substr(0, 8 - s.length) + s; + * s = s.substr(0, cch).toUpperCase(); + * + * @param {number|null|undefined} n (supports integers up to 36 bits now) + * @param {number} [cch] is the desired number of hex digits (0 or undefined for default of either 4, 8, or 9) + * @param {boolean} [fPrefix] + * @return {string} the hex representation of n + */ + static toHex(n, cch, fPrefix) + { + if (!cch) { + // cch = Math.ceil(Math.log(Math.abs(n) + 1) / Math.log(16)) || 1; + var v = Math.abs(n); + if (v <= 0xffff) { + cch = 4; + } else if (v <= 0xffffffff) { + cch = 8; + } else { + cch = 9; + } + } else if (cch > 9) cch = 9; + return Str.toBase(n, 16, cch, fPrefix? "0x" : ""); + } + + /** + * toHexByte(b) + * + * Alias for Str.toHex(b, 2, true) + * + * @param {number|null|undefined} b is a byte value + * @return {string} the hex representation of b + */ + static toHexByte(b) + { + return Str.toHex(b, 2, true); + } + + /** + * toHexWord(w) + * + * Alias for Str.toHex(w, 4, true) + * + * @param {number|null|undefined} w is a word (16-bit) value + * @return {string} the hex representation of w + */ + static toHexWord(w) + { + return Str.toHex(w, 4, true); + } + + /** + * toHexLong(l) + * + * Alias for Str.toHex(l, 8, true) + * + * @param {number|null|undefined} l is a dword (32-bit) value + * @return {string} the hex representation of w + */ + static toHexLong(l) + { + return Str.toHex(l, 8, true); + } + + /** + * getBaseName(sFileName, fStripExt) + * + * This is a poor-man's version of Node's path.basename(), which Node-only components should use instead. + * + * Note that if fStripExt is true, this strips ANY extension, whereas path.basename() strips the extension only + * if it matches the second parameter (eg, path.basename("/foo/bar/baz/asdf/quux.html", ".html") returns "quux"). + * + * @param {string} sFileName + * @param {boolean} [fStripExt] + * @return {string} + */ + static getBaseName(sFileName, fStripExt) + { + var sBaseName = sFileName; + + var i = sFileName.lastIndexOf('/'); + if (i >= 0) sBaseName = sFileName.substr(i + 1); + + /* + * This next bit is a kludge to clean up names that are part of a URL that includes unsightly query parameters. + */ + i = sBaseName.indexOf('&'); + if (i > 0) sBaseName = sBaseName.substr(0, i); + + if (fStripExt) { + i = sBaseName.lastIndexOf("."); + if (i > 0) { + sBaseName = sBaseName.substring(0, i); + } + } + return sBaseName; + } + + /** + * getExtension(sFileName) + * + * This is a poor-man's version of Node's path.extname(), which Node-only components should use instead. + * + * Note that we EXCLUDE the period from the returned extension, whereas path.extname() includes it. + * + * @param {string} sFileName + * @return {string} the filename's extension (in lower-case and EXCLUDING the "."), or an empty string + */ + static getExtension(sFileName) + { + var sExtension = ""; + var i = sFileName.lastIndexOf("."); + if (i >= 0) { + sExtension = sFileName.substr(i + 1).toLowerCase(); + } + return sExtension; + } + + /** + * endsWith(s, sSuffix) + * + * @param {string} s + * @param {string} sSuffix + * @return {boolean} true if s ends with sSuffix, false if not + */ + static endsWith(s, sSuffix) + { + return s.indexOf(sSuffix, s.length - sSuffix.length) !== -1; + } + + /** + * escapeHTML(sHTML) + * + * @param {string} sHTML + * @return {string} with HTML entities "escaped", similar to PHP's htmlspecialchars() + */ + static escapeHTML(sHTML) + { + return sHTML.replace(/[&<>"']/g, function(m) + { + return Str.aHTMLEscapeMap[m]; + }); + } + + /** + * replace(sSearch, sReplace, s) + * + * The JavaScript replace() function ALWAYS interprets "$" specially in replacement strings, even when + * the search string is NOT a RegExp; specifically: + * + * $$ Inserts a "$" + * $& Inserts the matched substring + * $` Inserts the portion of the string that precedes the matched substring + * $' Inserts the portion of the string that follows the matched substring + * $n Where n is a positive integer less than 100, inserts the nth parenthesized sub-match string, + * provided the first argument was a RegExp object + * + * So, if a replacement string containing dollar signs passes through a series of replace() calls, untold + * problems could result. Hence, this function, which simply uses the replacement string as-is. + * + * Similar to the JavaScript replace() method (when sSearch is a string), this replaces only ONE occurrence + * (ie, the FIRST occurrence); it might be nice to add options to replace the LAST occurrence and/or ALL + * occurrences, but we'll revisit that later. + * + * @param {string} sSearch + * @param {string} sReplace + * @param {string} s + * @return {string} + */ + static replace(sSearch, sReplace, s) + { + var i = s.indexOf(sSearch); + if (i >= 0) { + s = s.substr(0, i) + sReplace + s.substr(i + sSearch.length); + } + return s; + } + + /** + * replaceAll(sSearch, sReplace, s) + * + * @param {string} sSearch + * @param {string} sReplace + * @param {string} s + * @return {string} + */ + static replaceAll(sSearch, sReplace, s) + { + var a = {}; + a[sSearch] = sReplace; + return Str.replaceArray(a, s); + } + + /** + * replaceArray(a, s) + * + * @param {Object} a + * @param {string} s + * @return {string} + */ + static replaceArray(a, s) + { + var sMatch = ""; + for (var k in a) { + /* + * As noted in: + * + * http://www.regexguru.com/2008/04/escape-characters-only-when-necessary/ + * + * inside character classes, only backslash, caret, hyphen and the closing bracket need to be + * escaped. And in fact, if you ensure that the closing bracket is first, the caret is not first, + * and the hyphen is last, you can avoid escaping those as well. + */ + k = k.replace(/([\\[\]*{}().+?])/g, "\\$1"); + sMatch += (sMatch? '|' : '') + k; + } + return s.replace(new RegExp('(' + sMatch + ')', "g"), function(m) + { + return a[m]; + }); + } + + /** + * pad(s, cch, fPadLeft) + * + * NOTE: the maximum amount of padding currently supported is 40 spaces. + * + * @param {string} s is a string + * @param {number} cch is desired length + * @param {boolean} [fPadLeft] (default is padding on the right) + * @return {string} the original string (s) with spaces padding it to the specified length + */ + static pad(s, cch, fPadLeft) + { + var sPadding = " "; + return fPadLeft? (sPadding + s).slice(-cch) : (s + sPadding).slice(0, cch); + } + + /** + * stripLeadingZeros(s, fPad) + * + * @param {string} s + * @param {boolean} [fPad] + * @return {string} + */ + static stripLeadingZeros(s, fPad) + { + var cch = s.length; + s = s.replace(/^0+([0-9A-F]+)$/i, "$1"); + if (fPad) s = Str.pad(s, cch, true); + return s; + } + + /** + * trim(s) + * + * @param {string} s + * @return {string} + */ + static trim(s) + { + if (String.prototype.trim) { + return s.trim(); + } + return s.replace(/^\s+|\s+$/g, ""); + } + + /** + * toASCIICode(b) + * + * @param {number} b + * @return {string} + */ + static toASCIICode(b) + { + var s; + if (b != Str.ASCII.CR && b != Str.ASCII.LF) { + s = Str.aASCIICodes[b]; + } + if (s) { + s = '<' + s + '>'; + } else { + s = String.fromCharCode(b); + } + return s; + } +} + +Str.aHTMLEscapeMap = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''' +}; + +/* + * Future home of a general-purpose ASCII table. TODO: Flesh it out. + */ +Str.ASCII = { + LF: 0x0A, + CR: 0x0D +}; + +/* + * Table for converting "unprintable" ASCII codes into mnemonics, to more clearly see what's being printed. + */ +Str.aASCIICodes = { + 0x00: "NUL", + 0x01: "SOH", // (CTRL_A) Start of Heading + 0x02: "STX", // (CTRL_B) Start of Text + 0x03: "ETX", // (CTRL_C) End of Text + 0x04: "EOT", // (CTRL_D) End of Transmission + 0x05: "ENQ", // (CTRL_E) Enquiry + 0x06: "ACK", // (CTRL_F) Acknowledge + 0x07: "BEL", // (CTRL_G) Bell + 0x08: "BS", // (CTRL_H) Backspace + 0x09: "TAB", // (CTRL_I) Horizontal Tab + 0x0A: "LF", // (CTRL_J) Line Feed (New Line) + 0x0B: "VT", // (CTRL_K) Vertical Tab + 0x0C: "FF", // (CTRL_L) Form Feed (New Page) + 0x0D: "CR", // (CTRL_M) Carriage Return + 0x0E: "SO", // (CTRL_N) Shift Out + 0x0F: "SI", // (CTRL_O) Shift In + 0x10: "DLE", // (CTRL_P) Data Link Escape + 0x11: "XON", // (CTRL_Q) Device Control 1 (aka DC1) + 0x12: "DC2", // (CTRL_R) Device Control 2 + 0x13: "XOFF", // (CTRL_S) Device Control 3 (aka DC3) + 0x14: "DC4", // (CTRL_T) Device Control 4 + 0x15: "NAK", // (CTRL_U) Negative Acknowledge + 0x16: "SYN", // (CTRL_V) Synchronous Idle + 0x17: "ETB", // (CTRL_W) End of Transmission Block + 0x18: "CAN", // (CTRL_X) Cancel + 0x19: "EM", // (CTRL_Y) End of Medium + 0x1A: "SUB", // (CTRL_Z) Substitute + 0x1B: "ESC", // Escape + 0x1C: "FS", // File Separator + 0x1D: "GS", // Group Separator + 0x1E: "RS", // Record Separator + 0x1F: "US" // Unit Separator +}; + +Str.TYPES = { + NULL: 0, + BYTE: 1, + WORD: 2, + DWORD: 3, + NUMBER: 4, + STRING: 5, + BOOLEAN: 6, + OBJECT: 7, + ARRAY: 8 +}; + + + +/** + * @copyright http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017 + */ + +/** + * @typedef {{ + * mask: number, + * shift: number + * }} + */ +var BitField; + +/** + * @typedef {Object.} + */ +var BitFields; + +class Usr { + /** + * binarySearch(a, v, fnCompare) + * + * @param {Array} a is an array + * @param {number|string|Array|Object} v + * @param {function((number|string|Array|Object), (number|string|Array|Object))} [fnCompare] + * @return {number} the index of matching entry if non-negative, otherwise the index of the insertion point + */ + static binarySearch(a, v, fnCompare) + { + var left = 0; + var right = a.length; + var found = 0; + if (fnCompare === undefined) { + fnCompare = function(a, b) + { + return a > b ? 1 : a < b ? -1 : 0; + }; + } + while (left < right) { + var middle = (left + right) >> 1; + var compareResult; + compareResult = fnCompare(v, a[middle]); + if (compareResult > 0) { + left = middle + 1; + } else { + right = middle; + found = !compareResult; + } + } + return found ? left : ~left; + } + + /** + * binaryInsert(a, v, fnCompare) + * + * If element v already exists in array a, the array is unchanged (we don't allow duplicates); otherwise, the + * element is inserted into the array at the appropriate index. + * + * @param {Array} a is an array + * @param {number|string|Array|Object} v is the value to insert + * @param {function((number|string|Array|Object), (number|string|Array|Object))} [fnCompare] + */ + static binaryInsert(a, v, fnCompare) + { + var index = Usr.binarySearch(a, v, fnCompare); + if (index < 0) { + a.splice(-(index + 1), 0, v); + } + } + + /** + * getTimestamp() + * + * @return {string} timestamp containing the current date and time ("yyyy-mm-dd hh:mm:ss") + */ + static getTimestamp() + { + var date = new Date(); + var padNum = function(n) + { + return (n < 10 ? "0" : "") + n; + }; + return date.getFullYear() + "-" + padNum(date.getMonth() + 1) + "-" + padNum(date.getDate()) + " " + padNum(date.getHours()) + ":" + padNum(date.getMinutes()) + ":" + padNum(date.getSeconds()); + } + + /** + * getMonthDays(nMonth, nYear) + * + * Note that if we're being called on behalf of the RTC, its year is always truncated to two digits (mod 100), + * so we have no idea what century the year 0 might refer to. When using the normal leap-year formula, 0 fails + * the mod 100 test but passes the mod 400 test, so as far as the RTC is concerned, every century year is a leap + * year. Since we're most likely dealing with the year 2000, that's fine, since 2000 was also a leap year. + * + * TODO: There IS a separate CMOS byte that's supposed to be set to CMOS_ADDR.CENTURY_DATE; it's always BCD, + * so theoretically it will contain values like 0x19 or 0x20 (for the 20th and 21st centuries, respectively), and + * we could add that as another parameter to this function, to improve the accuracy, but that would go beyond what + * a real RTC actually does. + * + * @param {number} nMonth (1-12) + * @param {number} nYear (normally a 4-digit year, but it may also be mod 100) + * @return {number} the maximum (1-based) day allowed for the specified month and year + */ + static getMonthDays(nMonth, nYear) + { + var nDays = Usr.aMonthDays[nMonth - 1]; + if (nDays == 28) { + if ((nYear % 4) === 0 && ((nYear % 100) || (nYear % 400) === 0)) { + nDays++; + } + } + return nDays; + } + + /** + * formatDate(sFormat, date) + * + * @param {string} sFormat (eg, "F j, Y", "Y-m-d H:i:s") + * @param {Date} [date] (default is the current time) + * @return {string} + * + * Supported identifiers in sFormat include: + * + * a: lowercase ante meridiem and post meridiem (am or pm) + * d: day of the month, 2 digits with leading zeros (01,02,...,31) + * D: 3-letter day of the week ("Sun","Mon",...,"Sat") + * F: month ("January","February",...,"December") + * g: hour in 12-hour format, without leading zeros (1,2,...,12) + * h: hour in 24-hour format, without leading zeros (0,1,...,23) + * H: hour in 24-hour format, with leading zeros (00,01,...,23) + * i: minutes, with leading zeros (00,01,...,59) + * j: day of the month, without leading zeros (1,2,...,31) + * l: day of the week ("Sunday","Monday",...,"Saturday") + * m: month, with leading zeros (01,02,...,12) + * M: 3-letter month ("Jan","Feb",...,"Dec") + * n: month, without leading zeros (1,2,...,12) + * s: seconds, with leading zeros (00,01,...,59) + * y: 2-digit year (eg, 14) + * Y: 4-digit year (eg, 2014) + * + * For more inspiration, see: http://php.net/manual/en/function.date.php (of which we support ONLY a subset). + */ + static formatDate(sFormat, date) + { + var sDate = ""; + if (!date) date = new Date(); + var iHour = date.getHours(); + var iDay = date.getDate(); + var iMonth = date.getMonth() + 1; + for (var i = 0; i < sFormat.length; i++) { + var ch; + switch ((ch = sFormat.charAt(i))) { + case 'a': + sDate += (iHour < 12 ? "am" : "pm"); + break; + case 'd': + sDate += ('0' + iDay).slice(-2); + break; + case 'D': + sDate += Usr.asDays[date.getDay()].substr(0, 3); + break; + case 'F': + sDate += Usr.asMonths[iMonth - 1]; + break; + case 'g': + sDate += (!iHour ? 12 : (iHour > 12 ? iHour - 12 : iHour)); + break; + case 'h': + sDate += iHour; + break; + case 'H': + sDate += ('0' + iHour).slice(-2); + break; + case 'i': + sDate += ('0' + date.getMinutes()).slice(-2); + break; + case 'j': + sDate += iDay; + break; + case 'l': + sDate += Usr.asDays[date.getDay()]; + break; + case 'm': + sDate += ('0' + iMonth).slice(-2); + break; + case 'M': + sDate += Usr.asMonths[iMonth - 1].substr(0, 3); + break; + case 'n': + sDate += iMonth; + break; + case 's': + sDate += ('0' + date.getSeconds()).slice(-2); + break; + case 'y': + sDate += ("" + date.getFullYear()).slice(-2); + break; + case 'Y': + sDate += date.getFullYear(); + break; + default: + sDate += ch; + break; + } + } + return sDate; + } + + /** + * defineBitFields(bfs) + * + * Prepares a bit field definition for use with getBitField() and setBitField(); eg: + * + * var bfs = Usr.defineBitFields({num:20, count:8, btmod:1, type:3}); + * + * The above defines a set of bit fields containing four fields: num (bits 0-19), count (bits 20-27), btmod (bit 28), and type (bits 29-31). + * + * Usr.setBitField(bfs.num, n, 1); + * + * The above set bit field "bfs.num" in numeric variable "n" to the value 1. + * + * @param {Object} bfs + * @return {BitFields} + */ + static defineBitFields(bfs) + { + var bit = 0; + for (var f in bfs) { + var width = bfs[f]; + var mask = ((1 << width) - 1) << bit; + bfs[f] = {mask: mask, shift: bit}; + bit += width; + } + return bfs; + } + + /** + * initBitFields(bfs, ...) + * + * @param {BitFields} bfs + * @param {...number} var_args + * @return {number} a value containing all supplied bit fields + */ + static initBitFields(bfs, var_args) + { + var v = 0, i = 1; + for (var f in bfs) { + if (i >= arguments.length) break; + v = Usr.setBitField(bfs[f], v, arguments[i++]); + } + return v; + } + + /** + * getBitField(bf, v) + * + * @param {BitField} bf + * @param {number} v is a value containing bit fields + * @return {number} the value of the bit field in v defined by bf + */ + static getBitField(bf, v) + { + return (v & bf.mask) >> bf.shift; + } + + /** + * setBitField(bf, v, n) + * + * @param {BitField} bf + * @param {number} v is a value containing bit fields + * @param {number} n is a value to store in v in the bit field defined by bf + * @return {number} updated v + */ + static setBitField(bf, v, n) + { + return (v & ~bf.mask) | ((n << bf.shift) & bf.mask); + } + + /** + * indexOf(a, t, i) + * + * Use this instead of Array.prototype.indexOf() if you can't be sure the browser supports it. + * + * @param {Array} a + * @param {*} t + * @param {number} [i] + * @returns {number} + */ + static indexOf(a, t, i) + { + if (Array.prototype.indexOf) { + return a.indexOf(t, i); + } + i = i || 0; + if (i < 0) i += a.length; + if (i < 0) i = 0; + for (var n = a.length; i < n; i++) { + if (i in a && a[i] === t) return i; + } + return -1; + } +} + +Usr.asDays = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; +Usr.asMonths = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; +Usr.aMonthDays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + +/** + * getTime() + * + * @return {number} the current time, in milliseconds + */ +Usr.getTime = Date.now || function() { return +new Date(); }; + + + +/** + * @copyright http://pcjs.org/modules/shared/lib/weblib.js (C) Jeff Parsons 2012-2017 + */ + + +/* + * According to http://www.w3schools.com/jsref/jsref_obj_global.asp, these are the *global* properties + * and functions of JavaScript-in-the-Browser: + * + * Property Description + * --- + * Infinity A numeric value that represents positive/negative infinity + * NaN "Not-a-Number" value + * undefined Indicates that a variable has not been assigned a value + * + * Function Description + * --- + * decodeURI() Decodes a URI + * decodeURIComponent() Decodes a URI component + * encodeURI() Encodes a URI + * encodeURIComponent() Encodes a URI component + * escape() Deprecated in version 1.5. Use encodeURI() or encodeURIComponent() instead + * eval() Evaluates a string and executes it as if it was script code + * isFinite() Determines whether a value is a finite, legal number + * isNaN() Determines whether a value is an illegal number + * Number() Converts an object's value to a number + * parseFloat() Parses a string and returns a floating point number + * parseInt() Parses a string and returns an integer + * String() Converts an object's value to a string + * unescape() Deprecated in version 1.5. Use decodeURI() or decodeURIComponent() instead + * + * And according to http://www.w3schools.com/jsref/obj_window.asp, these are the properties and functions + * of the *window* object. + * + * Property Description + * --- + * closed Returns a Boolean value indicating whether a window has been closed or not + * defaultStatus Sets or returns the default text in the statusbar of a window + * document Returns the Document object for the window (See Document object) + * frames Returns an array of all the frames (including iframes) in the current window + * history Returns the History object for the window (See History object) + * innerHeight Returns the inner height of a window's content area + * innerWidth Returns the inner width of a window's content area + * length Returns the number of frames (including iframes) in a window + * location Returns the Location object for the window (See Location object) + * name Sets or returns the name of a window + * navigator Returns the Navigator object for the window (See Navigator object) + * opener Returns a reference to the window that created the window + * outerHeight Returns the outer height of a window, including toolbars/scrollbars + * outerWidth Returns the outer width of a window, including toolbars/scrollbars + * pageXOffset Returns the pixels the current document has been scrolled (horizontally) from the upper left corner of the window + * pageYOffset Returns the pixels the current document has been scrolled (vertically) from the upper left corner of the window + * parent Returns the parent window of the current window + * screen Returns the Screen object for the window (See Screen object) + * screenLeft Returns the x coordinate of the window relative to the screen + * screenTop Returns the y coordinate of the window relative to the screen + * screenX Returns the x coordinate of the window relative to the screen + * screenY Returns the y coordinate of the window relative to the screen + * self Returns the current window + * status Sets or returns the text in the statusbar of a window + * top Returns the topmost browser window + * + * Method Description + * --- + * alert() Displays an alert box with a message and an OK button + * atob() Decodes a base-64 encoded string + * blur() Removes focus from the current window + * btoa() Encodes a string in base-64 + * clearInterval() Clears a timer set with setInterval() + * clearTimeout() Clears a timer set with setTimeout() + * close() Closes the current window + * confirm() Displays a dialog box with a message and an OK and a Cancel button + * createPopup() Creates a pop-up window + * focus() Sets focus to the current window + * moveBy() Moves a window relative to its current position + * moveTo() Moves a window to the specified position + * open() Opens a new browser window + * print() Prints the content of the current window + * prompt() Displays a dialog box that prompts the visitor for input + * resizeBy() Resizes the window by the specified pixels + * resizeTo() Resizes the window to the specified width and height + * scroll() This method has been replaced by the scrollTo() method. + * scrollBy() Scrolls the content by the specified number of pixels + * scrollTo() Scrolls the content to the specified coordinates + * setInterval() Calls a function or evaluates an expression at specified intervals (in milliseconds) + * setTimeout() Calls a function or evaluates an expression after a specified number of milliseconds + * stop() Stops the window from loading + */ + +class Web { + /** + * log(s, type) + * + * For diagnostic output only. DEBUG must be true (or "--debug" specified via the command-line) + * for Component.log() to display anything. + * + * @param {string} [s] is the message text + * @param {string} [type] is the message type + */ + static log(s, type) + { + Component.log(s, type); + } + + /** + * notice(s, fPrintOnly, id) + * + * @param {string} s is the message text + * @param {boolean} [fPrintOnly] + * @param {string} [id] is the caller's ID, if any + */ + static notice(s, fPrintOnly, id) + { + Component.notice(s, fPrintOnly, id); + } + + /** + * getResource(sURL, dataPost, fAsync, done, progress) + * + * Request the specified resource (sURL), and once the request is complete, notify done(). + * + * If fAsync is true, a done() callback should ALWAYS be supplied; otherwise, you'll have no + * idea when the request is complete or what the response was. done() is passed three parameters: + * + * done(sURL, sResource, nErrorCode) + * + * If nErrorCode is zero, sResource should contain the requested data; otherwise, an error occurred. + * + * If dataPost is set to a string, that string can be used to control the response format; + * by default, the response format is plain text, but you can specify "bytes" to request arbitrary + * binary data, which should come back as a string of bytes. + * + * TODO: The "bytes" option works by calling overrideMimeType(), which was never a best practice. + * Instead, we should implement supported response types ("text" and "arraybuffer", at a minimum) + * by setting xmlHTTP.responseType to one of those values before calling xmlHTTP.send(). + * + * @param {string} sURL + * @param {string|Object|null} [dataPost] for a POST request (default is a GET request) + * @param {boolean} [fAsync] is true for an asynchronous request + * @param {function(string,string,number)} [done] + * @param {function(number)} [progress] + * @return {Array|null} Array containing [sResource, nErrorCode], or null if no response yet + */ + static getResource(sURL, dataPost, fAsync = false, done, progress) + { + var nErrorCode = 0, sResource = null, response = null; + + if (typeof resources == 'object' && (sResource = resources[sURL])) { + if (done) done(sURL, sResource, nErrorCode); + return [sResource, nErrorCode]; + } + else if (fAsync && typeof resources == 'function') { + resources(sURL, function(sResource, nErrorCode) + { + if (done) done(sURL, sResource, nErrorCode); + }); + return response; + } + + if (DEBUG) { + /* + * The larger resources we put on archive.pcjs.org should also be available locally... + */ + sURL = sURL.replace(/^http:\/\/archive.pcjs.org(\/.*)\/([^\/]*)$/, "$1/archive/$2"); + } + + + var xmlHTTP = (window.XMLHttpRequest? new window.XMLHttpRequest() : new window.ActiveXObject("Microsoft.XMLHTTP")); + if (fAsync) { + xmlHTTP.onreadystatechange = function() + { + if (xmlHTTP.readyState !== 4) { + if (progress) progress(1); + return; + } + /* + * The following line was recommended for WebKit, as a work-around to prevent the handler firing multiple + * times when debugging. Unfortunately, that's not the only XMLHttpRequest problem that occurs when + * debugging, so I think the WebKit problem is deeper than that. When we have multiple XMLHttpRequests + * pending, any debugging activity means most of them simply get dropped on floor, so what may actually be + * happening are mis-notifications rather than redundant notifications. + * + * xmlHTTP.onreadystatechange = undefined; + */ + sResource = xmlHTTP.responseText; + /* + * The normal "success" case is an HTTP status code of 200, but when testing with files loaded + * from the local file system (ie, when using the "file:" protocol), we have to be a bit more "flexible". + */ + if (xmlHTTP.status == 200 || !xmlHTTP.status && sResource.length && Web.getHostProtocol() == "file:") { + if (MAXDEBUG) Web.log("xmlHTTP.onreadystatechange(" + sURL + "): returned " + sResource.length + " bytes"); + } + else { + nErrorCode = xmlHTTP.status || -1; + Web.log("xmlHTTP.onreadystatechange(" + sURL + "): error code " + nErrorCode); + } + if (progress) progress(2); + if (done) done(sURL, sResource, nErrorCode); + }; + } + + if (progress) progress(0); + + if (dataPost && typeof dataPost == "object") { + var sDataPost = ""; + for (var p in dataPost) { + if (!dataPost.hasOwnProperty(p)) continue; + if (sDataPost) sDataPost += "&"; + sDataPost += p + '=' + encodeURIComponent(dataPost[p]); + } + sDataPost = sDataPost.replace(/%20/g, '+'); + if (MAXDEBUG) Web.log("Web.getResource(POST " + sURL + "): " + sDataPost.length + " bytes"); + xmlHTTP.open("POST", sURL, fAsync); // ensure that fAsync is a valid boolean (Internet Explorer xmlHTTP functions insist on it) + xmlHTTP.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); + xmlHTTP.send(sDataPost); + } else { + if (MAXDEBUG) Web.log("Web.getResource(GET " + sURL + ")"); + xmlHTTP.open("GET", sURL, fAsync); // ensure that fAsync is a valid boolean (Internet Explorer xmlHTTP functions insist on it) + if (dataPost == "bytes") { + xmlHTTP.overrideMimeType("text/plain; charset=x-user-defined"); + } + xmlHTTP.send(); + } + + if (!fAsync) { + sResource = xmlHTTP.responseText; + if (xmlHTTP.status == 200) { + if (MAXDEBUG) Web.log("Web.getResource(" + sURL + "): returned " + sResource.length + " bytes"); + } else { + nErrorCode = xmlHTTP.status || -1; + Web.log("Web.getResource(" + sURL + "): error code " + nErrorCode); + } + if (done) done(sURL, sResource, nErrorCode); + response = [sResource, nErrorCode]; + } + return response; + } + + /** + * parseMemoryResource(sURL, sData) + * + * This converts a variety of JSON-style data streams into an Object with the following properties: + * + * aBytes + * aSymbols + * addrLoad + * addrExec + * + * If the source data contains a 'bytes' array, it's passed through to 'aBytes'; alternatively, if + * it contains a 'words' array, the values are converted from 16-bit to 8-bit and stored in 'aBytes', + * and if it contains a 'longs' array, the values are converted from 32-bit longs into bytes and + * stored in 'aBytes'. + * + * Alternatively, if the source data contains a 'data' array, we simply pass that through to the output + * object as: + * + * aData + * + * @param {string} sURL + * @param {string} sData + * @return {Object|null} (resource) + */ + static parseMemoryResource(sURL, sData) + { + var i; + var resource = { + aBytes: null, + aSymbols: null, + addrLoad: null, + addrExec: null + }; + + if (sData.charAt(0) == "[" || sData.charAt(0) == "{") { + try { + var a, ib, data; + + if (sData.substr(0, 1) == "<") { // if the "data" begins with a "<"... + /* + * Early server configs reported an error (via the nErrorCode parameter) if a tape URL was invalid, + * but more recent server configs now display a somewhat friendlier HTML error page. The downside, + * however, is that the original error has been buried, and we've received "data" that isn't actually + * tape data. So if the data we've received appears to be "HTML-like", we treat it as an error message. + */ + throw new Error(sData); + } + + /* + * TODO: IE9 is rather unfriendly and restrictive with regard to how much data it's willing to + * eval(). In particular, the 10Mb disk image we use for the Windows 1.01 demo config fails in + * IE9 with an "Out of memory" exception. One work-around would be to chop the data into chunks + * (perhaps one track per chunk, using regular expressions) and then manually re-assemble it. + * + * However, it turns out that using JSON.parse(sDiskData) instead of eval("(" + sDiskData + ")") + * is a much easier fix. The only drawback is that we must first quote any unquoted property names + * and remove any comments, because while eval() was cool with them, JSON.parse() is more particular; + * the following RegExp replacements take care of those requirements. + * + * The use of hex values is something else that eval() was OK with, but JSON.parse() is not, and + * while I've stopped using hex values in DumpAPI responses (at least when "format=json" is specified), + * I can't guarantee they won't show up in "legacy" images, and there's no simple RegExp replacement + * for transforming hex values into decimal values, so I cop out and fall back to eval() if I detect + * any hex prefixes ("0x") in the sequence. Ditto for error messages, which appear like so: + * + * ["unrecognized disk path: test.img"] + */ + if (sData.indexOf("0x") < 0 && sData.indexOf("0o") < 0 && sData.substr(0, 2) != '["') { + data = JSON.parse(sData.replace(/([a-z]+):/gm, '"$1":').replace(/\/\/[^\n]*/gm, "")); + } else { + data = eval("(" + sData + ")"); + } + + resource.addrLoad = data['load']; + resource.addrExec = data['exec']; + + if (a = data['bytes']) { + resource.aBytes = a; + } + else if (a = data['words']) { + /* + * Convert all words into bytes + */ + resource.aBytes = new Array(a.length * 2); + for (i = 0, ib = 0; i < a.length; i++) { + resource.aBytes[ib++] = a[i] & 0xff; + resource.aBytes[ib++] = (a[i] >> 8) & 0xff; + + } + } + else if (a = data['longs']) { + /* + * Convert all dwords (longs) into bytes + */ + resource.aBytes = new Array(a.length * 4); + for (i = 0, ib = 0; i < a.length; i++) { + resource.aBytes[ib++] = a[i] & 0xff; + resource.aBytes[ib++] = (a[i] >> 8) & 0xff; + resource.aBytes[ib++] = (a[i] >> 16) & 0xff; + resource.aBytes[ib++] = (a[i] >> 24) & 0xff; + } + } + else if (a = data['data']) { + resource.aData = a; + } + else { + resource.aBytes = data; + } + + if (resource.aBytes) { + if (!resource.aBytes.length) { + Component.error("Empty resource: " + sURL); + resource = null; + } + else if (resource.aBytes.length == 1) { + Component.error(resource.aBytes[0]); + resource = null; + } + } + resource.aSymbols = data['symbols']; + + } catch (e) { + Component.error("Resource data error (" + sURL + "): " + e.message); + resource = null; + } + } + else { + /* + * Parse the data manually; we assume it's a series of hex byte-values separated by whitespace. + */ + var ab = []; + var sHexData = sData.replace(/\n/gm, " ").replace(/ +$/, ""); + var asHexData = sHexData.split(" "); + for (i = 0; i < asHexData.length; i++) { + var n = parseInt(asHexData[i], 16); + if (isNaN(n)) { + Component.error("Resource data error (" + sURL + "): invalid hex byte (" + asHexData[i] + ")"); + break; + } + ab.push(n & 0xff); + } + if (i == asHexData.length) resource.aBytes = ab; + } + return resource; + } + + /** + * sendReport(sApp, sVer, sURL, sUser, sType, sReport, sHostName) + * + * Send a report (eg, bug report) to the server. + * + * @param {string} sApp (eg, "PCjs") + * @param {string} sVer (eg, "1.02") + * @param {string} sURL (eg, "/devices/pc/machine/5150/mda/64kb/machine.xml") + * @param {string} sUser (ie, the user key, if any) + * @param {string} sType (eg, "bug"); one of ReportAPI.TYPE.* + * @param {string} sReport (eg, unparsed state data) + * @param {string} [sHostName] (default is http://SITEHOST) + */ + static sendReport(sApp, sVer, sURL, sUser, sType, sReport, sHostName) + { + var dataPost = {}; + dataPost[ReportAPI.QUERY.APP] = sApp; + dataPost[ReportAPI.QUERY.VER] = sVer; + dataPost[ReportAPI.QUERY.URL] = sURL; + dataPost[ReportAPI.QUERY.USER] = sUser; + dataPost[ReportAPI.QUERY.TYPE] = sType; + dataPost[ReportAPI.QUERY.DATA] = sReport; + var sReportURL = (sHostName? sHostName : "http://" + SITEHOST) + ReportAPI.ENDPOINT; + Web.getResource(sReportURL, dataPost, true); + } + + /** + * getHost() + * + * @return {string} + */ + static getHost() + { + return ("http://" + (window? window.location.host : SITEHOST)); + } + + /** + * getHostURL() + * + * @return {string|null} + */ + static getHostURL() + { + return (window? window.location.href : null); + } + + /** + * getHostProtocol() + * + * @return {string} + */ + static getHostProtocol() + { + return (window? window.location.protocol : "file:"); + } + + /** + * getUserAgent() + * + * @return {string} + */ + static getUserAgent() + { + return (window? window.navigator.userAgent : ""); + } + + /** + * hasLocalStorage + * + * true if localStorage support exists, is enabled, and works; false otherwise + * + * @return {boolean} + */ + static hasLocalStorage() + { + if (Web.fLocalStorage == null) { + var f = false; + if (window) { + try { + window.localStorage.setItem(Web.sLocalStorageTest, Web.sLocalStorageTest); + f = (window.localStorage.getItem(Web.sLocalStorageTest) == Web.sLocalStorageTest); + window.localStorage.removeItem(Web.sLocalStorageTest); + } catch (e) { + Web.logLocalStorageError(e); + f = false; + } + } + Web.fLocalStorage = f; + } + return Web.fLocalStorage; + } + + /** + * logLocalStorageError(e) + * + * @param {Error} e is an exception + */ + static logLocalStorageError(e) + { + Web.log(e.message, "localStorage error"); + } + + /** + * getLocalStorageItem(sKey) + * + * Returns the requested key value, or null if the key does not exist, or undefined if localStorage is not available + * + * @param {string} sKey + * @return {string|null|undefined} sValue + */ + static getLocalStorageItem(sKey) + { + var sValue; + if (window) { + try { + sValue = window.localStorage.getItem(sKey); + } catch (e) { + Web.logLocalStorageError(e); + } + } + return sValue; + } + + /** + * setLocalStorageItem(sKey, sValue) + * + * @param {string} sKey + * @param {string} sValue + * @return {boolean} true if localStorage is available, false if not + */ + static setLocalStorageItem(sKey, sValue) + { + try { + window.localStorage.setItem(sKey, sValue); + return true; + } catch (e) { + Web.logLocalStorageError(e); + } + return false; + } + + /** + * removeLocalStorageItem(sKey) + * + * @param {string} sKey + */ + static removeLocalStorageItem(sKey) + { + try { + window.localStorage.removeItem(sKey); + } catch (e) { + Web.logLocalStorageError(e); + } + } + + /** + * getLocalStorageKeys() + * + * @return {Array} + */ + static getLocalStorageKeys() + { + var a = []; + try { + for (var i = 0, c = window.localStorage.length; i < c; i++) { + a.push(window.localStorage.key(i)); + } + } catch (e) { + Web.logLocalStorageError(e); + } + return a; + } + + /** + * reloadPage() + */ + static reloadPage() + { + if (window) window.location.reload(); + } + + /** + * isUserAgent(s) + * + * Check the browser's user-agent string for the given substring; "iOS" and "MSIE" are special values you can + * use that will match any iOS or MSIE browser, respectively (even IE11, in the case of "MSIE"). + * + * 2013-11-06: In a questionable move, MSFT changed the user-agent reported by IE11 on Windows 8.1, eliminating + * the "MSIE" string (which MSDN calls a "version token"; see http://msdn.microsoft.com/library/ms537503.aspx); + * they say "public websites should rely on feature detection, rather than browser detection, in order to design + * their sites for browsers that don't support the features used by the website." So, in IE11, we get a user-agent + * that tries to fool apps into thinking the browser is more like WebKit or Gecko: + * + * Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko + * + * That's a nice idea, but in the meantime, they hosed the XSL transform code in embed.js, which contained + * some very critical browser-specific code; turning on IE's "Compatibility Mode" didn't help either, because + * that's a sledgehammer solution which restores the old user-agent string but also disables other features like + * HTML5 canvas support. As an interim solution, I'm treating any "MSIE" check as a check for either "MSIE" or + * "Trident". + * + * UPDATE: I've since found ways to make the code in embed.js more browser-agnostic, so for now, there's isn't + * any code that cares about "MSIE", but I've left the change in place, because I wouldn't be surprised if I'll + * need more IE-specific code in the future, perhaps for things like copy/paste functionality, or mouse capture. + * + * @param {string} s is a substring to search for in the user-agent; as noted above, "iOS" and "MSIE" are special values + * @return {boolean} is true if the string was found, false if not + */ + static isUserAgent(s) + { + if (window) { + var userAgent = Web.getUserAgent(); + /* + * Here's one case where we have to be careful with Component, because when isUserAgent() is called by + * the init code below, component.js hasn't been loaded yet. The simple solution for now is to remove the call. + * + * Web.log("agent: " + userAgent); + * + * And yes, it would be pointless to use the conditional (?) operator below, if not for the Google Closure + * Compiler (v20130823) failing to detect the entire expression as a boolean. + */ + return s == "iOS" && !!userAgent.match(/(iPod|iPhone|iPad)/) && !!userAgent.match(/AppleWebKit/) || s == "MSIE" && !!userAgent.match(/(MSIE|Trident)/) || (userAgent.indexOf(s) >= 0); + } + return false; + } + + /** + * isMobile() + * + * Check the browser's user-agent string for the substring "Mobi", as per Mozilla recommendation: + * + * https://developer.mozilla.org/en-US/docs/Browser_detection_using_the_user_agent + * + * @return {boolean} is true if the browser appears to be a mobile (ie, non-desktop) web browser, false if not + */ + static isMobile() + { + return Web.isUserAgent("Mobi"); + } + + /** + * getURLParm(sParm) + * + * First looks for sParm exactly as specified, then looks for the lower-case version. + * + * @param {string} sParm + * @return {string|undefined} + */ + static getURLParm(sParm) + { + if (!Web.parmsURL) { + Web.parmsURL = Web.parseURLParms(); + } + return Web.parmsURL[sParm] || Web.parmsURL[sParm.toLowerCase()]; + } + + /** + * parseURLParms(sParms) + * + * @param {string} [sParms] containing the parameter portion of a URL (ie, after the '?') + * @return {Object} containing properties for each parameter found + */ + static parseURLParms(sParms) + { + var aParms = {}; + if (window) { // an alternative to "if (typeof module === 'undefined')" if require("defines") was used + if (!sParms) { + /* + * Note that window.location.href returns the entire URL, whereas window.location.search + * returns only the parameters, if any (starting with the '?', which we skip over with a substr() call). + */ + sParms = window.location.search.substr(1); + } + var match; + var pl = /\+/g; // RegExp for replacing addition symbol with a space + var search = /([^&=]+)=?([^&]*)/g; + var decode = function(s) + { + return decodeURIComponent(s.replace(pl, " ")); + }; + + while ((match = search.exec(sParms))) { + aParms[decode(match[1])] = decode(match[2]); + } + } + return aParms; + } + + /** + * downloadFile(sData, sType, fBase64, sFileName) + * + * @param {string} sData + * @param {string} sType + * @param {boolean} [fBase64] + * @param {string} [sFileName] + */ + static downloadFile(sData, sType, fBase64, sFileName) + { + var link = null, sAlert; + var sURI = "data:application/" + sType + (fBase64? ";base64" : "") + ","; + + if (!Web.isUserAgent("Firefox")) { + sURI += (fBase64? sData : encodeURI(sData)); + } else { + sURI += (fBase64? sData : encodeURIComponent(sData)); + } + if (sFileName) { + link = document.createElement('a'); + if (typeof link.download != 'string') link = null; + } + if (link) { + link.href = sURI; + link.download = sFileName; + document.body.appendChild(link); // Firefox allegedly requires the link to be in the body + link.click(); + document.body.removeChild(link); + sAlert = 'Check your Downloads folder for ' + sFileName + '.'; + } else { + window.open(sURI); + sAlert = 'Check your browser for a new window/tab containing the requested data' + (sFileName? (' (' + sFileName + ')') : '') + '.'; + } + return sAlert; + } + + /** + * onCountRepeat(n, fnRepeat, fnComplete, msDelay) + * + * Call fnRepeat() n times with an msDelay millisecond delay between calls, + * then call fnComplete() when n has been exhausted OR fnRepeat() returns false. + * + * @param {number} n + * @param {function()} fnRepeat + * @param {function()} fnComplete + * @param {number} [msDelay] + */ + static onCountRepeat(n, fnRepeat, fnComplete, msDelay) + { + var fnTimeout = function doCountRepeat() + { + n -= 1; + if (n >= 0) { + if (!fnRepeat()) n = 0; + } + if (n > 0) { + setTimeout(fnTimeout, msDelay || 0); + return; + } + fnComplete(); + }; + fnTimeout(); + } + + /** + * onClickRepeat(e, msDelay, msRepeat, fn) + * + * Repeatedly call fn() with an initial msDelay, and an msRepeat delay thereafter, + * as long as HTML control Object e has an active "down" event and fn() returns true. + * + * @param {Object} e + * @param {number} msDelay + * @param {number} msRepeat + * @param {function(boolean)} fn is passed false on the first call, true on all repeated calls + */ + static onClickRepeat(e, msDelay, msRepeat, fn) + { + var ms = 0, timer = null, fIgnoreMouseEvents = false; + + var fnRepeat = function doClickRepeat() + { + if (fn(ms === msRepeat)) { + timer = setTimeout(fnRepeat, ms); + ms = msRepeat; + } + }; + e.onmousedown = function() + { + // Web.log("onMouseDown()"); + if (!fIgnoreMouseEvents) { + if (!timer) { + ms = msDelay; + fnRepeat(); + } + } + }; + e.ontouchstart = function() + { + // Web.log("onTouchStart()"); + if (!timer) { + ms = msDelay; + fnRepeat(); + } + }; + e.onmouseup = e.onmouseout = function() + { + // Web.log("onMouseUp()/onMouseOut()"); + if (timer) { + clearTimeout(timer); + timer = null; + } + }; + e.ontouchend = e.ontouchcancel = function() + { + // Web.log("onTouchEnd()/onTouchCancel()"); + if (timer) { + clearTimeout(timer); + timer = null; + } + /* + * Devices that generate ontouch* events ALSO generate onmouse* events, + * and generally do so immediately after all the touch events are complete, + * so unless we want double the action, we need to ignore mouse events. + */ + fIgnoreMouseEvents = true; + }; + } + + /** + * onPageEvent(sName, fn) + * + * For 'onload', 'onunload', and 'onpageshow' events, most callers should NOT use this function, but + * instead use Web.onInit(), Web.onShow(), and Web.onExit(), respectively. + * + * The only components that should still use onPageEvent() are THIS component (see the bottom of this file) + * and components that need to capture other events (eg, the 'onresize' event in the Video component). + * + * This function creates a chain of callbacks, allowing multiple JavaScript modules to define handlers + * for the same event, which wouldn't be possible if everyone modified window['onload'], window['onunload'], + * etc, themselves. However, that's less of a concern now, because assuming everyone else is now using + * onInit(), onExit(), etc, then there really IS only one component setting the window callback: this one. + * + * NOTE: It's risky to refer to obscure event handlers with "dot" names, because the Closure Compiler may + * erroneously replace them (eg, window.onpageshow is a good example). + * + * @param {string} sFunc + * @param {function()} fn + */ + static onPageEvent(sFunc, fn) + { + if (window) { + var fnPrev = window[sFunc]; + if (typeof fnPrev !== 'function') { + window[sFunc] = fn; + } else { + /* + * TODO: Determine whether there's any value in receiving/sending the Event object that the + * browser provides when it generates the original event. + */ + window[sFunc] = function onWindowEvent() + { + if (fnPrev) fnPrev(); + fn(); + }; + } + } + }; + + /** + * onInit(fn) + * + * Use this instead of setting window.onload. Allows multiple JavaScript modules to define their own 'onload' event handler. + * + * @param {function()} fn + */ + static onInit(fn) + { + Web.aPageEventHandlers['init'].push(fn); + }; + + /** + * onShow(fn) + * + * @param {function()} fn + * + * Use this instead of setting window.onpageshow. Allows multiple JavaScript modules to define their own 'onpageshow' event handler. + */ + static onShow(fn) + { + Web.aPageEventHandlers['show'].push(fn); + }; + + /** + * onExit(fn) + * + * @param {function()} fn + * + * Use this instead of setting window.onunload. Allows multiple JavaScript modules to define their own 'onunload' event handler. + */ + static onExit(fn) + { + Web.aPageEventHandlers['exit'].push(fn); + }; + + /** + * doPageEvent(afn) + * + * @param {Array.} afn + */ + static doPageEvent(afn) + { + if (Web.fPageEventsEnabled) { + try { + for (var i = 0; i < afn.length; i++) { + afn[i](); + } + } catch (e) { + Web.notice("An unexpected exception occurred:\n\n" + e.message + "\n\nPlease send this information to support@pcjs.org. Thanks."); + } + } + }; + + /** + * enablePageEvents(fEnable) + * + * @param {boolean} fEnable is true to enable page events, false to disable (they're enabled by default) + */ + static enablePageEvents(fEnable) + { + if (!Web.fPageEventsEnabled && fEnable) { + Web.fPageEventsEnabled = true; + if (Web.fPageLoaded) Web.sendPageEvent('init'); + if (Web.fPageShowed) Web.sendPageEvent('show'); + return; + } + Web.fPageEventsEnabled = fEnable; + } + + /** + * sendPageEvent(sEvent) + * + * This allows us to manually trigger page events. + * + * @param {string} sEvent (one of 'init', 'show' or 'exit') + */ + static sendPageEvent(sEvent) + { + if (Web.aPageEventHandlers[sEvent]) { + Web.doPageEvent(Web.aPageEventHandlers[sEvent]); + } + } +} + +Web.parmsURL = null; // initialized on first call to parseURLParms() + +Web.aPageEventHandlers = { + 'init': [], // list of window 'onload' handlers + 'show': [], // list of window 'onpageshow' handlers + 'exit': [] // list of window 'onunload' handlers (although we prefer to use 'onbeforeunload' if possible) +}; + +Web.fPageLoaded = false; // set once the page's first 'onload' event has occurred +Web.fPageShowed = false; // set once the page's first 'onpageshow' event has occurred +Web.fPageEventsEnabled = true; // default is true, set to false (or true) by enablePageEvents() + +/** + * fLocalStorage + * + * true if localStorage support exists, is enabled, and works; "falsey" otherwise + * + * @type {boolean|null} + */ +Web.fLocalStorage = null; + +/** + * TODO: Is there any way to get the Closure Compiler to stop inlining this string? This isn't cutting it. + * + * @const {string} + */ +Web.sLocalStorageTest = "PCjs.localStorage"; + +Web.onPageEvent('onload', function onPageLoad() { + Web.fPageLoaded = true; + Web.doPageEvent(Web.aPageEventHandlers['init']); +}); + +Web.onPageEvent('onpageshow', function onPageShow() { + Web.fPageShowed = true; + Web.doPageEvent(Web.aPageEventHandlers['show']); +}); + +Web.onPageEvent(Web.isUserAgent("iOS")? 'onpagehide' : (Web.isUserAgent("Opera")? 'onunload' : 'onbeforeunload'), function onPageUnload() { + Web.doPageEvent(Web.aPageEventHandlers['exit']); +}); + + + +/** + * @copyright http://pcjs.org/modules/shared/lib/component.js (C) Jeff Parsons 2012-2017 + */ + +/* + * All PCjs components now use JSDoc types, primarily so that Google's Closure Compiler will compile + * everything with zero warnings when ADVANCED_OPTIMIZATIONS are enabled. For more information about + * the JSDoc types supported by the Closure Compiler: + * + * https://developers.google.com/closure/compiler/docs/js-for-compiler#types + * + * I also attempted to validate this code with JSLint, but it complained too much; eg, it didn't like + * "while (true)", a tried and "true" programming convention for decades, and it wanted me to replace + * all "++" and "--" operators with "+= 1" and "-= 1", use "(s || '')" instead of "(s? s : '')", etc. + * + * I prefer sticking with traditional C-style idioms, in part because they are more portable. That + * does NOT mean I'm trying to write "portable JavaScript," but some of this code was ported from C code + * I'd written long ago, so portability is good, and I'm not going to throw that away if there's no need. + * + * UPDATE: I've since switched from JSLint to JSHint, which seems to have more reasonable defaults. + * And for new code, I have adopted some popular JavaScript idioms, like "(s || '')", although the need + * for those kinds of expressions will be reduced as I also start adopting some ES6 features, like + * default parameters. + */ + + +/** + * Since the Closure Compiler treats ES6 classes as @struct rather than @dict by default, + * it deters us from defining named properties on our components; eg: + * + * this['exports'] = {...} + * + * results in an error: + * + * Cannot do '[]' access on a struct + * + * So, in order to define 'exports', we must override the @struct assumption by annotating + * the class as @unrestricted (or @dict). Note that this must be done both here and in the + * subclass (eg, SerialPort), because otherwise the Compiler won't allow us to *reference* + * the named property either. + * + * TODO: Consider marking ALL our classes unrestricted, because otherwise it forces us to + * define every single property the class uses in its constructor, which results in a fair + * bit of redundant initialization, since many properties aren't (and don't need to be) fully + * initialized until the appropriate init(), reset(), restore(), etc. function is called. + * + * The upside, however, may be that since the structure of the class is completely defined by + * the constructor, JavaScript engines may be able to optimize and run more efficiently. + * + * @unrestricted + */ +class Component { + /** + * Component(type, parms, bitsMessage) + * + * A Component object requires: + * + * type: a user-defined type name (eg, "CPU") + * + * and accepts any or all of the following (parms) properties: + * + * id: component ID (default is "") + * name: component name (default is ""; if blank, toString() will use the type name only) + * comment: component comment string (default is undefined) + * + * Component subclasses will usually have additional (parms) properties. + * + * @param {string} type + * @param {Object} [parms] + * @param {number} [bitsMessage] selects message(s) that the component wants to enable (default is 0) + */ + constructor(type, parms, bitsMessage) + { + this.type = type; + + if (!parms) parms = {'id': "", 'name': ""}; + + this.id = parms['id'] || ""; + this.name = parms['name']; + this.comment = parms['comment']; + this.parms = parms; + + /* + * The following Component properties need to be accessible by other machines and/or command scripts; + * well, OK, or we could have exported some new functions to walk the contents of these properties, as we + * did with findMachineComponent(), but this works just as well. + * + * Also, while the double-assignment looks silly (ie, using both dot and bracket property notation), it + * resolves a complaint from the Closure Compiler, because if we use ONLY bracket notation here, then the + * Compiler wants us to change all the other references to bracket notation as well. + */ + this.exports = this['exports'] = {}; + this.bindings = this['bindings'] = {}; + + var i = this.id.indexOf('.'); + if (i < 0) { + this.idComponent = this.id; + } else { + this.idMachine = this.id.substr(0, i); + this.idComponent = this.id.substr(i + 1); + } + + /* + * Gather all the various component flags (booleans) into a single "flags" object, and encourage + * subclasses to do the same, to reduce the property clutter we have to wade through while debugging. + */ + this.flags = { + ready: false, + busy: false, + busyCancel: false, + initDone: false, + powered: false, + unloading: false, + error: false + }; + + this.fnReady = null; + this.clearError(); + this.bitsMessage = bitsMessage || 0; + + this.cmp = null; + this.bus = null; + this.cpu = null; + this.dbg = null; + + /* + * TODO: Consider adding another parameter to the Component() constructor that allows components to tell + * us if they support single or multiple instances per machine. For example, there can be multiple SerialPort + * components per machine, but only one CPU component (some machines also support an FPU, but that component + * is considered separate from the CPU). + * + * It's not critical, but it would help catch machine configuration errors; for example, a machine that mistakenly + * includes two CPU components may, aside from wasting memory, end up with odd side-effects, like unresponsive + * CPU controls. + */ + Component.add(this); + } + + /** + * Component.add(component) + * + * @param {Component} component + */ + static add(component) + { + /* + * This just generates a lot of useless noise, handy in the early days, not so much these days.... + * + * if (DEBUG) Component.log("Component.add(" + component.type + "," + component.id + ")"); + */ + Component.components.push(component); + } + + /** + * Component.addMachine(idMachine) + * + * @param {string} idMachine + */ + static addMachine(idMachine) + { + Component.machines[idMachine] = {}; + } + + /** + * Component.addMachineResource(idMachine, sName, data) + * + * @param {string} idMachine + * @param {string|null} sName (name of the resource) + * @param {*} data + */ + static addMachineResource(idMachine, sName, data) + { + /* + * I used to assert(Component.machines[idMachine]), but when we're running as a Node app, embed.js is not used, + * so addMachine() is never called, so resources do not need to be recorded. + */ + if (Component.machines[idMachine] && sName) { + Component.machines[idMachine][sName] = data; + } + } + + /** + * Component.getMachineResources(idMachine) + * + * @param {string} idMachine + * @return {Object|undefined} + */ + static getMachineResources(idMachine) + { + return Component.machines[idMachine]; + } + + /** + * Component.getTime() + * + * @return {number} the current time, in milliseconds + */ + static getTime() + { + return Date.now() || +new Date(); + } + + /** + * Component.log(s, type) + * + * For diagnostic output only. + * + * @param {string} [s] is the message text + * @param {string} [type] is the message type + */ + static log(s, type) + { + if (!COMPILED) { + if (s) { + var sElapsed = "", sMsg = (type? (type + ": ") : "") + s; + if (typeof Usr != "undefined") { + if (Component.msStart === undefined) { + Component.msStart = Component.getTime(); + } + sElapsed = (Component.getTime() - Component.msStart) + "ms: "; + } + if (window && window.console) console.log(sElapsed + sMsg.replace(/\n/g, ' ')); + } + } + } + + /** + * Component.assert(f, s) + * + * Verifies conditions that must be true (for DEBUG builds only). + * + * The Closure Compiler should automatically remove all references to Component.assert() in non-DEBUG builds. + * TODO: Add a task to the build process that "asserts" there are no instances of "assertion failure" in RELEASE builds. + * + * @param {boolean} f is the expression we are asserting to be true + * @param {string} [s] is description of the assertion on failure + */ + static assert(f, s) + { + if (DEBUG) { + if (!f) { + if (!s) s = "assertion failure"; + Component.log(s); + throw new Error(s); + } + } + } + + /** + * Component.print(s) + * + * Components that inherit from this class should use this.print(), rather than Component.print(), because + * if a Control Panel is loaded, it will override only the instance method, not the class method (overriding the + * class method would improperly affect any other machines loaded on the same page). + * + * @this {Component} + * @param {string} s + */ + static print(s) + { + if (!COMPILED) { + var i = s.lastIndexOf('\n'); + if (i >= 0) { + Component.println(s.substr(0, i)); + s = s.substr(i + 1); + } + Component.printBuffer += s; + } + } + + /** + * Component.println(s, type, id) + * + * Components that inherit from this class should use this.println(), rather than Component.println(), because + * if a Control Panel is loaded, it will override only the instance method, not the class method (overriding the + * class method would improperly affect any other machines loaded on the same page). + * + * @param {string} [s] is the message text + * @param {string} [type] is the message type + * @param {string} [id] is the caller's ID, if any + */ + static println(s, type, id) + { + if (!COMPILED) { + s = Component.printBuffer + (s || ""); + Component.log((id? (id + ": ") : "") + (s? ("\"" + s + "\"") : ""), type); + Component.printBuffer = ""; + } + } + + /** + * Component.notice(s, fPrintOnly, id) + * + * notice() is like println() but implies a need for user notification, so we alert() as well. + * + * @param {string} s is the message text + * @param {boolean} [fPrintOnly] + * @param {string} [id] is the caller's ID, if any + * @return {boolean} + */ + static notice(s, fPrintOnly, id) + { + if (!COMPILED) { + Component.println(s, Component.TYPE.NOTICE, id); + } + if (!fPrintOnly) Component.alertUser((id? (id + ": ") : "") + s); + return true; + } + + /** + * Component.warning(s) + * + * @param {string} s describes the warning + */ + static warning(s) + { + if (!COMPILED) { + Component.println(s, Component.TYPE.WARNING); + } + Component.alertUser(s); + } + + /** + * Component.error(s) + * + * @param {string} s describes the error; an alert() is displayed as well + */ + static error(s) + { + if (!COMPILED) { + Component.println(s, Component.TYPE.ERROR); + } + Component.alertUser(s); + } + + /** + * Component.alertUser(sMessage) + * + * @param {string} sMessage + */ + static alertUser(sMessage) + { + if (window) { + window.alert(sMessage); + } else { + Component.log(sMessage); + } + }; + + /** + * Component.confirmUser(sPrompt) + * + * @param {string} sPrompt + * @returns {boolean} true if the user clicked OK, false if Cancel/Close + */ + static confirmUser(sPrompt) + { + var fResponse = false; + if (window) { + fResponse = window.confirm(sPrompt); + } + return fResponse; + } + + /** + * Component.promptUser() + * + * @param {string} sPrompt + * @param {string} [sDefault] + * @returns {string|null} + */ + static promptUser(sPrompt, sDefault) + { + var sResponse = null; + if (window) { + sResponse = window.prompt(sPrompt, sDefault === undefined? "" : sDefault); + } + return sResponse; + } + + /** + * Component.appendControl(control, sText) + * + * @param {Object} control + * @param {string} sText + */ + static appendControl(control, sText) + { + control.value += sText; + /* + * Prevent the + + +
    +
    + +
    +
    + + +
    +
    +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    + + + + +
    +
    + +
    +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + + + + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + + + + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + ; + + + + + + + + + + + + + + + : + + + + + + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + + + + + ; + + + + + + + + + + + + + + + + + + + + + + + + + + + + 8088 + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + 1 + + + + + + + null + + + + + + 0 + + + + + + + -1 + + + + + + + -1 + + + + + + + -1 + + + + + + ,model:'',stepping:'',fpu:,cycles:,multiplier:,autoStart:,addrReset:,csStart:,csInterval:,csStop: + + + + + + + + + + + + + + + 8087 + + + + + + + + + + + + ,model:'',stepping:'' + + + + + + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + true + + + + + + false + + + + + + {} + + + + + + + + + + + + + + + + + chipset + ,model:'',scaleTimers:,sw1:'',sw2:'',sound:,floppies:,monitor:'',rtcDate:'' + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + device + ,type:'',baudReceive:,baudTransmit:,autoMount:'' + + + + + + + + + + + + + + + + + + + + keyboard + ,model:'' + + + + + + + + + + + + + + + 0 + + + + + + + + + + + parallel + ,adapter:,binding:'' + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + + 0 + + + + + + + 0 + + + + + + + false + + + + + serial + ,adapter:,baudReceive:,baudTransmit:,binding:'',tabSize:,charBOL:,upperCase: + + + + + + + + + + + + + + + + + + + + mouse + ,serial:'' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + fdc + ,autoMount:'',sortBy:'' + + + + + + + + + + + + + + + + + + + + + xt + + + + + hdc + ,drives:'',type:'' + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + null + + + + + + + + + + + + + + + + + rom + ,addr:,size:,alias:,file:'',notify:'' + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + null + + + + + + null + + + + + + true + + + + + ram + ,addr:,size:,file:'',load:,exec:,test: + + + + + + + + + + + + + + + + + + + + + null + + + + + + + 256 + + + + + + + 224 + + + + + + + black + + + + + + 0 + + + + + + 0 + + + + + + false + + + + + + 1bpp + + + + + + 0 + + + + + + 0 + + + + + + 1 + + + + + + 0 + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + false + + + + + + 1 + + + + + + 1 + + + + + + + 80 + + + + + + + 25 + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + 0 + + + + + + null + + + + + + 0 + + + + + + 60 + + + + + + 0.5 + + + + + video + ,model:'',mode:,screenWidth:,screenHeight:,screenColor:'',screenRotate:,bufferAddr:,bufferRAM:,bufferFormat:'',bufferCols:,bufferRows:,bufferBits:,bufferLeft:,bufferRotate:,memory:,switches:'',scale:,cellWidth:,cellHeight:,charCols:,charRows:,fontROM:'',fontColor:'',touchScreen:'',autoLock:,aspectRatio:,smoothing:,interruptRate:,refreshRate:,flicker: + + + + + + + + + + + + + + + 16 + + + + + + + + + + + + + + + + + debugger + ,base:,commands:'',messages:'' + + + + + + + + + + + + + + panel + + + + + + + + + + + + + + + + + + + + + true + + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + computer + ,autoPower:,busWidth:,resume:'',state:'' + + + + + + + + diff --git a/versions/pcx86/1.36.0/document.css b/versions/pcx86/1.36.0/document.css new file mode 100644 index 000000000..7072b406e --- /dev/null +++ b/versions/pcx86/1.36.0/document.css @@ -0,0 +1,162 @@ +@CHARSET "UTF-8"; + +.page { + margin: 2% 2%; + padding: 2% 2%; + min-width: 30em; + overflow: auto; + font-size: large; + font-family: Helvetica, Arial, sans-serif; + background: #303030; + color: #ccc; + +} +.page-header { +} +.page-header-title { + text-align: center; + +} +.page a { + color: #7fc07f; + text-decoration: none; +} +a.footlink, a.paralink { + text-decoration: none; +} +a.footlink:link, a.paralink:link { + color: blue; +} +a.footlink:visited, a.paralink:visited { + color: blue; +} +.galleryitem { + float: left; + width: 200px; +} +.item { + float: left; + width: 2em; + text-indent: 1em; +} +.list { + margin-left: 3em; + text-indent: 0; + text-align: justify; +} +ul { + list-style: none; +} +div.pnumber { + float: left; + width: 2em; + text-indent: 1em; +} +div.pitem { + margin-left: 10em; +} +p.indent, .justified p { + text-indent: 2em; + text-align: justify; + line-height: 1.5em; +} +p.noindent { + text-indent: 0; + text-align: justify; +} +p.center, .center { + text-align: center; +} +li.para { + margin-top: 1em; + margin-bottom: 1em; +} +.left { + text-align: left; +} +.right { + text-align: right; +} +blockquote.tag { + font-size: small; + font-family: Monaco, Fixed, monospace; + margin-top: 0; + margin-bottom: 0; +} +.blockquote { + padding-left: 1em; + text-indent: 0; + text-align: justify; +} +.italics { + font-style: italic; +} +.medium { + font-size: medium; +} +.small { + font-size: x-small; +} +.smallcaps { + font-variant: small-caps; +} +.strike { + text-decoration: line-through; +} +.summation, .bracelist { + display: inline-block; + position: relative; + vertical-align: middle; + text-align: center; + margin-bottom: 0.5ex; + text-indent: 0; +} +.bracelist-symbol { + font-size: 3em; + vertical-align: -40%; +} +.summation .summation-lower, .summation .summation-upper, .bracelist-item { + display: block; + font-size: 75%; + text-align: center; +} +.summation .summation-upper { + margin-bottom: 0; + margin-left: 0.8ex; + font-style: italic; +} +.summation .summation-lower{ + margin-bottom: -0.6ex; + font-style: italic; +} +.summation .summation-symbol { + font-size: 2em; +} +p sup { + vertical-align: baseline; + position: relative; + bottom: .5em; + font-size: small; +} +p sub { + vertical-align: baseline; + position: relative; + bottom: -.5em; + font-size: small; +} +.footnote { + font-size: medium; + text-indent: 1em; + text-align: justify; + margin-top: .5em; +} +.image-right { + float: right; + margin-left: 1em; + margin-top: 1em; + margin-bottom: 1em; +} +.image-caption { + font-size: small; + text-align: center; +} \ No newline at end of file diff --git a/versions/pcx86/1.36.0/document.xsl b/versions/pcx86/1.36.0/document.xsl new file mode 100644 index 000000000..a16a36ab2 --- /dev/null +++ b/versions/pcx86/1.36.0/document.xsl @@ -0,0 +1,452 @@ + + + + + +]> + + + + + + + + + +

    +
    + + + + + + + +

    +
    + +

    +
    +
    +
    + + + + + + +
    +
    + + +
    + +   + + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + +

    +
    + + +

    +
    + + +

    +
    + + +
    +
    + + +
    +
    + + + + + + + + + + + + + + +
    +
    + + +
    +
    + + +
  • +
    + + +
    image
    +
    + + +
    +
    + + + + +
    {.}
    +
    + +
    {.}
    +
    +
    +
    + + + + + + + + + + < + > + + + + × + + ÷ + σ + + + + + + + + + + + + { + + + + + + + + + + [] + + + + +
    + +
    +
    + + + , and + + + + + MDY + + + + + + + + + + + + + + + + + + + + January + February + March + April + May + June + July + August + September + October + November + December + + + , + + + + + +

    + +
    +
    + + +
    + {.}
    +
    +
    +
    + + + +

    Timeline

    +
    + +

    +
    +
    + +
    +
    + + + + + + + + + +

    +
    + +
    +
    +
    + + + +

    People

    +
    + +

    +
    +
    + +
    +
    + + +

    + +
    + + +

    +
      + +
    +
    + + + + + + + + + + +
  • + +
  • +
    + + + +

    +
    +

    + +

    +
    +
    + + + + false + + + + + + [Original] + + + + + + + + + + [] + + +
    by
    + + +
    + [Source: + + + + + + + ] +
    +
    +
    + + + +

    Resources

    +
    + +

    +
    +
    + +
    +
    + + +

    + +
    + + + +

    +
    +
      + +
    +
    + + +
  • +
    + + + +

    +
    +
    + +
    +
    + + + +

    +
    + +
    + + + +

    +
    +
      + +
    +
    + + + + + +
      + +
    +
    + + + + +
  • +
    + +
  • +
    + +
  • +
    +
    +
    + + +
  • +
    + + + + + + + + + + +
    + < ="" + + ></> + ></> + /> + +
    +
    + +
    diff --git a/versions/pcx86/1.36.0/machine.xsl b/versions/pcx86/1.36.0/machine.xsl new file mode 100644 index 000000000..55fd86662 --- /dev/null +++ b/versions/pcx86/1.36.0/machine.xsl @@ -0,0 +1,61 @@ + + + + +]> + + + + + + + + + + + + + + + + + js + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    +
    + + + + + , + +
    +
    + +
    + + + + -dbg + + + + + + +
    + +
    diff --git a/versions/pcx86/1.36.0/manifest.xsl b/versions/pcx86/1.36.0/manifest.xsl new file mode 100644 index 000000000..5ca522d53 --- /dev/null +++ b/versions/pcx86/1.36.0/manifest.xsl @@ -0,0 +1,247 @@ + + + + +]> + + + + + + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    Document Manifest

    +
    +
      + + + + None + + + + + + + + + + + + + + + + +
    +
    +
    +

    + +
    +
    +
    + + +
    + + + + + + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    Software Manifest

    +
    +
      + + + + None + + + + + Unknown + + + + + None + + + + + None + + + + + + + + + + + + + UpdatedReleased + + Unknown + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +

    No default machine specified for '' in manifest.xml

    +
    + +
    +
    +
    + + + + -dbg + + + + + + +
    + + + + + Unknown + +
  • +
      + + + + + + + + +
    • + + + + + + + + + + + + + + + + + + + + + + + + + +
        + +
      • + + + + + + +
      • +
        +
      +
      +
    • +
      + + + + + + + + +
    +
  • +
    +
    + +
    diff --git a/versions/pcx86/1.36.0/outline.xsl b/versions/pcx86/1.36.0/outline.xsl new file mode 100644 index 000000000..9a919c8bb --- /dev/null +++ b/versions/pcx86/1.36.0/outline.xsl @@ -0,0 +1,47 @@ + + + + +]> + + + + + + + + + + + + + + + + + + <xsl:value-of select="title"/><xsl:text> | </xsl:text><xsl:value-of select="$SITEHOST"/> + + + + + +
    +
    + +
    +
    + + + + -dbg + + + + + + +
    + +
    diff --git a/versions/pcx86/1.36.0/pcx86-dbg.js b/versions/pcx86/1.36.0/pcx86-dbg.js new file mode 100644 index 000000000..63336e8a5 --- /dev/null +++ b/versions/pcx86/1.36.0/pcx86-dbg.js @@ -0,0 +1,902 @@ +(function(){/* + http://pcjs.org/modules/shared/lib/diskapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/dumpapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/reportapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/userapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/keys.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/strlib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/weblib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/interrupts.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/messages.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/debugger.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/state.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/embed.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/defines.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/component.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/defines.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/panel.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/bus.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/memory.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/cpu.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86seg.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86cpu.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86fpu.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86func.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86help.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86mods.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86ops.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86op0f.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/chipset.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/rom.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/ram.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/keyboard.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/video.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/parallel.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/serial.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/mouse.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/disk.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/fdc.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/hdc.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/debugger.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/computer.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/save.js (C) Jeff Parsons 2012-2017 +*/ +var l,aa;function ca(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a;for(var d in b)if(Object.defineProperties){var e=Object.getOwnPropertyDescriptor(b,d);e&&Object.defineProperty(a,d,e)}else a[d]=b[d]} +for(var da="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},ea="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global?global:this,fa=["Math","trunc"],ga=0;gaa?-b:b};ka!=ja&&null!=ka&&da(ea,ia,{configurable:!0,writable:!0,value:ka}); +var la={163840:[40,1,8,,254],184320:[40,1,9,,252],327680:[40,2,8,,255],368640:[40,2,9,,253],737280:[80,2,9,,249],1228800:[80,2,15,,249],1474560:[80,2,18,,240],2949120:[80,2,36,,240],10653696:[306,4,17],21411840:[615,4,17],256256:[77,1,26,128],2494464:[203,2,12,512],5242880:[256,2,40,256],10485760:[512,2,40,256]},n={sp:0,up:1,vp:2,ll:3,wp:4,xp:5,yp:6,zp:7,Ap:8,Bp:9,Cp:10,Dp:11,Ep:12,Fp:13,Gp:14,Hp:15,Ip:16,Jp:17,Kp:18,Lp:19,Mp:20,Np:21,Op:22,Pp:23,Qp:24,Rp:25,Sp:26," ":32,"!":33,'"':34,"#":35,$:36, +"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,ge:65,wi:66,xi:67,yi:68,E:69,zi:70,Ai:71,Bi:72,Ci:73,Di:74,Ei:75,Fi:76,Gi:77,Hi:78,Ii:79,Ji:80,Q:81,Ki:82,Li:83,Mi:84,Ni:85,Oi:86,Pi:87,Qi:88,Ri:89,fg:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,he:97,zl:98,Bl:99,d:100,e:101,Ll:102,Ml:103,Nl:104,Ol:105,fn:106,k:107,jn:108,pn:109,n:110,wn:111,p:112,q:113,r:114,To:115,t:116,Xo:117, +Yo:118,Zo:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,Tp:127},ma={};ma[173]=n["-"];ma[186]=n[";"];ma[187]=n["="];ma[189]=n["-"];ma[188]=n[","];ma[190]=n["."];ma[191]=n["/"];ma[192]=n["`"];ma[219]=n["["];ma[220]=n["\\"];ma[221]=n["]"];ma[222]=n["'"];var na={};na[n["1"]]=n["!"];na[n["2"]]=n["@"];na[n["3"]]=n["#"];na[n["4"]]=n.$;na[n["5"]]=n["%"];na[n["6"]]=n["^"];na[n["7"]]=n["&"];na[n["8"]]=n["*"];na[n["9"]]=n["("];na[n["0"]]=n[")"];na[186]=n[":"];na[187]=n["+"];na[188]=n["<"];na[189]=n._; +na[190]=n[">"];na[191]=n["?"];na[192]=n["~"];na[219]=n["{"];na[220]=n["|"];na[221]=n["}"];na[222]=n['"'];na[173]=n._;na[61]=n["+"];na[59]=n[":"]; +function oa(a,b){var c;if(a){b||(b=10);var d,e,f=0=b&&(e=a.match(/(-?[0-9]+)B([0-9]*)/))&& +(a=e[1],d=35-((e[2]||35)&255));e=a;((f=b)&&10!=f?16==f?e.match(/^-?[0-9a-f]+$/i):8==f?e.match(/^-?[0-7]+$/):2==f&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(g=parseInt(a,b))&&(d&&(0>g&&(g+=Math.pow(2,36)),g=0a&&-1a&&(a+=Math.pow(b,c)),a>=Math.pow(b,c)&&(c=Math.ceil(Math.log(a)/Math.log(b))));for(var g=e||-1;0=h?48:55),f=String.fromCharCode(h)+f;a=Math.trunc(a/b)}g--}return(void 0===d?"":d)+f}function ra(a,b,c){b?36=b?8:262143>=b?18:36);return qa(a,2,b,"",c)} +function sa(a,b,c){b?12=b?6:16777215>=b?8:12);return qa(a,8,b,c?"0o":"")}function q(a,b,c){b?9=b?4:4294967295>=b?8:9);return qa(a,16,b,c?"0x":"")}function r(a){return q(a,2,!0)}function ta(a){return q(a,4,!0)}function ua(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0"']/g,function(a){return ya[a]})}function za(a,b,c){return c?(" "+a).slice(-b):(a+" ").slice(0,b)}function Aa(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")} +var ya={"&":"&","<":"<",">":">",'"':""","'":"'"},Ca={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",10:"LF",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"};function Da(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[g]);0a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())} +function Fa(a){var b,c="";b||(b=new Date);for(var d=b.getHours(),e=b.getDate(),f=b.getMonth()+1,g=0;gd?"am":"pm";break;case "d":c+=("0"+e).slice(-2);break;case "D":c+=Ga[b.getDay()].substr(0,3);break;case "F":c+=Ha[f-1];break;case "g":c+=d?12=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.qh|g<>a.shift} +function Ka(a,b){var c;if(Array.prototype.indexOf)return a.indexOf(b,c);c=c||0;0>c&&(c+=a.length);0>c&&(c=0);for(var d=a.length;ca?this.Ce=this.id:(this.De=this.id.substr(0,a),this.Ce=this.id.substr(a+1));this.ba={ready:!1,pf:!1,dh:!1,rg:!1,dc:!1,Sf:!1,error:!1};this.qg=null;this.ba.error=!1;this.ic=c||0;this.ca=this.H=this.ma=this.pa=null;sb.push(this)} +function tb(a,b,c){ub[a]&&b&&(ub[a][b]=c)}function mb(a){window&&window.alert(a)}function vb(a){var b=!1;window&&(b=window.confirm(a));return b}function wb(a,b){a.value+=b;b=a.value;8192e?d+=b+"\n":d=d.substr(0,e)+c+d.substr(e+b.length);8192=this.x&&a=this.y&&b=c>>2);d?(b=new Zb(a.x,a.y,a.Qc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new Zb(a.x,a.y,a.Qc*b/c|0,a.A),a.x+=b.Qc,a.Qc-=b.Qc);return b}function ac(a){rb.call(this,"Panel",a);this.F=this.G=this.L=-1}ca(ac,rb);l=ac.prototype;l.Cb=function(a,b,c,d){return this.pa&&this.pa.Cb(a,b,c,d)||this.H&&this.H.Cb(a,b,c,d)||this.C&&this.C.Cb(a,b,c,d)||this.ca&&this.ca.Cb(a,b,c,d)?!0:rb.prototype.Cb.call(this,a,b,c,d)}; +l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.H=c;this.ca=d;this.C=bc(a,"Keyboard")};l.Xb=function(a,b){b||cc();return!0};l.Wb=function(){return!0};l.$d=function(a,b){a.button||(this.L=b?0:-1,dc(this,a,b))};l.tf=function(a){dc(this,a)}; +function dc(a,b,c){var d=ec/null.offsetWidth,e=fc/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.L||(a.L=Math.abs(a.F-d)>Math.abs(a.G-b)?1:2),1==a.L?b=a.G:2==a.L&&(d=a.F));a.F=d;a.G=b;if(0<=d&&dd&&(f=d);c= +f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ga)){b=c;if(a.context&&a.N&&a.P){e=ic-jc;f=a.N.width;a.P.fillStyle=kc;a.P.fillRect(0,e,f,jc);lc(a,e+mc,a.N,a.P);a.W=a.ha.width/24|0;if(null==b)nc(a,"Mouse over memory to dump");else for(nc(a,q(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var k;k=a.ma;var m=b++;k=k.aa[(m&k.C)>>>k.A].de(m&k.D,m);nc(a,q(k,2),null,1);g+=32<=k&&128>k?String.fromCharCode(k):"."}nc(a,g,null,0,1)}a.context.drawImage(a.N,0,e,f,jc,a.Ea,a.Ia,a.va,a.za)}a.ga=c}}} +function oc(a,b,c,d){a.A.lf[a.A.cj++]={Pl:b,Kd:c,type:d};return Ia(hc,b,c,0,d)}function lc(a,b,c,d){var e,f=null.style.color,g=a.sa=10;a.B=g;a.I=b;a.J=a.aa=mc;e||(e=a.Z||a.aa+"px "+pc);a.M=a.Z=e;c&&(a.ha=c);d&&(a.D=d,a.ka=f||"white")}function nc(a,b,c,d,e){a.D.font=a.M;a.D.fillStyle=a.ka;a.D.fillText(b,a.B,a.I);a.B+=a.W;null!=c&&(16!=a.Da?b=c.toString():(b=8>a.qa?"0x":"",b+=q(c,a.qa)),a.D.fillText(b,a.B,a.I),a.B+=a.W);d&&(a.B+=a.W*d);e&&(a.B=a.sa,a.I+=(a.J+2)*(e||1))} +function cc(){for(var a=!1,b=Bb(document,"pcx86","panel"),c=0;c>2,qc=fc,ic=fc,kc="black",jc=fc>>1;eb(cc); +function sc(a,b,c){rb.call(this,"Bus",a);this.H=b;this.ca=c;this.I=a.busWidth||20;this.P=Math.pow(2,this.I);this.N=this.C=this.P-1|0;this.A=32==this.I||20>=this.I?12:24>=this.I?14:15;this.B=1<>2;this.D=this.B-1;this.M=this.P/this.B|0;this.W=this.M-1;this.F=[];this.G=[];this.K=this.L=!1;this.X=[];this.Z=[];a=new x;tc(a,this.ca);this.aa=Array(this.M);for(b=0;b>>a.A;0g&&(p=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.ya)return k.Be+=k.ya-f,k.ya=f,!0;if(f>=k.ya+k.Be){p=k.size-(f-m);p>g&&(p=g);k.Be=f-k.ya+p;f=m+a.B;g-=p;h++;continue}}return xc(a,yc,f,g)}f=new x(f,p,a.B,d,e);tc(f,a.ca,k);a.aa[h++]=f;f=m+a.B;g-=p}return 0>=g?(zc(a.H),a.H.ba.jb||a.status(Math.floor(c/1024)+"Kb "+Ac[d]+" at "+q(b)),!0):xc(a,Bc,b,c)} +function uc(a,b){32==a.I?b?a.J&&(Cc(a,1048576,1048576,a.J),a.J=null):a.J||(a.J=Dc(a,1048576,1048576),Cc(a,1048576,1048576,Dc(a,0,1048576))):20>>this.A;0>>a.A;0>>=a.A;0>>a.A;0>>this.A].Bc(a&this.D,a)};function Pc(a,b){var c=b&a.D,d=(b&a.C)>>>a.A;return c!=a.D?a.aa[d].Nf(c,b):a.aa[d++].de(c,b)|a.aa[d&a.W].de(0,b+1)<<8} +l.fc=function(a,b){this.aa[(a&this.C)>>>this.A].Dc(a&this.D,b&255,a)};function Qc(a,b,c){var d=b&a.D,e=(b&a.C)>>>a.A;d!=a.D?a.aa[e].ui(d,c&65535,b):(a.aa[e++].cf(d,c&255,b),a.aa[e&a.W].cf(0,c>>8&255,b+1))}l.Aj=function(){return null}; +function Rc(a,b){var c=0,d=[],e=!a.J&&a.N==a.C;e||uc(a,!0);for(var f=0;f>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,e);a.ca&&a.L!=g[1]&&Zc(a.ca,b,k)}else a.ca&&(Sb(a.ca,a,b,k,e),a.L&&Zc(a.ca,b,k));f+=h<<3;b+=h;c-=h}}function xc(a,b,c,d,e){b="Memory block error ("+b+": "+q(c)+","+q(d)+")";e?a.ca?a.ca.message(b):a.log(b):mb(b);return!1}var hc,$c={Mk:20,count:8,kq:1,type:3},ad=0,bd;for(bd in $c){var cd=$c[bd];$c[bd]={qh:(1<>1),this.Y=new Int32Array(this.I,0,c>>2),Fc(this,Kc?Lc:Nc);else{this.Y=Array(c>>2);for(e=0;e>2),b=0;b>8,c)};l.si=function(a,b,c){this.Dc(a++,b&255,c++);this.Dc(a++,b>>8&255,c++);this.Dc(a++,b>>16&255,c++);this.Dc(a,b>>>24,c)};l.Do=function(a){return this.Y[a>>2]>>>((a&3)<<3)&255}; +l.Po=function(a){var b=a>>2;a=(a&3)<<3;var c=this.Y[b]>>a;return 24>a?c&65535:c&255|(this.Y[b+1]&255)<<8};l.Jo=function(a){var b=a>>2;a=(a&3)<<3;var c=this.Y[b];a&&(c=c>>>a|this.Y[b+1]<<32-a);return c};l.bp=function(a,b){var c=a>>2;a=(a&3)<<3;this.Y[c]=this.Y[c]&~(255<>2;a=(a&3)<<3;24>a?this.Y[c]=this.Y[c]&~(65535<>8);this.Oa=!0}; +l.ip=function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<>>32-a}else this.Y[c]=b;this.Oa=!0};l.Co=function(a,b){this.ca&&null!=this.ya&&wd(this.ca,this.ya+a)||this.C&&xd(this.C,b,1,!1);return this.de(a,b)};l.Oo=function(a,b){this.ca&&null!=this.ya&&wd(this.ca,this.ya+a,2)||this.C&&xd(this.C,b,2,!1);return this.Nf(a,b)};l.Io=function(a,b){this.ca&&null!=this.ya&&wd(this.ca,this.ya+a,4)||this.C&&xd(this.C,b,4,!1);return this.mi(a,b)}; +l.ap=function(a,b,c){this.ca&&null!=this.ya&&yd(this.ca,this.ya+a)||this.C&&xd(this.C,c,1,!0);this.D?this.df(0,b,c):this.cf(a,b,c)};l.np=function(a,b,c){this.ca&&null!=this.ya&&yd(this.ca,this.ya+a,2)||this.C&&xd(this.C,c,2,!0);this.D?this.df(0,b,c):this.ui(a,b,c)};l.hp=function(a,b,c){this.ca&&null!=this.ya&&yd(this.ca,this.ya+a,4)||this.C&&xd(this.C,c,4,!0);this.D?this.df(0,b,c):this.K(a,b,c)};l.Fo=function(a,b){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.F;return this.vd.Bc(a,b)}; +l.Ro=function(a,b){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.F;return this.vd.Mf(a,b)};l.Lo=function(a,b){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.F;return this.vd.Pd(a,b)};l.ep=function(a,b,c){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.J;this.vd.Dc(a,b,c)};l.qp=function(a,b,c){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.J;this.vd.Uf(a,b,c)};l.kp=function(a,b,c){this.ob.Y[this.A]|=this.F;this.pb.Y[this.B]|=this.J;this.vd.Tf(a,b,c)}; +l.Go=function(a,b){return zd(this.C,b,!1).Bc(a,b)};l.So=function(a,b){return zd(this.C,b,!1).Mf(a,b)};l.Mo=function(a,b){return zd(this.C,b,!1).Pd(a,b)};l.fp=function(a,b,c){zd(this.C,c,!0).Dc(a,b,c)};l.rp=function(a,b,c){zd(this.C,c,!0).Uf(a,b,c)};l.lp=function(a,b,c){zd(this.C,c,!0).Tf(a,b,c)};l.Bo=function(a){return this.Pa[a]};l.Vk=function(a){return this.Pa[a]};l.Eo=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Bc=this.Vk;return this.Pa[a]}; +l.No=function(a){return this.G.getUint16(a,!0)};l.$k=function(a){return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.Wd[a>>1]};l.Qo=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Mf=this.$k;return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.Wd[a>>1]};l.Ho=function(a){return this.G.getInt32(a,!0)};l.Xk=function(a){return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.Y[a>>2]}; +l.Ko=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Pd=this.Xk;return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.Y[a>>2]};l.$o=function(a,b){this.Pa[a]=b;this.Oa=!0};l.il=function(a,b){this.Pa[a]=b;this.Oa=!0};l.cp=function(a,b){this.Pa[a]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Dc=this.il;this.vd.Oa=!0};l.mp=function(a,b){this.G.setUint16(a,b,!0);this.Oa=!0};l.kl=function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.Wd[a>>1]=b;this.Oa=!0}; +l.pp=function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.Wd[a>>1]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Uf=this.kl;this.vd.Oa=!0};l.gp=function(a,b){this.G.setInt32(a,b,!0);this.Oa=!0};l.jl=function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.Y[a>>2]=b;this.Oa=!0}; +l.jp=function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.Y[a>>2]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Tf=this.jl;this.vd.Oa=!0};function Ad(a){Tb&&!Kc&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a} +var gd=0,Jc=2,hd=5,jd=6,Bd=["black","blue","green","cyan"],Ac="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),fd=0,qd=[],Oc=[x.prototype.Do,x.prototype.bp,x.prototype.Po,x.prototype.op,x.prototype.Jo,x.prototype.ip],vd=[x.prototype.Co,x.prototype.ap,x.prototype.Oo,x.prototype.np,x.prototype.Io,x.prototype.hp],kd=[x.prototype.Fo,x.prototype.ep,x.prototype.Ro,x.prototype.qp,x.prototype.Lo,x.prototype.kp],id=[x.prototype.Go,x.prototype.fp,x.prototype.So,x.prototype.rp,x.prototype.Mo,x.prototype.lp]; +if(Tb)var Nc=[x.prototype.Bo,x.prototype.$o,x.prototype.No,x.prototype.mp,x.prototype.Ho,x.prototype.gp],Lc=[x.prototype.Vk,x.prototype.il,x.prototype.$k,x.prototype.kl,x.prototype.Xk,x.prototype.jl],Cd=[x.prototype.Eo,x.prototype.cp,x.prototype.Qo,x.prototype.pp,x.prototype.Ko,x.prototype.jp]; +function Dd(a,b){rb.call(this,"CPU",a,1);b=a.cycles||b;var c=a.multiplier||1;this.T={};this.T.zd=b;this.T.Md=c;this.T.ug=Math.round(this.T.zd/1E4)/100;this.T.te=this.T.ug*this.T.Md;this.ba.jb=!1;this.ba.ri=!1;this.ba.ke=a.autoStart;this.ba.oj=!1;this.ba.Le=!1;this.T.uf=this.T.Ve=0;this.T.wf=a.csStart;this.T.Ue=a.csInterval;this.T.We=a.csStop;this.Ul=this.Vf.bind(this);Ob(this)}ca(Dd,rb);l=Dd.prototype; +l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.ca=d;for(b=0;b=a.T.Ve&&(a.T.Ve+=a.T.Ue,c=!0);0<=a.T.We&&a.T.We<=Kd(a)&&(a.T.Ue=a.T.We=-1,Hd(a),a.Kb(),c=!0);c&&a.O(Kd(a)+" cycles: checksum="+q(a.T.uf))}} +l.Cb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.na[b]=c;a=!0;break;case "run":this.na[b]=c;c.onclick=function(){var a;if(a=d.pa)if(a=d.pa,a.ba.dc)a=!0;else{var b=null,c,h=Db(a.id);for(c=0;ca.T.ug&&(c=Math.round(c/a.T.Md));return c}function Gd(a){a.T.ae=0;a.Hd=a.nd=a.cd=a.A=0;Hd(a);Ld(a,1)} +function Ld(a,b,c){var d=!1;if(void 0!==b){(c||a.ba.jb)&&.8>a.T.ae/a.T.te?b=1:d=!0;a.T.Md=b;b=a.T.ug*a.T.Md;if(a.T.te!=b){a.T.te=b;b=a.T.te.toFixed(2)+"Mhz";var e=a.na.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.pa&&a.pa.od()}Od(a,a.nd);a.nd=0;a.T.be=Ma();a.T.ue=0;Pd(a);return d}function Td(a){a.cd-=a.A;a.A=0} +l.Vf=function(a){if(Qb(this,!0)){if(!this.ba.jb){Ld(this);this.pa&&this.pa.start(this.T.be,Kd(this));this.ba.jb=!0;this.ba.ri=!0;this.W&&this.W.start();var b=this.na.run;b&&(b.textContent="Halt");this.pa&&(Vd(this.pa,!0),a&&this.pa.od(!0))}this.T.wh>=this.T.zd&&Pd(this,!0);this.T.zf=0;this.T.vg=Ma();this.T.ue&&(a=this.T.vg-this.T.ue,a>this.T.Ij&&(this.T.be+=a,this.T.be>this.T.vg&&(this.T.be=this.T.vg)));try{do{var c=this.ba.Le?1:this.T.tn;if(this.W){Wd(this.W);var d=this.W;a=c;var e=d.G[0];if(e.qe){var f= +(Kd(d.H,d.P)-e.jd)/d.Ba|0,g=Xd(d,0)-f;e.mode==Yd&&(g-=f);var h=g*d.Ba|0;e.mode==Yd&&(h>>=1);a>h&&(a=h)}var c=a,k=this.W;a=c;if(k.A&&k.A[Zd]&$d){var m=k.Z-Kd(k.H,k.P);0m&&(a=m)}c=a}try{this.Og(c)}catch(v){if("number"!=typeof v)throw v;}var p=this.cd-this.A;this.nd+=p;this.T.zf+=p;Od(this,0,!0);Jd(this,p);this.T.yf-=p;0>=this.T.yf&&(this.T.yf+=this.T.Kj,this.pa&&ae(this.pa));this.T.xf-=p;0>=this.T.xf&&(this.T.xf+=this.T.Jj,this.pa&&Vd(this.pa));this.T.ve-=p;if(0>=this.T.ve){this.T.ve+=this.T.vh; +break}}while(this.ba.jb)}catch(v){this.Kb();Id(this);this.pa&&this.pa.stop(Ma(),Kd(this));Qb(this,!1);Mb(this,v.stack||v.message);return}c=setTimeout;d=this.Ul;this.T.ue=Ma();e=this.T.Ij;this.T.zf&&(e=Math.round(e*this.T.zf/this.T.vh));e-=this.T.ue-this.T.vg;if(f=this.T.ue-this.T.be)this.T.ae=Math.round(this.nd/(10*f))/100,864E5<=f&&(this.Hd=0,this.W&&Wd(this.W,!0),Ld(this));if(0>e||this.T.aee&&(this.T.be-=e),e=0;this.T.wh+=this.T.zf;this.T.ue+=e;c(d,e)}else Id(this),this.pa&&this.pa.stop(Ma(), +Kd(this))};l.Og=function(){return 0};l.Kb=function(a){Pb(this,!0);Td(this);Od(this,this.nd);this.nd=0;if(this.ba.jb){this.ba.jb=!1;this.W&&this.W.stop();var b=this.na.run;b&&(b.textContent="Run")}this.ba.complete=a};function Id(a,b){a.pa&&(ae(a.pa,b),Vd(a.pa,b))}var Qd=30,Rd=60,Sd=2,Ed=["power","reset"]; +function be(a,b,c,d){this.gc=a;this.ca=a.ca;this.id=b;this.Zb=c||"";this.U=0;this.Ka=65535;this.Pb=this.Ka+1;this.Ab=this.qc=this.ext=this.nb=this.type=this.ua=0;this.Lb=-1;this.V=this.Mc=2;this.R=this.wa=65535;this.G=this.ph;this.D=this.gj;this.F=this.ij;this.A={U:-1,ua:0,Ka:0,nb:0,type:0,ext:0,Lb:-1};1==this.id&&(this.Jf=0,this.C=null,this.Re=!1,this.H=Array(32),this.B=[]);ce(this,!0,d)}function de(a,b){a.B.push(b);return[a.B.length,ee]}l=be.prototype; +l.ph=function(a){this.U=a&65535;return this.ua=this.U<<4};l.tg=function(a,b){var c,d,e=this.gc;a&=65535;a&4?(c=e.Eb.ua,d=c+e.Eb.Ka|0):(c=e.Ib,d=e.Hc);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,fe(this,c,a,b);this.id>>0)+b<=this.Pb?this.ua+a|0:this.lg()};l.Dl=function(a,b){return(a>>>0)+b>this.Pb?this.ua+a|0:this.lg()};l.lg=function(){y.call(this.gc,13,0);return-1};l.hj=function(a,b){return(a>>>0)+b<=this.Pb?this.ua+a|0:this.mg()}; +l.El=function(a,b){return(a>>>0)+b>this.Pb?this.ua+a|0:this.mg()};l.mg=function(){y.call(this.gc,13,0);return-1};function ie(a,b,c,d,e){a.U=b;a.ua=d;a.Ka=e;a.Pb=(e>>>0)+1;a.nb=c;a.type=c&7936;a.ext=c>>16&192;a.Lb=(b&4?a.gc.Eb.ua:a.gc.Ib)+(b&65528)|0;a.id>>0)+1;a.nb=e;a.type=e&7936;a.ext=0;a.Lb=b;a.id>>0)+1,a.nb=a.A.nb,a.type=a.A.type,a.ext=a.A.ext,a.Lb=a.A.Lb,a.A.U=-1,ce(a,!0,!0,!1),a.ua;a.A.U=-1;var f=e.ja(b+0),g=e.ja(b+4),h=g&7936,k=e.ja(b+2)|(g&255)<<16,m=e.ja(b+6),p=c&65528;if(80386<=e.da){var v=f,k=k|(m&65280)<<16,f=f|(m&15)<<16;m&128&&(f=f<<12|4095)}switch(a.id){case le:var u=a.C;a.Re=!1;if(u&&c==ee&&a.B.length){var F=a.B[a.Jf-1];if(F&&!F())return-1}var H=c&3,I=(g&24576)>>13,F=-1,L,P;p||b>= +e.Ib&&b=a.Ab&&(H>a.Ab&&(F=me(e),ne(e,me(e),!0),oe(e,F),a.Re=!0),F=0);else{if(256==h||2304==h)return pe(a,c,u)?a.ua:-1;if(1024==h)F=2,P=0,Hh||2048==(h&2560))return y.call(e,13,c&65532),-1;if(!(g&32768))return y.call(e,11,c&65532),-1}break;case he:if(!p||4096>h||512!=(h&2560))return y.call(e,13,c&65532),-1;if(!(g&32768))return y.call(e,12,c&65532), +-1;break;case je:u=h&-513;if(!p||256!=u&&2304!=u)return y.call(e,13,c&65532),-1;2304==u&&(a.Vi=k+e.ja(k+102)|0,a.xl=k+a.Ka|0);break;case ge:if(!(h&4096)&&768>>0)+1,a.nb=g,a.type=h,a.ext=m,a.Lb=b,ce(a,!0,!0,!1));return k} +function pe(a,b,c){var d=a.gc,e=a.Ab,f=d.ka.U,g=d.ka.ua;if(!c){if(!(d.ka.type&512))return y.call(d,13,b&65532),!1;d.gb(d.ka.Lb+4,d.ka.nb&=-513)}if(-1===d.ka.load(b))return!1;var h=d.ka.ua;if(!1!==c){if(d.ka.type&512)return y.call(d,13,b&65532),!1;d.gb(d.ka.Lb+4,d.ka.nb|=512)}d.ka.type=d.ka.type&-513|d.ka.nb&512;256==d.ka.type||768==d.ka.type?(d.gb(g+14,A(d)),d.gb(g+16,De(d)),d.gb(g+18,d.D),d.gb(g+20,d.I),d.gb(g+22,d.L),d.gb(g+24,d.G),d.gb(g+26,z(d)),d.gb(g+28,d.M),d.gb(g+30,d.K),d.gb(g+32,d.J),d.gb(g+ +34,d.oa.U),d.gb(g+36,d.Z.U),d.gb(g+38,d.X.U),d.gb(g+40,d.Da.U),d.Eb.load(d.ja(h+42)),Ee(d,d.ja(h+16)|(c?16384:0)),d.D=d.ja(h+18),d.I=d.ja(h+20),d.L=d.ja(h+22),d.G=d.ja(h+24),d.M=d.ja(h+28),d.K=d.ja(h+30),d.J=d.ja(h+32),d.oa.load(d.ja(h+34)),d.Da.load(d.ja(h+40)),Fe(d,d.ja(h+14),d.ja(h+36)),b=38,g=26,a.Ab>>0)+1)}; +function ce(a,b,c,d){void 0===c&&(c=!!(a.gc.qa&1));a.Rc=!1;if(c)if(a.load=a.tg,a.Gj=a.nn,a.ac=a.fj,a.bc=a.hj,void 0===d&&(d=!!(a.gc.P&131072)),d)a.load=a.G,a.ac=a.D,a.bc=a.F,a.Ab=a.qc=3,a.V=2,a.R=a.wa=65535,a.Ka=65535,a.Pb=a.Ka+1,a.Mc=a.V,a.Lb=-1,a.Re=!1;else{if(!(a.U&-4))a.ac=a.lg,a.bc=a.mg;else if(a.type&4096){6144==(a.type&6656)&&(a.ac=a.lg);if(a.type&2048||!(a.type&512))a.bc=a.mg;1024==(a.type&3072)&&(a.ac==a.fj&&(a.ac=a.Dl),a.bc==a.hj&&(a.bc=a.El),a.Rc=!0);b&&a.id>13,80386>a.gc.da||!(a.ext&64)?(a.V=2,a.R=65535):(a.V=4,a.R=-1),a.Mc=a.V,a.wa=a.R)}else a.load=a.ph,a.Gj=a.on,a.ac=a.gj,a.bc=a.ij,a.Ab=a.qc=0,a.Lb=-1,a.Re=!1}var le=1,xe=2,he=3,je=4,ge=6,ee=1; +function He(a){var b=+a.model||8088,c;switch(b){default:c=4772727;break;case 80286:c=6E6;break;case 80386:c=16E6}Dd.call(this,a,c);this.da=b;a=a.stepping;this.Sd=b+(a?oa(a,16):0);this.Ui=61442;this.Rd=1792;this.vi=28672;this.Wf=4;this.Ta=255;this.B=80286<=this.da?Vb:Ub;this.va=Ie;this.ej=Je;this.mj=Ke;this.rj=Le;if(80186<=this.da&&(this.va=Ie.slice(),this.ej=Je.slice(),this.mj=Ke.slice(),this.Ta=31,this.va[15]=Me,this.va[96]=Ne,this.va[97]=Oe,this.va[98]=Pe,this.va[99]=Me,this.va[100]=Me,this.va[101]= +Me,this.va[102]=Me,this.va[103]=Me,this.va[104]=Qe,this.va[105]=Re,this.va[106]=Se,this.va[107]=Te,this.va[108]=Ue,this.va[109]=Ve,this.va[110]=We,this.va[111]=Xe,this.va[192]=Ye,this.va[193]=Ze,this.va[200]=$e,this.va[201]=af,this.va[241]=bf,this.ej[7]=cf,this.mj[7]=cf,80286<=this.da)){this.Ui=2;this.Rd|=28672;this.Wf=0;this.va[15]=df;this.Gd=ef.slice();for(b=0;b=this.Sd&&(this.Gd[166]=qf,this.Gd[167]=rf)}}this.Zf=[];this.$f=[];this.bg=0;Gd(this);this.ba.complete=this.ba.nj=!1;this.xj=0;this.sc=this.aa=[];this.kb=this.Qg=this.Db=this.Xf=this.ef=this.ff=this.ed=0;xf(this)}ca(He,Dd);function yf(a,b,c,d){b=(d?a.sc:a.aa)[b>>>a.kb];c?--b.ne||ud(b):--b.me||td(b);d&&zc(a)} +function zf(a){var b;if(a.aa===a.sc){a.aa=Array(a.Xf);a.ag=new x(null,0,0,hd,null,a);tc(a.ag,a.ca);for(b=0;b>>20,f=a.sc[(a.Vc+e&a.ff)>>>a.kb],g=f.Pd(e);if(!(g&1))return d||Bf.call(a,b,!1,c),a.gf;if(!(g&4)&&3==a.Ma)return d||Bf.call(a,b,!0,c),a.gf;var h=(b&4190208)>>>10,g=a.sc[((g&-4096)+h&a.ff)>>>a.kb],k=g.Pd(h);if(!(k&1))return d||Bf.call(a,b,!1,c),a.gf;if(!(k&4)&&3==a.Ma)return d||Bf.call(a,b,!0,c),a.gf;c=a.sc[((k&-4096)+(b&4095)&a.ff)>>>a.kb];if(d)return c;d=b>>>a.kb;k=a.aa[d];b&=-4096;var m;0>2;b.pb=g;b.B=h>>2;Tb&&Kc&&c.Y&&!c.controller&&!c.me&&!c.ne?(b.Pa=c.Pa,b.Wd=c.Wd,b.Y=c.Y,Fc(b,Cd)):(b.F=c?Ad(32):0,b.J=c?Ad(96):0,Fc(b,kd));tc(b,a.ca,k);a.aa[d]=b;a.Yf.push(d);return b}function Cf(a){a.aa!==a.sc&&(a.aa=a.sc,a.ag=null,a.Yf=null,a.gf=null)}l=He.prototype;l.reset=function(){this.ba.jb&&this.Kb();xf(this);Gd(this);this.ba.error=!1}; +function Df(a,b){var c;switch(b){case 0:c=a.D;break;case 1:c=a.I;break;case 2:c=a.L;break;case 3:c=a.G;break;case 4:c=z(a);break;case 5:c=a.M;break;case 6:c=a.K;break;case 7:c=a.J}return c}function Ef(a,b,c){switch(b){case 0:a.D=c;break;case 1:a.I=c;break;case 2:a.L=c;break;case 3:a.G=c;break;case 4:oe(a,c);break;case 5:a.M=c;break;case 6:a.K=c;break;case 7:a.J=c}} +function xf(a){a.D=0;a.G=0;a.I=0;a.L=0;a.zc=0;a.M=0;a.K=0;a.J=0;a.vc=!1;a.Ba=a.Za=0;a.gn=[0,0];a.hn=[0,0];a.xa=0;a.wj=0;a.ga=0;a.qa=65520;a.Nb=0;a.bd=1023;a.P=a.lc=0;a.Ud=a.jf=a.Td=a.Vd=0;a.Kc=-1;a.pd=a.Lc=-1;a.qd=a.sa=-1;a.Z=new be(a,le,"CS");a.Da=new be(a,xe,"DS");a.oa=new be(a,xe,"ES");a.X=new be(a,he,"SS");oe(a,0);ne(a,0);if(80386<=a.da){switch(a.Sd){case 80562:case 80563:a.L=771;break;case 80578:a.L=772;break;case 80594:a.L=773;break;case 80595:case 80596:a.L=776}a.qa=16;a.Rg=0;a.rd=0;a.Vc=0; +a.Ob=[0,0,0,0,null,null,0,0];a.eg=[null,null,null,null,null,null,0,0];a.Ga=new be(a,xe,"FS");a.Ia=new be(a,xe,"GS");Cf(a)}a.Tg=new be(a,0,"NULL");a.Ea=a.Da;a.Rb=a.X;a.N=a.ha=0;a.C=a.F=-1;a.fb=a.Tg;a.Ya=0;if(80286>a.da)Fe(a,0,65535);else{a.Ib=0;a.Hc=65535;a.Eb=new be(a,5,"LDT",!0);a.ka=new be(a,je,"TSS",!0);a.ub=new be(a,ge,"VER",!0);Fe(a,65520,61440);var b,c=A(a);b=a.Z;var d=-65536;80386>b.gc.da&&(d&=16777215);b=b.ua=d;a.ea=b+c|0;a.Sg=(b>>>0)+(a.Z.Ka>>>0)+1}Ee(a,0);qe(a)} +function Ff(a){2==a.Mc?(a.Sb=a.ja,a.kc=Gf,a.tc=Hf,a.md=If,2==a.V?(a.la=Jf,a.za=Kf,a.lb=Lf):(a.la=Mf,a.za=Nf,a.lb=Of)):(a.Sb=a.ia,a.kc=Pf,a.tc=Qf,a.md=Rf,2==a.V?(a.la=Sf,a.za=Tf,a.lb=Uf):(a.la=Vf,a.za=Wf,a.lb=Xf))}function re(a,b){a.V!=b&&(a.ha|=1024,a.V=b,a.R=2==b?65535:-1,Yf(a))}function Yf(a){2==a.V?(a.Fb=32768,a.mb=a.ja,a.yb=a.gb,2==a.Mc?(a.la=Jf,a.za=Kf,a.lb=Lf):(a.la=Sf,a.za=Tf,a.lb=Uf)):(a.Fb=-2147483648,a.mb=a.ia,a.yb=a.ab,2==a.Mc?(a.la=Mf,a.za=Nf,a.lb=Of):(a.la=Vf,a.za=Wf,a.lb=Xf))} +function Zf(a){a.Mc=a.Z.Mc;a.wa=a.Z.wa;Ff(a);a.V=a.Z.V;a.R=a.Z.R;Yf(a);a.ha&=-3073}l.yj=function(){var a=this.D+this.G+this.I+this.L+z(this)+this.M+this.K+this.J|0;return a=a+A(this)+this.Z.U+this.Da.U+this.X.U+this.oa.U+De(this)|0};function $f(a,b,c){void 0===a.Zf[b]&&(a.Zf[b]=[]);a.Zf[b].push(c)}function ag(a,b,c){c&&(null==a.$f[b]&&a.bg++,a.$f[b]=c)}function bg(a,b){var c=a.$f[b];null!=c&&(c(--a.bg),delete a.$f[b])} +function cg(a,b){for(var c=a.Ob[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ob[e],g=g&~(d>>2&3);b?a.aa[g>>>a.kb].td(g&a.Db,f,a):(g=a.aa[g>>>a.kb],f?--g.ne||ud(g):--g.me||td(g))}c>>=2;d>>=4}}function xd(a,b,c,d){if(!(a.N&8192)&&a.Ob[7]&255){c--;var e=a.Ob[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Ob[g]&&b<=a.Ob[g]+h){a.Ob[6]|=1<>=2;f>>=4}}} +function qe(a,b,c){void 0===b&&(b=!!(a.qa&1));void 0===c&&(c=!!(a.P&131072));a.rj=b&&!c?dg:Le;ce(a.Z,!1,b,c);ce(a.Da,!1,b,c);ce(a.X,!1,b,c);ce(a.oa,!1,b,c);80386<=a.da&&(ce(a.Ga,!1,b,c),ce(a.Ia,!1,b,c));Zf(a)} +l.save=function(a){var b=new eg(this);b.set(0,[this.D,this.G,this.I,this.L,z(this),this.M,this.K,this.J]);var c=A(this),d=this.Z.save(),e=this.Da.save(),f=this.X.save(),g=this.oa.save(),h;null!=this.Ib?(h=[this.qa,this.Ib,this.Hc,this.Nb,this.bd,this.Eb.save(),this.ka.save(),this.lc],80386<=this.da&&(h.push(this.Rg),h.push(this.rd),h.push(this.Vc),h.push(this.Ob),h.push(this.eg))):h=null;c=[c,d,e,f,g,h,De(this)];80386<=this.da&&(c.push(this.Ga.save()),c.push(this.Ia.save()));b.set(1,c);b.set(2,[this.Ea.Zb, +this.Rb.Zb,this.N,this.ha,this.Ya,this.C,this.F]);b.set(3,[0,this.Hd,this.T.Md,a]);b.set(4,Rc(this.ma,!!(this.qa&-2147483648)));return b.data()}; +l.restore=function(a){var b=a[0];this.D=b[0];this.G=b[1];this.I=b[2];this.L=b[3];var c=b[4];this.M=b[5];this.K=b[6];this.J=b[7];b=a[1];this.Z.restore(b[1]);this.Da.restore(b[2]);this.X.restore(b[3]);this.oa.restore(b[4]);var d=b[5];d&&d.length&&(this.qa=d[0],this.Ib=d[1],this.Hc=d[2],this.Nb=d[3],this.bd=d[4],this.Eb.restore(d[5]),this.ka.restore(d[6]),this.lc=d[7],80386<=this.da&&(this.Rg=d[8],this.rd=d[9],this.Vc=d[10],this.Ob=d[11],this.eg=d[12]),qe(this));Ee(this,b[6]);var d=!1,e;a:{e=this.ma; +var f=a[4],g;for(g=0;g>>0)+(a.Z.Ka>>>0)+1;a.Ma=a.Z.Ab;Zf(a)}function Fe(a,b,c,d){var e=a.Z;e.Jf=b;e.C=d;b=e.load(c);return-1!==b?(hg(a,b+(a.Z.Jf&a.Z.R)),a.Z.Re):null} +function ig(a,b){b=(a.ea>>>0)+b;b>a.Sg&&(8088>=a.da||a.Z.Ka==a.Z.wa?b=a.Z.ua+(b-a.Sg&a.R):y.call(a,13,0));return b|0}function jg(a){a.ea=a.qd}function z(a){return a.zc&~a.X.wa|a.Aa-a.X.ua}function oe(a,b){a.zc=b;a.Aa=a.X.ua+(b&a.X.wa)|0}function kg(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&lg(a),g&2&&mg(a),g&4&&ng(a),g&8&&og(a),g&16&&pg(a),g&32&&qg(a))}f?(a.Ud=d,a.Td=b):(a.Ud=b,a.Td=d);a.jf=c;a.Vd=d;a.resultType=e} +function rg(a,b,c,d,e){a.resultType=c|26;a.Vd=b;d?sg(a):tg(a);e?ug(a):vg(a);return b}function wg(a,b,c,d){c&d?sg(a):tg(a);(b^c)&d?ug(a):vg(a)}function xg(a){return lg(a)?1:0}function lg(a){a.resultType&1&&(a.P&=-2,(a.Ud^(a.Ud^a.jf)&(a.jf^a.Td))&a.resultType&-2147450752&&(a.P|=1),a.resultType&=-2);return a.P&1}function mg(a){a.resultType&2&&(a.P&=-5,38505>>((a.Vd^a.Vd>>4)&15)&1&&(a.P|=4),a.resultType&=-3);return a.P&4} +function ng(a){a.resultType&4&&(a.P&=-17,(a.Td^a.Ud^a.jf)&16&&(a.P|=16),a.resultType&=-5);return a.P&16}function og(a){a.resultType&8&&(a.P&=-65,a.Vd&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.P|=64),a.resultType&=-9);return a.P&64}function pg(a){a.resultType&16&&(a.P&=-129,a.Vd&a.resultType&-2147450752&&(a.P|=128),a.resultType&=-17);return a.P&128} +function qg(a){a.resultType&32&&(a.P&=-2049,(a.Ud^a.Td)&(a.jf^a.Td)&a.resultType&-2147450752&&(a.P|=2048),a.resultType&=-33);return a.P&2048}function tg(a){a.resultType&=-2;a.P&=-2}function yg(a){a.resultType&=-5;a.P&=-17}function zg(a){a.resultType&=-9;a.P&=-65}function vg(a){a.resultType&=-33;a.P&=-2049}function sg(a){a.resultType&=-2;a.P|=1}function Cg(a){a.resultType&=-5;a.P|=16}function Dg(a){a.resultType&=-9;a.P|=64}function ug(a){a.resultType&=-33;a.P|=2048} +function De(a){return a.P&-2262|lg(a)|mg(a)|ng(a)|og(a)|pg(a)|qg(a)}function Eg(a,b){b|=a.qa&1|65520;a.qa=a.qa&-65536|b&65535;a.qa&1&&qe(a,!0)}function Ee(a,b,c){a.qa&1||(b&=~a.vi);void 0===c&&(c=a.Ma);c?b=b&-12289|a.P&12288:a.lc=(b&12288)>>12;c>a.lc&&(b=b&-513|a.P&512);a.resultType=128;a.P=a.P&~(a.Rd|2261)|b&(a.Rd|2261)|a.Ui;a.P&256&&(a.Ya|=2,a.N|=4)} +function Fg(a,b,c,d){var e=0;if(a.qa&1&&(a.Ma>a.lc||a.P&131072)&&a.ka.Vi)for(var f=a.ka.Vi+(b>>>3),e=(1<>>=8,f++;return e?(t(a,256)&&Rb(a,"checkIOPM("+ta(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),y.call(a,13,0),!1):!0} +l.Cb=function(a,b,c){switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.na[b]=c;this.xj++;a=!0;break;default:a=Dd.prototype.Cb.call(this,a,b,c)}return a}; +function Gg(a,b,c,d){var e=(d?a.sc:a.aa)[(b&a.ed)>>>a.kb];e&&e.type==hd&&(e=zd(a,b,!1,!0));if(e){var f=b&a.Db;if(!c||1==c)return e.de(f,b);if(2==c)return f>>this.kb].Bc(a&this.Db,a)}; +l.ja=function(a){var b=a&this.Db,c=(a&this.ed)>>>this.kb;this.A-=this.B.Cg;if(b>>this.kb;if(b>>this.kb].Dc(a&this.Db,b&255,a)}; +l.gb=function(a,b){var c=a&this.Db,d=(a&this.ed)>>>this.kb;this.A-=this.B.Cg;c>8&255,a+1))};l.ab=function(a,b){var c=a&this.Db,d=(a&this.ed)>>>this.kb;this.A-=this.B.Cg;if(c>>=8}}; +function Hg(a,b,c){a.fb=b;a.tb=c&a.wa;a.C=b.ac(a.tb,1);return a.N&1?0:a.Ja(a.C)}function D(a,b){return Hg(a,a.Ea,b)}function Ig(a,b){return Hg(a,a.Rb,b)}function Jg(a,b,c){a.fb=b;a.tb=c&a.wa;a.C=b.ac(a.tb,a.V);return a.N&1?0:a.mb(a.C)}function E(a,b){a.fb=a.Ea;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,2);return a.N&1?0:a.ja(a.C)}function Kg(a,b){a.fb=a.Rb;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,2);return a.N&1?0:a.ja(a.C)}function G(a,b){a.fb=a.Ea;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,4);return a.N&1?0:a.ia(a.C)} +function Lg(a,b){a.fb=a.Rb;a.tb=b&a.wa;a.C=a.fb.ac(a.tb,4);return a.N&1?0:a.ia(a.C)}function Mg(a,b){a.N&2||a.fc(a.fb.bc(a.tb,1),b)}function Ng(a,b){a.N&2||a.gb(a.fb.bc(a.tb,2),b)}function Og(a,b){a.N&2||a.ab(a.fb.bc(a.tb,4),b)}function se(a,b,c){return a.mb(b.ac(c,a.V))}l.ra=function(){var a=ig(this,1),b=this.Ja(this.ea);this.ea=a;return b};function Pg(a){var b=ig(a,2),c=a.ja(a.ea);a.ea=b;return c}function J(a){var b=ig(a,a.Mc),c=a.Sb(a.ea);a.ea=b;return c} +l.Fa=function(){var a=ig(this,this.V),b=this.mb(this.ea);this.ea=a;return b};l.S=function(){var a=ig(this,1),b=this.Ja(this.ea)<<24>>24;this.ea=a;return b};function me(a){var b=a.mb(a.Aa);a.Aa=a.Aa+a.V|0;var c=a.dg-a.Aa|0;0>c&&0<=(a.dg^a.Aa)&&(8088>=a.da||!a.X.Rc&&a.X.Ka==a.X.wa||a.X.Rc&&!a.X.Ka?oe(a,a.Aa-a.X.ua&a.X.wa):-1>c&&y.call(a,12,0));return b} +function te(a,b,c,d){c=a.Aa-c|0;0>(c-a.hf|0)&&0<=(a.hf^c)&&(8088>=a.da||!a.X.Rc&&a.X.Ka==a.X.wa||a.X.Rc&&!a.X.Ka?(oe(a,c-a.X.ua&a.X.wa),c=a.Aa):y.call(a,12,0));switch(d){case 1:a.fc(c,b);break;case 2:a.gb(c,b);break;case 4:a.ab(c,b)}a.Aa=c}function we(a,b){var c=a.Aa-a.V|0;0>(c-a.hf|0)&&0<=(a.hf^c)&&(8088>=a.da||!a.X.Rc&&a.X.Ka==a.X.wa||a.X.Rc&&!a.X.Ka?(oe(a,c-a.X.ua&a.X.wa),c=a.Aa):y.call(a,12,0));a.yb(c,b);a.Aa=c} +function Qg(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.da)2this.da?0:1,e=0;2>e;e++){switch(d){case 0:if(this.Ya&1&&this.P&512){var f=Sg(this.W);if(-1<=f&&(this.Ya&=-2,0<=f)){this.Ya&=-5; +Tg.call(this,f);d=!0;break a}}break;case 1:if(this.Ya&2){this.Ya&=-3;80386<=this.da&&(this.Ob[6]|=16384);Tg.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.O("interrupt dispatched");this.N=0;break}if(this.Ya&4){this.N=this.A=0;break}}if(b){if(Ug(this.ca,this.ea,c)){this.Kb();break}c=1}this.N=0;this.va[this.ra()].call(this)}while(0>11;lh(this);mh(this,a[b++]);for(c=0;c=nh&&oh(a,ph))}function lh(a){a.fa&=-129;a.fa&~a.Yb&63&&(a.fa|=128);if(a.fa&128&&!(a.Yb&128))return a=a.W,a.da>=nh?qh(a,ph):a.ea&rh||Tg.call(a.H,2),!0;a=a.W;a.da>=nh&&oh(a,ph);return!1}function sh(a,b){80387<=a.da||(b&=-65);a.fa|=b;return lh(a)} +function jh(a){return a.fa|a.B<<11}function th(a,b){return isFinite(b)?!0:!sh(a,Infinity===b?8:16)}function uh(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,th(a,d)||(d=null));return d}function vh(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,th(a,d)||(d=null));return d}function wh(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,th(a,d)||(d=null));return d}function xh(a,b,c){var d=null;null==b||null==c||!c&&sh(a,2)||(d=b/c,th(a,d)||(d=null));return d} +function yh(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:b||(d=16384));a.fa=a.fa&-18177|d;return!0}return!1}function zh(a,b,c){if(null==b)return null;var d=a.Yb&3072;d?d=1024==d||3072==d&&0=c){if(sh(a,1))return null;d=-c}else if(d<-c){if(sh(a,1))return null;d=-c}a.G[0]=d|0;2147483648d&&(a.G[1]=-1))}return d} +function Ah(a,b){var c=3;a.C&1<=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function Bh(a){var b=a.B+0&7;return a.C&1<>16}function Gh(a){return a.H.ia(a.H.C)}function Hh(a){a.ha[0]=a.H.ia(a.H.C);return a.Z[0]}function Ih(a){a.G[0]=a.H.ia(a.H.C);a.G[1]=a.H.ia(a.H.C+4);return a.K[0]} +function Jh(a){a.D[0]=a.H.ia(a.H.C);a.D[1]=a.H.ia(a.H.C+4);a.D[2]=a.H.ja(a.H.C+8);return a.D}l.pi=function(){this.H.ab(this.H.C,this.G[0])};l.gl=function(){this.H.ab(this.H.C,this.G[0]);this.H.ab(this.H.C+4,this.G[1])};function Kh(a){a.H.ab(a.H.C,a.D[0]);a.H.ab(a.H.C+4,a.D[1]);a.H.gb(a.H.C+8,a.D[2])}function Lh(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767;b=b[0]>>>11|c<<21;c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,b=c=0));a.G[0]=b;a.G[1]=c|(d|e)<<20;return a.K[0]} +function Eh(a,b,c){var d=c>>20&2047,e=2147483648|(c&1048575)<<11|b>>>21;2047==d?d=32767:d?d+=15360:e&=2147483647;a.D[0]=b<<11;a.D[1]=e;a.D[2]=c>>16&32768|d;return a.D}function Mh(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function Nh(a,b){for(var c=0,d=0;b--;)c|=a%10<>11;lh(a);mh(a,d.mb(b+=d.V));!(d.qa&1)||d.P&131072?(a.I=d.mb(b+=d.V),c=d.mb(b+=d.V),a.P=c&2047,a.I|=(c&-4096)<<4,a.M=-1,a.J=d.mb(b+=d.V),a.J|=(d.mb(b+=d.V)&-4096)<<4,a.N=-1):(a.I=d.mb(b+=d.V),c=d.mb(b+=d.V),a.M=c&65535,a.P=c>>16&2047,a.J=d.mb(b+=d.V),a.N=d.mb(b+=d.V)&65535);return b+d.V} +function Rh(a,b){var c=a.H;c.yb(b,a.Yb);c.yb(b+=c.V,jh(a));c.yb(b+=c.V,kh(a));if(!(c.qa&1)||c.P&131072){var d=(a.M<<4)+a.I;c.yb(b+=c.V,d);c.yb(b+=c.V,d>>4&-4096|a.P);d=(a.N<<4)+a.J;c.yb(b+=c.V,d);c.yb(b+=c.V,d>>4&-4096)}else c.yb(b+=c.V,a.I),c.yb(b+=c.V,a.M|a.P<<16),c.yb(b+=c.V,a.J),c.yb(b+=c.V,a.N);return b+c.V}function Sh(){this.fa&=-32896;lh(this)}function Th(){yh(this,M(this,0),M(this,this.A))}function Uh(){yh(this,M(this,0),M(this,this.A))&&Oh(this)}function Vh(){Uh.call(this)} +function Wh(){N(this,0,xh(this,M(this,0),Hh(this)))}function Xh(){this.C&=~(1<>20&2047)-1023),this.G[1]=(this.G[1]|1072693248)&-1073741825,Ph(this,this.K[0]))},102:function(){this.B=this.B-1&7;this.fa&=-513},103:function(){this.B= +this.B+1&7;this.fa&=-513},112:function(){N(this,0,M(this,0)%M(this,1))},113:function(){N(this,1,M(this,1)*Math.log(M(this,0)+1)/Math.LN2)&&Oh(this)},114:function(){var a=M(this,0),b=null;if(0<=a||!sh(this,1))b=Math.sqrt(a),th(this,b)||(b=null);N(this,0,b)},116:function(){N(this,0,zh(this,M(this,0),pi))},117:function(){var a=M(this,0),b=M(this,1);null!=a&&null!=b&&N(this,0,a*Math.pow(2,0>>0);Ph(this,a)},6:function(){var a=zh(this,Oh(this));null!=a&&(this.D[0]=Nh(a,8),this.D[1]=Nh(a/1E8,8),this.D[2]=Nh(a/1E16,2),0>a&&(this.D[2]|=32768),Kh(this))},7:function(){null!=zh(this,M(this,0),pi)&&(this.gl(),Oh(this))},48:function(){Xh.call(this);Oh(this)},49:ji,50:ei,51:ei,52:hi}},ri=[Sh,Yh,Zh,$h,ai,bi,fi,ci,gi,hi];eb(function(){for(var a=Bb(document,"pcx86","fpu"),b=0;b>16,c=c<<16>>16,d=d<<16>>16);this.A-=this.B.Nj;(bd)&&y.call(this,5);this.N|=2;return a}function Ai(a,b){var c=0;if(b){zg(this);for(var d=1;d&this.R;){if(b&d){a=c;break}d<<=1;c++}}else Dg(this);this.A-=11+3*c;return a}function Bi(a,b){var c=0;if(b){zg(this);for(var d=2==this.V?15:31,e=1<>>=1;c++;d--}}else Dg(this);this.A-=11+3*c;return a} +function Ci(a,b){a&1<<(b&(2==this.V?15:31))?sg(this):tg(this);this.A-=-1===this.C?3:6;this.N|=2;return a}function Di(a,b){b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=-1===this.C?6:8;return a^b}function Ei(a,b){b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=-1===this.C?6:8;return a&~b}function Fi(a,b){b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=-1===this.C?6:8;return a|b} +function Gi(a,b){if(-1===this.C)return Ci.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Jg(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=6;this.N|=2;return a}function Hi(a,b){if(-1===this.C)return Di.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Jg(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=8;return a^b} +function Ii(a,b){if(-1===this.C)return Ei.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Jg(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=8;return a&~b}function Ji(a,b){if(-1===this.C)return Fi.call(this,a,b);var c=this.V<<3;if(b>=c||b<-c)a=Jg(this,this.fb,this.tb+(b>>(2==this.V?4:5))*this.V);b=1<<(b&(2==this.V?15:31));a&b?sg(this):tg(this);this.A-=8;return a|b} +function Ki(a,b){kg(this,a,b,a-b|0,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Dh:this.B.Jb;this.N|=2;return a}function Li(a,b){kg(this,a,b,a-b|0,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Dh:this.B.Jb;this.N|=2;return a} +function Mi(a){if(this.Ic){var b=this.Ic,c=this.wj,d=this.ga,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=qi[c][f]){if(0>ri.indexOf(e)){var f=b.H,g=f.qd;8087==b.da&&(f.ha&16&&g++,f.ha&32&&g++);b.M=f.Z.U;b.I=g-f.Z.ua;-1!==f.C&&(b.N=f.fb.U,b.J=f.C-f.fb.ua);b.P=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.C?2:8;return a}function Ni(a){if(80186>this.da)return Oi.call(this,a);y.call(this,13,0);return a}function cf(a){y.call(this,6);return a} +function Oi(a){ff.call(this);return a}function Pi(a,b){a=Qi.call(this,this.S(),b);80386>this.da&&(this.A-=12);return a}function Ri(a,b){a=this.Fa();a=2==this.V?Qi.call(this,a,b):Si.call(this,a,b);80386>this.da&&(this.A-=12);return a}function Ti(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);Ui.call(this,a,b);c&&(this.Ba=~this.Ba+1|0,this.Za=~this.Za+(this.Ba?0:1)|0)} +function Qi(a,b){a=(a<<16>>16)*(b<<16>>16)|0;32767a?(sg(this),ug(this)):(tg(this),vg(this));this.A-=-1===this.C?9:12;return a&65535}function Si(a,b){Ti.call(this,a,b);this.Za!=this.Ba>>31?(sg(this),ug(this)):(tg(this),vg(this));this.A-=-1===this.C?9:12;return this.Ba}function Vi(a,b){this.A-=14+(-1===this.C?0:2);zg(this);-1!==this.ub.load(b)&&this.ub.qc>=this.Ma&&this.ub.qc>=(b&3)&&(Dg(this),a=this.ub.nb&-256,2=this.Ma)&&this.ub.qc>=(b&3))return Dg(this),this.ub.Ka;zg(this);return a}function bj(a,b){if(-1===this.C)return ff.call(this),a;ne(this,this.ja(this.C+this.V));this.A-=this.B.Ye;return b} +function cj(a,b){this.A-=-1===this.F?-1===this.C?this.B.xk:this.B.wk:this.B.uk;return b}function mj(a,b){switch(this.ga>>3&7){case 4:this.xa=this.D;break;case 5:this.xa=this.I;break;case 6:this.xa=this.L;break;case 7:this.xa=this.G}return b}function nj(a,b){return b} +function oj(a,b){a=this.ga>>3&7;switch(a){case 0:this.xa=this.D;break;case 2:this.xa=this.L;break;case 3:this.xa=this.G;break;default:if(80286==this.da||80386==this.da&&4!=a&&5!=a)y.call(this,6);else switch(a){case 1:this.xa=this.I;break;case 4:this.xa=z(this);break;case 5:this.xa=this.M;break;case 6:this.xa=this.K;break;case 7:this.xa=this.J}}return cj.call(this,0,b)} +function pj(a,b){switch(this.ga>>3&7){case 0:b=this.oa.U;break;case 1:b=this.Z.U;break;case 2:b=this.X.U;break;case 3:b=this.Da.U;break;case 4:if(80386<=this.da){b=this.Ga.U;break}y.call(this,6);b=a;break;case 5:if(80386<=this.da){b=this.Ia.U;break}default:y.call(this,6),b=a}-1!==this.F&&re(this,2);return cj.call(this,0,b)} +function Ui(a,b){if(a&-65536||b&-65536){var c=b&65535;b>>>=16;var d=a&65535;a>>>=16;var e=c*d,d=(e>>>16)+b*d,f=d>>>16,d=(d&65535)+c*a;this.Ba=d<<16|e&65535;this.Za=f+((d>>>16)+b*a)|0}else this.Ba=a*b|0,this.Za=0}function qj(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return rg(this,a|b,128)}function rj(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return rg(this,a|b,this.Fb)&this.R} +function sj(a,b){var c=a-b-xg(this)|0;kg(this,a,b,c,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return c&255}function tj(a,b){var c=a-b-xg(this)|0;kg(this,a,b,c,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return c&this.R}function uj(){return qg(this)?1:0}function vj(){return lg(this)?1:0}function wj(){return lg(this)?0:1}function xj(){return og(this)?1:0}function yj(){return og(this)?0:1}function zj(){return lg(this)||og(this)?1:0} +function Aj(){return lg(this)||og(this)?0:1}function Bj(){return pg(this)?1:0}function Cj(){return pg(this)?0:1}function Dj(){return mg(this)?1:0}function Ej(){return mg(this)?0:1}function Fj(){return!pg(this)!=!qg(this)?1:0}function Gj(){return!pg(this)!=!qg(this)?0:1}function Hj(){return og(this)||!pg(this)!=!qg(this)?1:0}function Ij(){return og(this)||!pg(this)!=!qg(this)?0:1}function Jj(a,b){return Kj.call(this,a,b,this.ra())}function Lj(a,b){return Mj.call(this,a,b,this.ra())} +function Nj(a,b){return Kj.call(this,a,b,this.I&31)}function Oj(a,b){return Mj.call(this,a,b,this.I&31)}function Pj(a,b){return Qj.call(this,a,b,this.ra())}function Rj(a,b){return Sj.call(this,a,b,this.ra())}function Tj(a,b){return Qj.call(this,a,b,this.I&31)}function Uj(a,b){return Sj.call(this,a,b,this.I&31)}function Vj(a,b){var c=a-b|0;kg(this,a,b,c,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return c&255} +function Wj(a,b){var c=a-b|0;kg(this,a,b,c,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return c&this.R}function Xj(a,b){rg(this,a&b,128);this.A-=-1===this.F?-1===this.C?this.B.ei:this.B.Gf:this.B.Gf;this.N|=2;return a}function Yj(a,b){rg(this,a&b,this.Fb);this.A-=-1===this.F?-1===this.C?this.B.ei:this.B.Gf:this.B.Gf;this.N|=2;return a}function Zj(a,b){var c=this.D&this.R,d=(1<<(this.I&31))-1;return a&~(d<>(this.D&this.R)&(1<<(this.I&31))-1&this.R}function bk(a,b){if(-1===this.C){switch(this.ga&7){case 0:this.D=this.D&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.L=this.L&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.D=this.D&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.L=this.L&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}this.A-=this.B.gi}else this.F=this.C,Mg(this,a),this.A-=this.B.fi;return b} +function ck(a,b){if(-1===this.C){switch(this.ga&7){case 0:this.D=this.D&~this.R|a;break;case 1:this.I=this.I&~this.R|a;break;case 2:this.L=this.L&~this.R|a;break;case 3:this.G=this.G&~this.R|a;break;case 4:oe(this,z(this)&~this.R|a);break;case 5:this.M=this.G&~this.R|a;break;case 6:this.K=this.K&~this.R|a;break;case 7:this.J=this.J&~this.R|a}this.A-=this.B.gi}else this.F=this.C,this.N&2||this.yb(this.fb.bc(this.tb,this.V),a),this.A-=this.B.fi;return b} +function dk(a,b){a^=b;rg(this,a,128);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return a}function ek(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Jb:this.B.Ac;return rg(this,a^b,this.Fb)&this.R}function fk(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function gk(a){var b=a-1|0;kg(this,a,1,b,this.Fb|62,!0);this.A-=2;return a&~this.R|b&this.R} +function hk(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1,f=this.gn;f[0]=c>>>0;f[1]=0;c=this.hn;c[0]=a>>>0;for(c[1]=b>>>0;0>>=0,a[1]++),e+=e;do 0<=fk(c,f)&&(a=c,b=f,a[0]-=b[0],a[1]-=b[1],0>a[0]&&(a[0]>>>=0,a[1]--),d+=e),a=f,a[0]>>>=1,a[1]&1&&(a[0]=(a[0]|2147483648)>>>0),a[1]>>>=1,e/=2;while(1<=e);this.Ba=d;this.Za=c[0];return!0}function ik(a){var b=a+1|0;kg(this,a,1,b,this.Fb|62);this.A-=2;return a&~this.R|b&this.R} +function jk(a){this.qa=a;qe(this);this.qa&-2147483648?zf(this):Cf(this)}function Ge(a){this.Vc=a;zc(this)}function kk(a){this.N|=1;this.tc.call(this,a);this.A-=-1===this.C?4:5}function Kj(a,b,c){if(c){16>>16-c)&65535;rg(this,a,32768,d&32768)}return a}function Mj(a,b,c){if(c){var d=a<>>32-c;rg(this,a,-2147483648,d&-2147483648)}return a} +function Qj(a,b,c){if(c){16>>c-1;a=(d>>>1|b<<16-c)&65535;rg(this,a,32768,d&1)}return a}function Sj(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;rg(this,a,-2147483648,d&1)}return a}function lk(){this.A-=-1===this.C?2:this.B.Kk;return 1}function mk(){var a=this.I&255;this.A-=(-1===this.C?this.B.Yh:this.B.Xh)+(a<this.Kc?(-1!=this.pd&&(this.pd!==this.Z.U&&(this.Z.Ab=this.pd&3,gg(this,this.pd)),this.pd=-1),this.qd!==this.ea&&hg(this,this.qd),-1!=this.Lc&&(this.Lc!==this.X.U&&ne(this,this.Lc),this.Lc=-1),-1!==this.sa&&(this.sa!==this.Aa&&oe(this,this.zc&~this.X.wa|this.sa-this.X.ua),this.sa=-1)):8!=this.Kc?(b=0,a=8):(b=0,a=-1,xf(this),e=d=!1)):hg(this,this.qd);var f=a,g=b,h=32,k=Gg(this,this.ea);204!=k||this.bd||(d=!1);this.P&131072&&(6== +f&&99==k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.ea&&1048575>=this.ea&&(d=!1);t(this,h|-2147483648)&&(d=!0);if(t(this,h)||d){var m=this.ba.jb,f="Fault "+r(f)+(null!=g?" ("+ta(g)+")":"")+" on opcode "+r(k);d&&m&&(f+=" (blocked)");this.ca?(Rb(this,f,d||h,!0),d&&(d=m,this.ca.Kb())):(this.Ca(f),this.Kb())}if(d&&e)throw-1;if(e)throw this.Kc=a,rk.call(this,a,b,c),this.qd=this.ea,this.N=1==a?this.N|8192:this.N|4096,a;} +function Bf(a,b,c){this.rd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Ma&&(a|=4);y.call(this,14,a)}function tk(a){var b=a.nb&7680;a.U&65528&&(6144==b||7168==b||7168>b&&a.qc>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D&255;break;case 1:b=this.I&255;break;case 2:b=this.L&255;break;case 3:b=this.G&255;break;case 4:b=this.D>>8&255;break;case 5:b=this.I>>8&255;break;case 6:b=this.L>>8&255;break;case 7:b=this.G>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D= +this.D&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.L=this.L&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.D=this.D&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.L=this.L&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}} +function Hf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=D(this,this.G+this.K);this.F=this.C;break;case 1:b=D(this,this.G+this.J);this.F=this.C;break;case 2:b=Ig(this,this.M+this.K);this.F=this.C;break;case 3:b=Ig(this,this.M+this.J);this.F=this.C;break;case 4:b=D(this,this.K);this.F=this.C;break;case 5:b=D(this,this.J);this.F=this.C;break;case 6:b=D(this,J(this));this.F=this.C;break;case 7:b=D(this,this.G);this.F=this.C;break;case 64:b=D(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:b=D(this,this.G+this.J+this.S());this.F=this.C;break;case 66:b=Ig(this,this.M+this.K+this.S());this.F=this.C;break;case 67:b=Ig(this,this.M+this.J+this.S());this.F=this.C;break;case 68:b=D(this,this.K+this.S());this.F=this.C;break;case 69:b=D(this,this.J+this.S());this.F=this.C;break;case 70:b=Ig(this,this.M+this.S());this.F=this.C;break;case 71:b=D(this,this.G+this.S());this.F=this.C;break;case 128:b=D(this,this.G+this.K+J(this));this.F=this.C;break;case 129:b=D(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:b=Ig(this,this.M+this.K+J(this));this.F=this.C;break;case 131:b=Ig(this,this.M+this.J+J(this));this.F=this.C;break;case 132:b=D(this,this.K+J(this));this.F=this.C;break;case 133:b=D(this,this.J+J(this));this.F=this.C;break;case 134:b=Ig(this,this.M+J(this));this.F=this.C;break;case 135:b=D(this,this.G+J(this));this.F=this.C;break;case 192:b=this.D&255;break;case 193:b=this.I&255;break;case 194:b=this.L&255;break;case 195:b=this.G&255;break;case 196:b=this.D>>8&255;break; +case 197:b=this.I>>8&255;break;case 198:b=this.L>>8&255;break;case 199:b=this.G>>8&255;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&255;break;case 1:c=this.I&255;break;case 2:c=this.L&255;break;case 3:c=this.G&255;break;case 4:c=this.D>>8&255;break;case 5:c=this.I>>8&255;break;case 6:c=this.L>>8&255;break;case 7:c=this.G>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Mg(this,a);this.A-=this.B.Tc;break;case 1:case 2:Mg(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Mg(this, +a);this.A-=this.B.wc;break;case 6:Mg(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Mg(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Mg(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Mg(this,a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I= +this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8}} +function If(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=D(this,this.G+this.K);this.F=this.C;break;case 1:c=D(this,this.G+this.J);this.F=this.C;break;case 2:c=Ig(this,this.M+this.K);this.F=this.C;break;case 3:c=Ig(this,this.M+this.J);this.F=this.C;break;case 4:c=D(this,this.K);this.F=this.C;break;case 5:c=D(this,this.J);this.F=this.C;break;case 6:c=D(this,J(this));this.F=this.C;break;case 7:c=D(this,this.G);this.F=this.C;break;case 64:c=D(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:c=D(this,this.G+this.J+this.S());this.F=this.C;break;case 66:c=Ig(this,this.M+this.K+this.S());this.F=this.C;break;case 67:c=Ig(this,this.M+this.J+this.S());this.F=this.C;break;case 68:c=D(this,this.K+this.S());this.F=this.C;break;case 69:c=D(this,this.J+this.S());this.F=this.C;break;case 70:c=Ig(this,this.M+this.S());this.F=this.C;break;case 71:c=D(this,this.G+this.S());this.F=this.C;break;case 128:c=D(this,this.G+this.K+J(this));this.F=this.C;break;case 129:c=D(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:c=Ig(this,this.M+this.K+J(this));this.F=this.C;break;case 131:c=Ig(this,this.M+this.J+J(this));this.F=this.C;break;case 132:c=D(this,this.K+J(this));this.F=this.C;break;case 133:c=D(this,this.J+J(this));this.F=this.C;break;case 134:c=Ig(this,this.M+J(this));this.F=this.C;break;case 135:c=D(this,this.G+J(this));this.F=this.C;break;case 192:c=this.D&255;break;case 193:c=this.I&255;break;case 194:c=this.L&255;break;case 195:c=this.G&255;break;case 196:c=this.D>>8&255;break; +case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Mg(this,a);this.A-=this.B.Tc;break;case 1:case 2:Mg(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Mg(this,a);this.A-=this.B.wc;break;case 6:Mg(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Mg(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Mg(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Mg(this, +a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I=this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8}} +function Jf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=E(this,this.G+this.K);this.A-=this.B.Tc;break;case 1:c=E(this,this.G+this.J);this.A-=this.B.Uc;break;case 2:c=Kg(this,this.M+this.K);this.A-=this.B.Uc;break;case 3:c=Kg(this,this.M+this.J);this.A-=this.B.Tc;break;case 4:c=E(this,this.K);this.A-=this.B.wc;break;case 5:c=E(this,this.J);this.A-=this.B.wc;break;case 6:c=E(this,J(this));this.A-=this.B.Ad;break;case 7:c=E(this,this.G);this.A-=this.B.wc;break;case 64:c=E(this,this.G+this.K+ +this.S());this.A-=this.B.Tb;break;case 65:c=E(this,this.G+this.J+this.S());this.A-=this.B.Ub;break;case 66:c=Kg(this,this.M+this.K+this.S());this.A-=this.B.Ub;break;case 67:c=Kg(this,this.M+this.J+this.S());this.A-=this.B.Tb;break;case 68:c=E(this,this.K+this.S());this.A-=this.B.Xa;break;case 69:c=E(this,this.J+this.S());this.A-=this.B.Xa;break;case 70:c=Kg(this,this.M+this.S());this.A-=this.B.Xa;break;case 71:c=E(this,this.G+this.S());this.A-=this.B.Xa;break;case 128:c=E(this,this.G+this.K+J(this)); +this.A-=this.B.Tb;break;case 129:c=E(this,this.G+this.J+J(this));this.A-=this.B.Ub;break;case 130:c=Kg(this,this.M+this.K+J(this));this.A-=this.B.Ub;break;case 131:c=Kg(this,this.M+this.J+J(this));this.A-=this.B.Tb;break;case 132:c=E(this,this.K+J(this));this.A-=this.B.Xa;break;case 133:c=E(this,this.J+J(this));this.A-=this.B.Xa;break;case 134:c=Kg(this,this.M+J(this));this.A-=this.B.Xa;break;case 135:c=E(this,this.G+J(this));this.A-=this.B.Xa;break;case 192:c=this.D&65535;break;case 193:c=this.I& +65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535;break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D&65535;break;case 1:b=this.I&65535;break;case 2:b=this.L&65535;break;case 3:b=this.G&65535;break;case 4:b=z(this)&65535;break;case 5:b=this.M&65535;break;case 6:b=this.K&65535;break;case 7:b=this.J&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D= +this.D&-65536|a;break;case 1:this.I=this.I&-65536|a;break;case 2:this.L=this.L&-65536|a;break;case 3:this.G=this.G&-65536|a;break;case 4:oe(this,z(this)&-65536|a);break;case 5:this.M=this.M&-65536|a;break;case 6:this.K=this.K&-65536|a;break;case 7:this.J=this.J&-65536|a}} +function Kf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=E(this,this.G+this.K);this.F=this.C;break;case 1:b=E(this,this.G+this.J);this.F=this.C;break;case 2:b=Kg(this,this.M+this.K);this.F=this.C;break;case 3:b=Kg(this,this.M+this.J);this.F=this.C;break;case 4:b=E(this,this.K);this.F=this.C;break;case 5:b=E(this,this.J);this.F=this.C;break;case 6:b=E(this,J(this));this.F=this.C;break;case 7:b=E(this,this.G);this.F=this.C;break;case 64:b=E(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:b=E(this,this.G+this.J+this.S());this.F=this.C;break;case 66:b=Kg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:b=Kg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:b=E(this,this.K+this.S());this.F=this.C;break;case 69:b=E(this,this.J+this.S());this.F=this.C;break;case 70:b=Kg(this,this.M+this.S());this.F=this.C;break;case 71:b=E(this,this.G+this.S());this.F=this.C;break;case 128:b=E(this,this.G+this.K+J(this));this.F=this.C;break;case 129:b=E(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:b=Kg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:b=Kg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:b=E(this,this.K+J(this));this.F=this.C;break;case 133:b=E(this,this.J+J(this));this.F=this.C;break;case 134:b=Kg(this,this.M+J(this));this.F=this.C;break;case 135:b=E(this,this.G+J(this));this.F=this.C;break;case 192:b=this.D&65535;break;case 193:b=this.I&65535;break;case 194:b=this.L&65535;break;case 195:b=this.G&65535;break;case 196:b=z(this)&65535; +break;case 197:b=this.M&65535;break;case 198:b=this.K&65535;break;case 199:b=this.J&65535;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&65535;break;case 1:c=this.I&65535;break;case 2:c=this.L&65535;break;case 3:c=this.G&65535;break;case 4:c=z(this)&65535;break;case 5:c=this.M&65535;break;case 6:c=this.K&65535;break;case 7:c=this.J&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Ng(this,a);this.A-=this.B.Tc;break;case 1:case 2:Ng(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Ng(this, +a);this.A-=this.B.wc;break;case 6:Ng(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Ng(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Ng(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ng(this,a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:oe(this,z(this)&-65536|a);break; +case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a}} +function Lf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=E(this,this.G+this.K);this.F=this.C;break;case 1:c=E(this,this.G+this.J);this.F=this.C;break;case 2:c=Kg(this,this.M+this.K);this.F=this.C;break;case 3:c=Kg(this,this.M+this.J);this.F=this.C;break;case 4:c=E(this,this.K);this.F=this.C;break;case 5:c=E(this,this.J);this.F=this.C;break;case 6:c=E(this,J(this));this.F=this.C;break;case 7:c=E(this,this.G);this.F=this.C;break;case 64:c=E(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:c=E(this,this.G+this.J+this.S());this.F=this.C;break;case 66:c=Kg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:c=Kg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:c=E(this,this.K+this.S());this.F=this.C;break;case 69:c=E(this,this.J+this.S());this.F=this.C;break;case 70:c=Kg(this,this.M+this.S());this.F=this.C;break;case 71:c=E(this,this.G+this.S());this.F=this.C;break;case 128:c=E(this,this.G+this.K+J(this));this.F=this.C;break;case 129:c=E(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:c=Kg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:c=Kg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:c=E(this,this.K+J(this));this.F=this.C;break;case 133:c=E(this,this.J+J(this));this.F=this.C;break;case 134:c=Kg(this,this.M+J(this));this.F=this.C;break;case 135:c=E(this,this.G+J(this));this.F=this.C;break;case 192:c=this.D&65535;break;case 193:c=this.I&65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535; +break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Ng(this,a);this.A-=this.B.Tc;break;case 1:case 2:Ng(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Ng(this,a);this.A-=this.B.wc;break;case 6:Ng(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Ng(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Ng(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ng(this, +a);this.A-=this.B.Xa;break;case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:oe(this,z(this)&-65536|a);break;case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a}} +function Mf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=G(this,this.G+this.K);this.A-=this.B.Tc;break;case 1:c=G(this,this.G+this.J);this.A-=this.B.Uc;break;case 2:c=Lg(this,this.M+this.K);this.A-=this.B.Uc;break;case 3:c=Lg(this,this.M+this.J);this.A-=this.B.Tc;break;case 4:c=G(this,this.K);this.A-=this.B.wc;break;case 5:c=G(this,this.J);this.A-=this.B.wc;break;case 6:c=G(this,J(this));this.A-=this.B.Ad;break;case 7:c=G(this,this.G);this.A-=this.B.wc;break;case 64:c=G(this,this.G+this.K+ +this.S());this.A-=this.B.Tb;break;case 65:c=G(this,this.G+this.J+this.S());this.A-=this.B.Ub;break;case 66:c=Lg(this,this.M+this.K+this.S());this.A-=this.B.Ub;break;case 67:c=Lg(this,this.M+this.J+this.S());this.A-=this.B.Tb;break;case 68:c=G(this,this.K+this.S());this.A-=this.B.Xa;break;case 69:c=G(this,this.J+this.S());this.A-=this.B.Xa;break;case 70:c=Lg(this,this.M+this.S());this.A-=this.B.Xa;break;case 71:c=G(this,this.G+this.S());this.A-=this.B.Xa;break;case 128:c=G(this,this.G+this.K+J(this)); +this.A-=this.B.Tb;break;case 129:c=G(this,this.G+this.J+J(this));this.A-=this.B.Ub;break;case 130:c=Lg(this,this.M+this.K+J(this));this.A-=this.B.Ub;break;case 131:c=Lg(this,this.M+this.J+J(this));this.A-=this.B.Tb;break;case 132:c=G(this,this.K+J(this));this.A-=this.B.Xa;break;case 133:c=G(this,this.J+J(this));this.A-=this.B.Xa;break;case 134:c=Lg(this,this.M+J(this));this.A-=this.B.Xa;break;case 135:c=G(this,this.G+J(this));this.A-=this.B.Xa;break;case 192:c=this.D;break;case 193:c=this.I;break; +case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D;break;case 1:b=this.I;break;case 2:b=this.L;break;case 3:b=this.G;break;case 4:b=z(this);break;case 5:b=this.M;break;case 6:b=this.K;break;case 7:b=this.J;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D=a;break;case 1:this.I=a;break;case 2:this.L=a;break;case 3:this.G=a;break;case 4:oe(this, +a);break;case 5:this.M=a;break;case 6:this.K=a;break;case 7:this.J=a}} +function Nf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=G(this,this.G+this.K);this.F=this.C;break;case 1:b=G(this,this.G+this.J);this.F=this.C;break;case 2:b=Lg(this,this.M+this.K);this.F=this.C;break;case 3:b=Lg(this,this.M+this.J);this.F=this.C;break;case 4:b=G(this,this.K);this.F=this.C;break;case 5:b=G(this,this.J);this.F=this.C;break;case 6:b=G(this,J(this));this.F=this.C;break;case 7:b=G(this,this.G);this.F=this.C;break;case 64:b=G(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:b=G(this,this.G+this.J+this.S());this.F=this.C;break;case 66:b=Lg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:b=Lg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:b=G(this,this.K+this.S());this.F=this.C;break;case 69:b=G(this,this.J+this.S());this.F=this.C;break;case 70:b=Lg(this,this.M+this.S());this.F=this.C;break;case 71:b=G(this,this.G+this.S());this.F=this.C;break;case 128:b=G(this,this.G+this.K+J(this));this.F=this.C;break;case 129:b=G(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:b=Lg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:b=Lg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:b=G(this,this.K+J(this));this.F=this.C;break;case 133:b=G(this,this.J+J(this));this.F=this.C;break;case 134:b=Lg(this,this.M+J(this));this.F=this.C;break;case 135:b=G(this,this.G+J(this));this.F=this.C;break;case 192:b=this.D;break;case 193:b=this.I;break;case 194:b=this.L;break;case 195:b=this.G;break;case 196:b=z(this);break;case 197:b=this.M;break; +case 198:b=this.K;break;case 199:b=this.J;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D;break;case 1:c=this.I;break;case 2:c=this.L;break;case 3:c=this.G;break;case 4:c=z(this);break;case 5:c=this.M;break;case 6:c=this.K;break;case 7:c=this.J;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Og(this,a);this.A-=this.B.Tc;break;case 1:case 2:Og(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Og(this,a);this.A-=this.B.wc;break;case 6:Og(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Og(this, +a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Og(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Og(this,a);this.A-=this.B.Xa;break;case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:oe(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a}} +function Of(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=G(this,this.G+this.K);this.F=this.C;break;case 1:c=G(this,this.G+this.J);this.F=this.C;break;case 2:c=Lg(this,this.M+this.K);this.F=this.C;break;case 3:c=Lg(this,this.M+this.J);this.F=this.C;break;case 4:c=G(this,this.K);this.F=this.C;break;case 5:c=G(this,this.J);this.F=this.C;break;case 6:c=G(this,J(this));this.F=this.C;break;case 7:c=G(this,this.G);this.F=this.C;break;case 64:c=G(this,this.G+this.K+this.S());this.F=this.C;break; +case 65:c=G(this,this.G+this.J+this.S());this.F=this.C;break;case 66:c=Lg(this,this.M+this.K+this.S());this.F=this.C;break;case 67:c=Lg(this,this.M+this.J+this.S());this.F=this.C;break;case 68:c=G(this,this.K+this.S());this.F=this.C;break;case 69:c=G(this,this.J+this.S());this.F=this.C;break;case 70:c=Lg(this,this.M+this.S());this.F=this.C;break;case 71:c=G(this,this.G+this.S());this.F=this.C;break;case 128:c=G(this,this.G+this.K+J(this));this.F=this.C;break;case 129:c=G(this,this.G+this.J+J(this)); +this.F=this.C;break;case 130:c=Lg(this,this.M+this.K+J(this));this.F=this.C;break;case 131:c=Lg(this,this.M+this.J+J(this));this.F=this.C;break;case 132:c=G(this,this.K+J(this));this.F=this.C;break;case 133:c=G(this,this.J+J(this));this.F=this.C;break;case 134:c=Lg(this,this.M+J(this));this.F=this.C;break;case 135:c=G(this,this.G+J(this));this.F=this.C;break;case 192:c=this.D;break;case 193:c=this.I;break;case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break; +case 198:c=this.K;break;case 199:c=this.J}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Og(this,a);this.A-=this.B.Tc;break;case 1:case 2:Og(this,a);this.A-=this.B.Uc;break;case 4:case 5:case 7:Og(this,a);this.A-=this.B.wc;break;case 6:Og(this,a);this.A-=this.B.Ad;break;case 64:case 67:case 128:case 131:Og(this,a);this.A-=this.B.Tb;break;case 65:case 66:case 129:case 130:Og(this,a);this.A-=this.B.Ub;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Og(this, +a);this.A-=this.B.Xa;break;case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:oe(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a}} +function Pf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=D(this,this.D);break;case 1:c=D(this,this.I);break;case 2:c=D(this,this.L);break;case 3:c=D(this,this.G);break;case 4:c=D(this,vk.call(this,0));break;case 5:c=D(this,J(this));break;case 6:c=D(this,this.K);break;case 7:c=D(this,this.J);break;case 64:c=D(this,this.D+this.S());break;case 65:c=D(this,this.I+this.S());break;case 66:c=D(this,this.L+this.S());break;case 67:c=D(this,this.G+this.S());break;case 68:c=D(this,vk.call(this,1)+this.S()); +break;case 69:c=Ig(this,this.M+this.S());break;case 70:c=D(this,this.K+this.S());break;case 71:c=D(this,this.J+this.S());break;case 128:c=D(this,this.D+J(this));break;case 129:c=D(this,this.I+J(this));break;case 130:c=D(this,this.L+J(this));break;case 131:c=D(this,this.G+J(this));break;case 132:c=D(this,vk.call(this,2)+J(this));break;case 133:c=Ig(this,this.M+J(this));break;case 134:c=D(this,this.K+J(this));break;case 135:c=D(this,this.J+J(this));break;case 192:c=this.D&255;break;case 193:c=this.I& +255;break;case 194:c=this.L&255;break;case 195:c=this.G&255;break;case 196:c=this.D>>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D&255;break;case 1:b=this.I&255;break;case 2:b=this.L&255;break;case 3:b=this.G&255;break;case 4:b=this.D>>8&255;break;case 5:b=this.I>>8&255;break;case 6:b=this.L>>8&255;break;case 7:b=this.G>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D= +this.D&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.L=this.L&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.D=this.D&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.L=this.L&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}} +function Qf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=D(this,this.D);this.F=this.C;break;case 1:b=D(this,this.I);this.F=this.C;break;case 2:b=D(this,this.L);this.F=this.C;break;case 3:b=D(this,this.G);this.F=this.C;break;case 4:b=D(this,vk.call(this,0));this.F=this.C;break;case 5:b=D(this,J(this));this.F=this.C;break;case 6:b=D(this,this.K);this.F=this.C;break;case 7:b=D(this,this.J);this.F=this.C;break;case 64:b=D(this,this.D+this.S());this.F=this.C;break;case 65:b=D(this,this.I+this.S()); +this.F=this.C;break;case 66:b=D(this,this.L+this.S());this.F=this.C;break;case 67:b=D(this,this.G+this.S());this.F=this.C;break;case 68:b=D(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:b=Ig(this,this.M+this.S());this.F=this.C;break;case 70:b=D(this,this.K+this.S());this.F=this.C;break;case 71:b=D(this,this.J+this.S());this.F=this.C;break;case 128:b=D(this,this.D+J(this));this.F=this.C;break;case 129:b=D(this,this.I+J(this));this.F=this.C;break;case 130:b=D(this,this.L+J(this));this.F= +this.C;break;case 131:b=D(this,this.G+J(this));this.F=this.C;break;case 132:b=D(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:b=Ig(this,this.M+J(this));this.F=this.C;break;case 134:b=D(this,this.K+J(this));this.F=this.C;break;case 135:b=D(this,this.J+J(this));this.F=this.C;break;case 192:b=this.D&255;break;case 193:b=this.I&255;break;case 194:b=this.L&255;break;case 195:b=this.G&255;break;case 196:b=this.D>>8&255;break;case 197:b=this.I>>8&255;break;case 198:b=this.L>>8&255;break;case 199:b= +this.G>>8&255;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&255;break;case 1:c=this.I&255;break;case 2:c=this.L&255;break;case 3:c=this.G&255;break;case 4:c=this.D>>8&255;break;case 5:c=this.I>>8&255;break;case 6:c=this.L>>8&255;break;case 7:c=this.G>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I= +this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8;break;default:Mg(this,a)}} +function Rf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=D(this,this.D);this.F=this.C;break;case 1:c=D(this,this.I);this.F=this.C;break;case 2:c=D(this,this.L);this.F=this.C;break;case 3:c=D(this,this.G);this.F=this.C;break;case 4:c=D(this,vk.call(this,0));this.F=this.C;break;case 5:c=D(this,J(this));this.F=this.C;break;case 6:c=D(this,this.K);this.F=this.C;break;case 7:c=D(this,this.J);this.F=this.C;break;case 64:c=D(this,this.D+this.S());this.F=this.C;break;case 65:c=D(this,this.I+this.S()); +this.F=this.C;break;case 66:c=D(this,this.L+this.S());this.F=this.C;break;case 67:c=D(this,this.G+this.S());this.F=this.C;break;case 68:c=D(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:c=Ig(this,this.M+this.S());this.F=this.C;break;case 70:c=D(this,this.K+this.S());this.F=this.C;break;case 71:c=D(this,this.J+this.S());this.F=this.C;break;case 128:c=D(this,this.D+J(this));this.F=this.C;break;case 129:c=D(this,this.I+J(this));this.F=this.C;break;case 130:c=D(this,this.L+J(this));this.F= +this.C;break;case 131:c=D(this,this.G+J(this));this.F=this.C;break;case 132:c=D(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:c=Ig(this,this.M+J(this));this.F=this.C;break;case 134:c=D(this,this.K+J(this));this.F=this.C;break;case 135:c=D(this,this.J+J(this));this.F=this.C;break;case 192:c=this.D&255;break;case 193:c=this.I&255;break;case 194:c=this.L&255;break;case 195:c=this.G&255;break;case 196:c=this.D>>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.L>>8&255;break;case 199:c= +this.G>>8&255;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 192:this.D=this.D&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.L=this.L&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.D=this.D&-65281|a<<8;break;case 197:this.I=this.I&-65281|a<<8;break;case 198:this.L=this.L&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8;break;default:Mg(this,a)}} +function Sf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=E(this,this.D);break;case 1:c=E(this,this.I);break;case 2:c=E(this,this.L);break;case 3:c=E(this,this.G);break;case 4:c=E(this,vk.call(this,0));break;case 5:c=E(this,J(this));break;case 6:c=E(this,this.K);break;case 7:c=E(this,this.J);break;case 64:c=E(this,this.D+this.S());break;case 65:c=E(this,this.I+this.S());break;case 66:c=E(this,this.L+this.S());break;case 67:c=E(this,this.G+this.S());break;case 68:c=E(this,vk.call(this,1)+this.S()); +break;case 69:c=Kg(this,this.M+this.S());break;case 70:c=E(this,this.K+this.S());break;case 71:c=E(this,this.J+this.S());break;case 128:c=E(this,this.D+J(this));break;case 129:c=E(this,this.I+J(this));break;case 130:c=E(this,this.L+J(this));break;case 131:c=E(this,this.G+J(this));break;case 132:c=E(this,vk.call(this,2)+J(this));break;case 133:c=Kg(this,this.M+J(this));break;case 134:c=E(this,this.K+J(this));break;case 135:c=E(this,this.J+J(this));break;case 192:c=this.D&65535;break;case 193:c=this.I& +65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535;break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D&65535;break;case 1:b=this.I&65535;break;case 2:b=this.L&65535;break;case 3:b=this.G&65535;break;case 4:b=z(this)&65535;break;case 5:b=this.M&65535;break;case 6:b=this.K&65535;break;case 7:b=this.J&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D= +this.D&-65536|a;break;case 1:this.I=this.I&-65536|a;break;case 2:this.L=this.L&-65536|a;break;case 3:this.G=this.G&-65536|a;break;case 4:oe(this,z(this)&-65536|a);break;case 5:this.M=this.M&-65536|a;break;case 6:this.K=this.K&-65536|a;break;case 7:this.J=this.J&-65536|a}} +function Tf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=E(this,this.D);this.F=this.C;break;case 1:b=E(this,this.I);this.F=this.C;break;case 2:b=E(this,this.L);this.F=this.C;break;case 3:b=E(this,this.G);this.F=this.C;break;case 4:b=E(this,vk.call(this,0));this.F=this.C;break;case 5:b=E(this,J(this));this.F=this.C;break;case 6:b=E(this,this.K);this.F=this.C;break;case 7:b=E(this,this.J);this.F=this.C;break;case 64:b=E(this,this.D+this.S());this.F=this.C;break;case 65:b=E(this,this.I+this.S()); +this.F=this.C;break;case 66:b=E(this,this.L+this.S());this.F=this.C;break;case 67:b=E(this,this.G+this.S());this.F=this.C;break;case 68:b=E(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:b=Kg(this,this.M+this.S());this.F=this.C;break;case 70:b=E(this,this.K+this.S());this.F=this.C;break;case 71:b=E(this,this.J+this.S());this.F=this.C;break;case 128:b=E(this,this.D+J(this));this.F=this.C;break;case 129:b=E(this,this.I+J(this));this.F=this.C;break;case 130:b=E(this,this.L+J(this));this.F= +this.C;break;case 131:b=E(this,this.G+J(this));this.F=this.C;break;case 132:b=E(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:b=Kg(this,this.M+J(this));this.F=this.C;break;case 134:b=E(this,this.K+J(this));this.F=this.C;break;case 135:b=E(this,this.J+J(this));this.F=this.C;break;case 192:b=this.D&65535;break;case 193:b=this.I&65535;break;case 194:b=this.L&65535;break;case 195:b=this.G&65535;break;case 196:b=z(this)&65535;break;case 197:b=this.M&65535;break;case 198:b=this.K&65535;break; +case 199:b=this.J&65535;break;default:b=0}switch(this.ga>>3&7){case 0:c=this.D&65535;break;case 1:c=this.I&65535;break;case 2:c=this.L&65535;break;case 3:c=this.G&65535;break;case 4:c=z(this)&65535;break;case 5:c=this.M&65535;break;case 6:c=this.K&65535;break;case 7:c=this.J&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:oe(this,z(this)& +-65536|a);break;case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a;break;default:Ng(this,a)}} +function Uf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=E(this,this.D);this.F=this.C;break;case 1:c=E(this,this.I);this.F=this.C;break;case 2:c=E(this,this.L);this.F=this.C;break;case 3:c=E(this,this.G);this.F=this.C;break;case 4:c=E(this,vk.call(this,0));this.F=this.C;break;case 5:c=E(this,J(this));this.F=this.C;break;case 6:c=E(this,this.K);this.F=this.C;break;case 7:c=E(this,this.J);this.F=this.C;break;case 64:c=E(this,this.D+this.S());this.F=this.C;break;case 65:c=E(this,this.I+this.S()); +this.F=this.C;break;case 66:c=E(this,this.L+this.S());this.F=this.C;break;case 67:c=E(this,this.G+this.S());this.F=this.C;break;case 68:c=E(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:c=Kg(this,this.M+this.S());this.F=this.C;break;case 70:c=E(this,this.K+this.S());this.F=this.C;break;case 71:c=E(this,this.J+this.S());this.F=this.C;break;case 128:c=E(this,this.D+J(this));this.F=this.C;break;case 129:c=E(this,this.I+J(this));this.F=this.C;break;case 130:c=E(this,this.L+J(this));this.F= +this.C;break;case 131:c=E(this,this.G+J(this));this.F=this.C;break;case 132:c=E(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:c=Kg(this,this.M+J(this));this.F=this.C;break;case 134:c=E(this,this.K+J(this));this.F=this.C;break;case 135:c=E(this,this.J+J(this));this.F=this.C;break;case 192:c=this.D&65535;break;case 193:c=this.I&65535;break;case 194:c=this.L&65535;break;case 195:c=this.G&65535;break;case 196:c=z(this)&65535;break;case 197:c=this.M&65535;break;case 198:c=this.K&65535;break; +case 199:c=this.J&65535;break;default:c=0}a=a[this.ga>>3&7].call(this,c,b.call(this));switch(d){case 192:this.D=this.D&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.L=this.L&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:oe(this,z(this)&-65536|a);break;case 197:this.M=this.M&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a;break;default:Ng(this,a)}} +function Vf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=G(this,this.D);break;case 1:c=G(this,this.I);break;case 2:c=G(this,this.L);break;case 3:c=G(this,this.G);break;case 4:c=G(this,vk.call(this,0));break;case 5:c=G(this,J(this));break;case 6:c=G(this,this.K);break;case 7:c=G(this,this.J);break;case 64:c=G(this,this.D+this.S());break;case 65:c=G(this,this.I+this.S());break;case 66:c=G(this,this.L+this.S());break;case 67:c=G(this,this.G+this.S());break;case 68:c=G(this,vk.call(this,1)+this.S()); +break;case 69:c=Lg(this,this.M+this.S());break;case 70:c=G(this,this.K+this.S());break;case 71:c=G(this,this.J+this.S());break;case 128:c=G(this,this.D+J(this));break;case 129:c=G(this,this.I+J(this));break;case 130:c=G(this,this.L+J(this));break;case 131:c=G(this,this.G+J(this));break;case 132:c=G(this,vk.call(this,2)+J(this));break;case 133:c=Lg(this,this.M+J(this));break;case 134:c=G(this,this.K+J(this));break;case 135:c=G(this,this.J+J(this));break;case 192:c=this.D;break;case 193:c=this.I;break; +case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}var d=this.ga>>3&7;switch(d){case 0:b=this.D;break;case 1:b=this.I;break;case 2:b=this.L;break;case 3:b=this.G;break;case 4:b=z(this);break;case 5:b=this.M;break;case 6:b=this.K;break;case 7:b=this.J;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.D=a;break;case 1:this.I=a;break;case 2:this.L=a;break;case 3:this.G=a;break;case 4:oe(this, +a);break;case 5:this.M=a;break;case 6:this.K=a;break;case 7:this.J=a}} +function Wf(a){var b,c,d=(this.ga=this.ra())&199;switch(d){case 0:b=G(this,this.D);this.F=this.C;break;case 1:b=G(this,this.I);this.F=this.C;break;case 2:b=G(this,this.L);this.F=this.C;break;case 3:b=G(this,this.G);this.F=this.C;break;case 4:b=G(this,vk.call(this,0));this.F=this.C;break;case 5:b=G(this,J(this));this.F=this.C;break;case 6:b=G(this,this.K);this.F=this.C;break;case 7:b=G(this,this.J);this.F=this.C;break;case 64:b=G(this,this.D+this.S());this.F=this.C;break;case 65:b=G(this,this.I+this.S()); +this.F=this.C;break;case 66:b=G(this,this.L+this.S());this.F=this.C;break;case 67:b=G(this,this.G+this.S());this.F=this.C;break;case 68:b=G(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:b=Lg(this,this.M+this.S());this.F=this.C;break;case 70:b=G(this,this.K+this.S());this.F=this.C;break;case 71:b=G(this,this.J+this.S());this.F=this.C;break;case 128:b=G(this,this.D+J(this));this.F=this.C;break;case 129:b=G(this,this.I+J(this));this.F=this.C;break;case 130:b=G(this,this.L+J(this));this.F= +this.C;break;case 131:b=G(this,this.G+J(this));this.F=this.C;break;case 132:b=G(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:b=Lg(this,this.M+J(this));this.F=this.C;break;case 134:b=G(this,this.K+J(this));this.F=this.C;break;case 135:b=G(this,this.J+J(this));this.F=this.C;break;case 192:b=this.D;break;case 193:b=this.I;break;case 194:b=this.L;break;case 195:b=this.G;break;case 196:b=z(this);break;case 197:b=this.M;break;case 198:b=this.K;break;case 199:b=this.J;break;default:b=0}switch(this.ga>> +3&7){case 0:c=this.D;break;case 1:c=this.I;break;case 2:c=this.L;break;case 3:c=this.G;break;case 4:c=z(this);break;case 5:c=this.M;break;case 6:c=this.K;break;case 7:c=this.J;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:oe(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a;break;default:Og(this,a)}} +function Xf(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=G(this,this.D);this.F=this.C;break;case 1:c=G(this,this.I);this.F=this.C;break;case 2:c=G(this,this.L);this.F=this.C;break;case 3:c=G(this,this.G);this.F=this.C;break;case 4:c=G(this,vk.call(this,0));this.F=this.C;break;case 5:c=G(this,J(this));this.F=this.C;break;case 6:c=G(this,this.K);this.F=this.C;break;case 7:c=G(this,this.J);this.F=this.C;break;case 64:c=G(this,this.D+this.S());this.F=this.C;break;case 65:c=G(this,this.I+this.S()); +this.F=this.C;break;case 66:c=G(this,this.L+this.S());this.F=this.C;break;case 67:c=G(this,this.G+this.S());this.F=this.C;break;case 68:c=G(this,vk.call(this,1)+this.S());this.F=this.C;break;case 69:c=Lg(this,this.M+this.S());this.F=this.C;break;case 70:c=G(this,this.K+this.S());this.F=this.C;break;case 71:c=G(this,this.J+this.S());this.F=this.C;break;case 128:c=G(this,this.D+J(this));this.F=this.C;break;case 129:c=G(this,this.I+J(this));this.F=this.C;break;case 130:c=G(this,this.L+J(this));this.F= +this.C;break;case 131:c=G(this,this.G+J(this));this.F=this.C;break;case 132:c=G(this,vk.call(this,2)+J(this));this.F=this.C;break;case 133:c=Lg(this,this.M+J(this));this.F=this.C;break;case 134:c=G(this,this.K+J(this));this.F=this.C;break;case 135:c=G(this,this.J+J(this));this.F=this.C;break;case 192:c=this.D;break;case 193:c=this.I;break;case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}a=a[this.ga>> +3&7].call(this,c,b.call(this));switch(d){case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:oe(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a;break;default:Og(this,a)}} +function vk(a){var b=this.ra(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.D;break;case 1:d=this.I;break;case 2:d=this.L;break;case 3:d=this.G;break;case 4:d=0;break;case 5:d=this.M;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.D;break;case 1:e=this.I;break;case 2:e=this.L;break;case 3:e=this.G;break;case 4:e=z(this);this.Ea=this.Rb;break;case 5:a?(e=this.M,this.Ea=this.Rb):e=J(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<>8&255;9<(c&15)||ng(this)?(c+=6,80286<=this.da&&255>8&255;9<(c&15)||ng(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.D=this.D&-65536|d<<8|c;a?sg(this):tg(this);b?Cg(this):yg(this);this.A-=this.B.we},function(){this.D=ik.call(this,this.D)},function(){this.I=ik.call(this,this.I)},function(){this.L=ik.call(this,this.L)},function(){this.G=ik.call(this,this.G)},function(){oe(this, +ik.call(this,z(this)))},function(){this.M=ik.call(this,this.M)},function(){this.K=ik.call(this,this.K)},function(){this.J=ik.call(this,this.J)},function(){this.D=gk.call(this,this.D)},function(){this.I=gk.call(this,this.I)},function(){this.L=gk.call(this,this.L)},function(){this.G=gk.call(this,this.G)},function(){oe(this,gk.call(this,z(this)))},function(){this.M=gk.call(this,this.M)},function(){this.K=gk.call(this,this.K)},function(){this.J=gk.call(this,this.J)},function(){we(this,this.D&this.R); +this.A-=this.B.Jc},function(){we(this,this.I&this.R);this.A-=this.B.Jc},function(){we(this,this.L&this.R);this.A-=this.B.Jc},function(){we(this,this.G&this.R);this.A-=this.B.Jc},function(){we(this,z(this)-2&65535);this.A-=this.B.Jc},function(){we(this,this.M&this.R);this.A-=this.B.Jc},function(){we(this,this.K&this.R);this.A-=this.B.Jc},function(){we(this,this.J&this.R);this.A-=this.B.Jc},function(){this.D=this.D&~this.R|me(this);this.A-=this.B.nc},function(){this.I=this.I&~this.R|me(this);this.A-= +this.B.nc},function(){this.L=this.L&~this.R|me(this);this.A-=this.B.nc},function(){this.G=this.G&~this.R|me(this);this.A-=this.B.nc},function(){oe(this,z(this)&~this.R|me(this));this.A-=this.B.nc},function(){this.M=this.M&~this.R|me(this);this.A-=this.B.nc},function(){this.K=this.K&~this.R|me(this);this.A-=this.B.nc},function(){this.J=this.J&~this.R|me(this);this.A-=this.B.nc},wk,xk,yk,zk,Ak,Bk,Ck,Dk,Ek,Fk,Gk,Hk,Ik,Jk,Kk,Lk,wk,xk,yk,zk,Ak,Bk,Ck,Dk,Ek,Fk,Gk,Hk,Ik,Jk,Kk,Lk,Mk,function(){this.lb.call(this, +al,this.Fa);this.A-=-1===this.F?1:this.B.Bg},Mk,function(){this.lb.call(this,al,this.S);this.A-=-1===this.F?1:this.B.Bg},function(){this.tc.call(this,Xj)},function(){this.za.call(this,Yj)},function(){this.kc.call(this,bk)},function(){this.la.call(this,ck)},Ok,Pk,Qk,Rk,function(){this.N|=1;this.za.call(this,pj)},function(){this.N|=1;this.Ea=this.Rb=this.Tg;this.la.call(this,Xi)},function(){var a;this.la.call(this,oj);switch(this.ga>>3&7){case 0:a=this.D;this.D=this.xa;ve(this,a);break;case 1:a=this.I; +this.I=this.xa;gg(this,a);break;case 2:a=this.L;this.L=this.xa;ne(this,a);break;case 3:a=this.G;this.G=this.xa;ue(this,a);break;case 4:a=z(this);oe(this,this.xa);80386<=this.da?this.Ga.load(a):ve(this,a);break;case 5:a=this.M;this.M=this.xa;80386<=this.da?this.Ia.load(a):gg(this,a);break;case 6:a=this.K;this.K=this.xa;ne(this,a);break;case 7:a=this.J,this.J=this.xa,ue(this,a)}},function(){this.N|=1;this.sa=this.Aa;this.xa=me(this);this.lb.call(this,bl,pk);this.sa=-1},function(){this.A-=3},function(){var a= +this.D;this.D=this.D&~this.R|this.I&this.R;this.I=this.I&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.L&this.R;this.L=this.L&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.G&this.R;this.G=this.G&~this.R|a&this.R;this.A-=3},function(){var a=this.D,b=z(this);this.D=this.D&~this.R|b&this.R;oe(this,b&~this.R|a&this.R);this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.M&this.R;this.M=this.M&~this.R|a&this.R;this.A-=3},function(){var a= +this.D;this.D=this.D&~this.R|this.K&this.R;this.K=this.K&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.J&this.R;this.J=this.J&~this.R|a&this.R;this.A-=3},function(){this.D=2==this.V?this.D&-65536|this.D<<24>>24&65535:this.D<<16>>16;this.A-=2},function(){this.L=2==this.V?this.L&-65536|(this.D&32768?65535:0):this.D&-2147483648?-1:0;this.A-=this.B.Pj},function(){qk.call(this,this.Fa(),Pg(this));this.A-=this.B.Sj},function(){this.A-=3},function(){var a=De(this);a&131072&& +3>this.lc?y.call(this,13,0):(we(this,a&-196609),this.A-=this.B.Jc)},function(){if(this.P&131072&&3>this.lc)y.call(this,13,0);else{var a=me(this),a=a&65535|this.P&-65536;Ee(this,a);this.A-=this.B.nc}},function(){var a=this.D>>8&255;a&1?sg(this):tg(this);a&4?(this.resultType&=-3,this.P|=4):(this.resultType&=-3,this.P&=-5);a&16?Cg(this):yg(this);a&64?Dg(this):zg(this);a&128?(this.resultType&=-17,this.P|=128):(this.resultType&=-17,this.P&=-129);this.A-=this.B.Vb},function(){this.D=this.D&-65281|(De(this)& +213)<<8;this.A-=this.B.Vb},function(){var a=this.D&-256,b;b=J(this);b=this.Ja(this.Ea.ac(b,1));this.D=a|b;this.A-=this.B.Nh},function(){this.D=this.D&~this.R|se(this,this.Ea,J(this));this.A-=this.B.Nh},function(){var a=J(this),b=this.D;this.fc(this.Ea.bc(a,1),b);this.A-=this.B.Oh},function(){var a=J(this),b=this.D;this.yb(this.Ea.bc(a,this.V),b);this.A-=this.B.Oh},function(){var a=1,b=0,c=this.wa,d=this.B.Ph;this.ha&192&&(a=this.I&c,b=1,d=this.B.Rh,this.ha&256||(this.A-=this.B.Qh));if(a--){var e= +this.Ja(this.Ea.ac(this.K&c,1));this.fc(this.oa.bc(this.J&c,1),e);e=this.P&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-b&c;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Ph;this.ha&192&&(a=this.I&c,b=1,d=this.B.Rh,this.ha&256||(this.A-=this.B.Qh));if(a--){var e=se(this,this.Ea,this.K&c);this.yb(this.oa.bc(this.J&c,this.V),e);e=this.P&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d; +this.I=this.I&~c|this.I-b&c;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Ah;this.ha&192&&(a=this.I&c,b=1,d=this.B.Ch,this.ha&256||(this.A-=this.B.Bh));if(a--){var e=Hg(this,this.Ea,this.K),f=Hg(this,this.oa,this.J);this.F=this.C;Ki.call(this,e,f);e=this.P&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Jb;a&&og(this)==(this.ha&64)&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Ah;this.ha&192&& +(a=this.I&c,b=1,d=this.B.Ch,this.ha&256||(this.A-=this.B.Bh));if(a--){var e=Jg(this,this.Ea,this.K&c),f=Jg(this,this.oa,this.J&c);this.F=this.C;Li.call(this,e,f);e=this.P&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Jb;a&&og(this)==(this.ha&64)&&(jg(this),this.N|=256)}},function(){rg(this,this.D&this.ra(),128);this.A-=this.B.we},function(){rg(this,this.D&this.Fa(),this.Fb);this.A-=this.B.we},function(){var a=1,b=0,c=this.wa, +d=this.B.$h;this.ha&192&&(a=this.I&c,b=1,d=this.B.bi,this.ha&256||(this.A-=this.B.ai));if(a--){var e=this.D;this.fc(this.oa.bc(this.J&c,1),e);this.I=this.I&~c|this.I-b&c;80546<=this.Sd&&80564>=this.Sd&&!(this.ha&2048)!=(103!=this.Ja(this.ea))&&(c^=-65536);this.J=this.J&~c|this.J+(this.P&1024?-1:1)&c;this.A-=d;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.$h;this.ha&192&&(a=this.I&c,b=1,d=this.B.bi,this.ha&256||(this.A-=this.B.ai));if(a--){var e=this.D;this.yb(this.oa.bc(this.J& +c,this.V),e);this.J=this.J&~c|this.J+(this.P&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Hh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Jh,this.ha&256||(this.A-=this.B.Ih));if(a--){var e=this.Ja(this.Ea.ac(this.K&c,1));this.D=this.D&-256|e;this.K=this.K&~c|this.K+(this.P&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Hh;this.ha&192&&(a=this.I&c, +b=1,d=this.B.Jh,this.ha&256||(this.A-=this.B.Ih));if(a--){var e=se(this,this.Ea,this.K&c);this.D=this.D&~this.R|e;this.K=this.K&~c|this.K+(this.P&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Uh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Wh,this.ha&256||(this.A-=this.B.Vh));if(a--){var e=this.D&255,f=Hg(this,this.oa,this.J);this.F=this.C;Ki.call(this,e,f);this.J=this.J&~c|this.J+(this.P&1024?-1:1)&c;this.I=this.I&~c|this.I- +b&c;this.A-=d-this.B.Jb;a&&og(this)==(this.ha&64)&&(jg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Uh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Wh,this.ha&256||(this.A-=this.B.Vh));if(a--){var e=this.D&this.R,f=Jg(this,this.oa,this.J&c);this.F=this.C;Li.call(this,e,f);this.J=this.J&~c|this.J+(this.P&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Jb;a&&og(this)==(this.ha&64)&&(jg(this),this.N|=256)}},function(){this.D=this.D&-256|this.ra();this.A-=this.B.Vb},function(){this.I= +this.I&-256|this.ra();this.A-=this.B.Vb},function(){this.L=this.L&-256|this.ra();this.A-=this.B.Vb},function(){this.G=this.G&-256|this.ra();this.A-=this.B.Vb},function(){this.D=this.D&-65281|this.ra()<<8;this.A-=this.B.Vb},function(){this.I=this.I&-65281|this.ra()<<8;this.A-=this.B.Vb},function(){this.L=this.L&-65281|this.ra()<<8;this.A-=this.B.Vb},function(){this.G=this.G&-65281|this.ra()<<8;this.A-=this.B.Vb},function(){this.D=this.D&~this.R|this.Fa();this.A-=this.B.Vb},function(){this.I=this.I& +~this.R|this.Fa();this.A-=this.B.Vb},function(){this.L=this.L&~this.R|this.Fa();this.A-=this.B.Vb},function(){this.G=this.G&~this.R|this.Fa();this.A-=this.B.Vb},function(){oe(this,z(this)&~this.R|this.Fa());this.A-=this.B.Vb},function(){this.M=this.M&~this.R|this.Fa();this.A-=this.B.Vb},function(){this.K=this.K&~this.R|this.Fa();this.A-=this.B.Vb},function(){this.J=this.J&~this.R|this.Fa();this.A-=this.B.Vb},Vk,Wk,Vk,Wk,function(){this.la.call(this,Yi)},function(){this.la.call(this,Wi)},function(){this.N|= +1;this.md.call(this,cl,this.ra)},function(){this.N|=1;this.lb.call(this,cl,this.Fa)},Xk,Yk,Xk,Yk,function(){if(this.P&131072&&3>this.lc)y.call(this,13,0);else{var a=this.B.ik;this.Kc=-1;rk.call(this,3,null,a)}},function(){var a=this.ra();if(this.P&131072&&3>this.lc)y.call(this,13,0);else{var b;a:{b=this.Zf[a];if(void 0!==b)for(var c=0;cthis.lc)y.call(this,13,0);else{var a=this.B.jk;this.Kc=-1;rk.call(this,4,null,a)}else this.A-=this.B.kk},function(){if(this.P&131072&&3>this.lc)y.call(this,13,0);else{this.Lc=this.X.U;this.sa=this.Aa;this.A-=this.B.gk;if(this.qa&1&&this.P&16384){var a=this.ja(this.ka.ua+0);pe(this.Z,a,!1)}else{var a=this.Ma,b=me(this),c=me(this),d=me(this);if(this.P&131072)d=d&131071|this.P&-131072;else if(d&131072){var e=me(this),f=me(this),g=me(this),h=me(this),k=me(this),m=me(this);qe(this,!0,!0);ne(this, +f);oe(this,e);ve(this,g);ue(this,h);this.Ga.load(k);this.Ia.load(m)}null!=Fe(this,b,c,!1)&&(Ee(this,d,a),this.bg&&bg(this,this.ea))}this.Lc=this.sa=-1}},function(){this.md.call(this,Sk,lk)},function(){this.lb.call(this,2==this.V?Tk:Uk,lk)},function(){this.md.call(this,Sk,mk)},function(){this.lb.call(this,2==this.V?Tk:Uk,mk)},function(){var a=this.ra();if(a){var b=this.D&255;this.D=this.D&-65536|b/a<<8|b%a;rg(this,this.D,128);this.A-=this.B.Mj}else uk.call(this)},function(){var a=this.D&255,b=(this.D>> +8&255)*this.ra()|0,c=a+b|0;this.D=this.D&-65536|c&255;kg(this,a,b,c,191);this.A-=this.B.Lj},function(){this.D=this.D&-256|(lg(this)?255:0);this.A-=2},function(){this.D=this.D&-256|Hg(this,this.Ea,this.G+(this.D&255));this.A-=this.B.Lk},function(){Zk.call(this,216)},function(){Zk.call(this,217)},function(){Zk.call(this,218)},function(){Zk.call(this,219)},function(){Zk.call(this,220)},function(){Zk.call(this,221)},function(){Zk.call(this,222)},function(){Zk.call(this,223)},function(){var a=this.S(), +b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b&&!og(this)?(C(this,A(this)+a),this.A-=this.B.sk):this.A-=this.B.Kh},function(){var a=this.S(),b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b&&og(this)?(C(this,A(this)+a),this.A-=this.B.Lh):this.A-=this.B.Mh},function(){var a=this.S(),b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b?(C(this,A(this)+a),this.A-=this.B.rk):this.A-=this.B.Kh},function(){var a=this.S();this.I&this.wa?this.A-=this.B.Mh:(C(this,A(this)+a),this.A-=this.B.Lh)},function(){var a=this.ra(); +Fg(this,a,1,!0)&&(this.D=this.D&-256|Uc(this.ma,a,1,this.ea-2)&255,this.A-=this.B.Fh)},function(){var a=this.ra();Fg(this,a,this.V,!0)&&(this.D=this.D&~this.R|Uc(this.ma,a,this.V,this.ea-2)&this.R,this.A-=this.B.Fh)},function(){var a=this.ra();Fg(this,a,1,!1)&&(Yc(this.ma,a,1,this.D&255,this.ea-2),this.A-=this.B.Th)},function(){var a=this.ra();Fg(this,a,this.V,!1)&&(Yc(this.ma,a,this.V,this.D&this.R,this.ea-2),this.A-=this.B.Th)},function(){var a=this.Fa(),b=A(this),a=b+a;we(this,b);C(this,a);this.A-= +this.B.Qj},function(){var a=this.Fa();C(this,A(this)+a);this.A-=this.B.Gh},function(){Fe(this,this.Fa(),Pg(this));this.A-=this.B.mk},function(){var a=this.S();C(this,A(this)+a);this.A-=this.B.Gh},function(){var a=this.L&65535;Fg(this,a,1,!0)&&(this.D=this.D&-256|Uc(this.ma,a,1,this.ea-1)&255,this.A-=this.B.Eh)},function(){var a=this.L&65535;Fg(this,a,this.V,!0)&&(this.D=this.D&~this.R|Uc(this.ma,a,this.V,this.ea-1)&this.R,this.A-=this.B.Eh)},function(){var a=this.L&65535;Fg(this,a,1,!1)&&(Yc(this.ma, +a,1,this.D&255,this.ea-1),this.A-=this.B.Sh)},function(){var a=this.L&65535;Fg(this,a,2,!1)&&(Yc(this.ma,a,this.V,this.D&this.R,this.ea-1),this.A-=this.B.Sh)},$k,$k,function(){this.N|=132;this.A-=this.B.ad},function(){this.N|=68;this.A-=this.B.ad},function(){this.P&131072?y.call(this,13,0):(this.Ya|=4,this.A-=2,this.ca&&t(this,-2147483648)?(jg(this),this.ca.Kb()):this.P&512||(this.ca&&jg(this),this.Kb()))},function(){lg(this)?tg(this):sg(this);this.A-=2},function(){this.vc=!1;this.md.call(this,el, +ok);this.vc&&(this.D=this.D&~this.R|this.Ba&this.R)},function(){this.vc=!1;this.lb.call(this,fl,ok);this.vc&&(this.D=this.D&~this.R|this.Ba&this.R,this.L=this.L&~this.R|this.Za&this.R)},function(){tg(this);this.A-=2},function(){sg(this);this.A-=2},function(){this.Ma>this.lc?y.call(this,13,0):(this.P&=-513,this.A-=this.B.Oj)},function(){this.Ma>this.lc?y.call(this,13,0):(this.P|=512,this.N|=4,this.A-=2)},function(){this.P&=-1025;this.A-=2},function(){this.P|=1024;this.A-=2},function(){this.md.call(this, +Je,ok)},function(){this.lb.call(this,Ke,ok)}],Nk=[ui,qj,si,sj,wi,Vj,dk,Ki],al=[vi,rj,ti,tj,xi,Wj,ek,Li],bl=[function(a,b){this.A-=-1===this.F?this.B.nc:this.B.Dk;return b},Ni,Ni,Ni,Ni,Ni,Ni,Ni],cl=[function(a,b){this.A-=-1===this.F?this.B.vk:this.B.tk;return b},Oi,Oi,Oi,Oi,Oi,Oi,Oi],Sk=[function(a,b){var c=a;if(b&=this.Ta){var d;(b&=7)?(d=a<>8-b)&255):d=a<<7;wg(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Ta){var d;(b&=7)?(d=a<<8-b,c=(a>>>b|d)&255):d=a;wg(this,c,d,128)}return c}, +function(a,b){var c=a;if(b&=this.Ta){var d=xg(this);(b%=9)?(c=(a<>9-b)&255,d=a<>b|d<<8-b|a<<9-b)&255,d=a<<8-b):d<<=7;wg(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Ta){var d=0;8>>b-1,a=b>>>1&255,rg(this,a,128,b&1,a&128);return a},Oi,function(a,b){if(b&=this.Ta)9>24>>b-1,a=b>>1&255,rg(this,a,128,b&1);return a}],Tk=[function(a,b){var c=a;if(b&=this.Ta){var d;(b&=15)?(d=a<>16-b)&65535):d=a<<15;wg(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ta){var d;(b&=15)?(d=a<<16-b,c=(a>>>b|d)&65535):d=a;wg(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ta){var d=xg(this);(b%=17)?(c=(a<>17-b)&65535,d=a<>b|d<<16-b|a<<17-b)&65535,d=a<<16-b):d<<=15;wg(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ta){var d=0;16>>b-1,a=b>>>1&65535,rg(this,a,32768,b&1,a&32768);return a},Oi,function(a,b){if(b&=this.Ta)17>16>>b-1,a=b>>1&65535,rg(this,a,32768,b&1);return a}],Uk=[function(a,b){var c=a;if(b&=this.Ta)c=a<>>32-b,wg(this,c,a<>>b|d;wg(this,c,d,-2147483648)}return c},function(a,b){var c=a;if(b&=this.Ta)c=xg(this),c=a<>>32-b>>>1,wg(this,c,a<>>b|c<<32-b|a<<32-b<<1,wg(this,c,a<<32-b,-2147483648);return c},function(a,b){var c=a;if(b&=this.Ta)a<<=b-1,c=a<<1,rg(this,c,-2147483648,a&-2147483648,(c^a)&-2147483648);return c},function(a,b){if(b&=this.Ta)b=a>>>b-1,a=b>>>1,rg(this,a,-2147483648, +b&1,a&-2147483648);return a},Oi,function(a,b){if(b&=this.Ta)b=a>>b-1,a=b>>1,rg(this,a,-2147483648,b&1);return a}],el=[function(a,b){b=this.ra();rg(this,a&b,128);this.A-=-1===this.C?this.B.di:this.B.ci;this.N|=2;return a},Oi,function(a){this.A-=-1===this.C?this.B.Ff:this.B.Ef;return a^255},function(a){var b=-a|0;kg(this,0,a,b,191,!0);this.A-=-1===this.C?this.B.Ff:this.B.Ef;return b&255},function(a){this.Ba=(this.D&255)*a&65535;this.Ba&65280?(sg(this),ug(this)):(tg(this),vg(this));this.vc=!0;this.A-= +-1===this.C?this.B.zk:this.B.yk;this.N|=2;return a},function(a){var b=(this.D<<24>>24)*(a<<24>>24)|0;this.Ba=b&65535;127b?(sg(this),ug(this)):(tg(this),vg(this));this.vc=!0;this.A-=-1===this.C?this.B.dk:this.B.ck;this.N|=2;return a},function(a,b){if(!a)return uk.call(this),a;var c=(b=this.D&65535)/a;if(255>24,d= +(b=this.D<<16>>16)/c|0;if(d!=d<<24>>24||8086==this.da&&-128==d)return uk.call(this),a;this.Ba=d&255|(b%c&255)<<8;this.vc=!0;this.A-=-1===this.C?this.B.$j:this.B.Zj;this.N|=2;return a}],fl=[function(a,b){b=this.Fa();rg(this,a&b,this.Fb);this.A-=-1===this.C?this.B.di:this.B.ci;this.N|=2;return a},Oi,function(a){this.A-=-1===this.C?this.B.Ff:this.B.Ef;return a^this.R},function(a){var b=-a|0;kg(this,0,a,b,this.Fb|63,!0);this.A-=-1===this.C?this.B.Ff:this.B.Ef;return b&this.R},function(a,b){2==this.V? +(b=this.D&65535,b=b*a|0,this.Ba=b&65535,this.Za=b>>16&65535):(Ui.call(this,a,this.D),80563==this.Sd&&68657152==this.D&&129==a&&(this.Za=0));this.Za?(sg(this),ug(this)):(tg(this),vg(this));this.vc=!0;this.A-=-1===this.C?this.B.Bk:this.B.Ak;this.N|=2;return a},function(a,b){2==this.V?(b=this.D&65535,b=(b<<16>>16)*(a<<16>>16)|0,this.Ba=b&65535,this.Za=b>>16&65535,b=32767b):(Ti.call(this,a,this.D),b=this.Za!=this.Ba>>31);b?(sg(this),ug(this)):(tg(this),vg(this));this.vc=!0;this.A-=-1===this.C? +this.B.fk:this.B.ek;this.N|=2;return a},function(a,b){if(2==this.V){if(!a)return uk.call(this),a;b=65536*(this.L&65535)+(this.D&65535);var c=b/a;if(65536<=c)return uk.call(this),a;this.Ba=c&65535;this.Za=b%a&65535}else{if(!hk.call(this,this.D,this.L,a))return uk.call(this),a;this.Ba|=0;this.Za|=0}this.vc=!0;this.A-=-1===this.C?this.B.Yj:this.B.Xj;this.N|=2;return a},function(a,b){if(2==this.V){if(!a)return uk.call(this),a;var c=a<<16>>16,d=(b=this.L<<16|this.D&65535)/c|0;if(d!=d<<16>>16||8086==this.da&& +-32768==d)return uk.call(this),a;this.Ba=d&65535;this.Za=b%c&65535}else{b=this.D;var c=this.L,d=a,e=0,f=0;0>d&&(d=-d|0,e=1-e);0>c&&(b=-b|0,c=~c+(b?0:1)|0,f=1,e=1-e);!hk.call(this,b,c,d)||this.Ba>2147483647+e||this.Za>2147483647+f?b=!1:(e&&(this.Ba=-this.Ba),f&&(this.Za=-this.Za),b=!0);if(!b)return uk.call(this),a;this.Ba|=0;this.Za|=0}this.vc=!0;this.A-=-1===this.C?this.B.bk:this.B.ak;this.N|=2;return a}],Je=[function(a){var b=a+1|0;kg(this,a,1,b,190);this.A-=-1===this.C?this.B.Df:this.B.Cf;return b& +255},function(a){var b=a-1|0;kg(this,a,1,b,190,!0);this.A-=-1===this.C?this.B.Df:this.B.Cf;return b&255},Oi,Oi,Oi,Oi,Oi,Oi],Ke=[function(a){var b=a+1|0;kg(this,a,1,b,this.Fb|62);this.A-=-1===this.C?this.B.Df:this.B.Cf;return b&this.R},function(a){var b=a-1|0;kg(this,a,1,b,this.Fb|62,!0);this.A-=-1===this.C?this.B.Df:this.B.Cf;return b&this.R},function(a){we(this,A(this));C(this,a);this.A-=-1===this.C?this.B.Uj:this.B.Tj;this.N|=2;return a},function(a){if(-1===this.C)return Oi.call(this,a);this.sa= +this.Aa;qk.call(this,a,this.ja(this.C+this.V));this.A-=this.B.Rj;this.N|=2;this.sa=-1;return a},function(a){C(this,a);this.A-=-1===this.C?this.B.pk:this.B.nk;this.N|=2;return a},function(a){if(-1===this.C)return Oi.call(this,a);Fe(this,a,this.ja(this.C+this.V));this.A-=this.B.lk;this.N|=2;return a},function(a){var b=a;this.N&512&&(a=a-2&65535,80286>this.da&&(b=a));we(this,b);this.A-=-1===this.C?this.B.Jc:this.B.Fk;this.N|=2;return a},Oi]; +function qf(){this.la.call(this,ak);this.A-=-1===this.C?6:13}function rf(){this.za.call(this,Zj);this.A-=-1===this.C?12:19}var ef=Array(256);ef[0]=function(){16>(this.Ja(this.ea)&56)&&(this.N|=1);this.lb.call(this,this.rj,ok)};ef[1]=function(){this.Ja(this.ea)&16||(this.N|=1);this.lb.call(this,gl,ok)};ef[2]=function(){!(this.qa&1)||this.P&131072?y.call(this,6):this.la.call(this,Vi)};ef[3]=function(){!(this.qa&1)||this.P&131072?y.call(this,6):this.la.call(this,aj)}; +ef[5]=function(){this.Ma?y.call(this,13,0,0,!0):(Eg(this,this.ja(2054)),this.J=this.ja(2086),this.K=this.ja(2088),this.M=this.ja(2090),this.G=this.ja(2094),this.L=this.ja(2096),this.I=this.ja(2098),this.D=this.ja(2100),ke(this.oa,2102,this.ja(2084)),ke(this.Z,2108,this.ja(2082)),ke(this.X,2114,this.ja(2080)),ke(this.Da,2120,this.ja(2078)),Ee(this,this.ja(2072)),C(this,this.ja(2074)),oe(this,this.ja(2092)),this.Ib=this.ja(2126)|this.Ja(2128)<<16,this.Hc=this.Ib+this.ja(2130),this.Nb=this.ja(2138)| +this.Ja(2140)<<16,this.bd=this.Nb+this.ja(2142),ke(this.Eb,2132,this.ja(2076)),ke(this.ka,2144,this.ja(2070)),this.A-=195)};ef[6]=function(){this.Ma?y.call(this,13,0):(this.qa&=-9,this.A-=2)};ef[11]=Me;ef[166]=Me;ef[255]=Me;var B=[];B[5]=Me; +B[7]=function(){if(this.Ma)y.call(this,13,0,0,!0);else{var a=this.oa.ac(this.J&this.wa,204);if(-1!==a){jk.call(this,this.ia(a));var b=this.ia(a+168),c=(b&24576)>>13;Ee(this,this.ia(a+4),c);this.Ib=this.ia(a+112);this.Hc=this.Ib+this.ia(a+116);this.Nb=this.ia(a+100);this.bd=this.Nb+this.ia(a+104);ie(this.Eb,this.ia(a+56),this.ia(a+120),this.ia(a+124),this.ia(a+128));ie(this.ka,this.ia(a+52),this.ia(a+84),this.ia(a+88),this.ia(a+92));this.J=this.ia(a+12);this.K=this.ia(a+16);this.M=this.ia(a+20);this.G= +this.ia(a+28);this.L=this.ia(a+32);this.I=this.ia(a+36);this.D=this.ia(a+40);ie(this.Ia,this.ia(a+60),this.ia(a+132),this.ia(a+136),this.ia(a+140));ie(this.Ga,this.ia(a+64),this.ia(a+144),this.ia(a+148),this.ia(a+152));ie(this.Da,this.ia(a+68),this.ia(a+156),this.ia(a+160),this.ia(a+164));ie(this.X,this.ia(a+72),b,this.ia(a+172),this.ia(a+176));ie(this.Z,this.ia(a+76),this.ia(a+180),this.ia(a+184),this.ia(a+188));ie(this.oa,this.ia(a+80),this.ia(a+192),this.ia(a+196),this.ia(a+200));C(this,this.ia(a+ +8));oe(this,this.ia(a+24))}this.A-=122<<(a&3?1:0)}};B[16]=Ok;B[17]=Pk;B[18]=Qk;B[19]=Rk;B[32]=function(){if(this.Ma)y.call(this,13,0);else{var a,b=this.ra();switch((b&56)>>3){case 0:a=this.qa;break;case 2:a=this.rd;break;case 3:a=this.Vc;break;default:ff.call(this);return}Ef(this,b&7,a);this.A-=6}};B[33]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;4==b||5==b?ff.call(this):(Ef(this,a&7,this.Ob[b]),this.A-=22)}}; +B[34]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=Df(this,a&7);switch((a&56)>>3){case 0:jk.call(this,b);this.A-=10;break;case 2:this.rd=b;this.A-=4;break;case 3:Ge.call(this,b);this.A-=5;break;default:ff.call(this)}}};B[35]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;4==b||5==b?ff.call(this):(a=Df(this,a&7),a!=this.Ob[b]&&(cg(this,!1),this.Ob[b]=a,cg(this,!0)),this.A-=4>b?22:14)}}; +B[36]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;6>b?ff.call(this):(Ef(this,a&7,this.eg[b]),this.A-=12)}};B[38]=function(){if(this.Ma)y.call(this,13,0);else{var a=this.ra(),b=(a&56)>>3;6>b?ff.call(this):(this.eg[b]=Df(this,a&7),this.A-=12)}};B[128]=function(){var a=this.Fa();qg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[129]=function(){var a=this.Fa();qg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)}; +B[130]=function(){var a=this.Fa();lg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[131]=function(){var a=this.Fa();lg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[132]=function(){var a=this.Fa();og(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[133]=function(){var a=this.Fa();og(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[134]=function(){var a=this.Fa();lg(this)||og(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra}; +B[135]=function(){var a=this.Fa();lg(this)||og(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[136]=function(){var a=this.Fa();pg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[137]=function(){var a=this.Fa();pg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[138]=function(){var a=this.Fa();mg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[139]=function(){var a=this.Fa();mg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)}; +B[140]=function(){var a=this.Fa();!pg(this)!=!qg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[141]=function(){var a=this.Fa();!pg(this)==!qg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[142]=function(){var a=this.Fa();og(this)||!pg(this)!=!qg(this)?(C(this,A(this)+a),this.A-=this.B.Qa):this.A-=this.B.Ra};B[143]=function(){var a=this.Fa();og(this)||!pg(this)!=!qg(this)?this.A-=this.B.Ra:(C(this,A(this)+a),this.A-=this.B.Qa)};B[144]=function(){kk.call(this,uj)}; +B[145]=function(){kk.call(this,uj)};B[146]=function(){kk.call(this,vj)};B[147]=function(){kk.call(this,wj)};B[148]=function(){kk.call(this,xj)};B[149]=function(){kk.call(this,yj)};B[150]=function(){kk.call(this,zj)};B[151]=function(){kk.call(this,Aj)};B[152]=function(){kk.call(this,Bj)};B[153]=function(){kk.call(this,Cj)};B[154]=function(){kk.call(this,Dj)};B[155]=function(){kk.call(this,Ej)};B[156]=function(){kk.call(this,Fj)};B[157]=function(){kk.call(this,Gj)};B[158]=function(){kk.call(this,Hj)}; +B[159]=function(){kk.call(this,Ij)};B[160]=function(){te(this,this.Ga.U,this.V,2);this.A-=this.B.xe};B[161]=function(){this.sa=this.Aa;var a=me(this);this.Ga.load(a);this.A-=this.B.nc;this.sa=-1};B[163]=function(){this.za.call(this,Gi);-1!==this.C&&(this.A-=6)};B[164]=function(){this.za.call(this,2==this.V?Jj:Lj);this.A-=-1===this.C?3:7};B[165]=function(){this.za.call(this,2==this.V?Nj:Oj);this.A-=-1===this.C?3:7};B[168]=function(){te(this,this.Ia.U,this.V,2);this.A-=this.B.xe}; +B[169]=function(){this.sa=this.Aa;var a=me(this);this.Ia.load(a);this.A-=this.B.nc;this.sa=-1};B[171]=function(){this.za.call(this,Ji);-1!==this.C&&(this.A-=5)};B[172]=function(){this.za.call(this,2==this.V?Pj:Rj);this.A-=-1===this.C?3:7};B[173]=function(){this.za.call(this,2==this.V?Tj:Uj);this.A-=-1===this.C?3:7};B[175]=function(){this.la.call(this,2==this.V?Qi:Si)};B[178]=function(){this.la.call(this,bj)};B[179]=function(){this.za.call(this,Ii);-1!==this.C&&(this.A-=5)}; +B[180]=function(){this.la.call(this,Zi)};B[181]=function(){this.la.call(this,$i)}; +B[182]=function(){this.kc.call(this,mj);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|this.D&255;break;case 1:this.I=this.I&~this.R|this.I&255;break;case 2:this.L=this.L&~this.R|this.L&255;break;case 3:this.G=this.G&~this.R|this.G&255;break;case 4:this.zc=this.zc&~this.R|this.D>>8&255;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I>>8&255;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L>>8&255;this.L=this.xa;break;case 7:this.J=this.J&~this.R|this.G>>8&255,this.G=this.xa}this.A-= +-1===this.C?3:6};B[183]=function(){re(this,2);this.la.call(this,nj);switch(this.ga>>3&7){case 0:this.D=this.D&65535;break;case 1:this.I=this.I&65535;break;case 2:this.L=this.L&65535;break;case 3:this.G=this.G&65535;break;case 4:this.zc=this.zc&65535;break;case 5:this.M=this.M&65535;break;case 6:this.K=this.K&65535;break;case 7:this.J=this.J&65535}this.A-=-1===this.C?3:6};B[186]=function(){this.lb.call(this,hl,this.ra)};B[187]=function(){this.za.call(this,Hi);-1!==this.C&&(this.A-=5)}; +B[188]=function(){this.la.call(this,Ai)};B[189]=function(){this.la.call(this,Bi)}; +B[190]=function(){this.kc.call(this,mj);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|(this.D&255)<<24>>24&this.R;break;case 1:this.I=this.I&~this.R|(this.I&255)<<24>>24&this.R;break;case 2:this.L=this.L&~this.R|(this.L&255)<<24>>24&this.R;break;case 3:this.G=this.G&~this.R|(this.G&255)<<24>>24&this.R;break;case 4:this.zc=this.zc&~this.R|this.D<<16>>24&this.R;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I<<16>>24&this.R;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L<<16>>24& +this.R;this.L=this.xa;break;case 7:this.J=this.J&~this.R|this.G<<16>>24&this.R,this.G=this.xa}this.A-=-1===this.C?3:6};B[191]=function(){re(this,2);this.la.call(this,nj);switch(this.ga>>3&7){case 0:this.D=this.D<<16>>16;break;case 1:this.I=this.I<<16>>16;break;case 2:this.L=this.L<<16>>16;break;case 3:this.G=this.G<<16>>16;break;case 4:this.zc=this.zc<<16>>16;break;case 5:this.M=this.M<<16>>16;break;case 6:this.K=this.K<<16>>16;break;case 7:this.J=this.J<<16>>16}this.A-=-1===this.C?3:6}; +var dg=[function(){this.A-=2+(-1===this.C?0:1);return this.Eb.U},function(){this.A-=2+(-1===this.C?0:1);return this.ka.U},function(a){this.N|=2;this.Eb.load(a);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;-1!==this.ka.load(a)&&(this.gb(this.ka.Lb+4,this.ka.nb|=512),this.ka.type|=512);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.ub.load(a)&&2048!=(this.ub.nb&2560)&&(this.ub.qc>=this.Ma&&this.ub.qc>=(a&3)||7168==(this.ub.nb&7168)))return Dg(this), +a;zg(this);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.ub.load(a)&&512==(this.ub.nb&2560)&&this.ub.qc>=this.Ma&&this.ub.qc>=(a&3))return Dg(this),a;zg(this);return a},Oi,Oi],Le=[cf,cf,cf,cf,cf,cf,Oi,Oi],gl=[function(a){if(-1===this.C)y.call(this,6);else{a=this.Hc-this.Ib;var b=this.Ib;80286==this.da?b|=-16777216:80386<=this.da&&2!=this.V&&(a|=b<<16);this.ab(this.C+2,b);this.A-=11}return a},function(a){if(-1===this.C)y.call(this,6);else{a=this.bd-this.Nb;var b=this.Nb; +80286==this.da?b|=-16777216:80386<=this.da&&2!=this.V&&(a|=b<<16);this.ab(this.C+2,b);this.A-=12}return a},function(a){-1===this.C||this.P&131072?y.call(this,6):(this.Ib=this.ia(this.C+2)&(this.R|this.R<<8),a&=65535,this.Hc=this.Ib+a,this.N|=2,this.A-=11);return a},function(a){-1===this.C||this.P&131072?y.call(this,6):(this.Nb=this.ia(this.C+2)&(this.R|this.R<<8),a&=65535,this.bd=this.Nb+a,this.N|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.C?0:1);return this.qa},Oi,function(a){this.P& +131072?y.call(this,6):(Eg(this,a),this.A-=-1===this.C?3:6,this.N|=2);return a},Oi],hl=[Oi,Oi,Oi,Oi,Ci,Fi,Ei,Di]; +function il(a){rb.call(this,"ChipSet",a,32768);var b=a.model;b&&!jl[b]&&mb("Unrecognized ChipSet model: "+b);this.da=jl[b]||kl;this.B=[];b=ll(a[ml]);this.B[0]=[b,b];null==b&&(this.N=[360,360],(b=a.floppies)&&b.length&&(this.N=b),nl(this,ol,this.N.length),nl(this,pl,a.monitor||(this.da=nh&&(this.za=this.ha=2);this.P=a.scaleTimers||!1;this.Ma=a.rtcDate;this.Ga=!1;a.sound&&(this.Ea=this.ka=null,window&&(this.Ea=window.AudioContext|| +window.webkitAudioContext),this.Ea&&(this.ka=new this.Ea));this.reset(!0);Ob(this)}ca(il,rb);l=il.prototype;l.Cb=function(a,b,c){switch(b){case ml:return this.na[b]=c,rl(this,0,b),!0;case ql:if((this.da|0)==sl||this.da==tl)return this.na[b]=c,rl(this,1,b),!0;break;case ul:return this.na[b]=c,!0}return!1}; +l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.pa=a;this.Ic=bc(a,"FPU");nl(this,vl,this.Ic?1:0,!0);this.C=bc(a,"Keyboard");this.Ba=c.T.zd/wl;Tc(b,this,xl);Xc(b,this,yl);this.da=nh){this.D=Vl;this.L=0;this.K=Wl;this.oa=0;this.M=Xl|Yl;512<=Zl(this)&&(this.M|=$l);+am(this,pl,void 0)==bm&&(this.M|=cm);(this.da|0)==Fl&&(this.M=this.M|dm|em);this.qa= +fm|gm;this.X=Array(8);this.W=0;a&&(this.A=Array(Kl));hm(this,this.Ma);for(a=im;a<=jm;a++)this.A[a]=0;for(a=km;ac?c=c?c:12:c=(c-=12)?c+128:140,d=!0);a.A[Zd]&bn||(d&&128>8} +l.save=function(){var a=new eg(this);a.set(0,[this.B]);for(var b=[],c=0;c=nh&&(a.set(5,[this.D,this.L,this.K,this.oa,this.M,this.qa]),a.set(6,[this.X[7],this.X,this.W,this.A,this.la,this.Z]));return a.data()}; +l.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.B=b[0]:(this.B[0][0]=b[0],this.B[1][0]=b[1]&15,this.B[0][1]=b[2],this.B[1][1]=b[3]&15);Nl(this);b=a[1];for(c=0;c=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='
    '+f+"
    \n"}e.innerHTML=d;nn(a,b,c,!0)}function on(a,b,c){if(b=(a=pn[a.da|0])&&a[b])for(var d in b)if(a=b[d],a.yc&1<g.qb[0]&&(g.qb[0]=255,g.qb[1]--,0>g.qb[1]&&(g.qb[1]=255)));return h}function Dn(a,b,c,d,e,f){var g=a.F[b];t(a,768)&&w(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.zb+"]",null,!0);a=g.oc[c];a.qb[g.zb]=a.pc[g.zb]=e;g.zb^=1}function En(a,b,c,d){var e=a.F[b],f=e.Mb|Fn;e.Mb&=~Gn;t(a,768)&&w(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f} +function Hn(a,b,c,d,e){var f=a.F[b];t(a,768)&&w(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Mb=f.Mb&~(16<>2].oc[b&3],c,d,e)}function Ln(a,b,c){b=a.F[b>>2].oc[b&3];b.ng&&b.hh&&b.Dg?(c&&(b.done=c),b.se||Vn(a,b,!0)):c&&c(!0)} +function Vn(a,b,c){c&&(b.count=b.qb[1]<<8|b.qb[0],b.type=b.mode&Wn,b.vj=b.og=!1);for(var d=!1;0<=b.count&&(c=b.ig<<16|b.vb[1]<<8|b.vb[0],b.type==Xn?(d=!0,function(c){b.hh.call(b.ng,b.Dg,-1,function(e,g){0>e&&(b.vj||(b.vj=!0),e=255);b.se||a.ma.fc(c,e);(d=g)&&setTimeout(function(){Yn(b)||Vn(a,b)},0)})}(c)):b.type==Zn?(c=a.ma.Ja(c),0>b.hh.call(b.ng,b.Dg,c)&&(b.og=!0)):b.type!=$n&&(b.og=!0)),!d&&!Yn(b););} +function Yn(a){if(!a.og&&0<=--a.count&&(a.mode&ao?(a.vb[0]--,0>a.vb[0]&&(a.vb[0]=255,a.vb[1]--,0>a.vb[1]&&(a.vb[1]=255))):(a.vb[0]++,255>3];b=1<<(b&7);d.$b&b||(d.$b|=b,d.Xe=c||0,qo(a))}function oh(a,b){var c=a.hc[b>>3];b=1<<(b&7);c.$b&b&&(c.$b&=~b,qo(a))}function qo(a,b){var c,d=-1;1>=1),Nd(a.H,e))),b==Do&&c==Ho&&fn(a))}function Io(a,b,c,d){w(a,c,null,d,"PIT"+b+".CTRL",null,2048);return b?a.va:a.sa} +function Jo(a,b,c,d,e){w(a,c,d,e,"PIT"+b+".CTRL",null,2048);e=0;c=d&Ko;b?(e=3,a.va=d):a.sa=d;if(c==Lo){if(!(d&Mo))for(c=0;2>=c;c++)if(d&No<=c;c++)d&No<>=So;var f=d&To,g=d&Uo;d&=Vo;if(d==Wo)Ro(a,e+c);else{e+=c;var h=a.G[e];h.Qf=d;h.mode=g;h.bh=f;h.pc=[0,0];h.qb=[0,0];h.oe=[0,0];h.gd=!1;h.Oe=!1;h.qe=!1;h.Se=!1;zo(a,e);b==Do&&c==Eo&&oh(a,Fo);b==Do&&c==Ho&&255==a.hc[0].ud&& +a.J==(Xo|Yo|Zo|$o)&&(b=a.G[0],b.Pc[0]=b.pc[0],b.Pc[1]=b.pc[1],b.jd=Kd(a.H,a.P))}}}function Go(a,b){a=a.G[b];(b=a.pc[1]<<8|a.pc[0])||(b=1==a.$c?256:65536);return b}function Xd(a,b){a=a.G[b];(b=a.Pc[1]<<8|a.Pc[0])||(b=1==a.$c?256:65536);return b}function Ro(a,b){Jl(a,b);var c=a.G[b];c.oe[0]=c.qb[0];c.oe[1]=c.qb[1];c.Oe=!0;zo(a,b)}function zo(a,b){a=a.G[b];a.xd=a.Qf==ap?1:0;a.$c=a.Qf==bp?2:1} +function Jl(a,b,c){var d=a.G[b];if(d.qe&&(b!=Ho||a.J&Xo)){var e=Kd(a.H,a.P),f=(e-d.jd)/a.Ba|0;0>f&&(d.jd=e,f=0);var g=Go(a,b),h=Xd(a,b)-f;d.mode==Bo?(0>=h&&(h=0),h||(d.gd=!0,d.qe=!1,b||qh(a,Fo))):d.mode==cp?(d.gd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Pc[0]=h&255,d.Pc[1]=h>>8&255,d.jd=e,!b&&d.gd&&qh(a,Fo))):d.mode==Yd&&(h-=f,0>=h&&(d.gd=!d.gd,h=g+h,0>=h&&(h=g),d.Pc[0]=h&255,d.Pc[1]=h>>8&255,d.jd=e,!b&&d.gd&&qh(a,Fo)));d.qb[0]=h&255;d.qb[1]=h>>8&255;c&&(a.jd=0)}return d} +function Wd(a,b){for(var c=0;c=nh){b=a.H.T.zd;c=Kd(a.H,a.P);null==a.Aa&&(a.la=Kd(a.H,a.P),a.Ia=1024,a.Aa=Math.floor(a.H.T.zd/a.Ia),dn(a));c>=a.Z&&(a.A[$m]|=dp,a.A[Zd]&$d&&(a.A[$m]|=ep,qh(a,fp)),a.Z=c+a.Aa);a.A[tm]==a.A[um]&&a.A[vm]==a.A[wm]&&a.A[xm]==a.A[ym]&&(a.A[$m]|=gp,a.A[Zd]&hp&&(a.A[$m]|=ep,qh(a,fp)));var d=c-a.la,e=Math.floor(d/b);if(e&&!(a.A[Zd]&ip)){for(;e--;)if(60<=++a.A[tm]&&(a.A[tm]=0,60<=++a.A[vm]&&(a.A[vm]=0,24<=++a.A[xm]))){a.A[xm]=0;a.A[zm]=a.A[zm]% +7+1;var f;f=a.A[Wm];var g=La[a.A[Vm]-1];28==g&&(f%4||!(f%100)&&f%400||g++);f=g;++a.A[Am]>f&&(a.A[Am]=1,12<++a.A[Vm]&&(a.A[Vm]=1,a.A[Wm]=(a.A[Wm]+1)%100))}a.A[$m]|=jp;a.A[Zd]&kp&&(a.A[$m]|=ep,qh(a,fp))}a.la=c-d%b}}l.Km=function(a,b){var c=this.xa;this.ga&lp&&(this.J&mp?c=this.B[0][1]:this.C&&(c=np(this.C)));w(this,a,null,b,"PPI_A",c);return c};l.po=function(a,b,c){w(this,a,b,c,"PPI_A");this.xa=b};l.Lm=function(a,b){var c=this.J;w(this,a,null,b,"PPI_B",c);return c}; +l.qo=function(a,b,c){w(this,a,b,c,"PPI_B");op(this,b)};function op(a,b){var c=!!(b&pp),d=!!(a.J&pp);a.J=b;a.C&&qp(a.C,!(b&mp),!!(b&$o));c!=d&&fn(a,c)}l.Mm=function(a,b){var c=0,c=(this.da|0)==sl?this.J&Yo?c|this.B[1][1]&rp:c|this.B[1][1]>>4&1:this.J&sp?c|this.B[0][1]>>4:c|this.B[0][1]&15;this.J&Xo&&Jl(this,Ho).gd&&(c=this.J&pp?c|tp:c|up);w(this,a,null,b,"PPI_C",c,32896);return c};l.ro=function(a,b,c){w(this,a,b,c,"PPI_C");this.Da=b};l.Nm=function(a,b){var c=this.ga;w(this,a,null,b,"PPI_CTRL",c);return c}; +l.so=function(a,b,c){w(this,a,b,c,"PPI_CTRL");this.ga=b};l.Wl=function(a,b){var c=this.C?np(this.C):0;w(this,a,null,b,"8041_KBD",c);this.aa&=~vp;return c};l.zn=function(a,b,c){w(this,a,b,c,"8041_KBD")};l.Vl=function(a,b){var c=this.J;w(this,a,null,b,"8041_CTRL",c);return c};l.yn=function(a,b,c){w(this,a,b,c,"8041_CTRL");op(this,b)};l.Xl=function(a,b){var c=this.aa;w(this,a,null,b,"8041_STATUS",c);return c}; +l.Yl=function(a,b){var c=this.oa;w(this,a,null,b,"8042_OUTBUFF",c,16384);this.D&=~(vp|wp);this.C&&xp(this.C);return c}; +l.Bn=function(a,b,c){w(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.D&yp)switch(this.L){case zp:Ap(this,b);break;case Bp:Cp(this,b);break;default:if(Ap(this,this.K&~Wl),this.C){a=this.C;c=b;var d=-1;t(a)&&Rb(a,"sendCmd("+r(c)+")");switch(a.I||c){case Dp:d=Ep;Fp(a);break;case Gp:a.I&&(c=0);Hp(a,Ep);a.I=c;break;case Ip:a.I&&(c=0);Hp(a,Ep);a.I=c;break;default:Rb(a,"sendCmd(): unrecognized command")}Jp(this,d)}}this.L=b;this.D&=~yp}; +l.Zl=function(a,b){var c=this.J&~(Kp|Lp)|(Kd(this.H)&64?Lp:0);w(this,a,null,b,"8042_RWREG",c,16384);return c};l.Cn=function(a,b,c){w(this,a,b,c,"8042_RWREG",null,16384);op(this,b)};l.$l=function(a,b){w(this,a,null,b,"8042_STATUS",this.D,16384);a=this.D&255;this.D&wp&&(this.D|=vp,this.D&=~wp);return a}; +l.An=function(a,b,c){w(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.L=b;this.D|=yp;a=0;this.L>=Mp&&(a=this.L^15,this.L=Mp);switch(this.L){case Np:Jp(this,this.K);break;case Op:Ap(this,this.K|Wl);break;case Pp:Ap(this,this.K&~Wl);this.C&&xp(this.C);break;case Qp:this.C&&(a=this.C,a.A=[],t(a)&&Rb(a,"scan codes flushed"));Ap(this,this.K|Wl);Jp(this,Rp);Cp(this,fm|gm);break;case Sp:Jp(this,Tp);break;case Up:Jp(this,this.M);break;case Vp:Jp(this,this.qa);break;case Wp:Jp(this,this.K&Wl?0:Xp);break;case Mp:a& +1&&xf(this.H)}};function Ap(a,b){a.K=b;a.D=a.D&~Yp|b&Zp;a.C&&qp(a.C,!!(b&$p),!(b&Wl))}function Jp(a,b,c){0<=b&&(a.oa=b,c?a.D|=vp:(a.D&=~vp,a.D|=wp))}function Cp(a,b){a.qa=b;uc(a.ma,!!(b&gm));b&fm||xf(a.H)}function aq(a,b){a.da>4)+(c&15),e=!0);if(d==xm||d==ym)e&&23=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;d==Zd&&a&$d&&b&$d&&dn(this)};l.Sk=function(a,b,c){w(this,a,b,c,"NMI");this.ea=b};l.ao=function(a,b,c){w(this,a,b,c,"FPU.CLEAR")};l.bo=function(a,b,c){w(this,a,b,c,"FPU.RESET");this.Ic&&ih(this.Ic)}; +l.an=function(a){if(t(this,16)&&dl(this.ca,26,a)){var b=this.H.D>>8;ag(this.H,a,function(a,d){return function(c){d=Kd(a.H)-d;var e,g=a.H.L&255,h=a.H.L>>8,k=a.H.L&255,m=a.H.L>>8;if(2==b||3==b)e=" CH(hour)="+ta(h)+" CL(min)="+r(g)+" DH(sec)="+r(m);else if(4==b||5==b)e=" CX(year)="+ta(a.H.I)+" DH(month)="+r(m)+" DL(day)="+r(k);g=a.ca;h=d;g.message("INT "+r(26)+": C="+(lg(g.H)?1:0)+(e||"")+" (cycles="+h+(c?",level="+(c+1):"")+")")}}(this,Kd(this.H)))}return!0}; +function fn(a,b){if(a.ka)try{void 0!==b?a.Ga=b:b=!!(a.Ga&&a.H&&a.H.ba.jb);var c=Math.round(wl/Go(a,Ho));if(20>c||2E4>>4,0,this.G,this.C,this.Jd),delete this.Jd);return!0};iq.prototype.Wb=function(){return!0}; +function jq(a,b,c,d){if(d)a.Ca("Unable to load system ROM (error "+d+": "+b+")",0>d);else{tb(a.De,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.longs||e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Jd=e.symbols;if(!a.A.length){mb("Empty ROM: "+b);return}if(1==a.A.length){mb(a.A[0]);return}}catch(h){a.Ca("ROM data error: "+h.message);return}else for(b= +c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.A=Array(b.length),e=0;e>>d.A].cf(e&d.D,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.F?b.push(a.F):null!=a.F&&a.F.length&&(b=a.F);for(c=0;cthis.B?im:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+1]=c>>8;sm(a)}}else mb("No RAM allocated")}; +l.save=function(){var a=new eg(this);this.controller&&a.set(0,this.controller.save());return a.data()};l.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function qq(a){this.D=a;this.C=sq;this.H=tq;this.B=uq;this.A=null}l=qq.prototype;l.save=function(){return[this.C,this.B]};l.restore=function(a){this.fc(0,a[0]&255);this.fc(2,a[1]&255);return!0};l.Ja=function(a){var b=255;2>a?b=a&1?this.H>>8:this.H&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b}; +l.fc=function(a,b){if(a)2==a&&(this.B=this.B&-256|b);else if(b!=(this.C&255)){a=this.D.ma;if(b&vq)this.A&&(Cc(a,wq,xq,this.A),this.A=null);else{this.A||(this.A=Dc(a,wq,xq));var c=Dc(a,yq,xq);Cc(a,wq,xq,c,b&zq?1:Jc)}this.C=this.C&-256|b}};l.zj=function(){return Aq};l.ih=function(){return Bq};var rq=-2134900736,yq=16646144,wq=917504,xq=131072,vq=1,zq=2,sq=65535,tq=2575,uq=2,Aq=[null,0],Bq=[function(a){return this.controller.Ja(a)},null,null,function(a,b){this.controller.fc(a,b)},null,null]; +eb(function(){for(var a=Bb(document,"pcx86","ram"),b=0;b=n.he&&d<=n.z&&(d-=n.he-n.ge),d=Mq[e]==d),d){(a=a.na["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}} +l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.H=c;this.ca=d;this.W=bc(a,"ChipSet");this.G=Fd(a,"autoType")||this.G;$f(c,33,this.bn.bind(this))};l.bn=function(){if(10==(this.H.D>>8&255)&&!this.F&&this.G){var a=this.F=Qq(this.G);a&&!this.C&&(this.C=a,Oq(this,150))}return!0}; +function Qq(a){if(a){for(var b,c=/(?:^|[^$])\$([a-z]+)/g;b=c.exec(a);){var d;switch(b[1]){case "date":d=Fa("n-j-Y");break;case "time":d=Fa("h:i:s");break;default:continue}a=a.replace("$"+b[1],d)}a=a.replace(/\$\$/g,"$$")}return a}function Dq(a,b){var c=0;a.da=null;"string"==typeof b&&(a.da=b.toUpperCase(),c=Rq.indexOf(a.da),0>c&&(c=0));if(b=Rq[c])a.aa=parseInt(b.substr(2),10)}function Fp(a){Rb(a,"keyboard reset",65792);a.A=[];Hp(a,Sq)} +function qp(a,b,c){a.L!==c&&(a.L=a.M=c)&&(a.J=!0);a.K!==b&&(a.K=b)&&!a.M&&cq(a,!0);a.K&&a.M&&(Fp(a),a.M=!1)}function Hp(a,b){a.W&&(a.A.unshift(b),a.J=!0,aq(a.W,b))}function xp(a){var b=0;a.A.length&&a.J&&(b=a.A[0],a.W&&aq(a.W,b));t(a)&&Rb(a,b?"scan code "+r(b)+" available":"no scan codes available")}function np(a){var b=0;a.A.length&&(b=a.A[0]);t(a)&&Rb(a,"scan code "+r(b)+" delivered");return b} +function cq(a,b){0>=1);if(b&Wq){if(!1===d)return!0;d=null}null==d?d=!((c?a.D:a.jc)&b):d||b&Xq&&(b=Xq);if(c){a.D&=~b;d&&(a.D|=b);c=b;var f,g;for(g in Yq)d="led-"+g,e=Yq[g],c&&c!=e||!(f=a.na[d])||(f.style.backgroundColor=a.D&e?"#00ff00":"#000000")}else a.jc&=~b,d&&(a.jc|=b);return!0}}return!1} +function Gq(a,b,c){if((O[b]||O[b+=1E3])&&a.H&&a.H.ba.jb){Uq[b]&&a.B.length&&0e||(e==a.B.length&&(d={},d.Ae=b,d.jc=a.jc,Pq(a,b,!0),e++),0b.Bd){if(!b.qf){Nq(a,b.Ae);return}b.qf=!1;c=a.ea}else c=1==b.Bd++?500:100;b.hl=setTimeout(function(a){return function(){Zq(a,b)}}(a),c)}} +function ar(a,b,c){var d=b;if(b>=n.ge&&b<=n.fg)!(a.jc&(br|cr|dr))==c&&(d=b+(n.he-n.ge));else if(b>=n.he&&b<=n.z)!!(a.jc&(br|cr|dr))==c&&(d=b-(n.he-n.ge));else if(!!(a.jc&(br|cr))==c){if(a=na[b])d=a}else if(a=ma[b])d=a;return d}l.Eg=function(a){a||(this.jc&=~Xq)}; +function Eq(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode;a.C="";var h=ar(a,g,!0);a.gh&&h==n["`"]&&(g=h=27);if(O[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),Lq(a,h,!1,c)){if(20==g||144==g||145==g)a.Z||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k=n.ge&&b<=n.fg||b>=n.he&&b<=n.z;e>>>=8;){var g=0,h=e&255;f==nr||f==or?d.push(f|(c?0:mr)):(h==Q?a.D&(br|cr)||a.D&dr&&b||(g=h):h==pr?a.D&(er|qr)||(g=h):h==rr?a.D&(fr|sr)||(g=h):d.push(f|(c?0:mr)),g&&(c?d.unshift(g):d.push(g|mr)))}for(c=0;c"]]=52|Q<<8;O[n["/"]]=53; +O[n["?"]]=53|Q<<8;O[3016]=54;O[1044]=55;O[1018]=rr;O[1032]=57;O[Hq]=58;O[1112]=59;O[1113]=60;O[1114]=61;O[1115]=62;O[1116]=63;O[1117]=64;O[1118]=65;O[1119]=66;O[1120]=67;O[1121]=68;O[Iq]=69;O[Jq]=70;O[1036]=71;O[1038]=72;O[1033]=73;O[1109]=74;O[1037]=75;O[1101]=76;O[1039]=77;O[1107]=78;O[1035]=79;O[1040]=80;O[1034]=81;O[1045]=82;O[1046]=lr;O[4027]=84;O[1122]=87;O[1123]=88;O[1091]=91;O[1093]=93;O[1224]=91;O[vr]=46|pr<<8;O[gr]=70|pr<<8;O[4046]=lr|pr<<8|rr<<16;O[4045]=82|pr<<8|rr<<16; +O[4013]=28|pr<<8|rr<<16;var Dp=255,Gp=243,Ip=237,Sq=170,Ep=250,ur=255,tr=20;eb(function(){for(var a=Bb(document,"pcx86","keyboard"),b=0;bc.length)c=[!1,0,null,null,0,Array(b>2,32768));this.rc=c[0];this.Wc=c[1];this.$e=c[2];this.fa=c[3];this.ec=c[4]&255;this.Ig=c[4]>>8&255;this.Sa=c[5];this.rh=yr;this.hg=Ar;this.kd=(this.Sa[Br]<<8)+this.Sa[Cr]|0;if(b>=mq){this.rh=zr;this.hg= +Dr;(b=c[6])||(b=[!1,0,Array(Er),0,f==bm?0:Fr,0,0,Array(Gr),0,0,0,Array(Hr),0,[this.bb,this.Qb,this.wd],Array(this.wd>>2),Ir|Jr|Kr|Lr|Mr,0,-1,0,-1,0,-1,0,0,0,0,Nr,Or,0,0,Pr,Array(Qr)]);this.Me=b[0];this.Cd=b[1];this.Cc=b[2];this.Wg=Rr;this.Lg=b[3];this.bf=b[4];this.Pf=b[5];this.Fd=b[6];this.ee=b[7];this.Yg=Sr;this.al=b[8];this.bl=b[9];this.Ed=b[10];this.Dd=b[11];this.Xg=Tr;this.wb=b[12];d=b[13];"number"==typeof d&&(d=[this.bb,this.Qb,d]);this.bb=d[0];this.Qb=d[1];d=this.wd>>2;if((this.fd=b[14])&&this.fd.length< +d){for(var e=this.fd,g=0,h=Array(d),k=0;k=mq){var c=[];c[0]=a.Me;c[1]=a.Cd;c[2]=a.Cc;c[3]=a.Lg;c[4]=a.bf;c[5]=a.Pf;c[6]=a.Fd;c[7]=a.ee;c[8]=a.al;c[9]=a.bl;c[10]=a.Ed;c[11]=a.Dd;c[12]=a.wb;c[13]=[a.bb,a.Qb,a.wd];var d;if(d=a.fd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h>1;f[e++]=k;h=m}f.length=mq){var d=0,e=0,f=0;switch(b){case bs:d=cs;a.La==oq&&(e=ds);break;case es:a.La==mq&&(d=fs);break;case gs:d=hs;a.La==oq&&(e=is);break;case js:d=ks;a.La==oq&&(e=ls);break;case ms:d=ns;a.La==oq&&(f=os);break;case ps:d=qs,a.La==oq&&(f=rs)}d&&(c|=a.Sa[ss]&d?256:0,c|=a.Sa[ss]&e?512:0,c|=a.Sa[ts]&f?512:0)}return c} +var Br=12,Cr=13,yr=18,bs=6,ss=7,cs=1,ks=2,hs=4,ns=8,qs=16,fs=32,ds=32,ls=64,is=128,ts=9,os=32,rs=64,es=10,gs=16,js=18,ms=21,ps=24,zr=25,Ar="HTOTAL HDISP HSYNC_POS HSYNC_WIDTH VTOTAL VTOTAL_ADJ VDISP VSYNC_POS INTERLACE_POS MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),Dr="HTOTAL HDISP_END HBLANK_START HBLANK_END HRETRACE_START HRETRACE_END VTOTAL OVERFLOW PRESET_SCAN MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO VRETRACE_START VRETRACE_END VDISP_END OFFSET UNDERLINE VBLANK_START VBLANK_END MODE_CTRL LINE_COMPARE".split(" "), +Er=20,Rr="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVERSCAN PLANES HPAN".split(" "),Fr=1,Nr=1,Gr=5,Sr=["RESET","CLOCKING","MAPMASK","CHARMAP","MEMMODE"],Or=255,Pr=0,Qr=256,Hr=9,Tr="SRESET ESRESET COLORCMP DATAROT READMAP MODE MISC COLORDC BITMASK".split(" "),Ir=1024,Jr=4096,Zr=65280,Kr=0,Lr=16,as=255,Mr=-2147483648,Ur=[];Ur[2]=Ir;Ur[3]=Ir|Jr;Ur[16]=1280;Ur[512]=Kr;Ur[1024]=Kr|32;Ur[1536]=Kr|96;Ur[2560]=Kr|160;Ur[3584]=Kr|224;Ur[768]=Kr|Lr; +Ur[4096]=1;Ur[8192]=2;Ur[24576]=98;Ur[40960]=162;Ur[57344]=226;var $r=[];$r[Ir]=function(a){a+=this.H;return(this.controller.wb=this.Y[a])>>this.controller.hi&255};$r[Ir|16384]=function(a){return(this.controller.wb=this.Y[(a&-4)+this.H])>>((a&3)<<3)&255};$r[Ir|Jr]=function(a){a+=this.H;var b=this.controller.wb=this.Y[a&-2];return(a&1?b>>8:b)&255}; +$r[1280]=function(a){a+=this.H;a=this.controller.wb=this.Y[a];for(var b=this.controller.th,c=this.controller.sh&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d};$r[Kr]=function(a,b){a+=this.H;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +$r[Kr|32]=function(a,b){a+=this.H;b=b>>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +$r[Kr|96]=function(a,b){a+=this.H;b=b>>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b&=this.controller.wb;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +$r[Kr|160]=function(a,b){a+=this.H;b=b>>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b|=this.controller.wb;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +$r[Kr|224]=function(a,b){a+=this.H;b=b>>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Od|this.controller.ce;b^=this.controller.wb;b=b&this.controller.Bb|this.controller.wb&~this.controller.Bb;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)};$r[Kr|4]=function(a,b){var c=(a&-4)+this.H;a=(a&3)<<3;b=b<>this.controller.Sc|b<<8-this.controller.Sc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Bb;b=this.controller.Hf&b|this.controller.wb&~b;b=b&this.controller.ib|this.Y[a]&~this.controller.ib;this.Y[a]!=b&&(this.Y[a]=b,this.Oa=!0)}; +function R(a,b,c,d,e){rb.call(this,"Video",a,262144);var f=this;this.cd=Wa("Gecko/");var g=["","moz","ms","webkit"];this.da=a.model;var h=vs[this.da]||vs.mda;this.La=h[0];this.wd=a.memory||0;this.qd=a.switches;this.aa=a.mode;if(null==this.aa||null==ws[this.aa])this.aa=h[1];this.Ob=a.charCols;this.Hc=a.charRows;if(void 0===this.Ob||void 0===this.Hc)this.Ob=ws[this.aa][0],this.Hc=ws[this.aa][1];this.X=a.screenWidth;this.ha=a.screenHeight;this.ed=a.scale;this.Td=12<=Math.round(this.X/this.Ob);this.N= +b;this.L=c;this.D=(this.sg=d)||b||null;this.lc=a.screenColor||"black";this.pd=(1-(a.flicker||0)).toString();this.Fb=!1;b&&(b.style.backgroundColor=this.lc);e&&(e.style.backgroundColor=this.lc);b=a.smoothing;(c=Xa("smoothing"))&&(b="true"==c);if(null!=b)for(c=0;c=mq&&(Tc(b,this,Fs),Xc(b,this,Gs));this.La==oq&&(Tc(b,this,Hs),Xc(b,this,Is));d&&Il(d,262144,function(a){if(e.B)if(a[0]){var b=e.B;if(b.fd){var c,d,f,g=!1,h=8,H=8,I=-1,L=b.video.F>>3;for(c=0;c=d&&(H=d,g=!0);break; +case "p":0<=d&&3>=d&&(I=d);break;case "w":d=b.bb&&(f-=b.bb);a="";for(c=0;cI?q(K):ra(K>>(I<<3),8));g&&(f+=L-H);a&&(a+="\n");a+=P}a&&b.ca.O(a);b.B=f}else b.ca.O("no buffer")}else e.ca.O("BIOSMODE: "+r(e.la)),b=e.B,Xr(b,"CRTC",b.ec,b.Sa,b.hg),b.La>=mq&&(Xr(b," GRC",b.Ed,b.Dd,b.Xg),Xr(b," SEQ",b.Fd,b.ee,b.Yg),Xr(b," ATC",b.Cd,b.Cc, +b.Wg),Xr(b," ATCINDX",b.Cd),b.ca.O(" ATCDATA: "+b.Me),Xr(b," FEAT",b.Pf),Xr(b," MISC",b.bf),Xr(b," STATUS0",b.Lg)),Xr(b," STATUS1",b.fa),b.La!=Cs&&b.La!=zs||Xr(b," MODEREG",b.Wc),b.La==zs&&Xr(b," COLOR",b.$e),b.La>=mq&&(b.ca.O(" LATCHES: "+q(b.wb)),b.ca.O(" ACCESS: "+q(b.wg,4)),b.ca.O("Use 'dump video [addr]' to dump video memory"));else e.ca.O("no active video card")});if((this.C=bc(a,"Keyboard"))&&this.N){for(var f in this.na)0c&&(a=Math.round(c/b*100)+"%")}d.cd?(d.N.style.width=a,d.N.style.width=a,d.N.style.display="block",d.N.style.margin="auto"):(d.Da.style.width=a,d.Da.style.height="auto");d.Da.style.backgroundColor=d.lc;d.lb()}d.D&&d.D.focus()}}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.Vd= +c.textContent,this.D&&this.D.re?c.onclick=function(){d.re(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){Ns(d,!0)},!0}return!1};function ys(a,b){!b&&a.Da&&(a.cd?a.N.style.width=a.N.style.height="":a.Da.style.width=a.Da.style.height="");Rb(a,"notifyFullScreen("+b+")",!0);a.C&&(a.C.gh=b)}l.re=function(a){var b=!1;this.D&&(a?this.D.re&&(this.D.re(),this.G&&this.G.If(!0),b=!0):this.D.A&&(this.D.A(),this.G&&this.G.If(!1),b=!0),this.D&&this.D.focus());return b}; +l.If=function(a){this.G&&(this.G.If(a),this.C&&(this.C.gh=a));var b=this.na.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Vd)};function Js(a,b){var c=a.D;c&&!a.Ic&&(c.addEventListener("touchstart",function(b){Os(a,b,!0)},!1),c.addEventListener("touchmove",function(b){Os(a,b)},!0),c.addEventListener("touchend",function(b){Os(a,b,!1)},!1),a.Ic=b,a.tb=a.ub=a.Gd=-1,a.zc=!1,a.Ib=null,a.vc=!1,a.Ud=function(){a.vc=!0;a.G.$d(Ps,!0)})}l.Eg=function(a){this.C&&this.C.Eg(a)}; +function Os(a,b,c){var d,e,f=0,g=0;d=a.N;do isNaN(d.offsetLeft)||(f+=d.offsetLeft,g+=d.offsetTop);while(d=d.offsetParent);var h=a.X/a.N.offsetWidth,k=a.ha/a.N.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(a.Ic==Ls)c&&Gq(a.C,Qs[e/(a.ha/3)|0][d/(a.X/3)|0],!0);else if(a.G){g=a.zc;f=b.timeStamp-a.Gd;!0===c?(a.zc=500f){a.G.$d(Ps,!0);a.G.$d(Ps,!1);return}}if(c||0>a.tb||0>a.ub)a.tb=d,a.ub=e;c=Math.round(d-a.tb);b=Math.round(e-a.ub);a.tb=d;a.ub=e;a.G.tf(c,b,a.tb,a.ub)}}l.Xb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0}; +l.reset=function(){var a=!0,b=0;this.W&&(b=+am(this.W,pl,void 0));this.da||(this.La=b==bm?Cs:zs);this.aa=Rs;switch(this.La){case oq:b=7;break;case mq:var c=Ss[this.Db];c&&(b=c[0]);b||(b=4);break;case Cs:b=bm;this.aa=Ts;break;default:b=2}this.ea!==b&&(this.ea=b,a=!0);this.B=null;this.P=this.Rb=new wr(this,Cs);this.K=this.Eb=new wr(this,zs);this.La>1&255,d=d>>8&~Xs,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?Ys|Zs:$s|at)|bt&d>>8);Qc(this.ma,b,c|d<<8)}Ns(this,!0)}};function Us(a){a.A.bf&Fr?(a.P=a.Rb,a.K=a.A):(a.P=a.A,a.K=a.Eb)}l.save=function(){var a=new eg(this);a.set(0,Wr(this.Rb));a.set(1,Wr(this.Eb));a.set(2,[this.ea,this.aa,this.la]);a.set(3,Wr(this.A));return a.data()}; +l.restore=function(a){var b=a[2];this.ea=b[0];this.aa=b[1];this.la=b[2];this.B=null;this.P=this.Rb=new wr(this,Cs,a[0]);this.K=this.Eb=new wr(this,zs,a[1]);this.A=new wr(this,this.La,a[3],this.wd);this.A.rc&&Us(this);Vs(this);if(!ct(this))return!1;dt(this);return!0}; +function Ms(a,b,c,d){if(d)a.Ca("Unable to load font ROM (error "+d+": "+b+")",0>d);else{tb(a.De,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){mb("Empty font ROM: "+b);return}if(1==f.length){mb(f[0]);return}if(8192==f.length)nq(a,f,[6144,0]);else if(2048==f.length)nq(a,f,[0]);else{a.Ca("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Ca("Font ROM data error: "+g.message);return}(a.L||a.ca)&&Ob(a)}} +function et(a,b){if(1==b)return a.ga[0]=ft[$s],a.ga[1]=ft[Ys],a.ga;if(2==b){var c=a.B.$e;if(a.B===a.A){var d=a.A.Cc[0],c=d&7;d&16&&(c|=8);18!=a.A.Cc[1]&&(c|=32)}a.ga[0]=ft[c&15];c=c&32?gt:ht;for(d=0;de;e++)f=d[e]||0,g=f<<2&252,h=f>>4&252,f=f>>10&252,a.ga[e]=[g,h,f,255];else{var k=d&&d[255];b=null!=c.Cc[15]?c.Cc:it;for(e=0;16>e;e++)f=b[e]&63,k?(f|= +(c.Cc[20]&12)<<4,c.Cc[16]&128&&(f&=-49,f|=(c.Cc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.ga[e]=[g,h,f,255]}a.Ia=!0}return a.ga}function nq(a,b,c,d){a.yb=b;a.Ya=c;a.Ga=d} +function Vs(a,b){var c=!1;if(window&&a.yb&&(!b||a.I)){var d=0,e=a.Ga?a.Ga:8,f=et(a);null!=a.Ya[0]&&jt(a,kt,a.Ya[0],d,e,8,a.yb,f)&&(c=!0);d=a.Ga?0:2048;e=a.Ga?a.Ga:9;null!=a.Ya[1]&&(jt(a,lt,a.Ya[1],d,e,14,a.yb,mt,nt)&&(c=!0),a.Ga&&jt(a,a.La,a.Ya[1],0,a.Ga,14,a.yb,f)&&(c=!0))}b||(a.Z=-1,a.Aa=-1,a.va=0);return c}function jt(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&(ot(a,b,c,d,e,f,g,h,k)&&(m=!0),a.Td&&ot(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m} +function ot(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,v=a.sa[b],u=16>h.length?h.length:16;v||(v={Fc:e<Ba||!P?Ba:8,kb=cb.createImageData(m.Fc,m.Gc);for(Oa=0;256>Oa;Oa++){for(db=0;db=Ba-2,Md=ba[db>(8<=jb&&192<=Oa&&223>=Oa?7:jb)?F:ib;pt(kb,Ag,jf,Bg);I&&pt(kb,Ag+1,jf,Bg)}cb.putImageData(kb,(Oa&15)*m.Fc,(Oa>>4)*m.Gc)}m.Fe[H]="#"+q(F[0],2)+q(F[1],2)+q(F[2],2);m.Ti[H]=F;m.Vg[H]=pa;m=!0}}a.sa[b]=v;return m}function qt(a){0a.Aa&&(a.Aa=0):a.Aa=-1} +function dt(a){if(a.I){for(var b=10;15>=b;b++)if(null==a.B.Sa[b])return;var c=a.B.Sa[10],b=c&31,d=a.B.Sa[11]&31,e=a.B.Sa[9]&31,f=!1;a.B===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)rt(a);else{c=a.B.Sa[15]+((a.B.Sa[14]&63)<<8);a.Z!=c&&(rt(a),a.Z=c);d=d-b+1;if(a.Hd!=b||a.Vc!=d)a.Hd=b,a.Vc=d;a.xa=e+1;qt(a)}}}function rt(a){if(0<=a.Z){if(void 0!==a.M){var b=st<<8,c=a.M[a.Z];if(c&b){var c=c&~b,b=a.Z%a.F,d=a.Z/a.F|0;a.I&&a.sa[a.I]&&(a.Ea&&tt(a,b,d,c,a.Ea),tt(a,b,d,c));a.M[a.Z]=c}}a.Z=-1}} +function ut(a){var b,c=a.B;a.bd=!1;var d=c.Dd[5];if(null!=d){b=Ir;var e=Kr,f=c.Dd[3]&31;switch(d&3){case 0:if(f){e=Kr|32;switch(f&24){case 8:e=Kr|96;break;case 16:e=Kr|160;break;case 24:e=Kr|224}c.Sc=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.La==oq&&(e=3,c.Sc=f&7)}d&8&&(b=1280);c=c.ee[4];null!=c&&(c&4||(b|=Jr,e|=Lr),d&64&&(c&8&&(b|=16384,e|=4),a.bd=!0));b|=e}return b} +function vt(a,b){var c=a.B;return c&&null!=b&&b!=c.wg?(c.Ng(b),a.ma.Ng(c.bb,c.Qb,c.ih(),!0),!0):!1} +function ct(a,b){var c,d=a.la,e=a.B;if(e)if(e.La==Cs)d=Ts;else if(e.La>=mq){var d=null,f=e.wd>>2,g=32768=e.Sa[js]?At:Bt:Ct:g&128|| +350>f?d=m?Dt:Et:480<=f&&(d=a.ea==bm?Ft:Gt):d=m?7-d:Ht:d-=m?2:0);c=ut(a)}}else e.Wc&8?(e.Wc&2?(d=e.Wc&16?Ht:It,e.Wc&4||--d):(d=e.Wc&1?Rs:Jt,e.Wc&4&&--d),a.Fb&&(a.N.style.opacity="1",a.Fb=!1)):!a.Fb&&1>+a.pd&&(a.Fb=!0,a.N.style.opacity=a.pd,e=a.H,Td(e),e.T.ve=0,Id(e));else a.la=null,null==d&&(d=a.aa);if(!Ws(a,d,b))return!1;vt(a,c);return!0} +function Ws(a,b,c){if(null!=b&&(b!=a.la||c)){a.Rd=0;a.la=b;a.Ia=!1;b=a.B||(b==Ts?a.P:a.K);if(b!=a.B||b.bb!=a.bb||b.Qb!=a.Qb){rt(a);if(a.bb){if(!Hc(a.ma,a.bb,a.Qb))return!1;a.B&&(a.B.rc=!1)}a.B=b;b.rc=!0;a.bb=b.bb;a.Qb=b.Qb;if(!wc(a.ma,b.bb,b.Qb,3,b===a.A?b:null))return!1}a:{a.I=0;a.F=a.Ob;a.J=a.Hc;a.Ta=a.F;a.Nb=ws[Ts][2];b=0;if(c=ws[a.la])a.F=c[0],a.J=c[1],a.Nb=c[2],b=c[3],a.I=c[4],4!=a.ea&&7!=a.ea||a.B!==a.A||a.I!=kt||(7==(a.A.Sa[ts]&31)?a.J=350>Yr(a.A,js)?43:50:a.I=a.La);a.nd=a.F*a.J|0;a.md=a.nd/ +a.Nb|0;a.Za=a.md;a.kc=0;void 0!==b&&(a.Za=(a.Za<<1)+b|0,a.kc=a.Za+b>>1);if(a.sa.length){a.oa=a.X/a.F|0;a.qa=a.ha/a.J|0;if(a.I){b=a.sa[a.I];if(!b)break a;c=a.sa[a.I<<1];a.ed&&80==a.F?c&&a.oa>=3*c.Fc>>2&&(a.I<<=1,b=c):(c&&a.oa>=c.Fc&&(a.I<<=1,b=c),a.ed||(a.oa=b.Fc,a.qa=b.Gc));a.fb=a.kb=0;b&&(a.fb=a.F*b.Fc,a.kb=a.J*b.Gc)}else a.oa=a.qa=1,a.fb=a.F,a.kb=a.J;a.Ma=a.L.createImageData(a.fb,a.kb);a.Ba=document.createElement("canvas");a.Ba.width=a.fb;a.Ba.height=a.kb;a.Ea=a.Ba.getContext("2d");a.Kc=a.Lc=0; +a.sc=a.X;a.tc=a.ha;b=a.X-a.F*a.oa;c=a.ha-a.J*a.qa;0>1,a.sc-=b);0>1,a.tc-=c);if(b||c)a.L.fillStyle=a.N.style.backgroundColor,a.L.fillRect(0,0,a.X,a.ha)}}Kt(a,!0);Ns(a)}return!0}function pt(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Lt(a){a.va=-1;a.ka=!1;var b=a.md;if(void 0===a.M||a.M.length!=b)a.M=Array(b)}function Kt(a,b){b||(a.Ia=!1);Lt(a)} +function tt(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.sa[a.I];h.kf&&(d=h.kf[d]);var k=g>>4&15;h.kf&&(k=h.kf[k]);e?(b*=h.Fc,c*=h.Gc,e.fillStyle=h.Fe[k],e.fillRect(b,c,h.Fc,h.Gc)):(b=b*a.oa+a.Kc,c=c*a.qa+a.Lc,a.L.fillStyle=h.Fe[k],a.L.fillRect(b,c,a.oa,a.qa));g&Mt&&(k=(f&15)*h.Fc,f=(f>>4)*h.Gc,e?e.drawImage(h.Vg[d],k,f,h.Fc,h.Gc,b,c,h.Fc,h.Gc):a.L.drawImage(h.Vg[d],k,f,h.Fc,h.Gc,b,c,a.oa,a.qa));g&st&&(f=a.Hd,g=a.Vc,e?(a.xa&&a.xa!==h.Gc&&(f=f*h.Gc/a.xa|0,g=g*h.Gc/a.xa|0),e.fillStyle=h.Fe[d],e.fillRect(b, +c+f,h.Fc,g)):(a.xa&&a.xa!==a.qa&&(f=f*a.qa/a.xa|0,g=g*a.qa/a.xa|0),a.L.fillStyle=h.Fe[d],a.L.fillRect(b,c+f,a.oa,g)))} +function Ns(a,b){if(a.ba.dc){var c=!1,d=a.B;d&&(d!==a.A?d.Wc&8&&(c=!0):d.Cd&32&&(c=!0));if(c||b){if(b)Lt(a);else if(void 0===a.M)return;var e=!1;!(b||++a.Rd&15)&&0<=a.Aa&&(a.Aa++,e=!0);var f=0,g=a.nd,h=a.bb,c=h,k=c+a.Qb;a.la>=At&&(h=c=655360,k=c+65536);if(Nt(a,d)&8||d.Ze&&d.Ze=mq&&d.Sa[19]&&d.Sa[19]<<1!=d.Sa[1]+1&&(a.Ta=d.Sa[19]<<(a.I?1:d.Sa[20]&64?3:4),m=(a.Ta*(a.J-1)+a.F)/a.Nb|0,a.la<=Ts&& +(m<<=1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.ka){b=a.ma;for(var p=!0,v=c>>>b.A;0f)return;g=f+1}}if(a.I){if(a.sa[a.I]){d=f;f=0;e=a.va=0;h=Mt<<8;b=1048575;p=a.B.Wc&32;a.La>=mq&&(p=a.B.Cc[16]&8);m=a.Z-a.B.kd;p&&(e=Xs<<8,b&=~e,a.Aa&2||(b&=~h));for(c+=d<<1;c>8|(u&255)<<8;var L=e,P=16;m>=h))>>(P-=h);pt(a.Ma,m++,p,b[Ba])}m>F&&(F=m);p=I&&(I=p+1)}k+=2;d++;if(m>=a.F){m=0;p+=2;if(p>a.J)break;p==a.J&&(p=1,k=c+a.kc)}}a.ka=!0; +va.F?a.Ta-a.F-u>>3:0;c>=8;b>v&&(v=b);m=H&&(H=m+1)}c+=I;if(b>=a.F){b=0;if(++m>a.J)break;c+=L}}u||(a.ka=!0);pa.F?a.Ta-a.F-H>>3:0;cL&&(P=L)):(u<<=H,P-=H,a.ka=!1):(a.ka&&u===a.M[d]?(h+=P,P=0):a.M[d]=u,d++);if(P){hp&&(p=h);b=F&&(F=b+1)}if(h>=a.F){h=0;if(++b>a.J)break;c+=I}}H||(a.ka=!0);ma&&(b.zh=a,a=-a|0);a%b.uh>b.sn&&(c|=1);a%b.xh>b.un&&(c|=9);b.ii=a/b.xh|0;return c}l.Gm=function(a,b){return ou(this,this.P,a,b)};l.mo=function(a,b,c){var d=this.P;d.Ig=d.ec;d.ec=b&31;w(this,a,b,c,"CRTC.INDX")};l.Fm=function(a,b){return pu(this,this.P,a,b)};l.lo=function(a,b,c){qu(this,this.P,a,b,c)};l.Hm=function(a,b){return ru(this,this.P,b)};l.no=function(a,b,c){a=this.P;w(this,a.port+4,b,c,"MODE");a.Wc=b;ct(this,!1)}; +l.Im=function(a,b){return su(this,this.P,b)};l.Rk=function(a,b,c){this.A.Pf=this.A.Pf&-4|b&3;w(this,a,b,c,"FEAT")};l.em=function(a,b){a=this.A.Cd;b&&!t(this)||w(this,960,null,b,"ATC.INDX",a);return a};l.vl=function(a,b){a=this.A.Cc[this.A.Cd&31];b&&!t(this)||w(this,960,null,b,"ATC."+this.A.Wg[this.A.Cd&31],a);return a}; +l.Qk=function(a,b,c){var d=this.A,e=d.Cd&32;if(d.Me){d.Me=!1;var f=d.Cd&31;if(16<=f||!e)if(tu||d.Cc[f]!==b)c&&!t(this)||w(this,a,b,c,"ATC."+d.Wg[f]),d.Cc[f]=b,Kt(this,!1)}else d.Cd=b,w(this,a,b,c,"ATC.INDX"),d.Me=!0,b&32&&!e&&Vs(this,!0)&&Ns(this,!0),a=(d.Sa[Br]<<8)+d.Sa[Cr]|0,d.kd!=a&&(d.kd=a,Kt(this)),d.Ze=0}; +l.Sm=function(a,b){a=0;if(this.La==mq)a=3-((this.A.bf&12)>>2),a=(this.Db&1<>this.A.xc&63;b&&!t(this)||w(this,969,null,b,"DAC.DATA["+r(this.A.dd)+"]["+r(this.A.xc)+"]",a);this.A.xc+=6;12Missing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.height="auto";0<=Qa().indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth, +d.screenHeight),c.onresize(null));var f=+(d.aspect||Xa("aspect"));f&&.3<=f&&3.33>=f&&(bb("onresize",function(a,b,c){return function(){b.style.height=(a.clientWidth/c|0)+"px"}}(c,e,f)),window.onresize());c.appendChild(e);f=document.createElement("textarea");Wa("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"),f.style.fontSize="16px");c.appendChild(f);var g=e.getContext("2d"),d=new R(d,e,g,f,c);Ab(d,c)}}); +function uu(a){rb.call(this,"ParallelPort",a,4194304);this.G=a.adapter;switch(this.G){case 1:this.D=956;this.C=7;break;case 2:this.D=888;this.C=7;break;case 3:this.D=632;this.C=5;break;default:mb("Unrecognized parallel adapter #"+this.G);return}this.A=this.B=null;a=a.binding;"console"==a?this.B="":yb(this,a,vu)}ca(uu,rb);l=uu.prototype;l.Cb=function(a,b,c){switch(b){case vu:return this.na[b]=this.A=c,!0}return!1}; +l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.W=bc(a,"ChipSet");Tc(b,this,wu,this.D);Xc(b,this,xu,this.D);Ob(this)};l.Xb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){yu(this)};l.save=function(){var a=new eg(this),b=0,c=[];c[b++]=this.F;c[b++]=this.Mb;c[b]=this.mf;a.set(0,c);return a.data()};l.restore=function(a){return yu(this,a[0])}; +function yu(a,b){var c=0;b||(b=[0,0,0]);a.F=b[c++];a.Mb=b[c++];a.mf=b[c];return!0}l.tm=function(a,b){var c=this.F;w(this,a,null,b,"DATA",c);return c};l.Rm=function(a,b){var c=this.Mb;w(this,a,null,b,"STAT",c);return c};l.pm=function(a,b){var c=this.mf;w(this,a,null,b,"CTRL",c);return c}; +l.Xn=function(a,b,c){w(this,a,b,c,"DATA");this.F=b;this.Mb|=zu;a=!1;Rb(this,"transmitByte("+r(b)+")");this.A&&(8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0);if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}a&&(this.Mb&=~zu);Au(this)};l.Sn=function(a,b,c){w(this,a,b,c,"CTRL");this.mf=b;Au(this)}; +function Au(a){a.W&&a.C&&(a.mf&Bu&&!(a.Mb&zu)?qh(a.W,a.C):oh(a.W,a.C))}var vu="buffer",zu=64,Bu=16,wu={0:uu.prototype.tm,1:uu.prototype.Rm,2:uu.prototype.pm},xu={0:uu.prototype.Xn,2:uu.prototype.Sn};eb(function(){for(var a=Bb(document,"pcx86","parallel"),b=0;b=b)a.preventDefault&&a.preventDefault(),64");if(2==c.length){var d=Aa(c[0]);if(d!=this.Ce)return;c=Aa(c[1]);if(this.D=Eb(c)){var e=this.D.exports;if(e){var f=e.connect;f&&f.call(this.D,this.P);if(this.aa=e.receiveData){this.P=a;this.X=e.receiveStatus;this.status("Connected "+this.De+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}}; +l.Xb=function(a,b){if(!b)if(this.Dj(this.P),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){Iu(this)};l.save=function(){var a=new eg(this),b=0,c=[];c[b++]=this.ga;c[b++]=this.ka;c[b++]=this.L;c[b++]=this.N;c[b++]=this.G;c[b++]=this.C;c[b++]=this.Z;c[b++]=this.B;c[b++]=this.A;c[b]=this.J;a.set(0,c);return a.data()};l.restore=function(a){return Iu(this,a[0])}; +function Iu(a,b){var c=0;b||(b=[0,0,Ju,0,Ku,0,0,Lu|Mu,a.qa,[]]);a.ga=b[c++];a.ka=b[c++];a.L=b[c++];a.N=b[c++];a.G=b[c++];a.C=b[c++];a.Z=b[c++];a.B=b[c++];a.A=b[c++];a.J=b[c];return!0}l.Of=function(a){if("number"==typeof a)this.J.push(a);else if("string"==typeof a)for(var b=0;b>8:this.N;w(this,a,null,b,this.C&Su?"DLM":"IER",c);return c};l.Bm=function(a,b){var c=this.G;w(this,a,null,b,"IIR",c);return c};l.Cm=function(a,b){var c=this.C;w(this,a,null,b,"LCR",c);return c};l.Em=function(a,b){var c=this.Z;w(this,a,null,b,"MCR",c);return c}; +l.Dm=function(a,b){var c=this.B;w(this,a,null,b,"LSR",c);return c};l.Jm=function(a,b){var c=this.A;this.A&=~(Ou|Pu);w(this,a,null,b,"MSR",c);return c}; +l.vo=function(a,b,c){w(this,a,b,c,this.C&Su?"DLL":"THR");if(this.C&Su)this.L=this.L&-256|b;else{this.ka=b;this.B&=~(Lu|Mu);a=!1;Rb(this,"transmitByte("+r(b)+")");this.aa&&this.aa.call(this.D,b)&&(a=!0);if(this.F){if(13==b)this.K=0;else if(8==b)this.F.value=this.F.value.slice(0,-1),0":String.fromCharCode(b);a=d.length;32>b&&1==a&&(a=0);9==b&&(b=this.oa||8,a=b-this.K%b,this.oa&&(d=za("",a)));this.la&&!this.K&&a&&(d=String.fromCharCode(this.la)+ +d);this.F.value+=d;this.F.scrollTop=this.F.scrollHeight;this.K+=a}a=!0}else if(null!=this.I){if(10==b||1024<=this.I.length)this.O(this.I),this.I="";10!=b&&(this.I+=String.fromCharCode(b));a=!0}a&&(this.B=this.B|Lu|Mu)}};l.io=function(a,b,c){w(this,a,b,c,this.C&Su?"DLM":"IER");this.C&Su?this.L=this.L&255|b<<8:this.N=b};l.jo=function(a,b,c){w(this,a,b,c,"LCR");this.C=b}; +l.ko=function(a,b,c){var d=b^this.Z;w(this,a,b,c,"MCR");this.Z=b;d&(Tu|Uu)&&this.X&&(a=0,this.P?(a|=b&Uu?32:0,a|=b&Tu?320:0):(a|=b&Uu?16:0,a|=b&Tu?1048576:0),this.X.call(this.D,a))};function Qu(a){var b=-1;a.B&Ru&&a.N&Vu?b=Wu:a.A&(Ou|Pu)&&a.N&Xu&&(b=Yu);0<=b?(a.G&=~(Ku|Zu),a.G|=b,a.W&&a.M&&qh(a.W,a.M,100)):(a.G|=Ku,a.W&&a.M&&oh(a.W,a.M))} +var Fu="buffer",Ju=384,Vu=1,Xu=8,Ku=1,Wu=4,Yu=0,Zu=6,Su=128,Tu=1,Uu=2,Ru=1,Lu=32,Mu=64,Ou=1,Pu=2,Du=16,Eu=32,Gu={0:Cu.prototype.Om,1:Cu.prototype.Am,2:Cu.prototype.Bm,3:Cu.prototype.Cm,4:Cu.prototype.Em,5:Cu.prototype.Dm,6:Cu.prototype.Jm},Hu={0:Cu.prototype.vo,1:Cu.prototype.io,3:Cu.prototype.jo,4:Cu.prototype.ko};eb(function(){for(var a=Bb(document,"pcx86","serial"),b=0;ba.F||0>a.G)a.F=b.screenX,a.G=b.screenY;a.M?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.screenX-a.F,d=b.screenY-a.G);a.F=b.screenX;a.G=b.screenY;a.tf(c,d,a.F,a.G)}} +l.$d=function(a,b){if(this.rc&&this.H&&this.H.ba.jb){var c="mouse button"+a+" "+(b?"dn":"up");switch(a){case Ps:if(this.K!=b){this.K=b;fv(this,c);return}break;case gv:if(this.L!=b){this.L=b;fv(this,c);return}}Rb(this,c+": ignored")}};l.tf=function(a,b,c,d){this.rc&&this.H&&this.H.ba.jb&&(a||b)&&(t(this,16777216)&&Rb(this,"moveMouse("+a+","+b+")"),this.I=a,this.J=b,fv(this,null,c,d))}; +function fv(a,b,c,d){var e=64|(a.K?32:0)|(a.L?16:0)|(a.J&192)>>4|(a.I&192)>>6,f=a.I&63,g=a.J&63;t(a,8388608)&&Rb(a,(b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+r(e)+","+r(f)+","+r(g)+"]",0,!0);a.D.Of([e,f,g]);a.I=a.J=0} +l.tl=function(a){var b=1048592==(a&1048592);if(b){if(!this.rc){var c=!1;this.A&16||(this.reset(),Rb(this,"serial mouse reset"),c=!0);this.A&1048576||(Rb(this,"serial mouse ID requested"),c=!0);c&&(this.D.Of([hv,hv]),Rb(this,"serial mouse ID sent"));av(this);this.rc=b}}else this.rc&&(Rb(this,"serial mouse inactive"),bv(this),this.rc=b);this.A=a};var hv=77,Ps=0,gv=2;eb(function(){for(var a=Bb(document,"pcx86","mouse"),b=0;b>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.rb);for(c=0;cb.indexOf("/api/v1/dump")&&(a=va(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=pv(this,b),this.pg=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):wa(b, +"/")&&(c="dir"),f=Pa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Qe?"":d)+"&format=json"));var k="Loading "+f+"...";return!!Na(f,null,!0,function(a,b,c){qv(g,a,b,c)},function(){g.O(k,Lb.Ee)})}; +function qv(a,b,c,d){var e=null;a.Te=!1;var f=!(!(0>d&&a.pa)||a.pa.ba.dc);if(a.pg)d?a.Ca('Unable to connect to disk "'+a.G+'" (error '+d+": "+c+")",f):(a.D=!0,rv(a),e=a);else if(d)a.Ca('Unable to load disk "'+a.ld+'" (error '+d+": "+b+")",f);else{tb(a.controller.De,b,c);try{if(0g&&0c.indexOf("0x")&& +'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)mb(h[0]);else{a.rb=h.length;a.cb=h[0].length;a.Va=h[0][0].length;var k=h[0][0][0];a.Na=k&&k.length||512;for(d=c=0;d>2,p=k.pattern;void 0===p&&(p=k.pattern=0);var v=k.data;if(void 0===v){var u=k.bytes;if(void 0!==u&&u.length){for(var F=m<<2,H=u.length;H< +F;H++)u[H]=p;sv(k,u,0)}else k.data=v=[],u&&(k.pattern=p|p<<8|p<<16|p<<24);delete k.bytes}ov(k,d,f);for(F=0;Fb;b++){if(128==uv(a,e,c+0,1)){d.Kf=uv(a,e,c+8,4);(e=tv(a,d.Kf))&&(f=!0);break}c+=16}if(!f)return}d.sf||(d.sf=uv(a,e,19,2)||uv(a,e,32,4),d.rf=uv(a,e,14,2),d.oh=d.rf+uv(a,e,22,2)*uv(a,e,16,1),d.yh=uv(a,e,17,2),d.vf=uv(a,e,13,1));d.mh=d.oh+((32*d.yh+(d.Na-1))/d.Na|0);d.rn=(d.sf-d.mh)/d.vf|0;d.yg=4084>=d.rn?12:16;d.Rl=12==d.yg?4086:65526;b=[];for(e=d.oh;e>=8;f+=2;if(k)for(;m--;)Iv(d,f,1),254>=k?(p=k,v=Iv(d,f+1),f+=3):(p=Iv(d,f+3,1),v=Iv(d,f+4),f+=6),d.sd[p]&&(d.sd[p].ie[h]=[v]),d.A[h]=[p,v],h++;else h+=m}(g=xv(e,Lv,c))&&Mv(e,g+c);g=xv(e,Nv,c);h=xv(e,Ov,c);g&&h&&Mv(e,g,g+h)}}}} +function wv(a,b,c,d,e){var f,g=a.C.length,h=b.Na/32|0;b.mq=d+"\\";for(var k=0;kH)break;for(var I=u.mh+(H-2)*u.vf,L=0;L>3,1),d?e=16==b.yg?e<<8:c&7?e<<4:(e&15)<<8:c&7&&(e>>=4));return e} +function tv(a,b){var c=a.cb*a.Va,d=b/c|0;return dg)break;e|=g<=f)break;e+=String.fromCharCode(f)}return e}function ov(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Sl=b;a.Tl=c;a.hd=a.Oc=0;a.Oa=!1;return a} +function pv(a,b){b="action=open&volume="+b+("&mode="+a.mode);b+="&chs="+a.rb+":"+a.cb+":"+a.Va+":"+a.Na;b+="&machine="+mv(a.controller);b+="&user="+nv(a.controller);return Pa()+"/api/v1/disk?"+b} +function Rv(a,b,c,d,e,f,g){if(a.D){var h;h="action=read&volume="+a.G;h+="&chs="+a.rb+":"+a.cb+":"+a.Va+":"+a.Na;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+mv(a.controller));h+="&user="+nv(a.controller);Na(Pa()+"/api/v1/disk?"+h,null,f,function(h,m,p){h=[b,c,d,e,f,g];var k=!1,u=h[0],F=h[1],H=h[2],I=h[3];if(!p){m=JSON.parse(m);for(k=0;I--;){var L=a.seek(u,F,H,!0);if(!L)break;sv(L,m,k);k+=L.length;H++}k=h[4]}(h=h[5])&&h(p,k)})}else g&&g(-1,!1)} +function Sv(a,b,c,d,e,f,g){if(a.D){var h={};a.M=!0;h.action="write";h.volume=a.G;h.chs=a.rb+":"+a.cb+":"+a.Va+":"+a.Na;h.addr=b+":"+c+":"+d+":"+e;h.machine=mv(a.controller);h.user=nv(a.controller);h.data=JSON.stringify(f);Na(Pa()+"/api/v1/disk",h,g,function(f,h,p){var k=[b,c,d,e,g];f=k[0];h=k[1];var m=k[2],F=k[3],k=k[4];a.M=!1;if(0<=f&&fb&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}l.read=function(a,b){var c=-1;if(a&&b>2,c=(d>((b&3)<<3)&255;return c}; +l.write=function(a,b,c){if(this.Te)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Oc?f=a.hd+a.Oc&&(a.Oc+=f-(a.hd+a.Oc)+1):(a.hd=f,a.Oc=1);d[f]=d[f]&~(255<=this.A.length||k>=this.A[h].length||m>=this.A[h][k].length){c="sector (CHS="+h+":"+k+":"+m+") out of range ("+ +b+" changes applied)";b=-1;break}if(this.Te){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][m]){for(k=h.data.length;kb?-2!=b&&this.Ca("Unable to restore disk '"+this.ld+": "+c):rv(this);return b}; +l.toJSON=function(){var a;a=0;for(var b;b=tv(this,a++);)Xv(b);a=JSON.stringify(this.A,function(a,b){if("file"!=a)return b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")}; +function Xv(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}var jv=0;function Qv(a,b,c,d,e,f){this.ta=a;this.Zb=c;this.Zg=d;this.dj=e;this.je=f}function Iv(a,b,c){var d;c=c||2;var e=b&511,f=tv(a.ta,a.je[b>>9]);if(f){if(e+c<=f.length)return uv(a.ta,f,e,c);for(e=d=0;c--;)d|=Iv(a,b++,1)<=e.ji&&a<=e.Nk){d=a-=e.ji;var f,g;for(g in e.ie){var h=e.ie[g],k=a-h[0];if(!k){c=this.Rf+"!"+h[1];break}b&&0'+b+"");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.na[b]=c,c.onchange=function(){var a=oa(c.value,10);null!=a&&$v(d,a)},!0;case "loadDisk":return this.na[b]=c,c.onclick=function(){d.Hj()},!0;case "saveDisk":if(!this.L){c.parentNode.removeChild(c);break}this.na[b]=c;c.onclick=function(){var a=d.na.listDrives;a&&a.options&&d.A&&((a=d.A[oa(a.value,10)||0])?(a=a.ta)?(a=Za(Wv(a),"octet-stream",!0,a.Mg.replace(".json", +".img")),mb(a)):d.Ca("No diskette loaded in drive."):d.Ca("No diskette drive selected."))};return!0;case "mountDisk":if(this.L)return this.na[b]=c,c.onchange=function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length},c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;aw(d,ua(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; +l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.pa=a;this.W=bc(a,"ChipSet");Zv(Fd(this.pa,"autoMount"),this.M);bw(this);Tc(b,this,cw);Xc(b,this,dw);ew(this,"None","",!0);this.L&&ew(this,"Local Disk","?");ew(this,"Remote Disk","??");fw(this)||Ob(this)};function Zv(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){mb("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a} +l.Xb=function(a,b){if(!b){if(!a){if(this.reset(),this.pa.X){this.B=[];for(a=0;ag.ta.restore(F)&&(h=!1);h&&g.ta&&void 0!==g.Ua&&(g.eb=g.ta.seek(g.Gb,g.$a,g.hb));h||(e=!1)}a.G=b[c++]||0;a.Yb=b[c]||nw;return e} +function hw(a){var b=0,c=[];c[b++]=a.Wa;c[b++]=0;c[b++]=a.fa;c[b++]=a.F;c[b++]=a.D;c[b++]=a.C;c[b++]=a.I;for(var d=b++,e=0,f=[],g=0;glw(a,e,b,c,!1,d);){if(!window.confirm("Click OK to reload the original disk and discard any changes."))return!1;var f=a,g=c,h;for(h=0;ha.rb||f[1]>a.cb)&&(this.Ca('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Wa)),b=null);b?(a.ta=b,a.dl=c,a.ze=d,qw(this,d)||ew(this,c,d),mw(this,c,d,b),f=b.info(),this.G|=rw,this.Ca('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Wa),a.pe||e),a.xg=f[0],a.Af=f[1],a.Bf=f[2],this.pa&&this.pa.od()):a.Pe=!1;a.pe&&(a.pe=!1,--this.K||Ob(this));$v(this,a.Wa)}; +function ew(a,b,c,d){if((a=a.na.listDisks)&&a.options){for(var e=0;e=this.C&&(this.fa&=~(uw|vw),this.D=this.C=0);return c}; +l.Zn=function(a,b,c){t(this)&&w(this,a,b,c,"DATA["+this.C+"]");this.C=xw[a].Ld){b=!1;this.D=0;a=yw(this);var d,e,f,g,h=a&ww;switch(h){case zw:yw(this);yw(this);Aw(this);break;case Bw:c=yw(this);this.Wa=c&3;d=this.A[this.Wa];Aw(this);Cw(this,(d.sb&Dw)>>>24);break;case Ew:case Fw:c=yw(this);b=c>>2&1;this.Wa=c&3;d=this.A[this.Wa];d.$a=b;c=d.Gb=yw(this);e=yw(this);f=d.hb=yw(this);g=yw(this);d.xb=128<>2&1;this.Wa= +c&3;d=this.A[this.Wa];c=d.Gb;e=d.$a=b;f=d.hb=1;g=0;d.sb=pw;d.ta&&(d.eb=d.ta.seek(d.Gb,d.$a,d.hb))?g=d.eb.length>>8:d.sb=Gw|Hw;Jw(this,d,a,b,c,e,f,g);b=!0;break;case Qw:c=yw(this);b=c>>2&1;this.Wa=c&3;d=this.A[this.Wa];c=d.Gb;e=d.$a=b;f=1;g=yw(this);d.xb=128<>2&1,c=yw(this),d.Gb+=c-d.Xd,0>d.Gb&&(d.Gb=0),d.Gb>=d.rb&&(d.Gb=d.rb-1),d.Xd=c,d.sb=Lw,d.Gb||(d.sb|=Mw),Aw(this),b=!0}0>>8);Cw(a,(b.sb&Tw)>>>16);var k=0;if(e!=b.Gb||f!=b.$a)k=g=1;c&Uw&&(f^=k,d||(k=0));Cw(a,e+k);Cw(a,f);Cw(a,g);Cw(a,h)}function yw(a){var b=a.F[a.D];a.D++;return b}function Aw(a){a.D=a.C=0}function Cw(a,b){a.F[a.C++]=b}l.nl=function(a,b,c){void 0===b||0>b?this.ye(a,c):c(-1,!1)};l.ol=function(a,b){return void 0!==b&&0<=b?Vw(a,b):-1}; +l.Gl=function(a,b){if(void 0!==b&&0<=b)a:if(a.sb)a=-1;else{a.Zc[a.Ke++]=b;if(a.Ke==a.Zc.length){a.Gb=a.Zc[0];a.$a=a.Zc[1];a.hb=a.Zc[2];a.xb=128<Vw(a,a.Zi)){a=-1;break a}a.kg++}a.kg>=a.Yd&&(b=-1);a=b}else a=-1;return a};l.ye=function(a,b){var c=-1,d=null,e=0;if(!a.sb&&a.ta){do{if(a.eb&&(e=a.Ua,0<=(c=a.ta.read(a.eb,a.Ua++)))){d=a.eb;break}a.eb=a.ta.seek(a.Gb,a.$a,a.hb);if(!a.eb){a.sb=Ww|Hw;break}a.Ua=0;Xw(a)}while(1)}b(c,!1,d,e)}; +function Vw(a,b){if(a.sb||!a.ta)return-1;do{if(a.eb&&a.ta.write(a.eb,a.Ua++,b))break;a.eb=a.ta.seek(a.Gb,a.$a,a.hb);if(!a.eb){a.sb=Yw|Hw;b=-1;break}a.Ua=0;Xw(a)}while(1);return b}function Xw(a){a.hb++;a.hb>=a.Bf+1&&(a.hb=1,a.$a++,a.$a>=a.Af&&(a.$a=0,a.Gb++))}var kw="Floppy Drive",sw=4,tw=8,vw=16,uw=64,iw=128,zw=3,Bw=4,Ew=5,Fw=6,Kw=7,Nw=8,Pw=10,Qw=13,Rw=15,ww=31,Uw=128,pw=0,Gw=8,Lw=32,Hw=64,jw=192,Ow=255,Iw=512,Ww=1024,Yw=8192,Sw=65280,Tw=16711680,Mw=268435456,Dw=-16777216,rw=128,nw=0;aa={}; +var xw={3:{Ld:3,Zd:0,name:aa.eq},4:{Ld:2,Zd:1,name:aa.bq},5:{Ld:9,Zd:7,name:aa.jq},6:{Ld:9,Zd:7,name:aa.Yp},7:{Ld:2,Zd:0,name:aa.$p},8:{Ld:1,Zd:2,name:aa.cq},10:{Ld:2,Zd:7,name:aa.Zp},13:{Ld:6,Zd:7,name:aa.Up},15:{Ld:3,Zd:0,name:aa.aq}},cw={1009:Yv.prototype.vm,1012:Yv.prototype.xm,1013:Yv.prototype.um,1015:Yv.prototype.wm},dw={1010:Yv.prototype.$n,1013:Yv.prototype.Zn,1015:Yv.prototype.Yn}; +eb(function(){for(var a=Bb(document,"pcx86","fdc"),b=0;bk.ta.restore(g)&&(F=!1),F&&void 0!==k.Ua&&(k.eb=k.ta.seek(k.Qd,k.$a,k.hb+k.jg)));F||(e=!1);null!=a.P&&1>=d&&(a.P|=(f.type&3)<<(1-d<< +1))}0<=a.Wa&&(a.B=a.A[a.Wa]);return e} +function gx(a){var b=0,c=[];a.M?(c[b++]=a.I,c[b++]=a.va,c[b++]=a.J,c[b++]=a.ga,c[b++]=a.ea,c[b++]=a.aa,c[b++]=a.X,c[b++]=a.fa,c[b++]=a.ha,c[b++]=[a.L,a.Wa]):(c[b++]=a.P,c[b++]=a.fa,c[b++]=a.F,c[b++]=a.D,c[b++]=a.C,c[b++]=a.sa,c[b++]=a.qa,c[b++]=a.oa,c[b++]=a.N);for(var d=0,e=[],f=0;f=this.C&&(this.D=this.C=0,this.fa&=~(px|qx|rx));return c};l.xo=function(a,b,c){w(this,a,b,c,"DATA["+this.C+"]");this.C=a&&(this.fa|=px,this.fa&=~tx,ux(this))};l.Ym=function(a,b){var c=this.fa;w(this,a,null,b,"STATUS",c);this.D=a.B.Na?(a.fa=wx,a.ye(a.B,function(b){0<=b?(xx(a),a.W&&a.W.da==Fl&&(a.fa=0),a.fa=a.fa|hx|yx|zx):(a.fa=Ax,a.I=Bx)},!1)):a.fa=hx|yx));return d}l.rl=function(a,b){return vx(this,a,b)|vx(this,a,b)<<8}; +function Cx(a,b,c,d){if(a.B&&a.B.xb>=a.B.Na)if(0>Dx(a.B,c))a.fa=Ax,a.I=Bx;else if(1==a.B.Ua||a.B.Ua==a.B.Na)t(a,1048832)&&w(a,b,c,d,"DATA["+a.B.Ua+"]"),1=a.B.Na&&(a.fa|=zx))}l.Gn=function(a,b,c){Cx(this,a,b&255,c);Cx(this,a,b>>8&255,c)};l.dm=function(a,b){var c=this.I;w(this,a,null,b,"ERROR",c);return c};l.Ln=function(a,b,c){w(this,a,b,c,"WPREC");this.va=b};l.fm=function(a,b){var c=this.J;w(this,a,null,b,"SECCNT",c);return c}; +l.Jn=function(a,b,c){w(this,a,b,c,"SECCNT");this.J=b};l.gm=function(a,b){var c=this.ga;w(this,a,null,b,"SECNUM",c);return c};l.Kn=function(a,b,c){w(this,a,b,c,"SECNUM");this.ga=b};l.bm=function(a,b){var c=this.ea;w(this,a,null,b,"CYLLO",c);return c};l.Fn=function(a,b,c){w(this,a,b,c,"CYLLO");this.ea=b};l.am=function(a,b){var c=this.aa;w(this,a,null,b,"CYLHI",c);return c};l.En=function(a,b,c){w(this,a,b,c,"CYLHI");this.aa=b};l.cm=function(a,b){var c=this.X;w(this,a,null,b,"DRVHD",c);return c}; +l.Hn=function(a,b,c){w(this,a,b,c,"DRVHD");this.X=b;this.fa=this.A[this.X&Ex?1:0]?this.fa|hx|yx:this.fa&~hx};l.hm=function(a,b){var c=this.fa;w(this,a,null,b,"STATUS",c);this.fa&hx&&(this.fa&=~wx);return c};l.Dn=function(a,b,c){w(this,a,b,c,"COMMAND");this.ha=b;this.W&&oh(this.W,14);Fx(this)};l.In=function(a,b,c){w(this,a,b,c,"FDR");this.L&Gx&&!(b&Gx)&&(this.I=Hx);this.L=b}; +function Fx(a){var b=!1,c=a.ha,d=a.X&Ex?1:0,e=a.X&Ix,f=a.ea|(a.aa&Jx)<<8,g=a.ga,h=a.J||256;a.Wa=-1;a.B=null;a.I=Kx;a.fa=hx|yx;var k=a.A[d];k?(k.Qd=f,k.$a=e,k.hb=g,k.xb=h*k.Na,c=c>=Lx?c:c&Mx,k.eb=null,k.Ua=0,k.errorCode=0,a.Wa=d,a.B=k):c=-1;switch(c&Mx){case Nx:b=!0;break;case Ox:a.fa=wx;a.ye(k,function(b){0<=b&&a.W?(xx(a),a.fa=hx|yx|zx):(a.fa=Ax,a.I=Bx)},!1);break;case Px:a.fa=zx;break;case Qx:b=!0;break;case Rx:b=!0;break;case Lx:a.I=Hx;b=!0;break;case Sx:k.cb=e+1,k.Va=h,b=!0}b&&xx(a)} +function xx(a){!a.W||a.L&Tx||qh(a.W,14,120)} +function ux(a){a.D=0;var b=Ux(a),c=Ux(a),d=c&32,e=d>>5,f=c&31,g=Ux(a),h=Ux(a),k=g<<2&768|h,m=g&63,p=Ux(a),v=Ux(a),u=a.A[e];u&&(u.Qd=k,u.$a=f,u.hb=m,u.xb=p*u.Na);switch(b){case Vx:Wx(a,u?u.errorCode:Xx);Yx(a,c);Yx(a,g);Yx(a,h);Yx(a,Zx|d);b=-1;break;case sx:for(c=0;0<=(b=Ux(a));)u&&cb?this.ye(a,c):c(-1,!1)};l.ql=function(a,b){return void 0!==b&&0<=b?Dx(a,b):-1}; +l.Hl=function(a,b){void 0!==b&&0<=b?(a.UaDx(a,a.Zi)){a=-1;break a}a.kg++}a.kg>=a.Yd&&(b=-1);a=b}else a=-1;return a}; +function gy(a,b,c){b.errorCode=Xx;if(b.ta&&(b.eb=null,a.W)){b.errorCode=jx;Un(a.W,3,a,"dmaRead",b);Ln(a.W,3,function(a){a||b.errorCode!=jx||(b.errorCode=Xx);c(b.errorCode?$x:Zx)});return}c(b.errorCode?$x:Zx)}function iy(a,b,c){b.errorCode=Xx;if(b.ta&&(b.eb=null,a.W)){b.errorCode=jx;Un(a.W,3,a,"dmaWrite",b);Ln(a.W,3,function(a){a||(b.errorCode==jx&&(b.errorCode=Xx),b.errorCode==ly&&(b.errorCode=jx));c(b.errorCode?$x:Zx)});return}c(b.errorCode?$x:Zx)} +function ky(a,b,c){b.errorCode=Xx;b.Ie&&b.Ie.length==b.xb||(b.Ie=Array(b.xb));b.Ua=0;a.W?(b.errorCode=jx,Un(a.W,3,a,"dmaWriteBuffer",b),Ln(a.W,3,function(a){a||b.errorCode!=jx||(b.errorCode=Xx);c(b.errorCode?$x:Zx)})):c(b.errorCode?$x:Zx)} +l.ye=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.eb&&(f=a.Ua,d=a.ta.read(a.eb,a.Ua),a.Ua+=g,0<=d))return e=a.eb,b&&b(d,!1,e,f),d;if(b){if(a.ta)return a.ta.seek(a.Qd,a.$a,a.hb+a.jg,!1,function(c,k){(a.eb=c)?(e=c,f=a.Ua=0,my(a),d=a.ta.read(a.eb,a.Ua),a.Ua+=g):a.errorCode=ly;b(d,k,e,f)}),d;a.errorCode=ly;b(d,!1,e,f)}return d}; +function Dx(a,b){if(a.errorCode)return-1;do{if(a.eb&&a.ta.write(a.eb,a.Ua++,b))break;a.ta&&a.ta.seek(a.Qd,a.$a,a.hb+a.jg,!0,function(b){a.eb=b});if(!a.eb){a.errorCode=ly;b=-1;break}a.Ua=0;my(a)}while(1);return b}function my(a){a.hb++;var b=1-a.jg;a.hb>=a.Va+b&&(a.hb=b,a.$a++,a.$a>=a.cb&&(a.$a=0,a.Qd++))}l.Zm=function(){var a=this.H.L&255;!(this.H.D>>8)&&128>8||!this.W)||(a=!(this.W.hc[0].ud&64));return a?!0:!1}; +var kx="Hard Drive",nx=["XTC","ATC","COMPAQ"],lx=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966, +6],19:[1023,8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}],dx=496,Hx=1,Kx=0,Bx=16,Jx=3,Ix=15,Ex=16,Ax=1,zx=8,yx=16,hx=64,wx=128,Nx=16,Ox=32,Px=48,Qx=64,Rx= +112,Lx=144,Sx=145,Mx=240,Tx=2,Gx=4,Zx=0,$x=2,cy=0,dy=1,Vx=3,ey=5,fy=8,hy=10,sx=12,jy=15,ay=224,by=228,jx=0,Xx=4,ly=20,ix=0,tx=1,px=2,qx=4,rx=8,ox=32,ax={800:Zw.prototype.Xm,801:Zw.prototype.Ym,802:Zw.prototype.Wm},$w={496:Zw.prototype.rl,497:Zw.prototype.dm,498:Zw.prototype.fm,499:Zw.prototype.gm,500:Zw.prototype.bm,501:Zw.prototype.am,502:Zw.prototype.cm,503:Zw.prototype.hm},cx={800:Zw.prototype.xo,801:Zw.prototype.Ao,802:Zw.prototype.zo,803:Zw.prototype.yo,807:Zw.prototype.ki,811:Zw.prototype.ki, +815:Zw.prototype.ki},bx={496:Zw.prototype.Gn,497:Zw.prototype.Ln,498:Zw.prototype.Jn,499:Zw.prototype.Kn,500:Zw.prototype.Fn,501:Zw.prototype.En,502:Zw.prototype.Hn,503:Zw.prototype.Dn,1014:Zw.prototype.In};eb(function(){for(var a=Bb(document,"pcx86","hdc"),b=0;bthis.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else this.ga?a="end":a=this.C[this.A+1];b=[];if(a){a=a.replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(Aa(a.substring(d,f))),d=f+1}}return b}; +function oy(a,b,c){var d=a;b=b||32;if(c)if(32==b)d=a>>>0;else if(32>b)d=a&(1<a||a>=b)d=a%b,0>d&&(d+=b)}else 32>=b?d=a<<32-b>>32-b:(b=Math.pow(2,b-1),a>=b?(d=a%b,(a/b|0)&1&&(d-=b)):a<-b&&(d=a%b,((-a-1)/b|0)&1?d&&(d+=b):d||(d-=b)));a!=d&&(a=d);return a} +function py(a,b,c){for(c=void 0===c?-1:c;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e,f=a.pop();e=a.pop();switch(d){case "*":e*=f;break;case "/":if(!f)return!1;e=Math.trunc(e/f);break;case "^/":if(!f)return!1;e%=f;break;case "+":e+=f;break;case "-":e-=f;break;case "<<":e<<=f;break;case ">>":e>>=f;break;case ">>>":e>>>=f;break;case "<":e=e":e=e>f?1:0;break;case ">=":e=e>=f?1:0;break;case "==":e=e==f?1:0;break;case "!=":e=e!=f?1:0;break;case "&":e&= +f;break;case "!":case "|":e|=f;break;case "^!":e|=f;break;case "&&":e=e&&f?1:0;break;case "||":e=e||f?1:0;break;case ",,":e=oy(e,18,!0)*Math.pow(2,18)+oy(f,18,!0);break;case "_":case "^_":"^_"==d&&(f=35-(f&255));f&&(e=oy(e,0,!0),e=0=|>>>|>>|>|<=|<<|<|-|\+|\^\/|\/|\*|,,| )/);d=qy(a,b,0,b.length,a.D,c);void 0!==d&&e&&yy(a,null,d)}return d} +function zy(a,b){var c,d=a.ha[0],e=a.ha[1];c="("==d||"{"==d||"["==d?"\\":"";for(var f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);){var g=xy(a,c[1]);if(void 0===g)return;b=b.replace(d+c[1]+e,null!=g?wy(a,g):"undefined")}if(a.Ba.length)for(d=a.Ba[0],e=a.Ba[1],c="("==d||"{"==d||"["==d?"\\":"",f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);)b=a.Uk(b,c[1]);for(;d=b.match(/\$([a-z]+)/i);){e=null;switch(d[1].toLowerCase()){case "ops":e=a.aa-a.ka}if(null== +e)break;b=b.replace(d[0],e.toString())}return b}function sy(a,b){for(;b;){switch(b&3){case 1:a=-oy(a);break;case 2:a|=-1;break;case 3:for(var c=35;0<=c&&!(a&Math.pow(2,c));)c--;a=35-c}b>>>=2}return a} +function ry(a,b,c,d,e){e=void 0===e?0:e;var f,g=Array.isArray(d)?d:void 0;if(null!=b){f=a.jh(b);if(0<=f)f=a.kh(f);else if(f=b,a.I[f]?f=a.I[f].value:(f=f.substr(0,6),f=a.I[f]&&a.I[f].value),null!=f){var h=a.I[b]&&a.I[b].Wo;h&&(g?g.push(h):(g=xy(a,h,d),void 0!==g?f+=g:(d||a.O("undefined "+(c||"value")+": "+b+" ("+h+")"),f=void 0)))}else f=oa(b,1c&&(d+=" '"+String.fromCharCode(c)+"'"));a.O((null!=b?b+": ":"")+d);return e}function Ay(a,b){var c=0;if(a.I){if(b)return yy(a,b,a.I[b]&&a.I[b].value);b=Object.keys(a.I);b.sort();for(var d=0;d=Math.abs(b)?5:11;b=qa(b,10,a);break;default:b=q(b,0>2:0,!!e)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c} +var uy={"||":5,"&&":6,"!":7,"|":7,"^!":8,"&":9,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,_:19,"^_":19,"{":20,"}":20},ty={",,":1,"||":5,"&&":6,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,"!":15,"|":15,"^!":15,"&":15,_:19,"^_":19,"{":20,"}":20}; +function By(a){ny.call(this,a);this.sa=4;this.la=5;this.wa=1048575;this.N=Cy(this,0,0);this.Aa=Cy(this,0,0);this.ea=Cy(this,0,0);this.F=[];this.B=this.W=this.L=[];Dy(this);this.xa=0;Ey(this);this.Da={};Fy(this,a.messages);this.Ia=a.commands;var b=this;window?void 0===window.pcx86&&(window.pcx86=function(a){return Gy(b,a)}):void 0===global.pcx86&&(global.pcx86=function(a){return Gy(b,a)})}ca(By,ny);l=By.prototype; +l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.pa=a;this.fb=bc(a,"FDC");this.Ta=bc(a,"HDC");this.Ic=bc(a,"FPU");this.G=bc(a,"Mouse");(a=Fd(a,"messages"))&&Fy(this,a);this.la=b.I>>2;this.wa=b.N;this.Za=new be(this.H,7,"DBG");this.qa=Hy;80186<=this.H.da&&(this.qa=Hy.slice(),this.qa[15]=Iy,80286<=this.H.da&&(this.qa[15]=Jy,80386<=this.H.da&&(this.sa=8)));Il(this,64,function(a){Ky(d,d.H.sc,a[0])});Il(this,4,function(a){if(a=a[0]){var b=ry(d,a);if(void 0===b)d.O("invalid selector: "+a);else if(a=Ly(d, +b,My),d.O("dumpSel("+ta(a?a.U:b)+"): %"+q(a?a.Lb:null,d.la)),a){var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else{var e=Ny[a.type];e&&(c=e[0],b=e[1])}!c||a.nb&32768||(c+=",not present");d.O((b?"seg="+ta(a.ua&65535)+" off="+ta(a.Ka):"base="+q(a.ua,d.la)+" limit="+Oy(a.Ka))+" type="+r(a.type>>8)+" ("+c+") ext="+ta(a.ext&-65296)+ +" dpl="+r(a.qc))}}else d.O("no selector")});Il(this,134217728,function(a){var b;(a=a[0])&&(b=ry(d,a));if(void 0===b)d.O("invalid MCB");else for(d.O("dumpMCB("+ta(b)+")");b;){a=Cy(d,0,b);var c=d.Ja(a,1),e=d.Xc(a,2),k=d.Xc(a,5);if(77!=c&&90!=c)break;d.O(Py(0,b)+": '"+String.fromCharCode(c)+"' PID="+ta(e)+" LEN="+ta(k)+' "'+Qy(d,a,8)+'"');b+=1+k}});Il(this,128,function(a){Ky(d,d.H.aa,a[0],d.H.aa!==d.H.sc)});Il(this,8,function(a){a:{if(a=a[0]){var b=ry(d,a);if(void 0===b){d.O("invalid task selector: "+ +a);break a}a=Ly(d,b,My)}else a=d.H.ka;d.O("dumpTSS("+ta(a?a.U:b)+"): %"+q(a?a.ua:null,d.la));if(a){var b="",c=a.type&-513,e=256==c?4:8,k=256==c?Ry:Sy,m,p,v,u;for(u in k)m=k[u],p=a.ua+m,v=Gg(d.H,p,2),2304==c&&(v|=Gg(d.H,p+2,2)<<16),b&&(b+="\n"),b+=ta(m)+" "+za(u+":",11)+q(v,e);if(2304==c)for(u=0,m=v>>>16;mu;){p=a.ua+m;v=Gg(d.H,p,2);p=2;c="";if(!p||4>=8;b+="\n"+ta(m)+" ports "+ta(u)+"-"+ta(u+15)+": "+(""+c);u+=16;m+=2}d.O(b)}}});this.J= +null;this.Ma=0;this.Ea=!1;$f(this.H,48,this.cn.bind(this));$f(this.H,65,this.dn.bind(this));this.Z=null;$f(this.H,104,this.en.bind(this));Ob(this)};function Ty(a,b,c,d,e,f){b=Qy(a,b);var g=Ly(a,d),g=g?g.Ka+1:0,h=(e?"_CODE":"_DATA")+q(c,2);f&&t(a,128)&&a.message(b+" "+(e?"code":"data")+"("+q(c,4)+")=#"+q(d,4)+" len "+q(g));e=Uy(a,b,c);e[b+h]=0;kq(a,b,c,d,0,null,g,e)} +function Vy(a,b,c,d){var e=a.Xc(b,2),f=a.Xc(b,2),g=Wy(a,b,4),h=Wy(a,b,4),k=Cy(a,Wy(a,b,4),a.Xc(b,2));b=Cy(a,Wy(a,b,4),a.Xc(b,2));b=Qy(a,b).toUpperCase();var k=Qy(a,k).toUpperCase(),m=(c?"_CODE":"_DATA")+q(e,2);d&&t(a,128)&&a.message((b==k?"":b+"!")+k+" "+(c?"code":"data")+"("+q(e,4)+")="+q(f,4)+":"+q(g)+" len "+q(h));c=Uy(a,k,e);c[k+m]=g;kq(a,k,e,f,g,null,h,c)}function Xy(a,b,c){c=Qy(a,c).toUpperCase();Yy(a,c,b)} +l.cn=function(){var a=this.H;if(null!=this.J&&2752554==a.D){var b=a.L&65535,c=a.K&65535,d=Cy(this,z(a)+12,a.X.U);switch(Wy(this,d)){case 336:Vy(this,Cy(this,a.G,b),!c,!!this.J)}}return!0}; +l.dn=function(a){var b=this.H,c=b.D&65535,d=b.G&65535,e=b.I&65535,f=b.L&65535,g=b.K&65535,h=b.J&65535,k=b.oa.U;if(null==this.J)return 79==c&&ag(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Rb(a,"INT 0x41 handling enabled",128),a.J=!0):(Rb(a,"INT 0x41 monitoring enabled",128),a.J=!1)}}(this)),!0;switch(c){case 79:this.J&&(b.D=b.D&-65536|62342,Rb(this,"INT 0x41 handling enabled",128));break;case 80:Ty(this,Cy(this,h,k),d+1,e,!(g&1),!!this.J);break;case 82:Yy(this,null, +d);break;case 127:this.J&&(b.D=b.D&-65536|(this.Ea?0:1));break;case 131:this.J&&(a=Cy(this,b.L,e),this.Ma++?(this.O("TRAPFAULT failed"),Zy(this,this.B,a,!0,!0),this.Ma=0,this.Kb()):(this.O("INT 0x41 TRAPFAULT: fault="+ta(d)+" error="+q(b.K,8,!0)+" addr="+$y(a)),this.td(this.B,a,!0),Ey(this,!0)));break;case 141:this.J&&(b.D=b.D&-65536|1);break;case 336:Vy(this,Cy(this,b.G,f),!g,!!this.J);break;case 338:Xy(this,d,Cy(this,b.J,f))}this.Ea=!1;return!this.J}; +l.en=function(a){var b=this.H,c=b.D&255,d=b.D>>8&255,e=b.G&65535,f=b.I&65535,g=b.L&65535,h=b.J&65535,k=b.oa.U;if(null==this.Z){if(67==d){if(609437257==b.ia((b.Z.U<<4)+10)||1111835735==b.ia((b.Z.U<<4)+95))return!0;ag(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Rb(a,"INT 0x68 handling enabled",128),a.J=a.Z=!0):(Rb(a,"INT 0x68 monitoring enabled",128),a.Z=!1)}}(this))}return!0}switch(d){case 67:this.Z&&(b.D=b.D&-65536|62342);break;case 68:this.Z&&(a=de(b.Z,this.Cl.bind(this)))&& +(b.J=a[0],ve(b,a[1]));break;case 72:Yy(this,null,e);break;case 80:32==c?Ty(this,Cy(this,h,k),0,f,!0,!!this.Z):128>c?Ty(this,Cy(this,h,k),e+1,c&64?g:f,!(c&1),!!this.Z):Vy(this,Cy(this,h,k),!(c&1),!!this.Z),this.Z&&(b.D=b.D&-256|1)}return!this.Z};l.Cl=function(){var a=this.H;5==(a.D&255)&&(a.I=a.K=0,a.D=a.D&-256|1);return!1}; +l.Cb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.va=this.na[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Gy(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.A>>0)+1;a.nb=f;a.type=g;a.ext=k;a.Lb=d;ce(a,!0,!0,!1)}}return a}l.Sb=function(a,b,c){var d=a&&a.ya;if(null==d&&(d=-1,a)){var e=Ly(this,a.U,a.type);e&&(b=a.Ha||0,c=c||1,d=e=-1===e.Lb||e.Rc&&(b>>>0)+c>e.Pb||!e.Rc&&(b>>>0)+c<=e.Pb?e.ua+b|0:-1,a.ya=d)}return d};l.Ja=function(a,b){var c=255,d=this.Sb(a,!1,1);-1!==d&&(c=Gg(this.H,d,1,a.type==dz)|0,b&&ez(this,a,b));return c}; +l.mb=function(a,b){return a.Hb?Wy(this,a,b?4:0):this.Xc(a,b?2:0)};l.Xc=function(a,b){var c=65535,d=this.Sb(a,!1,2);-1!==d&&(c=Gg(this.H,d,2,a.type==dz)|0,b&&ez(this,a,b));return c};function Wy(a,b,c){var d=-1,e=a.Sb(b,!1,4);-1!==e&&(d=Gg(a.H,e,4,b.type==dz)|0,c&&ez(a,b,c));return d}l.fc=function(a,b,c,d){var e=this.Sb(a,!0,1);if(-1!==e){if(a.type!=dz)this.H.fc(e,b);else{var f=this.ma;f.aa[(e&f.C)>>>f.A].cf(e&f.D,b&255,e)}c&&ez(this,a,c);d||Id(this.H,!0)}}; +l.ml=function(a,b,c){var d=this.Sb(a,!0,2);-1!==d&&(a.type!=dz?this.H.gb(d,b):Qc(this.ma,d,b),c&&ez(this,a,c),Id(this.H,!0))};function Cy(a,b,c,d,e,f,g){return fz(a,{},b,c,d,e,f,g)}function fz(a,b,c,d,e,f,g,h){b.Ha=c||0;b.U=d;b.ya=e;b.type=f||(bz(a)?My:cz);b.Hb=null!=g?g:!(!a.H||4!=a.H.Z.V);b.cc=null!=h?h:!(!a.H||4!=a.H.Z.Mc);b.yd=!1;return b}function gz(a){return[a.Ha,a.U,a.ya,a.yd,a.Hb,a.cc,a.Je,a.fh]}function hz(a){return{Ha:a[0],U:a[1],ya:a[2],yd:a[3],Hb:a[4],cc:a[5],Je:a[6],fh:a[7]}} +function iz(a,b,c){if(null!=b.U&&(a=Ly(a,b.U,b.type))){var d=b.Ha&a.wa;if(!a.Rc){if(d>>>0>=a.Pb)return!1}else if(d>>>0f?null!=h?(g=xy(a,b,void 0),f=null):(f=xy(a,b,void 0),null==f&&(g=null)):(h=xy(a,b.substring(0,f),void 0),g=xy(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=Cy(a,g,h,f,c),d||iz(a,e,!0)||(a.O("invalid offset: "+$y(e)),e=null));return e}function mz(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.wl=a.Fg(b.cl=c[2]))}l.Uk=function(a,b){var c=jz(this,b);return a.replace("["+b+"]",c?q(this.mb(c),c.Hb?8:4):"undefined")}; +function ez(a,b,c){c=c||1;null!=b.ya&&(b.ya+=c);null!=b.U&&(b.Ha+=c,iz(a,b)||(b.Ha=0,b.ya=null))}function Py(a,b,c){return null!=b?q(b,4)+":"+q(a,a&-65536||c?8:4):q(a)}function $y(a){var b;switch(a.type){case cz:case nz:b="&";break;case My:b="#";break;case lz:b="%";break;case dz:b="%%";break;default:b=a.U?"":"%"}return a.type>=lz||null==a.U?b+q(a.ya):b+Py(a.Ha,a.U,a.cc)} +function Qy(a,b,c){var d="";for(c=c||256;d.length>>a.H.kb;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&d.type==hd&&(d=zd(a.H,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=Ac[c],c==jd&&(d=d.vd,h+=" -> "+Ac[d.type]),d&&a.O(q(d.id,8)+" %"+q(f<c&&(c=Ka(pz,a.substr(b,2))));return c}; +function qz(a,b){var c=0,d=a.kh(b);if(null!=d)switch(b){case rz:case sz:case tz:case uz:case vz:case wz:case xz:case yz:c=2;break;case zz:case Az:case Bz:case Cz:case Dz:case Ez:case Fz:case Gz:case Hz:case Iz+Jz:case Iz+Kz:case Iz+Lz:case Iz+Mz:case Iz+Nz:case Iz+Oz:c=4;break;case Pz:case Qz:case Rz:case Sz:case Tz:case Uz:case Vz:case Wz:case Xz:case Yz:case Zz:case $z:case aA:c=8;break;case bA:c=a.sa}return c?q(d,c):"??"} +l.kh=function(a){var b;if(0<=a){var c=this.H;switch(a){case rz:b=c.D&255;break;case sz:b=c.I&255;break;case tz:b=c.L&255;break;case uz:b=c.G&255;break;case vz:b=c.D>>8&255;break;case wz:b=c.I>>8&255;break;case xz:b=c.L>>8&255;break;case yz:b=c.G>>8&255;break;case zz:b=c.D&65535;break;case Az:b=c.I&65535;break;case Bz:b=c.L&65535;break;case Cz:b=c.G&65535;break;case Dz:b=z(c)&65535;break;case Ez:b=c.M&65535;break;case Fz:b=c.K&65535;break;case Gz:b=c.J&65535;break;case Hz:b=A(c)&65535;break;case bA:b= +De(c);break;case Iz+Jz:b=c.oa.U;break;case Iz+Kz:b=c.Z.U;break;case Iz+Lz:b=c.X.U;break;case Iz+Mz:b=c.Da.U;break;default:if(80286==this.H.da)a==Xz&&(b=c.qa);else if(80386<=this.H.da)switch(a){case Pz:b=c.D;break;case Qz:b=c.I;break;case Rz:b=c.L;break;case Sz:b=c.G;break;case Tz:b=z(c);break;case Uz:b=c.M;break;case Vz:b=c.K;break;case Wz:b=c.J;break;case Xz:b=c.qa;break;case Yz:b=c.Rg;break;case Zz:b=c.rd;break;case $z:b=c.Vc;break;case Iz+Nz:b=c.Ga.U;break;case Iz+Oz:b=c.Ia.U;break;case aA:b=A(c)}}}return b}; +function cA(a,b){b=zy(a,b)||b;for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=a.jh(b,c+1),0<=e&&(b=b.substr(0,c)+qz(a,e)+b.substr(c+1+pz[e].length)),c++;for(c=0;0<=(c=b.indexOf("#",c));)e=b.substr(c+1,2),d=oa(e,16),null!=d&&32<=d&&128>d?(d=e+" '"+String.fromCharCode(d)+"'",b=b.replace("#"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("$",c));)e=b.substr(c+1,9),(d=jz(a,e))?(d=e+' "'+Qy(a,d)+'"',b=b.replace("$"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("^",c));)e=b.substr(c+1,9),(d=jz(a,e))?(ez(a,d), +d=e+' "'+Qy(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}l.message=function(a,b){b&&(a+=" at "+$y(Cy(this,A(this.H),this.H.Z.U))+" (%"+q(this.H.ea)+")");this.za&&a==this.za||(this.za=a,this.ic&-2147483648&&(this.Kb(),a+=" (cpu halted)"),this.O(a),this.H&&(a=this.H,Td(a),a.T.ve=0,Id(a)))}; +function dl(a,b,c,d){var e,f;if(!d&&(d=t(a,1)&&0>dA.indexOf(b),!d)){var g=eA[b];g&&(d=t(a,g)?!0:524288==g&&t(a,g=1048576))}d&&(e=a.H.D>>8&255,f=a.H.L&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=Wb[b])&&g[e]||"")&&(g=" "+cA(a,g)),a.message("INT "+r(b)+": AH="+r(e)+" at "+Py(c-2-a.H.Z.ua,a.H.Z.U)+g));return d} +function Sb(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.ic&h)==h)h=null,null!=e&&(h=a.H.Z.U,e-=a.H.Z.ua),a.message(b.Ce+"."+(null!=d?"outPort":"inPort")+"("+ta(c)+","+(f?f:"unknown")+(null!=d?","+r(d):"")+")"+(null!=g?": "+r(g):"")+(null!=e?" at "+Py(e,h):""))}l.lh=function(){this.O("Type ? for help with PCx86 Debugger commands");fA(this);if(this.Ia){var a=this.Ia;this.Ia=null;Gy(this,a)}}; +function Ey(a,b){var c;if(Rg(a)){if(!a.X||!a.X.length){a.X=Array(gA);for(c=0;c>>g.kb].td(f&g.Db,a==this.L);h&&zc(g)}}e&&(a.push(b),c?(null!=b.ya&&(b.U=null),b.yd=!0):(d||oA(this,a,a.length-1,"set"),Ey(this)));return e}; +function Zy(a,b,c,d,e){for(var f=!1,g=pA(a,a.Sb(c)),h=1;h>3&7,F=(3>(g>>6&3)?0:48)+u;(217==f||219==f)&&52<=F&&(F=u<<4|g&7);(u=xA[f])&&(v=u[F]);v&&(p=yA,k=v,m=k[0])}m>=p.length&&(g=a.Ja(b,1),k=zA[m-p.length][g>>3&7],m=k[0]);p=p[m];u=k.length-1;v="";b.Hb&&(m==AA? +p="CWDE":m==BA?p="CDQ":m>=CA&&m<=DA&&(p+="D"));if(164<=f&&167>=f||170<=f&&175>=f)u=0,b.Hb&&"W"==p.slice(-1)&&(p=p.slice(0,-1)+"D");for(var f=-1,F=!0,H=1;H<=u;H++){var I,L;I="";L=k[H];if(void 0!==L){0>f&&(f=L>>EA);m==FA&&(f==GA?v="[%800]":f==HA&&(v="ES:["+(b.cc?"E":"")+"DI]"));var P=L&IA;if(P!=JA)if(P==KA)F=!1;else{var K=L&LA;if(K>=S)if(0>g&&(g=a.Ja(b,1)),K>6,pa=g&7;if(3>ib){P=!p.indexOf("FI");if(!ib&&(!L.cc&&6==pa||L.cc&&5==pa))ib=2;else{if(L.cc)if(4!=pa)pa+= +8;else{var ba=K,cb=ib,Oa=L,jb=ba.Ja(Oa,1),db=jb>>6,rc=jb>>3&7,jb=jb&7,kb="";if(cb||5!=jb)kb=NA[jb+8];4!=rc&&(kb&&(kb+="+"),kb+=NA[rc+8],db&&(kb+="*"+(1<>24),2)):ba+("+"+q(K,2))):2==ib&&(ba&&(ba+="+"),L.cc?(K=Wy(K,L,4),ba+=q(K)):(K=K.Xc(L,2),ba+=q(K,4)));ba="["+ba+"]";if(1==Ba){K="";I&=IA;I==T&&(I=L.Hb?OA:U);switch(I){case PA:K="FAR";break;case V:K="BYTE";break;case U:if(P){K="INT16"; +break}K="WORD";break;case OA:K="DWORD";break;case QA:if(P){K="INT32";break}case RA:K="REAL32";break;case SA:if(P){K="INT64";break}case TA:K="REAL64";break;case UA:K="REAL80";break;case VA:K="BCD80"}K&&(ba=K+" "+ba)}}else ba=WA(K,pa,I,L);I=ba}else I=K==MA?WA(a,g&7,L,b):WA(a,g>>3&7,L,b);else if(K==XA)I="1";else if(K==W){I=a;P=L;K=b;L=" ";switch(P&IA){case V:P&X&&(L=q(I.Ja(K,1),2));break;case YA:L=q(I.Ja(K,1)<<24>>24,K.Hb?8:4);break;case T:if(K.Hb){L=q(Wy(I,K,4));break}case U:L=q(I.Xc(K,2),4);break; +case PA:K=Cy(I,I.mb(K,!0),I.Xc(K,2),null,K.type,K.Hb,K.cc);L=$y(K);I=ZA(I,K);I[0]&&(L+=" ("+I[0]+")");break;default:L="imm("+ta(P)+")"}I=L}else K==$A?(b.cc?(I=8,L=Wy(a,b,4)):(I=4,L=a.Xc(b,2)),I="["+q(L,I)+"]"):K==aB?(I=P==V?a.Ja(b,1)<<24>>24:a.mb(b,!0),L=b.Ha+I&(b.Hb?-1:65535),I=q(L,b.Hb?8:4),L=ZA(a,Cy(a,L,b.U)),L[0]&&(I+=" ("+L[0]+")")):K==Y?I=P==bB?"ST":P==cB?"ST("+(g&7)+")":WA(a,(L&dB)>>8,L,b):K==eB?I=WA(a,(L&dB)>>8,fB,b):K==gB?I="DS:[SI]":K==hB&&(I="ES:[DI]");if(!I||!I.length){v="INVALID";break}0< +v.length&&(v+=",");v+=I||"???"}}}g="";k=$y(e)+" ";if(-1!==e.ya&&-1!==b.ya){do if(g+=q(a.Ja(e,1),2),null==e.ya)break;while(e.ya!=b.ya)}k+=za(g,e.cc?24:16);k+=za(p,8);v&&(k+=" "+v);a.H.daOz||b>=Nz&&80386>a.H.da)return"??";b+=Iz}else if(e==kB)b+=Xz;else if(e==lB)b+=mB;else if(e==nB)b+=oB;else if(a=c&IA,a>=U&&(b=zz&&b<=Gz&&4a.H.da&&(d="\n"+d,c+=e,e="");c+="\n"+rB(a,a.H.Z,b)+" ";80386<=a.H.da&&(e+="\n",c+=rB(a,a.H.Ga,b)+" "+rB(a,a.H.Ia,b)+"\n");c+=sB(a,"LD",a.H.Eb.U,a.H.Eb.ua,a.H.Eb.ua+a.H.Eb.Ka)+" "+sB(a,"GD",null,a.H.Ib,a.H.Hc)+" "+sB(a,"ID", +null,a.H.Nb,a.H.bd)+" ";c=c+(d+" "+e)+qB(a,Xz);80386<=a.H.da&&(c+=qB(a,Zz)+qB(a,$z))}else 80386<=a.H.da&&(c+=rB(a,a.H.Ga,b)+" "+rB(a,a.H.Ia,b)+" ");return c+=qB(a,bA)+pB(a,"V")+pB(a,"D")+pB(a,"I")+pB(a,"T")+pB(a,"S")+pB(a,"Z")+pB(a,"A")+pB(a,"P")+pB(a,"C")}l.jj=function(a,b){return a[0]>b[0]?1:a[0]>>0,p],I=Da(F,u,a.jj);0>I&&F.splice(-(I+1),0,u)}H&&(v.a=H.replace(/''/g,'"'))}a.F.push({Rf:b,vn:c,U:d,Ha:e,ya:f,kn:g,Jd:h,Si:m})} +function Yy(a,b,c){for(var d=0;d>>0,f=a.Sb(b)>>>0,g=0;g>>0,p=h.ya;null!=p&&(p>>>=0);var v=h.kn;48==k&&(k=40);if(k==b.U&&e>=m&&e=p&&fc?(a.O("out of data at address "+$y(b)),p=!0):(a.fc(b,c,1,!0),m++)})})(a,g);Id(a.H, +!0);a.O(m+" bytes read at "+b)}else a.O("sector "+e+" request out of range");else a.O("drive "+d+" not loaded");else a.O("invalid drive: "+d)}else a.O("disk controller not present")}}else a.O("load commands:"),a.O("\tl [address] [drive #] [sector #] [# sectors]")} +function jA(a,b){var c;if(b&&"?"==b[1])a.O("register commands:"),a.O("\tr\tdump registers"),a.Ic&&a.O("\trfp\tdump floating-point registers"),a.O("\trp\tdump all registers"),a.O("\trx [#]\tset flag or register x to [#]");else{var d;null==c&&(c=!0);if(b&&1f;f++){var g=c,e=null;if(f=a.sa&&(h=null);switch(h){case "AL":a.H.D= +a.H.D&-256|g&255;break;case "AH":a.H.D=a.H.D&-65281|g<<8&255;break;case "AX":a.H.D=a.H.D&-65536|g&65535;break;case "BL":a.H.G=a.H.G&-256|g&255;break;case "BH":a.H.G=a.H.G&-65281|g<<8&255;break;case "BX":a.H.G=a.H.G&-65536|g&65535;break;case "CL":a.H.I=a.H.I&-256|g&255;break;case "CH":a.H.I=a.H.I&-65281|g<<8&255;break;case "CX":a.H.I=a.H.I&-65536|g&65535;break;case "DL":a.H.L=a.H.L&-256|g&255;break;case "DH":a.H.L=a.H.L&-65281|g<<8&255;break;case "DX":a.H.L=a.H.L&-65536|g&65535;break;case "SP":oe(a.H, +z(a.H)&-65536|g&65535);break;case "BP":a.H.M=a.H.M&-65536|g&65535;break;case "SI":a.H.K=a.H.K&-65536|g&65535;break;case "DI":a.H.J=a.H.J&-65536|g&65535;break;case "DS":ue(a.H,g);break;case "ES":ve(a.H,g);break;case "SS":ne(a.H,g);break;case "CS":gg(a.H,g);a.N=Cy(a,A(a.H),a.H.Z.U);break;case "IP":case "EIP":C(a.H,g);a.N=Cy(a,A(a.H),a.H.Z.U);break;case "PC":case "PS":Ee(a.H,g);break;case "C":g?sg(a.H):tg(a.H);break;case "P":g?(e=a.H,e.resultType&=-3,e.P|=4):(e=a.H,e.resultType&=-3,e.P&=-5);break;case "A":g? +Cg(a.H):yg(a.H);break;case "Z":g?Dg(a.H):zg(a.H);break;case "S":g?(e=a.H,e.resultType&=-17,e.P|=128):(e=a.H,e.resultType&=-17,e.P&=-129);break;case "I":g?(e=a.H,e.P|=512):(e=a.H,e.P&=-513);break;case "D":g?(e=a.H,e.P|=1024):(e=a.H,e.P&=-1025);break;case "V":g?ug(a.H):vg(a.H);break;default:var k=!0;if(80286<=a.H.da)switch(k=!1,h){case "MS":Eg(a.H,g);break;case "TR":-1===a.H.ka.load(g)&&(f=!1);break;default:if(k=!0,80386<=a.H.da)switch(k=!1,h){case "EAX":a.H.D=g;break;case "EBX":a.H.G=g;break;case "ECX":a.H.I= +g;break;case "EDX":a.H.L=g;break;case "ESP":oe(a.H,g);break;case "EBP":a.H.M=g;break;case "ESI":a.H.K=g;break;case "EDI":a.H.J=g;break;case "FS":a.H.Ga.load(g);break;case "GS":a.H.Ia.load(g);break;case "CR0":a.H.qa=g;jk.call(a.H,g);break;case "CR2":a.H.rd=g;break;case "CR3":a.H.Vc=g;Ge.call(a.H,g);break;default:k=!0}}if(k){a.O("unknown register: "+e);return}}if(!f){a.O("invalid value: "+b);return}Id(a.H);a.O("updated registers:")}}a.O(tB(a,d));c&&(a.N=Cy(a,A(a.H),a.H.Z.U),kA(a,$y(a.N)))}} +function BB(a,b){b=Aa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(cA(a,c[2])):xy(a,b,!1)}function CB(a,b,c){for(var d=null,e=b.Ha,f=e,g=1;6>=g&&e;g++){if(2e&&(e=1);4096h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.O(m)}h[3]&&(g=h[3],f=null);f=sA(a,b,g,f);b.fh||d||d++;a.O(f);a.N=b;e-=b.ya-k;c++}}} +l.Fg=function(a,b,c){if(b)if(a){0>this.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else a=this.C[this.A+1];b=[];if(a){a=a.toLowerCase().replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(Aa(a.substring(d,f))),d=f+1}}return b}; +function rA(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.ga&&(a.O("ended assemble at "+$y(a.ea)),a.N=a.ea,a.ga=!1),b="";else if(!c){var e=">> ";a.H.qa&1&&(e=a.H.P&131072?"-- ":"## ");a.O(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.za=null;if(Nb(a)&&0p||"z">>20;Ra.Wi=a.H.Vc+Ra.Ok;Ra.ob=tf.aa[(Ra.Wi&tf.C)>>>tf.A];Ra.Ej=Ra.ob.Pd(Ra.Ok);Ra.Pk=(Vg&4190208)>>>10;Ra.Xi=(Ra.Ej&-4096)+Ra.Pk;Ra.pb=tf.aa[(Ra.Xi&tf.C)>>>tf.A];Ra.Fj=Ra.pb.Pd(Ra.Pk);Ra.yl=(Ra.Fj&-4096)+(Vg&4095)}if(sf=Ra){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var ye="%"+q(Vg),ye=ye+(" %%"+oz(sf.Wi,sf.Ej)),ye= +ye+(" %%"+oz(sf.Xi,sf.Fj,!0)),ye=ye+(" %%"+q(sf.yl));a.O(ye)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==pa){if("disk"==cb){ba[0]="l";ba[1]="json";yB(a,ba);break a}for(ib in Xb)if(ba[1]==ib){var Ot=a.Da[ib];Ot?(ba.shift(),ba.shift(),Ot(ba)):a.O("no dump registered for "+cb);break a}cb||(pa=a.lb||"db")}if("dh"==pa){var Pt=cb,Qt=Oa,Wg=jb,Wg=void 0===Wg?"history":Wg,Rt="",St=0,Mc=a.oa,ld=a.X;if(ld.length){var vc=+Pt||a.Ya,Xg=+Qt||10;isNaN(vc)?vc=Xg:Rt="more ";vc>ld.length&& +(a.O("note: only "+ld.length+" available"),vc=ld.length);Mc-=vc;0>Mc&&(null==ld[ld.length-1].U?(vc=Mc+vc,Mc=0):Mc+=ld.length);var Cm=[];"call"==Qt&&(Xg=1E5,Cm=["CALL"]);for(void 0!==Pt&&a.O(vc+" instructions earlier:");0=ld.length&&(Mc=0);a.Ya=vc; +St++;Xg--}}St||(a.O("no "+Rt+"history available"),a.Ya=void 0)}else if("di"==pa){ba.shift();var Dm=ba[0];if(Dm){var Zg=ry(a,Dm);if(void 0===Zg||0>Zg||255"abwd".indexOf(pa[1]))a.O("unrecognized dump command"); +else{a.lb=pa;var ze=jz(a,cb);if(ze&&(null!=ze.U||null!=ze.ya)){var uf=0;if(Oa){if("l"==Oa.charAt(0))Oa=Oa.substr(1)||jb,uf=ry(a,Oa);else{var Zt=jz(a,Oa);if(!Zt)break a;uf=Zt.Ha-ze.Ha+1}if(0>uf||65536>4||1,Gm=4==vf?16:a.D;"a"==pa[1]&&(Em=!0,Fm=25,Gm=160,$g=Fm*Gm);for(;Fm--&&0<$g;){var ah=0,Hm=0,bh,Im="",ej="",cb=$y(ze);for(bh=Gm;0fj?String.fromCharCode(fj):Em?"":".";$g--}Ae&&(Ae+="\n");Ae=Em?Ae+ej:Ae+(cb+" "+Im+za(ej,ej.length+3*bh+1,!0))}Ae&&a.O(Ae.replace(/\s*$/,""));a.Aa=ze}}}}}break;case "e":if("else"==g[0])break;var gj=1,$t=255,au=a.Ja,bu=a.fc;"ew"==g[0]&&(gj=2,$t=65535,au=a.Xc,bu=a.ml);var cu=gj<<1,du=g[1];if(null==du)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var hj=jz(a,du);if(hj)for(var ij= +2;ijOm;){for(var nd=null,AC=256;Ud.Ha>>>0>>0;){eh.Ha=a.mb(Ud,!0);if(null==Ud.ya||!AC--)break;eh.U=fu;if(nd=CB(a,eh))break;eh.U=a.mb(Ud); +if(nd=CB(a,eh,!0)){fu=a.mb(Ud,!0);0\nLicense: GPL version 3 or later "); +for(b=0;bZB){if(d.load(this.M)){this.G=new eg(this,"1.36.0",kC);this.G.load()&&(a!=iC&&lC(this,d)&&(a=mC),nC(this.G));this.G.set(hC,Ea());oC(this.G);var e=this.A&&!this.J;if(a==iC||vb("Click OK to restore the previous PCx86 machine state.")){if(c=gC(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.Ca("Error: "+ +g),"unable to verify user"==g&&(Va(pC,""),this.B=null)):this.O(f+": "+g),nC(d),d.load()?(c=gC(d),e=!0):c=!1))}e&&eC(this,c?d:null)}else a==mC&&d.clear()}else eC(this);delete this.M;delete this.N}e=Db(this.id);for(f=0;fa[1];a=a[2];if(!this.ba.rg){for(var d=0;d>>b.A;d=d+e-1>>>b.A;c.eh=0;for(c.Kd=0;f<=d;)e=b.aa[f],c.eh+=e.size,e.size&&(c.Ug.push(Ia(hc,f,0,0,e.type)),c.Kd++),f++;a.A=c;a.ea=a.A.Kd*a.ma.B/(gc*qc);d=0;a.A.cj=0;a.A.lf||(a.A.lf=[]);e=-1;b=0;for(var g=-1,c=0;c>1),g=f.y+(f.A>>1),h=f.A,f.Qc>1,b.I+=(b.J>>1)-2,nc(b,e),b.X&&(b.D.restore(),b.X=!1)}}else nc(a,"This space intentionally left blank");a.context.drawImage(a.K,0,0,a.K.width,a.K.height,a.Ga,a.Ma,a.xa,a.Aa);a.oa=!1}}var kC="failsafe",fC="validate",hC="timestamp",rC="version",sC="url",tC="browser",pC="user",jC=-1,ZB=0,iC=1,mC=2,EC=3; +eb(function(){for(var a=Bb(document,"pcx86-machine"),b=0;bf.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/, +"$1PCx86$2"),a=a.replace(/().*?(<\/xsl:variable>)/,"$1pcx86$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(p){f=null,a=p.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");Na(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/gi;m=p.exec(f);)k=0>k.toLowerCase().indexOf(m[1].toLowerCase())?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+ +"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(d[0],g);KC(a,b,c)}})}else c(a,null)} +function LC(a,b,c,d){function e(a){if(void 0===h){var b=g&&Bb(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=xa(a))}function f(a){e("Error: "+a);k&&(--HC||nb(!0));k=!1}var g,h,k=!0;HC++;ub[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],v=document.createElement("style");v.type="text/css";v.styleSheet?v.styleSheet.cssText=m:v.appendChild(document.createTextNode(m));p.appendChild(v)}c|| +(c="/versions/pcx86/1.36.0/components.xsl");m=function(d,h){h?IC(c,null,null,!1,e,function(d,k){k?(tb(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--HC||nb(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--HC||nb(!0)):f("invalid machine element: "+ +a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?IC(b,a,d,!0,e,m):JC(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(u){f(u.message)}return k}function MC(a,b,c,d){nb(!1);return LC(a,b,c,d)}window.embedPC=MC;window.embedPCx86=MC;window.findMachineComponent=function(a,b){return zb(b,a+".machine")}; +window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!Gb[a]){for(var c=!0,d=Gb,e=a,f=b.length,g=[],h=[],k="",m=null,p=0;p]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;d=v.exec(h[m]);){var u=d[2];u&&(h[u]||(p=p.replace(d[0],"")))}d=m=ua(m)}else"xsl"==v&&(e=m=ua(m));k[m]=p}a&&(k[m="css"]=a);b[2]&&(k[m="parms"]=b[2]);b[3]&&(k[m="state"]=b[3]);d&&e?(a=JSON.stringify(k),g+=".js",c=c[1]+"var resources="+a+";"+c[2]+c[3],c=c.replace(/\u00A9/g, +"©"),a=Za(c,"javascript",!1,g),a=a+(', copy it to your web server as "'+g+'", and then add the following to your web page:\n\n')+('
    \n')+"...\n",a=a+('\n'; + sAlert += '\n\n'; + sAlert += 'The machine should appear where the
    is located.'; + Component.alertUser(sAlert); + return; + } + Component.alertUser("Missing XML/XSL resources"); +} + +/** + * Prevent the Closure Compiler from renaming functions we want to export, by adding them + * as (named) properties of a global object. + */ +window['savePC'] = savePC; diff --git a/versions/pcx86/1.36.0/pcx86.js b/versions/pcx86/1.36.0/pcx86.js new file mode 100644 index 000000000..5bcf415c4 --- /dev/null +++ b/versions/pcx86/1.36.0/pcx86.js @@ -0,0 +1,706 @@ +(function(){/* + http://pcjs.org/modules/shared/lib/diskapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/dumpapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/reportapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/userapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/keys.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/strlib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/weblib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/interrupts.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/messages.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/debugger.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/state.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/embed.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/defines.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/component.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/defines.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/panel.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/bus.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/memory.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/cpu.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86seg.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86cpu.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86fpu.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86func.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86help.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86mods.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86ops.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/x86op0f.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/chipset.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/rom.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/ram.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/keyboard.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/video.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/parallel.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/serial.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/mouse.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/disk.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/fdc.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/hdc.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/debugger.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pcx86/lib/computer.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/save.js (C) Jeff Parsons 2012-2017 +*/ +var l,aa;function da(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a;for(var d in b)if(Object.defineProperties){var e=Object.getOwnPropertyDescriptor(b,d);e&&Object.defineProperty(a,d,e)}else a[d]=b[d]} +for(var ea="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},fa="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global?global:this,ga=["Math","trunc"],ha=0;haa?-b:b};la!=ka&&null!=la&&ea(fa,ja,{configurable:!0,writable:!0,value:la}); +var ma={163840:[40,1,8,,254],184320:[40,1,9,,252],327680:[40,2,8,,255],368640:[40,2,9,,253],737280:[80,2,9,,249],1228800:[80,2,15,,249],1474560:[80,2,18,,240],2949120:[80,2,36,,240],10653696:[306,4,17],21411840:[615,4,17],256256:[77,1,26,128],2494464:[203,2,12,512],5242880:[256,2,40,256],10485760:[512,2,40,256]},n={Sn:0,Un:1,Vn:2,bk:3,Wn:4,Xn:5,Yn:6,Zn:7,$n:8,ao:9,bo:10,co:11,eo:12,fo:13,ho:14,io:15,jo:16,ko:17,lo:18,mo:19,no:20,oo:21,po:22,qo:23,ro:24,so:25,to:26," ":32,"!":33,'"':34,"#":35,$:36, +"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Gd:65,zh:66,Ah:67,Ch:68,E:69,Dh:70,Eh:71,Fh:72,Gh:73,Hh:74,Ih:75,Jh:76,Kh:77,Lh:78,Mh:79,Nh:80,Q:81,Oh:82,Ph:83,Qh:84,Rh:85,Sh:86,Th:87,Uh:88,Vh:89,uf:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Hd:97,mk:98,nk:99,d:100,e:101,yk:102,zk:103,Ak:104,Bk:105,Nl:106,k:107,Pl:108,Ul:109,n:110,$l:111,p:112,q:113,r:114,un:115,t:116,xn:117, +yn:118,zn:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,uo:127},na={};na[173]=n["-"];na[186]=n[";"];na[187]=n["="];na[189]=n["-"];na[188]=n[","];na[190]=n["."];na[191]=n["/"];na[192]=n["`"];na[219]=n["["];na[220]=n["\\"];na[221]=n["]"];na[222]=n["'"];var q={};q[n["1"]]=n["!"];q[n["2"]]=n["@"];q[n["3"]]=n["#"];q[n["4"]]=n.$;q[n["5"]]=n["%"];q[n["6"]]=n["^"];q[n["7"]]=n["&"];q[n["8"]]=n["*"];q[n["9"]]=n["("];q[n["0"]]=n[")"];q[186]=n[":"];q[187]=n["+"];q[188]=n["<"];q[189]=n._;q[190]=n[">"]; +q[191]=n["?"];q[192]=n["~"];q[219]=n["{"];q[220]=n["|"];q[221]=n["}"];q[222]=n['"'];q[173]=n._;q[61]=n["+"];q[59]=n[":"]; +function oa(a,b){var c;if(a){b||(b=10);var d,e,f=0=b&&(e=a.match(/(-?[0-9]+)B([0-9]*)/))&& +(a=e[1],d=35-((e[2]||35)&255));e=a;((f=b)&&10!=f?16==f?e.match(/^-?[0-9a-f]+$/i):8==f?e.match(/^-?[0-7]+$/):2==f&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(g=parseInt(a,b))&&(d&&(0>g&&(g+=Math.pow(2,36)),g=0=b?4:4294967295>=b?8:9);c=c?"0x":"";var d;d=void 0===d?0:d;var e="";isNaN(a)?a=null:null!=a&&(0>a&&-1a&&(a+=Math.pow(16,b)),a>=Math.pow(16,b)&&(b=Math.ceil(Math.log(a)/Math.log(16))));for(var f=d||-1;0=g?48:55),e=String.fromCharCode(g)+e;a=Math.trunc(a/16)}f--}return(void 0===c?"":c)+e} +function qa(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0"']/g,function(a){return ua[a]})}function va(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")} +var ua={"&":"&","<":"<",">":">",'"':""","'":"'"},wa={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",10:"LF",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"}; +function xa(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())} +function ya(a){var b,c="";b||(b=new Date);for(var d=b.getHours(),e=b.getDate(),f=b.getMonth()+1,g=0;gd?"am":"pm";break;case "d":c+=("0"+e).slice(-2);break;case "D":c+=za[b.getDay()].substr(0,3);break;case "F":c+=Aa[f-1];break;case "g":c+=d?12=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.tg|g<>a.shift} +var za="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),Aa="January February March April May June July August September October November December".split(" "),Da=[31,28,31,30,31,30,31,31,30,31,30,31],Ea=Date.now||function(){return+new Date}; +function Fa(a,b,c,d,e){c=void 0===c?!1:c;var f=0,g=null,h=null;if("object"==typeof resources&&(g=resources[a]))return d&&d(a,g,f),[g,f];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),h;var k=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(k.onreadystatechange=function(){4!==k.readyState?e&&e(1):(g=k.responseText,200==k.status||!k.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(f=k.status||-1), +e&&e(2),d&&d(a,g,f))});e&&e(0);if(b&&"object"==typeof b){var m="",p;for(p in b)b.hasOwnProperty(p)&&(m&&(m+="&"),m+=p+"="+encodeURIComponent(b[p]));m=m.replace(/%20/g,"+");k.open("POST",a,c);k.setRequestHeader("Content-type","application/x-www-form-urlencoded");k.send(m)}else k.open("GET",a,c),"bytes"==b&&k.overrideMimeType("text/plain; charset=x-user-defined"),k.send();c||(g=k.responseText,200!=k.status&&(f=k.status||-1),d&&d(a,g,f),h=[g,f]);return h} +function Ga(){return"http://"+(window?window.location.host:"www.pcjs.org")}function Ha(){if(null==Ja){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}Ja=a}return Ja}function Ka(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b} +function La(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function Ma(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&!!b.match(/(iPod|iPhone|iPad)/)&&!!b.match(/AppleWebKit/)||"MSIE"==a&&!!b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)}return!1} +function Na(a){if(!Oa){var b,c={};if(window){b||(b=window.location.search.substr(1));for(var d,e=/\+/g,f=/([^&=]+)=?([^&]*)/g;d=f.exec(b);)c[decodeURIComponent(d[1].replace(e," "))]=decodeURIComponent(d[2].replace(e," "))}Oa=c}return Oa[a]||Oa[a.toLowerCase()]} +function Pa(a,b,c,d){var e=null;b="data:application/"+b+(c?";base64":"")+",";b=Ma("Firefox")?b+(c?a:encodeURIComponent(a)):b+(c?a:encodeURI(a));d&&(e=document.createElement("a"),"string"!=typeof e.download&&(e=null));e?(e.href=b,e.download=d,document.body.appendChild(e),e.click(),document.body.removeChild(e),a="Check your Downloads folder for "+d+"."):(window.open(b),a="Check your browser for a new window/tab containing the requested data"+(d?" ("+d+")":"")+".");return a} +function Qa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ra(a){Sa.init.push(a)}function Ta(a){if(Ua)try{for(var b=0;ba?this.Be=this.id:(this.Zd=this.id.substr(0,a),this.Be=this.id.substr(a+1));this.Z={ready:!1,yf:!1,og:!1,Hf:!1,Zb:!1,hf:!1,error:!1};this.Gf=null;this.Z.error=!1;this.Ea=this.S=this.na=this.oa=null;Za.push(this)}function $a(a,b,c){ab[a]&&b&&(ab[a][b]=c)}function r(a){window&&window.alert(a)} +function bb(a){var b=!1;window&&(b=window.confirm(a));return b}function cb(a,b){a.value+=b;b=a.value;8192e?d+=b+"\n":d=d.substr(0,e)+c+d.substr(e+b.length);8192=this.x&&a=this.y&&b=c>>2);d?(b=new zb(a.x,a.y,a.zc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new zb(a.x,a.y,a.zc*b/c|0,a.A),a.x+=b.zc,a.zc-=b.zc);return b} +function Bb(a){t.call(this,"Panel",a);this.F=this.G=this.K=-1}da(Bb,t);l=Bb.prototype;l.yb=function(a,b,c,d){return this.oa&&this.oa.yb(a,b,c,d)||this.S&&this.S.yb(a,b,c,d)||this.C&&this.C.yb(a,b,c,d)?!0:t.prototype.yb.call(this,a,b,c,d)};l.ic=function(a,b,c,d){this.oa=a;this.na=b;this.S=c;this.Ea=d;this.C=Cb(a,"Keyboard")};l.Pb=function(a,b){b||Db();return!0};l.Ob=function(){return!0};l.je=function(a,b){a.button||(this.K=b?0:-1,Eb(this,a,b))};l.ug=function(a){Eb(this,a)}; +function Eb(a,b,c){var d=Fb/null.offsetWidth,e=Gb/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.K||(a.K=Math.abs(a.F-d)>Math.abs(a.G-b)?1:2),1==a.K?b=a.G:2==a.K&&(d=a.F));a.F=d;a.G=b;if(0<=d&&dd&&(f=d);c= +f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ea)){b=c;if(a.context&&a.M&&a.O){e=Jb-Kb;f=a.M.width;a.O.fillStyle=Mb;a.O.fillRect(0,e,f,Kb);Nb(a,e+Ob,a.M,a.O);a.V=a.fa.width/24|0;if(null==b)Pb(a,"Mouse over memory to dump");else for(Pb(a,pa(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var k;k=a.na;var m=b++;k=k.X[(m&k.D)>>>k.B].Ed(m&k.C,m);Pb(a,pa(k,2),null,1);g+=32<=k&&128>k?String.fromCharCode(k):"."}Pb(a,g,null,0,1)}a.context.drawImage(a.M,0,e,f,Kb,a.Ca,a.Ha,a.ta,a.xa)}a.ea=c}}} +function Qb(a,b,c,d){a.A.Ge[a.A.ei++]={Ck:b,gd:c,type:d};return Ba(Ib,b,c,0,d)}function Nb(a,b,c,d){var e,f=null.style.color,g=a.qa=10;a.B=g;a.H=b;a.I=a.aa=Ob;e||(e=a.X||a.aa+"px "+Rb);a.L=a.X=e;c&&(a.fa=c);d&&(a.D=d,a.ia=f||"white")}function Pb(a,b,c,d,e){a.D.font=a.L;a.D.fillStyle=a.ia;a.D.fillText(b,a.B,a.H);a.B+=a.V;null!=c&&(16!=a.Ba?b=c.toString():(b=8>a.pa?"0x":"",b+=pa(c,a.pa)),a.D.fillText(b,a.B,a.H),a.B+=a.V);d&&(a.B+=a.V*d);e&&(a.B=a.qa,a.H+=(a.I+2)*(e||1))} +function Db(){for(var a=!1,b=hb(document,"pcx86","panel"),c=0;c>2,Sb=Gb,Jb=Gb,Mb="black",Kb=Gb>>1;Ra(Db); +function Tb(a,b,c){t.call(this,"Bus",a);this.S=b;this.Ea=c;this.F=a.busWidth||20;this.K=Math.pow(2,this.F);this.W=this.D=this.K-1|0;this.B=32==this.F||20>=this.F?12:24>=this.F?14:15;this.A=1<>2;this.C=this.A-1;this.H=this.K/this.A|0;this.L=this.H-1;this.I=[];this.J=[];this.M=[];this.O=[];a=new u;Ub(a,this.Ea);this.X=Array(this.H);for(b=0;b>>a.B;0g&&(p=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.fe)return k.ye+=k.fe-f,k.fe=f,!0;if(f>=k.fe+k.ye){p=k.size-(f-m);p>g&&(p=g);k.ye=f-k.fe+p;f=m+a.A;g-=p;h++;continue}}return Xb(a,Yb,f,g)}f=new u(f,p,a.A,d,e);Ub(f,a.Ea,k);a.X[h++]=f;f=m+a.A;g-=p}return 0>=g?(e=a.S,e.pa&-2147483648&&Zb(e),a.S.Z.vb||a.status(Math.floor(c/1024)+"Kb "+$b[d]+" at "+pa(b)),!0):Xb(a,ac,b,c)} +function Vb(a,b){32==a.F?b?a.G&&(bc(a,1048576,1048576,a.G),a.G=null):a.G||(a.G=cc(a,1048576,1048576),bc(a,1048576,1048576,cc(a,0,1048576))):20>>this.B;0>>a.B;0>>=a.B;0>>a.B;0>>this.B].nc(a&this.C,a)};function nc(a,b){var c=b&a.C,d=(b&a.D)>>>a.B;return c!=a.C?a.X[d].cf(c,b):a.X[d++].Ed(c,b)|a.X[d&a.L].Ed(0,b+1)<<8} +l.Fc=function(a,b){this.X[(a&this.D)>>>this.B].oc(a&this.C,b&255,a)};function qc(a,b,c){var d=b&a.C,e=(b&a.D)>>>a.B;d!=a.C?a.X[e].xh(d,c&65535,b):(a.X[e++].jf(d,c&255,b),a.X[e&a.L].jf(0,c>>8&255,b+1))} +function rc(a,b){var c=0,d=[],e=!a.G&&a.W==a.D;e||Vb(a,!0);for(var f=0;f>>=f)&k;if(void 0!==g&&g[0])g[0](b,k,e);f+=h<<3;b+=h;c-=h}}function Xb(a,b,c,d,e){b="Memory block error ("+b+": "+pa(c)+","+pa(d)+")";e?a.Ea?a.Ea.message(b):a.log(b):r(b);return!1} +var Ib,wc={Hj:20,count:8,Lo:1,type:3},xc=0,yc;for(yc in wc){var zc=wc[yc];wc[yc]={tg:(1<>1),this.U=new Int32Array(this.L,0,c>>2),ec(this,jc?kc:lc);else{this.U=Array(c>>2);for(e=0;e>2),b=0;b>8,c)};l.uh=function(a,b,c){this.oc(a++,b&255,c++);this.oc(a++,b>>8&255,c++);this.oc(a++,b>>16&255,c++);this.oc(a,b>>>24,c)};l.dn=function(a){return this.U[a>>2]>>>((a&3)<<3)&255}; +l.qn=function(a){var b=a>>2;a=(a&3)<<3;var c=this.U[b]>>a;return 24>a?c&65535:c&255|(this.U[b+1]&255)<<8};l.kn=function(a){var b=a>>2;a=(a&3)<<3;var c=this.U[b];a&&(c=c>>>a|this.U[b+1]<<32-a);return c};l.Cn=function(a,b){var c=a>>2;a=(a&3)<<3;this.U[c]=this.U[c]&~(255<>2;a=(a&3)<<3;24>a?this.U[c]=this.U[c]&~(65535<>8);this.Da=!0}; +l.In=function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<>>32-a}else this.U[c]=b;this.Da=!0};l.cn=function(a,b){this.F&&Mc(this.F,b,1,!1);return this.Ed(a,b)};l.pn=function(a,b){this.F&&Mc(this.F,b,2,!1);return this.cf(a,b)};l.jn=function(a,b){this.F&&Mc(this.F,b,4,!1);return this.ph(a,b)};l.Bn=function(a,b,c){this.F&&Mc(this.F,c,1,!0);this.H||this.jf(a,b,c)};l.Nn=function(a,b,c){this.F&&Mc(this.F,c,2,!0);this.H||this.xh(a,b,c)}; +l.Hn=function(a,b,c){this.F&&Mc(this.F,c,4,!0);this.H||this.S(a,b,c)};l.fn=function(a,b){this.A.U[this.C]|=this.I;this.B.U[this.D]|=this.I;return this.J.nc(a,b)};l.sn=function(a,b){this.A.U[this.C]|=this.I;this.B.U[this.D]|=this.I;return this.J.bf(a,b)};l.mn=function(a,b){this.A.U[this.C]|=this.I;this.B.U[this.D]|=this.I;return this.J.Sd(a,b)};l.En=function(a,b,c){this.A.U[this.C]|=this.I;this.B.U[this.D]|=this.M;this.J.oc(a,b,c)}; +l.Qn=function(a,b,c){this.A.U[this.C]|=this.I;this.B.U[this.D]|=this.M;this.J.lf(a,b,c)};l.Kn=function(a,b,c){this.A.U[this.C]|=this.I;this.B.U[this.D]|=this.M;this.J.kf(a,b,c)};l.gn=function(a,b){return Nc(this.F,b,!1).nc(a,b)};l.tn=function(a,b){return Nc(this.F,b,!1).bf(a,b)};l.nn=function(a,b){return Nc(this.F,b,!1).Sd(a,b)};l.Fn=function(a,b,c){Nc(this.F,c,!0).oc(a,b,c)};l.Rn=function(a,b,c){Nc(this.F,c,!0).lf(a,b,c)};l.Ln=function(a,b,c){Nc(this.F,c,!0).kf(a,b,c)};l.bn=function(a){return this.Ga[a]}; +l.Mj=function(a){return this.Ga[a]};l.en=function(a){this.A.U[this.C]|=32;this.B.U[this.D]|=32;this.nc=this.Mj;return this.Ga[a]};l.on=function(a){return this.K.getUint16(a,!0)};l.Rj=function(a){return a&1?this.Ga[a]|this.Ga[a+1]<<8:this.vd[a>>1]};l.rn=function(a){this.A.U[this.C]|=32;this.B.U[this.D]|=32;this.bf=this.Rj;return a&1?this.Ga[a]|this.Ga[a+1]<<8:this.vd[a>>1]};l.hn=function(a){return this.K.getInt32(a,!0)}; +l.Oj=function(a){return a&3?this.Ga[a]|this.Ga[a+1]<<8|this.Ga[a+2]<<16|this.Ga[a+3]<<24:this.U[a>>2]};l.ln=function(a){this.A.U[this.C]|=32;this.B.U[this.D]|=32;this.Sd=this.Oj;return a&3?this.Ga[a]|this.Ga[a+1]<<8|this.Ga[a+2]<<16|this.Ga[a+3]<<24:this.U[a>>2]};l.An=function(a,b){this.Ga[a]=b;this.Da=!0};l.Zj=function(a,b){this.Ga[a]=b;this.Da=!0};l.Dn=function(a,b){this.Ga[a]=b;this.A.U[this.C]|=32;this.B.U[this.D]|=96;this.oc=this.Zj;this.J.Da=!0}; +l.Mn=function(a,b){this.K.setUint16(a,b,!0);this.Da=!0};l.ak=function(a,b){a&1?(this.Ga[a]=b,this.Ga[a+1]=b>>8):this.vd[a>>1]=b;this.Da=!0};l.Pn=function(a,b){a&1?(this.Ga[a]=b,this.Ga[a+1]=b>>8):this.vd[a>>1]=b;this.A.U[this.C]|=32;this.B.U[this.D]|=96;this.lf=this.ak;this.J.Da=!0};l.Gn=function(a,b){this.K.setInt32(a,b,!0);this.Da=!0};l.$j=function(a,b){a&3?(this.Ga[a]=b,this.Ga[a+1]=b>>8,this.Ga[a+2]=b>>16,this.Ga[a+3]=b>>24):this.U[a>>2]=b;this.Da=!0}; +l.Jn=function(a,b){a&3?(this.Ga[a]=b,this.Ga[a+1]=b>>8,this.Ga[a+2]=b>>16,this.Ga[a+3]=b>>24):this.U[a>>2]=b;this.A.U[this.C]|=32;this.B.U[this.D]|=96;this.kf=this.$j;this.J.Da=!0};function Oc(a){vb&&!jc&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a} +var Dc=0,ic=2,Ec=5,Gc=6,Pc=["black","blue","green","cyan"],$b="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),Cc=0,Ic=[],mc=[u.prototype.dn,u.prototype.Cn,u.prototype.qn,u.prototype.On,u.prototype.kn,u.prototype.In],Lc=[u.prototype.cn,u.prototype.Bn,u.prototype.pn,u.prototype.Nn,u.prototype.jn,u.prototype.Hn],Hc=[u.prototype.fn,u.prototype.En,u.prototype.sn,u.prototype.Qn,u.prototype.mn,u.prototype.Kn],Fc=[u.prototype.gn,u.prototype.Fn,u.prototype.tn,u.prototype.Rn,u.prototype.nn,u.prototype.Ln]; +if(vb)var lc=[u.prototype.bn,u.prototype.An,u.prototype.on,u.prototype.Mn,u.prototype.hn,u.prototype.Gn],kc=[u.prototype.Mj,u.prototype.Zj,u.prototype.Rj,u.prototype.ak,u.prototype.Oj,u.prototype.$j],Qc=[u.prototype.en,u.prototype.Dn,u.prototype.rn,u.prototype.Pn,u.prototype.ln,u.prototype.Jn]; +function Rc(a,b){t.call(this,"CPU",a);b=a.cycles||b;var c=a.multiplier||1;this.R={};this.R.Zc=b;this.R.Cd=c;this.R.Kf=Math.round(this.R.Zc/1E4)/100;this.R.re=this.R.Kf*this.R.Cd;this.Z.vb=!1;this.Z.Xj=!1;this.Z.Id=a.autoStart;this.Z.li=!1;this.Z.Cf=!1;this.R.Mf=this.R.se=0;this.R.Nf=a.csStart;this.R.Le=a.csInterval;this.R.Me=a.csStop;this.Ol=this.cg.bind(this);tb(this)}da(Rc,t);l=Rc.prototype; +l.ic=function(a,b,c,d){this.oa=a;this.na=b;this.Ea=d;for(b=0;ba.R.Kf&&(c=Math.round(c/a.R.Cd));return c}function Uc(a){a.R.Ad=0;a.dd=a.Tc=a.jc=a.A=0;Vc(a);Yc(a,1)} +function Yc(a,b,c){if(void 0!==b){(c||a.Z.vb)&&.8>a.R.Ad/a.R.re&&(b=1);a.R.Cd=b;b=a.R.Kf*a.R.Cd;if(a.R.re!=b){a.R.re=b;b=a.R.re.toFixed(2)+"Mhz";var d=a.ja.setSpeed;d&&(d.textContent=b);a.ub("target speed: "+b)}c&&a.oa&&fd(a.oa)}$c(a,a.Tc);a.Tc=0;a.R.Bd=Ea();a.R.Pd=0;ad(a)} +l.cg=function(a){if(ub(this,!0)){if(!this.Z.vb){Yc(this);this.oa&&this.oa.start(this.R.Bd,ed(this));this.Z.vb=!0;this.Z.Xj=!0;this.V&&this.V.start();var b=this.ja.run;b&&(b.textContent="Halt");this.oa&&(gd(this.oa,!0),a&&fd(this.oa,!0))}this.R.Bg>=this.R.Zc&&ad(this,!0);this.R.Pe=0;this.R.Lf=Ea();this.R.Pd&&(a=this.R.Lf-this.R.Pd,a>this.R.Ei&&(this.R.Bd+=a,this.R.Bd>this.R.Lf&&(this.R.Bd=this.R.Lf)));try{do{var c=this.Z.Cf?1:this.R.Yl;if(this.V){hd(this.V);var d=this.V;a=c;var e=d.H[0];if(e.Md){var f= +(ed(d.S,d.V)-e.kd)/d.Aa|0,g=id(d,0)-f;e.mode==jd&&(g-=f);var h=g*d.Aa|0;e.mode==jd&&(h>>=1);a>h&&(a=h)}var c=a,k=this.V;a=c;if(k.A&&k.A[kd]&ld){var m=k.X-ed(k.S,k.V);0m&&(a=m)}c=a}try{this.Bh(c)}catch(y){if("number"!=typeof y)throw y;}var p=this.jc-this.A;this.Tc+=p;this.R.Pe+=p;$c(this,0,!0);a=p;this.Z.Cf&&(b=!1,this.R.Mf=this.R.Mf+this.ui()|0,this.R.se-=a,0>=this.R.se&&(this.R.se+=this.R.Le,b=!0),0<=this.R.Me&&this.R.Me<=ed(this)&&(this.R.Le=this.R.Me=-1,Vc(this),Xc(this),b=!0),b&&this.ub(ed(this)+ +" cycles: checksum="+pa(this.R.Mf)));this.R.Oe-=p;0>=this.R.Oe&&(this.R.Oe+=this.R.Gi,this.oa&&md(this.oa));this.R.Ne-=p;0>=this.R.Ne&&(this.R.Ne+=this.R.Fi,this.oa&&gd(this.oa));this.R.te-=p;if(0>=this.R.te){this.R.te+=this.R.Ag;break}}while(this.Z.vb)}catch(y){Xc(this);Wc(this);this.oa&&this.oa.stop(Ea(),ed(this));ub(this,!1);rb(this,y.stack||y.message);return}c=setTimeout;d=this.Ol;this.R.Pd=Ea();e=this.R.Ei;this.R.Pe&&(e=Math.round(e*this.R.Pe/this.R.Ag));e-=this.R.Pd-this.R.Lf;if(f=this.R.Pd- +this.R.Bd)this.R.Ad=Math.round(this.Tc/(10*f))/100,864E5<=f&&(this.dd=0,this.V&&hd(this.V,!0),Yc(this));if(0>e||this.R.Ade&&(this.R.Bd-=e),e=0;this.R.Bg+=this.R.Pe;this.R.Pd+=e;c(d,e)}else Wc(this),this.oa&&this.oa.stop(Ea(),ed(this))};l.Bh=function(){return 0};function Xc(a,b){a.Z.yf&&(a.Z.og=!0);a.jc-=a.A;a.A=0;$c(a,a.Tc);a.Tc=0;if(a.Z.vb){a.Z.vb=!1;a.V&&a.V.stop();var c=a.ja.run;c&&(c.textContent="Run")}a.Z.complete=b}function Wc(a){a.oa&&(md(a.oa,void 0),gd(a.oa,void 0))} +var bd=30,cd=60,dd=2,Sc=["power","reset"];function nd(a,b,c,d){this.B=a;this.Ea=a.Ea;this.id=b;this.ag=c||"";this.ha=0;this.Ua=65535;this.C=this.Ua+1;this.pb=this.hc=this.ext=this.lb=this.type=this.wa=0;this.ac=-1;this.T=this.Jc=2;this.N=this.ra=65535;this.J=this.Ci;this.H=this.hi;this.I=this.ji;this.A={ha:-1,wa:0,Ua:0,lb:0,type:0,ext:0,ac:-1};1==this.id&&(this.$e=0,this.D=null,this.oe=!1,this.G=Array(32),this.F=[]);od(this,!0,d)}l=nd.prototype; +l.Ci=function(a){this.ha=a&65535;return this.wa=this.ha<<4};l.Jf=function(a,b){var c,d,e=this.B;a&=65535;a&4?(c=e.lc.wa,d=c+e.lc.Ua|0):(c=e.Gb,d=e.Pc);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,pd(this,c,a,b);this.id>>0)+b<=this.C?this.wa+a|0:this.Af()};l.pk=function(a,b){return(a>>>0)+b>this.C?this.wa+a|0:this.Af()};l.Af=function(){v.call(this.B,13,0);return-1};l.ii=function(a,b){return(a>>>0)+b<=this.C?this.wa+a|0:this.Bf()}; +l.qk=function(a,b){return(a>>>0)+b>this.C?this.wa+a|0:this.Bf()};l.Bf=function(){v.call(this.B,13,0);return-1};function td(a,b,c,d,e){a.ha=b;a.wa=d;a.Ua=e;a.C=(e>>>0)+1;a.lb=c;a.type=c&7936;a.ext=c>>16&192;a.ac=(b&4?a.B.lc.wa:a.B.Gb)+(b&65528)|0;a.id>>0)+1;a.lb=e;a.type=e&7936;a.ext=0;a.ac=b;a.id>>0)+1,a.lb=a.A.lb,a.type=a.A.type,a.ext=a.A.ext,a.ac=a.A.ac,a.A.ha=-1,od(a,!0,!0,!1),a.wa;a.A.ha=-1;var f=e.ga(b+0),g=e.ga(b+4),h=g&7936,k=e.ga(b+2)|(g&255)<<16,m=e.ga(b+6),p=c&65528;if(80386<=e.ba){var y=f,k=k|(m&65280)<<16,f=f|(m&15)<<16;m&128&&(f=f<<12|4095)}switch(a.id){case wd:var w=a.D;a.oe=!1;if(w&&c==xd&&a.F.length){var z=a.F[a.$e-1];if(z&&!z())return-1}var E=c&3,ba=(g&24576)>>13,z=-1,ca,X; +p||b>=e.Gb&&b=a.pb&&(E>a.pb&&(z=x(e),yd(e,x(e),!0),A(e,z),a.oe=!0),z=0);else{if(256==h||2304==h)return zd(a,c,w)?a.wa:-1;if(1024==h)z=2,X=0,Eh||2048==(h&2560))return v.call(e,13,c&65532),-1;if(!(g&32768))return v.call(e,11,c&65532),-1}break;case sd:if(!p||4096>h||512!=(h&2560))return v.call(e,13,c&65532),-1;if(!(g&32768))return v.call(e, +12,c&65532),-1;break;case ud:w=h&-513;if(!p||256!=w&&2304!=w)return v.call(e,13,c&65532),-1;2304==w&&(a.$h=k+e.ga(k+102)|0,a.lk=k+a.Ua|0);break;case rd:if(!(h&4096)&&768>>0)+1,a.lb=g,a.type=h,a.ext=m,a.ac=b,od(a,!0,!0,!1));return k} +function zd(a,b,c){var d=a.B,e=a.pb,f=d.ka.ha,g=d.ka.wa;if(!c){if(!(d.ka.type&512))return v.call(d,13,b&65532),!1;d.Xa(d.ka.ac+4,d.ka.lb&=-513)}if(-1===d.ka.load(b))return!1;var h=d.ka.wa;if(!1!==c){if(d.ka.type&512)return v.call(d,13,b&65532),!1;d.Xa(d.ka.ac+4,d.ka.lb|=512)}d.ka.type=d.ka.type&-513|d.ka.lb&512;256==d.ka.type||768==d.ka.type?(d.Xa(g+14,D(d)),d.Xa(g+16,Hd(d)),d.Xa(g+18,d.F),d.Xa(g+20,d.H),d.Xa(g+22,d.K),d.Xa(g+24,d.G),d.Xa(g+26,B(d)),d.Xa(g+28,d.L),d.Xa(g+30,d.J),d.Xa(g+32,d.I),d.Xa(g+ +34,d.ua.ha),d.Xa(g+36,d.fa.ha),d.Xa(g+38,d.W.ha),d.Xa(g+40,d.Ca.ha),d.lc.load(d.ga(h+42)),Id(d,d.ga(h+16)|(c?16384:0)),d.F=d.ga(h+18),d.H=d.ga(h+20),d.K=d.ga(h+22),d.G=d.ga(h+24),d.L=d.ga(h+28),d.J=d.ga(h+30),d.I=d.ga(h+32),d.ua.load(d.ga(h+34)),d.Ca.load(d.ga(h+40)),Jd(d,d.ga(h+14),d.ga(h+36)),b=38,g=26,a.pb>>0)+1)}; +function od(a,b,c,d){void 0===c&&(c=!!(a.B.pa&1));a.zd=!1;if(c)if(a.load=a.Jf,a.Bi=a.Sl,a.Mb=a.gi,a.Nb=a.ii,void 0===d&&(d=!!(a.B.O&131072)),d)a.load=a.J,a.Mb=a.H,a.Nb=a.I,a.pb=a.hc=3,a.T=2,a.N=a.ra=65535,a.Ua=65535,a.C=a.Ua+1,a.Jc=a.T,a.ac=-1,a.oe=!1;else{if(!(a.ha&-4))a.Mb=a.Af,a.Nb=a.Bf;else if(a.type&4096){6144==(a.type&6656)&&(a.Mb=a.Af);if(a.type&2048||!(a.type&512))a.Nb=a.Bf;1024==(a.type&3072)&&(a.Mb==a.gi&&(a.Mb=a.pk),a.Nb==a.ii&&(a.Nb=a.qk),a.zd=!0);b&&a.id>13,80386>a.B.ba||!(a.ext&64)?(a.T=2,a.N=65535):(a.T=4,a.N=-1),a.Jc=a.T,a.ra=a.N)}else a.load=a.Ci,a.Bi=a.Tl,a.Mb=a.hi,a.Nb=a.ji,a.pb=a.hc=0,a.ac=-1,a.oe=!1}var wd=1,Gd=2,sd=3,ud=4,rd=6,xd=1; +function Ld(a){var b=+a.model||8088,c;switch(b){default:c=4772727;break;case 80286:c=6E6;break;case 80386:c=16E6}Rc.call(this,a,c);this.ba=b;a=a.stepping;this.pd=b+(a?oa(a,16):0);this.Xh=61442;this.od=1792;this.Wh=28672;this.mf=4;this.Ha=255;this.B=80286<=this.ba?xb:wb;this.qa=Md;this.fi=Nd;this.ki=Od;this.oi=Pd;if(80186<=this.ba&&(this.qa=Md.slice(),this.fi=Nd.slice(),this.ki=Od.slice(),this.Ha=31,this.qa[15]=Qd,this.qa[96]=Rd,this.qa[97]=Sd,this.qa[98]=Td,this.qa[99]=Qd,this.qa[100]=Qd,this.qa[101]= +Qd,this.qa[102]=Qd,this.qa[103]=Qd,this.qa[104]=Ud,this.qa[105]=Vd,this.qa[106]=Wd,this.qa[107]=Xd,this.qa[108]=Yd,this.qa[109]=Zd,this.qa[110]=$d,this.qa[111]=ae,this.qa[192]=be,this.qa[193]=ce,this.qa[200]=de,this.qa[201]=ee,this.qa[241]=fe,this.fi[7]=ge,this.ki[7]=ge,80286<=this.ba)){this.Xh=2;this.od|=28672;this.mf=0;this.qa[15]=he;this.cd=ie.slice();for(b=0;b=this.pd&&(this.cd[166]=re,this.cd[167]=se)}}this.qf=[];this.di=[];this.eg=0;Uc(this);this.Z.complete=this.Z.sk=!1;this.ti=0;this.Oc=this.X=[];this.Bb=this.yh=this.Ab=this.nf=this.ze=this.Ae=this.Dc=0;te(this)}da(Ld,Rc); +function Zb(a){var b;if(a.X===a.Oc){a.X=Array(a.nf);a.rf=new u(null,0,0,Ec,null,a);Ub(a.rf,a.Ea);for(b=0;b>>20,f=a.Oc[(a.ed+e&a.Ae)>>>a.Bb],g=f.Sd(e);if(!(g&1))return d||ve.call(a,b,!1,c),a.Ce;if(!(g&4)&&3==a.Fa)return d||ve.call(a,b,!0,c),a.Ce;var h=(b&4190208)>>>10,g=a.Oc[((g&-4096)+h&a.Ae)>>>a.Bb],k=g.Sd(h);if(!(k&1))return d||ve.call(a,b,!1,c),a.Ce;if(!(k&4)&&3==a.Fa)return d||ve.call(a,b,!0,c),a.Ce;c=a.Oc[((k&-4096)+(b&4095)&a.Ae)>>>a.Bb];if(d)return c;d=b>>>a.Bb;k=a.X[d];b&=-4096;var m;0>2;b.B=g;b.D=h>>2;vb&&jc&&c.U&&!c.controller&&!c.ge&&!c.he?(b.Ga=c.Ga,b.vd=c.vd,b.U=c.U,ec(b,Qc)):(b.I=c?Oc(32):0,b.M=c?Oc(96):0,ec(b,Hc));Ub(b,a.Ea,k);a.X[d]=b;a.pf.push(d);return b}function we(a){a.X!==a.Oc&&(a.X=a.Oc,a.rf=null,a.pf=null,a.Ce=null)}l=Ld.prototype;l.reset=function(){this.Z.vb&&Xc(this);te(this);Uc(this);this.Z.error=!1}; +function xe(a,b){var c;switch(b){case 0:c=a.F;break;case 1:c=a.H;break;case 2:c=a.K;break;case 3:c=a.G;break;case 4:c=B(a);break;case 5:c=a.L;break;case 6:c=a.J;break;case 7:c=a.I}return c}function ye(a,b,c){switch(b){case 0:a.F=c;break;case 1:a.H=c;break;case 2:a.K=c;break;case 3:a.G=c;break;case 4:A(a,c);break;case 5:a.L=c;break;case 6:a.J=c;break;case 7:a.I=c}} +function te(a){a.F=0;a.G=0;a.H=0;a.K=0;a.kc=0;a.L=0;a.J=0;a.I=0;a.dc=!1;a.Aa=a.Sa=0;a.Ql=[0,0];a.Vl=[0,0];a.ta=0;a.si=0;a.aa=0;a.pa=65520;a.Tb=0;a.Qc=1023;a.O=a.Wb=0;a.td=a.Ee=a.sd=a.$d=0;a.rc=-1;a.Uc=a.tc=-1;a.Vc=a.ma=-1;a.fa=new nd(a,wd,"CS");a.Ca=new nd(a,Gd,"DS");a.ua=new nd(a,Gd,"ES");a.W=new nd(a,sd,"SS");A(a,0);yd(a,0);if(80386<=a.ba){switch(a.pd){case 80562:case 80563:a.K=771;break;case 80578:a.K=772;break;case 80594:a.K=773;break;case 80595:case 80596:a.K=776}a.pa=16;a.Ai=0;a.rd=0;a.ed=0; +a.zb=[0,0,0,0,null,null,0,0];a.tf=[null,null,null,null,null,null,0,0];a.ob=new nd(a,Gd,"FS");a.rb=new nd(a,Gd,"GS");we(a)}a.hg=new nd(a,0,"NULL");a.Ba=a.Ca;a.Db=a.W;a.M=a.ca=0;a.C=a.D=-1;a.Za=a.hg;a.Ka=0;if(80286>a.ba)Jd(a,0,65535);else{a.Gb=0;a.Pc=65535;a.lc=new nd(a,5,"LDT",!0);a.ka=new nd(a,ud,"TSS",!0);a.eb=new nd(a,rd,"VER",!0);Jd(a,65520,61440);var b,c=D(a);b=a.fa;var d=-65536;80386>b.B.ba&&(d&=16777215);b=b.wa=d;a.ea=b+c|0;a.fg=(b>>>0)+(a.fa.Ua>>>0)+1}Id(a,0);Ad(a)} +function ze(a){2==a.Jc?(a.yi=a.ga,a.Vb=Ae,a.cc=Be,a.Sc=Ce,2==a.T?(a.ia=De,a.xa=Ee,a.bb=Fe):(a.ia=Ge,a.xa=He,a.bb=Ie)):(a.yi=a.da,a.Vb=Je,a.cc=Ke,a.Sc=Le,2==a.T?(a.ia=Me,a.xa=Ne,a.bb=Oe):(a.ia=Pe,a.xa=Qe,a.bb=Re))}function Bd(a,b){a.T!=b&&(a.ca|=1024,a.T=b,a.N=2==b?65535:-1,Se(a))}function Se(a){2==a.T?(a.sb=32768,a.jb=a.ga,a.kb=a.Xa,2==a.Jc?(a.ia=De,a.xa=Ee,a.bb=Fe):(a.ia=Me,a.xa=Ne,a.bb=Oe)):(a.sb=-2147483648,a.jb=a.da,a.kb=a.Qa,2==a.Jc?(a.ia=Ge,a.xa=He,a.bb=Ie):(a.ia=Pe,a.xa=Qe,a.bb=Re))} +function Te(a){a.Jc=a.fa.Jc;a.ra=a.fa.ra;ze(a);a.T=a.fa.T;a.N=a.fa.N;Se(a);a.ca&=-3073}l.ui=function(){var a=this.F+this.G+this.H+this.K+B(this)+this.L+this.J+this.I|0;return a=a+D(this)+this.fa.ha+this.Ca.ha+this.W.ha+this.ua.ha+Hd(this)|0};function Ue(a,b,c){void 0===a.qf[b]&&(a.qf[b]=[]);a.qf[b].push(c)}function Ve(a,b){var c=a.di[b];null!=c&&(c(--a.eg),delete a.di[b])} +function We(a,b){for(var c=a.zb[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.zb[e],g=g&~(d>>2&3);if(b){var g=a.X[g>>>a.Bb],h=a;f?g.he++||(h&&(g.F=h),Kc(g,Lc,!1)):g.ge++||(h&&(g.F=h),Jc(g,Lc,!1))}else g=a.X[g>>>a.Bb],f?--g.he||(f=g,f.oc=f.H?f.vh:f.jf,f.lf=f.H?f.wh:f.xh,f.kf=f.H?f.uh:f.S):--g.ge||(f=g,f.nc=f.Ed,f.bf=f.cf,f.Sd=f.ph)}c>>=2;d>>=4}} +function Mc(a,b,c,d){if(!(a.M&8192)&&a.zb[7]&255){c--;var e=a.zb[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.zb[g]&&b<=a.zb[g]+h){a.zb[6]|=1<>=2;f>>=4}}}function Ad(a,b,c){void 0===b&&(b=!!(a.pa&1));void 0===c&&(c=!!(a.O&131072));a.oi=b&&!c?Xe:Pd;od(a.fa,!1,b,c);od(a.Ca,!1,b,c);od(a.W,!1,b,c);od(a.ua,!1,b,c);80386<=a.ba&&(od(a.ob,!1,b,c),od(a.rb,!1,b,c));Te(a)} +l.save=function(a){var b=new Ye(this);b.set(0,[this.F,this.G,this.H,this.K,B(this),this.L,this.J,this.I]);var c=D(this),d=this.fa.save(),e=this.Ca.save(),f=this.W.save(),g=this.ua.save(),h;null!=this.Gb?(h=[this.pa,this.Gb,this.Pc,this.Tb,this.Qc,this.lc.save(),this.ka.save(),this.Wb],80386<=this.ba&&(h.push(this.Ai),h.push(this.rd),h.push(this.ed),h.push(this.zb),h.push(this.tf))):h=null;c=[c,d,e,f,g,h,Hd(this)];80386<=this.ba&&(c.push(this.ob.save()),c.push(this.rb.save()));b.set(1,c);b.set(2,[this.Ba.ag, +this.Db.ag,this.M,this.ca,this.Ka,this.C,this.D]);b.set(3,[0,this.dd,this.R.Cd,a]);b.set(4,rc(this.na,!!(this.pa&-2147483648)));return b.data()}; +l.restore=function(a){var b=a[0];this.F=b[0];this.G=b[1];this.H=b[2];this.K=b[3];var c=b[4];this.L=b[5];this.J=b[6];this.I=b[7];b=a[1];this.fa.restore(b[1]);this.Ca.restore(b[2]);this.W.restore(b[3]);this.ua.restore(b[4]);var d=b[5];d&&d.length&&(this.pa=d[0],this.Gb=d[1],this.Pc=d[2],this.Tb=d[3],this.Qc=d[4],this.lc.restore(d[5]),this.ka.restore(d[6]),this.Wb=d[7],80386<=this.ba&&(this.Ai=d[8],this.rd=d[9],this.ed=d[10],this.zb=d[11],this.tf=d[12]),Ad(this));Id(this,b[6]);var d=!1,e;a:{e=this.na; +var f=a[4],g;for(g=0;g>>0)+(a.fa.Ua>>>0)+1;a.Fa=a.fa.pb;Te(a)}function Jd(a,b,c,d){var e=a.fa;e.$e=b;e.D=d;b=e.load(c);return-1!==b?(af(a,b+(a.fa.$e&a.fa.N)),a.fa.oe):null} +function bf(a,b){b=(a.ea>>>0)+b;b>a.fg&&(8088>=a.ba||a.fa.Ua==a.fa.ra?b=a.fa.wa+(b-a.fg&a.N):v.call(a,13,0));return b|0}function cf(a){a.ea=a.Vc}function B(a){return a.kc&~a.W.ra|a.ya-a.W.wa}function A(a,b){a.kc=b;a.ya=a.W.wa+(b&a.W.ra)|0}function df(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&ef(a),g&2&&ff(a),g&4&&gf(a),g&8&&hf(a),g&16&&jf(a),g&32&&kf(a))}f?(a.td=d,a.sd=b):(a.td=b,a.sd=d);a.Ee=c;a.$d=d;a.resultType=e} +function H(a,b,c,d,e){a.resultType=c|26;a.$d=b;d?lf(a):mf(a);e?nf(a):of(a);return b}function pf(a,b,c,d){c&d?lf(a):mf(a);(b^c)&d?nf(a):of(a)}function qf(a){return ef(a)?1:0}function ef(a){a.resultType&1&&(a.O&=-2,(a.td^(a.td^a.Ee)&(a.Ee^a.sd))&a.resultType&-2147450752&&(a.O|=1),a.resultType&=-2);return a.O&1}function ff(a){a.resultType&2&&(a.O&=-5,38505>>((a.$d^a.$d>>4)&15)&1&&(a.O|=4),a.resultType&=-3);return a.O&4} +function gf(a){a.resultType&4&&(a.O&=-17,(a.sd^a.td^a.Ee)&16&&(a.O|=16),a.resultType&=-5);return a.O&16}function hf(a){a.resultType&8&&(a.O&=-65,a.$d&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.O|=64),a.resultType&=-9);return a.O&64}function jf(a){a.resultType&16&&(a.O&=-129,a.$d&a.resultType&-2147450752&&(a.O|=128),a.resultType&=-17);return a.O&128} +function kf(a){a.resultType&32&&(a.O&=-2049,(a.td^a.sd)&(a.Ee^a.sd)&a.resultType&-2147450752&&(a.O|=2048),a.resultType&=-33);return a.O&2048}function mf(a){a.resultType&=-2;a.O&=-2}function rf(a){a.resultType&=-5;a.O&=-17}function sf(a){a.resultType&=-9;a.O&=-65}function of(a){a.resultType&=-33;a.O&=-2049}function lf(a){a.resultType&=-2;a.O|=1}function tf(a){a.resultType&=-5;a.O|=16}function uf(a){a.resultType&=-9;a.O|=64}function nf(a){a.resultType&=-33;a.O|=2048} +function Hd(a){return a.O&-2262|ef(a)|ff(a)|gf(a)|hf(a)|jf(a)|kf(a)}function vf(a,b){b|=a.pa&1|65520;a.pa=a.pa&-65536|b&65535;a.pa&1&&Ad(a,!0)}function Id(a,b,c){a.pa&1||(b&=~a.Wh);void 0===c&&(c=a.Fa);c?b=b&-12289|a.O&12288:a.Wb=(b&12288)>>12;c>a.Wb&&(b=b&-513|a.O&512);a.resultType=128;a.O=a.O&~(a.od|2261)|b&(a.od|2261)|a.Xh;a.O&256&&(a.Ka|=2,a.M|=4)} +function wf(a,b,c){var d=0;if(a.pa&1&&(a.Fa>a.Wb||a.O&131072)&&a.ka.$h)for(var e=a.ka.$h+(b>>>3),d=(1<>>=8,e++;return d?(v.call(a,13,0),!1):!0} +l.yb=function(a,b,c){switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.ja[b]=c;this.ti++;a=!0;break;default:a=Rc.prototype.yb.call(this,a,b,c)}return a}; +function xf(a,b,c,d){var e=(d?a.Oc:a.X)[(b&a.Dc)>>>a.Bb];e&&e.type==Ec&&(e=Nc(a,b,!1,!0));if(e){var f=b&a.Ab;if(!c||1==c)return e.Ed(f,b);if(2==c)return f>>this.Bb].nc(a&this.Ab,a)}; +l.ga=function(a){var b=a&this.Ab,c=(a&this.Dc)>>>this.Bb;this.A-=this.B.Sf;if(b>>this.Bb;if(b>>this.Bb].oc(a&this.Ab,b&255,a)}; +l.Xa=function(a,b){var c=a&this.Ab,d=(a&this.Dc)>>>this.Bb;this.A-=this.B.Sf;c>8&255,a+1))};l.Qa=function(a,b){var c=a&this.Ab,d=(a&this.Dc)>>>this.Bb;this.A-=this.B.Sf;if(c>>=8}};function yf(a,b,c){a.Za=b;a.cb=c&a.ra;a.C=b.Mb(a.cb,1);return a.M&1?0:a.Hb(a.C)} +function I(a,b){return yf(a,a.Ba,b)}function J(a,b){return yf(a,a.Db,b)}function zf(a,b,c){a.Za=b;a.cb=c&a.ra;a.C=b.Mb(a.cb,a.T);return a.M&1?0:a.jb(a.C)}function K(a,b){a.Za=a.Ba;a.cb=b&a.ra;a.C=a.Za.Mb(a.cb,2);return a.M&1?0:a.ga(a.C)}function L(a,b){a.Za=a.Db;a.cb=b&a.ra;a.C=a.Za.Mb(a.cb,2);return a.M&1?0:a.ga(a.C)}function M(a,b){a.Za=a.Ba;a.cb=b&a.ra;a.C=a.Za.Mb(a.cb,4);return a.M&1?0:a.da(a.C)}function N(a,b){a.Za=a.Db;a.cb=b&a.ra;a.C=a.Za.Mb(a.cb,4);return a.M&1?0:a.da(a.C)} +function Af(a,b){a.M&2||a.Fc(a.Za.Nb(a.cb,1),b)}function Bf(a,b){a.M&2||a.Xa(a.Za.Nb(a.cb,2),b)}function Cf(a,b){a.M&2||a.Qa(a.Za.Nb(a.cb,4),b)}function Cd(a,b,c){return a.jb(b.Mb(c,a.T))}l.la=function(){var a=bf(this,1),b=this.Hb(this.ea);this.ea=a;return b};function Df(a){var b=bf(a,2),c=a.ga(a.ea);a.ea=b;return c}function O(a){var b=bf(a,a.Jc),c=a.yi(a.ea);a.ea=b;return c}l.za=function(){var a=bf(this,this.T),b=this.jb(this.ea);this.ea=a;return b}; +l.P=function(){var a=bf(this,1),b=this.Hb(this.ea)<<24>>24;this.ea=a;return b};function x(a){var b=a.jb(a.ya);a.ya=a.ya+a.T|0;var c=a.gg-a.ya|0;0>c&&0<=(a.gg^a.ya)&&(8088>=a.ba||!a.W.zd&&a.W.Ua==a.W.ra||a.W.zd&&!a.W.Ua?A(a,a.ya-a.W.wa&a.W.ra):-1>c&&v.call(a,12,0));return b} +function Dd(a,b,c,d){c=a.ya-c|0;0>(c-a.De|0)&&0<=(a.De^c)&&(8088>=a.ba||!a.W.zd&&a.W.Ua==a.W.ra||a.W.zd&&!a.W.Ua?(A(a,c-a.W.wa&a.W.ra),c=a.ya):v.call(a,12,0));switch(d){case 1:a.Fc(c,b);break;case 2:a.Xa(c,b);break;case 4:a.Qa(c,b)}a.ya=c}function C(a,b){var c=a.ya-a.T|0;0>(c-a.De|0)&&0<=(a.De^c)&&(8088>=a.ba||!a.W.zd&&a.W.Ua==a.W.ra||a.W.zd&&!a.W.Ua?(A(a,c-a.W.wa&a.W.ra),c=a.ya):v.call(a,12,0));a.kb(c,b);a.ya=c} +function P(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.ba)2this.ba?0:1;for(var b=0;2>b;b++){switch(a){case 0:if(this.Ka&1&&this.O&512){var c=Ef(this.V);if(-1<=c&&(this.Ka&=-2,0<=c)){this.Ka&=-5;Ff.call(this,c);break a}}break;case 1:if(this.Ka&2){this.Ka&=-3;80386<= +this.ba&&(this.zb[6]|=16384);Ff.call(this,1);break a}}a=1-a}}if(this.Ka&4){this.M=this.A=0;break}}this.M=0;this.qa[this.la()].call(this)}while(0>11;Jf(this);Kf(this,a[b++]);for(c=0;c=Lf&&Mf(a,Nf))}function Jf(a){a.Y&=-129;a.Y&~a.F&63&&(a.Y|=128);if(a.Y&128&&!(a.F&128))return a=a.V,a.ba>=Lf?Of(a,Nf):a.ca&Pf||Ff.call(a.S,2),!0;a=a.V;a.ba>=Lf&&Mf(a,Nf);return!1}function Qf(a,b){80387<=a.ba||(b&=-65);a.Y|=b;return Jf(a)} +function Rf(a,b){return isFinite(b)?!0:!Qf(a,Infinity===b?8:16)}function Uf(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,Rf(a,d)||(d=null));return d}function Vf(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,Rf(a,d)||(d=null));return d}function Wf(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,Rf(a,d)||(d=null));return d}function Xf(a,b,c){var d=null;null==b||null==c||!c&&Qf(a,2)||(d=b/c,Rf(a,d)||(d=null));return d} +function Yf(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:b||(d=16384));a.Y=a.Y&-18177|d;return!0}return!1}function Zf(a,b,c){if(null==b)return null;var d=a.F&3072;d?d=1024==d||3072==d&&0=c){if(Qf(a,1))return null;d=-c}else if(d<-c){if(Qf(a,1))return null;d=-c}a.G[0]=d|0;2147483648d&&(a.G[1]=-1))}return d} +function $f(a,b){var c=3;a.C&1<=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function ag(a){var b=a.B+0&7;return a.C&1<>20&2047;var e=2147483648|(d&1048575)<<11|c>>>21;2047==b?b=32767:b?b+=15360:e&=2147483647;a.D[0]=c<<11;a.D[1]=e;a.D[2]=d>>16&32768|b;d=a.D}return d}function dg(a){return a.S.ga(a.S.C)<<16>>16} +function eg(a){return a.S.da(a.S.C)}function fg(a){a.ia[0]=a.S.da(a.S.C);return a.X[0]}function gg(a){a.G[0]=a.S.da(a.S.C);a.G[1]=a.S.da(a.S.C+4);return a.K[0]}function hg(a){a.D[0]=a.S.da(a.S.C);a.D[1]=a.S.da(a.S.C+4);a.D[2]=a.S.ga(a.S.C+8);return a.D}l.th=function(){this.S.Qa(this.S.C,this.G[0])};l.Wj=function(){this.S.Qa(this.S.C,this.G[0]);this.S.Qa(this.S.C+4,this.G[1])};function ig(a){a.S.Qa(a.S.C,a.D[0]);a.S.Qa(a.S.C+4,a.D[1]);a.S.Xa(a.S.C+8,a.D[2])} +function jg(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767;b=b[0]>>>11|c<<21;c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,b=c=0));a.G[0]=b;a.G[1]=c|(d|e)<<20;return a.K[0]}function kg(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function lg(a,b){for(var c=0,d=0;b--;)c|=a%10<>11;Jf(a);Kf(a,d.jb(b+=d.T));!(d.pa&1)||d.O&131072?(a.I=d.jb(b+=d.T),c=d.jb(b+=d.T),a.O=c&2047,a.I|=(c&-4096)<<4,a.L=-1,a.J=d.jb(b+=d.T),a.J|=(d.jb(b+=d.T)&-4096)<<4,a.M=-1):(a.I=d.jb(b+=d.T),c=d.jb(b+=d.T),a.L=c&65535,a.O=c>>16&2047,a.J=d.jb(b+=d.T),a.M=d.jb(b+=d.T)&65535);return b+d.T} +function pg(a,b){var c=a.S;c.kb(b,a.F);c.kb(b+=c.T,a.Y|a.B<<11);c.kb(b+=c.T,If(a));if(!(c.pa&1)||c.O&131072){var d=(a.L<<4)+a.I;c.kb(b+=c.T,d);c.kb(b+=c.T,d>>4&-4096|a.O);d=(a.M<<4)+a.J;c.kb(b+=c.T,d);c.kb(b+=c.T,d>>4&-4096)}else c.kb(b+=c.T,a.I),c.kb(b+=c.T,a.L|a.O<<16),c.kb(b+=c.T,a.J),c.kb(b+=c.T,a.M);return b+c.T}function qg(){this.Y&=-32896;Jf(this)}function rg(){Yf(this,Q(this,0),Q(this,this.A))}function sg(){Yf(this,Q(this,0),Q(this,this.A))&&mg(this)}function tg(){sg.call(this)} +function ug(){R(this,0,Xf(this,Q(this,0),fg(this)))}function vg(){this.C&=~(1<>20&2047)-1023),this.G[1]=(this.G[1]|1072693248)&-1073741825,ng(this,this.K[0]))},102:function(){this.B=this.B-1&7;this.Y&=-513},103:function(){this.B=this.B+1&7;this.Y&=-513},112:function(){R(this, +0,Q(this,0)%Q(this,1))},113:function(){R(this,1,Q(this,1)*Math.log(Q(this,0)+1)/Math.LN2)&&mg(this)},114:function(){var a=Q(this,0),b=null;if(0<=a||!Qf(this,1))b=Math.sqrt(a),Rf(this,b)||(b=null);R(this,0,b)},116:function(){R(this,0,Zf(this,Q(this,0),Og))},117:function(){var a=Q(this,0),b=Q(this,1);null!=a&&null!=b&&R(this,0,a*Math.pow(2,0>>0);ng(this,a)},6:function(){var a= +Zf(this,mg(this));null!=a&&(this.D[0]=lg(a,8),this.D[1]=lg(a/1E8,8),this.D[2]=lg(a/1E16,2),0>a&&(this.D[2]|=32768),ig(this))},7:function(){null!=Zf(this,Q(this,0),Og)&&(this.Wj(),mg(this))},48:function(){vg.call(this);mg(this)},49:Ig,50:Dg,51:Dg,52:Gg}},Qg=[qg,wg,xg,yg,zg,Ag,Eg,Bg,Fg,Gg];Ra(function(){for(var a=hb(document,"pcx86","fpu"),b=0;b>16,c=c<<16>>16,d=d<<16>>16);this.A-=this.B.Ji;(bd)&&v.call(this,5);this.M|=2;return a}function Zg(a,b){var c=0;if(b){sf(this);for(var d=1;d&this.N;){if(b&d){a=c;break}d<<=1;c++}}else uf(this);this.A-=11+3*c;return a}function $g(a,b){var c=0;if(b){sf(this);for(var d=2==this.T?15:31,e=1<>>=1;c++;d--}}else uf(this);this.A-=11+3*c;return a} +function ah(a,b){a&1<<(b&(2==this.T?15:31))?lf(this):mf(this);this.A-=-1===this.C?3:6;this.M|=2;return a}function bh(a,b){b=1<<(b&(2==this.T?15:31));a&b?lf(this):mf(this);this.A-=-1===this.C?6:8;return a^b}function ch(a,b){b=1<<(b&(2==this.T?15:31));a&b?lf(this):mf(this);this.A-=-1===this.C?6:8;return a&~b}function dh(a,b){b=1<<(b&(2==this.T?15:31));a&b?lf(this):mf(this);this.A-=-1===this.C?6:8;return a|b} +function eh(a,b){if(-1===this.C)return ah.call(this,a,b);var c=this.T<<3;if(b>=c||b<-c)a=zf(this,this.Za,this.cb+(b>>(2==this.T?4:5))*this.T);b=1<<(b&(2==this.T?15:31));a&b?lf(this):mf(this);this.A-=6;this.M|=2;return a}function fh(a,b){if(-1===this.C)return bh.call(this,a,b);var c=this.T<<3;if(b>=c||b<-c)a=zf(this,this.Za,this.cb+(b>>(2==this.T?4:5))*this.T);b=1<<(b&(2==this.T?15:31));a&b?lf(this):mf(this);this.A-=8;return a^b} +function gh(a,b){if(-1===this.C)return ch.call(this,a,b);var c=this.T<<3;if(b>=c||b<-c)a=zf(this,this.Za,this.cb+(b>>(2==this.T?4:5))*this.T);b=1<<(b&(2==this.T?15:31));a&b?lf(this):mf(this);this.A-=8;return a&~b}function hh(a,b){if(-1===this.C)return dh.call(this,a,b);var c=this.T<<3;if(b>=c||b<-c)a=zf(this,this.Za,this.cb+(b>>(2==this.T?4:5))*this.T);b=1<<(b&(2==this.T?15:31));a&b?lf(this):mf(this);this.A-=8;return a|b} +function ih(a,b){df(this,a,b,a-b|0,191,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.Hg:this.B.xb;this.M|=2;return a}function jh(a,b){df(this,a,b,a-b|0,this.sb|63,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.Hg:this.B.xb;this.M|=2;return a} +function kh(a){if(this.qd){var b=this.qd,c=this.si,d=this.aa,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=Pg[c][f]){if(0>Qg.indexOf(e)){var f=b.S,g=f.Vc;8087==b.ba&&(f.ca&16&&g++,f.ca&32&&g++);b.L=f.fa.ha;b.I=g-f.fa.wa;-1!==f.C&&(b.M=f.Za.ha,b.J=f.C-f.Za.wa);b.O=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.C?2:8;return a}function lh(a){if(80186>this.ba)return S.call(this,a);v.call(this,13,0);return a}function ge(a){v.call(this,6);return a} +function S(a){je.call(this);return a}function mh(a,b){a=nh.call(this,this.P(),b);80386>this.ba&&(this.A-=12);return a}function oh(a,b){a=this.za();a=2==this.T?nh.call(this,a,b):ph.call(this,a,b);80386>this.ba&&(this.A-=12);return a}function qh(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);rh.call(this,a,b);c&&(this.Aa=~this.Aa+1|0,this.Sa=~this.Sa+(this.Aa?0:1)|0)} +function nh(a,b){a=(a<<16>>16)*(b<<16>>16)|0;32767a?(lf(this),nf(this)):(mf(this),of(this));this.A-=-1===this.C?9:12;return a&65535}function ph(a,b){qh.call(this,a,b);this.Sa!=this.Aa>>31?(lf(this),nf(this)):(mf(this),of(this));this.A-=-1===this.C?9:12;return this.Aa}function sh(a,b){this.A-=14+(-1===this.C?0:2);sf(this);-1!==this.eb.load(b)&&this.eb.hc>=this.Fa&&this.eb.hc>=(b&3)&&(uf(this),a=this.eb.lb&-256,2=this.Fa)&&this.eb.hc>=(b&3))return uf(this),this.eb.Ua;sf(this);return a}function zh(a,b){if(-1===this.C)return je.call(this),a;yd(this,this.ga(this.C+this.T));this.A-=this.B.ue;return b} +function Ah(a,b){this.A-=-1===this.D?-1===this.C?this.B.sj:this.B.rj:this.B.pj;return b}function Bh(a,b){switch(this.aa>>3&7){case 4:this.ta=this.F;break;case 5:this.ta=this.H;break;case 6:this.ta=this.K;break;case 7:this.ta=this.G}return b}function Ch(a,b){return b} +function Dh(a,b){a=this.aa>>3&7;switch(a){case 0:this.ta=this.F;break;case 2:this.ta=this.K;break;case 3:this.ta=this.G;break;default:if(80286==this.ba||80386==this.ba&&4!=a&&5!=a)v.call(this,6);else switch(a){case 1:this.ta=this.H;break;case 4:this.ta=B(this);break;case 5:this.ta=this.L;break;case 6:this.ta=this.J;break;case 7:this.ta=this.I}}return Ah.call(this,0,b)} +function Eh(a,b){switch(this.aa>>3&7){case 0:b=this.ua.ha;break;case 1:b=this.fa.ha;break;case 2:b=this.W.ha;break;case 3:b=this.Ca.ha;break;case 4:if(80386<=this.ba){b=this.ob.ha;break}v.call(this,6);b=a;break;case 5:if(80386<=this.ba){b=this.rb.ha;break}default:v.call(this,6),b=a}-1!==this.D&&Bd(this,2);return Ah.call(this,0,b)} +function rh(a,b){if(a&-65536||b&-65536){var c=b&65535;b>>>=16;var d=a&65535;a>>>=16;var e=c*d,d=(e>>>16)+b*d,f=d>>>16,d=(d&65535)+c*a;this.Aa=d<<16|e&65535;this.Sa=f+((d>>>16)+b*a)|0}else this.Aa=a*b|0,this.Sa=0}function Fh(a,b){this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.mc;return H(this,a|b,128)}function Gh(a,b){this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.mc;return H(this,a|b,this.sb)&this.N} +function Hh(a,b){var c=a-b-qf(this)|0;df(this,a,b,c,191,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.mc;return c&255}function Ih(a,b){var c=a-b-qf(this)|0;df(this,a,b,c,this.sb|63,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.mc;return c&this.N}function Jh(){return kf(this)?1:0}function Kh(){return ef(this)?1:0}function Lh(){return ef(this)?0:1}function Mh(){return hf(this)?1:0}function Nh(){return hf(this)?0:1}function Oh(){return ef(this)||hf(this)?1:0} +function Ph(){return ef(this)||hf(this)?0:1}function Qh(){return jf(this)?1:0}function Rh(){return jf(this)?0:1}function Sh(){return ff(this)?1:0}function Th(){return ff(this)?0:1}function Uh(){return!jf(this)!=!kf(this)?1:0}function Vh(){return!jf(this)!=!kf(this)?0:1}function Wh(){return hf(this)||!jf(this)!=!kf(this)?1:0}function Xh(){return hf(this)||!jf(this)!=!kf(this)?0:1}function Yh(a,b){return bi.call(this,a,b,this.la())}function ci(a,b){return di.call(this,a,b,this.la())} +function ei(a,b){return bi.call(this,a,b,this.H&31)}function fi(a,b){return di.call(this,a,b,this.H&31)}function gi(a,b){return hi.call(this,a,b,this.la())}function ii(a,b){return ji.call(this,a,b,this.la())}function ki(a,b){return hi.call(this,a,b,this.H&31)}function li(a,b){return ji.call(this,a,b,this.H&31)}function mi(a,b){var c=a-b|0;df(this,a,b,c,191,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.mc;return c&255} +function ni(a,b){var c=a-b|0;df(this,a,b,c,this.sb|63,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.mc;return c&this.N}function oi(a,b){H(this,a&b,128);this.A-=-1===this.D?-1===this.C?this.B.jh:this.B.Xe:this.B.Xe;this.M|=2;return a}function pi(a,b){H(this,a&b,this.sb);this.A-=-1===this.D?-1===this.C?this.B.jh:this.B.Xe:this.B.Xe;this.M|=2;return a}function qi(a,b){var c=this.F&this.N,d=(1<<(this.H&31))-1;return a&~(d<>(this.F&this.N)&(1<<(this.H&31))-1&this.N}function si(a,b){if(-1===this.C){switch(this.aa&7){case 0:this.F=this.F&-256|a;break;case 1:this.H=this.H&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.F=this.F&-65281|a<<8;break;case 5:this.H=this.H&-65281|a<<8;break;case 6:this.K=this.K&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}this.A-=this.B.lh}else this.D=this.C,Af(this,a),this.A-=this.B.kh;return b} +function ti(a,b){if(-1===this.C){switch(this.aa&7){case 0:this.F=this.F&~this.N|a;break;case 1:this.H=this.H&~this.N|a;break;case 2:this.K=this.K&~this.N|a;break;case 3:this.G=this.G&~this.N|a;break;case 4:A(this,B(this)&~this.N|a);break;case 5:this.L=this.G&~this.N|a;break;case 6:this.J=this.J&~this.N|a;break;case 7:this.I=this.I&~this.N|a}this.A-=this.B.lh}else this.D=this.C,this.M&2||this.kb(this.Za.Nb(this.cb,this.T),a),this.A-=this.B.kh;return b} +function ui(a,b){a^=b;H(this,a,128);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.mc;return a}function vi(a,b){this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.mc;return H(this,a^b,this.sb)&this.N}function wi(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function xi(a){var b=a-1|0;df(this,a,1,b,this.sb|62,!0);this.A-=2;return a&~this.N|b&this.N} +function yi(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1,f=this.Ql;f[0]=c>>>0;f[1]=0;c=this.Vl;c[0]=a>>>0;for(c[1]=b>>>0;0>>=0,a[1]++),e+=e;do 0<=wi(c,f)&&(a=c,b=f,a[0]-=b[0],a[1]-=b[1],0>a[0]&&(a[0]>>>=0,a[1]--),d+=e),a=f,a[0]>>>=1,a[1]&1&&(a[0]=(a[0]|2147483648)>>>0),a[1]>>>=1,e/=2;while(1<=e);this.Aa=d;this.Sa=c[0];return!0}function zi(a){var b=a+1|0;df(this,a,1,b,this.sb|62);this.A-=2;return a&~this.N|b&this.N} +function Kd(a){this.ed=a;this.pa&-2147483648&&Zb(this)}function Ai(a){this.M|=1;this.cc.call(this,a);this.A-=-1===this.C?4:5}function bi(a,b,c){if(c){16>>16-c)&65535;H(this,a,32768,d&32768)}return a}function di(a,b,c){if(c){var d=a<>>32-c;H(this,a,-2147483648,d&-2147483648)}return a}function hi(a,b,c){if(c){16>>c-1;a=(d>>>1|b<<16-c)&65535;H(this,a,32768,d&1)}return a} +function ji(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;H(this,a,-2147483648,d&1)}return a}function Bi(){this.A-=-1===this.C?2:this.B.Fj;return 1}function Ci(){var a=this.H&255;this.A-=(-1===this.C?this.B.bh:this.B.ah)+(a<this.rc?(-1!=this.Uc&&(this.Uc!==this.fa.ha&&(this.fa.pb=this.Uc&3,$e(this,this.Uc)),this.Uc=-1),this.Vc!==this.ea&&af(this,this.Vc),-1!=this.tc&&(this.tc!==this.W.ha&&yd(this,this.tc),this.tc=-1),-1!==this.ma&&(this.ma!==this.ya&&A(this,this.kc&~this.W.ra|this.ma-this.W.wa),this.ma=-1)):8!=this.rc?(b=0,a=8):(b=0,a=-1,te(this),e=d=!1)):af(this,this.Vc);var f=a,g=b,h=xf(this,this.ea);204!=h||this.Qc||(d=!1);this.O&131072&&(6==f&& +99==h||13==f&&205==h)&&(d=!1);983040<=this.ea&&1048575>=this.ea&&(d=!1);if(d){var k=this.Z.vb,f="Fault "+pa(f,2,!0)+(null!=g?" ("+pa(g,4,!0)+")":"")+" on opcode "+pa(h,2,!0);d&&k&&(f+=" (blocked)");this.va(f);Xc(this)}if(d&&e)throw-1;if(e)throw this.rc=a,Hi.call(this,a,b,c),this.Vc=this.ea,this.M=1==a?this.M|8192:this.M|4096,a;}function ve(a,b,c){this.rd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Fa&&(a|=4);v.call(this,14,a)} +function Ji(a){var b=a.lb&7680;a.ha&65528&&(6144==b||7168==b||7168>b&&a.hc>8&255;break;case 197:c=this.H>>8&255;break;case 198:c=this.K>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}var d=this.aa>>3&7;switch(d){case 0:b=this.F&255;break;case 1:b=this.H&255;break;case 2:b=this.K&255;break;case 3:b=this.G&255;break;case 4:b=this.F>>8&255;break;case 5:b=this.H>>8&255;break;case 6:b=this.K>>8&255;break;case 7:b=this.G>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.F=this.F&-256|a;break;case 1:this.H= +this.H&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.F=this.F&-65281|a<<8;break;case 5:this.H=this.H&-65281|a<<8;break;case 6:this.K=this.K&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}} +function Be(a){var b,c,d=(this.aa=this.la())&199;switch(d){case 0:b=I(this,this.G+this.J);this.D=this.C;break;case 1:b=I(this,this.G+this.I);this.D=this.C;break;case 2:b=J(this,this.L+this.J);this.D=this.C;break;case 3:b=J(this,this.L+this.I);this.D=this.C;break;case 4:b=I(this,this.J);this.D=this.C;break;case 5:b=I(this,this.I);this.D=this.C;break;case 6:b=I(this,O(this));this.D=this.C;break;case 7:b=I(this,this.G);this.D=this.C;break;case 64:b=I(this,this.G+this.J+this.P());this.D=this.C;break; +case 65:b=I(this,this.G+this.I+this.P());this.D=this.C;break;case 66:b=J(this,this.L+this.J+this.P());this.D=this.C;break;case 67:b=J(this,this.L+this.I+this.P());this.D=this.C;break;case 68:b=I(this,this.J+this.P());this.D=this.C;break;case 69:b=I(this,this.I+this.P());this.D=this.C;break;case 70:b=J(this,this.L+this.P());this.D=this.C;break;case 71:b=I(this,this.G+this.P());this.D=this.C;break;case 128:b=I(this,this.G+this.J+O(this));this.D=this.C;break;case 129:b=I(this,this.G+this.I+O(this)); +this.D=this.C;break;case 130:b=J(this,this.L+this.J+O(this));this.D=this.C;break;case 131:b=J(this,this.L+this.I+O(this));this.D=this.C;break;case 132:b=I(this,this.J+O(this));this.D=this.C;break;case 133:b=I(this,this.I+O(this));this.D=this.C;break;case 134:b=J(this,this.L+O(this));this.D=this.C;break;case 135:b=I(this,this.G+O(this));this.D=this.C;break;case 192:b=this.F&255;break;case 193:b=this.H&255;break;case 194:b=this.K&255;break;case 195:b=this.G&255;break;case 196:b=this.F>>8&255;break; +case 197:b=this.H>>8&255;break;case 198:b=this.K>>8&255;break;case 199:b=this.G>>8&255;break;default:b=0}switch(this.aa>>3&7){case 0:c=this.F&255;break;case 1:c=this.H&255;break;case 2:c=this.K&255;break;case 3:c=this.G&255;break;case 4:c=this.F>>8&255;break;case 5:c=this.H>>8&255;break;case 6:c=this.K>>8&255;break;case 7:c=this.G>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Af(this,a);this.A-=this.B.Bc;break;case 1:case 2:Af(this,a);this.A-=this.B.Cc;break;case 4:case 5:case 7:Af(this, +a);this.A-=this.B.ec;break;case 6:Af(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Af(this,a);this.A-=this.B.Ib;break;case 65:case 66:case 129:case 130:Af(this,a);this.A-=this.B.Jb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Af(this,a);this.A-=this.B.Na;break;case 192:this.F=this.F&-256|a;break;case 193:this.H=this.H&-256|a;break;case 194:this.K=this.K&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.F=this.F&-65281|a<<8;break;case 197:this.H= +this.H&-65281|a<<8;break;case 198:this.K=this.K&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8}} +function Ce(a,b){var c,d=(this.aa=this.la())&199;switch(d){case 0:c=I(this,this.G+this.J);this.D=this.C;break;case 1:c=I(this,this.G+this.I);this.D=this.C;break;case 2:c=J(this,this.L+this.J);this.D=this.C;break;case 3:c=J(this,this.L+this.I);this.D=this.C;break;case 4:c=I(this,this.J);this.D=this.C;break;case 5:c=I(this,this.I);this.D=this.C;break;case 6:c=I(this,O(this));this.D=this.C;break;case 7:c=I(this,this.G);this.D=this.C;break;case 64:c=I(this,this.G+this.J+this.P());this.D=this.C;break; +case 65:c=I(this,this.G+this.I+this.P());this.D=this.C;break;case 66:c=J(this,this.L+this.J+this.P());this.D=this.C;break;case 67:c=J(this,this.L+this.I+this.P());this.D=this.C;break;case 68:c=I(this,this.J+this.P());this.D=this.C;break;case 69:c=I(this,this.I+this.P());this.D=this.C;break;case 70:c=J(this,this.L+this.P());this.D=this.C;break;case 71:c=I(this,this.G+this.P());this.D=this.C;break;case 128:c=I(this,this.G+this.J+O(this));this.D=this.C;break;case 129:c=I(this,this.G+this.I+O(this)); +this.D=this.C;break;case 130:c=J(this,this.L+this.J+O(this));this.D=this.C;break;case 131:c=J(this,this.L+this.I+O(this));this.D=this.C;break;case 132:c=I(this,this.J+O(this));this.D=this.C;break;case 133:c=I(this,this.I+O(this));this.D=this.C;break;case 134:c=J(this,this.L+O(this));this.D=this.C;break;case 135:c=I(this,this.G+O(this));this.D=this.C;break;case 192:c=this.F&255;break;case 193:c=this.H&255;break;case 194:c=this.K&255;break;case 195:c=this.G&255;break;case 196:c=this.F>>8&255;break; +case 197:c=this.H>>8&255;break;case 198:c=this.K>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}a=a[this.aa>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Af(this,a);this.A-=this.B.Bc;break;case 1:case 2:Af(this,a);this.A-=this.B.Cc;break;case 4:case 5:case 7:Af(this,a);this.A-=this.B.ec;break;case 6:Af(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Af(this,a);this.A-=this.B.Ib;break;case 65:case 66:case 129:case 130:Af(this,a);this.A-=this.B.Jb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Af(this, +a);this.A-=this.B.Na;break;case 192:this.F=this.F&-256|a;break;case 193:this.H=this.H&-256|a;break;case 194:this.K=this.K&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.F=this.F&-65281|a<<8;break;case 197:this.H=this.H&-65281|a<<8;break;case 198:this.K=this.K&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8}} +function De(a){var b,c;switch((this.aa=this.la())&199){case 0:c=K(this,this.G+this.J);this.A-=this.B.Bc;break;case 1:c=K(this,this.G+this.I);this.A-=this.B.Cc;break;case 2:c=L(this,this.L+this.J);this.A-=this.B.Cc;break;case 3:c=L(this,this.L+this.I);this.A-=this.B.Bc;break;case 4:c=K(this,this.J);this.A-=this.B.ec;break;case 5:c=K(this,this.I);this.A-=this.B.ec;break;case 6:c=K(this,O(this));this.A-=this.B.$c;break;case 7:c=K(this,this.G);this.A-=this.B.ec;break;case 64:c=K(this,this.G+this.J+this.P()); +this.A-=this.B.Ib;break;case 65:c=K(this,this.G+this.I+this.P());this.A-=this.B.Jb;break;case 66:c=L(this,this.L+this.J+this.P());this.A-=this.B.Jb;break;case 67:c=L(this,this.L+this.I+this.P());this.A-=this.B.Ib;break;case 68:c=K(this,this.J+this.P());this.A-=this.B.Na;break;case 69:c=K(this,this.I+this.P());this.A-=this.B.Na;break;case 70:c=L(this,this.L+this.P());this.A-=this.B.Na;break;case 71:c=K(this,this.G+this.P());this.A-=this.B.Na;break;case 128:c=K(this,this.G+this.J+O(this));this.A-=this.B.Ib; +break;case 129:c=K(this,this.G+this.I+O(this));this.A-=this.B.Jb;break;case 130:c=L(this,this.L+this.J+O(this));this.A-=this.B.Jb;break;case 131:c=L(this,this.L+this.I+O(this));this.A-=this.B.Ib;break;case 132:c=K(this,this.J+O(this));this.A-=this.B.Na;break;case 133:c=K(this,this.I+O(this));this.A-=this.B.Na;break;case 134:c=L(this,this.L+O(this));this.A-=this.B.Na;break;case 135:c=K(this,this.G+O(this));this.A-=this.B.Na;break;case 192:c=this.F&65535;break;case 193:c=this.H&65535;break;case 194:c= +this.K&65535;break;case 195:c=this.G&65535;break;case 196:c=B(this)&65535;break;case 197:c=this.L&65535;break;case 198:c=this.J&65535;break;case 199:c=this.I&65535;break;default:c=0}var d=this.aa>>3&7;switch(d){case 0:b=this.F&65535;break;case 1:b=this.H&65535;break;case 2:b=this.K&65535;break;case 3:b=this.G&65535;break;case 4:b=B(this)&65535;break;case 5:b=this.L&65535;break;case 6:b=this.J&65535;break;case 7:b=this.I&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.F=this.F&-65536| +a;break;case 1:this.H=this.H&-65536|a;break;case 2:this.K=this.K&-65536|a;break;case 3:this.G=this.G&-65536|a;break;case 4:A(this,B(this)&-65536|a);break;case 5:this.L=this.L&-65536|a;break;case 6:this.J=this.J&-65536|a;break;case 7:this.I=this.I&-65536|a}} +function Ee(a){var b,c,d=(this.aa=this.la())&199;switch(d){case 0:b=K(this,this.G+this.J);this.D=this.C;break;case 1:b=K(this,this.G+this.I);this.D=this.C;break;case 2:b=L(this,this.L+this.J);this.D=this.C;break;case 3:b=L(this,this.L+this.I);this.D=this.C;break;case 4:b=K(this,this.J);this.D=this.C;break;case 5:b=K(this,this.I);this.D=this.C;break;case 6:b=K(this,O(this));this.D=this.C;break;case 7:b=K(this,this.G);this.D=this.C;break;case 64:b=K(this,this.G+this.J+this.P());this.D=this.C;break; +case 65:b=K(this,this.G+this.I+this.P());this.D=this.C;break;case 66:b=L(this,this.L+this.J+this.P());this.D=this.C;break;case 67:b=L(this,this.L+this.I+this.P());this.D=this.C;break;case 68:b=K(this,this.J+this.P());this.D=this.C;break;case 69:b=K(this,this.I+this.P());this.D=this.C;break;case 70:b=L(this,this.L+this.P());this.D=this.C;break;case 71:b=K(this,this.G+this.P());this.D=this.C;break;case 128:b=K(this,this.G+this.J+O(this));this.D=this.C;break;case 129:b=K(this,this.G+this.I+O(this)); +this.D=this.C;break;case 130:b=L(this,this.L+this.J+O(this));this.D=this.C;break;case 131:b=L(this,this.L+this.I+O(this));this.D=this.C;break;case 132:b=K(this,this.J+O(this));this.D=this.C;break;case 133:b=K(this,this.I+O(this));this.D=this.C;break;case 134:b=L(this,this.L+O(this));this.D=this.C;break;case 135:b=K(this,this.G+O(this));this.D=this.C;break;case 192:b=this.F&65535;break;case 193:b=this.H&65535;break;case 194:b=this.K&65535;break;case 195:b=this.G&65535;break;case 196:b=B(this)&65535; +break;case 197:b=this.L&65535;break;case 198:b=this.J&65535;break;case 199:b=this.I&65535;break;default:b=0}switch(this.aa>>3&7){case 0:c=this.F&65535;break;case 1:c=this.H&65535;break;case 2:c=this.K&65535;break;case 3:c=this.G&65535;break;case 4:c=B(this)&65535;break;case 5:c=this.L&65535;break;case 6:c=this.J&65535;break;case 7:c=this.I&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Bf(this,a);this.A-=this.B.Bc;break;case 1:case 2:Bf(this,a);this.A-=this.B.Cc;break;case 4:case 5:case 7:Bf(this, +a);this.A-=this.B.ec;break;case 6:Bf(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Bf(this,a);this.A-=this.B.Ib;break;case 65:case 66:case 129:case 130:Bf(this,a);this.A-=this.B.Jb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Bf(this,a);this.A-=this.B.Na;break;case 192:this.F=this.F&-65536|a;break;case 193:this.H=this.H&-65536|a;break;case 194:this.K=this.K&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:A(this,B(this)&-65536|a);break; +case 197:this.L=this.L&-65536|a;break;case 198:this.J=this.J&-65536|a;break;case 199:this.I=this.I&-65536|a}} +function Fe(a,b){var c,d=(this.aa=this.la())&199;switch(d){case 0:c=K(this,this.G+this.J);this.D=this.C;break;case 1:c=K(this,this.G+this.I);this.D=this.C;break;case 2:c=L(this,this.L+this.J);this.D=this.C;break;case 3:c=L(this,this.L+this.I);this.D=this.C;break;case 4:c=K(this,this.J);this.D=this.C;break;case 5:c=K(this,this.I);this.D=this.C;break;case 6:c=K(this,O(this));this.D=this.C;break;case 7:c=K(this,this.G);this.D=this.C;break;case 64:c=K(this,this.G+this.J+this.P());this.D=this.C;break; +case 65:c=K(this,this.G+this.I+this.P());this.D=this.C;break;case 66:c=L(this,this.L+this.J+this.P());this.D=this.C;break;case 67:c=L(this,this.L+this.I+this.P());this.D=this.C;break;case 68:c=K(this,this.J+this.P());this.D=this.C;break;case 69:c=K(this,this.I+this.P());this.D=this.C;break;case 70:c=L(this,this.L+this.P());this.D=this.C;break;case 71:c=K(this,this.G+this.P());this.D=this.C;break;case 128:c=K(this,this.G+this.J+O(this));this.D=this.C;break;case 129:c=K(this,this.G+this.I+O(this)); +this.D=this.C;break;case 130:c=L(this,this.L+this.J+O(this));this.D=this.C;break;case 131:c=L(this,this.L+this.I+O(this));this.D=this.C;break;case 132:c=K(this,this.J+O(this));this.D=this.C;break;case 133:c=K(this,this.I+O(this));this.D=this.C;break;case 134:c=L(this,this.L+O(this));this.D=this.C;break;case 135:c=K(this,this.G+O(this));this.D=this.C;break;case 192:c=this.F&65535;break;case 193:c=this.H&65535;break;case 194:c=this.K&65535;break;case 195:c=this.G&65535;break;case 196:c=B(this)&65535; +break;case 197:c=this.L&65535;break;case 198:c=this.J&65535;break;case 199:c=this.I&65535;break;default:c=0}a=a[this.aa>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Bf(this,a);this.A-=this.B.Bc;break;case 1:case 2:Bf(this,a);this.A-=this.B.Cc;break;case 4:case 5:case 7:Bf(this,a);this.A-=this.B.ec;break;case 6:Bf(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Bf(this,a);this.A-=this.B.Ib;break;case 65:case 66:case 129:case 130:Bf(this,a);this.A-=this.B.Jb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Bf(this, +a);this.A-=this.B.Na;break;case 192:this.F=this.F&-65536|a;break;case 193:this.H=this.H&-65536|a;break;case 194:this.K=this.K&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:A(this,B(this)&-65536|a);break;case 197:this.L=this.L&-65536|a;break;case 198:this.J=this.J&-65536|a;break;case 199:this.I=this.I&-65536|a}} +function Ge(a){var b,c;switch((this.aa=this.la())&199){case 0:c=M(this,this.G+this.J);this.A-=this.B.Bc;break;case 1:c=M(this,this.G+this.I);this.A-=this.B.Cc;break;case 2:c=N(this,this.L+this.J);this.A-=this.B.Cc;break;case 3:c=N(this,this.L+this.I);this.A-=this.B.Bc;break;case 4:c=M(this,this.J);this.A-=this.B.ec;break;case 5:c=M(this,this.I);this.A-=this.B.ec;break;case 6:c=M(this,O(this));this.A-=this.B.$c;break;case 7:c=M(this,this.G);this.A-=this.B.ec;break;case 64:c=M(this,this.G+this.J+this.P()); +this.A-=this.B.Ib;break;case 65:c=M(this,this.G+this.I+this.P());this.A-=this.B.Jb;break;case 66:c=N(this,this.L+this.J+this.P());this.A-=this.B.Jb;break;case 67:c=N(this,this.L+this.I+this.P());this.A-=this.B.Ib;break;case 68:c=M(this,this.J+this.P());this.A-=this.B.Na;break;case 69:c=M(this,this.I+this.P());this.A-=this.B.Na;break;case 70:c=N(this,this.L+this.P());this.A-=this.B.Na;break;case 71:c=M(this,this.G+this.P());this.A-=this.B.Na;break;case 128:c=M(this,this.G+this.J+O(this));this.A-=this.B.Ib; +break;case 129:c=M(this,this.G+this.I+O(this));this.A-=this.B.Jb;break;case 130:c=N(this,this.L+this.J+O(this));this.A-=this.B.Jb;break;case 131:c=N(this,this.L+this.I+O(this));this.A-=this.B.Ib;break;case 132:c=M(this,this.J+O(this));this.A-=this.B.Na;break;case 133:c=M(this,this.I+O(this));this.A-=this.B.Na;break;case 134:c=N(this,this.L+O(this));this.A-=this.B.Na;break;case 135:c=M(this,this.G+O(this));this.A-=this.B.Na;break;case 192:c=this.F;break;case 193:c=this.H;break;case 194:c=this.K;break; +case 195:c=this.G;break;case 196:c=B(this);break;case 197:c=this.L;break;case 198:c=this.J;break;case 199:c=this.I;break;default:c=0}var d=this.aa>>3&7;switch(d){case 0:b=this.F;break;case 1:b=this.H;break;case 2:b=this.K;break;case 3:b=this.G;break;case 4:b=B(this);break;case 5:b=this.L;break;case 6:b=this.J;break;case 7:b=this.I;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.F=a;break;case 1:this.H=a;break;case 2:this.K=a;break;case 3:this.G=a;break;case 4:A(this,a);break;case 5:this.L= +a;break;case 6:this.J=a;break;case 7:this.I=a}} +function He(a){var b,c,d=(this.aa=this.la())&199;switch(d){case 0:b=M(this,this.G+this.J);this.D=this.C;break;case 1:b=M(this,this.G+this.I);this.D=this.C;break;case 2:b=N(this,this.L+this.J);this.D=this.C;break;case 3:b=N(this,this.L+this.I);this.D=this.C;break;case 4:b=M(this,this.J);this.D=this.C;break;case 5:b=M(this,this.I);this.D=this.C;break;case 6:b=M(this,O(this));this.D=this.C;break;case 7:b=M(this,this.G);this.D=this.C;break;case 64:b=M(this,this.G+this.J+this.P());this.D=this.C;break; +case 65:b=M(this,this.G+this.I+this.P());this.D=this.C;break;case 66:b=N(this,this.L+this.J+this.P());this.D=this.C;break;case 67:b=N(this,this.L+this.I+this.P());this.D=this.C;break;case 68:b=M(this,this.J+this.P());this.D=this.C;break;case 69:b=M(this,this.I+this.P());this.D=this.C;break;case 70:b=N(this,this.L+this.P());this.D=this.C;break;case 71:b=M(this,this.G+this.P());this.D=this.C;break;case 128:b=M(this,this.G+this.J+O(this));this.D=this.C;break;case 129:b=M(this,this.G+this.I+O(this)); +this.D=this.C;break;case 130:b=N(this,this.L+this.J+O(this));this.D=this.C;break;case 131:b=N(this,this.L+this.I+O(this));this.D=this.C;break;case 132:b=M(this,this.J+O(this));this.D=this.C;break;case 133:b=M(this,this.I+O(this));this.D=this.C;break;case 134:b=N(this,this.L+O(this));this.D=this.C;break;case 135:b=M(this,this.G+O(this));this.D=this.C;break;case 192:b=this.F;break;case 193:b=this.H;break;case 194:b=this.K;break;case 195:b=this.G;break;case 196:b=B(this);break;case 197:b=this.L;break; +case 198:b=this.J;break;case 199:b=this.I;break;default:b=0}switch(this.aa>>3&7){case 0:c=this.F;break;case 1:c=this.H;break;case 2:c=this.K;break;case 3:c=this.G;break;case 4:c=B(this);break;case 5:c=this.L;break;case 6:c=this.J;break;case 7:c=this.I;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Cf(this,a);this.A-=this.B.Bc;break;case 1:case 2:Cf(this,a);this.A-=this.B.Cc;break;case 4:case 5:case 7:Cf(this,a);this.A-=this.B.ec;break;case 6:Cf(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Cf(this, +a);this.A-=this.B.Ib;break;case 65:case 66:case 129:case 130:Cf(this,a);this.A-=this.B.Jb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Cf(this,a);this.A-=this.B.Na;break;case 192:this.F=a;break;case 193:this.H=a;break;case 194:this.K=a;break;case 195:this.G=a;break;case 196:A(this,a);break;case 197:this.L=a;break;case 198:this.J=a;break;case 199:this.I=a}} +function Ie(a,b){var c,d=(this.aa=this.la())&199;switch(d){case 0:c=M(this,this.G+this.J);this.D=this.C;break;case 1:c=M(this,this.G+this.I);this.D=this.C;break;case 2:c=N(this,this.L+this.J);this.D=this.C;break;case 3:c=N(this,this.L+this.I);this.D=this.C;break;case 4:c=M(this,this.J);this.D=this.C;break;case 5:c=M(this,this.I);this.D=this.C;break;case 6:c=M(this,O(this));this.D=this.C;break;case 7:c=M(this,this.G);this.D=this.C;break;case 64:c=M(this,this.G+this.J+this.P());this.D=this.C;break; +case 65:c=M(this,this.G+this.I+this.P());this.D=this.C;break;case 66:c=N(this,this.L+this.J+this.P());this.D=this.C;break;case 67:c=N(this,this.L+this.I+this.P());this.D=this.C;break;case 68:c=M(this,this.J+this.P());this.D=this.C;break;case 69:c=M(this,this.I+this.P());this.D=this.C;break;case 70:c=N(this,this.L+this.P());this.D=this.C;break;case 71:c=M(this,this.G+this.P());this.D=this.C;break;case 128:c=M(this,this.G+this.J+O(this));this.D=this.C;break;case 129:c=M(this,this.G+this.I+O(this)); +this.D=this.C;break;case 130:c=N(this,this.L+this.J+O(this));this.D=this.C;break;case 131:c=N(this,this.L+this.I+O(this));this.D=this.C;break;case 132:c=M(this,this.J+O(this));this.D=this.C;break;case 133:c=M(this,this.I+O(this));this.D=this.C;break;case 134:c=N(this,this.L+O(this));this.D=this.C;break;case 135:c=M(this,this.G+O(this));this.D=this.C;break;case 192:c=this.F;break;case 193:c=this.H;break;case 194:c=this.K;break;case 195:c=this.G;break;case 196:c=B(this);break;case 197:c=this.L;break; +case 198:c=this.J;break;case 199:c=this.I}a=a[this.aa>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Cf(this,a);this.A-=this.B.Bc;break;case 1:case 2:Cf(this,a);this.A-=this.B.Cc;break;case 4:case 5:case 7:Cf(this,a);this.A-=this.B.ec;break;case 6:Cf(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Cf(this,a);this.A-=this.B.Ib;break;case 65:case 66:case 129:case 130:Cf(this,a);this.A-=this.B.Jb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Cf(this, +a);this.A-=this.B.Na;break;case 192:this.F=a;break;case 193:this.H=a;break;case 194:this.K=a;break;case 195:this.G=a;break;case 196:A(this,a);break;case 197:this.L=a;break;case 198:this.J=a;break;case 199:this.I=a}} +function Je(a){var b,c;switch((this.aa=this.la())&199){case 0:c=I(this,this.F);break;case 1:c=I(this,this.H);break;case 2:c=I(this,this.K);break;case 3:c=I(this,this.G);break;case 4:c=I(this,Li.call(this,0));break;case 5:c=I(this,O(this));break;case 6:c=I(this,this.J);break;case 7:c=I(this,this.I);break;case 64:c=I(this,this.F+this.P());break;case 65:c=I(this,this.H+this.P());break;case 66:c=I(this,this.K+this.P());break;case 67:c=I(this,this.G+this.P());break;case 68:c=I(this,Li.call(this,1)+this.P()); +break;case 69:c=J(this,this.L+this.P());break;case 70:c=I(this,this.J+this.P());break;case 71:c=I(this,this.I+this.P());break;case 128:c=I(this,this.F+O(this));break;case 129:c=I(this,this.H+O(this));break;case 130:c=I(this,this.K+O(this));break;case 131:c=I(this,this.G+O(this));break;case 132:c=I(this,Li.call(this,2)+O(this));break;case 133:c=J(this,this.L+O(this));break;case 134:c=I(this,this.J+O(this));break;case 135:c=I(this,this.I+O(this));break;case 192:c=this.F&255;break;case 193:c=this.H& +255;break;case 194:c=this.K&255;break;case 195:c=this.G&255;break;case 196:c=this.F>>8&255;break;case 197:c=this.H>>8&255;break;case 198:c=this.K>>8&255;break;case 199:c=this.G>>8&255;break;default:c=0}var d=this.aa>>3&7;switch(d){case 0:b=this.F&255;break;case 1:b=this.H&255;break;case 2:b=this.K&255;break;case 3:b=this.G&255;break;case 4:b=this.F>>8&255;break;case 5:b=this.H>>8&255;break;case 6:b=this.K>>8&255;break;case 7:b=this.G>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.F= +this.F&-256|a;break;case 1:this.H=this.H&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.F=this.F&-65281|a<<8;break;case 5:this.H=this.H&-65281|a<<8;break;case 6:this.K=this.K&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}} +function Ke(a){var b,c,d=(this.aa=this.la())&199;switch(d){case 0:b=I(this,this.F);this.D=this.C;break;case 1:b=I(this,this.H);this.D=this.C;break;case 2:b=I(this,this.K);this.D=this.C;break;case 3:b=I(this,this.G);this.D=this.C;break;case 4:b=I(this,Li.call(this,0));this.D=this.C;break;case 5:b=I(this,O(this));this.D=this.C;break;case 6:b=I(this,this.J);this.D=this.C;break;case 7:b=I(this,this.I);this.D=this.C;break;case 64:b=I(this,this.F+this.P());this.D=this.C;break;case 65:b=I(this,this.H+this.P()); +this.D=this.C;break;case 66:b=I(this,this.K+this.P());this.D=this.C;break;case 67:b=I(this,this.G+this.P());this.D=this.C;break;case 68:b=I(this,Li.call(this,1)+this.P());this.D=this.C;break;case 69:b=J(this,this.L+this.P());this.D=this.C;break;case 70:b=I(this,this.J+this.P());this.D=this.C;break;case 71:b=I(this,this.I+this.P());this.D=this.C;break;case 128:b=I(this,this.F+O(this));this.D=this.C;break;case 129:b=I(this,this.H+O(this));this.D=this.C;break;case 130:b=I(this,this.K+O(this));this.D= +this.C;break;case 131:b=I(this,this.G+O(this));this.D=this.C;break;case 132:b=I(this,Li.call(this,2)+O(this));this.D=this.C;break;case 133:b=J(this,this.L+O(this));this.D=this.C;break;case 134:b=I(this,this.J+O(this));this.D=this.C;break;case 135:b=I(this,this.I+O(this));this.D=this.C;break;case 192:b=this.F&255;break;case 193:b=this.H&255;break;case 194:b=this.K&255;break;case 195:b=this.G&255;break;case 196:b=this.F>>8&255;break;case 197:b=this.H>>8&255;break;case 198:b=this.K>>8&255;break;case 199:b= +this.G>>8&255;break;default:b=0}switch(this.aa>>3&7){case 0:c=this.F&255;break;case 1:c=this.H&255;break;case 2:c=this.K&255;break;case 3:c=this.G&255;break;case 4:c=this.F>>8&255;break;case 5:c=this.H>>8&255;break;case 6:c=this.K>>8&255;break;case 7:c=this.G>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.F=this.F&-256|a;break;case 193:this.H=this.H&-256|a;break;case 194:this.K=this.K&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.F=this.F&-65281|a<<8;break;case 197:this.H= +this.H&-65281|a<<8;break;case 198:this.K=this.K&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8;break;default:Af(this,a)}} +function Le(a,b){var c,d=(this.aa=this.la())&199;switch(d){case 0:c=I(this,this.F);this.D=this.C;break;case 1:c=I(this,this.H);this.D=this.C;break;case 2:c=I(this,this.K);this.D=this.C;break;case 3:c=I(this,this.G);this.D=this.C;break;case 4:c=I(this,Li.call(this,0));this.D=this.C;break;case 5:c=I(this,O(this));this.D=this.C;break;case 6:c=I(this,this.J);this.D=this.C;break;case 7:c=I(this,this.I);this.D=this.C;break;case 64:c=I(this,this.F+this.P());this.D=this.C;break;case 65:c=I(this,this.H+this.P()); +this.D=this.C;break;case 66:c=I(this,this.K+this.P());this.D=this.C;break;case 67:c=I(this,this.G+this.P());this.D=this.C;break;case 68:c=I(this,Li.call(this,1)+this.P());this.D=this.C;break;case 69:c=J(this,this.L+this.P());this.D=this.C;break;case 70:c=I(this,this.J+this.P());this.D=this.C;break;case 71:c=I(this,this.I+this.P());this.D=this.C;break;case 128:c=I(this,this.F+O(this));this.D=this.C;break;case 129:c=I(this,this.H+O(this));this.D=this.C;break;case 130:c=I(this,this.K+O(this));this.D= +this.C;break;case 131:c=I(this,this.G+O(this));this.D=this.C;break;case 132:c=I(this,Li.call(this,2)+O(this));this.D=this.C;break;case 133:c=J(this,this.L+O(this));this.D=this.C;break;case 134:c=I(this,this.J+O(this));this.D=this.C;break;case 135:c=I(this,this.I+O(this));this.D=this.C;break;case 192:c=this.F&255;break;case 193:c=this.H&255;break;case 194:c=this.K&255;break;case 195:c=this.G&255;break;case 196:c=this.F>>8&255;break;case 197:c=this.H>>8&255;break;case 198:c=this.K>>8&255;break;case 199:c= +this.G>>8&255;break;default:c=0}a=a[this.aa>>3&7].call(this,c,b.call(this));switch(d){case 192:this.F=this.F&-256|a;break;case 193:this.H=this.H&-256|a;break;case 194:this.K=this.K&-256|a;break;case 195:this.G=this.G&-256|a;break;case 196:this.F=this.F&-65281|a<<8;break;case 197:this.H=this.H&-65281|a<<8;break;case 198:this.K=this.K&-65281|a<<8;break;case 199:this.G=this.G&-65281|a<<8;break;default:Af(this,a)}} +function Me(a){var b,c;switch((this.aa=this.la())&199){case 0:c=K(this,this.F);break;case 1:c=K(this,this.H);break;case 2:c=K(this,this.K);break;case 3:c=K(this,this.G);break;case 4:c=K(this,Li.call(this,0));break;case 5:c=K(this,O(this));break;case 6:c=K(this,this.J);break;case 7:c=K(this,this.I);break;case 64:c=K(this,this.F+this.P());break;case 65:c=K(this,this.H+this.P());break;case 66:c=K(this,this.K+this.P());break;case 67:c=K(this,this.G+this.P());break;case 68:c=K(this,Li.call(this,1)+this.P()); +break;case 69:c=L(this,this.L+this.P());break;case 70:c=K(this,this.J+this.P());break;case 71:c=K(this,this.I+this.P());break;case 128:c=K(this,this.F+O(this));break;case 129:c=K(this,this.H+O(this));break;case 130:c=K(this,this.K+O(this));break;case 131:c=K(this,this.G+O(this));break;case 132:c=K(this,Li.call(this,2)+O(this));break;case 133:c=L(this,this.L+O(this));break;case 134:c=K(this,this.J+O(this));break;case 135:c=K(this,this.I+O(this));break;case 192:c=this.F&65535;break;case 193:c=this.H& +65535;break;case 194:c=this.K&65535;break;case 195:c=this.G&65535;break;case 196:c=B(this)&65535;break;case 197:c=this.L&65535;break;case 198:c=this.J&65535;break;case 199:c=this.I&65535;break;default:c=0}var d=this.aa>>3&7;switch(d){case 0:b=this.F&65535;break;case 1:b=this.H&65535;break;case 2:b=this.K&65535;break;case 3:b=this.G&65535;break;case 4:b=B(this)&65535;break;case 5:b=this.L&65535;break;case 6:b=this.J&65535;break;case 7:b=this.I&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.F= +this.F&-65536|a;break;case 1:this.H=this.H&-65536|a;break;case 2:this.K=this.K&-65536|a;break;case 3:this.G=this.G&-65536|a;break;case 4:A(this,B(this)&-65536|a);break;case 5:this.L=this.L&-65536|a;break;case 6:this.J=this.J&-65536|a;break;case 7:this.I=this.I&-65536|a}} +function Ne(a){var b,c,d=(this.aa=this.la())&199;switch(d){case 0:b=K(this,this.F);this.D=this.C;break;case 1:b=K(this,this.H);this.D=this.C;break;case 2:b=K(this,this.K);this.D=this.C;break;case 3:b=K(this,this.G);this.D=this.C;break;case 4:b=K(this,Li.call(this,0));this.D=this.C;break;case 5:b=K(this,O(this));this.D=this.C;break;case 6:b=K(this,this.J);this.D=this.C;break;case 7:b=K(this,this.I);this.D=this.C;break;case 64:b=K(this,this.F+this.P());this.D=this.C;break;case 65:b=K(this,this.H+this.P()); +this.D=this.C;break;case 66:b=K(this,this.K+this.P());this.D=this.C;break;case 67:b=K(this,this.G+this.P());this.D=this.C;break;case 68:b=K(this,Li.call(this,1)+this.P());this.D=this.C;break;case 69:b=L(this,this.L+this.P());this.D=this.C;break;case 70:b=K(this,this.J+this.P());this.D=this.C;break;case 71:b=K(this,this.I+this.P());this.D=this.C;break;case 128:b=K(this,this.F+O(this));this.D=this.C;break;case 129:b=K(this,this.H+O(this));this.D=this.C;break;case 130:b=K(this,this.K+O(this));this.D= +this.C;break;case 131:b=K(this,this.G+O(this));this.D=this.C;break;case 132:b=K(this,Li.call(this,2)+O(this));this.D=this.C;break;case 133:b=L(this,this.L+O(this));this.D=this.C;break;case 134:b=K(this,this.J+O(this));this.D=this.C;break;case 135:b=K(this,this.I+O(this));this.D=this.C;break;case 192:b=this.F&65535;break;case 193:b=this.H&65535;break;case 194:b=this.K&65535;break;case 195:b=this.G&65535;break;case 196:b=B(this)&65535;break;case 197:b=this.L&65535;break;case 198:b=this.J&65535;break; +case 199:b=this.I&65535;break;default:b=0}switch(this.aa>>3&7){case 0:c=this.F&65535;break;case 1:c=this.H&65535;break;case 2:c=this.K&65535;break;case 3:c=this.G&65535;break;case 4:c=B(this)&65535;break;case 5:c=this.L&65535;break;case 6:c=this.J&65535;break;case 7:c=this.I&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.F=this.F&-65536|a;break;case 193:this.H=this.H&-65536|a;break;case 194:this.K=this.K&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:A(this,B(this)& +-65536|a);break;case 197:this.L=this.L&-65536|a;break;case 198:this.J=this.J&-65536|a;break;case 199:this.I=this.I&-65536|a;break;default:Bf(this,a)}} +function Oe(a,b){var c,d=(this.aa=this.la())&199;switch(d){case 0:c=K(this,this.F);this.D=this.C;break;case 1:c=K(this,this.H);this.D=this.C;break;case 2:c=K(this,this.K);this.D=this.C;break;case 3:c=K(this,this.G);this.D=this.C;break;case 4:c=K(this,Li.call(this,0));this.D=this.C;break;case 5:c=K(this,O(this));this.D=this.C;break;case 6:c=K(this,this.J);this.D=this.C;break;case 7:c=K(this,this.I);this.D=this.C;break;case 64:c=K(this,this.F+this.P());this.D=this.C;break;case 65:c=K(this,this.H+this.P()); +this.D=this.C;break;case 66:c=K(this,this.K+this.P());this.D=this.C;break;case 67:c=K(this,this.G+this.P());this.D=this.C;break;case 68:c=K(this,Li.call(this,1)+this.P());this.D=this.C;break;case 69:c=L(this,this.L+this.P());this.D=this.C;break;case 70:c=K(this,this.J+this.P());this.D=this.C;break;case 71:c=K(this,this.I+this.P());this.D=this.C;break;case 128:c=K(this,this.F+O(this));this.D=this.C;break;case 129:c=K(this,this.H+O(this));this.D=this.C;break;case 130:c=K(this,this.K+O(this));this.D= +this.C;break;case 131:c=K(this,this.G+O(this));this.D=this.C;break;case 132:c=K(this,Li.call(this,2)+O(this));this.D=this.C;break;case 133:c=L(this,this.L+O(this));this.D=this.C;break;case 134:c=K(this,this.J+O(this));this.D=this.C;break;case 135:c=K(this,this.I+O(this));this.D=this.C;break;case 192:c=this.F&65535;break;case 193:c=this.H&65535;break;case 194:c=this.K&65535;break;case 195:c=this.G&65535;break;case 196:c=B(this)&65535;break;case 197:c=this.L&65535;break;case 198:c=this.J&65535;break; +case 199:c=this.I&65535;break;default:c=0}a=a[this.aa>>3&7].call(this,c,b.call(this));switch(d){case 192:this.F=this.F&-65536|a;break;case 193:this.H=this.H&-65536|a;break;case 194:this.K=this.K&-65536|a;break;case 195:this.G=this.G&-65536|a;break;case 196:A(this,B(this)&-65536|a);break;case 197:this.L=this.L&-65536|a;break;case 198:this.J=this.J&-65536|a;break;case 199:this.I=this.I&-65536|a;break;default:Bf(this,a)}} +function Pe(a){var b,c;switch((this.aa=this.la())&199){case 0:c=M(this,this.F);break;case 1:c=M(this,this.H);break;case 2:c=M(this,this.K);break;case 3:c=M(this,this.G);break;case 4:c=M(this,Li.call(this,0));break;case 5:c=M(this,O(this));break;case 6:c=M(this,this.J);break;case 7:c=M(this,this.I);break;case 64:c=M(this,this.F+this.P());break;case 65:c=M(this,this.H+this.P());break;case 66:c=M(this,this.K+this.P());break;case 67:c=M(this,this.G+this.P());break;case 68:c=M(this,Li.call(this,1)+this.P()); +break;case 69:c=N(this,this.L+this.P());break;case 70:c=M(this,this.J+this.P());break;case 71:c=M(this,this.I+this.P());break;case 128:c=M(this,this.F+O(this));break;case 129:c=M(this,this.H+O(this));break;case 130:c=M(this,this.K+O(this));break;case 131:c=M(this,this.G+O(this));break;case 132:c=M(this,Li.call(this,2)+O(this));break;case 133:c=N(this,this.L+O(this));break;case 134:c=M(this,this.J+O(this));break;case 135:c=M(this,this.I+O(this));break;case 192:c=this.F;break;case 193:c=this.H;break; +case 194:c=this.K;break;case 195:c=this.G;break;case 196:c=B(this);break;case 197:c=this.L;break;case 198:c=this.J;break;case 199:c=this.I;break;default:c=0}var d=this.aa>>3&7;switch(d){case 0:b=this.F;break;case 1:b=this.H;break;case 2:b=this.K;break;case 3:b=this.G;break;case 4:b=B(this);break;case 5:b=this.L;break;case 6:b=this.J;break;case 7:b=this.I;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.F=a;break;case 1:this.H=a;break;case 2:this.K=a;break;case 3:this.G=a;break;case 4:A(this, +a);break;case 5:this.L=a;break;case 6:this.J=a;break;case 7:this.I=a}} +function Qe(a){var b,c,d=(this.aa=this.la())&199;switch(d){case 0:b=M(this,this.F);this.D=this.C;break;case 1:b=M(this,this.H);this.D=this.C;break;case 2:b=M(this,this.K);this.D=this.C;break;case 3:b=M(this,this.G);this.D=this.C;break;case 4:b=M(this,Li.call(this,0));this.D=this.C;break;case 5:b=M(this,O(this));this.D=this.C;break;case 6:b=M(this,this.J);this.D=this.C;break;case 7:b=M(this,this.I);this.D=this.C;break;case 64:b=M(this,this.F+this.P());this.D=this.C;break;case 65:b=M(this,this.H+this.P()); +this.D=this.C;break;case 66:b=M(this,this.K+this.P());this.D=this.C;break;case 67:b=M(this,this.G+this.P());this.D=this.C;break;case 68:b=M(this,Li.call(this,1)+this.P());this.D=this.C;break;case 69:b=N(this,this.L+this.P());this.D=this.C;break;case 70:b=M(this,this.J+this.P());this.D=this.C;break;case 71:b=M(this,this.I+this.P());this.D=this.C;break;case 128:b=M(this,this.F+O(this));this.D=this.C;break;case 129:b=M(this,this.H+O(this));this.D=this.C;break;case 130:b=M(this,this.K+O(this));this.D= +this.C;break;case 131:b=M(this,this.G+O(this));this.D=this.C;break;case 132:b=M(this,Li.call(this,2)+O(this));this.D=this.C;break;case 133:b=N(this,this.L+O(this));this.D=this.C;break;case 134:b=M(this,this.J+O(this));this.D=this.C;break;case 135:b=M(this,this.I+O(this));this.D=this.C;break;case 192:b=this.F;break;case 193:b=this.H;break;case 194:b=this.K;break;case 195:b=this.G;break;case 196:b=B(this);break;case 197:b=this.L;break;case 198:b=this.J;break;case 199:b=this.I;break;default:b=0}switch(this.aa>> +3&7){case 0:c=this.F;break;case 1:c=this.H;break;case 2:c=this.K;break;case 3:c=this.G;break;case 4:c=B(this);break;case 5:c=this.L;break;case 6:c=this.J;break;case 7:c=this.I;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.F=a;break;case 193:this.H=a;break;case 194:this.K=a;break;case 195:this.G=a;break;case 196:A(this,a);break;case 197:this.L=a;break;case 198:this.J=a;break;case 199:this.I=a;break;default:Cf(this,a)}} +function Re(a,b){var c,d=(this.aa=this.la())&199;switch(d){case 0:c=M(this,this.F);this.D=this.C;break;case 1:c=M(this,this.H);this.D=this.C;break;case 2:c=M(this,this.K);this.D=this.C;break;case 3:c=M(this,this.G);this.D=this.C;break;case 4:c=M(this,Li.call(this,0));this.D=this.C;break;case 5:c=M(this,O(this));this.D=this.C;break;case 6:c=M(this,this.J);this.D=this.C;break;case 7:c=M(this,this.I);this.D=this.C;break;case 64:c=M(this,this.F+this.P());this.D=this.C;break;case 65:c=M(this,this.H+this.P()); +this.D=this.C;break;case 66:c=M(this,this.K+this.P());this.D=this.C;break;case 67:c=M(this,this.G+this.P());this.D=this.C;break;case 68:c=M(this,Li.call(this,1)+this.P());this.D=this.C;break;case 69:c=N(this,this.L+this.P());this.D=this.C;break;case 70:c=M(this,this.J+this.P());this.D=this.C;break;case 71:c=M(this,this.I+this.P());this.D=this.C;break;case 128:c=M(this,this.F+O(this));this.D=this.C;break;case 129:c=M(this,this.H+O(this));this.D=this.C;break;case 130:c=M(this,this.K+O(this));this.D= +this.C;break;case 131:c=M(this,this.G+O(this));this.D=this.C;break;case 132:c=M(this,Li.call(this,2)+O(this));this.D=this.C;break;case 133:c=N(this,this.L+O(this));this.D=this.C;break;case 134:c=M(this,this.J+O(this));this.D=this.C;break;case 135:c=M(this,this.I+O(this));this.D=this.C;break;case 192:c=this.F;break;case 193:c=this.H;break;case 194:c=this.K;break;case 195:c=this.G;break;case 196:c=B(this);break;case 197:c=this.L;break;case 198:c=this.J;break;case 199:c=this.I;break;default:c=0}a=a[this.aa>> +3&7].call(this,c,b.call(this));switch(d){case 192:this.F=a;break;case 193:this.H=a;break;case 194:this.K=a;break;case 195:this.G=a;break;case 196:A(this,a);break;case 197:this.L=a;break;case 198:this.J=a;break;case 199:this.I=a;break;default:Cf(this,a)}} +function Li(a){var b=this.la(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.F;break;case 1:d=this.H;break;case 2:d=this.K;break;case 3:d=this.G;break;case 4:d=0;break;case 5:d=this.L;break;case 6:d=this.J;break;case 7:d=this.I}switch(b&7){case 0:e=this.F;break;case 1:e=this.H;break;case 2:e=this.K;break;case 3:e=this.G;break;case 4:e=B(this);this.Ba=this.Db;break;case 5:a?(e=this.L,this.Ba=this.Db):e=O(this);break;case 6:e=this.J;break;case 7:e=this.I}return(d<>8&255;9<(c&15)||gf(this)?(c+=6,80286<=this.ba&&255>8&255;9<(c&15)||gf(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.F=this.F&-65536|d<<8|c;a?lf(this):mf(this);b?tf(this):rf(this);this.A-=this.B.Qd},function(){this.F=zi.call(this,this.F)},function(){this.H=zi.call(this,this.H)},function(){this.K=zi.call(this,this.K)},function(){this.G=zi.call(this,this.G)},function(){A(this, +zi.call(this,B(this)))},function(){this.L=zi.call(this,this.L)},function(){this.J=zi.call(this,this.J)},function(){this.I=zi.call(this,this.I)},function(){this.F=xi.call(this,this.F)},function(){this.H=xi.call(this,this.H)},function(){this.K=xi.call(this,this.K)},function(){this.G=xi.call(this,this.G)},function(){A(this,xi.call(this,B(this)))},function(){this.L=xi.call(this,this.L)},function(){this.J=xi.call(this,this.J)},function(){this.I=xi.call(this,this.I)},function(){C(this,this.F&this.N);this.A-= +this.B.sc},function(){C(this,this.H&this.N);this.A-=this.B.sc},function(){C(this,this.K&this.N);this.A-=this.B.sc},function(){C(this,this.G&this.N);this.A-=this.B.sc},function(){C(this,B(this)-2&65535);this.A-=this.B.sc},function(){C(this,this.L&this.N);this.A-=this.B.sc},function(){C(this,this.J&this.N);this.A-=this.B.sc},function(){C(this,this.I&this.N);this.A-=this.B.sc},function(){this.F=this.F&~this.N|x(this);this.A-=this.B.Yb},function(){this.H=this.H&~this.N|x(this);this.A-=this.B.Yb},function(){this.K= +this.K&~this.N|x(this);this.A-=this.B.Yb},function(){this.G=this.G&~this.N|x(this);this.A-=this.B.Yb},function(){A(this,B(this)&~this.N|x(this));this.A-=this.B.Yb},function(){this.L=this.L&~this.N|x(this);this.A-=this.B.Yb},function(){this.J=this.J&~this.N|x(this);this.A-=this.B.Yb},function(){this.I=this.I&~this.N|x(this);this.A-=this.B.Yb},Mi,Ni,Oi,Pi,Qi,Ri,Si,Ti,Ui,Vi,Wi,Xi,Yi,Zi,$i,aj,Mi,Ni,Oi,Pi,Qi,Ri,Si,Ti,Ui,Vi,Wi,Xi,Yi,Zi,$i,aj,bj,function(){this.bb.call(this,qj,this.za);this.A-=-1===this.D? +1:this.B.Rf},bj,function(){this.bb.call(this,qj,this.P);this.A-=-1===this.D?1:this.B.Rf},function(){this.cc.call(this,oi)},function(){this.xa.call(this,pi)},function(){this.Vb.call(this,si)},function(){this.ia.call(this,ti)},dj,ej,fj,gj,function(){this.M|=1;this.xa.call(this,Eh)},function(){this.M|=1;this.Ba=this.Db=this.hg;this.ia.call(this,uh)},function(){var a;this.ia.call(this,Dh);switch(this.aa>>3&7){case 0:a=this.F;this.F=this.ta;Fd(this,a);break;case 1:a=this.H;this.H=this.ta;$e(this,a);break; +case 2:a=this.K;this.K=this.ta;yd(this,a);break;case 3:a=this.G;this.G=this.ta;Ed(this,a);break;case 4:a=B(this);A(this,this.ta);80386<=this.ba?this.ob.load(a):Fd(this,a);break;case 5:a=this.L;this.L=this.ta;80386<=this.ba?this.rb.load(a):$e(this,a);break;case 6:a=this.J;this.J=this.ta;yd(this,a);break;case 7:a=this.I,this.I=this.ta,Ed(this,a)}},function(){this.M|=1;this.ma=this.ya;this.ta=x(this);this.bb.call(this,rj,Fi);this.ma=-1},function(){this.A-=3},function(){var a=this.F;this.F=this.F&~this.N| +this.H&this.N;this.H=this.H&~this.N|a&this.N;this.A-=3},function(){var a=this.F;this.F=this.F&~this.N|this.K&this.N;this.K=this.K&~this.N|a&this.N;this.A-=3},function(){var a=this.F;this.F=this.F&~this.N|this.G&this.N;this.G=this.G&~this.N|a&this.N;this.A-=3},function(){var a=this.F,b=B(this);this.F=this.F&~this.N|b&this.N;A(this,b&~this.N|a&this.N);this.A-=3},function(){var a=this.F;this.F=this.F&~this.N|this.L&this.N;this.L=this.L&~this.N|a&this.N;this.A-=3},function(){var a=this.F;this.F=this.F& +~this.N|this.J&this.N;this.J=this.J&~this.N|a&this.N;this.A-=3},function(){var a=this.F;this.F=this.F&~this.N|this.I&this.N;this.I=this.I&~this.N|a&this.N;this.A-=3},function(){this.F=2==this.T?this.F&-65536|this.F<<24>>24&65535:this.F<<16>>16;this.A-=2},function(){this.K=2==this.T?this.K&-65536|(this.F&32768?65535:0):this.F&-2147483648?-1:0;this.A-=this.B.Li},function(){Gi.call(this,this.za(),Df(this));this.A-=this.B.Oi},function(){this.A-=3},function(){var a=Hd(this);a&131072&&3>this.Wb?v.call(this, +13,0):(C(this,a&-196609),this.A-=this.B.sc)},function(){if(this.O&131072&&3>this.Wb)v.call(this,13,0);else{var a=x(this),a=a&65535|this.O&-65536;Id(this,a);this.A-=this.B.Yb}},function(){var a=this.F>>8&255;a&1?lf(this):mf(this);a&4?(this.resultType&=-3,this.O|=4):(this.resultType&=-3,this.O&=-5);a&16?tf(this):rf(this);a&64?uf(this):sf(this);a&128?(this.resultType&=-17,this.O|=128):(this.resultType&=-17,this.O&=-129);this.A-=this.B.Kb},function(){this.F=this.F&-65281|(Hd(this)&213)<<8;this.A-=this.B.Kb}, +function(){var a=this.F&-256,b;b=O(this);b=this.Hb(this.Ba.Mb(b,1));this.F=a|b;this.A-=this.B.Rg},function(){this.F=this.F&~this.N|Cd(this,this.Ba,O(this));this.A-=this.B.Rg},function(){var a=O(this),b=this.F;this.Fc(this.Ba.Nb(a,1),b);this.A-=this.B.Sg},function(){var a=O(this),b=this.F;this.kb(this.Ba.Nb(a,this.T),b);this.A-=this.B.Sg},function(){var a=1,b=0,c=this.ra,d=this.B.Tg;this.ca&192&&(a=this.H&c,b=1,d=this.B.Vg,this.ca&256||(this.A-=this.B.Ug));if(a--){var e=this.Hb(this.Ba.Mb(this.J&c, +1));this.Fc(this.ua.Nb(this.I&c,1),e);e=this.O&1024?-1:1;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I+e&c;this.A-=d;this.H=this.H&~c|this.H-b&c;a&&(cf(this),this.M|=256)}},function(){var a=1,b=0,c=this.ra,d=this.B.Tg;this.ca&192&&(a=this.H&c,b=1,d=this.B.Vg,this.ca&256||(this.A-=this.B.Ug));if(a--){var e=Cd(this,this.Ba,this.J&c);this.kb(this.ua.Nb(this.I&c,this.T),e);e=this.O&1024?-this.T:this.T;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I+e&c;this.A-=d;this.H=this.H&~c|this.H-b&c; +a&&(cf(this),this.M|=256)}},function(){var a=1,b=0,c=this.ra,d=this.B.Eg;this.ca&192&&(a=this.H&c,b=1,d=this.B.Gg,this.ca&256||(this.A-=this.B.Fg));if(a--){var e=yf(this,this.Ba,this.J),f=yf(this,this.ua,this.I);this.D=this.C;ih.call(this,e,f);e=this.O&1024?-1:1;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H-b&c;this.A-=d-this.B.xb;a&&hf(this)==(this.ca&64)&&(cf(this),this.M|=256)}},function(){var a=1,b=0,c=this.ra,d=this.B.Eg;this.ca&192&&(a=this.H&c,b=1,d=this.B.Gg, +this.ca&256||(this.A-=this.B.Fg));if(a--){var e=zf(this,this.Ba,this.J&c),f=zf(this,this.ua,this.I&c);this.D=this.C;jh.call(this,e,f);e=this.O&1024?-this.T:this.T;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H-b&c;this.A-=d-this.B.xb;a&&hf(this)==(this.ca&64)&&(cf(this),this.M|=256)}},function(){H(this,this.F&this.la(),128);this.A-=this.B.Qd},function(){H(this,this.F&this.za(),this.sb);this.A-=this.B.Qd},function(){var a=1,b=0,c=this.ra,d=this.B.eh;this.ca&192&&(a= +this.H&c,b=1,d=this.B.gh,this.ca&256||(this.A-=this.B.fh));if(a--){var e=this.F;this.Fc(this.ua.Nb(this.I&c,1),e);this.H=this.H&~c|this.H-b&c;80546<=this.pd&&80564>=this.pd&&!(this.ca&2048)!=(103!=this.Hb(this.ea))&&(c^=-65536);this.I=this.I&~c|this.I+(this.O&1024?-1:1)&c;this.A-=d;a&&(cf(this),this.M|=256)}},function(){var a=1,b=0,c=this.ra,d=this.B.eh;this.ca&192&&(a=this.H&c,b=1,d=this.B.gh,this.ca&256||(this.A-=this.B.fh));if(a--){var e=this.F;this.kb(this.ua.Nb(this.I&c,this.T),e);this.I=this.I& +~c|this.I+(this.O&1024?-this.T:this.T)&c;this.H=this.H&~c|this.H-b&c;this.A-=d;a&&(cf(this),this.M|=256)}},function(){var a=1,b=0,c=this.ra,d=this.B.Lg;this.ca&192&&(a=this.H&c,b=1,d=this.B.Ng,this.ca&256||(this.A-=this.B.Mg));if(a--){var e=this.Hb(this.Ba.Mb(this.J&c,1));this.F=this.F&-256|e;this.J=this.J&~c|this.J+(this.O&1024?-1:1)&c;this.H=this.H&~c|this.H-b&c;this.A-=d;a&&(cf(this),this.M|=256)}},function(){var a=1,b=0,c=this.ra,d=this.B.Lg;this.ca&192&&(a=this.H&c,b=1,d=this.B.Ng,this.ca&256|| +(this.A-=this.B.Mg));if(a--){var e=Cd(this,this.Ba,this.J&c);this.F=this.F&~this.N|e;this.J=this.J&~c|this.J+(this.O&1024?-this.T:this.T)&c;this.H=this.H&~c|this.H-b&c;this.A-=d;a&&(cf(this),this.M|=256)}},function(){var a=1,b=0,c=this.ra,d=this.B.Yg;this.ca&192&&(a=this.H&c,b=1,d=this.B.$g,this.ca&256||(this.A-=this.B.Zg));if(a--){var e=this.F&255,f=yf(this,this.ua,this.I);this.D=this.C;ih.call(this,e,f);this.I=this.I&~c|this.I+(this.O&1024?-1:1)&c;this.H=this.H&~c|this.H-b&c;this.A-=d-this.B.xb; +a&&hf(this)==(this.ca&64)&&(cf(this),this.M|=256)}},function(){var a=1,b=0,c=this.ra,d=this.B.Yg;this.ca&192&&(a=this.H&c,b=1,d=this.B.$g,this.ca&256||(this.A-=this.B.Zg));if(a--){var e=this.F&this.N,f=zf(this,this.ua,this.I&c);this.D=this.C;jh.call(this,e,f);this.I=this.I&~c|this.I+(this.O&1024?-this.T:this.T)&c;this.H=this.H&~c|this.H-b&c;this.A-=d-this.B.xb;a&&hf(this)==(this.ca&64)&&(cf(this),this.M|=256)}},function(){this.F=this.F&-256|this.la();this.A-=this.B.Kb},function(){this.H=this.H&-256| +this.la();this.A-=this.B.Kb},function(){this.K=this.K&-256|this.la();this.A-=this.B.Kb},function(){this.G=this.G&-256|this.la();this.A-=this.B.Kb},function(){this.F=this.F&-65281|this.la()<<8;this.A-=this.B.Kb},function(){this.H=this.H&-65281|this.la()<<8;this.A-=this.B.Kb},function(){this.K=this.K&-65281|this.la()<<8;this.A-=this.B.Kb},function(){this.G=this.G&-65281|this.la()<<8;this.A-=this.B.Kb},function(){this.F=this.F&~this.N|this.za();this.A-=this.B.Kb},function(){this.H=this.H&~this.N|this.za(); +this.A-=this.B.Kb},function(){this.K=this.K&~this.N|this.za();this.A-=this.B.Kb},function(){this.G=this.G&~this.N|this.za();this.A-=this.B.Kb},function(){A(this,B(this)&~this.N|this.za());this.A-=this.B.Kb},function(){this.L=this.L&~this.N|this.za();this.A-=this.B.Kb},function(){this.J=this.J&~this.N|this.za();this.A-=this.B.Kb},function(){this.I=this.I&~this.N|this.za();this.A-=this.B.Kb},kj,lj,kj,lj,function(){this.ia.call(this,vh)},function(){this.ia.call(this,th)},function(){this.M|=1;this.Sc.call(this, +sj,this.la)},function(){this.M|=1;this.bb.call(this,sj,this.za)},mj,nj,mj,nj,function(){if(this.O&131072&&3>this.Wb)v.call(this,13,0);else{var a=this.B.ej;this.rc=-1;Hi.call(this,3,null,a)}},function(){var a=this.la();if(this.O&131072&&3>this.Wb)v.call(this,13,0);else{var b;a:{b=this.qf[a];if(void 0!==b)for(var c=0;cthis.Wb)v.call(this,13,0);else{var a=this.B.fj; +this.rc=-1;Hi.call(this,4,null,a)}else this.A-=this.B.gj},function(){if(this.O&131072&&3>this.Wb)v.call(this,13,0);else{this.tc=this.W.ha;this.ma=this.ya;this.A-=this.B.cj;if(this.pa&1&&this.O&16384){var a=this.ga(this.ka.wa+0);zd(this.fa,a,!1)}else{var a=this.Fa,b=x(this),c=x(this),d=x(this);if(this.O&131072)d=d&131071|this.O&-131072;else if(d&131072){var e=x(this),f=x(this),g=x(this),h=x(this),k=x(this),m=x(this);Ad(this,!0,!0);yd(this,f);A(this,e);Fd(this,g);Ed(this,h);this.ob.load(k);this.rb.load(m)}null!= +Jd(this,b,c,!1)&&(Id(this,d,a),this.eg&&Ve(this,this.ea))}this.tc=this.ma=-1}},function(){this.Sc.call(this,hj,Bi)},function(){this.bb.call(this,2==this.T?ij:jj,Bi)},function(){this.Sc.call(this,hj,Ci)},function(){this.bb.call(this,2==this.T?ij:jj,Ci)},function(){var a=this.la();if(a){var b=this.F&255;this.F=this.F&-65536|b/a<<8|b%a;H(this,this.F,128);this.A-=this.B.Ii}else Ki.call(this)},function(){var a=this.F&255,b=(this.F>>8&255)*this.la()|0,c=a+b|0;this.F=this.F&-65536|c&255;df(this,a,b,c,191); +this.A-=this.B.Hi},function(){this.F=this.F&-256|(ef(this)?255:0);this.A-=2},function(){this.F=this.F&-256|yf(this,this.Ba,this.G+(this.F&255));this.A-=this.B.Gj},function(){oj.call(this,216)},function(){oj.call(this,217)},function(){oj.call(this,218)},function(){oj.call(this,219)},function(){oj.call(this,220)},function(){oj.call(this,221)},function(){oj.call(this,222)},function(){oj.call(this,223)},function(){var a=this.P(),b=this.H-1&this.ra;this.H=this.H&~this.ra|b;b&&!hf(this)?(G(this,D(this)+ +a),this.A-=this.B.nj):this.A-=this.B.Og},function(){var a=this.P(),b=this.H-1&this.ra;this.H=this.H&~this.ra|b;b&&hf(this)?(G(this,D(this)+a),this.A-=this.B.Pg):this.A-=this.B.Qg},function(){var a=this.P(),b=this.H-1&this.ra;this.H=this.H&~this.ra|b;b?(G(this,D(this)+a),this.A-=this.B.mj):this.A-=this.B.Og},function(){var a=this.P();this.H&this.ra?this.A-=this.B.Qg:(G(this,D(this)+a),this.A-=this.B.Pg)},function(){var a=this.la();wf(this,a,1)&&(this.F=this.F&-256|tc(this.na,a,1,this.ea-2)&255,this.A-= +this.B.Jg)},function(){var a=this.la();wf(this,a,this.T)&&(this.F=this.F&~this.N|tc(this.na,a,this.T,this.ea-2)&this.N,this.A-=this.B.Jg)},function(){var a=this.la();wf(this,a,1)&&(vc(this.na,a,1,this.F&255,this.ea-2),this.A-=this.B.Xg)},function(){var a=this.la();wf(this,a,this.T)&&(vc(this.na,a,this.T,this.F&this.N,this.ea-2),this.A-=this.B.Xg)},function(){var a=this.za(),b=D(this),a=b+a;C(this,b);G(this,a);this.A-=this.B.Mi},function(){var a=this.za();G(this,D(this)+a);this.A-=this.B.Kg},function(){Jd(this, +this.za(),Df(this));this.A-=this.B.ij},function(){var a=this.P();G(this,D(this)+a);this.A-=this.B.Kg},function(){var a=this.K&65535;wf(this,a,1)&&(this.F=this.F&-256|tc(this.na,a,1,this.ea-1)&255,this.A-=this.B.Ig)},function(){var a=this.K&65535;wf(this,a,this.T)&&(this.F=this.F&~this.N|tc(this.na,a,this.T,this.ea-1)&this.N,this.A-=this.B.Ig)},function(){var a=this.K&65535;wf(this,a,1)&&(vc(this.na,a,1,this.F&255,this.ea-1),this.A-=this.B.Wg)},function(){var a=this.K&65535;wf(this,a,2)&&(vc(this.na, +a,this.T,this.F&this.N,this.ea-1),this.A-=this.B.Wg)},pj,pj,function(){this.M|=132;this.A-=this.B.Ic},function(){this.M|=68;this.A-=this.B.Ic},function(){this.O&131072?v.call(this,13,0):(this.Ka|=4,this.A-=2,this.O&512||Xc(this))},function(){ef(this)?mf(this):lf(this);this.A-=2},function(){this.dc=!1;this.Sc.call(this,tj,Ei);this.dc&&(this.F=this.F&~this.N|this.Aa&this.N)},function(){this.dc=!1;this.bb.call(this,uj,Ei);this.dc&&(this.F=this.F&~this.N|this.Aa&this.N,this.K=this.K&~this.N|this.Sa&this.N)}, +function(){mf(this);this.A-=2},function(){lf(this);this.A-=2},function(){this.Fa>this.Wb?v.call(this,13,0):(this.O&=-513,this.A-=this.B.Ki)},function(){this.Fa>this.Wb?v.call(this,13,0):(this.O|=512,this.M|=4,this.A-=2)},function(){this.O&=-1025;this.A-=2},function(){this.O|=1024;this.A-=2},function(){this.Sc.call(this,Nd,Ei)},function(){this.bb.call(this,Od,Ei)}],cj=[Tg,Fh,Rg,Hh,Vg,mi,ui,ih],qj=[Ug,Gh,Sg,Ih,Wg,ni,vi,jh],rj=[function(a,b){this.A-=-1===this.D?this.B.Yb:this.B.yj;return b},lh,lh,lh, +lh,lh,lh,lh],sj=[function(a,b){this.A-=-1===this.D?this.B.qj:this.B.oj;return b},S,S,S,S,S,S,S],hj=[function(a,b){var c=a;if(b&=this.Ha){var d;(b&=7)?(d=a<>8-b)&255):d=a<<7;pf(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Ha){var d;(b&=7)?(d=a<<8-b,c=(a>>>b|d)&255):d=a;pf(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Ha){var d=qf(this);(b%=9)?(c=(a<>9-b)&255,d=a<>b|d<<8-b|a<<9-b)&255,d=a<<8-b):d<<=7;pf(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Ha){var d=0;8>>b-1,a=b>>>1&255,H(this,a,128,b&1,a&128);return a},S,function(a,b){if(b&=this.Ha)9>24>>b-1,a=b>>1&255,H(this,a,128,b&1);return a}],ij=[function(a,b){var c=a;if(b&=this.Ha){var d;(b&=15)?(d=a<>16-b)&65535):d=a<<15;pf(this,c,d,32768)}return c}, +function(a,b){var c=a;if(b&=this.Ha){var d;(b&=15)?(d=a<<16-b,c=(a>>>b|d)&65535):d=a;pf(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ha){var d=qf(this);(b%=17)?(c=(a<>17-b)&65535,d=a<>b|d<<16-b|a<<17-b)&65535,d=a<<16-b):d<<=15;pf(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Ha){var d=0;16>>b-1,a=b>>>1&65535,H(this,a,32768,b&1,a&32768);return a},S,function(a,b){if(b&=this.Ha)17>16>>b-1,a=b>>1&65535,H(this,a,32768,b&1);return a}],jj=[function(a,b){var c=a;if(b&=this.Ha)c=a<>>32-b,pf(this,c,a<>>b|d;pf(this,c,d,-2147483648)}return c},function(a,b){var c=a;if(b&=this.Ha)c=qf(this),c=a<>>32-b>>>1,pf(this,c,a<>>b|c<<32-b|a<<32-b<<1,pf(this,c,a<<32-b,-2147483648);return c},function(a,b){var c=a;if(b&=this.Ha)a<<=b-1,c=a<<1,H(this,c,-2147483648,a&-2147483648,(c^a)&-2147483648);return c},function(a,b){if(b&=this.Ha)b=a>>>b-1,a=b>>>1,H(this,a,-2147483648,b&1,a&-2147483648);return a},S,function(a,b){if(b&=this.Ha)b=a>>b-1,a=b>>1,H(this,a,-2147483648,b&1);return a}],tj=[function(a,b){b=this.la();H(this,a&b,128);this.A-=-1===this.C?this.B.ih:this.B.hh;this.M|= +2;return a},S,function(a){this.A-=-1===this.C?this.B.We:this.B.Ve;return a^255},function(a){var b=-a|0;df(this,0,a,b,191,!0);this.A-=-1===this.C?this.B.We:this.B.Ve;return b&255},function(a){this.Aa=(this.F&255)*a&65535;this.Aa&65280?(lf(this),nf(this)):(mf(this),of(this));this.dc=!0;this.A-=-1===this.C?this.B.uj:this.B.tj;this.M|=2;return a},function(a){var b=(this.F<<24>>24)*(a<<24>>24)|0;this.Aa=b&65535;127b?(lf(this),nf(this)):(mf(this),of(this));this.dc=!0;this.A-=-1===this.C?this.B.$i: +this.B.Zi;this.M|=2;return a},function(a,b){if(!a)return Ki.call(this),a;var c=(b=this.F&65535)/a;if(255>24,d=(b=this.F<<16>>16)/c|0;if(d!=d<<24>>24||8086==this.ba&&-128==d)return Ki.call(this),a;this.Aa=d&255|(b%c&255)<<8;this.dc=!0;this.A-=-1===this.C?this.B.Wi:this.B.Vi;this.M|=2;return a}],uj=[function(a,b){b=this.za(); +H(this,a&b,this.sb);this.A-=-1===this.C?this.B.ih:this.B.hh;this.M|=2;return a},S,function(a){this.A-=-1===this.C?this.B.We:this.B.Ve;return a^this.N},function(a){var b=-a|0;df(this,0,a,b,this.sb|63,!0);this.A-=-1===this.C?this.B.We:this.B.Ve;return b&this.N},function(a,b){2==this.T?(b=this.F&65535,b=b*a|0,this.Aa=b&65535,this.Sa=b>>16&65535):(rh.call(this,a,this.F),80563==this.pd&&68657152==this.F&&129==a&&(this.Sa=0));this.Sa?(lf(this),nf(this)):(mf(this),of(this));this.dc=!0;this.A-=-1===this.C? +this.B.wj:this.B.vj;this.M|=2;return a},function(a,b){2==this.T?(b=this.F&65535,b=(b<<16>>16)*(a<<16>>16)|0,this.Aa=b&65535,this.Sa=b>>16&65535,b=32767b):(qh.call(this,a,this.F),b=this.Sa!=this.Aa>>31);b?(lf(this),nf(this)):(mf(this),of(this));this.dc=!0;this.A-=-1===this.C?this.B.bj:this.B.aj;this.M|=2;return a},function(a,b){if(2==this.T){if(!a)return Ki.call(this),a;b=65536*(this.K&65535)+(this.F&65535);var c=b/a;if(65536<=c)return Ki.call(this),a;this.Aa=c&65535;this.Sa=b%a&65535}else{if(!yi.call(this, +this.F,this.K,a))return Ki.call(this),a;this.Aa|=0;this.Sa|=0}this.dc=!0;this.A-=-1===this.C?this.B.Ui:this.B.Ti;this.M|=2;return a},function(a,b){if(2==this.T){if(!a)return Ki.call(this),a;var c=a<<16>>16,d=(b=this.K<<16|this.F&65535)/c|0;if(d!=d<<16>>16||8086==this.ba&&-32768==d)return Ki.call(this),a;this.Aa=d&65535;this.Sa=b%c&65535}else{b=this.F;var c=this.K,d=a,e=0,f=0;0>d&&(d=-d|0,e=1-e);0>c&&(b=-b|0,c=~c+(b?0:1)|0,f=1,e=1-e);!yi.call(this,b,c,d)||this.Aa>2147483647+e||this.Sa>2147483647+f? +b=!1:(e&&(this.Aa=-this.Aa),f&&(this.Sa=-this.Sa),b=!0);if(!b)return Ki.call(this),a;this.Aa|=0;this.Sa|=0}this.dc=!0;this.A-=-1===this.C?this.B.Yi:this.B.Xi;this.M|=2;return a}],Nd=[function(a){var b=a+1|0;df(this,a,1,b,190);this.A-=-1===this.C?this.B.Ue:this.B.Te;return b&255},function(a){var b=a-1|0;df(this,a,1,b,190,!0);this.A-=-1===this.C?this.B.Ue:this.B.Te;return b&255},S,S,S,S,S,S],Od=[function(a){var b=a+1|0;df(this,a,1,b,this.sb|62);this.A-=-1===this.C?this.B.Ue:this.B.Te;return b&this.N}, +function(a){var b=a-1|0;df(this,a,1,b,this.sb|62,!0);this.A-=-1===this.C?this.B.Ue:this.B.Te;return b&this.N},function(a){C(this,D(this));G(this,a);this.A-=-1===this.C?this.B.Qi:this.B.Pi;this.M|=2;return a},function(a){if(-1===this.C)return S.call(this,a);this.ma=this.ya;Gi.call(this,a,this.ga(this.C+this.T));this.A-=this.B.Ni;this.M|=2;this.ma=-1;return a},function(a){G(this,a);this.A-=-1===this.C?this.B.kj:this.B.jj;this.M|=2;return a},function(a){if(-1===this.C)return S.call(this,a);Jd(this,a, +this.ga(this.C+this.T));this.A-=this.B.hj;this.M|=2;return a},function(a){var b=a;this.M&512&&(a=a-2&65535,80286>this.ba&&(b=a));C(this,b);this.A-=-1===this.C?this.B.sc:this.B.Aj;this.M|=2;return a},S];function re(){this.ia.call(this,ri);this.A-=-1===this.C?6:13}function se(){this.xa.call(this,qi);this.A-=-1===this.C?12:19}var ie=Array(256);ie[0]=function(){16>(this.Hb(this.ea)&56)&&(this.M|=1);this.bb.call(this,this.oi,Ei)};ie[1]=function(){this.Hb(this.ea)&16||(this.M|=1);this.bb.call(this,vj,Ei)}; +ie[2]=function(){!(this.pa&1)||this.O&131072?v.call(this,6):this.ia.call(this,sh)};ie[3]=function(){!(this.pa&1)||this.O&131072?v.call(this,6):this.ia.call(this,yh)}; +ie[5]=function(){this.Fa?v.call(this,13,0,0,!0):(vf(this,this.ga(2054)),this.I=this.ga(2086),this.J=this.ga(2088),this.L=this.ga(2090),this.G=this.ga(2094),this.K=this.ga(2096),this.H=this.ga(2098),this.F=this.ga(2100),vd(this.ua,2102,this.ga(2084)),vd(this.fa,2108,this.ga(2082)),vd(this.W,2114,this.ga(2080)),vd(this.Ca,2120,this.ga(2078)),Id(this,this.ga(2072)),G(this,this.ga(2074)),A(this,this.ga(2092)),this.Gb=this.ga(2126)|this.Hb(2128)<<16,this.Pc=this.Gb+this.ga(2130),this.Tb=this.ga(2138)| +this.Hb(2140)<<16,this.Qc=this.Tb+this.ga(2142),vd(this.lc,2132,this.ga(2076)),vd(this.ka,2144,this.ga(2070)),this.A-=195)};ie[6]=function(){this.Fa?v.call(this,13,0):(this.pa&=-9,this.A-=2)};ie[11]=Qd;ie[166]=Qd;ie[255]=Qd;var F=[];F[5]=Qd; +F[7]=function(){if(this.Fa)v.call(this,13,0,0,!0);else{var a=this.ua.Mb(this.I&this.ra,204);if(-1!==a){this.pa=this.da(a);Ad(this);this.pa&-2147483648?Zb(this):we(this);var b=this.da(a+168),c=(b&24576)>>13;Id(this,this.da(a+4),c);this.Gb=this.da(a+112);this.Pc=this.Gb+this.da(a+116);this.Tb=this.da(a+100);this.Qc=this.Tb+this.da(a+104);td(this.lc,this.da(a+56),this.da(a+120),this.da(a+124),this.da(a+128));td(this.ka,this.da(a+52),this.da(a+84),this.da(a+88),this.da(a+92));this.I=this.da(a+12);this.J= +this.da(a+16);this.L=this.da(a+20);this.G=this.da(a+28);this.K=this.da(a+32);this.H=this.da(a+36);this.F=this.da(a+40);td(this.rb,this.da(a+60),this.da(a+132),this.da(a+136),this.da(a+140));td(this.ob,this.da(a+64),this.da(a+144),this.da(a+148),this.da(a+152));td(this.Ca,this.da(a+68),this.da(a+156),this.da(a+160),this.da(a+164));td(this.W,this.da(a+72),b,this.da(a+172),this.da(a+176));td(this.fa,this.da(a+76),this.da(a+180),this.da(a+184),this.da(a+188));td(this.ua,this.da(a+80),this.da(a+192),this.da(a+ +196),this.da(a+200));G(this,this.da(a+8));A(this,this.da(a+24))}this.A-=122<<(a&3?1:0)}};F[16]=dj;F[17]=ej;F[18]=fj;F[19]=gj;F[32]=function(){if(this.Fa)v.call(this,13,0);else{var a,b=this.la();switch((b&56)>>3){case 0:a=this.pa;break;case 2:a=this.rd;break;case 3:a=this.ed;break;default:je.call(this);return}ye(this,b&7,a);this.A-=6}};F[33]=function(){if(this.Fa)v.call(this,13,0);else{var a=this.la(),b=(a&56)>>3;4==b||5==b?je.call(this):(ye(this,a&7,this.zb[b]),this.A-=22)}}; +F[34]=function(){if(this.Fa)v.call(this,13,0);else{var a=this.la(),b=xe(this,a&7);switch((a&56)>>3){case 0:this.pa=b;Ad(this);this.pa&-2147483648?Zb(this):we(this);this.A-=10;break;case 2:this.rd=b;this.A-=4;break;case 3:Kd.call(this,b);this.A-=5;break;default:je.call(this)}}};F[35]=function(){if(this.Fa)v.call(this,13,0);else{var a=this.la(),b=(a&56)>>3;4==b||5==b?je.call(this):(a=xe(this,a&7),a!=this.zb[b]&&(We(this,!1),this.zb[b]=a,We(this,!0)),this.A-=4>b?22:14)}}; +F[36]=function(){if(this.Fa)v.call(this,13,0);else{var a=this.la(),b=(a&56)>>3;6>b?je.call(this):(ye(this,a&7,this.tf[b]),this.A-=12)}};F[38]=function(){if(this.Fa)v.call(this,13,0);else{var a=this.la(),b=(a&56)>>3;6>b?je.call(this):(this.tf[b]=xe(this,a&7),this.A-=12)}};F[128]=function(){var a=this.za();kf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[129]=function(){var a=this.za();kf(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)}; +F[130]=function(){var a=this.za();ef(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[131]=function(){var a=this.za();ef(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)};F[132]=function(){var a=this.za();hf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[133]=function(){var a=this.za();hf(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)};F[134]=function(){var a=this.za();ef(this)||hf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja}; +F[135]=function(){var a=this.za();ef(this)||hf(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)};F[136]=function(){var a=this.za();jf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[137]=function(){var a=this.za();jf(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)};F[138]=function(){var a=this.za();ff(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[139]=function(){var a=this.za();ff(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)}; +F[140]=function(){var a=this.za();!jf(this)!=!kf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[141]=function(){var a=this.za();!jf(this)==!kf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[142]=function(){var a=this.za();hf(this)||!jf(this)!=!kf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[143]=function(){var a=this.za();hf(this)||!jf(this)!=!kf(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)};F[144]=function(){Ai.call(this,Jh)}; +F[145]=function(){Ai.call(this,Jh)};F[146]=function(){Ai.call(this,Kh)};F[147]=function(){Ai.call(this,Lh)};F[148]=function(){Ai.call(this,Mh)};F[149]=function(){Ai.call(this,Nh)};F[150]=function(){Ai.call(this,Oh)};F[151]=function(){Ai.call(this,Ph)};F[152]=function(){Ai.call(this,Qh)};F[153]=function(){Ai.call(this,Rh)};F[154]=function(){Ai.call(this,Sh)};F[155]=function(){Ai.call(this,Th)};F[156]=function(){Ai.call(this,Uh)};F[157]=function(){Ai.call(this,Vh)};F[158]=function(){Ai.call(this,Wh)}; +F[159]=function(){Ai.call(this,Xh)};F[160]=function(){Dd(this,this.ob.ha,this.T,2);this.A-=this.B.Rd};F[161]=function(){this.ma=this.ya;var a=x(this);this.ob.load(a);this.A-=this.B.Yb;this.ma=-1};F[163]=function(){this.xa.call(this,eh);-1!==this.C&&(this.A-=6)};F[164]=function(){this.xa.call(this,2==this.T?Yh:ci);this.A-=-1===this.C?3:7};F[165]=function(){this.xa.call(this,2==this.T?ei:fi);this.A-=-1===this.C?3:7};F[168]=function(){Dd(this,this.rb.ha,this.T,2);this.A-=this.B.Rd}; +F[169]=function(){this.ma=this.ya;var a=x(this);this.rb.load(a);this.A-=this.B.Yb;this.ma=-1};F[171]=function(){this.xa.call(this,hh);-1!==this.C&&(this.A-=5)};F[172]=function(){this.xa.call(this,2==this.T?gi:ii);this.A-=-1===this.C?3:7};F[173]=function(){this.xa.call(this,2==this.T?ki:li);this.A-=-1===this.C?3:7};F[175]=function(){this.ia.call(this,2==this.T?nh:ph)};F[178]=function(){this.ia.call(this,zh)};F[179]=function(){this.xa.call(this,gh);-1!==this.C&&(this.A-=5)}; +F[180]=function(){this.ia.call(this,wh)};F[181]=function(){this.ia.call(this,xh)}; +F[182]=function(){this.Vb.call(this,Bh);switch(this.aa>>3&7){case 0:this.F=this.F&~this.N|this.F&255;break;case 1:this.H=this.H&~this.N|this.H&255;break;case 2:this.K=this.K&~this.N|this.K&255;break;case 3:this.G=this.G&~this.N|this.G&255;break;case 4:this.kc=this.kc&~this.N|this.F>>8&255;this.F=this.ta;break;case 5:this.L=this.L&~this.N|this.H>>8&255;this.H=this.ta;break;case 6:this.J=this.J&~this.N|this.K>>8&255;this.K=this.ta;break;case 7:this.I=this.I&~this.N|this.G>>8&255,this.G=this.ta}this.A-= +-1===this.C?3:6};F[183]=function(){Bd(this,2);this.ia.call(this,Ch);switch(this.aa>>3&7){case 0:this.F=this.F&65535;break;case 1:this.H=this.H&65535;break;case 2:this.K=this.K&65535;break;case 3:this.G=this.G&65535;break;case 4:this.kc=this.kc&65535;break;case 5:this.L=this.L&65535;break;case 6:this.J=this.J&65535;break;case 7:this.I=this.I&65535}this.A-=-1===this.C?3:6};F[186]=function(){this.bb.call(this,wj,this.la)};F[187]=function(){this.xa.call(this,fh);-1!==this.C&&(this.A-=5)}; +F[188]=function(){this.ia.call(this,Zg)};F[189]=function(){this.ia.call(this,$g)}; +F[190]=function(){this.Vb.call(this,Bh);switch(this.aa>>3&7){case 0:this.F=this.F&~this.N|(this.F&255)<<24>>24&this.N;break;case 1:this.H=this.H&~this.N|(this.H&255)<<24>>24&this.N;break;case 2:this.K=this.K&~this.N|(this.K&255)<<24>>24&this.N;break;case 3:this.G=this.G&~this.N|(this.G&255)<<24>>24&this.N;break;case 4:this.kc=this.kc&~this.N|this.F<<16>>24&this.N;this.F=this.ta;break;case 5:this.L=this.L&~this.N|this.H<<16>>24&this.N;this.H=this.ta;break;case 6:this.J=this.J&~this.N|this.K<<16>>24& +this.N;this.K=this.ta;break;case 7:this.I=this.I&~this.N|this.G<<16>>24&this.N,this.G=this.ta}this.A-=-1===this.C?3:6};F[191]=function(){Bd(this,2);this.ia.call(this,Ch);switch(this.aa>>3&7){case 0:this.F=this.F<<16>>16;break;case 1:this.H=this.H<<16>>16;break;case 2:this.K=this.K<<16>>16;break;case 3:this.G=this.G<<16>>16;break;case 4:this.kc=this.kc<<16>>16;break;case 5:this.L=this.L<<16>>16;break;case 6:this.J=this.J<<16>>16;break;case 7:this.I=this.I<<16>>16}this.A-=-1===this.C?3:6}; +var Xe=[function(){this.A-=2+(-1===this.C?0:1);return this.lc.ha},function(){this.A-=2+(-1===this.C?0:1);return this.ka.ha},function(a){this.M|=2;this.lc.load(a);this.A-=17+(-1===this.C?0:2);return a},function(a){this.M|=2;-1!==this.ka.load(a)&&(this.Xa(this.ka.ac+4,this.ka.lb|=512),this.ka.type|=512);this.A-=17+(-1===this.C?0:2);return a},function(a){this.M|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.eb.load(a)&&2048!=(this.eb.lb&2560)&&(this.eb.hc>=this.Fa&&this.eb.hc>=(a&3)||7168==(this.eb.lb& +7168)))return uf(this),a;sf(this);return a},function(a){this.M|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.eb.load(a)&&512==(this.eb.lb&2560)&&this.eb.hc>=this.Fa&&this.eb.hc>=(a&3))return uf(this),a;sf(this);return a},S,S],Pd=[ge,ge,ge,ge,ge,ge,S,S],vj=[function(a){if(-1===this.C)v.call(this,6);else{a=this.Pc-this.Gb;var b=this.Gb;80286==this.ba?b|=-16777216:80386<=this.ba&&2!=this.T&&(a|=b<<16);this.Qa(this.C+2,b);this.A-=11}return a},function(a){if(-1===this.C)v.call(this,6);else{a=this.Qc-this.Tb; +var b=this.Tb;80286==this.ba?b|=-16777216:80386<=this.ba&&2!=this.T&&(a|=b<<16);this.Qa(this.C+2,b);this.A-=12}return a},function(a){-1===this.C||this.O&131072?v.call(this,6):(this.Gb=this.da(this.C+2)&(this.N|this.N<<8),a&=65535,this.Pc=this.Gb+a,this.M|=2,this.A-=11);return a},function(a){-1===this.C||this.O&131072?v.call(this,6):(this.Tb=this.da(this.C+2)&(this.N|this.N<<8),a&=65535,this.Qc=this.Tb+a,this.M|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.C?0:1);return this.pa},S,function(a){this.O& +131072?v.call(this,6):(vf(this,a),this.A-=-1===this.C?3:6,this.M|=2);return a},S],wj=[S,S,S,S,ah,dh,ch,bh]; +function T(a){t.call(this,"ChipSet",a);var b=a.model;b&&!xj[b]&&r("Unrecognized ChipSet model: "+b);this.ba=xj[b]||yj;this.B=[];b=zj(a[Aj]);this.B[0]=[b,b];null==b&&(this.O=[360,360],(b=a.floppies)&&b.length&&(this.O=b),Bj(this,Cj,this.O.length),Bj(this,Dj,a.monitor||(this.ba=Lf&&(this.xa=this.ia=2);this.V=a.scaleTimers||!1;this.Ka=a.rtcDate;this.Fa=!1;a.sound&&(this.Ca=this.ka=null,window&&(this.Ca=window.AudioContext||window.webkitAudioContext), +this.Ca&&(this.ka=new this.Ca));this.reset(!0);tb(this)}da(T,t);l=T.prototype;l.yb=function(a,b,c){switch(b){case Aj:return this.ja[b]=c,Fj(this,0,b),!0;case Ej:if((this.ba|0)==Gj||this.ba==Hj)return this.ja[b]=c,Fj(this,1,b),!0;break;case Ij:return this.ja[b]=c,!0}return!1}; +l.ic=function(a,b,c,d){this.na=b;this.S=c;this.Ea=d;this.oa=a;this.qd=Cb(a,"FPU");Bj(this,Jj,this.qd?1:0,!0);this.C=Cb(a,"Keyboard");this.Aa=c.R.Zc/Kj;sc(b,this,Lj);uc(b,this,Mj);this.ba=Lf){this.F=ek;this.L=0;this.K=fk;this.pa=0;this.M=gk|hk;512<=ik(this)&&(this.M|=jk);+kk(this,Dj,void 0)==lk&&(this.M|=mk);(this.ba|0)==Tj&&(this.M=this.M|nk|ok);this.qa= +pk|qk;this.G=Array(8);this.W=0;a&&(this.A=Array(rk));sk(this,this.Ka);for(a=tk;a<=uk;a++)this.A[a]=0;for(a=vk;a>8} +l.save=function(){var a=new Ye(this);a.set(0,[this.B]);for(var b=[],c=0;c=Lf&&(a.set(5,[this.F,this.L,this.K,this.pa,this.M,this.qa]),a.set(6,[this.G[7],this.G,this.W,this.A,this.ma,this.X]));return a.data()}; +l.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.B=b[0]:(this.B[0][0]=b[0],this.B[1][0]=b[1]&15,this.B[0][1]=b[2],this.B[1][1]=b[3]&15);Wj(this);b=a[1];for(c=0;c=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='
    '+f+"
    \n"}e.innerHTML=d;cl(a,b,c,!0)}function dl(a,b,c){if(b=(a=U[a.ba|0])&&a[b])for(var d in b)if(a=b[d],a.gc&1<d.gb[0]&&(d.gb[0]=255,d.gb[1]--,0>d.gb[1]&&(d.gb[1]=255)));return e}function rl(a,b,c,d){a=a.D[b];c=a.Qb[c];c.gb[a.Fb]=c.bc[a.Fb]=d;a.Fb^=1} +function sl(a,b){a=a.D[b];b=a.Cb|tl;a.Cb&=~ul;return b}function vl(a,b,c){a=a.D[b];b=c&3;a.Cb=a.Cb&~(16<>2].Qb[b&3],c,d,e)}function zl(a,b,c){b=a.D[b>>2].Qb[b&3];b.Df&&b.rg&&b.Tf?(c&&(b.done=c),b.Od||El(a,b,!0)):c&&c(!0)} +function El(a,b,c){c&&(b.count=b.gb[1]<<8|b.gb[0],b.type=b.mode&Fl,b.ri=b.Ef=!1);for(var d=!1;0<=b.count&&(c=b.wf<<16|b.fb[1]<<8|b.fb[0],b.type==Gl?(d=!0,function(c){b.rg.call(b.Df,b.Tf,-1,function(e,g){0>e&&(b.ri||(b.ri=!0),e=255);b.Od||a.na.Fc(c,e);(d=g)&&setTimeout(function(){Hl(b)||El(a,b)},0)})}(c)):b.type==Il?(c=a.na.Hb(c),0>b.rg.call(b.Df,b.Tf,c)&&(b.Ef=!0)):b.type!=Jl&&(b.Ef=!0)),!d&&!Hl(b););} +function Hl(a){if(!a.Ef&&0<=--a.count&&(a.mode&Kl?(a.fb[0]--,0>a.fb[0]&&(a.fb[0]=255,a.fb[1]--,0>a.fb[1]&&(a.fb[1]=255))):(a.fb[0]++,255>3];b=1<<(b&7);d.Rb&b||(d.Rb|=b,d.Qe=c||0,Xl(a))}function Mf(a,b){var c=a.$b[b>>3];b=1<<(b&7);c.Rb&b&&(c.Rb&=~b,Xl(a))}function Xl(a,b){var c,d=-1;1>=1),Zc(a.S,d))),b==im&&c==mm&&Wk(a))} +function nm(a,b,c){var d=0,e=c&om;b?(d=3,a.ea=c):a.ta=c;if(e==pm){if(!(c&qm))for(e=0;2>=e;e++)if(c&rm<=e;e++)c&rm<>wm,f=c&xm,g=c&ym;c&=zm;if(c==Am)vm(a,d+e);else{var d=d+e,h=a.H[d];h.gf=c;h.mode=g;h.ng=f;h.bc=[0,0];h.gb=[0,0];h.Kd=[0,0];h.Lc=!1;h.le=!1;h.Md=!1;h.pe=!1;dm(a,d);b==im&&e==jm&&Mf(a,km);b==im&&e==mm&&255==a.$b[0].Wc&&a.J==(Bm|Cm|Dm|Em)&&(e=a.H[0], +e.yc[0]=e.bc[0],e.yc[1]=e.bc[1],e.kd=ed(a.S,a.V))}}}function lm(a,b){a=a.H[b];(b=a.bc[1]<<8|a.bc[0])||(b=1==a.jd?256:65536);return b}function id(a,b){a=a.H[b];(b=a.yc[1]<<8|a.yc[0])||(b=1==a.jd?256:65536);return b}function vm(a,b){em(a,b);var c=a.H[b];c.Kd[0]=c.gb[0];c.Kd[1]=c.gb[1];c.le=!0;dm(a,b)}function dm(a,b){a=a.H[b];a.Yc=a.gf==Fm?1:0;a.jd=a.gf==Gm?2:1} +function em(a,b,c){var d=a.H[b];if(d.Md&&(b!=mm||a.J&Bm)){var e=ed(a.S,a.V),f=(e-d.kd)/a.Aa|0;0>f&&(d.kd=e,f=0);var g=lm(a,b),h=id(a,b)-f;d.mode==gm?(0>=h&&(h=0),h||(d.Lc=!0,d.Md=!1,b||Of(a,km))):d.mode==Hm?(d.Lc=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.yc[0]=h&255,d.yc[1]=h>>8&255,d.kd=e,!b&&d.Lc&&Of(a,km))):d.mode==jd&&(h-=f,0>=h&&(d.Lc=!d.Lc,h=g+h,0>=h&&(h=g),d.yc[0]=h&255,d.yc[1]=h>>8&255,d.kd=e,!b&&d.Lc&&Of(a,km)));d.gb[0]=h&255;d.gb[1]=h>>8&255;c&&(a.kd=0)}return d} +function hd(a,b){for(var c=0;c=Lf){b=a.S.R.Zc;c=ed(a.S,a.V);null==a.ya&&(a.ma=ed(a.S,a.V),a.Ha=1024,a.ya=Math.floor(a.S.R.Zc/a.Ha),Uk(a));c>=a.X&&(a.A[Rk]|=Im,a.A[kd]&ld&&(a.A[Rk]|=Jm,Of(a,Km)),a.X=c+a.ya);a.A[Ek]==a.A[Fk]&&a.A[Gk]==a.A[Hk]&&a.A[Ik]==a.A[Jk]&&(a.A[Rk]|=Lm,a.A[kd]&Mm&&(a.A[Rk]|=Jm,Of(a,Km)));var d=c-a.ma,e=Math.floor(d/b);if(e&&!(a.A[kd]&Nm)){for(;e--;)if(60<=++a.A[Ek]&&(a.A[Ek]=0,60<=++a.A[Gk]&&(a.A[Gk]=0,24<=++a.A[Ik]))){a.A[Ik]=0;a.A[Kk]=a.A[Kk]% +7+1;var f;f=a.A[Nk];var g=Da[a.A[Mk]-1];28==g&&(f%4||!(f%100)&&f%400||g++);f=g;++a.A[Lk]>f&&(a.A[Lk]=1,12<++a.A[Mk]&&(a.A[Mk]=1,a.A[Nk]=(a.A[Nk]+1)%100))}a.A[Rk]|=Om;a.A[kd]&Pm&&(a.A[Rk]|=Jm,Of(a,Km))}a.ma=c-d%b}}l.ul=function(){var a=this.ua;this.fa&Qm&&(this.J&Rm?a=this.B[0][1]:this.C&&(a=Wm(this.C)));return a};l.Qm=function(a,b){this.ua=b};l.vl=function(){return this.J};l.Rm=function(a,b){Xm(this,b)}; +function Xm(a,b){var c=!!(b&Ym),d=!!(a.J&Ym);a.J=b;a.C&&Zm(a.C,!(b&Rm),!!(b&Em));c!=d&&Wk(a,c)}l.wl=function(){var a=0,a=(this.ba|0)==Gj?this.J&Cm?a|this.B[1][1]&$m:a|this.B[1][1]>>4&1:this.J&an?a|this.B[0][1]>>4:a|this.B[0][1]&15;this.J&Bm&&em(this,mm).Lc&&(a=this.J&Ym?a|bn:a|cn);return a};l.Sm=function(a,b){this.Ba=b};l.xl=function(){return this.fa};l.Tm=function(a,b){this.fa=b};l.Gk=function(){var a=this.C?Wm(this.C):0;this.aa&=~dn;return a};l.bm=function(){};l.Fk=function(){return this.J}; +l.am=function(a,b){Xm(this,b)};l.Hk=function(){return this.aa};l.Ik=function(){var a=this.pa;this.F&=~(dn|en);this.C&&fn(this.C);return a};l.dm=function(a,b){if(this.F&gn)switch(this.L){case hn:jn(this,b);break;case kn:ln(this,b);break;default:if(jn(this,this.K&~fk),this.C){a=this.C;var c=b,d=-1;switch(a.G||c){case mn:d=nn;a.Lb=[];on(a,pn);break;case qn:a.G&&(c=0);on(a,nn);a.G=c;break;case rn:a.G&&(c=0),on(a,nn),a.G=c}sn(this,d)}}this.L=b;this.F&=~gn}; +l.Jk=function(){return this.J&~(tn|un)|(ed(this.S)&64?un:0)};l.em=function(a,b){Xm(this,b)};l.Kk=function(){var a=this.F&255;this.F&en&&(this.F|=dn,this.F&=~en);return a}; +l.cm=function(a,b){this.L=b;this.F|=gn;a=0;this.L>=vn&&(a=this.L^15,this.L=vn);switch(this.L){case wn:sn(this,this.K);break;case xn:jn(this,this.K|fk);break;case yn:jn(this,this.K&~fk);this.C&&fn(this.C);break;case zn:this.C&&(this.C.Lb=[]);jn(this,this.K|fk);sn(this,An);ln(this,pk|qk);break;case Bn:sn(this,Cn);break;case Dn:sn(this,this.M);break;case En:sn(this,this.qa);break;case Fn:sn(this,this.K&fk?0:Gn);break;case vn:a&1&&te(this.S)}}; +function jn(a,b){a.K=b;a.F=a.F&~Hn|b&In;a.C&&Zm(a.C,!!(b&Jn),!(b&fk))}function sn(a,b,c){0<=b&&(a.pa=b,c?a.F|=dn:(a.F&=~dn,a.F|=en))}function ln(a,b){a.qa=b;Vb(a.na,!!(b&qk));b&pk||te(a.S)}function Kn(a,b){a.bac?c=c?c:12:c=(c-=12)?c+128:140,d=!0);this.A[kd]&Qn||(d&&128>4)+(d&15),e=!0);if(a==Ik||a==Jk)e&&23=d?d=12==d?0:d:(d-=116,d=24==d?12:d))}}else d=b;this.A[a]=d;a==kd&&c&ld&&b&ld&&Uk(this)};l.Kj=function(a,b){this.ca=b};l.Dm=function(){};l.Em=function(){this.qd&&Hf(this.qd)}; +function Wk(a,b){if(a.ka)try{void 0!==b?a.Fa=b:b=!!(a.Fa&&a.S&&a.S.Z.vb);var c=Math.round(Kj/lm(a,mm));if(20>c||2E4>>4,0,this.G,this.C,this.H),delete this.H);return!0};Tn.prototype.Ob=function(){return!0}; +function Un(a,b,c,d){if(d)a.va("Unable to load system ROM (error "+d+": "+b+")",0>d);else{$a(a.Zd,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.longs||e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.H=e.symbols;if(!a.A.length){r("Empty ROM: "+b);return}if(1==a.A.length){r(a.A[0]);return}}catch(h){a.va("ROM data error: "+h.message);return}else for(b= +c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.A=Array(b.length),e=0;e>>d.B].jf(e&d.C,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.F?b.push(a.F):null!=a.F&&a.F.length&&(b=a.F);for(c=0;cthis.B?tk:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+1]=c>>8;Dk(a)}}else r("No RAM allocated")}; +l.save=function(){var a=new Ye(this);this.controller&&a.set(0,this.controller.save());return a.data()};l.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function $n(a){this.F=a;this.C=bo;this.D=co;this.B=eo;this.A=null}l=$n.prototype;l.save=function(){return[this.C,this.B]};l.restore=function(a){this.Fc(0,a[0]&255);this.Fc(2,a[1]&255);return!0};l.Hb=function(a){var b=255;2>a?b=a&1?this.D>>8:this.D&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b}; +l.Fc=function(a,b){if(a)2==a&&(this.B=this.B&-256|b);else if(b!=(this.C&255)){a=this.F.na;if(b&fo)this.A&&(bc(a,go,ho,this.A),this.A=null);else{this.A||(this.A=cc(a,go,ho));var c=cc(a,io,ho);bc(a,go,ho,c,b&jo?1:ic)}this.C=this.C&-256|b}};l.vi=function(){return ko};l.sg=function(){return lo};var ao=-2134900736,io=16646144,go=917504,ho=131072,fo=1,jo=2,bo=65535,co=2575,eo=2,ko=[null,0],lo=[function(a){return this.controller.Hb(a)},null,null,function(a,b){this.controller.Fc(a,b)},null,null]; +Ra(function(){for(var a=hb(document,"pcx86","ram"),b=0;b=n.Hd&&d<=n.z&&(d-=n.Hd-n.Gd),d=wo[e]==d),d){(a=a.ja["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}} +l.ic=function(a,b,c,d){this.oa=a;this.na=b;this.S=c;this.Ea=d;this.V=Cb(a,"ChipSet");this.F=Tc(a,"autoType")||this.F;Ue(c,33,this.Ml.bind(this))};l.Ml=function(){if(10==(this.S.F>>8&255)&&!this.D&&this.F){var a=this.D=Ao(this.F);a&&!this.B&&(this.B=a,yo(this,150))}return!0}; +function Ao(a){if(a){for(var b,c=/(?:^|[^$])\$([a-z]+)/g;b=c.exec(a);){var d;switch(b[1]){case "date":d=ya("n-j-Y");break;case "time":d=ya("h:i:s");break;default:continue}a=a.replace("$"+b[1],d)}a=a.replace(/\$\$/g,"$$")}return a}function no(a,b){var c=0;a.ba=null;"string"==typeof b&&(a.ba=b.toUpperCase(),c=Bo.indexOf(a.ba),0>c&&(c=0));if(b=Bo[c])a.X=parseInt(b.substr(2),10)}function Zm(a,b,c){a.J!==c&&(a.J=a.K=c)&&(a.H=!0);a.I!==b&&(a.I=b)&&!a.K&&Mn(a,!0);a.I&&a.K&&(a.Lb=[],on(a,pn),a.K=!1)} +function on(a,b){a.V&&(a.Lb.unshift(b),a.H=!0,Kn(a.V,b))}function fn(a){var b;a.Lb.length&&a.H&&(b=a.Lb[0],a.V&&Kn(a.V,b))}function Wm(a){var b=0;a.Lb.length&&(b=a.Lb[0]);return b}function Mn(a,b){0>=1);if(b&Fo){if(!1===d)return!0;d=null}null==d?d=!((c?a.C:a.Sb)&b):d||b&Go&&(b=Go);if(c){a.C&=~b;d&&(a.C|=b);c=b;var f,g;for(g in Ho)d="led-"+g,e=Ho[g],c&&c!=e||!(f=a.ja[d])||(f.style.backgroundColor=a.C&e?"#00ff00":"#000000")}else a.Sb&=~b,d&&(a.Sb|=b);return!0}}return!1} +function qo(a,b,c){if((V[b]||V[b+=1E3])&&a.S&&a.S.Z.vb){Do[b]&&a.A.length&&0e||(e==a.A.length&&(d={},d.Yd=b,d.Sb=a.Sb,zo(a,b,!0),e++),0b.ad){if(!b.Ke){xo(a,b.Yd);return}b.Ke=!1;c=a.aa}else c=1==b.ad++?500:100;b.Yj=setTimeout(function(a){return function(){Io(a,b)}}(a),c)}} +function Ko(a,b,c){var d=b;if(b>=n.Gd&&b<=n.uf)!(a.Sb&(Lo|Mo|No))==c&&(d=b+(n.Hd-n.Gd));else if(b>=n.Hd&&b<=n.z)!!(a.Sb&(Lo|Mo|No))==c&&(d=b-(n.Hd-n.Gd));else if(!!(a.Sb&(Lo|Mo))==c){if(a=q[b])d=a}else if(a=na[b])d=a;return d}l.Uf=function(a){a||(this.Sb&=~Go)}; +function oo(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode;a.B="";var h=Ko(a,g,!0);a.qg&&h==n["`"]&&(g=h=27);if(V[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),vo(a,h,!1,c)){if(20==g||144==g||145==g)a.O||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k=n.Gd&&b<=n.uf||b>=n.Hd&&b<=n.z;e>>>=8;){var g=0,h=e&255;f==Xo||f==Yo?d.push(f|(c?0:Wo)):(h==W?a.C&(Lo|Mo)||a.C&No&&b||(g=h):h==Zo?a.C&(Oo|$o)||(g=h):h==ap?a.C&(Po|bp)||(g=h):d.push(f|(c?0:Wo)),g&&(c?d.unshift(g):d.push(g|Wo)))}for(c=0;c"]]=52|W<<8;V[n["/"]]=53; +V[n["?"]]=53|W<<8;V[3016]=54;V[1044]=55;V[1018]=ap;V[1032]=57;V[ro]=58;V[1112]=59;V[1113]=60;V[1114]=61;V[1115]=62;V[1116]=63;V[1117]=64;V[1118]=65;V[1119]=66;V[1120]=67;V[1121]=68;V[so]=69;V[to]=70;V[1036]=71;V[1038]=72;V[1033]=73;V[1109]=74;V[1037]=75;V[1101]=76;V[1039]=77;V[1107]=78;V[1035]=79;V[1040]=80;V[1034]=81;V[1045]=82;V[1046]=Vo;V[4027]=84;V[1122]=87;V[1123]=88;V[1091]=91;V[1093]=93;V[1224]=91;V[ep]=46|Zo<<8;V[Qo]=70|Zo<<8;V[4046]=Vo|Zo<<8|ap<<16;V[4045]=82|Zo<<8|ap<<16; +V[4013]=28|Zo<<8|ap<<16;var mn=255,qn=243,rn=237,pn=170,nn=250,dp=255,cp=20;Ra(function(){for(var a=hb(document,"pcx86","keyboard"),b=0;bc.length)c=[!1,0,null,null,0,Array(b>2,32768));this.Ub=c[0];this.Ec=c[1];this.ef=c[2];this.Y=c[3];this.fc=c[4]&255;this.Xf=c[4]>>8&255;this.Oa=c[5];this.wg=hp;this.Nc=(this.Oa[jp]<<8)+this.Oa[kp]|0;if(b>=Wn){this.wg=ip;(b=c[6])||(b=[!1,0,Array(lp),0,f==lk?0:mp,0,0,Array(np),0,0, +0,Array(op),0,[this.$a,this.Eb,this.Xc],Array(this.Xc>>2),pp|qp|rp|sp|tp,0,-1,0,-1,0,-1,0,0,0,0,up,vp,0,0,wp,Array(xp)]);this.Je=b[0];this.Td=b[1];this.uc=b[2];this.qh=b[3];this.ff=b[4];this.$f=b[5];this.Wd=b[6];this.Vd=b[7];this.Sj=b[8];this.Tj=b[9];this.Ud=b[10];this.nd=b[11];this.nb=b[12];d=b[13];"number"==typeof d&&(d=[this.$a,this.Eb,d]);this.$a=d[0];this.Eb=d[1];d=this.Xc>>2;if((this.ud=b[14])&&this.ud.length=Wn){var c=[];c[0]=a.Je;c[1]=a.Td;c[2]=a.uc;c[3]=a.qh;c[4]=a.ff;c[5]=a.$f;c[6]=a.Wd;c[7]=a.Vd;c[8]=a.Sj;c[9]=a.Tj;c[10]=a.Ud;c[11]=a.nd;c[12]=a.nb;c[13]=[a.$a,a.Eb,a.Xc];var d;if(d=a.ud){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h>1;f[e++]=k;h=m}f.length=Wn){var d=0,e=0,f=0;switch(b){case Fp:d=Gp;a.Ma==Yn&&(e=Hp);break;case Ip:a.Ma==Wn&&(d=Jp);break;case Kp:d=Lp;a.Ma==Yn&&(e=Mp);break;case Np:d=Op;a.Ma==Yn&&(e=Pp);break;case Qp:d=Rp;a.Ma==Yn&&(f=Sp);break;case Tp:d=Up,a.Ma==Yn&&(f=Vp)}d&&(c|=a.Oa[Wp]&d?256:0,c|=a.Oa[Wp]&e?512:0,c|=a.Oa[Xp]&f?512:0)}return c} +var jp=12,kp=13,hp=18,Fp=6,Wp=7,Gp=1,Op=2,Lp=4,Rp=8,Up=16,Jp=32,Hp=32,Pp=64,Mp=128,Xp=9,Sp=32,Vp=64,Ip=10,Kp=16,Np=18,Qp=21,Tp=24,ip=25,lp=20,mp=1,up=1,np=5,vp=255,wp=0,xp=256,op=9,pp=1024,qp=4096,Bp=65280,rp=0,sp=16,Dp=255,tp=-2147483648,yp=[];yp[2]=pp;yp[3]=pp|qp;yp[16]=1280;yp[512]=rp;yp[1024]=rp|32;yp[1536]=rp|96;yp[2560]=rp|160;yp[3584]=rp|224;yp[768]=rp|sp;yp[4096]=1;yp[8192]=2;yp[24576]=98;yp[40960]=162;yp[57344]=226;var Cp=[]; +Cp[pp]=function(a){a+=this.G;return(this.controller.nb=this.U[a])>>this.controller.mh&255};Cp[pp|16384]=function(a){return(this.controller.nb=this.U[(a&-4)+this.G])>>((a&3)<<3)&255};Cp[pp|qp]=function(a){a+=this.G;var b=this.controller.nb=this.U[a&-2];return(a&1?b>>8:b)&255};Cp[1280]=function(a){a+=this.G;a=this.controller.nb=this.U[a];for(var b=this.controller.yg,c=this.controller.xg&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d}; +Cp[rp]=function(a,b){a+=this.G;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b=b&this.controller.qb|this.controller.nb&~this.controller.qb;b=b&this.controller.Wa|this.U[a]&~this.controller.Wa;this.U[a]!=b&&(this.U[a]=b,this.Da=!0)}; +Cp[rp|32]=function(a,b){a+=this.G;b=b>>this.controller.Ac|b<<8-this.controller.Ac&255;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b=b&this.controller.qb|this.controller.nb&~this.controller.qb;b=b&this.controller.Wa|this.U[a]&~this.controller.Wa;this.U[a]!=b&&(this.U[a]=b,this.Da=!0)}; +Cp[rp|96]=function(a,b){a+=this.G;b=b>>this.controller.Ac|b<<8-this.controller.Ac&255;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b&=this.controller.nb;b=b&this.controller.qb|this.controller.nb&~this.controller.qb;b=b&this.controller.Wa|this.U[a]&~this.controller.Wa;this.U[a]!=b&&(this.U[a]=b,this.Da=!0)}; +Cp[rp|160]=function(a,b){a+=this.G;b=b>>this.controller.Ac|b<<8-this.controller.Ac&255;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b|=this.controller.nb;b=b&this.controller.qb|this.controller.nb&~this.controller.qb;b=b&this.controller.Wa|this.U[a]&~this.controller.Wa;this.U[a]!=b&&(this.U[a]=b,this.Da=!0)}; +Cp[rp|224]=function(a,b){a+=this.G;b=b>>this.controller.Ac|b<<8-this.controller.Ac&255;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b^=this.controller.nb;b=b&this.controller.qb|this.controller.nb&~this.controller.qb;b=b&this.controller.Wa|this.U[a]&~this.controller.Wa;this.U[a]!=b&&(this.U[a]=b,this.Da=!0)};Cp[rp|4]=function(a,b){var c=(a&-4)+this.G;a=(a&3)<<3;b=b<>this.controller.Ac|b<<8-this.controller.Ac&255;b=(b|b<<8|b<<16|b<<24)&this.controller.qb;b=this.controller.Ye&b|this.controller.nb&~b;b=b&this.controller.Wa|this.U[a]&~this.controller.Wa;this.U[a]!=b&&(this.U[a]=b,this.Da=!0)}; +function Y(a,b,c,d,e){t.call(this,"Video",a);var f=this;this.Qc=Ma("Gecko/");var g=["","moz","ms","webkit"];this.ba=a.model;var h=Zp[this.ba]||Zp.mda;this.Ma=h[0];this.Xc=a.memory||0;this.cd=a.switches;this.aa=a.mode;if(null==this.aa||null==$p[this.aa])this.aa=h[1];this.Gb=a.charCols;this.lc=a.charRows;if(void 0===this.Gb||void 0===this.lc)this.Gb=$p[this.aa][0],this.lc=$p[this.aa][1];this.W=a.screenWidth;this.fa=a.screenHeight;this.Sc=a.scale;this.rd=12<=Math.round(this.W/this.Gb);this.M=b;this.J= +c;this.D=(this.If=d)||b||null;this.Wb=a.screenColor||"black";this.Vc=(1-(a.flicker||0)).toString();this.Bb=!1;b&&(b.style.backgroundColor=this.Wb);e&&(e.style.backgroundColor=this.Wb);b=a.smoothing;(c=Na("smoothing"))&&(b="true"==c);if(null!=b)for(c=0;c=Wn&&(sc(b,this,iq),uc(b,this,jq));this.Ma==Yn&&(sc(b,this,kq),uc(b,this,lq));if((this.C=Cb(a,"Keyboard"))&&this.M){for(var f in this.ja)0c&&(a=Math.round(c/b*100)+"%")}d.Qc?(d.M.style.width=a,d.M.style.width=a,d.M.style.display="block",d.M.style.margin="auto"):(d.Ba.style.width=a,d.Ba.style.height="auto");d.Ba.style.backgroundColor=d.Wb;d.jb()}d.D&&d.D.focus()}}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.td= +c.textContent,this.D&&this.D.Nd?c.onclick=function(){d.Nd(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){qq(d,!0)},!0}return!1};function bq(a,b){!b&&a.Ba&&(a.Qc?a.M.style.width=a.M.style.height="":a.Ba.style.width=a.Ba.style.height="");a.C&&(a.C.qg=b)}l.Nd=function(a){var b=!1;this.D&&(a?this.D.Nd&&(this.D.Nd(),this.K&&this.K.Ze(!0),b=!0):this.D.A&&(this.D.A(),this.K&&this.K.Ze(!1),b=!0),this.D&&this.D.focus());return b}; +l.Ze=function(a){this.K&&(this.K.Ze(a),this.C&&(this.C.qg=a));var b=this.ja.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.td)};function mq(a,b){var c=a.D;c&&!a.rc&&(c.addEventListener("touchstart",function(b){rq(a,b,!0)},!1),c.addEventListener("touchmove",function(b){rq(a,b)},!0),c.addEventListener("touchend",function(b){rq(a,b,!1)},!1),a.rc=b,a.kb=a.ob=a.ed=-1,a.kc=!1,a.zb=null,a.jc=!1,a.sd=function(){a.jc=!0;a.K.je(sq,!0)})}l.Uf=function(a){this.C&&this.C.Uf(a)}; +function rq(a,b,c){var d,e,f=0,g=0;d=a.M;do isNaN(d.offsetLeft)||(f+=d.offsetLeft,g+=d.offsetTop);while(d=d.offsetParent);var h=a.W/a.M.offsetWidth,k=a.fa/a.M.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(a.rc==oq)c&&qo(a.C,tq[e/(a.fa/3)|0][d/(a.W/3)|0],!0);else if(a.K){g=a.kc;f=b.timeStamp-a.ed;!0===c?(a.kc=500f){a.K.je(sq,!0);a.K.je(sq,!1);return}}if(c||0>a.kb||0>a.ob)a.kb=d,a.ob=e;c=Math.round(d-a.kb);b=Math.round(e-a.ob);a.kb=d;a.ob=e;a.K.ug(c,b,a.kb,a.ob)}}l.Pb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Ob=function(a){return a?this.save():!0}; +l.reset=function(){var a=!0,b=0;this.V&&(b=+kk(this.V,Dj,void 0));this.ba||(this.Ma=b==lk?fq:cq);this.aa=uq;switch(this.Ma){case Yn:b=7;break;case Wn:var c=vq[this.sb];c&&(b=c[0]);b||(b=4);break;case fq:b=lk;this.aa=wq;break;default:b=2}this.ca!==b&&(this.ca=b,a=!0);this.B=null;this.O=this.Tb=new fp(this,fq);this.I=this.Ab=new fp(this,cq);this.Ma>1&255,d=d>>8&~Aq,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?Bq|Cq:Dq|Eq)|Fq&d>>8);qc(this.na,b,c|d<<8)}qq(this,!0)}};function xq(a){a.A.ff&mp?(a.O=a.Tb,a.I=a.A):(a.O=a.A,a.I=a.Ab)}l.save=function(){var a=new Ye(this);a.set(0,Ap(this.Tb));a.set(1,Ap(this.Ab));a.set(2,[this.ca,this.aa,this.pa]);a.set(3,Ap(this.A));return a.data()}; +l.restore=function(a){var b=a[2];this.ca=b[0];this.aa=b[1];this.pa=b[2];this.B=null;this.O=this.Tb=new fp(this,fq,a[0]);this.I=this.Ab=new fp(this,cq,a[1]);this.A=new fp(this,this.Ma,a[3],this.Xc);this.A.Ub&&xq(this);yq(this);if(!Gq(this))return!1;Hq(this);return!0}; +function pq(a,b,c,d){if(d)a.va("Unable to load font ROM (error "+d+": "+b+")",0>d);else{$a(a.Zd,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){r("Empty font ROM: "+b);return}if(1==f.length){r(f[0]);return}if(8192==f.length)Xn(a,f,[6144,0]);else if(2048==f.length)Xn(a,f,[0]);else{a.va("Unrecognized font data length ("+f.length+")");return}}catch(g){a.va("Font ROM data error: "+g.message);return}(a.J||a.Ea)&&tb(a)}} +function Iq(a,b){if(1==b)return a.ea[0]=Jq[Dq],a.ea[1]=Jq[Bq],a.ea;if(2==b){var c=a.B.ef;if(a.B===a.A){var d=a.A.uc[0],c=d&7;d&16&&(c|=8);18!=a.A.uc[1]&&(c|=32)}a.ea[0]=Jq[c&15];c=c&32?Kq:Lq;for(d=0;de;e++)f=d[e]||0,g=f<<2&252,h=f>>4&252,f=f>>10&252,a.ea[e]=[g,h,f,255];else{var k=d&&d[255];b=null!=c.uc[15]?c.uc:Mq;for(e=0;16>e;e++)f=b[e]&63,k?(f|= +(c.uc[20]&12)<<4,c.uc[16]&128&&(f&=-49,f|=(c.uc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.ea[e]=[g,h,f,255]}a.Ha=!0}return a.ea}function Xn(a,b,c,d){a.rb=b;a.Za=c;a.Fa=d} +function yq(a,b){var c=!1;if(window&&a.rb&&(!b||a.G)){var d=0,e=a.Fa?a.Fa:8,f=Iq(a);null!=a.Za[0]&&Nq(a,Oq,a.Za[0],d,e,8,a.rb,f)&&(c=!0);d=a.Fa?0:2048;e=a.Fa?a.Fa:9;null!=a.Za[1]&&(Nq(a,Pq,a.Za[1],d,e,14,a.rb,Qq,Rq)&&(c=!0),a.Fa&&Nq(a,a.Ma,a.Za[1],0,a.Fa,14,a.rb,f)&&(c=!0))}b||(a.X=-1,a.ya=-1,a.ta=0);return c}function Nq(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&(Sq(a,b,c,d,e,f,g,h,k)&&(m=!0),a.rd&&Sq(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m} +function Sq(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,y=a.qa[b],w=16>h.length?h.length:16;y||(y={pc:e<oc||!X?oc:8,$h=Sm.createImageData(m.pc,m.qc);for(Lb=0;256>Lb;Lb++){for(pc=0;pc=oc-2,Xt=ne[pc>(8<=qd&&192<=Lb&&223>=Lb?7:qd)?z:Zh;Tq($h,Tm,Um,Vm);ba&&Tq($h,Tm+1,Um,Vm)}Sm.putImageData($h,(Lb&15)*m.pc,(Lb>>4)*m.qc)}m.be[E]="#"+pa(z[0],2)+pa(z[1],2)+pa(z[2],2);m.Yh[E]=z;m.jg[E]=Sf;m=!0}}a.qa[b]=y;return m}function Uq(a){0a.ya&&(a.ya=0):a.ya=-1} +function Hq(a){if(a.G){for(var b=10;15>=b;b++)if(null==a.B.Oa[b])return;var c=a.B.Oa[10],b=c&31,d=a.B.Oa[11]&31,e=a.B.Oa[9]&31,f=!1;a.B===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Vq(a);else{c=a.B.Oa[15]+((a.B.Oa[14]&63)<<8);a.X!=c&&(Vq(a),a.X=c);d=d-b+1;if(a.od!=b||a.Oc!=d)a.od=b,a.Oc=d;a.ua=e+1;Uq(a)}}}function Vq(a){if(0<=a.X){if(void 0!==a.L){var b=Wq<<8,c=a.L[a.X];if(c&b){var c=c&~b,b=a.X%a.F,d=a.X/a.F|0;a.G&&a.qa[a.G]&&(a.Ca&&Xq(a,b,d,c,a.Ca),Xq(a,b,d,c));a.L[a.X]=c}}a.X=-1}} +function Yq(a){var b,c=a.B;a.Pc=!1;var d=c.nd[5];if(null!=d){b=pp;var e=rp,f=c.nd[3]&31;switch(d&3){case 0:if(f){e=rp|32;switch(f&24){case 8:e=rp|96;break;case 16:e=rp|160;break;case 24:e=rp|224}c.Ac=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.Ma==Yn&&(e=3,c.Ac=f&7)}d&8&&(b=1280);c=c.Vd[4];null!=c&&(c&4||(b|=qp,e|=sp),d&64&&(c&8&&(b|=16384,e|=4),a.Pc=!0));b|=e}return b} +function Zq(a,b){var c=a.B;return c&&null!=b&&b!=c.vg?(c.bg(b),a.na.bg(c.$a,c.Eb,c.sg(),!0),!0):!1} +function Gq(a,b){var c,d=a.pa,e=a.B;if(e)if(e.Ma==fq)d=wq;else if(e.Ma>=Wn){var d=null,f=e.Xc>>2,g=32768=e.Oa[Np]?dr:er:fr:g&128|| +350>f?d=m?gr:hr:480<=f&&(d=a.ca==lk?ir:jr):d=m?7-d:kr:d-=m?2:0);c=Yq(a)}}else e.Ec&8?(e.Ec&2?(d=e.Ec&16?kr:lr,e.Ec&4||--d):(d=e.Ec&1?uq:mr,e.Ec&4&&--d),a.Bb&&(a.M.style.opacity="1",a.Bb=!1)):!a.Bb&&1>+a.Vc&&(a.Bb=!0,a.M.style.opacity=a.Vc,e=a.S,e.jc-=e.A,e.A=0,e.R.te=0,Wc(e));else a.pa=null,null==d&&(d=a.aa);if(!zq(a,d,b))return!1;Zq(a,c);return!0} +function zq(a,b,c){if(null!=b&&(b!=a.pa||c)){a.pd=0;a.pa=b;a.Ha=!1;b=a.B||(b==wq?a.O:a.I);if(b!=a.B||b.$a!=a.$a||b.Eb!=a.Eb){Vq(a);if(a.$a){if(!gc(a.na,a.$a,a.Eb))return!1;a.B&&(a.B.Ub=!1)}a.B=b;b.Ub=!0;a.$a=b.$a;a.Eb=b.Eb;if(!Wb(a.na,b.$a,b.Eb,3,b===a.A?b:null))return!1}a:{a.G=0;a.F=a.Gb;a.H=a.lc;a.Sa=a.F;a.Db=$p[wq][2];b=0;if(c=$p[a.pa])a.F=c[0],a.H=c[1],a.Db=c[2],b=c[3],a.G=c[4],4!=a.ca&&7!=a.ca||a.B!==a.A||a.G!=Oq||(7==(a.A.Oa[Xp]&31)?a.H=350>Ep(a.A,Np)?43:50:a.G=a.Ma);a.Uc=a.F*a.H|0;a.Tc=a.Uc/ +a.Db|0;a.bb=a.Tc;a.Vb=0;void 0!==b&&(a.bb=(a.bb<<1)+b|0,a.Vb=a.bb+b>>1);if(a.qa.length){a.ka=a.W/a.F|0;a.ma=a.fa/a.H|0;if(a.G){b=a.qa[a.G];if(!b)break a;c=a.qa[a.G<<1];a.Sc&&80==a.F?c&&a.ka>=3*c.pc>>2&&(a.G<<=1,b=c):(c&&a.ka>=c.pc&&(a.G<<=1,b=c),a.Sc||(a.ka=b.pc,a.ma=b.qc));a.cb=a.eb=0;b&&(a.cb=a.F*b.pc,a.eb=a.H*b.qc)}else a.ka=a.ma=1,a.cb=a.F,a.eb=a.H;a.Ka=a.J.createImageData(a.cb,a.eb);a.Aa=document.createElement("canvas");a.Aa.width=a.cb;a.Aa.height=a.eb;a.Ca=a.Aa.getContext("2d");a.tc=a.Dc=0; +a.cc=a.W;a.dc=a.fa;b=a.W-a.F*a.ka;c=a.fa-a.H*a.ma;0>1,a.cc-=b);0>1,a.dc-=c);if(b||c)a.J.fillStyle=a.M.style.backgroundColor,a.J.fillRect(0,0,a.W,a.fa)}}nr(a,!0);qq(a)}return!0}function Tq(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function or(a){a.ta=-1;a.ia=!1;var b=a.Tc;if(void 0===a.L||a.L.length!=b)a.L=Array(b)}function nr(a,b){b||(a.Ha=!1);or(a)} +function Xq(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.qa[a.G];h.Fe&&(d=h.Fe[d]);var k=g>>4&15;h.Fe&&(k=h.Fe[k]);e?(b*=h.pc,c*=h.qc,e.fillStyle=h.be[k],e.fillRect(b,c,h.pc,h.qc)):(b=b*a.ka+a.tc,c=c*a.ma+a.Dc,a.J.fillStyle=h.be[k],a.J.fillRect(b,c,a.ka,a.ma));g&pr&&(k=(f&15)*h.pc,f=(f>>4)*h.qc,e?e.drawImage(h.jg[d],k,f,h.pc,h.qc,b,c,h.pc,h.qc):a.J.drawImage(h.jg[d],k,f,h.pc,h.qc,b,c,a.ka,a.ma));g&Wq&&(f=a.od,g=a.Oc,e?(a.ua&&a.ua!==h.qc&&(f=f*h.qc/a.ua|0,g=g*h.qc/a.ua|0),e.fillStyle=h.be[d],e.fillRect(b, +c+f,h.pc,g)):(a.ua&&a.ua!==a.ma&&(f=f*a.ma/a.ua|0,g=g*a.ma/a.ua|0),a.J.fillStyle=h.be[d],a.J.fillRect(b,c+f,a.ka,g)))} +function qq(a,b){if(a.Z.Zb){var c=!1,d=a.B;d&&(d!==a.A?d.Ec&8&&(c=!0):d.Td&32&&(c=!0));if(c||b){if(b)or(a);else if(void 0===a.L)return;var e=!1;!(b||++a.pd&15)&&0<=a.ya&&(a.ya++,e=!0);var f=0,g=a.Uc,h=a.$a,c=h,k=c+a.Eb;a.pa>=dr&&(h=c=655360,k=c+65536);if(qr(a,d)&8||d.ve&&d.ve=Wn&&d.Oa[19]&&d.Oa[19]<<1!=d.Oa[1]+1&&(a.Sa=d.Oa[19]<<(a.G?1:d.Oa[20]&64?3:4),m=(a.Sa*(a.H-1)+a.F)/a.Db|0,a.pa<=wq&&(m<<= +1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.ia){b=a.na;for(var p=!0,y=c>>>b.B;0f)return;g=f+1}}if(a.G){if(a.qa[a.G]){d=f;f=0;e=a.ta=0;h=pr<<8;b=1048575;p=a.B.Ec&32;a.Ma>=Wn&&(p=a.B.uc[16]&8);m=a.X-a.B.Nc;p&&(e=Aq<<8,b&=~e,a.ya&2||(b&=~h));for(c+=d<<1;c>8|(w&255)<<8;var ca=e,X=16;m>=h))>>(X-=h);Tq(a.Ka,m++,p,b[oc])}m>z&&(z=m);p=ba&&(ba=p+1)}k+=2;d++;if(m>=a.F){m=0;p+=2;if(p>a.H)break;p==a.H&&(p=1,k=c+a.Vb)}}a.ia=!0; +ya.F?a.Sa-a.F-w>>3:0;c>=8;b>y&&(y=b);m=E&&(E=m+1)}c+=ba;if(b>=a.F){b=0;if(++m>a.H)break;c+=ca}}w||(a.ia=!0);pa.F?a.Sa-a.F-E>>3:0;cca&&(X=ca)):(w<<=E,X-=E,a.ia=!1):(a.ia&&w===a.L[d]?(h+=X,X=0):a.L[d]=w,d++);if(X){hp&&(p=h);b=z&&(z=b+1)}if(h>=a.F){h=0;if(++b>a.H)break;c+=ba}}E||(a.ia=!0);ma&&(b.Dg=a,a=-a|0);a%b.zg>b.Xl&&(c|=1);a%b.Cg>b.Zl&&(c|=9);b.nh=a/b.Cg|0;return c}l.ql=function(){var a=this.O,b;a.Ub&&(b=a.fc);return b};l.Nm=function(a,b){a=this.O;a.Xf=a.fc;a.fc=b&31};l.pl=function(){return sr(this.O)};l.Mm=function(a,b){tr(this,this.O,b)};l.rl=function(){return this.O.Ec};l.Om=function(a,b){this.O.Ec=b;Gq(this,!1)};l.sl=function(){return ur(this,this.O)}; +l.Jj=function(a,b){this.A.$f=this.A.$f&-4|b&3};l.Pk=function(){return this.A.Td};l.kk=function(){return this.A.uc[this.A.Td&31]};l.Ij=function(a,b){a=this.A;var c=a.Td&32;if(a.Je){a.Je=!1;var d=a.Td&31;if(16<=d||!c)if(vr||a.uc[d]!==b)a.uc[d]=b,nr(this,!1)}else a.Td=b,a.Je=!0,b&32&&!c&&yq(this,!0)&&qq(this,!0),b=(a.Oa[jp]<<8)+a.Oa[kp]|0,a.Nc!=b&&(a.Nc=b,nr(this)),a.ve=0}; +l.Cl=function(){var a=0;if(this.Ma==Wn)a=3-((this.A.ff&12)>>2),a=(this.sb&1<>this.A.vc&63;this.A.vc+=6;12Missing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth* +d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight),c.onresize(null));var f=+(d.aspect||Na("aspect"));f&&.3<=f&&3.33>=f&&(Qa("onresize",function(a,b,c){return function(){b.style.height=(a.clientWidth/c|0)+"px"}}(c,e,f)),window.onresize());c.appendChild(e);f=document.createElement("textarea");Ma("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"),f.style.fontSize="16px");c.appendChild(f);var g=e.getContext("2d"),d=new Y(d,e,g,f,c);gb(d,c)}}); +function wr(a){t.call(this,"ParallelPort",a);this.G=a.adapter;switch(this.G){case 1:this.D=956;this.C=7;break;case 2:this.D=888;this.C=7;break;case 3:this.D=632;this.C=5;break;default:r("Unrecognized parallel adapter #"+this.G);return}this.A=this.B=null;a=a.binding;"console"==a?this.B="":eb(this,a,xr)}da(wr,t);l=wr.prototype;l.yb=function(a,b,c){switch(b){case xr:return this.ja[b]=this.A=c,!0}return!1}; +l.ic=function(a,b,c,d){this.na=b;this.S=c;this.Ea=d;this.V=Cb(a,"ChipSet");sc(b,this,yr,this.D);uc(b,this,zr,this.D);tb(this)};l.Pb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Ob=function(a){return a?this.save():!0};l.reset=function(){Ar(this)};l.save=function(){var a=new Ye(this),b=0,c=[];c[b++]=this.F;c[b++]=this.Cb;c[b]=this.He;a.set(0,c);return a.data()};l.restore=function(a){return Ar(this,a[0])}; +function Ar(a,b){var c=0;b||(b=[0,0,0]);a.F=b[c++];a.Cb=b[c++];a.He=b[c];return!0}l.dl=function(){return this.F};l.Bl=function(){return this.Cb};l.$k=function(){return this.He};l.zm=function(a,b){this.F=b;this.Cb|=Br;a=!1;this.A&&(8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0);if(null!=this.B){if(10==b||1024<=this.B.length)this.ub(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}a&&(this.Cb&=~Br);Cr(this)}; +l.um=function(a,b){this.He=b;Cr(this)};function Cr(a){a.V&&a.C&&(a.He&Dr&&!(a.Cb&Br)?Of(a.V,a.C):Mf(a.V,a.C))}var xr="buffer",Br=64,Dr=16,yr={0:wr.prototype.dl,1:wr.prototype.Bl,2:wr.prototype.$k},zr={0:wr.prototype.zm,2:wr.prototype.um};Ra(function(){for(var a=hb(document,"pcx86","parallel"),b=0;b=b)a.preventDefault&&a.preventDefault(),64");if(2==c.length){var d=va(c[0]);if(d!=this.Be)return;c=va(c[1]);if(this.C=kb(c)){var e=this.C.exports;if(e){var f=e.connect;f&&f.call(this.C,this.O);if(this.aa=e.receiveData){this.O=a;this.W=e.receiveStatus;this.status("Connected "+this.Zd+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}}; +l.Pb=function(a,b){if(!b)if(this.zi(this.O),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Ob=function(a){return a?this.save():!0};l.reset=function(){Kr(this)};l.save=function(){var a=new Ye(this),b=0,c=[];c[b++]=this.ea;c[b++]=this.ia;c[b++]=this.K;c[b++]=this.M;c[b++]=this.F;c[b++]=this.I;c[b++]=this.X;c[b++]=this.B;c[b++]=this.A;c[b]=this.H;a.set(0,c);return a.data()};l.restore=function(a){return Kr(this,a[0])}; +function Kr(a,b){var c=0;b||(b=[0,0,Lr,0,Mr,0,0,Nr|Or,a.pa,[]]);a.ea=b[c++];a.ia=b[c++];a.K=b[c++];a.M=b[c++];a.F=b[c++];a.I=b[c++];a.X=b[c++];a.B=b[c++];a.A=b[c++];a.H=b[c];return!0}l.df=function(a){if("number"==typeof a)this.H.push(a);else if("string"==typeof a)for(var b=0;b>8:this.M};l.ll=function(){return this.F};l.ml=function(){return this.I};l.ol=function(){return this.X};l.nl=function(){return this.B};l.tl=function(){var a=this.A;this.A&=~(Qr|Rr);return a}; +l.Wm=function(a,b){if(this.I&Ur)this.K=this.K&-256|b;else{this.ia=b;this.B&=~(Nr|Or);a=!1;this.aa&&this.aa.call(this.C,b)&&(a=!0);if(this.D){if(13==b)this.J=0;else if(8==b)this.D.value=this.D.value.slice(0,-1),0":String.fromCharCode(b);a=c.length;32>b&&1==a&&(a=0);9==b&&(b=this.ma||8,a=b-this.J%b,this.ma&&(c=" ".slice(0,a)));this.ka&&!this.J&&a&&(c=String.fromCharCode(this.ka)+c);this.D.value+= +c;this.D.scrollTop=this.D.scrollHeight;this.J+=a}a=!0}else if(null!=this.G){if(10==b||1024<=this.G.length)this.ub(this.G),this.G="";10!=b&&(this.G+=String.fromCharCode(b));a=!0}a&&(this.B=this.B|Nr|Or)}};l.Jm=function(a,b){this.I&Ur?this.K=this.K&255|b<<8:this.M=b};l.Km=function(a,b){this.I=b};l.Lm=function(a,b){a=b^this.X;this.X=b;a&(Vr|Wr)&&this.W&&(a=0,this.O?(a|=b&Wr?32:0,a|=b&Vr?320:0):(a|=b&Wr?16:0,a|=b&Vr?1048576:0),this.W.call(this.C,a))}; +function Sr(a){var b=-1;a.B&Tr&&a.M&Xr?b=Yr:a.A&(Qr|Rr)&&a.M&Zr&&(b=$r);0<=b?(a.F&=~(Mr|as),a.F|=b,a.V&&a.L&&Of(a.V,a.L,100)):(a.F|=Mr,a.V&&a.L&&Mf(a.V,a.L))}var Hr="buffer",Lr=384,Xr=1,Zr=8,Mr=1,Yr=4,$r=0,as=6,Ur=128,Vr=1,Wr=2,Tr=1,Nr=32,Or=64,Qr=1,Rr=2,Fr=16,Gr=32,Ir={0:Er.prototype.yl,1:Er.prototype.kl,2:Er.prototype.ll,3:Er.prototype.ml,4:Er.prototype.ol,5:Er.prototype.nl,6:Er.prototype.tl},Jr={0:Er.prototype.Wm,1:Er.prototype.Jm,3:Er.prototype.Km,4:Er.prototype.Lm}; +Ra(function(){for(var a=hb(document,"pcx86","serial"),b=0;ba.F||0>a.G)a.F=b.screenX,a.G=b.screenY;a.L?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.screenX-a.F,d=b.screenY-a.G);a.F=b.screenX;a.G=b.screenY;a.ug(c,d,a.F,a.G)}} +l.je=function(a,b){if(this.Ub&&this.S&&this.S.Z.vb)switch(a){case sq:this.J!=b&&(this.J=b,hs(this));break;case is:this.K!=b&&(this.K=b,hs(this))}};l.ug=function(a,b){this.Ub&&this.S&&this.S.Z.vb&&(a||b)&&(this.H=a,this.I=b,hs(this))};function hs(a){a.D.df([64|(a.J?32:0)|(a.K?16:0)|(a.I&192)>>4|(a.H&192)>>6,a.H&63,a.I&63]);a.H=a.I=0} +l.ik=function(a){var b=1048592==(a&1048592);if(b){if(!this.Ub){var c=!1;this.A&16||(this.reset(),c=!0);this.A&1048576||(c=!0);c&&this.D.df([js,js]);cs(this);this.Ub=b}}else this.Ub&&(ds(this),this.Ub=b);this.A=a};var js=77,sq=0,is=2;Ra(function(){for(var a=hb(document,"pcx86","mouse"),b=0;b>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.hb);for(c=0;cb.indexOf("/api/v1/dump")&&(a=ra(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=rs(this,b),this.Ff=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"): +sa(b,"/")&&(c="dir"),f=Ga()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.ne?"":d)+"&format=json"));var k="Loading "+f+"...";return!!Fa(f,null,!0,function(a,b,c){ss(g,a,b,c)},function(){g.ub(k,qb.ae)})}; +function ss(a,b,c,d){var e=null;a.qe=!1;var f=!(!(0>d&&a.oa)||a.oa.Z.Zb);if(a.Ff)d?a.va('Unable to connect to disk "'+a.F+'" (error '+d+": "+c+")",f):(a.C=!0,e=a);else if(d)a.va('Unable to load disk "'+a.Rc+'" (error '+d+": "+b+")",f);else{$a(a.controller.Zd,b,c);try{if(0g&&0c.indexOf("0x")&& +'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)r(h[0]);else{a.hb=h.length;a.Ya=h[0].length;a.Va=h[0][0].length;var k=h[0][0][0];a.mb=k&&k.length||512;for(d=c=0;d>2,p=k.pattern;void 0===p&&(p=k.pattern=0);var y=k.data;if(void 0===y){var w=k.bytes;if(void 0!==w&&w.length){for(var z=m<<2,E=w.length;E< +z;E++)w[E]=p;ts(k,w,0)}else k.data=y=[],w&&(k.pattern=p|p<<8|p<<16|p<<24);delete k.bytes}qs(k,d,f);for(z=0;zg)break;e|=g<b&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}l.read=function(a,b){var c=-1;if(a&&b>2,c=(d>((b&3)<<3)&255;return c}; +l.write=function(a,b,c){if(this.qe)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.xc?f=a.Mc+a.xc&&(a.xc+=f-(a.Mc+a.xc)+1):(a.Mc=f,a.xc=1);d[f]=d[f]&~(255<=this.A.length||k>=this.A[h].length||m>=this.A[h][k].length){c="sector (CHS="+h+":"+k+":"+m+") out of range ("+ +b+" changes applied)";b=-1;break}if(this.qe){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][m]){for(k=h.data.length;kb&&-2!=b&&this.va("Unable to restore disk '"+this.Rc+": "+c);return b}; +l.toJSON=function(){var a;a=0;for(var b;b=us(this,a++);)Cs(b);a=JSON.stringify(this.A,function(a,b){if("file"!=a)return b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")}; +function Cs(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}var ls=0;function Ds(a){t.call(this,"FDC",a);this.dmaRead=Ds.prototype.ck;this.dmaWrite=Ds.prototype.dk;this.dmaFormat=Ds.prototype.tk;this.M=Es(a.autoMount);this.K=a.sortBy||"name";"none"==this.K&&(this.K=null);this.B=[];this.L=!Ma("Mobi")&&window&&"FileReader"in window;this.exports={loadDisk:this.Di}}da(Ds,t);l=Ds.prototype; +l.yb=function(a,b,c){var d=this;switch(b){case "listDisks":this.ja[b]=c;if(this.K){b=[];for(a=0;a'+b+"");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.ja[b]=c,c.onchange=function(){var a=oa(c.value,10);null!=a&&Fs(d,a)},!0;case "loadDisk":return this.ja[b]=c,c.onclick=function(){d.Di()},!0;case "saveDisk":if(!this.L){c.parentNode.removeChild(c);break}this.ja[b]=c;c.onclick=function(){var a=d.ja.listDrives;a&&a.options&&d.A&&((a=d.A[oa(a.value,10)||0])?(a=a.sa)?(a=Pa(Bs(a),"octet-stream",!0,a.sh.replace(".json", +".img")),r(a)):d.va("No diskette loaded in drive."):d.va("No diskette drive selected."))};return!0;case "mountDisk":if(this.L)return this.ja[b]=c,c.onchange=function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length},c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Gs(d,qa(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; +l.ic=function(a,b,c,d){this.na=b;this.S=c;this.Ea=d;this.oa=a;this.V=Cb(a,"ChipSet");Es(Tc(this.oa,"autoMount"),this.M);Hs(this);sc(b,this,Is);uc(b,this,Js);Ks(this,"None","",!0);this.L&&Ks(this,"Local Disk","?");Ks(this,"Remote Disk","??");Ls(this)||tb(this)};function Es(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){r("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a} +l.Pb=function(a,b){if(!b){if(!a){if(this.reset(),this.oa.V){this.B=[];for(a=0;ag.sa.restore(z)&&(h=!1);h&&g.sa&&void 0!==g.Pa&&(g.Ra=g.sa.seek(g.wb,g.Ta,g.ab));h||(e=!1)}a.H=b[c++]||0;a.F=b[c]||Ts;return e} +function Ns(a){var b=0,c=[];c[b++]=a.La;c[b++]=0;c[b++]=a.Y;c[b++]=a.G;c[b++]=a.D;c[b++]=a.C;c[b++]=a.I;for(var d=b++,e=0,f=[],g=0;gRs(a,e,b,c,!1,d);){if(!window.confirm("Click OK to reload the original disk and discard any changes."))return!1;var f=a,g=c,h;for(h=0;ha.hb||f[1]>a.Ya)&&(this.va('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.La)),b=null);b?(a.sa=b,a.Uj=c,a.Xd=d,Vs(this,d)||Ks(this,c,d),Ss(this,c,d,b),f=b.info(),this.H|=Ws,this.va('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.La),a.Ld||e),a.Of=f[0],a.Re=f[1],a.Se=f[2],this.oa&&fd(this.oa)):a.me=!1;a.Ld&&(a.Ld=!1,--this.J||tb(this));Fs(this,a.La)}; +function Ks(a,b,c,d){if((a=a.ja.listDisks)&&a.options){for(var e=0;e=this.C&&(this.Y&=~(Zs|$s),this.D=this.C=0);return a}; +l.Bm=function(a,b){this.C=bt[a].hd){b=!1;this.D=0;a=ct(this);var c,d,e,f,g,h=a&at;switch(h){case dt:ct(this);ct(this);et(this);break;case ft:d=ct(this);this.La=d&3;c=this.A[this.La];et(this);gt(this,(c.ib&ht)>>>24);break;case it:case jt:d=ct(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];c.Ta=b;d=c.wb=ct(this);e=ct(this);f=c.ab=ct(this);g=ct(this);c.tb=128<>2&1;this.La=d&3;c=this.A[this.La];d=c.wb;e=c.Ta=b;f=c.ab= +1;g=0;c.ib=mt;c.sa&&(c.Ra=c.sa.seek(c.wb,c.Ta,c.ab))?g=c.Ra.length>>8:c.ib=kt|lt;ot(this,c,a,b,d,e,f,g);b=!0;break;case vt:d=ct(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];d=c.wb;e=c.Ta=b;f=1;g=ct(this);c.tb=128<>2&1,d=ct(this),c.wb+= +d-c.wd,0>c.wb&&(c.wb=0),c.wb>=c.hb&&(c.wb=c.hb-1),c.wd=d,c.ib=qt,c.wb||(c.ib|=rt),et(this),b=!0}0>>8);gt(a,(b.ib&yt)>>>16);var k=0;if(e!=b.wb||f!=b.Ta)k=g=1;c&zt&&(f^=k,d||(k=0));gt(a,e+k);gt(a,f);gt(a,g);gt(a,h)}function ct(a){var b=a.G[a.D];a.D++;return b} +function et(a){a.D=a.C=0}function gt(a,b){a.G[a.C++]=b}l.ck=function(a,b,c){void 0===b||0>b?this.we(a,c):c(-1,!1)};l.dk=function(a,b){return void 0!==b&&0<=b?At(a,b):-1};l.tk=function(a,b){if(void 0!==b&&0<=b)a:if(a.ib)a=-1;else{a.Hc[a.ie++]=b;if(a.ie==a.Hc.length){a.wb=a.Hc[0];a.Ta=a.Hc[1];a.ab=a.Hc[2];a.tb=128<At(a,a.bi)){a=-1;break a}a.zf++}a.zf>=a.xd&&(b=-1);a=b}else a=-1;return a}; +l.we=function(a,b){var c=-1,d=null,e=0;if(!a.ib&&a.sa){do{if(a.Ra&&(e=a.Pa,0<=(c=a.sa.read(a.Ra,a.Pa++)))){d=a.Ra;break}a.Ra=a.sa.seek(a.wb,a.Ta,a.ab);if(!a.Ra){a.ib=Bt|lt;break}a.Pa=0;Ct(a)}while(1)}b(c,!1,d,e)};function At(a,b){if(a.ib||!a.sa)return-1;do{if(a.Ra&&a.sa.write(a.Ra,a.Pa++,b))break;a.Ra=a.sa.seek(a.wb,a.Ta,a.ab);if(!a.Ra){a.ib=Dt|lt;b=-1;break}a.Pa=0;Ct(a)}while(1);return b}function Ct(a){a.ab++;a.ab>=a.Se+1&&(a.ab=1,a.Ta++,a.Ta>=a.Re&&(a.Ta=0,a.wb++))} +var Qs="Floppy Drive",Xs=4,Ys=8,$s=16,Zs=64,Os=128,dt=3,ft=4,it=5,jt=6,pt=7,st=8,ut=10,vt=13,wt=15,at=31,zt=128,mt=0,kt=8,qt=32,lt=64,Ps=192,tt=255,nt=512,Bt=1024,Dt=8192,xt=65280,yt=16711680,rt=268435456,ht=-16777216,Ws=128,Ts=0;aa={}; +var bt={3:{hd:3,yd:0,name:aa.Fo},4:{hd:2,yd:1,name:aa.Do},5:{hd:9,yd:7,name:aa.Ko},6:{hd:9,yd:7,name:aa.zo},7:{hd:2,yd:0,name:aa.Bo},8:{hd:1,yd:2,name:aa.Eo},10:{hd:2,yd:7,name:aa.Ao},13:{hd:6,yd:7,name:aa.vo},15:{hd:3,yd:0,name:aa.Co}},Is={1009:Ds.prototype.fl,1012:Ds.prototype.hl,1013:Ds.prototype.el,1015:Ds.prototype.gl},Js={1010:Ds.prototype.Cm,1013:Ds.prototype.Bm,1015:Ds.prototype.Am}; +Ra(function(){for(var a=hb(document,"pcx86","fdc"),b=0;bk.sa.restore(g)&&(z=!1),z&&void 0!==k.Pa&&(k.Ra=k.sa.seek(k.Fd,k.Ta,k.ab+k.xf)));z||(e=!1);null!=a.W&&1>=d&&(a.W|=(f.type&3)<<(1-d<<1))}0<=a.La&& +(a.B=a.A[a.La]);return e} +function Lt(a){var b=0,c=[];a.L?(c[b++]=a.H,c[b++]=a.ta,c[b++]=a.I,c[b++]=a.ea,c[b++]=a.ca,c[b++]=a.aa,c[b++]=a.O,c[b++]=a.Y,c[b++]=a.fa,c[b++]=[a.K,a.La]):(c[b++]=a.W,c[b++]=a.Y,c[b++]=a.G,c[b++]=a.D,c[b++]=a.C,c[b++]=a.qa,c[b++]=a.pa,c[b++]=a.ma,c[b++]=a.M);for(var d=0,e=[],f=0;f=this.C&&(this.D=this.C=0,this.Y&=~(Ut|Vt|Yt));return a};l.Ym=function(a,b){this.C=a&&(this.Y|=Ut,this.Y&=~$t,au(this))};l.Il=function(){var a=this.Y;this.D=a.B.mb?(a.Y=cu,a.we(a.B,function(b){0<=b?(du(a),a.V&&a.V.ba==Tj&&(a.Y=0),a.Y=a.Y|Mt|eu|fu):(a.Y=gu,a.H=hu)},!1)):a.Y=Mt|eu));return b}l.gk=function(){return bu(this)|bu(this)<<8}; +function iu(a,b){a.B&&a.B.tb>=a.B.mb&&(0>ju(a.B,b)?(a.Y=gu,a.H=hu):(1==a.B.Pa||a.B.Pa==a.B.mb)&&1=a.B.mb&&(a.Y|=fu)))}l.im=function(a,b){iu(this,b&255);iu(this,b>>8&255)};l.Ok=function(){return this.H};l.nm=function(a,b){this.ta=b};l.Qk=function(){return this.I};l.lm=function(a,b){this.I=b};l.Rk=function(){return this.ea};l.mm=function(a,b){this.ea=b};l.Mk=function(){return this.ca};l.hm=function(a,b){this.ca=b};l.Lk=function(){return this.aa}; +l.gm=function(a,b){this.aa=b};l.Nk=function(){return this.O};l.jm=function(a,b){this.O=b;this.Y=this.A[this.O&ku?1:0]?this.Y|Mt|eu:this.Y&~Mt};l.Sk=function(){var a=this.Y;this.Y&Mt&&(this.Y&=~cu);return a};l.fm=function(a,b){this.fa=b;this.V&&Mf(this.V,14);lu(this)};l.km=function(a,b){this.K&mu&&!(b&mu)&&(this.H=nu);this.K=b}; +function lu(a){var b=!1,c=a.fa,d=a.O&ku?1:0,e=a.O&ou,f=a.ca|(a.aa&pu)<<8,g=a.ea,h=a.I||256;a.La=-1;a.B=null;a.H=qu;a.Y=Mt|eu;var k=a.A[d];k?(k.Fd=f,k.Ta=e,k.ab=g,k.tb=h*k.mb,c=c>=ru?c:c&su,k.Ra=null,k.Pa=0,k.errorCode=0,a.La=d,a.B=k):c=-1;switch(c&su){case tu:b=!0;break;case uu:a.Y=cu;a.we(k,function(b){0<=b&&a.V?(du(a),a.Y=Mt|eu|fu):(a.Y=gu,a.H=hu)},!1);break;case vu:a.Y=fu;break;case wu:b=!0;break;case xu:b=!0;break;case ru:a.H=nu;b=!0;break;case yu:k.Ya=e+1,k.Va=h,b=!0}b&&du(a)} +function du(a){!a.V||a.K&zu||Of(a.V,14,120)} +function au(a){a.D=0;var b=Au(a),c=Au(a),d=c&32,e=d>>5,f=c&31,g=Au(a),h=Au(a),k=g<<2&768|h,m=g&63,p=Au(a),y=Au(a),w=a.A[e];w&&(w.Fd=k,w.Ta=f,w.ab=m,w.tb=p*w.mb);switch(b){case Bu:Cu(a,w?w.errorCode:Du);Eu(a,c);Eu(a,g);Eu(a,h);Eu(a,Fu|d);b=-1;break;case Zt:for(c=0;0<=(b=Au(a));)w&&cb?this.we(a,c):c(-1,!1)};l.fk=function(a,b){return void 0!==b&&0<=b?ju(a,b):-1}; +l.uk=function(a,b){void 0!==b&&0<=b?(a.Paju(a,a.bi)){a=-1;break a}a.zf++}a.zf>=a.xd&&(b=-1);a=b}else a=-1;return a}; +function Nu(a,b,c){b.errorCode=Du;if(b.sa&&(b.Ra=null,a.V)){b.errorCode=Ot;Dl(a.V,3,a,"dmaRead",b);zl(a.V,3,function(a){a||b.errorCode!=Ot||(b.errorCode=Du);c(b.errorCode?Gu:Fu)});return}c(b.errorCode?Gu:Fu)}function Pu(a,b,c){b.errorCode=Du;if(b.sa&&(b.Ra=null,a.V)){b.errorCode=Ot;Dl(a.V,3,a,"dmaWrite",b);zl(a.V,3,function(a){a||(b.errorCode==Ot&&(b.errorCode=Du),b.errorCode==Su&&(b.errorCode=Ot));c(b.errorCode?Gu:Fu)});return}c(b.errorCode?Gu:Fu)} +function Ru(a,b,c){b.errorCode=Du;b.ee&&b.ee.length==b.tb||(b.ee=Array(b.tb));b.Pa=0;a.V?(b.errorCode=Ot,Dl(a.V,3,a,"dmaWriteBuffer",b),zl(a.V,3,function(a){a||b.errorCode!=Ot||(b.errorCode=Du);c(b.errorCode?Gu:Fu)})):c(b.errorCode?Gu:Fu)} +l.we=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.Ra&&(f=a.Pa,d=a.sa.read(a.Ra,a.Pa),a.Pa+=g,0<=d))return e=a.Ra,b&&b(d,!1,e,f),d;if(b){if(a.sa)return a.sa.seek(a.Fd,a.Ta,a.ab+a.xf,!1,function(c,k){(a.Ra=c)?(e=c,f=a.Pa=0,Tu(a),d=a.sa.read(a.Ra,a.Pa),a.Pa+=g):a.errorCode=Su;b(d,k,e,f)}),d;a.errorCode=Su;b(d,!1,e,f)}return d}; +function ju(a,b){if(a.errorCode)return-1;do{if(a.Ra&&a.sa.write(a.Ra,a.Pa++,b))break;a.sa&&a.sa.seek(a.Fd,a.Ta,a.ab+a.xf,!0,function(b){a.Ra=b});if(!a.Ra){a.errorCode=Su;b=-1;break}a.Pa=0;Tu(a)}while(1);return b}function Tu(a){a.ab++;var b=1-a.xf;a.ab>=a.Va+b&&(a.ab=b,a.Ta++,a.Ta>=a.Ya&&(a.Ta=0,a.Fd++))}l.Kl=function(){var a=this.S.K&255;!(this.S.F>>8)&&128>8||!this.V)||(a=!(this.V.$b[0].Wc&64));return a?!0:!1}; +var Pt="Hard Drive",St=["XTC","ATC","COMPAQ"],Qt=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966, +6],19:[1023,8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}],It=496,nu=1,qu=0,hu=16,pu=3,ou=15,ku=16,gu=1,fu=8,eu=16,Mt=64,cu=128,tu=16,uu=32,vu=48,wu=64,xu= +112,ru=144,yu=145,su=240,zu=2,mu=4,Fu=0,Gu=2,Ju=0,Ku=1,Bu=3,Lu=5,Mu=8,Ou=10,Zt=12,Qu=15,Hu=224,Iu=228,Ot=0,Du=4,Su=20,Nt=0,$t=1,Ut=2,Vt=4,Yt=8,Tt=32,Ft={800:Z.prototype.Hl,801:Z.prototype.Il,802:Z.prototype.Gl},Et={496:Z.prototype.gk,497:Z.prototype.Ok,498:Z.prototype.Qk,499:Z.prototype.Rk,500:Z.prototype.Mk,501:Z.prototype.Lk,502:Z.prototype.Nk,503:Z.prototype.Sk},Ht={800:Z.prototype.Ym,801:Z.prototype.an,802:Z.prototype.$m,803:Z.prototype.Zm,807:Z.prototype.oh,811:Z.prototype.oh,815:Z.prototype.oh}, +Gt={496:Z.prototype.im,497:Z.prototype.nm,498:Z.prototype.lm,499:Z.prototype.mm,500:Z.prototype.hm,501:Z.prototype.gm,502:Z.prototype.jm,503:Z.prototype.fm,1014:Z.prototype.km};Ra(function(){for(var a=hb(document,"pcx86","hdc"),b=0;b\nLicense: GPL version 3 or later "); +for(b=0;bWu){if(d.load(this.K)){this.G=new Ye(this,"1.36.0",hv);this.G.load()&&(a!=fv&&iv(this,d)&&(a=jv),kv(this.G));this.G.set(ev,xa());lv(this.G);var e=this.A&&!this.H;if(a==fv||bb("Click OK to restore the previous PCx86 machine state.")){if(c=dv(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.va("Error: "+ +g),"unable to verify user"==g&&(La(mv,""),this.B=null)):this.ub(f+": "+g),kv(d),d.load()?(c=dv(d),e=!0):c=!1))}e&&bv(this,c?d:null)}else a==jv&&d.clear()}else bv(this);delete this.K;delete this.L}e=jb(this.id);for(f=0;fa[1];a=a[2];if(!this.Z.Hf){for(var d=0;d>>b.B;d=d+e-1>>>b.B;c.pg=0;for(c.gd=0;f<=d;)e=b.X[f],c.pg+=e.size,e.size&&(c.ig.push(Ba(Ib,f,0,0,e.type)),c.gd++),f++;a.A=c;a.ca=a.A.gd*a.na.A/(Hb*Sb);d=0;a.A.ei=0;a.A.Ge||(a.A.Ge=[]);e=-1;b=0;for(var g=-1,c=0;c>1),g=f.y+(f.A>>1),h=f.A,f.zc>1,b.H+=(b.I>>1)-2,Pb(b,e),b.W&&(b.D.restore(),b.W=!1)}}else Pb(a,"This space intentionally left blank");a.context.drawImage(a.J,0,0,a.J.width,a.J.height,a.Fa,a.Ka,a.ua,a.ya);a.ma=!1}}var hv="failsafe",cv="validate",ev="timestamp",pv="version",qv="url",rv="browser",mv="user",gv=-1,Wu=0,fv=1,jv=2,tv=3; +Ra(function(){for(var a=hb(document,"pcx86-machine"),b=0;bf.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/, +"$1PCx86$2"),a=a.replace(/().*?(<\/xsl:variable>)/,"$1pcx86$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(p){f=null,a=p.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");Fa(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/gi;m=p.exec(f);)k=0>k.toLowerCase().indexOf(m[1].toLowerCase())?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+ +"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(d[0],g);zv(a,b,c)}})}else c(a,null)} +function Av(a,b,c,d){function e(a){if(void 0===h){var b=g&&hb(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ta(a))}function f(a){e("Error: "+a);k&&(--wv||Va(!0));k=!1}var g,h,k=!0;wv++;ab[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],y=document.createElement("style");y.type="text/css";y.styleSheet?y.styleSheet.cssText=m:y.appendChild(document.createTextNode(m));p.appendChild(y)}c|| +(c="/versions/pcx86/1.36.0/components.xsl");m=function(d,h){h?xv(c,null,null,!1,e,function(d,k){k?($a(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--wv||Va(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--wv||Va(!0)):f("invalid machine element: "+ +a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?xv(b,a,d,!0,e,m):yv(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(w){f(w.message)}return k}function Bv(a,b,c,d){Va(!1);return Av(a,b,c,d)}window.embedPC=Bv;window.embedPCx86=Bv;window.findMachineComponent=function(a,b){return fb(b,a+".machine")}; +window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!mb[a]){for(var c=!0,d=mb,e=a,f=b.length,g=[],h=[],k="",m=null,p=0;p]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;d=y.exec(h[m]);){var w=d[2];w&&(h[w]||(p=p.replace(d[0],"")))}d=m=qa(m)}else"xsl"==y&&(e=m=qa(m));k[m]=p}a&&(k[m="css"]=a);b[2]&&(k[m="parms"]=b[2]);b[3]&&(k[m="state"]=b[3]);d&&e?(a=JSON.stringify(k),g+=".js",c=c[1]+"var resources="+a+";"+c[2]+c[3],c=c.replace(/\u00A9/g, +"©"),a=Pa(c,"javascript",!1,g),a=a+(', copy it to your web server as "'+g+'", and then add the following to your web page:\n\n')+('
    \n')+"...\n",a=a+(' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + float: + + + + + + + js + + + +
    + + + + + + + + + + js + + + "" + + + + + +
    +
    + + + + + + + + + + + + + + + , + + + + + + + + + + + + + .machine + . + . + + + + + + + + + + + + + + + + + + + + ,comment:'' + + + + + + border:1px solid black;border-radius:15px; + border:; + + + + + + left:; + + + + + + top:; + + + + + + + + width:; + width:;max-width:; + width:auto;max-width:; + + + + + + + + height:; + + + + + + padding:; + + padding-top:; + padding-right:; + padding-bottom:; + padding-left:; + + + + + + float:left; + float:right; + margin:0 auto;clear:both; + position:; + position:relative; + + + + + overflow:auto;width:100%; + + background-color:; + background-color:; + + + + + - -component + +
    + + + + + + +
    + + + + + + + + --object -screen + + +
    +
    + +
    + +
    +
    + + + + +
    + + +
    [XML]
    + +
    + + +
    +
    +
    +
    + + + + + text-align:center; + + + +

    +
    + + +
    +
    + + + + + + +
    +
    + + + + type:'' + + + binding:'' + + + value:'' + + + + border:1px solid black; + border:; + + + + + + width:; + + + + + + height:; + + + + + + left:; + + + + + + top:; + + + + + + padding:; + + padding-top:; + padding-right:; + padding-bottom:; + padding-left:; + + + + + + float:left; + float:right; + margin:0 auto; + clear:both; + position:; + position:relative; + text-align:; + float:left; + + + + + + + + + + + + + + + + + + +
    + + + font-size:; + + + + + -label + + + + width:; + width:; + + + + + + + + text-align:right; + + + + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    +
    + +
    +
    + + +
    +
    +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    + + + + +
    +
    + +
    +
    +
    + + +
    +
    +
    +
    +
    +
    + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + + + + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + + + + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + ; + + + + + + + + + + + + + + + : + + + + + + + + + + + + + + + + + desc:'' + + ,href:'' + + + + + + + + + + + + ; + + + + + + + + + + + + + + + + + + + + + + + + + + + + 8088 + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + 1 + + + + + + + null + + + + + + 0 + + + + + + + -1 + + + + + + + -1 + + + + + + + -1 + + + + + + ,model:'',stepping:'',fpu:,cycles:,multiplier:,autoStart:,addrReset:,csStart:,csInterval:,csStop: + + + + + + + + + + + + + + + 8087 + + + + + + + + + + + + ,model:'',stepping:'' + + + + + + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + true + + + + + + false + + + + + + {} + + + + + + + + + + + + + + + + + chipset + ,model:'',scaleTimers:,sw1:'',sw2:'',sound:,floppies:,monitor:'',rtcDate:'' + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + device + ,type:'',baudReceive:,baudTransmit:,autoMount:'' + + + + + + + + + + + + + + + + + + + + keyboard + ,model:'' + + + + + + + + + + + + + + + 0 + + + + + + + + + + + parallel + ,adapter:,binding:'' + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + + 0 + + + + + + + 0 + + + + + + + false + + + + + serial + ,adapter:,baudReceive:,baudTransmit:,binding:'',tabSize:,charBOL:,upperCase: + + + + + + + + + + + + + + + + + + + + mouse + ,serial:'' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + fdc + ,autoMount:'',sortBy:'' + + + + + + + + + + + + + + + + + + + + + xt + + + + + hdc + ,drives:'',type:'' + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + null + + + + + + + + + + + + + + + + + rom + ,addr:,size:,alias:,file:'',notify:'' + + + + + + + + + + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + null + + + + + + null + + + + + + true + + + + + ram + ,addr:,size:,file:'',load:,exec:,test: + + + + + + + + + + + + + + + + + + + + + null + + + + + + + 256 + + + + + + + 224 + + + + + + + black + + + + + + 0 + + + + + + 0 + + + + + + false + + + + + + 1bpp + + + + + + 0 + + + + + + 0 + + + + + + 1 + + + + + + 0 + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + false + + + + + + 1 + + + + + + 1 + + + + + + + 80 + + + + + + + 25 + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + 0 + + + + + + null + + + + + + 0 + + + + + + 60 + + + + + + 0.5 + + + + + video + ,model:'',mode:,screenWidth:,screenHeight:,screenColor:'',screenRotate:,bufferAddr:,bufferRAM:,bufferFormat:'',bufferCols:,bufferRows:,bufferBits:,bufferLeft:,bufferRotate:,memory:,switches:'',scale:,cellWidth:,cellHeight:,charCols:,charRows:,fontROM:'',fontColor:'',touchScreen:'',autoLock:,aspectRatio:,smoothing:,interruptRate:,refreshRate:,flicker: + + + + + + + + + + + + + + + 16 + + + + + + + + + + + + + + + + + debugger + ,base:,commands:'',messages:'' + + + + + + + + + + + + + + panel + + + + + + + + + + + + + + + + + + + + + true + + + + + + + 0 + + + + + + 0 + + + + + + + + + + + + computer + ,autoPower:,busWidth:,resume:'',state:'' + + + + + + + + diff --git a/versions/pdpjs/1.36.0/document.css b/versions/pdpjs/1.36.0/document.css new file mode 100644 index 000000000..7072b406e --- /dev/null +++ b/versions/pdpjs/1.36.0/document.css @@ -0,0 +1,162 @@ +@CHARSET "UTF-8"; + +.page { + margin: 2% 2%; + padding: 2% 2%; + min-width: 30em; + overflow: auto; + font-size: large; + font-family: Helvetica, Arial, sans-serif; + background: #303030; + color: #ccc; + +} +.page-header { +} +.page-header-title { + text-align: center; + +} +.page a { + color: #7fc07f; + text-decoration: none; +} +a.footlink, a.paralink { + text-decoration: none; +} +a.footlink:link, a.paralink:link { + color: blue; +} +a.footlink:visited, a.paralink:visited { + color: blue; +} +.galleryitem { + float: left; + width: 200px; +} +.item { + float: left; + width: 2em; + text-indent: 1em; +} +.list { + margin-left: 3em; + text-indent: 0; + text-align: justify; +} +ul { + list-style: none; +} +div.pnumber { + float: left; + width: 2em; + text-indent: 1em; +} +div.pitem { + margin-left: 10em; +} +p.indent, .justified p { + text-indent: 2em; + text-align: justify; + line-height: 1.5em; +} +p.noindent { + text-indent: 0; + text-align: justify; +} +p.center, .center { + text-align: center; +} +li.para { + margin-top: 1em; + margin-bottom: 1em; +} +.left { + text-align: left; +} +.right { + text-align: right; +} +blockquote.tag { + font-size: small; + font-family: Monaco, Fixed, monospace; + margin-top: 0; + margin-bottom: 0; +} +.blockquote { + padding-left: 1em; + text-indent: 0; + text-align: justify; +} +.italics { + font-style: italic; +} +.medium { + font-size: medium; +} +.small { + font-size: x-small; +} +.smallcaps { + font-variant: small-caps; +} +.strike { + text-decoration: line-through; +} +.summation, .bracelist { + display: inline-block; + position: relative; + vertical-align: middle; + text-align: center; + margin-bottom: 0.5ex; + text-indent: 0; +} +.bracelist-symbol { + font-size: 3em; + vertical-align: -40%; +} +.summation .summation-lower, .summation .summation-upper, .bracelist-item { + display: block; + font-size: 75%; + text-align: center; +} +.summation .summation-upper { + margin-bottom: 0; + margin-left: 0.8ex; + font-style: italic; +} +.summation .summation-lower{ + margin-bottom: -0.6ex; + font-style: italic; +} +.summation .summation-symbol { + font-size: 2em; +} +p sup { + vertical-align: baseline; + position: relative; + bottom: .5em; + font-size: small; +} +p sub { + vertical-align: baseline; + position: relative; + bottom: -.5em; + font-size: small; +} +.footnote { + font-size: medium; + text-indent: 1em; + text-align: justify; + margin-top: .5em; +} +.image-right { + float: right; + margin-left: 1em; + margin-top: 1em; + margin-bottom: 1em; +} +.image-caption { + font-size: small; + text-align: center; +} \ No newline at end of file diff --git a/versions/pdpjs/1.36.0/document.xsl b/versions/pdpjs/1.36.0/document.xsl new file mode 100644 index 000000000..30a4550d3 --- /dev/null +++ b/versions/pdpjs/1.36.0/document.xsl @@ -0,0 +1,452 @@ + + + + + +]> + + + + + + + + + +

    +
    + + + + + + + +

    +
    + +

    +
    +
    +
    + + + + + + +
    +
    + + +
    + +   + + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + +

    +
    + + +

    +
    + + +

    +
    + + +
    +
    + + +
    +
    + + + + + + + + + + + + + + +
    +
    + + +
    +
    + + +
  • +
    + + +
    image
    +
    + + +
    +
    + + + + +
    {.}
    +
    + +
    {.}
    +
    +
    +
    + + + + + + + + + + < + > + + + + × + + ÷ + σ + + + + + + + + + + + + { + + + + + + + + + + [] + + + + +
    + +
    +
    + + + , and + + + + + MDY + + + + + + + + + + + + + + + + + + + + January + February + March + April + May + June + July + August + September + October + November + December + + + , + + + + + +

    + +
    +
    + + +
    + {.}
    +
    +
    +
    + + + +

    Timeline

    +
    + +

    +
    +
    + +
    +
    + + + + + + + + + +

    +
    + +
    +
    +
    + + + +

    People

    +
    + +

    +
    +
    + +
    +
    + + +

    + +
    + + +

    +
      + +
    +
    + + + + + + + + + + +
  • + +
  • +
    + + + +

    +
    +

    + +

    +
    +
    + + + + false + + + + + + [Original] + + + + + + + + + + [] + + +
    by
    + + +
    + [Source: + + + + + + + ] +
    +
    +
    + + + +

    Resources

    +
    + +

    +
    +
    + +
    +
    + + +

    + +
    + + + +

    +
    +
      + +
    +
    + + +
  • +
    + + + +

    +
    +
    + +
    +
    + + + +

    +
    + +
    + + + +

    +
    +
      + +
    +
    + + + + + +
      + +
    +
    + + + + +
  • +
    + +
  • +
    + +
  • +
    +
    +
    + + +
  • +
    + + + + + + + + + + +
    + < ="" + + ></> + ></> + /> + +
    +
    + +
    diff --git a/versions/pdpjs/1.36.0/machine.xsl b/versions/pdpjs/1.36.0/machine.xsl new file mode 100644 index 000000000..be999e31f --- /dev/null +++ b/versions/pdpjs/1.36.0/machine.xsl @@ -0,0 +1,61 @@ + + + + +]> + + + + + + + + + + + + + + + + + js + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    +
    + + + + + , + +
    +
    + +
    + + + + -dbg + + + + + + +
    + +
    diff --git a/versions/pdpjs/1.36.0/manifest.xsl b/versions/pdpjs/1.36.0/manifest.xsl new file mode 100644 index 000000000..9e8e96a3f --- /dev/null +++ b/versions/pdpjs/1.36.0/manifest.xsl @@ -0,0 +1,247 @@ + + + + +]> + + + + + + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    Document Manifest

    +
    +
      + + + + None + + + + + + + + + + + + + + + + +
    +
    +
    +

    + +
    +
    +
    + + +
    + + + + + + + + + + + <xsl:value-of select="$SITEHOST"/> + + + + +
    + +
    +

    Software Manifest

    +
    +
      + + + + None + + + + + Unknown + + + + + None + + + + + None + + + + + + + + + + + + + UpdatedReleased + + Unknown + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + + + + +

    No default machine specified for '' in manifest.xml

    +
    + +
    +
    +
    + + + + -dbg + + + + + + +
    + + + + + Unknown + +
  • +
      + + + + + + + + +
    • + + + + + + + + + + + + + + + + + + + + + + + + + +
        + +
      • + + + + + + +
      • +
        +
      +
      +
    • +
      + + + + + + + + +
    +
  • +
    +
    + +
    diff --git a/versions/pdpjs/1.36.0/outline.xsl b/versions/pdpjs/1.36.0/outline.xsl new file mode 100644 index 000000000..fed3a02c1 --- /dev/null +++ b/versions/pdpjs/1.36.0/outline.xsl @@ -0,0 +1,47 @@ + + + + +]> + + + + + + + + + + + + + + + + + + <xsl:value-of select="title"/><xsl:text> | </xsl:text><xsl:value-of select="$SITEHOST"/> + + + + + +
    +
    + +
    +
    + + + + -dbg + + + + + + +
    + +
    diff --git a/versions/pdpjs/1.36.0/pdp10-dbg.js b/versions/pdpjs/1.36.0/pdp10-dbg.js new file mode 100644 index 000000000..1cab24b6e --- /dev/null +++ b/versions/pdpjs/1.36.0/pdp10-dbg.js @@ -0,0 +1,304 @@ +(function(){/* + http://pcjs.org/modules/shared/lib/dumpapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/reportapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/userapi.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/keys.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/strlib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/weblib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/messages.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/device.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/rom.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/ram.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/computer.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/state.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/embed.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/defines.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/component.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/defines.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/panel.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/bus.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/memory.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/cpu.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/cpustate.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/cpuops.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/serial.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/shared/lib/debugger.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/debugger.js (C) Jeff Parsons 2012-2017 + http://pcjs.org/modules/pdp10/lib/macro10.js (C) Jeff Parsons 2012-2017 +*/ +var m,aa="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},ba="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global?global:this;function ca(){ca=function(){};ba.Symbol||(ba.Symbol=da)}var ea=0;function da(a){return"jscomp_symbol_"+(a||"")+ea++} +function fa(){ca();var a=ba.Symbol.iterator;a||(a=ba.Symbol.iterator=ba.Symbol("iterator"));"function"!=typeof Array.prototype[a]&&aa(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return ha(this)}});fa=function(){}}function ha(a){var b=0;return ia(function(){return ba?-b:b}});ma("Math.log2",function(a){return a?a:function(a){return Math.log(a)/Math.LN2}}); +var na={vc:0,Nb:1,xc:2,yc:3,zc:4,Ac:5,Bc:6,Cc:7,xb:8,Dc:9,Ob:10,Ec:11,Fc:12,Pb:13,Gc:14,Hc:15,Ic:16,Jc:17,Kc:18,Lc:19,Mc:20,Nc:21,Oc:22,Pc:23,Qc:24,Rc:25,Sc:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,wb:65,uc:66,wc:67,Tc:68,E:69,Uc:70,Vc:71,Wc:72,Xc:73,Yc:74,Zc:75,$c:76,ad:77,bd:78,dd:79,ed:80,Q:81,fd:82,gd:83,hd:84,jd:85,kd:86,ld:87, +nd:88,od:89,Sb:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,pd:97,qd:98,rd:99,d:100,e:101,sd:102,td:103,ud:104,vd:105,xd:106,k:107,yd:108,zd:109,n:110,Ad:111,p:112,q:113,r:114,Bd:115,t:116,Dd:117,Ed:118,Fd:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,Qb:127}; +function oa(a,b){var c;if(a){b||(b=10);var d,e,f=0=b&&(e=a.match(/(-?[0-9]+)B([0-9]*)/))&& +(a=e[1],d=35-((e[2]||35)&255));e=a;((f=b)&&10!=f?16==f?e.match(/^-?[0-9a-f]+$/i):8==f?e.match(/^-?[0-7]+$/):2==f&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(g=parseInt(a,b))&&(d&&(0>g&&(g+=Math.pow(2,36)),g=0a&&-1a&&(a+=Math.pow(b,c)),a>=Math.pow(b,c)&&(c=Math.ceil(Math.log(a)/Math.log(b))));for(var g=e||-1;0=h?48:55),f=String.fromCharCode(h)+f;a=Math.trunc(a/b)}g--}return(void 0===d?"":d)+f}function qa(a,b,c){b?12=b?6:16777215>=b?8:12);return pa(a,8,b,c?"0o":"")} +function xa(a,b){b?11=Math.abs(a)?5:11;return pa(a,10,b)}function n(a,b,c){b?9=b?4:4294967295>=b?8:9);return pa(a,16,b,c?"0x":"")}function ya(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0"']/g,function(a){return Ca[a]})}function Da(a,b){return(a+" ").slice(0,b)}function Ea(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}var Ca={"&":"&","<":"<",">":">",'"':""","'":"'"};function Fa(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[g]);0a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())} +function Ja(a,b,c,d){c=void 0===c?!1:c;var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a, +f,e))});if(b&&"object"==typeof b){var k="",l;for(l in b)b.hasOwnProperty(l)&&(k&&(k+="&"),k+=l+"="+encodeURIComponent(b[l]));k=k.replace(/%20/g,"+");h.open("POST",a,c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g} +function Ka(a,b){var c,d={ea:null,aa:null,la:null,ya:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,f,g;if("<"==b.substr(0,1))throw Error(b);g=0>b.indexOf("0x")&&0>b.indexOf("0o")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.la=g.load;d.ya=g.exec;if(e=g.bytes)d.ea=e;else if(e=g.words)for(d.ea=Array(2*e.length),f=c=0;c>8&255;else if(e=g.longs)for(d.ea=Array(4*e.length),f=c=0;c>8&255,d.ea[f++]=e[c]>>16&255,d.ea[f++]=e[c]>>24&255;else(e=g.data)?d.Oa=e:d.ea=g;d.ea&&(d.ea.length?1==d.ea.length&&(r(d.ea[0]),d=null):(r("Empty resource: "+a),d=null));d.aa=g.symbols}catch(h){r("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;ca?this.Db=this.id:(this.$a=this.id.substr(0,a),this.Db=this.id.substr(a+1));this.A={ready:!1,Ua:!1,ob:!1,wd:!1,ba:!1,ub:!1,error:!1};this.cb=null;this.A.error=!1;this.da=c||0;this.D=this.v=this.H=this.G=null;hb.push(this)} +function ib(a,b,c){jb[a]&&b&&(jb[a][b]=c)}function pb(){return Date.now()||+new Date}function r(a){window&&window.alert(a)}function qb(a){var b=!1;window&&(b=window.confirm(a));return b}function rb(a,b){a.value+=b;b=a.value;8192d?c+=a+"\n":c=c.substr(0,d)+(a+ +".")+c.substr(d+a.length);8192a;a++)this.b["S"+a]=[0,0,!1,!1,this.ec,a];this.D=this.v=this.H=this.G=null;this.exports={hold:this.Wb,toggle:this.pc,reset:this.lc, +set:this.oc};Pb(this)}la(fc,t);m=fc.prototype;m.reset=function(a){this.stop();a&&hc(this,this.w=0)}; +m.sa=function(a,b,c,d){if(this.G&&this.G.sa(a,b,c,d)||this.v&&this.v.sa(a,b,c,d)||this.D&&this.D.sa(a,b,c,d))return!0;switch(b){case "PC":return this.J[b]=c,this.L++,!0;default:return"led"==a||"rled"==a?(this.J[b]=c,this.C[b]=d?1:0,this.L++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0,d?1:0]),this.J[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){ic(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){jc(a,b)}}(this,b),a.ontouchstart= +function(a,b){return function(c){ic(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){jc(a,b)}}(this,b),!0):t.prototype.sa.call(this,a,b,c,d)}};m.La=function(a,b,c,d){this.G=a;this.H=b;this.v=c;this.D=d;kc(this);lc(this)};m.Aa=function(a,b){if(!b)if(this.V&&mc(),!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};m.ra=function(a){return a?this.save():!0};m.save=function(){var a=new G(this);a.set(0,[this.i,this.w,this.j]);return a.data()}; +m.restore=function(a){if(a=a[0])nc(this,this.i=a[0]),hc(this,this.w=a[1]),oc(this,a[2]);return!0};m.lc=function(){for(var a in this.b){var b=this.b[a];b[1]=b[0]}lc(this);return!0};function pc(a,b,c){if(a=a.J[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function kc(a,b){for(var c in a.C)pc(a,c,null!=b?b:a.C[c])}function qc(a,b,c){if(a=a.J[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function lc(a){for(var b in a.b)qc(a,b,a.b[b][1])} +m.Wb=function(a,b,c){if(ic(this,b)){if(c){var d=this;setTimeout(function(){jc(d,b);a&&a()},+c);return!1}jc(this,b)}return!0};m.oc=function(a,b){if("SR"==a)return oc(this,oa(b,8));var c=this.b[a];return c?(c[1]=+b?1:0,qc(this,a,c[1]),!0):!1};m.pc=function(a){return ic(this,a)?(jc(this,a),!0):!1};function ic(a,b){var c=a.b[b];return c?(qc(a,b,c[1]=1-c[1]),c[3]=!0,c[4]&&c[4].call(a,c[1],c[5]),b!=rc&&(a.O=b==sc,a.R=b==tc),!0):!1} +function jc(a,b){var c=a.b[b];c&&(c[2]&&c[3]&&(qc(a,b,c[1]=c[0]),c[4]&&c[4].call(a,c[1],c[5])),c[3]=!1)}m.fc=function(a){a||this.v.A.P||(H(this.v,this.i),this.b[uc]&&this.b[uc][1]&&vc(this.v))};m.gc=function(){};m.ac=function(a){a||this.v.Y()}; +m.Zb=function(a){if(!a&&!this.v.A.P)if(this.b[uc]&&this.b[uc][1])vc(this.v);else{if((a=this.D)&&!Qb(a,!0))Rb(a,!0),wc(a,0,null),Rb(a,!1);else try{var b=this.v.Ya(1);0c;c++){var d=a,e="A"+c,f=b&1<c;c++){var d=a,e="D"+c,f=b&1<b;b++)a.b["S"+b][1]=a.j&1<d.length){for(var e=0,f=Array(4096),g=0;g>>a.i;0f&&(l=f);if(h&&h.size){if(h.type==d){if(e+f<=h.B)return h.Wa+=h.B-e,h.B=e,!0;if(e>=h.B+h.Wa){l=h.size-(e-k);l>f&&(l=f);h.Wa=e-h.B+l;e=k+16384;f-=l;g++;continue}}return Ic(Jc,e,f)}e=new Ec(a,e,l,16384,d);Fc(e,a.D,h);a.b[g++]=e;e=k+16384;f-=l}return 0>=f?(a.status("Added "+(c>>10)+"Kb "+Kc[d]+" at "+qa(b)),!0):Ic(Lc,b,c)} +function Cc(a,b){var c=a.b[(b&a.j)>>>a.i];a.w++;b=c.w(b&16383,b);a.w--;return b}function Bc(a,b,c){var d=a.b[(b&a.j)>>>a.i];a.w++;d.D(c,b&16383,b);a.w--}function Gc(a){for(var b=0,c=[],d=0;d=a.ta&&(a.ta+=a.pa,c=!0);0<=a.ua&&a.ua<=jd(a)&&(a.pa=a.ua=-1,fd(a),a.Y(),c=!0);c&&a.u(jd(a)+" cycles: checksum="+n(a.Ga))}} +m.sa=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.J[b]=c,!0;case "run":return this.J[b]=c,c.onclick=function(){var a;if(a=d.G)if(a=d.G,a.A.ba)a=!0;else{var b=null,c,h=tb(a.id);for(c=0;ca.Z/a.ca?b=1:d=!0;a.ha=b;b=a.ib*a.ha;if(a.ca!=b){a.ca=b;b=a.ca.toFixed(2)+"Mhz";var e=a.J.setSpeed;e&&(e.textContent=b);a.u("target speed: "+b)}c&&a.G&&nd(a.G)}yc(a,a.M);a.M=0;a.L=pb();a.S=0;ld(a);return d}function od(a,b){for(var c=a.R.length-1;0<=c;c--){var d=a.R[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function pd(a){for(var b=[],c=0;cd[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function qd(a,b){var c=a.V-=a.N;a.N=0;b&&(a.V=0);return c} +m.mc=function(){if(this.A.P){this.ab>=this.lb&&ld(this,!0);this.va=0;this.Fa=pb();if(this.S){var a=this.Fa-this.S;a>this.kb&&(this.L+=a,this.L>this.Fa&&(this.L=this.Fa))}try{do{var b=od(this,this.A.Ta?1:this.Ia);try{this.Ya(b)}catch(e){if("number"!=typeof e)throw e;}b=qd(this,!0);this.va+=b;this.M+=b;zc(this,b);xc(this,b);this.ma-=b;if(0>=this.ma){this.ma+=this.Ia;++this.mb>=rd&&(this.G&&K(this.G,void 0),this.mb=0);break}}while(this.A.P)}catch(e){this.Y();this.G&&this.G.stop(pb(),jd(this));Cb(this, +e.stack||e.message);return}if(this.A.P){a=setTimeout;b=this.Fb;this.S=pb();var c=this.kb;this.va&&(c=Math.round(c*this.va/this.Ia));var c=c-(this.S-this.Fa),d=this.S-this.L;d&&(this.Z=Math.round(this.M/(10*d))/100,864E5<=d&&(this.W=0,kd(this)));if(0>c||this.Zc&&(this.L-=c),c=0;this.ab+=this.va;this.S+=c;a(b,c)}}}; +function vc(a,b){if(!Db(a))if(a.A.P)a.u(a.toString()+" busy");else{kd(a);a.A.P=!0;a.A.gb=!0;var c=a.J.run;c&&(c.textContent="Halt");a.G&&(b&&nd(a.G,!0),a.G.start(a.L,jd(a)));a.D||a.status("Started");setTimeout(a.Fb,0)}}m.Ya=function(){return 0};m.Y=function(a){var b=!1;if(this.A.P){qd(this);yc(this,this.M);this.M=0;this.A.P=!1;if(b=this.J.run)b.textContent="Run";this.G&&this.G.stop(pb(),jd(this));b=!0;this.D||this.status("Stopped")}this.A.complete=a;return b};var md=30,rd=15,cd=["power","reset"]; +function sd(a){var b=+a.model||1001;bd.call(this,a,1E6);this.jb=b;this.Za=+a.addrReset||0;this.Tb=td.bind(this);this.w=M.bind(this);this.Ca=null;this.vb=[];this.A.complete=!1}la(sd,bd);m=sd.prototype; +m.reset=function(){this.status("Model "+this.jb);this.A.P&&this.Y();this.Ja=this.Ka=this.b=this.I=0;this.i=this.oa=this.Za;this.K=this.O=-1;this.F=this.j=0;this.nb=[0,0];this.wa=[0,0];this.na=[0,0];this.xa=[0,0];this.Ba=this.i;this.C=0;this.f=this.ic;this.g=this.tc;this.Ca=null;ed(this);this.A.error=!1;bd.prototype.reset.call(this)};m.Kb=function(){return 0}; +m.save=function(){var a=new G(this);a.set(0,[this.b,this.I,this.Ja,this.Ka,this.i,this.O,this.K,this.j,this.C,this.oa,this.Ba,this.Za]);a.set(1,[]);a.set(2,[this.W,this.ha,this.A.ga]);a.set(3,ud(this));a.set(4,pd(this));return a.data()}; +m.restore=function(a){var b;b=a[0];fa();ca();fa();var c=b[Symbol.iterator];b=c?c.call(b):ha(b);this.b=b.next().value;this.I=b.next().value;this.Ja=b.next().value;this.Ka=b.next().value;this.i=b.next().value;this.O=b.next().value;this.K=b.next().value;this.j=b.next().value;this.C=b.next().value;this.oa=b.next().value;this.Ba=b.next().value;this.Za=b.next().value;b=a[2];this.W=b[0];kd(this,b[1]);this.A.ga=b[2];b=a[3];for(c=b.length-1;0<=c;c--){var d;a:{for(d=0;d>>b.i].f(a&16383,a)};m.tc=function(a,b){var c=this.H;a=this.Ba=a;c.b[(a&c.j)>>>c.i].g(b,a&16383,a);return b}; +m.Ya=function(a){this.A.complete=!0;var b=this.D?yd(this.D)?1:this.A.gb?-1:0:0,c=a?this.A.gb?0:1:-1;this.A.gb=!1;this.V=this.N=a;this.C=this.C&-5|(b?4:0);do{if(this.C){if(this.C&4){if(zd(this.D,xd(this),c)){this.Y();break}++b||(this.C&=-5);c||c++}if(a=this.C&11)this.C&2?this.Ca||(this.C&=-3):this.C&1&&this.C++,a=!1;if(a){if(this.C&4&&zd(this.D,xd(this),c)){this.Y();break}if(0>c)break}}this.C&=15;this.I&4194304?this.I=this.Ja=this.f(this.b):0<=this.O?(this.I=this.Ka=this.f(this.O),this.O=-1):(this.I= +this.Ka=this.f(this.oa=this.i),this.i=(this.i+1)%Wb);this.I&=8388607;this.b=this.I&262143;if(a=this.I>>18&15)this.b=this.b+(this.Ja=this.f(a))&Vb;a=this.I&4194304?-1:this.Ka/cc|0;0<=a&&this.Tb(a);this.N--}while(0>4].call(this,a,a&15)}function O(a){this.w(a)} +function Bd(){var a=0,b=this.f(this.b),c=b/dc&63,d=b>>24&63,c=c-d;0>c&&(a++,c=36-d,0>c&&(c=100-d));b=c*dc+(d<<24)+(b&16777215);a&&(b=(b+a)%C);this.g(this.b,b)}function Cd(a,b){a=this.f(this.b);if(0>this.K)this.K=a,this.I=this.b|4194304;else{var c=this.K/dc&63,d=this.K>>24&63;a=32>c+d?(a>>c&(1<>>0:Math.trunc(a/Math.pow(2,c))%Math.pow(2,d);this.g(b,a);this.j&=-8193;this.K=-1}} +function Dd(a,b){a=this.f(this.b);if(0>this.K)this.K=a,this.I=this.b|4194304;else{var c=this.K/dc&63,d=this.K>>24&63;b=this.f(b)%Math.pow(2,d)*Math.pow(2,c)%C;a=a-a%Math.pow(2,c+d)+b+a%Math.pow(2,c);this.g(this.b,a);this.j&=-8193;this.K=-1}}function Ed(a,b){this.g(b,this.f(this.b))}function Fd(a,b){this.g(b,this.b)}function Gd(a,b){this.g(this.b,this.f(b))}function Hd(a,b){this.g(b,0)}function Id(a,b){this.g(b,B-this.f(b))}function Jd(a,b){this.g(b,B)} +function Kd(a,b){var c=this.f(this.b),d=this.f(b);this.g(b,Ld(a,d,c)+(c-(c&x)))}function Md(a,b){var c=this.f(b);this.g(b,Ld(a,c,0))}function Nd(a,b){b=this.f(b);var c=this.f(this.b);this.g(this.b,Ld(a,c,b)+(b-(b&x)))}function Od(a,b){var c=this.f(this.b),d=c;if(a&=384)switch(d-=d&x,a){case 256:d+=x;break;case 384:d+=c>z?x:0}c=d;this.g(this.b,c);b&&this.g(b,c)}function Pd(a,b){var c=(this.f(this.b)&x)*y,d=this.f(b);this.g(b,Ld(a,d,c)+c)} +function Qd(a,b){var c=this.b*y,d=this.f(b);this.g(b,Ld(a,d,c)+c)}function ie(a,b){b=(this.f(b)&x)*y;var c=this.f(this.b);this.g(this.b,Ld(a,c,b)+b)}function je(a,b){var c=this.f(this.b),d=(c&x)*y,c=Ld(a,c,d)+d;this.g(this.b,c);b&&this.g(b,c)}function ke(a,b){var c=this.f(this.b)&x,d=this.f(b);this.g(b,le(a,d,c)+c)}function me(a,b){var c=this.f(b);this.g(b,le(a,c,this.b)+this.b)}function ne(a,b){b=this.f(b)&x;var c=this.f(this.b);this.g(this.b,le(a,c,b)+b)} +function oe(a,b){var c=this.f(this.b),d=c;if(a&=384)switch(d&=x,a){case 256:d+=x*y;break;case 384:d+=c>Xb?x*y:0}c=d;this.g(this.b,c);b&&this.g(b,c)}function pe(a,b){var c=this.f(this.b)/y|0,d=this.f(b);this.g(b,le(a,d,c)+c)}function qe(a,b){var c=this.f(b);this.g(b,le(a,c,0))}function re(a,b){b=this.f(b)/y|0;var c=this.f(this.b);this.g(this.b,le(a,c,b)+b)}function se(a,b){var c=this.f(this.b),d=c/y|0,c=le(a,c,d)+d;this.g(this.b,c);b&&this.g(b,c)}function P(a){te[a&7].call(this,a,a>>3&127)} +function ue(){}function ve(){}function M(a){this.u("undefined opcode: "+qa(a));wd(this,-1);this.Y()}function we(a){a>z&&(a!=A?a=$b-a:this.j|=163840);return a}function Q(a,b){var c=(a+b)%C;xe.call(this,a,b,c);return c} +function ye(a,b,c){var d=!1,e=!1;if(void 0===c){if(!a)return this.j|=131104,-1;c=b>z?B:0}else if((c=(az&&(a=C-a,d=!d);c>z&&(b?(c=B-c,b=C-b):c&&(c=C-c),e=!0,d=!d);f=this.nb;f[0]=0;f[1]=0;f=this.wa;f[0]=1;f[1]=0;f=this.na;f[0]=a;f[1]=0;a=this.xa;a[0]=b;for(a[1]=c;0c[0]&&(c[0]+=C,c[1]--),Ae(this.nb,this.wa),Be(this.xa)))break;Ce(this.na);Ce(this.wa)}while(!Be(this.wa));b=this.nb[0];this.F=this.xa[0];d&&b&&(b=C-b);e&&this.F&&(this.F=C-this.F);return b} +function De(a,b,c,d){var e=a,f=b;b=!1;var g;e>z&&(d||1001!=this.jb||e!=A)&&(e=C-e,b=!b);f>z&&(f=C-f,b=!b);if(ez)&&(g!=B||a<=z)&&(this.j|=131072),g=a);return g} +function Ee(a){a?a==A?this.j|=163840:a=$b-a:this.j|=98304;return a}function Fe(a,b){var c=a-b;0>c&&(c+=C);xe.call(this,c,b,a);return c}function xe(a,b,c){a=Math.trunc(a/Zb);b=Math.trunc(b/Zb);c=Math.trunc(c/Zb);var d=a^(a^b)&(b^c);this.j=this.j|(d&2?65536:0)|(d&1?32768:0)|((a^c)&(b^c)&2?131072:0)}function R(a,b){return((a/E|0)&(b/E|0))*E+((a&b)>>>0)}function S(a,b){return R(a,(~(b/E|0)&15)*E+(~b>>>0))}function Ge(a,b){return(a>>0)}function T(a,b){return(a/E|0|b/E|0)*E+((a|b)>>>0)}function U(a){return a>>0)}function W(a){return(a/y|0)+(a&x)*y}function le(a,b,c){switch(a&384){case 0:b-=b&x;break;case 128:b=0;break;case 256:b=x*y;break;case 384:b=c>Xb?x*y:0}return b}function Ld(a,b,c){switch(a&384){case 0:b&=x;break;case 128:b=0;break;case 256:b=x;break;case 384:b=c>z?x:0}return b} +function Ae(a,b){a[0]+=b[0];a[1]+=b[1];a[0]>=C&&(a[0]%=C,a[1]++)}function ze(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function Ce(a){a[1]%2&&(a[0]+=C);a[0]=Math.trunc(a[0]/2);a[1]=Math.trunc(a[1]/2)}function Be(a){return!a[0]&&!a[1]} +var Ad=[O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},Bd,function(a,b){this.j&8192||(Bd.call(this),this.j|=8192);Cd.call(this,0,b)},Cd,function(a,b){this.j&8192||(Bd.call(this),this.j|=8192);Dd.call(this,0,b)},Dd,function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)}, +function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)}, +function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},function(a){this.w(a)},Ed,Fd,Gd,function(a,b){b&&this.g(b,this.f(this.b))},function(a,b){a=this.f(this.b);a=(a/y|0)+(a&x)*y;this.g(b,a)},function(a,b){this.g(b,this.b*y)},function(a,b){a=this.f(b);a=(a/y|0)+(a&x)*y;this.g(this.b,a)},function(a,b){a=this.f(this.b);a=(a/y|0)+(a&x)*y;this.g(this.b,a);b&&this.g(b,a)},function(a,b){this.g(b,Ee.call(this,this.f(this.b)))},function(a,b){this.g(b, +Ee.call(this,this.b))},function(a,b){this.g(this.b,Ee.call(this,this.f(b)))},function(a,b){a=Ee.call(this,this.f(this.b));this.g(this.b,a);b&&this.g(b,a)},function(a,b){this.g(b,we.call(this,this.f(this.b)))},function(a,b){this.g(b,this.b)},function(a,b){this.g(this.b,we.call(this,this.f(b)))},function(a,b){a=we.call(this,this.f(this.b));this.g(this.b,a);b&&this.g(b,a)},function(a,b){this.g(b,De.call(this,this.f(b),this.f(this.b),!0))},function(a,b){this.g(b,De.call(this,this.f(b),this.b,!0))},function(a, +b){this.g(this.b,De.call(this,this.f(b),this.f(this.b),!0))},function(a,b){this.g(this.b,this.g(b,De.call(this,this.f(b),this.f(this.b),!0)))},function(a,b){this.g(b,De.call(this,this.f(b),this.f(this.b)));this.g(b+1&15,this.F)},function(a,b){this.g(b,De.call(this,this.f(b),this.b));this.g(b+1&15,this.F)},function(a,b){this.g(this.b,De.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,De.call(this,this.f(b),this.f(this.b))));this.g(b+1&15,this.F)},function(a,b){a=ye.call(this, +this.f(this.b),this.f(b));0>a||(this.g(b,a),this.g(b+1&15,this.F))},function(a,b){a=ye.call(this,this.b,this.f(b));0>a||(this.g(b,a),this.g(b+1&15,this.F))},function(a,b){a=ye.call(this,this.f(this.b),this.f(b));0>a||this.g(this.b,a)},function(a,b){a=ye.call(this,this.f(this.b),this.f(b));0>a||(this.g(this.b,this.g(b,a)),this.g(b+1&15,this.F))},function(a,b){a=this.f(b);var c=this.f(b+1&15),c=ye.call(this,this.f(this.b),c,a);0>c||(this.g(b,c),this.g(b+1&15,this.F))},function(a,b){a=this.f(b);var c= +this.f(b+1&15),c=ye.call(this,this.b,c,a);0>c||(this.g(b,c),this.g(b+1&15,this.F))},function(a,b){a=this.f(b);b=this.f(b+1&15);b=ye.call(this,this.f(this.b),b,a);0>b||this.g(this.b,b)},function(a,b){a=this.f(b);var c=this.f(b+1&15),c=ye.call(this,this.f(this.b),c,a);0>c||(this.g(b,this.g(this.b,c)),this.g(b+1&15,this.F))},function(a,b){if(a=(this.b&Yb)<<14>>23|this.b&255){var c,d,e=this.f(b);0a&&(c+=e*Math.pow(2,a)%A,d=A-Math.pow(2,35-a)),ez&&(this.j|=131072):e-d=a?c=ez&&(d=C-Math.pow(2,36+a),c+=d));this.g(b,c)}},function(a,b){if(a=((this.b&Yb)<<14>>23|this.b&255)%36){var c=this.f(b);0>a&&(a=36+a);c=c*Math.pow(2,a)%C+Math.trunc(c/Math.pow(2,36-a));this.g(b,c)}},function(a,b){if(a=(this.b&Yb)<<14>>23|this.b&255){var c=this.f(b),c=0=a?0:Math.trunc(c/Math.pow(2,-a));this.g(b,c)}},function(a,b){a=0;var c=this.f(b);if(c){for(;c>23|this.b&255){var c,d=this.f(b),e=this.f(b+1&15);if(0z&&dz&&ez&&(this.j|=131072):e-c<=z&&(this.j|=131072);e=0;f>z&&(d+=A,e+=A)}else d=d*Math.pow(2,a)%A+Math.trunc(e%A/Math.pow(2,35-a)),e=e*Math.pow(2,a)%A,c=A-Math.pow(2,35-a),f<=z?f+c>z&&(this.j|=131072):(f-c<=z&&(this.j|=131072),d+=A,e+=A)}else-36>=a?(e=-72>=a?d> +z?B:0:Math.trunc(d%A/Math.pow(2,-a-35)),d<=z?d=0:(d=B,e+=A)):(c=d>z?C-Math.pow(2,36+a):0,e=Math.trunc(e%A/Math.pow(2,-a))+d%A*Math.pow(2,35+a)%A,d=Math.trunc(d/Math.pow(2,-a))+c,d>z&&(e+=A));this.g(b,d);this.g(b+1&15,e)}},function(a,b){if(a=((this.b&Yb)<<14>>23|this.b&255)%72){var c=this.f(b),d=this.f(b+1&15),e=c;0>a&&(a=72+a);36>a?(c=c*Math.pow(2,a)%C+Math.trunc(d/Math.pow(2,36-a)),d=d*Math.pow(2,a)%C+Math.trunc(e/Math.pow(2,36-a))):(c=d*Math.pow(2,a-36)%C+Math.trunc(c/Math.pow(2,72-a)),d=e*Math.pow(2, +a-36)%C+Math.trunc(d/Math.pow(2,72-a)));this.g(b,c);this.g(b+1&15,d)}},function(a,b){if(a=(this.b&Yb)<<14>>23|this.b&255){var c=this.f(b),d=this.f(b+1&15);0=a?(d=-72>=a?0:Math.trunc(c/Math.pow(2,-a-36)),c=0):(d=Math.trunc(d/Math.pow(2,-a))+c*Math.pow(2,36+a)%C,c=Math.trunc(c/Math.pow(2,-a)));this.g(b,c);this.g(b+1&15,d)}},M,function(a,b){a=this.f(b);this.g(b,this.f(this.b));this.g(this.b, +a)},function(a,b){for(var c=a=!1,d=this.f(b),e=d/y|0,d=d&x;!a;)if(this.g(d,this.f(e)),(a=d>=this.b)||(e=e+1&x,d=d+1&x,c=!0),a||!this.A.P){c&&this.g(b,e*y+d);a||wd(this,-1);break}},function(a,b){a=(this.f(b)+262145)%C;this.g(b,a);a=A&&H(this,this.b)},function(a,b){b&1&&(this.j|=4096);b&2&&vd(this,this.Ja/y|0);b&4&&this.Y();b&8&&this.w(a);H(this,this.b)},function(a,b){a=b<<14;this.j&a&&(this.j&=~a,H(this,this.b))},function(){this.O= +this.b},M,function(a,b){a=(this.f(b)+262145)%C;this.g(b,a);a/y|0||(this.j|=262144);this.g(a&Vb,(this.j&x)*y+this.i);this.j&=-8193;H(this,this.b)},function(a,b){a=this.f(b);a+=262145;this.g(a&Vb,this.f(this.b));a>=C&&(a-=C);a/y|0||(this.j|=262144);this.g(b,a)},function(a,b){a=this.f(b);var c=this.f(a&Vb);this.g(this.b,c);this.b==b&&(a=c);a-=262145;0>a&&(a+=C);(a/y|0)==x&&(this.j|=262144);this.g(b,a)},function(a,b){a=this.f(b);var c=this.f(a&Vb);a-=262145;0>a&&(a+=C);(a/y|0)==x&&(this.j|=262144);this.g(b, +a);H(this,c&Vb)},function(){this.g(this.b,(this.j&x)*y+this.i);this.j&=-8193;H(this,this.b+1)},function(a,b){this.g(b,(this.j&x)*y+this.i);this.j&=-8193;H(this,this.b)},function(a,b){this.g(this.b,this.f(b));this.g(b,this.b*y+this.i);H(this,this.b+1)},function(a,b){a=this.f(b);this.g(b,this.f(a/y|0));H(this,this.b)},function(a,b){this.g(b,Q.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(b,Q.call(this,this.f(b),this.b))},function(a,b){this.g(this.b,Q.call(this,this.f(b),this.f(this.b)))}, +function(a,b){this.g(this.b,this.g(b,Q.call(this,this.f(b),this.f(this.b))))},function(a,b){this.g(b,Fe.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(b,Fe.call(this,this.f(b),this.b))},function(a,b){this.g(this.b,Fe.call(this,this.f(b),this.f(this.b)))},function(a,b){this.g(this.b,this.g(b,Fe.call(this,this.f(b),this.f(this.b))))},ue,function(a,b){0>Ge(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){Ge(this.f(b),this.b)||H(this,this.i+1)},function(a,b){0>=Ge(this.f(b),this.b)&&H(this, +this.i+1)},function(){H(this,this.i+1)},function(a,b){0<=Ge(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){Ge(this.f(b),this.b)&&H(this,this.i+1)},function(a,b){0Ge(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(a,b){Ge(this.f(b),this.f(this.b))||H(this,this.i+1)},function(a,b){0>=Ge(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(){H(this,this.i+1)},function(a,b){0<=Ge(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(a, +b){Ge(this.f(b),this.f(this.b))&&H(this,this.i+1)},function(a,b){0U(this.f(b))&&H(this,this.b)},function(a,b){U(this.f(b))||H(this,this.b)},function(a,b){0>=U(this.f(b))&&H(this,this.b)},function(){H(this,this.b)},function(a,b){0<=U(this.f(b))&&H(this,this.b)},function(a,b){U(this.f(b))&&H(this,this.b)},function(a,b){0U(a)&& +H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);U(a)||H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);0>=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){H(this,this.i+1);b&&this.g(b,this.f(this.b))},function(a,b){a=this.f(this.b);0<=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.f(this.b);0U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));U(a)||H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));0>=U(a)&&H(this,this.b)},function(a,b){this.g(b,Q.call(this,this.f(b),1));H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));0<=U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),1));0U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));U(a)||H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));0>=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));H(this,this.i+1);b&&this.g(b,a)},function(a,b){a= +this.g(this.b,Q.call(this,this.f(this.b),1));0<=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),1));0U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),B));U(a)||H(this,this.b)},function(a,b){a= +this.g(b,Q.call(this,this.f(b),B));0>=U(a)&&H(this,this.b)},function(a,b){this.g(b,Q.call(this,this.f(b),B));H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),B));0<=U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),B));U(a)&&H(this,this.b)},function(a,b){a=this.g(b,Q.call(this,this.f(b),B));0U(a)&&H(this, +this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),B));U(a)||H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),B));0>=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),B));H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),B));0<=U(a)&&H(this,this.i+1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),B));U(a)&&H(this,this.i+ +1);b&&this.g(b,a)},function(a,b){a=this.g(this.b,Q.call(this,this.f(this.b),B));0>>f.i;0>>= +f.i;0>>a.i;0g&&g>=-A&&(g+=C);for(var g=Math.trunc(Math.abs(g))%C,h=d;f--&&h=na.wb&&c<=na.Sb&&(b=c-(na.wb-na.Nb));b&&(a.preventDefault&&a.preventDefault(),d.eb(b));return!0},c.onkeypress=function(a){a=a||window.event;if(!a.metaKey){var b=a.which||a.keyCode;a.altKey&&b==na.Pb&&(b=na.Ob);d.eb(b);a.preventDefault&&a.preventDefault()}return!0},c.onpaste=function(a){a.stopPropagation&&a.stopPropagation(); +a.preventDefault&&a.preventDefault();(a=a.clipboardData||window.clipboardData)&&d.eb(a.getData("Text"))},c.removeAttribute("readonly"),!0}return!1};m.La=function(a,b,c,d){this.G=a;this.H=b;this.v=c;this.D=d;Pb(this)}; +m.Lb=function(a){if(!this.b){var b=dd(this.G,"connection");if(b){var c=b.split("->");if(2==c.length){var d=Ea(c[0]);if(d!=this.Db)return;c=Ea(c[1]);if(this.b=ub(c)){var e=this.b.exports;if(e){var f=e.connect;f&&f.call(this.b,this.j);if(this.C=e.receiveData){this.j=a;this.status("Connected "+this.$a+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};m.Aa=function(a,b){if(!b)if(this.Lb(this.j),!a)this.reset();else if(!this.restore(a))return!1;return!0}; +m.ra=function(a){return a?this.save():!0};m.reset=function(){};m.save=function(){var a=new G(this);a.set(0,[]);return a.data()};m.restore=function(){return!0};m.eb=function(a){if("number"==typeof a)this.i.push(a);else if("string"==typeof a)for(var b=0,c,d=0;da.C&&a.w.length&&(a.C=0);if(0>a.C||b!=a.w[a.C])a.w.splice(0,0,b),a.C=0;a.C--}else a.V?b="end":b=a.w[a.C+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(Ea(b.substring(c,f))),c=f+1}}return a}function Se(a,b,c){if(32>=a.L)return b&c;b=X(a,b,0,!0);c=X(a,c,0,!0);return((b/Te|0)&(c/Te|0))*Te+((b&c)>>>0)} +function Ue(a,b,c){if(32>=a.L)return b|c;b=X(a,b,0,!0);c=X(a,c,0,!0);return((b/Te|0)^(c/Te|0))*Te+((b^c)>>>0)}Qe.prototype.Ib=function(a,b){return a*b};function X(a,b,c,d){var e=b;c=c||a.L;if(d)if(32==c)e=b>>>0;else if(32>c)e=b&(1<b||b>=a)e=b%a,0>e&&(e+=a)}else 32>=c?e=b<<32-c>>32-c:(a=Math.pow(2,c-1),b>=a?(e=b%a,(b/a|0)&1&&(e-=a)):b<-a&&(e=b%a,((-b-1)/a|0)&1?e&&(e+=a):e||(e-=a)));b!=e&&(b=e);return b} +function Ve(a,b,c,d){for(d=void 0===d?-1:d;d--&&c.length;){var e=c.pop();if(2>b.length)return!1;var f,g=b.pop();f=b.pop();switch(e){case "*":f=a.Ib(f,g);break;case "/":if(!g)return!1;f=Math.trunc(f/g);break;case "^/":if(!g)return!1;f%=g;break;case "+":f+=g;break;case "-":f-=g;break;case "<<":f<<=g;break;case ">>":f>>=g;break;case ">>>":f>>>=g;break;case "<":f=f":f=f>g?1:0;break;case ">=":f=f>=g?1:0;break;case "==":f=f==g?1:0;break;case "!=":f=f!=g?1: +0;break;case "&":f=Se(a,f,g);break;case "!":case "|":e=a;32>=e.L?f|=g:(f=X(e,f,0,!0),g=X(e,g,0,!0),f=(f/Te|0|g/Te|0)*Te+((f|g)>>>0));break;case "^!":f=Ue(a,f,g);break;case "&&":f=f&&g?1:0;break;case "||":f=f||g?1:0;break;case ",,":f=X(a,f,18,!0)*Math.pow(2,18)+X(a,g,18,!0);break;case "_":case "^_":"^_"==e&&(g=35-(g&255));g&&(f=X(a,f,0,!0),f=0=|>>>|>>|>|<=|<<|<|-|\+|\^\/|\/|\*|,,| )/);d=We(a,b,0,b.length,a.T,c);void 0!==d&&e&&cf(a,null,d)}return d} +function Ye(a,b,c){for(;c;){switch(c&3){case 1:b=-X(a,b);break;case 2:b=Ue(a,b,-1);break;case 3:for(var d=35;0<=d&&!Se(a,b,Math.pow(2,d));)d--;b=35-d}c>>>=2}return b} +function Xe(a,b,c,d,e){e=void 0===e?0:e;var f,g=Array.isArray(d)?d:void 0;if(null!=b){f=a.rb(b);if(0<=f)f=a.sb(f);else if(f=b,a.b[f]?f=a.b[f].value:(f=f.substr(0,6),f=a.b[f]&&a.b[f].value),null!=f){var h=a.b[b]&&a.b[b].Mb;h&&(g?g.push(h):(g=bf(a,h,d),void 0!==g?f+=g:(d||a.u("undefined "+(c||"value")+": "+b+" ("+h+")"),f=void 0)))}else f=oa(b,1=a.L?8:6)+" "+c+".",32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'"));a.u((null!=b?b+": ":"")+d);return e}function df(a){var b=a.b;a.b={};return b}function ef(a,b){var c=0;if(a.b){if(b)return cf(a,b,a.b[b]&&a.b[b].value);b=Object.keys(a.b);b.sort();for(var d=0;d=a?8:262143>=a?18:36);b=pa(b,2,a,"",e);break;case 8:b=qa(b,0>2:0,!!e)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c} +var $e={"||":5,"&&":6,"!":7,"|":7,"^!":8,"&":9,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,_:19,"^_":19,"{":20,"}":20},Ze={",,":1,"||":5,"&&":6,"!=":10,"==":10,">=":11,">":11,"<=":11,"<":11,">>>":12,">>":12,"<<":12,"-":13,"+":13,"^/":14,"/":14,"*":14,"!":15,"|":15,"^!":15,"&":15,_:19,"^_":19,"{":20,"}":20},Te=Math.pow(2,32); +function ff(a){Qe.call(this,a);this.Ia=!1;this.Fa=18;this.L=36;this.S=["<",">"];this.ta=[];this.Ha=Y();this.M=Y(0);this.oa=Y(0);this.ha=Y(0);this.I=[];this.i=this.N=this.K=[];gf(this);this.W=this.pa=0;this.j=[];this.Ba=void 0;hf(this);this.D=this;this.va={};this.da=this.Eb=0;this.Z=null;this.R=[];jf(this,a.messages);this.ua=a.commands;this.Ga=[];this.O=0;this.Na=this.Ca=null;this.F=this.Ka=this.Ja=this.na=this.xa=0;this.wa=this.ma=this.ca=null;var b=this;window?void 0===window[u]&&(window[u]=function(a){return id(b, +a)}):void 0===global[u]&&(global[u]=function(a){return id(b,a)})}la(ff,Qe);function kf(a){a=a&&a.B;null==a&&(a=-1);return a}function Y(a,b,c){return{B:void 0===a?null:a,bb:void 0===b?!1:b,qa:!1,T:c}}function lf(a,b,c,d){a.B=b;a.bb=c||!1;a.qa=!1;a.T=d}function mf(a){return[a.B,a.bb,a.qa,a.T,a.fb]}function nf(a,b){var c=Y(b[0],b[1],b[2]);c.qa=b[3];b[4]&&(c.zb=Re(a,c.fb=b[4]));return c}m=ff.prototype; +m.La=function(a,b,c,d){this.H=b;this.G=a;this.v=c;this.ma=a.j;this.Fa=b.F;(b=dd(a,"messages"))&&jf(this,b);if(a=dd(a,"commands"))this.ua=a;of(this,function(a){a:{var b=d.H.b,c=a[0],e=a=0,k=b.length;if(c){a=kf(pf(d,c,d.oa));if(-1===a){d.u("invalid address: "+c);break a}e=a>>>d.H.i;k=1}d.u("blockid physical blockaddr used size type");d.u("-------- --------- --------- ------ ------ ----");for(var c=-1,l=0;k--;){var p=b[e];p.type==c?l++||d.u("..."):(c=p.type,l=Kc[c],p&&d.u(n(p.id,8)+" %"+ +n(e<a&&(a+=C);0>b&&(b+=C);a=De.call(this.v,a,b,!1,!0);a>=A&&(a-=C);return a}; +function pf(a,b,c){var d,e;c||(c=Y());var f=c.B;if(void 0!==b){a:{var g,f=a.S[0],h=a.S[1];g="("==f||"{"==f||"["==f?"\\":"";for(var k="["==f?"\\":"",k=new RegExp(g+f+"([^"+k+f+k+h+"]+)"+g+h);g=b.match(k);){var l=bf(a,g[1]);if(void 0===l){b=void 0;break a}b=b.replace(f+g[1]+h,null!=l?L(a,l):"undefined")}if(a.ta.length)for(f=a.ta[0],h=a.ta[1],g="("==f||"{"==f||"["==f?"\\":"",k="["==f?"\\":"",k=new RegExp(g+f+"([^"+k+f+k+h+"]+)"+g+h);g=b.match(k);)b=b.replace("["+g[1]+"]","unimplemented");for(;f=b.match(/\$([a-z]+)/i);){h= +null;switch(f[1].toLowerCase()){case "ops":h=0}if(null==h)break;b=b.replace(f[0],h.toString())}}"%"==b.charAt(0)&&(d=!0,b=b.substr(1));var p,f=b,q;if(f.match(/^[a-z_][a-z0-9_]*$/i))for(f=f.toUpperCase(),h=0;ha&&a>=-A&&(a+=C);return Math.trunc(Math.abs(a))%Math.pow(2,void 0===b?36:b)}function sf(a,b){return L(a,b/Wb,18)+" "+L(a,b%Wb,18)} +function jf(a,b){a.D=a;a.da=a.Eb=536870916;a.Z=null;a.R=[];b=Re(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var c in ec){var d;a:if(d=void 0,Array.prototype.indexOf)d=b.indexOf(c,d);else{d=d||0;0>d&&(d+=b.length);0>d&&(d=0);for(var e=b.length;d>23&&a.v.oa==b&&(b=wd(a.v,1)));if(0d&&(d=a.v.f(b)),0<=d&&(lf(a.j[a.W],b),++a.W==a.j.length&&(a.W=0)));return!1} +function Lf(a,b,c,d){var e=Y(b.B),f=a.Ma(b,1),g,h,k,l=0,p=f/ac|0,q;for(q in Mf)if(g=Mf[q][p&q]){h=+q;p>>=6;switch(h){case 32512:k=Nf;l=p&3;break;case 32256:k=Of;l=p&7;break;case 29248:k=Pf,l=(p&48)>>2|(p&6)>>1}break}k=k&&k[l]||"";"S"==k&&g>Qf&&(k="B");k=Rf[g||0]+k;if(g){if(28700==h)h=f/bc&127,l=L(a,h,-1);else for(h=f>>23&15,l=L(a,h,-1),p=0;l&&p>18&15)&&(k+="("+L(a,f, +-1)+")")}else k=Da(k,8)+sf(a,f);f=k;g="";h=L(a,e.B,18)+":";if(-1!==e.B&&-1!==b.B){do if(k=a.Ma(e,1),g+=" "+sf(a,k),null==e.B)break;while(e.B!=b.B)}h+=Da(g,16)+f;c&&(h=Da(h,48)+";"+(c||""),h=a.v.A.Ta?h+("cycles="+jd(a.v).toString()+" cs="+n(a.v.Ga)):h+(null!=d?"="+d.toString():""));return h} +function Tf(a,b,c,d,e){var f=-1,g,h;if(b){for(var k=b.toUpperCase(),l=0;lQf&&(J="B");if(k==Rf[h]+J){f=29248!=g?F:(F&3)<<1|(F&12)<<2;f=(D|f<<6)*ac;break}}if(0<=f)break}if(0<=f)break}!(0>f)||c&&c.match(/^[0-9A-Z$%.?]/i)|| +(c=b+c,b="",f=0)}else c&&(f=g=0);if(0<=f&&c)for(k=c.split(","),2h||127h||15h||262143f&&!e&&a.u("unknown instruction: "+b+" "+c);return f}function gf(a){var b,c;a.i=["bp"];if(a.N)for(b=1;b>>d.i],!1)}a.N=["br"];if(a.K)for(b=1;b>>d.i],!0);a.K=["bw"];a.xa=0;a.pa=0} +m.Ra=function(a,b,c){var d=!0;c||Uf(this,a,b,!1,!0);if(a!=this.i){var e=kf(b);if(-1===e)this.u("invalid address: "+L(this,b.B,18)),d=!1;else{var f=this.H;f.b[e>>>f.i].Ra(e&16383,a==this.K)}}d&&(a.push(b),c?b.qa=!0:(Vf(this,a,a.length-1,"set"),hf(this)));return d};function Uf(a,b,c,d,e){var f=!1;c=kf(c);for(var g=1;g>>d.i],b==a.K));h.qa||hf(a);break}}return f} +function Wf(a,b){for(var c=1;cd;d++){!d||d&3||(c+="\n");var e=a,f=qa(d,2);lf(e.Ha,d);f+="="+L(e,e.Ma(e.Ha),36)+" ";c+=f}if(b){b="";for(d=0;d=yf?1:d==vf?23:18)+" "),b+=e;c+="\n"+b}return c}m.Gb=function(a,b){return a[0]>b[0]?1:a[0]>>0,g],q=Fa(p,k,a.Gb);0>q&&p.splice(-(q+1),0,k)}l&&(h.a=l.replace(/''/g,'"'))}a.I.push({Cd:b,B:c,Xb:d,aa:e,Bb:f})}function Zf(a,b,c){var d=[],e=kf(b)>>>0;for(b=0;b>>0,h=f.Xb;if(e>=g&&e>>d.i].g(a,b&16383,b);null==f&&(f=b);b>g&&(g=b);e++});e?(b="start address ",null!=c?(H(a.v,c),b+=L(a,c)):b+="unspecified",a.u(e+" words loaded at "+L(a,f)+"-"+L(a,g)+", "+b),gd(a)):a.u("no data")}function $f(a,b,c,d){var e={},f=a.I[b].Bb,g=0,h=null;0<=c&&c=b[1][0]?b[1]:void 0,e=d?b[2]:b[1],f=pf(a,d,a.ha);if(!e)return a.u("begin assemble at "+L(a,f.B,18)),a.V=!0,K(a.G),!0;var g=e.match(/^(['"]?)(.*?)(\.klm|\.mac|\.html|\.txt|)\1$/i);if(g&&(g[1]||g[3])){f=pf(a,d);if(a.wa)a.u("assembly already in progress");else{var h=g[2]+g[3];g[3]||(c+="s");var k=f.B,l=a.wa=new Fg(a);Hg(l,h,k,c,function(b,c){if(!b)try{var d=l.J;null==d&&(d=k);ag(a,l.U,d)}catch(F){"number"==typeof F?b=F||-1:(a.u(F.message), +b=-1)}b&&a.u("error ("+b+") processing "+(c||h));a.wa=null;b||id(a)})}return!1}b.shift();b.shift();b.shift();b=Tf(a,e,b.join(""),f.B||0);0<=b&&(a.yb(f,b),a.u(Lf(a,f)));return!0}function Ig(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return ef(a)||a.u("no variables"),!0;if(!c[2])return ef(a,c[1]);if(!c[3])return delete a.b[c[1]],!0;b=bf(a,c[3]);return void 0!==b?(a.b[c[1]]={value:b,Mb:void 0},!0):!1}a.u("invalid assignment:"+b);return!1} +function Jg(a,b,c){var d=null;b=pf(a,b);var e=Zf(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.B-e[1])&&(g=" + "+n(f,4,!0)),f=e[0]+" ("+L(a,e[1],18)+")"+g,c&&a.u(f),d=f);4b){a.u("unknown register: "+f);return}var f=0,h=a.v;switch(b){case uf:H(h, +g);lf(a.M,h.i);break;case xf:vd(h,g);break;case yf:f=131072;break;case zf:f=65536;break;case Af:f=32768;break;case Bf:f=8192;break;case Cf:f=32;break;case Df:f=262144}f&&(h.j=g?h.j|f:h.j&~f);K(a.G);a.u("updated registers:")}}a.u(Yf(a,e));c&&(lf(a.M,xd(d)),Jf(a,L(a,a.M.B,18)))}}function Kg(a,b){b=Ea(b);var c=b.match(/^(['"])(.*?)\1$/);c?1h[0].indexOf("+"))){var l=h[0]+":";h[2]&&(l+=" "+h[2]);a.u(l)}h[3]&&(g=h[3],f=null);h=a.ha;l=b;h.B=l.B;h.bb=l.bb;h.qa=l.qa;h.T=l.T;a.u(Lf(a,b,g,f));e-=b.B-k;c++}} +function Xf(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.u(Hf+b):(a.V&&(a.u("ended assemble at "+L(a,a.ha.B,18)),a.V=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.Z=null;if(Eb(a)&&0D||"z"ta.length&&(a.u("note: only "+ta.length+" available"),ga=ta.length);ka-=ga;0>ka&&(null==ta[ta.length-1].B?(ga=ka+ga,ka=0):ka+=ta.length);var Vd=[];"call"==jg&&(Fb=1E5,Vd=["CALL"]);for(void 0!==ig&&a.u(ga+" instructions earlier:");0=ta.length&&(ka=0);a.Ba=ga;lg++;Fb--}}lg|| +(a.u("no "+kg+"history available"),a.Ba=void 0)}else{var Qa=0,og="ds"==lb,Hb=pf(a,sa,a.oa);Ga&&("l"==Ga.charAt(0)?(Ga=Ga.substr(1)||ci,Qa=Xe(a,Ga)):Qa=pf(a,Ga).B-Hb.B,0>Qa&&(Qa=0),65536Ib?".":String.fromCharCode(Ib)),Nc=Nc-7}Ra&&(Ra+="\n");Ra=og?Ra+(ua+","):Ra+(sa+": "+ua+(0>qg?" "+Yd:""))}Ra&&a.u(Ra);a.T=ei}}}break;case "e":if("else"==k[0])break;var rg,sg,tg=k[0],$d=k[1];"e"==tg||"ew"==tg?(rg=a.Ma,sg=a.yb):$d=null;if(null==$d)a.u("edit memory commands:"),a.u("\tew [a] [...] edit words at address a");else for(var ae=pf(a,$d,a.oa),be=2;bede;){for(var Sa=null,ji=256;65536>Lb.B>>>0;){ee.B=a.Ma(Lb,2);if(null==Lb.B||!ji--)break;if(!(ee.B&1)){for(var ki=a,Oc=ee,wg=null,Mb=Oc.B,xg=Mb,fe=1;6>=fe&&Mb;fe++){if(2Dg)a.u("step commands:"),a.u("\tp\tstep over instruction"),a.u("\tpr\tstep over instruction with register update");else if(a.O)a.u("step in progress");else{var Eg=Y(a.v.i);a.Ma(Eg);a.O?(a.Ra(a.i,Eg,!0),Ff(a)||(a.G&&nd(a.G),a.O=0)):Lg(a,Dg?"tr":"t")}break;case "r":if("reset"==b){a.G&&a.G.reset();break}If(a,k);break;case "s":a:switch(k[1]){case "base":if(k[2]){var ob=+k[2];if(2==ob||8==ob||10==ob||16==ob)a.T=ob;else{a.u("invalid base: "+ +ob);break}}a.u("default base: "+a.T);break;case "cs":var Ob;void 0!==k[3]&&(Ob=+k[3]);switch(k[2]){case "int":a.v.pa=Ob;break;case "start":a.v.Ha=Ob;break;case "stop":a.v.ua=Ob;break;default:a.u("unknown cs option");break a}void 0!==Ob&&fd(a.v);a.u("checksums "+(a.v.A.Ta?"enabled":"disabled"));break;case "sp":void 0!==k[2]&&(kd(a.v,+k[2])||a.u("warning: using 1x multiplier, previous target not reached"));a.u("target speed: "+(a.v.ca.toFixed(2)+"Mhz")+" ("+a.v.ha+"x)");break;default:if(k[1]){a.u("unknown option: "+ +k[1]);break}case "?":a.u("debugger options:"),a.u("\tbase #\t\tset default base to #"),a.u("\tcs int #\tset checksum cycle interval to #"),a.u("\tcs start #\tset checksum cycle start count to #"),a.u("\tcs stop #\tset checksum cycle stop count to #"),a.u("\tsp #\t\tset speed multiplier to #")}break;case "t":Lg(a,k[0],k[1]);break;case "u":Jf(a,k[1],k[2],8);break;case "v":if("var"==k[0]){Ig(a,b.substr(3))||(d=!1);break}if("ver"==k[0]){a.u((Ub||"PDP10")+" version 1.36.0 ("+a.v.jb+",RELEASE)");a.u(window? +window.navigator.userAgent:"");break}f=!0;break;case "?":if(k[1]){Kg(a,b.substr(1));break}var ge="commands:",he;for(he in Ng)ge+="\n"+Da(he,9)+Ng[he];yd(a)||(ge+="\nnote: history disabled if no exec breakpoints");a.u(ge);break;default:f=!0}f&&(a.u("unknown command: "+b),d=!1)}}catch(Gg){a.u("Debugger "+(Gg.stack||Gg.message)),d=!1}return d}function id(a,b,c){null!=b&&(a.Ga=Re(a,b,c));for(;b=a.Ga.shift();)if(!Xf(a,b))return!1;return!0} +var Ng={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory","g [#]":"go [to #]",h:"halt","if":"eval expression","int [#]":"request interrupt",k:"stack trace",ln:"list nearest symbol(s)",m:"messages",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",s:"set options","t [#]":"trace","u [#]":"unassemble","var":"assign variable",ver:"print version"},Qf=20,Rf=".WORD HLL HLLZ HLLO HLLE HRL HRLZ HRLO HRLE HRR HRRZ HRRO HRRE HLR HLRZ HLRO HLRE MOVE MOVS MOVN MOVM EXCH BLT PUSH POP LDB DPB IBP ILDB IDPB SETZ SETO SETA SETCA SETM SETCM AND ANDCA ANDCM ANDCB IOR ORCA ORCM ORCB XOR EQV LSH LSHC ROT ROTC ADD SUB MUL IMUL DIV IDIV ASH ASHC FSC FADR FSBR FMPR FDVR DFN UFA FAD FSB FMP FDV AOBJP AOBJN CAI CAM JUMP SKIP AOJ AOS SOJ SOS TR TL TD TS XCT JFFO JFCL JSR JSP JRST JSA JRA PUSHJ POPJ BLKI DATAI BLKO DATAO CONO CONI CONSZ CONSO UUO JOV JCRY0 JCRY1 JCRY JFOV HALT JRSTF JEN".split(" "), +uf=0,vf=1,wf=2,xf=3,yf=4,zf=5,Af=6,Bf=7,Cf=8,Df=9,tf="PC RA EA PS OV C0 C1 BI ND PD".split(" "),Og={},Mf=(Og[28672]={0:101},Og[32704]={5632:64,5696:63,5760:58,5824:27,5888:28,5952:25,6016:29,6080:26,10240:56,10304:48,10368:46,10432:84,10496:57,10560:49,10624:47,10752:21,10816:22,10880:69,10944:70,11008:88,11072:85,11136:83,11264:91,11328:23,11392:24,11456:92,11520:86,11584:87,11648:89,11712:90},Og[32512]={6144:65,6400:59,6656:66,6912:60,7168:67,7424:61,7680:68,7936:62,8192:17,8448:18,8704:19,8960:Qf, +9216:53,9472:52,9728:55,9984:54,11776:50,12032:51,16384:30,16640:36,16896:37,17152:34,17408:38,17664:32,17920:44,18176:40,18432:39,18688:45,18944:33,19200:41,19456:35,19712:42,19968:43,20224:31,20480:1,20736:5,20992:2,21248:6,21504:3,21760:7,22016:4,22272:8,22528:9,22784:13,23040:10,23296:14,23552:11,23808:15,24064:12,24320:16},Og[32256]={12288:71,12800:72,13312:73,13824:74,14336:75,14848:76,15360:77,15872:78},Og[29248]={24576:79,24640:80,25088:81,25152:82},Og[28700]={28672:93,28676:94,28680:95,28684:96, +28688:97,28692:98,28696:99,28700:100},Og),Nf=["","I","M","S"],Of=" L E LE A GE N G".split(" "),Pf="N NE NA NN Z ZE ZA ZN C CE CA CN O OE OA ON".split(" "),Sf=[{0:85,8:102,4:103,2:104,6:105,1:106},{0:88,4:107,2:108,10:109}],Ef=1E3,Hf=">> ";$a(function(){for(var a=v(document,u,"debugger"),b=0;bb.indexOf(":")&&0<=".MAC.KLM".indexOf(b.slice(-4).toUpperCase())&&(b+=".txt");Ja(b,null,!0,function(b,d,e){if(e)a.done&&a.done(e,b);else{e=d;if(Aa(b,".html")){e="";var c;for(b=/
    ([\s\S]*?)<\/pre>/gi;c=b.exec(d);)c=c[1],0<=c.indexOf("&")&&(c=c.replace(/</gi,"<").replace(/>/gi,">").replace(/&/gi,"&")),e+=c;(c=e.match(/&[a-z]+;/i))&&Sg(a,"unrecognized HTML entity '"+c[0]+"'")}d=e.split(/(\r?\n)/);
    +if(d.length&1){if(c=d.pop())Sg(a,"unexpected line '"+c+"'"),d.push(c),d.push("")}else Sg(a,"unexpected number of lines ("+d.length+")");a.D=a.D.concat(d);a.N[a.R]=d.length>>1;a.R++;setTimeout(function(){Rg(a)},0)}})}}
    +function Qg(a){if(0<=a.W.indexOf("p"))a.u(a.D.join(""));else{var b=df(a.b);Tg(a,"APR",0);Tg(a,"PI",4);try{for(var c=0;ca.W.indexOf("d")&&(a.b.b=b)}}
    +function Vg(a,b,c,d,e){var f,g;null!=a.w&&(b=$g(a,b));for(var h=!0,k="";h;){g=b.match(a.ha);if(!g||g[5]&&";"!=g[5].slice(0,1))return a.error("failed to parse line '"+b+"'"),!1;h=!1;k=g[2].toUpperCase();if(k==ah||k==bh)c=null;if(c){for(f=0;fF)break;var q=F+1,J=F+l.length,Mc="",ra="";F&&(Mc=b[F-1]).match(/[0-9A-Z$%.]/i)||!(J>=b.length)&&(ra=b[J]).match(/[0-9A-Z$%.]/i)||
    +("'"==Mc&&F--,"'"==ra&&J++,b=b.substr(0,F)+p+b.substr(J),q=F+p.length,h=!0)}}c=null}if(a.i&&(1==a.i&&(f=b.indexOf(a.C),0<=f?(a.i++,b=b.substr(f+1)):a.error("expected "+a.S+" definition in '"+b+"'")),1=I?a.X+=I:a.error("unrecognized BLOCK expression '"+k+"'");break;case ph:k=c;b=g=0;for(c=36;I=qh(a,k);){k=k.substr(I.length).trim();d=I;if(e=I.match(/^\((.*)\)\s*(.*)$/))e[1]&&(g=Yg(a,"^D"+e[1])),d=e[2];if(g){d=d?Yg(a,d):0;if(void 0===d||0>g||36c&&rh(a,b);break;case sh:(k=c)?(a.J=Yg(a,k),void 0===a.J&&a.error("unrecognized END expression '"+k+"'")):a.J=a.la;break;case th:uh(a,c);break;case vh:Wg(a);break;case wh:a.X=Yg(a,c)||0;break;case xh:Xg(a);break;case yh:uh(a,c.replace(",",",,"));break;case zh:case Ah:case Bh:case Ch:case Dh:case Eh:case Fh:case Gh:case Hh:case Ih:case Jh:case Kh:case ah:case bh:case Lh:case Mh:hh(a,k,g);break;case Nh:k=Oh(a,c);for(I=0;Id.Ea&&Z(a,d.ka);break;case Ih:0>=d.Ea&&Z(a,d.ka);break;case Ah:case Jh:case Bh:case Gh:d.Ea&&Z(a,d.ka);break;case ah:case bh:for(b=0;ba.Da&&(a.Da=a.X);a.X=0}function Zh(a){if(a.G.length){var b=a.G[a.G.length-1].name;b&&a.M.push({name:b,U:a.U,fa:a.fa});b=a.G.pop();a.U=b.U;a.fa=b.fa;a.X=b.X;a.Da=b.Da;a.G.length||-1==a.Da||a.error("scope restore error")}else a.error("scope nesting error")}
    +function qh(a,b){var c;c=void 0===c?",":c;for(var d=0,e=!1,f=null,g=0;d"==h&&0>--g){a.error("missing bracket(s) in '"+b+"'");break}}}g?0f&&(g=g.replace(/\.([^0-9]|$)/g,L(a.b,d,-1)+"$1"),f=bf(a.b,g,c),void 0===f&&a.error("unable to parse expression '"+b+"'",e));return f}
    +function gh(a,b){for(var c=0,d="",e=0,f=-1,g=b.length;e=--c){g=e;break}}0>c&&a.error("missing bracket(s) in '"+b+"'");0<=f&&(d=b.substr(f,g-f));return d}function Ug(a,b){b=void 0===b?a.ia:b;for(var c=0;b>a.N[c];)if(b-=a.N[c],cd?c="":(c=b.substr(d+1),b=b.substr(0,d),a.w=null);a.F+=b}if(null==a.w){var d=b=0,e,f,g=a.F.length;a.S==mh&&g++;for(var h=0;h=k&&(k-=32),k=k+32&63);d+=k*Math.pow(2,f);f-=e;b++;0>f&&(rh(a,d),b=0)}b&&rh(a,d)}return c}
    +function hh(a,b,c){var d,e,f,g,h,k;a.C="<";a.O=">";g=h=k=[];if(b==zh){e=c.match(/([A-Z$%.][0-9A-Z$%.]*)\s*(\([^)]*\)|)\s*,?\s*(<|)([\s\S]*)/i);if(!e)return a.error("unrecognized "+b+" in '"+c+"'"),c;f=e[1];if(e[2]&&","!=e[2]){h=g=Oh(a,e[2],!0);b=[];for(c=0;c");0>l&&(l=h[c].length);b[c]=h[c].substr(d,l-d);h[c]=h[c].substr(0,d)}h=b}d=ai;b=3}else if(b==Lh){a.C="[";a.O="]";e=c.match(/([A-Z$%.][0-9A-Z$%.]*)\s*(\[)([\s\S]*)/i);if(!e)return a.error("unrecognized "+
    +b+" in '"+c+"'"),c;f=e[1];d=Xh;b=2}else if(b==ih)a.C="[",a.O="]",f="?"+xa(++a.ca,5),a.v[f]&&a.error("literal symbol '"+f+"' redefined"),e=[c[0],c.substr(1)],d=bi,b=0;else if(b==ah||b==bh){a.j||a.error(b+" outside of macro");e=c.match(/([A-Z$%.][0-9A-Z$%.]*)\s*,\s*(<|)([\s\S]*)/i);if(!e)return a.error("unrecognized "+b+" operands '"+c+"'"),c;for(d=0;d=C)&&Sg(a,"truncated value "+qa(b)+" at location "+qa(c)+" to "+qa(d));return d}Fg.prototype.error=function(a,b){throw Error("error in "+Ug(this,b)+": "+a);};
    +function Sg(a,b){a.u("warning in "+Ug(a,void 0)+": "+b)}Fg.prototype.u=function(a){this.b?this.b.u(a):console.log(a)};
    +var dh=1,eh=2,fh=4,lh="ASCII",mh="ASCIZ",oh="BLOCK",ph="BYTE",zh="DEFINE",sh="END",th="EXP",Ah="IF1",Bh="IFDEF",Ch="IFDIF",Dh="IFE",Eh="IFG",Fh="IFGE",Gh="IFIDN",Hh="IFL",Ih="IFLE",Jh="IFN",Kh="IFNDEF",ah="IRP",bh="IRPC",Ph="LALL",vh="LIT",ih="LITERAL",Qh="LIST",wh="LOC",Rh="NOSYM",Lh="OPDEF",Sh="PAGE",Nh="PURGE",Mh="REPEAT",nh="SIXBIT",Th="SUBTTL",Uh="TITLE",xh="VAR",Vh="XALL",yh="XWD",Wh="XLIST",ai=-1,Xh=-2,bi=-3,$h=-4;
    +function ni(a,b,c){t.call(this,"Computer",a,33554432);this.A.ba=!1;this.S=null;oi(this,b);this.O=dd(this,"autoPower",a,6);this.w=0;this.Z=+a.busWidth||+a.buswidth;this.M=this.I=this.N=null;this.L=this.W=!1;this.K=this.C=null;this.V=this.R=!1;this.ca=dd(this,"url")||"";(Math.random()+.1).toString(36);this.i=pi(this);if(this.v=vb("CPU",this.id)){this.D=vb("Debugger",this.id);this.H=new Dc({id:this.$a+".bus",busWidth:this.Z},this.v,this.D);var d,e=tb(this.id);if(this.F=(this.j=vb("Panel",this.id))&&
    +this.j.J.print)for(b=0;b\nLicense: GPL version 3 or later ");for(b=0;bqi){if(ri(d,this.M)){this.C=new G(this,"1.36.0",Ai);ri(this.C)&&(Bi(this,d),a=Ci,Di(this.C));this.C.set(xi,Ia());Ei(this.C);var e=this.b&&!this.L;if(a==yi||qb("Click OK to restore the previous "+Ub+" machine state, or CANCEL to reset the machine.")){if(c=wi(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?ri(d,g):("error"==f&&"no machine state"!=
    +g?(this.ja("Error: "+g),"unable to verify user"==g&&(Ta(Fi,""),this.i=null)):this.u(f+": "+g),Di(d),ri(d)?(c=wi(d),e=!0):c=!1))}e&&ui(this,c?d:null)}else a==Ci&&d.clear()}else ui(this);delete this.M;delete this.K}e=tb(this.id);for(f=0;fa[1];a=a[2];this.V=!0;this.A.ba=!0;var d=this.J.power;d&&(d.textContent="Shutdown");this.v&&(Gi(this,this.v,b,c,a),K(this,-2),this.v.ga());this.R&&(Bi(this,b),b.clear());!c&&this.C&&(this.C.clear(),delete this.C);this.w=0};
    +function Bi(a,b){if(qb("There may be a problem with your "+Ub+" machine.\n\nTo help us diagnose it, click OK to send this "+Ub+" machine state to http://www.pcjs.org.")){var c=a.ca;a=a.i||"";b=b.toString();var d={};d.app=Ub;d.ver="1.36.0";d.url=c;d.user=a;d.type="bug";d.data=b;Ja("http://www.pcjs.org/api/v1/report",d,!0)}}
    +function Mg(a,b,c){var d,e="none";if(a.w)return null;a.w--;var f=new G(a,"1.36.0"),g=new G(a,"1.36.0",vi),h=Ia();g.set(xi,h);f.set(xi,h);f.set(Hi,"1.36.0");f.set(Ii,window?window.location.href:null);f.set(Ji,window?window.navigator.userAgent:"");a.v&&a.v.ra&&(c&&(b&&(a.v.A.ga=a.v.A.P),a.v.Y()),d=a.v.ra(b,c),"object"===typeof d&&f.set(a.v.id,d),c&&(a.v.A.ba=!1,!1===d&&(e=null)));for(var h=tb(a.id),k=0;k=d||30<=(c.hb+=d))&&(e.textContent=c.A.P?c.Z.toFixed(2)+"Mhz":"Stopped",c.hb=0)}if(a.j&&(a=a.j,b=b||0,a.L)){c=a.v.A.P;d=!!(a.v.C&8);if(0>=b||60<=(a.K+=b)){e=a.v.i;if(a.J.PC){var f=a.D&&a.D.T||8,e=e||0,e=8==f?qa(e,void 0):n(e,void 0);a.J.PC.textContent!=e&&(a.J.PC.textContent=e)}a.K=0}-1>b?a.i=a.v.i:0g.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(g=window.location.pathname+g),e?"}"==e.slice(-1)?(e=e.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(e?" parms='"+e+"'":"")+(g?' url="'+g+'"':"")));f||(a=a.replace(/().*?(<\/xsl:variable>)/,
    +"$1PDPjs$2"),a=a.replace(/().*?(<\/xsl:variable>)/,"$1"+d+"$2"));g=null;if("<"==a.charAt(0))try{f||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(q){g=null,a=q.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");Ja(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],l,p=/( [a-z]+=)(['"])(.*?)\2/gi;l=p.exec(f);)k=0>k.toLowerCase().indexOf(l[1].toLowerCase())?k.replace(">",l[0]+">"):k.replace(new RegExp(l[1]+"(['\"])(.*?)\\1"),l[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+
    +"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(d[0],g);Ri(a,b,c)}})}else c(a,null)}
    +function Si(a,b,c,d,e){function f(a){if(void 0===k){var b=h&&v(h,"machine-warning");k=b&&b[0]||h}k&&(k.innerHTML=Ba(a))}function g(a){f("Error: "+a);l&&(--Oi||db(!0));l=!1}var h,k,l=!0;Oi++;jb[b]={};try{if(h=document.getElementById(b)){var p;if("object"==typeof resources&&(p=resources.css)){var q=document.head||document.getElementsByTagName("head")[0],D=document.createElement("style");D.type="text/css";D.styleSheet?D.styleSheet.cssText=p:D.appendChild(document.createTextNode(p));q.appendChild(D)}d||
    +(p=a,"pdp"==a.substr(0,3)&&(p="pdpjs"),d="/versions/"+p+"/1.36.0/components.xsl");p=function(e,k){k?Pi(d,null,a,null,!1,f,function(a,e){e?(ib(b,d,a),f("Processing "+c+"..."),window.ActiveXObject||"ActiveXObject"in window?(e=k.transformNode(e))?(h.outerHTML=e,--Oi||db(!0)):g("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(a=new XSLTProcessor,a.importStylesheet(e),(e=a.transformToFragment(k,document))?h.parentNode?(h.parentNode.replaceChild(e,h),--Oi||
    +db(!0)):g("invalid machine element: "+b):g("transformToFragment failed")):g("unable to transform XML: unsupported browser")):g(a)}):g(e)};"<"!=c.charAt(0)?Pi(c,b,a,e,!0,f,p):Qi(c,null,b,a,e,!1,f,p)}else g("missing machine element: "+b)}catch(F){g(F.message)}return l}window.embedPDP10=function(a,b,c,d){db(!1);return Si("pdp10",a,b,c,d)};window.embedPDP11=function(a,b,c,d){db(!1);return Si("pdp11",a,b,c,d)};window.findMachineComponent=function(a,b){return vb(b,a+".machine")};
    +window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!xb[a]){for(var c=!0,d=xb,e=a,f=b.length,g=[],h=[],k="",l=null,p=0;p  1        G       (Ground)
    + *     TD      2  <->  3        RD      (Received Data)
    + *     RD      3  <->  2        TD      (Transmitted Data)
    + *     RTS     4  <->  5        CTS     (Clear To Send)
    + *     CTS     5  <->  4        RTS     (Request To Send)
    + *     DSR   6+8  <->  20       DTR     (Data Terminal Ready)
    + *     SG      7  <->  7        SG      (Signal Ground)
    + *     DTR    20  <->  6+8      DSR     (Data Set Ready + Carrier Detect)
    + *     RI     22  <->  22       RI      (Ring Indicator)
    + *
    + * TODO: Move these definitions to a more appropriate shared file at some point.
    + */
    +var RS232 = {
    +    RTS: {
    +        PIN:  4,
    +        MASK: 0x00000010
    +    },
    +    CTS: {
    +        PIN:  5,
    +        MASK: 0x00000020
    +    },
    +    DSR: {
    +        PIN:  6,
    +        MASK: 0x00000040
    +    },
    +    CD: {
    +        PIN:  8,
    +        MASK: 0x00000100
    +    },
    +    DTR: {
    +        PIN:  20,
    +        MASK: 0x00100000
    +    },
    +    RI: {
    +        PIN:  22,
    +        MASK: 0x00400000
    +    }
    +};
    +
    +/*
    + * NODE should be true if we're running under NodeJS (eg, command-line), false if not (eg, web browser)
    + */
    +var NODE = false;
    +
    +
    +/**
    + * @copyright http://pcjs.org/modules/shared/lib/dumpapi.js (C) Jeff Parsons 2012-2017
    + */
    +
    +/*
    + * Our "DiskDump API", such as it was, used to look like:
    + *
    + *      http://jsmachines.net/bin/convdisk.php?disk=/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json&format=img
    + *
    + * To make it (a bit) more "REST-like", the above request now looks like:
    + *
    + *      http://www.pcjs.org/api/v1/dump?disk=/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json&format=img
    + *
    + * Similarly, our "FileDump API" used to look like:
    + *
    + *      http://jsmachines.net/bin/convrom.php?rom=/devices/pc/rom/5150/1981-04-24/PCBIOS-REV1.rom&format=json
    + *
    + * and that request now looks like:
    + *
    + *      http://www.pcjs.org/api/v1/dump?file=/devices/pc/rom/5150/1981-04-24/PCBIOS-REV1.rom&format=json
    + *
    + * I don't think it makes sense to avoid "query" parameters, because blending the path of a disk image with the
    + * the rest of the URL would be (a) confusing, and (b) more work to parse.
    + */
    +var DumpAPI = {
    +    ENDPOINT:       "/api/v1/dump",
    +    QUERY: {
    +        DIR:        "dir",      // value is path of a directory (DiskDump only)
    +        DISK:       "disk",     // value is path of a disk image (DiskDump only)
    +        FILE:       "file",     // value is path of a ROM image file (FileDump only)
    +        IMG:        "img",      // alias for DISK
    +        PATH:       "path",     // value is path of a one or more files (DiskDump only)
    +        FORMAT:     "format",   // value is one of FORMAT values below
    +        COMMENTS:   "comments", // value is either "true" or "false"
    +        DECIMAL:    "decimal",  // value is either "true" to force all numbers to decimal, "false" or undefined otherwise
    +        MBHD:       "mbhd",     // value is hard drive size in Mb (formerly "mbsize") (DiskDump only) (DEPRECATED)
    +        SIZE:       "size"      // value is target disk size in Kb (supersedes "mbhd") (DiskDump only)
    +    },
    +    FORMAT: {
    +        JSON:       "json",     // default
    +        JSON_GZ:    "gz",       // gzip is currently used ONLY for compressed JSON
    +        DATA:       "data",     // same as "json", but built without JSON.stringify() (DiskDump only)
    +        HEX:        "hex",      // deprecated
    +        OCTAL:      "octal",    // displays data as octal words
    +        BYTES:      "bytes",    // displays data as hex bytes; normally used only when comments are enabled
    +        WORDS:      "words",    // displays data as hex words; normally used only when comments are enabled
    +        LONGS:      "longs",    // displays data as dwords
    +        IMG:        "img",      // returns the raw disk data (ie, using a Buffer object) (DiskDump only)
    +        ROM:        "rom"       // returns the raw file data (ie, using a Buffer object) (FileDump only)
    +    }
    +};
    +
    +/*
    + * Because we use an overloaded API endpoint (ie, one that's shared with the FileDump module), we must
    + * also provide a list of commands which, when combined with the endpoint, define a unique request.
    + */
    +DumpAPI.asDiskCommands = [DumpAPI.QUERY.DIR, DumpAPI.QUERY.DISK, DumpAPI.QUERY.PATH];
    +DumpAPI.asFileCommands = [DumpAPI.QUERY.FILE];
    +
    +
    +
    +/**
    + * @copyright http://pcjs.org/modules/shared/lib/reportapi.js (C) Jeff Parsons 2012-2017
    + */
    +
    +var ReportAPI = {
    +    ENDPOINT:       "/api/v1/report",
    +    QUERY: {
    +        APP:        "app",
    +        VER:        "ver",
    +        URL:        "url",
    +        USER:       "user",
    +        TYPE:       "type",
    +        DATA:       "data"
    +    },
    +    TYPE: {
    +        BUG:        "bug"
    +    },
    +    RES: {
    +        OK:         "Thank you"
    +    }
    +};
    +
    +
    +
    +/**
    + * @copyright http://pcjs.org/modules/shared/lib/userapi.js (C) Jeff Parsons 2012-2017
    + */
    +
    +/*
    + * Examples of User API requests:
    + *
    + *      web.getHost() + UserAPI.ENDPOINT + '?' + UserAPI.QUERY.REQ + '=' + UserAPI.REQ.VERIFY + '&' + UserAPI.QUERY.USER + '=' + sUser;
    + */
    +var UserAPI = {
    +    ENDPOINT:       "/api/v1/user",
    +    QUERY: {
    +        REQ:        "req",      // specifies a request
    +        USER:       "user",     // specifies a user ID
    +        STATE:      "state",    // specifies a state ID
    +        DATA:       "data"      // specifies state data
    +    },
    +    REQ: {
    +        CREATE:     "create",   // creates a user ID
    +        VERIFY:     "verify",   // requests verification of a user ID
    +        STORE:      "store",    // stores a machine state on the server
    +        LOAD:       "load"      // loads a machine state from the server
    +    },
    +    RES: {
    +        CODE:       "code",
    +        DATA:       "data"
    +    },
    +    CODE: {
    +        OK:         "ok",
    +        FAIL:       "error"
    +    },
    +    FAIL: {
    +        DUPLICATE:  "user already exists",
    +        VERIFY:     "unable to verify user",
    +        BADSTATE:   "invalid state parameter",
    +        NOSTATE:    "no machine state",
    +        BADLOAD:    "unable to load machine state",
    +        BADSTORE:   "unable to save machine state"
    +    }
    +};
    +
    +
    +
    +/**
    + * @copyright http://pcjs.org/modules/shared/lib/keys.js (C) Jeff Parsons 2012-2017
    + */
    +
    +var Keys = {
    +    /*
    +     * Keys and/or key combinations that generate common ASCII codes.
    +     *
    +     * NOTE: If you're looking for a general-purpose ASCII code table, see Str.ASCII in strlib.js;
    +     * if something's missing, that's probably the more appropriate table to add it to.
    +     *
    +     * TODO: The Closure Compiler doesn't inline all references to these values, at least those with
    +     * quoted property names, which is why I've 'unquoted' as many of them as possible.  One solution
    +     * would be to add mnemonics for all of them, not just the non-printable ones (eg, SPACE instead
    +     * of ' ', AMP instead of '&', etc.)
    +     */
    +    ASCII: {
    +          BREAK:  0, CTRL_A:  1, CTRL_B:  2, CTRL_C:  3, CTRL_D:  4, CTRL_E:  5, CTRL_F:  6, CTRL_G:  7,
    +         CTRL_H:  8, CTRL_I:  9, CTRL_J: 10, CTRL_K: 11, CTRL_L: 12, CTRL_M: 13, CTRL_N: 14, CTRL_O: 15,
    +         CTRL_P: 16, CTRL_Q: 17, CTRL_R: 18, CTRL_S: 19, CTRL_T: 20, CTRL_U: 21, CTRL_V: 22, CTRL_W: 23,
    +         CTRL_X: 24, CTRL_Y: 25, CTRL_Z: 26,
    +            ' ': 32,    '!': 33,    '"': 34,    '#': 35,    '$': 36,    '%': 37,    '&': 38,    "'": 39,
    +            '(': 40,    ')': 41,    '*': 42,    '+': 43,    ',': 44,    '-': 45,    '.': 46,    '/': 47,
    +            '0': 48,    '1': 49,    '2': 50,    '3': 51,    '4': 52,    '5': 53,    '6': 54,    '7': 55,
    +            '8': 56,    '9': 57,    ':': 58,    ';': 59,    '<': 60,    '=': 61,    '>': 62,    '?': 63,
    +            '@': 64,     A:  65,     B:  66,     C:  67,     D:  68,     E:  69,     F:  70,     G:  71,
    +             H:  72,     I:  73,     J:  74,     K:  75,     L:  76,     M:  77,     N:  78,     O:  79,
    +             P:  80,     Q:  81,     R:  82,     S:  83,     T:  84,     U:  85,     V:  86,     W:  87,
    +             X:  88,     Y:  89,     Z:  90,    '[': 91,    '\\':92,    ']': 93,    '^': 94,    '_': 95,
    +            '`': 96,     a:  97,     b:  98,     c:  99,     d: 100,     e: 101,     f: 102,     g: 103,
    +             h:  104,    i: 105,     j: 106,     k: 107,     l: 108,     m: 109,     n: 110,     o: 111,
    +             p:  112,    q: 113,     r: 114,     s: 115,     t: 116,     u: 117,     v: 118,     w: 119,
    +             x:  120,    y: 121,     z: 122,    '{':123,    '|':124,    '}':125,    '~':126,   DEL: 127
    +    },
    +    /*
    +     * Browser keyCodes we must pay particular attention to.  For the most part, these are non-alphanumeric
    +     * or function keys, some which may require special treatment (eg, preventDefault() if returning false on
    +     * the initial keyDown event is insufficient).
    +     *
    +     * keyCodes for most common ASCII keys can simply use the appropriate ASCII code above.
    +     *
    +     * Most of these represent non-ASCII keys (eg, the LEFT arrow key), yet for some reason, browsers defined
    +     * them using ASCII codes (eg, the LEFT arrow key uses the ASCII code for '%' or 37).
    +     */
    +    KEYCODE: {
    +        /* 0x08 */ BS:          8,          // BACKSPACE        (ASCII.CTRL_H)
    +        /* 0x09 */ TAB:         9,          // TAB              (ASCII.CTRL_I)
    +        /* 0x0A */ LF:          10,         // LINE FEED        (ASCII.CTRL_J) (TODO: Determine if any key actually generates this)
    +        /* 0x0D */ CR:          13,         // CARRIAGE RETURN  (ASCII.CTRL_M)
    +        /* 0x10 */ SHIFT:       16,
    +        /* 0x11 */ CTRL:        17,
    +        /* 0x12 */ ALT:         18,
    +        /* 0x13 */ PAUSE:       19,         // PAUSE/BREAK
    +        /* 0x14 */ CAPS_LOCK:   20,
    +        /* 0x1B */ ESC:         27,
    +        /* 0x20 */ SPACE:       32,
    +        /* 0x21 */ PGUP:        33,
    +        /* 0x22 */ PGDN:        34,
    +        /* 0x23 */ END:         35,
    +        /* 0x24 */ HOME:        36,
    +        /* 0x25 */ LEFT:        37,
    +        /* 0x26 */ UP:          38,
    +        /* 0x27 */ RIGHT:       39,
    +        /* 0x27 */ FF_QUOTE:    39,
    +        /* 0x28 */ DOWN:        40,
    +        /* 0x2C */ FF_COMMA:    44,
    +        /* 0x2C */ PRTSC:       44,
    +        /* 0x2D */ INS:         45,
    +        /* 0x2E */ DEL:         46,
    +        /* 0x2E */ FF_PERIOD:   46,
    +        /* 0x2F */ FF_SLASH:    47,
    +        /* 0x30 */ ZERO:        48,
    +        /* 0x31 */ ONE:         49,
    +        /* 0x32 */ TWO:         50,
    +        /* 0x33 */ THREE:       51,
    +        /* 0x34 */ FOUR:        52,
    +        /* 0x35 */ FIVE:        53,
    +        /* 0x36 */ SIX:         54,
    +        /* 0x37 */ SEVEN:       55,
    +        /* 0x38 */ EIGHT:       56,
    +        /* 0x39 */ NINE:        57,
    +        /* 0x3B */ FF_SEMI:     59,
    +        /* 0x3D */ FF_EQUALS:   61,
    +        /* 0x5B */ CMD:         91,         // aka WIN
    +        /* 0x5B */ FF_LBRACK:   91,
    +        /* 0x5C */ FF_BSLASH:   92,
    +        /* 0x5D */ RCMD:        93,         // aka MENU
    +        /* 0x5D */ FF_RBRACK:   93,
    +        /* 0x60 */ NUM_0:       96,
    +        /* 0x60 */ NUM_INS:     96,
    +        /* 0x60 */ FF_BQUOTE:   96,
    +        /* 0x61 */ NUM_1:       97,
    +        /* 0x61 */ NUM_END:     97,
    +        /* 0x62 */ NUM_2:       98,
    +        /* 0x62 */ NUM_DOWN:    98,
    +        /* 0x63 */ NUM_3:       99,
    +        /* 0x63 */ NUM_PGDN:    99,
    +        /* 0x64 */ NUM_4:       100,
    +        /* 0x64 */ NUM_LEFT:    100,
    +        /* 0x65 */ NUM_5:       101,
    +        /* 0x65 */ NUM_CENTER:  101,
    +        /* 0x66 */ NUM_6:       102,
    +        /* 0x66 */ NUM_RIGHT:   102,
    +        /* 0x67 */ NUM_7:       103,
    +        /* 0x67 */ NUM_HOME:    103,
    +        /* 0x68 */ NUM_8:       104,
    +        /* 0x68 */ NUM_UP:      104,
    +        /* 0x69 */ NUM_9:       105,
    +        /* 0x69 */ NUM_PGUP:    105,
    +        /* 0x6A */ NUM_MUL:     106,
    +        /* 0x6B */ NUM_ADD:     107,
    +        /* 0x6D */ NUM_SUB:     109,
    +        /* 0x6E */ NUM_DEL:     110,        // aka PERIOD
    +        /* 0x6F */ NUM_DIV:     111,
    +        /* 0x70 */ F1:          112,
    +        /* 0x71 */ F2:          113,
    +        /* 0x72 */ F3:          114,
    +        /* 0x73 */ F4:          115,
    +        /* 0x74 */ F5:          116,
    +        /* 0x75 */ F6:          117,
    +        /* 0x76 */ F7:          118,
    +        /* 0x77 */ F8:          119,
    +        /* 0x78 */ F9:          120,
    +        /* 0x79 */ F10:         121,
    +        /* 0x7A */ F11:         122,
    +        /* 0x7B */ F12:         123,
    +        /* 0x90 */ NUM_LOCK:    144,
    +        /* 0x91 */ SCROLL_LOCK: 145,
    +        /* 0xAD */ FF_DASH:     173,
    +        /* 0xBA */ SEMI:        186,        // Firefox:  59 (FF_SEMI)
    +        /* 0xBB */ EQUALS:      187,        // Firefox:  61 (FF_EQUALS)
    +        /* 0xBC */ COMMA:       188,
    +        /* 0xBD */ DASH:        189,        // Firefox: 173 (FF_DASH)
    +        /* 0xBE */ PERIOD:      190,
    +        /* 0xBF */ SLASH:       191,
    +        /* 0xC0 */ BQUOTE:      192,
    +        /* 0xDB */ LBRACK:      219,
    +        /* 0xDC */ BSLASH:      220,
    +        /* 0xDD */ RBRACK:      221,
    +        /* 0xDE */ QUOTE:       222,
    +        /* 0xE0 */ FF_CMD:      224,        // Firefox only (used for both CMD and RCMD)
    +        //
    +        // The following biases use what I'll call Decimal Coded Binary or DCB (the opposite of BCD),
    +        // where the thousands digit is used to store the sum of "binary" digits 1 and/or 2 and/or 4.
    +        //
    +        // Technically, that makes it DCO (Decimal Coded Octal), but then again, BCD should have really
    +        // been called HCD (Hexadecimal Coded Decimal), so if "they" can take liberties, so can I.
    +        //
    +        // ONDOWN is a bias we add to browser keyCodes that we want to handle on "down" rather than on "press".
    +        //
    +        ONDOWN:                 1000,
    +        //
    +        // ONRIGHT is a bias we add to browser keyCodes that need to check for a "right" location (default is "left")
    +        //
    +        ONRIGHT:                2000,
    +        //
    +        // FAKE is a bias we add to signal these are fake keyCodes corresponding to internal keystroke combinations.
    +        // The actual values are for internal use only and merely need to be unique and used consistently.
    +        //
    +        FAKE:                   4000
    +    },
    +    /*
    +     * The set of values that a browser may store in the 'location' property of a keyboard event object
    +     * which we also support.
    +     */
    +    LOCATION: {
    +        LEFT:                   1,
    +        RIGHT:                  2,
    +        NUMPAD:                 3
    +    }
    +};
    +
    +/*
    + * Check the event object's 'location' property for a non-zero value for the following ONRIGHT keys.
    + */
    +Keys.KEYCODE.NUM_CR = Keys.KEYCODE.CR + Keys.KEYCODE.ONRIGHT;
    +
    +
    +/*
    + * Maps Firefox keyCodes to their more common keyCode counterparts; a number of entries in this table
    + * are no longer valid (if indeed they ever were), so they've been commented out.  It's likely that I
    + * simply extended this table to resolve additional differences in other browsers (ie, Opera), but without
    + * browser-specific checks, it's not safe to perform all the mappings shown below.
    + */
    +Keys.FF_KEYCODES = {};
    +Keys.FF_KEYCODES[Keys.KEYCODE.FF_SEMI]   = Keys.KEYCODE.SEMI;           //  59 -> 186
    +Keys.FF_KEYCODES[Keys.KEYCODE.FF_EQUALS] = Keys.KEYCODE.EQUALS;         //  61 -> 187
    +Keys.FF_KEYCODES[Keys.KEYCODE.FF_DASH]   = Keys.KEYCODE.DASH;           // 173 -> 189
    +Keys.FF_KEYCODES[Keys.KEYCODE.FF_CMD]    = Keys.KEYCODE.CMD;            // 224 -> 91
    +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_COMMA]  = Keys.KEYCODE.COMMA;       //  44 -> 188
    +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_PERIOD] = Keys.KEYCODE.PERIOD;      //  46 -> 190
    +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_SLASH]  = Keys.KEYCODE.SLASH;       //  47 -> 191
    +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_BQUOTE] = Keys.KEYCODE.BQUOTE;      //  96 -> 192
    +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_LBRACK  = Keys.KEYCODE.LBRACK;      //  91 -> 219
    +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_BSLASH] = Keys.KEYCODE.BSLASH;      //  92 -> 220
    +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_RBRACK] = Keys.KEYCODE.RBRACK;      //  93 -> 221
    +// Keys.FF_KEYCODES[Keys.KEYCODE.FF_QUOTE]  = Keys.KEYCODE.QUOTE;       //  39 -> 222
    +
    +/*
    + * Maps non-ASCII keyCodes to their ASCII counterparts
    + */
    +Keys.NONASCII_KEYCODES = {};
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.FF_DASH] = Keys.ASCII['-'];         // 173 -> 45
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.SEMI]    = Keys.ASCII[';'];         // 186 -> 59
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.EQUALS]  = Keys.ASCII['='];         // 187 -> 61
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.DASH]    = Keys.ASCII['-'];         // 189 -> 45
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.COMMA]   = Keys.ASCII[','];         // 188 -> 44
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.PERIOD]  = Keys.ASCII['.'];         // 190 -> 46
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.SLASH]   = Keys.ASCII['/'];         // 191 -> 47
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.BQUOTE]  = Keys.ASCII['`'];         // 192 -> 96
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.LBRACK]  = Keys.ASCII['['];         // 219 -> 91
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.BSLASH]  = Keys.ASCII['\\'];        // 220 -> 92
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.RBRACK]  = Keys.ASCII[']'];         // 221 -> 93
    +Keys.NONASCII_KEYCODES[Keys.KEYCODE.QUOTE]   = Keys.ASCII["'"];         // 222 -> 39
    +
    +/*
    + * Maps unshifted keyCodes to their shifted counterparts; to be used when a shift-key is down.
    + * Alphabetic characters are handled in code, since they must also take CAPS_LOCK into consideration.
    + */
    +Keys.SHIFTED_KEYCODES = {};
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['1']]     = Keys.ASCII['!'];
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['2']]     = Keys.ASCII['@'];
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['3']]     = Keys.ASCII['#'];
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['4']]     = Keys.ASCII['$'];
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['5']]     = Keys.ASCII['%'];
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['6']]     = Keys.ASCII['^'];
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['7']]     = Keys.ASCII['&'];
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['8']]     = Keys.ASCII['*'];
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['9']]     = Keys.ASCII['('];
    +Keys.SHIFTED_KEYCODES[Keys.ASCII['0']]     = Keys.ASCII[')'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.SEMI]   = Keys.ASCII[':'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.EQUALS] = Keys.ASCII['+'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.COMMA]  = Keys.ASCII['<'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.DASH]   = Keys.ASCII['_'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.PERIOD] = Keys.ASCII['>'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.SLASH]  = Keys.ASCII['?'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.BQUOTE] = Keys.ASCII['~'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.LBRACK] = Keys.ASCII['{'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.BSLASH] = Keys.ASCII['|'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.RBRACK] = Keys.ASCII['}'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.QUOTE]  = Keys.ASCII['"'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.FF_DASH]   = Keys.ASCII['_'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.FF_EQUALS] = Keys.ASCII['+'];
    +Keys.SHIFTED_KEYCODES[Keys.KEYCODE.FF_SEMI]   = Keys.ASCII[':'];
    +
    +
    +
    +/**
    + * @copyright http://pcjs.org/modules/shared/lib/strlib.js (C) Jeff Parsons 2012-2017
    + */
    +
    +class Str {
    +    /**
    +     * isValidInt(s, base)
    +     *
    +     * The built-in parseInt() function has the annoying feature of returning a partial value (ie,
    +     * up to the point where it encounters an invalid character); eg, parseInt("foo", 16) returns 0xf.
    +     *
    +     * So it's best to use our own Str.parseInt() function, which will in turn use this function to
    +     * validate the entire string.
    +     *
    +     * @param {string} s is the string representation of some number
    +     * @param {number} [base] is the radix to use (default is 10); only 2, 8, 10 and 16 are supported
    +     * @return {boolean} true if valid, false if invalid (or the specified base isn't supported)
    +     */
    +    static isValidInt(s, base)
    +    {
    +        if (!base || base == 10) return s.match(/^-?[0-9]+$/) !== null;
    +        if (base == 16) return s.match(/^-?[0-9a-f]+$/i) !== null;
    +        if (base == 8) return s.match(/^-?[0-7]+$/) !== null;
    +        if (base == 2) return s.match(/^-?[01]+$/) !== null;
    +        return false;
    +    }
    +
    +    /**
    +     * parseInt(s, base)
    +     *
    +     * This is a wrapper around the built-in parseInt() function.  Our wrapper recognizes certain prefixes
    +     * ('$' or "0x" for hex, '#' or "0o" for octal) and suffixes ('.' for decimal, 'h' for hex, 'y' for
    +     * binary), and then calls isValidInt() to ensure we don't convert strings that contain partial values;
    +     * see isValidInt() for details.
    +     *
    +     * The use of multiple prefix/suffix combinations is undefined (although for the record, we process
    +     * prefixes first).  We do NOT support the "0b" prefix to indicate binary UNLESS one or more commas are
    +     * also present (because "0b" is also a valid hex sequence), and we do NOT support a single leading zero
    +     * to indicate octal (because such a number could also be decimal or hex).  Any number of commas are
    +     * allowed; we remove them all before calling the built-in parseInt().
    +     *
    +     * More recently, we've added support for "^D", "^O", and "^B" prefixes to accommodate the base overrides
    +     * that the PDP-10's MACRO-10 assembly language supports (decimal, octal, and binary, respectively).
    +     * If this support turns out to adversely affect other debuggers, then it will have to be "conditionalized".
    +     * Similarly, we've added support for "K", "M", and "G" MACRO-10-style suffixes that add 3, 6, or 9 zeros
    +     * to the value to be parsed, respectively.
    +     *
    +     * @param {string} s is the string representation of some number
    +     * @param {number} [base] is the radix to use (default is 10); can be overridden by prefixes/suffixes
    +     * @return {number|undefined} corresponding value, or undefined if invalid
    +     */
    +    static parseInt(s, base)
    +    {
    +        var value;
    +
    +        if (s) {
    +            if (!base) base = 10;
    +
    +            var ch, chPrefix, chSuffix;
    +            var fCommas = (s.indexOf(',') > 0);
    +            if (fCommas) s = s.replace(/,/g, '');
    +
    +            ch = chPrefix = s.charAt(0);
    +            if (chPrefix == '#') {
    +                base = 8;
    +                chPrefix = '';
    +            }
    +            else if (chPrefix == '$') {
    +                base = 16;
    +                chPrefix = '';
    +            }
    +            if (ch != chPrefix) {
    +                s = s.substr(1);
    +            }
    +            else {
    +                ch = chPrefix = s.substr(0, 2);
    +                if (chPrefix == '0b' && fCommas || chPrefix == '^B') {
    +                    base = 2;
    +                    chPrefix = '';
    +                }
    +                else if (chPrefix == '0o' || chPrefix == '^O') {
    +                    base = 8;
    +                    chPrefix = '';
    +                }
    +                else if (chPrefix == '^D') {
    +                    base = 10;
    +                    chPrefix = '';
    +                }
    +                else if (chPrefix == '0x') {
    +                    base = 16;
    +                    chPrefix = '';
    +                }
    +                if (ch != chPrefix) s = s.substr(2);
    +            }
    +            ch = chSuffix = s.slice(-1);
    +            if (chSuffix == 'Y' || chSuffix == 'y') {
    +                base = 2;
    +                chSuffix = '';
    +            }
    +            else if (chSuffix == '.') {
    +                base = 10;
    +                chSuffix = '';
    +            }
    +            else if (chSuffix == 'H' || chSuffix == 'h') {
    +                base = 16;
    +                chSuffix = '';
    +            }
    +            else if (chSuffix == 'K') {
    +                chSuffix = '000';
    +            }
    +            else if (chSuffix == 'M') {
    +                chSuffix = '000000';
    +            }
    +            else if (chSuffix == 'G') {
    +                chSuffix = '000000000';
    +            }
    +            if (ch != chSuffix) s = s.slice(0, -1) + chSuffix;
    +            /*
    +             * This adds support for the MACRO-10 binary shifting (Bn) suffix, which must be stripped from the
    +             * number before parsing, and then applied to the value after parsing.  If n is omitted, 35 is assumed,
    +             * which is a net shift of zero.  If n < 35, then a left shift of (35 - n) is required; if n > 35, then
    +             * a right shift of -(35 - n) is required.
    +             */
    +            var v, shift = 0;
    +            if (base <= 10) {
    +                var match = s.match(/(-?[0-9]+)B([0-9]*)/);
    +                if (match) {
    +                    s = match[1];
    +                    shift = 35 - ((match[2] || 35) & 0xff);
    +                }
    +            }
    +            if (Str.isValidInt(s, base) && !isNaN(v = parseInt(s, base))) {
    +                /*
    +                 * With the need to support larger (eg, 36-bit) integers, truncating to 32 bits is no longer helpful.
    +                 *
    +                 *      value = v|0;
    +                 */
    +                if (shift) {
    +                    /*
    +                     * Since binary shifting is a logical operation, and since shifting by division only works properly
    +                     * with positive numbers, we must convert a negative value to a positive value, by computing the two's
    +                     * complement.
    +                     */
    +                    if (v < 0) v += Math.pow(2, 36);
    +                    if (shift > 0) {
    +                        v *= Math.pow(2, shift);
    +                    } else {
    +                        v = Math.trunc(v / Math.pow(2, -shift));
    +                    }
    +                }
    +                value = v;
    +            }
    +        }
    +        return value;
    +    }
    +
    +    /**
    +     * toBase(n, radix, cch, sPrefix, nGrouping)
    +     *
    +     * Displays the given number as an unsigned integer using the specified radix and number of digits.
    +     *
    +     * @param {number|null|undefined} n
    +     * @param {number} radix (ie, the base)
    +     * @param {number} cch (the desired number of digits)
    +     * @param {string} [sPrefix] (default is none)
    +     * @param {number} [nGrouping]
    +     * @return {string}
    +     */
    +    static toBase(n, radix, cch, sPrefix = "", nGrouping = 0)
    +    {
    +        /*
    +         * An initial "falsey" check for null takes care of both null and undefined;
    +         * we can't rely entirely on isNaN(), because isNaN(null) returns false, oddly enough.
    +         *
    +         * Alternatively, we could mask and shift n regardless of whether it's null/undefined/NaN,
    +         * since JavaScript coerces such operands to zero, but I think there's "value" in seeing those
    +         * values displayed differently.
    +         */
    +        var s = "";
    +        if (isNaN(n)) {
    +            n = null;
    +        } else if (n != null) {
    +            /*
    +             * Callers that produced an input by dividing by a power of two rather than shifting (in order
    +             * to access more than 32 bits) may produce a fractional result, which ordinarily we would simply
    +             * ignore, but if the integer portion is zero and the sign is negative, we should probably treat
    +             * this value as a sign-extension.
    +             */
    +            if (n < 0 && n > -1) n = -1;
    +            /*
    +             * Negative values should be two's complemented according to the number of digits; for example,
    +             * 12 octal digits implies an upper limit 8^12.
    +             */
    +            if (n < 0) {
    +                n += Math.pow(radix, cch);
    +            }
    +            if (n >= Math.pow(radix, cch)) {
    +                cch = Math.ceil(Math.log(n) / Math.log(radix));
    +            }
    +        }
    +        var g = nGrouping || -1;
    +        while (cch-- > 0) {
    +            if (!g) {
    +                s = ',' + s;
    +                g = nGrouping;
    +            }
    +            if (n == null) {
    +                s = '?' + s;
    +            } else {
    +                var d = n % radix;
    +                d += (d >= 0 && d <= 9? 0x30 : 0x41 - 10);
    +                s = String.fromCharCode(d) + s;
    +                n = Math.trunc(n / radix);
    +            }
    +            g--;
    +        }
    +        return sPrefix + s;
    +    }
    +
    +    /**
    +     * toBin(n, cch, nGrouping)
    +     *
    +     * Converts an integer to binary, with the specified number of digits (up to a maximum of 36).
    +     *
    +     * @param {number|null|undefined} n (supports integers up to 36 bits now)
    +     * @param {number} [cch] is the desired number of binary digits (0 or undefined for default of either 8, 18, or 36)
    +     * @param {number} [nGrouping]
    +     * @return {string} the binary representation of n
    +     */
    +    static toBin(n, cch, nGrouping)
    +    {
    +        if (!cch) {
    +            // cch = Math.ceil(Math.log(Math.abs(n) + 1) / Math.LN2) || 1;
    +            var v = Math.abs(n);
    +            if (v <= 0b11111111) {
    +                cch = 8;
    +            } else if (v <= 0b111111111111111111) {
    +                cch = 18;
    +            } else {
    +                cch = 36;
    +            }
    +        } else if (cch > 36) cch = 36;
    +        return Str.toBase(n, 2, cch, "", nGrouping);
    +    }
    +
    +    /**
    +     * toBinBytes(n, cb, fPrefix)
    +     *
    +     * Converts an integer to binary, with the specified number of bytes (up to the default of 4).
    +     *
    +     * @param {number|null|undefined} n (interpreted as a 32-bit value)
    +     * @param {number} [cb] is the desired number of binary bytes (4 is both the default and the maximum)
    +     * @param {boolean} [fPrefix]
    +     * @return {string} the binary representation of n
    +     */
    +    static toBinBytes(n, cb, fPrefix)
    +    {
    +        var s = "";
    +        if (!cb || cb > 4) cb = 4;
    +        for (var i = 0; i < cb; i++) {
    +            if (s) s = ',' + s;
    +            s = Str.toBin(n & 0xff, 8) + s;
    +            n >>= 8;
    +        }
    +        return (fPrefix? "0b" : "") + s;
    +    }
    +
    +    /**
    +     * toOct(n, cch, fPrefix)
    +     *
    +     * Converts an integer to octal, with the specified number of digits (default of 6; max of 12)
    +     *
    +     * You might be tempted to use the built-in n.toString(8) instead, but it doesn't zero-pad and it
    +     * doesn't properly convert negative values.  Moreover, if n is undefined, n.toString() will throw
    +     * an exception, whereas this function will return '?' characters.
    +     *
    +     * @param {number|null|undefined} n (supports integers up to 36 bits now)
    +     * @param {number} [cch] is the desired number of octal digits (0 or undefined for default of either 6, 8, or 12)
    +     * @param {boolean} [fPrefix]
    +     * @return {string} the octal representation of n
    +     */
    +    static toOct(n, cch, fPrefix)
    +    {
    +        if (!cch) {
    +            // cch = Math.ceil(Math.log(Math.abs(n) + 1) / Math.log(8)) || 1;
    +            var v = Math.abs(n);
    +            if (v <= 0o777777) {
    +                cch = 6;
    +            } else if (v <= 0o77777777) {
    +                cch = 8;
    +            } else {
    +                cch = 12;
    +            }
    +        } else if (cch > 12) cch = 12;
    +        return Str.toBase(n, 8, cch, fPrefix? "0o" : "");
    +    }
    +
    +    /**
    +     * toDec(n, cch)
    +     *
    +     * Converts an integer to decimal, with the specified number of digits (default of 5; max of 11)
    +     *
    +     * You might be tempted to use the built-in n.toString(10) instead, but it doesn't zero-pad and it
    +     * doesn't properly convert negative values.  Moreover, if n is undefined, n.toString() will throw
    +     * an exception, whereas this function will return '?' characters.
    +     *
    +     * @param {number|null|undefined} n (supports integers up to 36 bits now)
    +     * @param {number} [cch] is the desired number of decimal digits (0 or undefined for default of either 5 or 11)
    +     * @return {string} the decimal representation of n
    +     */
    +    static toDec(n, cch)
    +    {
    +        if (!cch) {
    +            // cch = Math.ceil(Math.log(Math.abs(n) + 1) / Math.LN10) || 1;
    +            var v = Math.abs(n);
    +            if (v <= 99999) {
    +                cch = 5;
    +            } else {
    +                cch = 11;
    +            }
    +        } else if (cch > 11) cch = 11;
    +        return Str.toBase(n, 10, cch);
    +    }
    +
    +    /**
    +     * toHex(n, cch, fPrefix)
    +     *
    +     * Converts an integer to hex, with the specified number of digits (default of 4 or 8, max of 9).
    +     *
    +     * You might be tempted to use the built-in n.toString(16) instead, but it doesn't zero-pad and it
    +     * doesn't properly convert negative values; for example, if n is -2147483647, then n.toString(16)
    +     * will return "-7fffffff" instead of "80000001".  Moreover, if n is undefined, n.toString() will
    +     * throw an exception, whereas this function will return '?' characters.
    +     *
    +     * NOTE: The following work-around (adapted from code found on StackOverflow) would be another solution,
    +     * taking care of negative values, zero-padding, and upper-casing, but not null/undefined/NaN values:
    +     *
    +     *      s = (n < 0? n + 0x100000000 : n).toString(16);
    +     *      s = "00000000".substr(0, 8 - s.length) + s;
    +     *      s = s.substr(0, cch).toUpperCase();
    +     *
    +     * @param {number|null|undefined} n (supports integers up to 36 bits now)
    +     * @param {number} [cch] is the desired number of hex digits (0 or undefined for default of either 4, 8, or 9)
    +     * @param {boolean} [fPrefix]
    +     * @return {string} the hex representation of n
    +     */
    +    static toHex(n, cch, fPrefix)
    +    {
    +        if (!cch) {
    +            // cch = Math.ceil(Math.log(Math.abs(n) + 1) / Math.log(16)) || 1;
    +            var v = Math.abs(n);
    +            if (v <= 0xffff) {
    +                cch = 4;
    +            } else if (v <= 0xffffffff) {
    +                cch = 8;
    +            } else {
    +                cch = 9;
    +            }
    +        } else if (cch > 9) cch = 9;
    +        return Str.toBase(n, 16, cch, fPrefix? "0x" : "");
    +    }
    +
    +    /**
    +     * toHexByte(b)
    +     *
    +     * Alias for Str.toHex(b, 2, true)
    +     *
    +     * @param {number|null|undefined} b is a byte value
    +     * @return {string} the hex representation of b
    +     */
    +    static toHexByte(b)
    +    {
    +        return Str.toHex(b, 2, true);
    +    }
    +
    +    /**
    +     * toHexWord(w)
    +     *
    +     * Alias for Str.toHex(w, 4, true)
    +     *
    +     * @param {number|null|undefined} w is a word (16-bit) value
    +     * @return {string} the hex representation of w
    +     */
    +    static toHexWord(w)
    +    {
    +        return Str.toHex(w, 4, true);
    +    }
    +
    +    /**
    +     * toHexLong(l)
    +     *
    +     * Alias for Str.toHex(l, 8, true)
    +     *
    +     * @param {number|null|undefined} l is a dword (32-bit) value
    +     * @return {string} the hex representation of w
    +     */
    +    static toHexLong(l)
    +    {
    +        return Str.toHex(l, 8, true);
    +    }
    +
    +    /**
    +     * getBaseName(sFileName, fStripExt)
    +     *
    +     * This is a poor-man's version of Node's path.basename(), which Node-only components should use instead.
    +     *
    +     * Note that if fStripExt is true, this strips ANY extension, whereas path.basename() strips the extension only
    +     * if it matches the second parameter (eg, path.basename("/foo/bar/baz/asdf/quux.html", ".html") returns "quux").
    +     *
    +     * @param {string} sFileName
    +     * @param {boolean} [fStripExt]
    +     * @return {string}
    +     */
    +    static getBaseName(sFileName, fStripExt)
    +    {
    +        var sBaseName = sFileName;
    +
    +        var i = sFileName.lastIndexOf('/');
    +        if (i >= 0) sBaseName = sFileName.substr(i + 1);
    +
    +        /*
    +         * This next bit is a kludge to clean up names that are part of a URL that includes unsightly query parameters.
    +         */
    +        i = sBaseName.indexOf('&');
    +        if (i > 0) sBaseName = sBaseName.substr(0, i);
    +
    +        if (fStripExt) {
    +            i = sBaseName.lastIndexOf(".");
    +            if (i > 0) {
    +                sBaseName = sBaseName.substring(0, i);
    +            }
    +        }
    +        return sBaseName;
    +    }
    +
    +    /**
    +     * getExtension(sFileName)
    +     *
    +     * This is a poor-man's version of Node's path.extname(), which Node-only components should use instead.
    +     *
    +     * Note that we EXCLUDE the period from the returned extension, whereas path.extname() includes it.
    +     *
    +     * @param {string} sFileName
    +     * @return {string} the filename's extension (in lower-case and EXCLUDING the "."), or an empty string
    +     */
    +    static getExtension(sFileName)
    +    {
    +        var sExtension = "";
    +        var i = sFileName.lastIndexOf(".");
    +        if (i >= 0) {
    +            sExtension = sFileName.substr(i + 1).toLowerCase();
    +        }
    +        return sExtension;
    +    }
    +
    +    /**
    +     * endsWith(s, sSuffix)
    +     *
    +     * @param {string} s
    +     * @param {string} sSuffix
    +     * @return {boolean} true if s ends with sSuffix, false if not
    +     */
    +    static endsWith(s, sSuffix)
    +    {
    +        return s.indexOf(sSuffix, s.length - sSuffix.length) !== -1;
    +    }
    +
    +    /**
    +     * escapeHTML(sHTML)
    +     *
    +     * @param {string} sHTML
    +     * @return {string} with HTML entities "escaped", similar to PHP's htmlspecialchars()
    +     */
    +    static escapeHTML(sHTML)
    +    {
    +        return sHTML.replace(/[&<>"']/g, function(m)
    +        {
    +            return Str.aHTMLEscapeMap[m];
    +        });
    +    }
    +
    +    /**
    +     * replace(sSearch, sReplace, s)
    +     *
    +     * The JavaScript replace() function ALWAYS interprets "$" specially in replacement strings, even when
    +     * the search string is NOT a RegExp; specifically:
    +     *
    +     *      $$  Inserts a "$"
    +     *      $&  Inserts the matched substring
    +     *      $`  Inserts the portion of the string that precedes the matched substring
    +     *      $'  Inserts the portion of the string that follows the matched substring
    +     *      $n  Where n is a positive integer less than 100, inserts the nth parenthesized sub-match string,
    +     *          provided the first argument was a RegExp object
    +     *
    +     * So, if a replacement string containing dollar signs passes through a series of replace() calls, untold
    +     * problems could result.  Hence, this function, which simply uses the replacement string as-is.
    +     *
    +     * Similar to the JavaScript replace() method (when sSearch is a string), this replaces only ONE occurrence
    +     * (ie, the FIRST occurrence); it might be nice to add options to replace the LAST occurrence and/or ALL
    +     * occurrences, but we'll revisit that later.
    +     *
    +     * @param {string} sSearch
    +     * @param {string} sReplace
    +     * @param {string} s
    +     * @return {string}
    +     */
    +    static replace(sSearch, sReplace, s)
    +    {
    +        var i = s.indexOf(sSearch);
    +        if (i >= 0) {
    +            s = s.substr(0, i) + sReplace + s.substr(i + sSearch.length);
    +        }
    +        return s;
    +    }
    +
    +    /**
    +     * replaceAll(sSearch, sReplace, s)
    +     *
    +     * @param {string} sSearch
    +     * @param {string} sReplace
    +     * @param {string} s
    +     * @return {string}
    +     */
    +    static replaceAll(sSearch, sReplace, s)
    +    {
    +        var a = {};
    +        a[sSearch] = sReplace;
    +        return Str.replaceArray(a, s);
    +    }
    +
    +    /**
    +     * replaceArray(a, s)
    +     *
    +     * @param {Object} a
    +     * @param {string} s
    +     * @return {string}
    +     */
    +    static replaceArray(a, s)
    +    {
    +        var sMatch = "";
    +        for (var k in a) {
    +            /*
    +             * As noted in:
    +             *
    +             *      http://www.regexguru.com/2008/04/escape-characters-only-when-necessary/
    +             *
    +             * inside character classes, only backslash, caret, hyphen and the closing bracket need to be
    +             * escaped.  And in fact, if you ensure that the closing bracket is first, the caret is not first,
    +             * and the hyphen is last, you can avoid escaping those as well.
    +             */
    +            k = k.replace(/([\\[\]*{}().+?])/g, "\\$1");
    +            sMatch += (sMatch? '|' : '') + k;
    +        }
    +        return s.replace(new RegExp('(' + sMatch + ')', "g"), function(m)
    +        {
    +            return a[m];
    +        });
    +    }
    +
    +    /**
    +     * pad(s, cch, fPadLeft)
    +     *
    +     * NOTE: the maximum amount of padding currently supported is 40 spaces.
    +     *
    +     * @param {string} s is a string
    +     * @param {number} cch is desired length
    +     * @param {boolean} [fPadLeft] (default is padding on the right)
    +     * @return {string} the original string (s) with spaces padding it to the specified length
    +     */
    +    static pad(s, cch, fPadLeft)
    +    {
    +        var sPadding = "                                        ";
    +        return fPadLeft? (sPadding + s).slice(-cch) : (s + sPadding).slice(0, cch);
    +    }
    +
    +    /**
    +     * stripLeadingZeros(s, fPad)
    +     *
    +     * @param {string} s
    +     * @param {boolean} [fPad]
    +     * @return {string}
    +     */
    +    static stripLeadingZeros(s, fPad)
    +    {
    +        var cch = s.length;
    +        s = s.replace(/^0+([0-9A-F]+)$/i, "$1");
    +        if (fPad) s = Str.pad(s, cch, true);
    +        return s;
    +    }
    +
    +    /**
    +     * trim(s)
    +     *
    +     * @param {string} s
    +     * @return {string}
    +     */
    +    static trim(s)
    +    {
    +        if (String.prototype.trim) {
    +            return s.trim();
    +        }
    +        return s.replace(/^\s+|\s+$/g, "");
    +    }
    +
    +    /**
    +     * toASCIICode(b)
    +     *
    +     * @param {number} b
    +     * @return {string}
    +     */
    +    static toASCIICode(b)
    +    {
    +        var s;
    +        if (b != Str.ASCII.CR && b != Str.ASCII.LF) {
    +            s = Str.aASCIICodes[b];
    +        }
    +        if (s) {
    +            s = '<' + s + '>';
    +        } else {
    +            s = String.fromCharCode(b);
    +        }
    +        return s;
    +    }
    +}
    +
    +Str.aHTMLEscapeMap = {
    +    '&': '&',
    +    '<': '<',
    +    '>': '>',
    +    '"': '"',
    +    "'": '''
    +};
    +
    +/*
    + * Future home of a general-purpose ASCII table.  TODO: Flesh it out.
    + */
    +Str.ASCII = {
    +    LF:     0x0A,
    +    CR:     0x0D
    +};
    +
    +/*
    + * Table for converting "unprintable" ASCII codes into mnemonics, to more clearly see what's being printed.
    + */
    +Str.aASCIICodes = {
    +    0x00:   "NUL",
    +    0x01:   "SOH",      // (CTRL_A) Start of Heading
    +    0x02:   "STX",      // (CTRL_B) Start of Text
    +    0x03:   "ETX",      // (CTRL_C) End of Text
    +    0x04:   "EOT",      // (CTRL_D) End of Transmission
    +    0x05:   "ENQ",      // (CTRL_E) Enquiry
    +    0x06:   "ACK",      // (CTRL_F) Acknowledge
    +    0x07:   "BEL",      // (CTRL_G) Bell
    +    0x08:   "BS",       // (CTRL_H) Backspace
    +    0x09:   "TAB",      // (CTRL_I) Horizontal Tab
    +    0x0A:   "LF",       // (CTRL_J) Line Feed (New Line)
    +    0x0B:   "VT",       // (CTRL_K) Vertical Tab
    +    0x0C:   "FF",       // (CTRL_L) Form Feed (New Page)
    +    0x0D:   "CR",       // (CTRL_M) Carriage Return
    +    0x0E:   "SO",       // (CTRL_N) Shift Out
    +    0x0F:   "SI",       // (CTRL_O) Shift In
    +    0x10:   "DLE",      // (CTRL_P) Data Link Escape
    +    0x11:   "XON",      // (CTRL_Q) Device Control 1 (aka DC1)
    +    0x12:   "DC2",      // (CTRL_R) Device Control 2
    +    0x13:   "XOFF",     // (CTRL_S) Device Control 3 (aka DC3)
    +    0x14:   "DC4",      // (CTRL_T) Device Control 4
    +    0x15:   "NAK",      // (CTRL_U) Negative Acknowledge
    +    0x16:   "SYN",      // (CTRL_V) Synchronous Idle
    +    0x17:   "ETB",      // (CTRL_W) End of Transmission Block
    +    0x18:   "CAN",      // (CTRL_X) Cancel
    +    0x19:   "EM",       // (CTRL_Y) End of Medium
    +    0x1A:   "SUB",      // (CTRL_Z) Substitute
    +    0x1B:   "ESC",      // Escape
    +    0x1C:   "FS",       // File Separator
    +    0x1D:   "GS",       // Group Separator
    +    0x1E:   "RS",       // Record Separator
    +    0x1F:   "US"        // Unit Separator
    +};
    +
    +Str.TYPES = {
    +    NULL:       0,
    +    BYTE:       1,
    +    WORD:       2,
    +    DWORD:      3,
    +    NUMBER:     4,
    +    STRING:     5,
    +    BOOLEAN:    6,
    +    OBJECT:     7,
    +    ARRAY:      8
    +};
    +
    +
    +
    +/**
    + * @copyright http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017
    + */
    +
    +/**
    + * @typedef {{
    + *  mask:       number,
    + *  shift:      number
    + * }}
    + */
    +var BitField;
    +
    +/**
    + * @typedef {Object.}
    + */
    +var BitFields;
    +
    +class Usr {
    +    /**
    +     * binarySearch(a, v, fnCompare)
    +     *
    +     * @param {Array} a is an array
    +     * @param {number|string|Array|Object} v
    +     * @param {function((number|string|Array|Object), (number|string|Array|Object))} [fnCompare]
    +     * @return {number} the index of matching entry if non-negative, otherwise the index of the insertion point
    +     */
    +    static binarySearch(a, v, fnCompare)
    +    {
    +        var left = 0;
    +        var right = a.length;
    +        var found = 0;
    +        if (fnCompare === undefined) {
    +            fnCompare = function(a, b)
    +            {
    +                return a > b ? 1 : a < b ? -1 : 0;
    +            };
    +        }
    +        while (left < right) {
    +            var middle = (left + right) >> 1;
    +            var compareResult;
    +            compareResult = fnCompare(v, a[middle]);
    +            if (compareResult > 0) {
    +                left = middle + 1;
    +            } else {
    +                right = middle;
    +                found = !compareResult;
    +            }
    +        }
    +        return found ? left : ~left;
    +    }
    +
    +    /**
    +     * binaryInsert(a, v, fnCompare)
    +     *
    +     * If element v already exists in array a, the array is unchanged (we don't allow duplicates); otherwise, the
    +     * element is inserted into the array at the appropriate index.
    +     *
    +     * @param {Array} a is an array
    +     * @param {number|string|Array|Object} v is the value to insert
    +     * @param {function((number|string|Array|Object), (number|string|Array|Object))} [fnCompare]
    +     */
    +    static binaryInsert(a, v, fnCompare)
    +    {
    +        var index = Usr.binarySearch(a, v, fnCompare);
    +        if (index < 0) {
    +            a.splice(-(index + 1), 0, v);
    +        }
    +    }
    +
    +    /**
    +     * getTimestamp()
    +     *
    +     * @return {string} timestamp containing the current date and time ("yyyy-mm-dd hh:mm:ss")
    +     */
    +    static getTimestamp()
    +    {
    +        var date = new Date();
    +        var padNum = function(n)
    +        {
    +            return (n < 10 ? "0" : "") + n;
    +        };
    +        return date.getFullYear() + "-" + padNum(date.getMonth() + 1) + "-" + padNum(date.getDate()) + " " + padNum(date.getHours()) + ":" + padNum(date.getMinutes()) + ":" + padNum(date.getSeconds());
    +    }
    +
    +    /**
    +     * getMonthDays(nMonth, nYear)
    +     *
    +     * Note that if we're being called on behalf of the RTC, its year is always truncated to two digits (mod 100),
    +     * so we have no idea what century the year 0 might refer to.  When using the normal leap-year formula, 0 fails
    +     * the mod 100 test but passes the mod 400 test, so as far as the RTC is concerned, every century year is a leap
    +     * year.  Since we're most likely dealing with the year 2000, that's fine, since 2000 was also a leap year.
    +     *
    +     * TODO: There IS a separate CMOS byte that's supposed to be set to CMOS_ADDR.CENTURY_DATE; it's always BCD,
    +     * so theoretically it will contain values like 0x19 or 0x20 (for the 20th and 21st centuries, respectively), and
    +     * we could add that as another parameter to this function, to improve the accuracy, but that would go beyond what
    +     * a real RTC actually does.
    +     *
    +     * @param {number} nMonth (1-12)
    +     * @param {number} nYear (normally a 4-digit year, but it may also be mod 100)
    +     * @return {number} the maximum (1-based) day allowed for the specified month and year
    +     */
    +    static getMonthDays(nMonth, nYear)
    +    {
    +        var nDays = Usr.aMonthDays[nMonth - 1];
    +        if (nDays == 28) {
    +            if ((nYear % 4) === 0 && ((nYear % 100) || (nYear % 400) === 0)) {
    +                nDays++;
    +            }
    +        }
    +        return nDays;
    +    }
    +
    +    /**
    +     * formatDate(sFormat, date)
    +     *
    +     * @param {string} sFormat (eg, "F j, Y", "Y-m-d H:i:s")
    +     * @param {Date} [date] (default is the current time)
    +     * @return {string}
    +     *
    +     * Supported identifiers in sFormat include:
    +     *
    +     *      a:  lowercase ante meridiem and post meridiem (am or pm)
    +     *      d:  day of the month, 2 digits with leading zeros (01,02,...,31)
    +     *      D:  3-letter day of the week ("Sun","Mon",...,"Sat")
    +     *      F:  month ("January","February",...,"December")
    +     *      g:  hour in 12-hour format, without leading zeros (1,2,...,12)
    +     *      h:  hour in 24-hour format, without leading zeros (0,1,...,23)
    +     *      H:  hour in 24-hour format, with leading zeros (00,01,...,23)
    +     *      i:  minutes, with leading zeros (00,01,...,59)
    +     *      j:  day of the month, without leading zeros (1,2,...,31)
    +     *      l:  day of the week ("Sunday","Monday",...,"Saturday")
    +     *      m:  month, with leading zeros (01,02,...,12)
    +     *      M:  3-letter month ("Jan","Feb",...,"Dec")
    +     *      n:  month, without leading zeros (1,2,...,12)
    +     *      s:  seconds, with leading zeros (00,01,...,59)
    +     *      y:  2-digit year (eg, 14)
    +     *      Y:  4-digit year (eg, 2014)
    +     *
    +     * For more inspiration, see: http://php.net/manual/en/function.date.php (of which we support ONLY a subset).
    +     */
    +    static formatDate(sFormat, date)
    +    {
    +        var sDate = "";
    +        if (!date) date = new Date();
    +        var iHour = date.getHours();
    +        var iDay = date.getDate();
    +        var iMonth = date.getMonth() + 1;
    +        for (var i = 0; i < sFormat.length; i++) {
    +            var ch;
    +            switch ((ch = sFormat.charAt(i))) {
    +            case 'a':
    +                sDate += (iHour < 12 ? "am" : "pm");
    +                break;
    +            case 'd':
    +                sDate += ('0' + iDay).slice(-2);
    +                break;
    +            case 'D':
    +                sDate += Usr.asDays[date.getDay()].substr(0, 3);
    +                break;
    +            case 'F':
    +                sDate += Usr.asMonths[iMonth - 1];
    +                break;
    +            case 'g':
    +                sDate += (!iHour ? 12 : (iHour > 12 ? iHour - 12 : iHour));
    +                break;
    +            case 'h':
    +                sDate += iHour;
    +                break;
    +            case 'H':
    +                sDate += ('0' + iHour).slice(-2);
    +                break;
    +            case 'i':
    +                sDate += ('0' + date.getMinutes()).slice(-2);
    +                break;
    +            case 'j':
    +                sDate += iDay;
    +                break;
    +            case 'l':
    +                sDate += Usr.asDays[date.getDay()];
    +                break;
    +            case 'm':
    +                sDate += ('0' + iMonth).slice(-2);
    +                break;
    +            case 'M':
    +                sDate += Usr.asMonths[iMonth - 1].substr(0, 3);
    +                break;
    +            case 'n':
    +                sDate += iMonth;
    +                break;
    +            case 's':
    +                sDate += ('0' + date.getSeconds()).slice(-2);
    +                break;
    +            case 'y':
    +                sDate += ("" + date.getFullYear()).slice(-2);
    +                break;
    +            case 'Y':
    +                sDate += date.getFullYear();
    +                break;
    +            default:
    +                sDate += ch;
    +                break;
    +            }
    +        }
    +        return sDate;
    +    }
    +
    +    /**
    +     * defineBitFields(bfs)
    +     *
    +     * Prepares a bit field definition for use with getBitField() and setBitField(); eg:
    +     *
    +     *      var bfs = Usr.defineBitFields({num:20, count:8, btmod:1, type:3});
    +     *
    +     * The above defines a set of bit fields containing four fields: num (bits 0-19), count (bits 20-27), btmod (bit 28), and type (bits 29-31).
    +     *
    +     *      Usr.setBitField(bfs.num, n, 1);
    +     *
    +     * The above set bit field "bfs.num" in numeric variable "n" to the value 1.
    +     *
    +     * @param {Object} bfs
    +     * @return {BitFields}
    +     */
    +    static defineBitFields(bfs)
    +    {
    +        var bit = 0;
    +        for (var f in bfs) {
    +            var width = bfs[f];
    +            var mask = ((1 << width) - 1) << bit;
    +            bfs[f] = {mask: mask, shift: bit};
    +            bit += width;
    +        }
    +        return bfs;
    +    }
    +
    +    /**
    +     * initBitFields(bfs, ...)
    +     *
    +     * @param {BitFields} bfs
    +     * @param {...number} var_args
    +     * @return {number} a value containing all supplied bit fields
    +     */
    +    static initBitFields(bfs, var_args)
    +    {
    +        var v = 0, i = 1;
    +        for (var f in bfs) {
    +            if (i >= arguments.length) break;
    +            v = Usr.setBitField(bfs[f], v, arguments[i++]);
    +        }
    +        return v;
    +    }
    +
    +    /**
    +     * getBitField(bf, v)
    +     *
    +     * @param {BitField} bf
    +     * @param {number} v is a value containing bit fields
    +     * @return {number} the value of the bit field in v defined by bf
    +     */
    +    static getBitField(bf, v)
    +    {
    +        return (v & bf.mask) >> bf.shift;
    +    }
    +
    +    /**
    +     * setBitField(bf, v, n)
    +     *
    +     * @param {BitField} bf
    +     * @param {number} v is a value containing bit fields
    +     * @param {number} n is a value to store in v in the bit field defined by bf
    +     * @return {number} updated v
    +     */
    +    static setBitField(bf, v, n)
    +    {
    +        return (v & ~bf.mask) | ((n << bf.shift) & bf.mask);
    +    }
    +
    +    /**
    +     * indexOf(a, t, i)
    +     *
    +     * Use this instead of Array.prototype.indexOf() if you can't be sure the browser supports it.
    +     *
    +     * @param {Array} a
    +     * @param {*} t
    +     * @param {number} [i]
    +     * @returns {number}
    +     */
    +    static indexOf(a, t, i)
    +    {
    +        if (Array.prototype.indexOf) {
    +            return a.indexOf(t, i);
    +        }
    +        i = i || 0;
    +        if (i < 0) i += a.length;
    +        if (i < 0) i = 0;
    +        for (var n = a.length; i < n; i++) {
    +            if (i in a && a[i] === t) return i;
    +        }
    +        return -1;
    +    }
    +}
    +
    +Usr.asDays = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
    +Usr.asMonths = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
    +Usr.aMonthDays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    +
    +/**
    + * getTime()
    + *
    + * @return {number} the current time, in milliseconds
    + */
    +Usr.getTime = Date.now || function() { return +new Date(); };
    +
    +
    +
    +/**
    + * @copyright http://pcjs.org/modules/shared/lib/weblib.js (C) Jeff Parsons 2012-2017
    + */
    +
    +
    +/*
    + * According to http://www.w3schools.com/jsref/jsref_obj_global.asp, these are the *global* properties
    + * and functions of JavaScript-in-the-Browser:
    + *
    + * Property             Description
    + * ---
    + * Infinity             A numeric value that represents positive/negative infinity
    + * NaN                  "Not-a-Number" value
    + * undefined            Indicates that a variable has not been assigned a value
    + *
    + * Function             Description
    + * ---
    + * decodeURI()          Decodes a URI
    + * decodeURIComponent() Decodes a URI component
    + * encodeURI()          Encodes a URI
    + * encodeURIComponent() Encodes a URI component
    + * escape()             Deprecated in version 1.5. Use encodeURI() or encodeURIComponent() instead
    + * eval()               Evaluates a string and executes it as if it was script code
    + * isFinite()           Determines whether a value is a finite, legal number
    + * isNaN()              Determines whether a value is an illegal number
    + * Number()             Converts an object's value to a number
    + * parseFloat()         Parses a string and returns a floating point number
    + * parseInt()           Parses a string and returns an integer
    + * String()             Converts an object's value to a string
    + * unescape()           Deprecated in version 1.5. Use decodeURI() or decodeURIComponent() instead
    + *
    + * And according to http://www.w3schools.com/jsref/obj_window.asp, these are the properties and functions
    + * of the *window* object.
    + *
    + * Property             Description
    + * ---
    + * closed               Returns a Boolean value indicating whether a window has been closed or not
    + * defaultStatus        Sets or returns the default text in the statusbar of a window
    + * document             Returns the Document object for the window (See Document object)
    + * frames               Returns an array of all the frames (including iframes) in the current window
    + * history              Returns the History object for the window (See History object)
    + * innerHeight          Returns the inner height of a window's content area
    + * innerWidth           Returns the inner width of a window's content area
    + * length               Returns the number of frames (including iframes) in a window
    + * location             Returns the Location object for the window (See Location object)
    + * name                 Sets or returns the name of a window
    + * navigator            Returns the Navigator object for the window (See Navigator object)
    + * opener               Returns a reference to the window that created the window
    + * outerHeight          Returns the outer height of a window, including toolbars/scrollbars
    + * outerWidth           Returns the outer width of a window, including toolbars/scrollbars
    + * pageXOffset          Returns the pixels the current document has been scrolled (horizontally) from the upper left corner of the window
    + * pageYOffset          Returns the pixels the current document has been scrolled (vertically) from the upper left corner of the window
    + * parent               Returns the parent window of the current window
    + * screen               Returns the Screen object for the window (See Screen object)
    + * screenLeft           Returns the x coordinate of the window relative to the screen
    + * screenTop            Returns the y coordinate of the window relative to the screen
    + * screenX              Returns the x coordinate of the window relative to the screen
    + * screenY              Returns the y coordinate of the window relative to the screen
    + * self                 Returns the current window
    + * status               Sets or returns the text in the statusbar of a window
    + * top                  Returns the topmost browser window
    + *
    + * Method               Description
    + * ---
    + * alert()              Displays an alert box with a message and an OK button
    + * atob()               Decodes a base-64 encoded string
    + * blur()               Removes focus from the current window
    + * btoa()               Encodes a string in base-64
    + * clearInterval()      Clears a timer set with setInterval()
    + * clearTimeout()       Clears a timer set with setTimeout()
    + * close()              Closes the current window
    + * confirm()            Displays a dialog box with a message and an OK and a Cancel button
    + * createPopup()        Creates a pop-up window
    + * focus()              Sets focus to the current window
    + * moveBy()             Moves a window relative to its current position
    + * moveTo()             Moves a window to the specified position
    + * open()               Opens a new browser window
    + * print()              Prints the content of the current window
    + * prompt()             Displays a dialog box that prompts the visitor for input
    + * resizeBy()           Resizes the window by the specified pixels
    + * resizeTo()           Resizes the window to the specified width and height
    + * scroll()             This method has been replaced by the scrollTo() method.
    + * scrollBy()           Scrolls the content by the specified number of pixels
    + * scrollTo()           Scrolls the content to the specified coordinates
    + * setInterval()        Calls a function or evaluates an expression at specified intervals (in milliseconds)
    + * setTimeout()         Calls a function or evaluates an expression after a specified number of milliseconds
    + * stop()               Stops the window from loading
    + */
    +
    +class Web {
    +    /**
    +     * log(s, type)
    +     *
    +     * For diagnostic output only.  DEBUG must be true (or "--debug" specified via the command-line)
    +     * for Component.log() to display anything.
    +     *
    +     * @param {string} [s] is the message text
    +     * @param {string} [type] is the message type
    +     */
    +    static log(s, type)
    +    {
    +        Component.log(s, type);
    +    }
    +
    +    /**
    +     * notice(s, fPrintOnly, id)
    +     *
    +     * @param {string} s is the message text
    +     * @param {boolean} [fPrintOnly]
    +     * @param {string} [id] is the caller's ID, if any
    +     */
    +    static notice(s, fPrintOnly, id)
    +    {
    +        Component.notice(s, fPrintOnly, id);
    +    }
    +
    +    /**
    +     * getResource(sURL, dataPost, fAsync, done, progress)
    +     *
    +     * Request the specified resource (sURL), and once the request is complete, notify done().
    +     *
    +     * If fAsync is true, a done() callback should ALWAYS be supplied; otherwise, you'll have no
    +     * idea when the request is complete or what the response was.  done() is passed three parameters:
    +     *
    +     *      done(sURL, sResource, nErrorCode)
    +     *
    +     * If nErrorCode is zero, sResource should contain the requested data; otherwise, an error occurred.
    +     *
    +     * If dataPost is set to a string, that string can be used to control the response format;
    +     * by default, the response format is plain text, but you can specify "bytes" to request arbitrary
    +     * binary data, which should come back as a string of bytes.
    +     *
    +     * TODO: The "bytes" option works by calling overrideMimeType(), which was never a best practice.
    +     * Instead, we should implement supported response types ("text" and "arraybuffer", at a minimum)
    +     * by setting xmlHTTP.responseType to one of those values before calling xmlHTTP.send().
    +     *
    +     * @param {string} sURL
    +     * @param {string|Object|null} [dataPost] for a POST request (default is a GET request)
    +     * @param {boolean} [fAsync] is true for an asynchronous request
    +     * @param {function(string,string,number)} [done]
    +     * @param {function(number)} [progress]
    +     * @return {Array|null} Array containing [sResource, nErrorCode], or null if no response yet
    +     */
    +    static getResource(sURL, dataPost, fAsync = false, done, progress)
    +    {
    +        var nErrorCode = 0, sResource = null, response = null;
    +
    +        if (typeof resources == 'object' && (sResource = resources[sURL])) {
    +            if (done) done(sURL, sResource, nErrorCode);
    +            return [sResource, nErrorCode];
    +        }
    +        else if (fAsync && typeof resources == 'function') {
    +            resources(sURL, function(sResource, nErrorCode)
    +            {
    +                if (done) done(sURL, sResource, nErrorCode);
    +            });
    +            return response;
    +        }
    +
    +        if (DEBUG) {
    +            /*
    +             * The larger resources we put on archive.pcjs.org should also be available locally...
    +             */
    +            sURL = sURL.replace(/^http:\/\/archive.pcjs.org(\/.*)\/([^\/]*)$/, "$1/archive/$2");
    +        }
    +
    +
    +        var xmlHTTP = (window.XMLHttpRequest? new window.XMLHttpRequest() : new window.ActiveXObject("Microsoft.XMLHTTP"));
    +        if (fAsync) {
    +            xmlHTTP.onreadystatechange = function()
    +            {
    +                if (xmlHTTP.readyState !== 4) {
    +                    if (progress) progress(1);
    +                    return;
    +                }
    +                /*
    +                 * The following line was recommended for WebKit, as a work-around to prevent the handler firing multiple
    +                 * times when debugging.  Unfortunately, that's not the only XMLHttpRequest problem that occurs when
    +                 * debugging, so I think the WebKit problem is deeper than that.  When we have multiple XMLHttpRequests
    +                 * pending, any debugging activity means most of them simply get dropped on floor, so what may actually be
    +                 * happening are mis-notifications rather than redundant notifications.
    +                 *
    +                 *      xmlHTTP.onreadystatechange = undefined;
    +                 */
    +                sResource = xmlHTTP.responseText;
    +                /*
    +                 * The normal "success" case is an HTTP status code of 200, but when testing with files loaded
    +                 * from the local file system (ie, when using the "file:" protocol), we have to be a bit more "flexible".
    +                 */
    +                if (xmlHTTP.status == 200 || !xmlHTTP.status && sResource.length && Web.getHostProtocol() == "file:") {
    +                    if (MAXDEBUG) Web.log("xmlHTTP.onreadystatechange(" + sURL + "): returned " + sResource.length + " bytes");
    +                }
    +                else {
    +                    nErrorCode = xmlHTTP.status || -1;
    +                    Web.log("xmlHTTP.onreadystatechange(" + sURL + "): error code " + nErrorCode);
    +                }
    +                if (progress) progress(2);
    +                if (done) done(sURL, sResource, nErrorCode);
    +            };
    +        }
    +
    +        if (progress) progress(0);
    +
    +        if (dataPost && typeof dataPost == "object") {
    +            var sDataPost = "";
    +            for (var p in dataPost) {
    +                if (!dataPost.hasOwnProperty(p)) continue;
    +                if (sDataPost) sDataPost += "&";
    +                sDataPost += p + '=' + encodeURIComponent(dataPost[p]);
    +            }
    +            sDataPost = sDataPost.replace(/%20/g, '+');
    +            if (MAXDEBUG) Web.log("Web.getResource(POST " + sURL + "): " + sDataPost.length + " bytes");
    +            xmlHTTP.open("POST", sURL, fAsync);     // ensure that fAsync is a valid boolean (Internet Explorer xmlHTTP functions insist on it)
    +            xmlHTTP.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    +            xmlHTTP.send(sDataPost);
    +        } else {
    +            if (MAXDEBUG) Web.log("Web.getResource(GET " + sURL + ")");
    +            xmlHTTP.open("GET", sURL, fAsync);      // ensure that fAsync is a valid boolean (Internet Explorer xmlHTTP functions insist on it)
    +            if (dataPost == "bytes") {
    +                xmlHTTP.overrideMimeType("text/plain; charset=x-user-defined");
    +            }
    +            xmlHTTP.send();
    +        }
    +
    +        if (!fAsync) {
    +            sResource = xmlHTTP.responseText;
    +            if (xmlHTTP.status == 200) {
    +                if (MAXDEBUG) Web.log("Web.getResource(" + sURL + "): returned " + sResource.length + " bytes");
    +            } else {
    +                nErrorCode = xmlHTTP.status || -1;
    +                Web.log("Web.getResource(" + sURL + "): error code " + nErrorCode);
    +            }
    +            if (done) done(sURL, sResource, nErrorCode);
    +            response = [sResource, nErrorCode];
    +        }
    +        return response;
    +    }
    +
    +    /**
    +     * parseMemoryResource(sURL, sData)
    +     *
    +     * This converts a variety of JSON-style data streams into an Object with the following properties:
    +     *
    +     *      aBytes
    +     *      aSymbols
    +     *      addrLoad
    +     *      addrExec
    +     *
    +     * If the source data contains a 'bytes' array, it's passed through to 'aBytes'; alternatively, if
    +     * it contains a 'words' array, the values are converted from 16-bit to 8-bit and stored in 'aBytes',
    +     * and if it contains a 'longs' array, the values are converted from 32-bit longs into bytes and
    +     * stored in 'aBytes'.
    +     *
    +     * Alternatively, if the source data contains a 'data' array, we simply pass that through to the output
    +     * object as:
    +     *
    +     *      aData
    +     *
    +     * @param {string} sURL
    +     * @param {string} sData
    +     * @return {Object|null} (resource)
    +     */
    +    static parseMemoryResource(sURL, sData)
    +    {
    +        var i;
    +        var resource = {
    +            aBytes: null,
    +            aSymbols: null,
    +            addrLoad: null,
    +            addrExec: null
    +        };
    +
    +        if (sData.charAt(0) == "[" || sData.charAt(0) == "{") {
    +            try {
    +                var a, ib, data;
    +
    +                if (sData.substr(0, 1) == "<") {    // if the "data" begins with a "<"...
    +                    /*
    +                     * Early server configs reported an error (via the nErrorCode parameter) if a tape URL was invalid,
    +                     * but more recent server configs now display a somewhat friendlier HTML error page.  The downside,
    +                     * however, is that the original error has been buried, and we've received "data" that isn't actually
    +                     * tape data.  So if the data we've received appears to be "HTML-like", we treat it as an error message.
    +                     */
    +                    throw new Error(sData);
    +                }
    +
    +                /*
    +                 * TODO: IE9 is rather unfriendly and restrictive with regard to how much data it's willing to
    +                 * eval().  In particular, the 10Mb disk image we use for the Windows 1.01 demo config fails in
    +                 * IE9 with an "Out of memory" exception.  One work-around would be to chop the data into chunks
    +                 * (perhaps one track per chunk, using regular expressions) and then manually re-assemble it.
    +                 *
    +                 * However, it turns out that using JSON.parse(sDiskData) instead of eval("(" + sDiskData + ")")
    +                 * is a much easier fix. The only drawback is that we must first quote any unquoted property names
    +                 * and remove any comments, because while eval() was cool with them, JSON.parse() is more particular;
    +                 * the following RegExp replacements take care of those requirements.
    +                 *
    +                 * The use of hex values is something else that eval() was OK with, but JSON.parse() is not, and
    +                 * while I've stopped using hex values in DumpAPI responses (at least when "format=json" is specified),
    +                 * I can't guarantee they won't show up in "legacy" images, and there's no simple RegExp replacement
    +                 * for transforming hex values into decimal values, so I cop out and fall back to eval() if I detect
    +                 * any hex prefixes ("0x") in the sequence.  Ditto for error messages, which appear like so:
    +                 *
    +                 *      ["unrecognized disk path: test.img"]
    +                 */
    +                if (sData.indexOf("0x") < 0 && sData.indexOf("0o") < 0 && sData.substr(0, 2) != '["') {
    +                    data = JSON.parse(sData.replace(/([a-z]+):/gm, '"$1":').replace(/\/\/[^\n]*/gm, ""));
    +                } else {
    +                    data = eval("(" + sData + ")");
    +                }
    +
    +                resource.addrLoad = data['load'];
    +                resource.addrExec = data['exec'];
    +
    +                if (a = data['bytes']) {
    +                    resource.aBytes = a;
    +                }
    +                else if (a = data['words']) {
    +                    /*
    +                     * Convert all words into bytes
    +                     */
    +                    resource.aBytes = new Array(a.length * 2);
    +                    for (i = 0, ib = 0; i < a.length; i++) {
    +                        resource.aBytes[ib++] = a[i] & 0xff;
    +                        resource.aBytes[ib++] = (a[i] >> 8) & 0xff;
    +
    +                    }
    +                }
    +                else if (a = data['longs']) {
    +                    /*
    +                     * Convert all dwords (longs) into bytes
    +                     */
    +                    resource.aBytes = new Array(a.length * 4);
    +                    for (i = 0, ib = 0; i < a.length; i++) {
    +                        resource.aBytes[ib++] = a[i] & 0xff;
    +                        resource.aBytes[ib++] = (a[i] >> 8) & 0xff;
    +                        resource.aBytes[ib++] = (a[i] >> 16) & 0xff;
    +                        resource.aBytes[ib++] = (a[i] >> 24) & 0xff;
    +                    }
    +                }
    +                else if (a = data['data']) {
    +                    resource.aData = a;
    +                }
    +                else {
    +                    resource.aBytes = data;
    +                }
    +
    +                if (resource.aBytes) {
    +                    if (!resource.aBytes.length) {
    +                        Component.error("Empty resource: " + sURL);
    +                        resource = null;
    +                    }
    +                    else if (resource.aBytes.length == 1) {
    +                        Component.error(resource.aBytes[0]);
    +                        resource = null;
    +                    }
    +                }
    +                resource.aSymbols = data['symbols'];
    +
    +            } catch (e) {
    +                Component.error("Resource data error (" + sURL + "): " + e.message);
    +                resource = null;
    +            }
    +        }
    +        else {
    +            /*
    +             * Parse the data manually; we assume it's a series of hex byte-values separated by whitespace.
    +             */
    +            var ab = [];
    +            var sHexData = sData.replace(/\n/gm, " ").replace(/ +$/, "");
    +            var asHexData = sHexData.split(" ");
    +            for (i = 0; i < asHexData.length; i++) {
    +                var n = parseInt(asHexData[i], 16);
    +                if (isNaN(n)) {
    +                    Component.error("Resource data error (" + sURL + "): invalid hex byte (" + asHexData[i] + ")");
    +                    break;
    +                }
    +                ab.push(n & 0xff);
    +            }
    +            if (i == asHexData.length) resource.aBytes = ab;
    +        }
    +        return resource;
    +    }
    +
    +    /**
    +     * sendReport(sApp, sVer, sURL, sUser, sType, sReport, sHostName)
    +     *
    +     * Send a report (eg, bug report) to the server.
    +     *
    +     * @param {string} sApp (eg, "PCjs")
    +     * @param {string} sVer (eg, "1.02")
    +     * @param {string} sURL (eg, "/devices/pc/machine/5150/mda/64kb/machine.xml")
    +     * @param {string} sUser (ie, the user key, if any)
    +     * @param {string} sType (eg, "bug"); one of ReportAPI.TYPE.*
    +     * @param {string} sReport (eg, unparsed state data)
    +     * @param {string} [sHostName] (default is http://SITEHOST)
    +     */
    +    static sendReport(sApp, sVer, sURL, sUser, sType, sReport, sHostName)
    +    {
    +        var dataPost = {};
    +        dataPost[ReportAPI.QUERY.APP] = sApp;
    +        dataPost[ReportAPI.QUERY.VER] = sVer;
    +        dataPost[ReportAPI.QUERY.URL] = sURL;
    +        dataPost[ReportAPI.QUERY.USER] = sUser;
    +        dataPost[ReportAPI.QUERY.TYPE] = sType;
    +        dataPost[ReportAPI.QUERY.DATA] = sReport;
    +        var sReportURL = (sHostName? sHostName : "http://" + SITEHOST) + ReportAPI.ENDPOINT;
    +        Web.getResource(sReportURL, dataPost, true);
    +    }
    +
    +    /**
    +     * getHost()
    +     *
    +     * @return {string}
    +     */
    +    static getHost()
    +    {
    +        return ("http://" + (window? window.location.host : SITEHOST));
    +    }
    +
    +    /**
    +     * getHostURL()
    +     *
    +     * @return {string|null}
    +     */
    +    static getHostURL()
    +    {
    +        return (window? window.location.href : null);
    +    }
    +
    +    /**
    +     * getHostProtocol()
    +     *
    +     * @return {string}
    +     */
    +    static getHostProtocol()
    +    {
    +        return (window? window.location.protocol : "file:");
    +    }
    +
    +    /**
    +     * getUserAgent()
    +     *
    +     * @return {string}
    +     */
    +    static getUserAgent()
    +    {
    +        return (window? window.navigator.userAgent : "");
    +    }
    +
    +    /**
    +     * hasLocalStorage
    +     *
    +     * true if localStorage support exists, is enabled, and works; false otherwise
    +     *
    +     * @return {boolean}
    +     */
    +    static hasLocalStorage()
    +    {
    +        if (Web.fLocalStorage == null) {
    +            var f = false;
    +            if (window) {
    +                try {
    +                    window.localStorage.setItem(Web.sLocalStorageTest, Web.sLocalStorageTest);
    +                    f = (window.localStorage.getItem(Web.sLocalStorageTest) == Web.sLocalStorageTest);
    +                    window.localStorage.removeItem(Web.sLocalStorageTest);
    +                } catch (e) {
    +                    Web.logLocalStorageError(e);
    +                    f = false;
    +                }
    +            }
    +            Web.fLocalStorage = f;
    +        }
    +        return Web.fLocalStorage;
    +    }
    +
    +    /**
    +     * logLocalStorageError(e)
    +     *
    +     * @param {Error} e is an exception
    +     */
    +    static logLocalStorageError(e)
    +    {
    +        Web.log(e.message, "localStorage error");
    +    }
    +
    +    /**
    +     * getLocalStorageItem(sKey)
    +     *
    +     * Returns the requested key value, or null if the key does not exist, or undefined if localStorage is not available
    +     *
    +     * @param {string} sKey
    +     * @return {string|null|undefined} sValue
    +     */
    +    static getLocalStorageItem(sKey)
    +    {
    +        var sValue;
    +        if (window) {
    +            try {
    +                sValue = window.localStorage.getItem(sKey);
    +            } catch (e) {
    +                Web.logLocalStorageError(e);
    +            }
    +        }
    +        return sValue;
    +    }
    +
    +    /**
    +     * setLocalStorageItem(sKey, sValue)
    +     *
    +     * @param {string} sKey
    +     * @param {string} sValue
    +     * @return {boolean} true if localStorage is available, false if not
    +     */
    +    static setLocalStorageItem(sKey, sValue)
    +    {
    +        try {
    +            window.localStorage.setItem(sKey, sValue);
    +            return true;
    +        } catch (e) {
    +            Web.logLocalStorageError(e);
    +        }
    +        return false;
    +    }
    +
    +    /**
    +     * removeLocalStorageItem(sKey)
    +     *
    +     * @param {string} sKey
    +     */
    +    static removeLocalStorageItem(sKey)
    +    {
    +        try {
    +            window.localStorage.removeItem(sKey);
    +        } catch (e) {
    +            Web.logLocalStorageError(e);
    +        }
    +    }
    +
    +    /**
    +     * getLocalStorageKeys()
    +     *
    +     * @return {Array}
    +     */
    +    static getLocalStorageKeys()
    +    {
    +        var a = [];
    +        try {
    +            for (var i = 0, c = window.localStorage.length; i < c; i++) {
    +                a.push(window.localStorage.key(i));
    +            }
    +        } catch (e) {
    +            Web.logLocalStorageError(e);
    +        }
    +        return a;
    +    }
    +
    +    /**
    +     * reloadPage()
    +     */
    +    static reloadPage()
    +    {
    +        if (window) window.location.reload();
    +    }
    +
    +    /**
    +     * isUserAgent(s)
    +     *
    +     * Check the browser's user-agent string for the given substring; "iOS" and "MSIE" are special values you can
    +     * use that will match any iOS or MSIE browser, respectively (even IE11, in the case of "MSIE").
    +     *
    +     * 2013-11-06: In a questionable move, MSFT changed the user-agent reported by IE11 on Windows 8.1, eliminating
    +     * the "MSIE" string (which MSDN calls a "version token"; see http://msdn.microsoft.com/library/ms537503.aspx);
    +     * they say "public websites should rely on feature detection, rather than browser detection, in order to design
    +     * their sites for browsers that don't support the features used by the website." So, in IE11, we get a user-agent
    +     * that tries to fool apps into thinking the browser is more like WebKit or Gecko:
    +     *
    +     *      Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko
    +     *
    +     * That's a nice idea, but in the meantime, they hosed the XSL transform code in embed.js, which contained
    +     * some very critical browser-specific code; turning on IE's "Compatibility Mode" didn't help either, because
    +     * that's a sledgehammer solution which restores the old user-agent string but also disables other features like
    +     * HTML5 canvas support. As an interim solution, I'm treating any "MSIE" check as a check for either "MSIE" or
    +     * "Trident".
    +     *
    +     * UPDATE: I've since found ways to make the code in embed.js more browser-agnostic, so for now, there's isn't
    +     * any code that cares about "MSIE", but I've left the change in place, because I wouldn't be surprised if I'll
    +     * need more IE-specific code in the future, perhaps for things like copy/paste functionality, or mouse capture.
    +     *
    +     * @param {string} s is a substring to search for in the user-agent; as noted above, "iOS" and "MSIE" are special values
    +     * @return {boolean} is true if the string was found, false if not
    +     */
    +    static isUserAgent(s)
    +    {
    +        if (window) {
    +            var userAgent = Web.getUserAgent();
    +            /*
    +             * Here's one case where we have to be careful with Component, because when isUserAgent() is called by
    +             * the init code below, component.js hasn't been loaded yet.  The simple solution for now is to remove the call.
    +             *
    +             *      Web.log("agent: " + userAgent);
    +             *
    +             * And yes, it would be pointless to use the conditional (?) operator below, if not for the Google Closure
    +             * Compiler (v20130823) failing to detect the entire expression as a boolean.
    +             */
    +            return s == "iOS" && !!userAgent.match(/(iPod|iPhone|iPad)/) && !!userAgent.match(/AppleWebKit/) || s == "MSIE" && !!userAgent.match(/(MSIE|Trident)/) || (userAgent.indexOf(s) >= 0);
    +        }
    +        return false;
    +    }
    +
    +    /**
    +     * isMobile()
    +     *
    +     * Check the browser's user-agent string for the substring "Mobi", as per Mozilla recommendation:
    +     *
    +     *      https://developer.mozilla.org/en-US/docs/Browser_detection_using_the_user_agent
    +     *
    +     * @return {boolean} is true if the browser appears to be a mobile (ie, non-desktop) web browser, false if not
    +     */
    +    static isMobile()
    +    {
    +        return Web.isUserAgent("Mobi");
    +    }
    +
    +    /**
    +     * getURLParm(sParm)
    +     *
    +     * First looks for sParm exactly as specified, then looks for the lower-case version.
    +     *
    +     * @param {string} sParm
    +     * @return {string|undefined}
    +     */
    +    static getURLParm(sParm)
    +    {
    +        if (!Web.parmsURL) {
    +            Web.parmsURL = Web.parseURLParms();
    +        }
    +        return Web.parmsURL[sParm] || Web.parmsURL[sParm.toLowerCase()];
    +    }
    +
    +    /**
    +     * parseURLParms(sParms)
    +     *
    +     * @param {string} [sParms] containing the parameter portion of a URL (ie, after the '?')
    +     * @return {Object} containing properties for each parameter found
    +     */
    +    static parseURLParms(sParms)
    +    {
    +        var aParms = {};
    +        if (window) {       // an alternative to "if (typeof module === 'undefined')" if require("defines") was used
    +            if (!sParms) {
    +                /*
    +                 * Note that window.location.href returns the entire URL, whereas window.location.search
    +                 * returns only the parameters, if any (starting with the '?', which we skip over with a substr() call).
    +                 */
    +                sParms = window.location.search.substr(1);
    +            }
    +            var match;
    +            var pl = /\+/g; // RegExp for replacing addition symbol with a space
    +            var search = /([^&=]+)=?([^&]*)/g;
    +            var decode = function(s)
    +            {
    +                return decodeURIComponent(s.replace(pl, " "));
    +            };
    +
    +            while ((match = search.exec(sParms))) {
    +                aParms[decode(match[1])] = decode(match[2]);
    +            }
    +        }
    +        return aParms;
    +    }
    +
    +    /**
    +     * downloadFile(sData, sType, fBase64, sFileName)
    +     *
    +     * @param {string} sData
    +     * @param {string} sType
    +     * @param {boolean} [fBase64]
    +     * @param {string} [sFileName]
    +     */
    +    static downloadFile(sData, sType, fBase64, sFileName)
    +    {
    +        var link = null, sAlert;
    +        var sURI = "data:application/" + sType + (fBase64? ";base64" : "") + ",";
    +
    +        if (!Web.isUserAgent("Firefox")) {
    +            sURI += (fBase64? sData : encodeURI(sData));
    +        } else {
    +            sURI += (fBase64? sData : encodeURIComponent(sData));
    +        }
    +        if (sFileName) {
    +            link = document.createElement('a');
    +            if (typeof link.download != 'string') link = null;
    +        }
    +        if (link) {
    +            link.href = sURI;
    +            link.download = sFileName;
    +            document.body.appendChild(link);    // Firefox allegedly requires the link to be in the body
    +            link.click();
    +            document.body.removeChild(link);
    +            sAlert = 'Check your Downloads folder for ' + sFileName + '.';
    +        } else {
    +            window.open(sURI);
    +            sAlert = 'Check your browser for a new window/tab containing the requested data' + (sFileName? (' (' + sFileName + ')') : '') + '.';
    +        }
    +        return sAlert;
    +    }
    +
    +    /**
    +     * onCountRepeat(n, fnRepeat, fnComplete, msDelay)
    +     *
    +     * Call fnRepeat() n times with an msDelay millisecond delay between calls,
    +     * then call fnComplete() when n has been exhausted OR fnRepeat() returns false.
    +     *
    +     * @param {number} n
    +     * @param {function()} fnRepeat
    +     * @param {function()} fnComplete
    +     * @param {number} [msDelay]
    +     */
    +    static onCountRepeat(n, fnRepeat, fnComplete, msDelay)
    +    {
    +        var fnTimeout = function doCountRepeat()
    +        {
    +            n -= 1;
    +            if (n >= 0) {
    +                if (!fnRepeat()) n = 0;
    +            }
    +            if (n > 0) {
    +                setTimeout(fnTimeout, msDelay || 0);
    +                return;
    +            }
    +            fnComplete();
    +        };
    +        fnTimeout();
    +    }
    +
    +    /**
    +     * onClickRepeat(e, msDelay, msRepeat, fn)
    +     *
    +     * Repeatedly call fn() with an initial msDelay, and an msRepeat delay thereafter,
    +     * as long as HTML control Object e has an active "down" event and fn() returns true.
    +     *
    +     * @param {Object} e
    +     * @param {number} msDelay
    +     * @param {number} msRepeat
    +     * @param {function(boolean)} fn is passed false on the first call, true on all repeated calls
    +     */
    +    static onClickRepeat(e, msDelay, msRepeat, fn)
    +    {
    +        var ms = 0, timer = null, fIgnoreMouseEvents = false;
    +
    +        var fnRepeat = function doClickRepeat()
    +        {
    +            if (fn(ms === msRepeat)) {
    +                timer = setTimeout(fnRepeat, ms);
    +                ms = msRepeat;
    +            }
    +        };
    +        e.onmousedown = function()
    +        {
    +            // Web.log("onMouseDown()");
    +            if (!fIgnoreMouseEvents) {
    +                if (!timer) {
    +                    ms = msDelay;
    +                    fnRepeat();
    +                }
    +            }
    +        };
    +        e.ontouchstart = function()
    +        {
    +            // Web.log("onTouchStart()");
    +            if (!timer) {
    +                ms = msDelay;
    +                fnRepeat();
    +            }
    +        };
    +        e.onmouseup = e.onmouseout = function()
    +        {
    +            // Web.log("onMouseUp()/onMouseOut()");
    +            if (timer) {
    +                clearTimeout(timer);
    +                timer = null;
    +            }
    +        };
    +        e.ontouchend = e.ontouchcancel = function()
    +        {
    +            // Web.log("onTouchEnd()/onTouchCancel()");
    +            if (timer) {
    +                clearTimeout(timer);
    +                timer = null;
    +            }
    +            /*
    +             * Devices that generate ontouch* events ALSO generate onmouse* events,
    +             * and generally do so immediately after all the touch events are complete,
    +             * so unless we want double the action, we need to ignore mouse events.
    +             */
    +            fIgnoreMouseEvents = true;
    +        };
    +    }
    +
    +    /**
    +     * onPageEvent(sName, fn)
    +     *
    +     * For 'onload', 'onunload', and 'onpageshow' events, most callers should NOT use this function, but
    +     * instead use Web.onInit(), Web.onShow(), and Web.onExit(), respectively.
    +     *
    +     * The only components that should still use onPageEvent() are THIS component (see the bottom of this file)
    +     * and components that need to capture other events (eg, the 'onresize' event in the Video component).
    +     *
    +     * This function creates a chain of callbacks, allowing multiple JavaScript modules to define handlers
    +     * for the same event, which wouldn't be possible if everyone modified window['onload'], window['onunload'],
    +     * etc, themselves.  However, that's less of a concern now, because assuming everyone else is now using
    +     * onInit(), onExit(), etc, then there really IS only one component setting the window callback: this one.
    +     *
    +     * NOTE: It's risky to refer to obscure event handlers with "dot" names, because the Closure Compiler may
    +     * erroneously replace them (eg, window.onpageshow is a good example).
    +     *
    +     * @param {string} sFunc
    +     * @param {function()} fn
    +     */
    +    static onPageEvent(sFunc, fn)
    +    {
    +        if (window) {
    +            var fnPrev = window[sFunc];
    +            if (typeof fnPrev !== 'function') {
    +                window[sFunc] = fn;
    +            } else {
    +                /*
    +                 * TODO: Determine whether there's any value in receiving/sending the Event object that the
    +                 * browser provides when it generates the original event.
    +                 */
    +                window[sFunc] = function onWindowEvent()
    +                {
    +                    if (fnPrev) fnPrev();
    +                    fn();
    +                };
    +            }
    +        }
    +    };
    +
    +    /**
    +     * onInit(fn)
    +     *
    +     * Use this instead of setting window.onload.  Allows multiple JavaScript modules to define their own 'onload' event handler.
    +     *
    +     * @param {function()} fn
    +     */
    +    static onInit(fn)
    +    {
    +        Web.aPageEventHandlers['init'].push(fn);
    +    };
    +
    +    /**
    +     * onShow(fn)
    +     *
    +     * @param {function()} fn
    +     *
    +     * Use this instead of setting window.onpageshow.  Allows multiple JavaScript modules to define their own 'onpageshow' event handler.
    +     */
    +    static onShow(fn)
    +    {
    +        Web.aPageEventHandlers['show'].push(fn);
    +    };
    +
    +    /**
    +     * onExit(fn)
    +     *
    +     * @param {function()} fn
    +     *
    +     * Use this instead of setting window.onunload.  Allows multiple JavaScript modules to define their own 'onunload' event handler.
    +     */
    +    static onExit(fn)
    +    {
    +        Web.aPageEventHandlers['exit'].push(fn);
    +    };
    +
    +    /**
    +     * doPageEvent(afn)
    +     *
    +     * @param {Array.} afn
    +     */
    +    static doPageEvent(afn)
    +    {
    +        if (Web.fPageEventsEnabled) {
    +            try {
    +                for (var i = 0; i < afn.length; i++) {
    +                    afn[i]();
    +                }
    +            } catch (e) {
    +                Web.notice("An unexpected exception occurred:\n\n" + e.message + "\n\nPlease send this information to support@pcjs.org. Thanks.");
    +            }
    +        }
    +    };
    +
    +    /**
    +     * enablePageEvents(fEnable)
    +     *
    +     * @param {boolean} fEnable is true to enable page events, false to disable (they're enabled by default)
    +     */
    +    static enablePageEvents(fEnable)
    +    {
    +        if (!Web.fPageEventsEnabled && fEnable) {
    +            Web.fPageEventsEnabled = true;
    +            if (Web.fPageLoaded) Web.sendPageEvent('init');
    +            if (Web.fPageShowed) Web.sendPageEvent('show');
    +            return;
    +        }
    +        Web.fPageEventsEnabled = fEnable;
    +    }
    +
    +    /**
    +     * sendPageEvent(sEvent)
    +     *
    +     * This allows us to manually trigger page events.
    +     *
    +     * @param {string} sEvent (one of 'init', 'show' or 'exit')
    +     */
    +    static sendPageEvent(sEvent)
    +    {
    +        if (Web.aPageEventHandlers[sEvent]) {
    +            Web.doPageEvent(Web.aPageEventHandlers[sEvent]);
    +        }
    +    }
    +}
    +
    +Web.parmsURL = null;            // initialized on first call to parseURLParms()
    +
    +Web.aPageEventHandlers = {
    +    'init': [],                 // list of window 'onload' handlers
    +    'show': [],                 // list of window 'onpageshow' handlers
    +    'exit': []                  // list of window 'onunload' handlers (although we prefer to use 'onbeforeunload' if possible)
    +};
    +
    +Web.fPageLoaded = false;        // set once the page's first 'onload' event has occurred
    +Web.fPageShowed = false;        // set once the page's first 'onpageshow' event has occurred
    +Web.fPageEventsEnabled = true;  // default is true, set to false (or true) by enablePageEvents()
    +
    +/**
    + * fLocalStorage
    + *
    + * true if localStorage support exists, is enabled, and works; "falsey" otherwise
    + *
    + * @type {boolean|null}
    + */
    +Web.fLocalStorage = null;
    +
    +/**
    + * TODO: Is there any way to get the Closure Compiler to stop inlining this string?  This isn't cutting it.
    + *
    + * @const {string}
    + */
    +Web.sLocalStorageTest = "PCjs.localStorage";
    +
    +Web.onPageEvent('onload', function onPageLoad() {
    +    Web.fPageLoaded = true;
    +    Web.doPageEvent(Web.aPageEventHandlers['init']);
    +});
    +
    +Web.onPageEvent('onpageshow', function onPageShow() {
    +    Web.fPageShowed = true;
    +    Web.doPageEvent(Web.aPageEventHandlers['show']);
    +});
    +
    +Web.onPageEvent(Web.isUserAgent("iOS")? 'onpagehide' : (Web.isUserAgent("Opera")? 'onunload' : 'onbeforeunload'), function onPageUnload() {
    +    Web.doPageEvent(Web.aPageEventHandlers['exit']);
    +});
    +
    +
    +
    +/**
    + * @copyright http://pcjs.org/modules/shared/lib/component.js (C) Jeff Parsons 2012-2017
    + */
    +
    +/*
    + * All PCjs components now use JSDoc types, primarily so that Google's Closure Compiler will compile
    + * everything with zero warnings when ADVANCED_OPTIMIZATIONS are enabled.  For more information about
    + * the JSDoc types supported by the Closure Compiler:
    + *
    + *      https://developers.google.com/closure/compiler/docs/js-for-compiler#types
    + *
    + * I also attempted to validate this code with JSLint, but it complained too much; eg, it didn't like
    + * "while (true)", a tried and "true" programming convention for decades, and it wanted me to replace
    + * all "++" and "--" operators with "+= 1" and "-= 1", use "(s || '')" instead of "(s? s : '')", etc.
    + *
    + * I prefer sticking with traditional C-style idioms, in part because they are more portable.  That
    + * does NOT mean I'm trying to write "portable JavaScript," but some of this code was ported from C code
    + * I'd written long ago, so portability is good, and I'm not going to throw that away if there's no need.
    + *
    + * UPDATE: I've since switched from JSLint to JSHint, which seems to have more reasonable defaults.
    + * And for new code, I have adopted some popular JavaScript idioms, like "(s || '')", although the need
    + * for those kinds of expressions will be reduced as I also start adopting some ES6 features, like
    + * default parameters.
    + */
    +
    +
    +/**
    + * Since the Closure Compiler treats ES6 classes as @struct rather than @dict by default,
    + * it deters us from defining named properties on our components; eg:
    + *
    + *      this['exports'] = {...}
    + *
    + * results in an error:
    + *
    + *      Cannot do '[]' access on a struct
    + *
    + * So, in order to define 'exports', we must override the @struct assumption by annotating
    + * the class as @unrestricted (or @dict).  Note that this must be done both here and in the
    + * subclass (eg, SerialPort), because otherwise the Compiler won't allow us to *reference*
    + * the named property either.
    + *
    + * TODO: Consider marking ALL our classes unrestricted, because otherwise it forces us to
    + * define every single property the class uses in its constructor, which results in a fair
    + * bit of redundant initialization, since many properties aren't (and don't need to be) fully
    + * initialized until the appropriate init(), reset(), restore(), etc. function is called.
    + *
    + * The upside, however, may be that since the structure of the class is completely defined by
    + * the constructor, JavaScript engines may be able to optimize and run more efficiently.
    + *
    + * @unrestricted
    + */
    +class Component {
    +    /**
    +     * Component(type, parms, bitsMessage)
    +     *
    +     * A Component object requires:
    +     *
    +     *      type: a user-defined type name (eg, "CPU")
    +     *
    +     * and accepts any or all of the following (parms) properties:
    +     *
    +     *      id: component ID (default is "")
    +     *      name: component name (default is ""; if blank, toString() will use the type name only)
    +     *      comment: component comment string (default is undefined)
    +     *
    +     * Component subclasses will usually have additional (parms) properties.
    +     *
    +     * @param {string} type
    +     * @param {Object} [parms]
    +     * @param {number} [bitsMessage] selects message(s) that the component wants to enable (default is 0)
    +     */
    +    constructor(type, parms, bitsMessage)
    +    {
    +        this.type = type;
    +
    +        if (!parms) parms = {'id': "", 'name': ""};
    +
    +        this.id = parms['id'] || "";
    +        this.name = parms['name'];
    +        this.comment = parms['comment'];
    +        this.parms = parms;
    +
    +        /*
    +         * The following Component properties need to be accessible by other machines and/or command scripts;
    +         * well, OK, or we could have exported some new functions to walk the contents of these properties, as we
    +         * did with findMachineComponent(), but this works just as well.
    +         *
    +         * Also, while the double-assignment looks silly (ie, using both dot and bracket property notation), it
    +         * resolves a complaint from the Closure Compiler, because if we use ONLY bracket notation here, then the
    +         * Compiler wants us to change all the other references to bracket notation as well.
    +         */
    +        this.exports = this['exports'] = {};
    +        this.bindings = this['bindings'] = {};
    +
    +        var i = this.id.indexOf('.');
    +        if (i < 0) {
    +            this.idComponent = this.id;
    +        } else {
    +            this.idMachine = this.id.substr(0, i);
    +            this.idComponent = this.id.substr(i + 1);
    +        }
    +
    +        /*
    +         * Gather all the various component flags (booleans) into a single "flags" object, and encourage
    +         * subclasses to do the same, to reduce the property clutter we have to wade through while debugging.
    +         */
    +        this.flags = {
    +            ready:      false,
    +            busy:       false,
    +            busyCancel: false,
    +            initDone:   false,
    +            powered:    false,
    +            unloading:  false,
    +            error:      false
    +        };
    +
    +        this.fnReady = null;
    +        this.clearError();
    +        this.bitsMessage = bitsMessage || 0;
    +
    +        this.cmp = null;
    +        this.bus = null;
    +        this.cpu = null;
    +        this.dbg = null;
    +
    +        /*
    +         * TODO: Consider adding another parameter to the Component() constructor that allows components to tell
    +         * us if they support single or multiple instances per machine.  For example, there can be multiple SerialPort
    +         * components per machine, but only one CPU component (some machines also support an FPU, but that component
    +         * is considered separate from the CPU).
    +         *
    +         * It's not critical, but it would help catch machine configuration errors; for example, a machine that mistakenly
    +         * includes two CPU components may, aside from wasting memory, end up with odd side-effects, like unresponsive
    +         * CPU controls.
    +         */
    +        Component.add(this);
    +    }
    +
    +    /**
    +     * Component.add(component)
    +     *
    +     * @param {Component} component
    +     */
    +    static add(component)
    +    {
    +        /*
    +         * This just generates a lot of useless noise, handy in the early days, not so much these days....
    +         *
    +         *      if (DEBUG) Component.log("Component.add(" + component.type + "," + component.id + ")");
    +         */
    +        Component.components.push(component);
    +    }
    +
    +    /**
    +     * Component.addMachine(idMachine)
    +     *
    +     * @param {string} idMachine
    +     */
    +    static addMachine(idMachine)
    +    {
    +        Component.machines[idMachine] = {};
    +    }
    +
    +    /**
    +     * Component.addMachineResource(idMachine, sName, data)
    +     *
    +     * @param {string} idMachine
    +     * @param {string|null} sName (name of the resource)
    +     * @param {*} data
    +     */
    +    static addMachineResource(idMachine, sName, data)
    +    {
    +        /*
    +         * I used to assert(Component.machines[idMachine]), but when we're running as a Node app, embed.js is not used,
    +         * so addMachine() is never called, so resources do not need to be recorded.
    +         */
    +        if (Component.machines[idMachine] && sName) {
    +            Component.machines[idMachine][sName] = data;
    +        }
    +    }
    +
    +    /**
    +     * Component.getMachineResources(idMachine)
    +     *
    +     * @param {string} idMachine
    +     * @return {Object|undefined}
    +     */
    +    static getMachineResources(idMachine)
    +    {
    +        return Component.machines[idMachine];
    +    }
    +
    +    /**
    +     * Component.getTime()
    +     *
    +     * @return {number} the current time, in milliseconds
    +     */
    +    static getTime()
    +    {
    +        return Date.now() || +new Date();
    +    }
    +
    +    /**
    +     * Component.log(s, type)
    +     *
    +     * For diagnostic output only.
    +     *
    +     * @param {string} [s] is the message text
    +     * @param {string} [type] is the message type
    +     */
    +    static log(s, type)
    +    {
    +        if (!COMPILED) {
    +            if (s) {
    +                var sElapsed = "", sMsg = (type? (type + ": ") : "") + s;
    +                if (typeof Usr != "undefined") {
    +                    if (Component.msStart === undefined) {
    +                        Component.msStart = Component.getTime();
    +                    }
    +                    sElapsed = (Component.getTime() - Component.msStart) + "ms: ";
    +                }
    +                if (window && window.console) console.log(sElapsed + sMsg.replace(/\n/g, ' '));
    +            }
    +        }
    +    }
    +
    +    /**
    +     * Component.assert(f, s)
    +     *
    +     * Verifies conditions that must be true (for DEBUG builds only).
    +     *
    +     * The Closure Compiler should automatically remove all references to Component.assert() in non-DEBUG builds.
    +     * TODO: Add a task to the build process that "asserts" there are no instances of "assertion failure" in RELEASE builds.
    +     *
    +     * @param {boolean} f is the expression we are asserting to be true
    +     * @param {string} [s] is description of the assertion on failure
    +     */
    +    static assert(f, s)
    +    {
    +        if (DEBUG) {
    +            if (!f) {
    +                if (!s) s = "assertion failure";
    +                Component.log(s);
    +                throw new Error(s);
    +            }
    +        }
    +    }
    +
    +    /**
    +     * Component.print(s)
    +     *
    +     * Components that inherit from this class should use this.print(), rather than Component.print(), because
    +     * if a Control Panel is loaded, it will override only the instance method, not the class method (overriding the
    +     * class method would improperly affect any other machines loaded on the same page).
    +     *
    +     * @this {Component}
    +     * @param {string} s
    +     */
    +    static print(s)
    +    {
    +        if (!COMPILED) {
    +            var i = s.lastIndexOf('\n');
    +            if (i >= 0) {
    +                Component.println(s.substr(0, i));
    +                s = s.substr(i + 1);
    +            }
    +            Component.printBuffer += s;
    +        }
    +    }
    +
    +    /**
    +     * Component.println(s, type, id)
    +     *
    +     * Components that inherit from this class should use this.println(), rather than Component.println(), because
    +     * if a Control Panel is loaded, it will override only the instance method, not the class method (overriding the
    +     * class method would improperly affect any other machines loaded on the same page).
    +     *
    +     * @param {string} [s] is the message text
    +     * @param {string} [type] is the message type
    +     * @param {string} [id] is the caller's ID, if any
    +     */
    +    static println(s, type, id)
    +    {
    +        if (!COMPILED) {
    +            s = Component.printBuffer + (s || "");
    +            Component.log((id? (id + ": ") : "") + (s? ("\"" + s + "\"") : ""), type);
    +            Component.printBuffer = "";
    +        }
    +    }
    +
    +    /**
    +     * Component.notice(s, fPrintOnly, id)
    +     *
    +     * notice() is like println() but implies a need for user notification, so we alert() as well.
    +     *
    +     * @param {string} s is the message text
    +     * @param {boolean} [fPrintOnly]
    +     * @param {string} [id] is the caller's ID, if any
    +     * @return {boolean}
    +     */
    +    static notice(s, fPrintOnly, id)
    +    {
    +        if (!COMPILED) {
    +            Component.println(s, Component.TYPE.NOTICE, id);
    +        }
    +        if (!fPrintOnly) Component.alertUser((id? (id + ": ") : "") + s);
    +        return true;
    +    }
    +
    +    /**
    +     * Component.warning(s)
    +     *
    +     * @param {string} s describes the warning
    +     */
    +    static warning(s)
    +    {
    +        if (!COMPILED) {
    +            Component.println(s, Component.TYPE.WARNING);
    +        }
    +        Component.alertUser(s);
    +    }
    +
    +    /**
    +     * Component.error(s)
    +     *
    +     * @param {string} s describes the error; an alert() is displayed as well
    +     */
    +    static error(s)
    +    {
    +        if (!COMPILED) {
    +            Component.println(s, Component.TYPE.ERROR);
    +        }
    +        Component.alertUser(s);
    +    }
    +
    +    /**
    +     * Component.alertUser(sMessage)
    +     *
    +     * @param {string} sMessage
    +     */
    +    static alertUser(sMessage)
    +    {
    +        if (window) {
    +            window.alert(sMessage);
    +        } else {
    +            Component.log(sMessage);
    +        }
    +    };
    +
    +    /**
    +     * Component.confirmUser(sPrompt)
    +     *
    +     * @param {string} sPrompt
    +     * @returns {boolean} true if the user clicked OK, false if Cancel/Close
    +     */
    +    static confirmUser(sPrompt)
    +    {
    +        var fResponse = false;
    +        if (window) {
    +            fResponse = window.confirm(sPrompt);
    +        }
    +        return fResponse;
    +    }
    +
    +    /**
    +     * Component.promptUser()
    +     *
    +     * @param {string} sPrompt
    +     * @param {string} [sDefault]
    +     * @returns {string|null}
    +     */
    +    static promptUser(sPrompt, sDefault)
    +    {
    +        var sResponse = null;
    +        if (window) {
    +            sResponse = window.prompt(sPrompt, sDefault === undefined? "" : sDefault);
    +        }
    +        return sResponse;
    +    }
    +
    +    /**
    +     * Component.appendControl(control, sText)
    +     *
    +     * @param {Object} control
    +     * @param {string} sText
    +     */
    +    static appendControl(control, sText)
    +    {
    +        control.value += sText;
    +        /*
    +         * Prevent the