b0xfile__swagger-ui.js.go 3.0 MB

123456789101112131415161718192021222324252627282930
  1. // Code generaTed by fileb0x at "2019-07-04 12:13:14.482496 +0800 CST m=+0.566837477" from config file "b0x.yaml" DO NOT EDIT.
  2. // modified(2019-07-04 12:08:17.135844661 +0800 CST)
  3. // original path: swagger-ui/dist/swagger-ui.js
  4. package swaggerFiles
  5. import (
  6. "os"
  7. )
  8. // FileSwaggerUIJs is "/swagger-ui.js"
  9. var FileSwaggerUIJs = []byte("\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x65\x62\x70\x61\x63\x6b\x55\x6e\x69\x76\x65\x72\x73\x61\x6c\x4d\x6f\x64\x75\x6c\x65\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x28\x72\x6f\x6f\x74\x2c\x66\x61\x63\x74\x6f\x72\x79\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x65\x78\x70\x6f\x72\x74\x73\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x6d\x6f\x64\x75\x6c\x65\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x61\x63\x74\x6f\x72\x79\x28\x29\x3b\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x64\x65\x66\x69\x6e\x65\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x64\x65\x66\x69\x6e\x65\x2e\x61\x6d\x64\x29\x64\x65\x66\x69\x6e\x65\x28\x5b\x5d\x2c\x66\x61\x63\x74\x6f\x72\x79\x29\x3b\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x65\x78\x70\x6f\x72\x74\x73\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x65\x78\x70\x6f\x72\x74\x73\x5b\x22\x53\x77\x61\x67\x67\x65\x72\x55\x49\x43\x6f\x72\x65\x22\x5d\x3d\x66\x61\x63\x74\x6f\x72\x79\x28\x29\x3b\x65\x6c\x73\x65\x20\x72\x6f\x6f\x74\x5b\x22\x53\x77\x61\x67\x67\x65\x72\x55\x49\x43\x6f\x72\x65\x22\x5d\x3d\x66\x61\x63\x74\x6f\x72\x79\x28\x29\x7d\x29\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x65\x6c\x66\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x73\x65\x6c\x66\x3a\x74\x68\x69\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x73\x29\x7b\x76\x61\x72\x20\x69\x6e\x73\x74\x61\x6c\x6c\x65\x64\x4d\x6f\x64\x75\x6c\x65\x73\x3d\x7b\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x6d\x6f\x64\x75\x6c\x65\x49\x64\x29\x7b\x69\x66\x28\x69\x6e\x73\x74\x61\x6c\x6c\x65\x64\x4d\x6f\x64\x75\x6c\x65\x73\x5b\x6d\x6f\x64\x75\x6c\x65\x49\x64\x5d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x73\x74\x61\x6c\x6c\x65\x64\x4d\x6f\x64\x75\x6c\x65\x73\x5b\x6d\x6f\x64\x75\x6c\x65\x49\x64\x5d\x2e\x65\x78\x70\x6f\x72\x74\x73\x7d\x76\x61\x72\x20\x6d\x6f\x64\x75\x6c\x65\x3d\x69\x6e\x73\x74\x61\x6c\x6c\x65\x64\x4d\x6f\x64\x75\x6c\x65\x73\x5b\x6d\x6f\x64\x75\x6c\x65\x49\x64\x5d\x3d\x7b\x69\x3a\x6d\x6f\x64\x75\x6c\x65\x49\x64\x2c\x6c\x3a\x66\x61\x6c\x73\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x3a\x7b\x7d\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x73\x5b\x6d\x6f\x64\x75\x6c\x65\x49\x64\x5d\x2e\x63\x61\x6c\x6c\x28\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2c\x6d\x6f\x64\x75\x6c\x65\x2c\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x6c\x3d\x74\x72\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x7d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x2e\x6d\x3d\x6d\x6f\x64\x75\x6c\x65\x73\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x2e\x63\x3d\x69\x6e\x73\x74\x61\x6c\x6c\x65\x64\x4d\x6f\x64\x75\x6c\x65\x73\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x2e\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x6e\x61\x6d\x65\x2c\x67\x65\x74\x74\x65\x72\x29\x7b\x69\x66\x28\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x2e\x6f\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x6e\x61\x6d\x65\x29\x29\x7b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x6e\x61\x6d\x65\x2c\x7b\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x66\x61\x6c\x73\x65\x2c\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x67\x65\x74\x3a\x67\x65\x74\x74\x65\x72\x7d\x29\x7d\x7d\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x2e\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x74\x65\x72\x3d\x6d\x6f\x64\x75\x6c\x65\x26\x26\x6d\x6f\x64\x75\x6c\x65\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x44\x65\x66\x61\x75\x6c\x74\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6d\x6f\x64\x75\x6c\x65\x5b\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x5d\x7d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4d\x6f\x64\x75\x6c\x65\x45\x78\x70\x6f\x72\x74\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6d\x6f\x64\x75\x6c\x65\x7d\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x2e\x64\x28\x67\x65\x74\x74\x65\x72\x2c\x22\x61\x22\x2c\x67\x65\x74\x74\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x67\x65\x74\x74\x65\x72\x7d\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x2e\x6f\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x72\x6f\x70\x65\x72\x74\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x72\x6f\x70\x65\x72\x74\x79\x29\x7d\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x2e\x70\x3d\x22\x2f\x64\x69\x73\x74\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x2e\x73\x3d\x32\x39\x35\x29\x7d\x28\x5b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x61\x63\x74\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x70\x72\x6f\x70\x2d\x74\x79\x70\x65\x73\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x6e\x73\x74\x61\x6e\x63\x65\x2c\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x29\x7b\x69\x66\x28\x21\x28\x69\x6e\x73\x74\x61\x6e\x63\x65\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x43\x61\x6e\x6e\x6f\x74\x20\x63\x61\x6c\x6c\x20\x61\x20\x63\x6c\x61\x73\x73\x20\x61\x73\x20\x61\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x35\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x28\x74\x61\x72\x67\x65\x74\x2c\x70\x72\x6f\x70\x73\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x70\x72\x6f\x70\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x3d\x70\x72\x6f\x70\x73\x5b\x69\x5d\x3b\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x2e\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3d\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x2e\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x7c\x7c\x66\x61\x6c\x73\x65\x3b\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x2e\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3d\x74\x72\x75\x65\x3b\x69\x66\x28\x22\x76\x61\x6c\x75\x65\x22\x69\x6e\x20\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x29\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x2e\x77\x72\x69\x74\x61\x62\x6c\x65\x3d\x74\x72\x75\x65\x3b\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x61\x72\x67\x65\x74\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x2e\x6b\x65\x79\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x70\x72\x6f\x74\x6f\x50\x72\x6f\x70\x73\x2c\x73\x74\x61\x74\x69\x63\x50\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x70\x72\x6f\x74\x6f\x50\x72\x6f\x70\x73\x29\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x28\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x70\x72\x6f\x74\x6f\x50\x72\x6f\x70\x73\x29\x3b\x69\x66\x28\x73\x74\x61\x74\x69\x63\x50\x72\x6f\x70\x73\x29\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x28\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x73\x74\x61\x74\x69\x63\x50\x72\x6f\x70\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x7d\x7d\x28\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x32\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x79\x70\x65\x6f\x66\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x6c\x66\x2c\x63\x61\x6c\x6c\x29\x7b\x69\x66\x28\x21\x73\x65\x6c\x66\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x65\x66\x65\x72\x65\x6e\x63\x65\x45\x72\x72\x6f\x72\x28\x22\x74\x68\x69\x73\x20\x68\x61\x73\x6e\x27\x74\x20\x62\x65\x65\x6e\x20\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x64\x20\x2d\x20\x73\x75\x70\x65\x72\x28\x29\x20\x68\x61\x73\x6e\x27\x74\x20\x62\x65\x65\x6e\x20\x63\x61\x6c\x6c\x65\x64\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x6c\x6c\x26\x26\x28\x28\x74\x79\x70\x65\x6f\x66\x20\x63\x61\x6c\x6c\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x63\x61\x6c\x6c\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x7c\x7c\x74\x79\x70\x65\x6f\x66\x20\x63\x61\x6c\x6c\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x3f\x63\x61\x6c\x6c\x3a\x73\x65\x6c\x66\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x73\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x79\x70\x65\x6f\x66\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x75\x62\x43\x6c\x61\x73\x73\x2c\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x21\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x53\x75\x70\x65\x72\x20\x65\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x20\x6d\x75\x73\x74\x20\x65\x69\x74\x68\x65\x72\x20\x62\x65\x20\x6e\x75\x6c\x6c\x20\x6f\x72\x20\x61\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x2c\x20\x6e\x6f\x74\x20\x22\x2b\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x29\x29\x29\x7d\x73\x75\x62\x43\x6c\x61\x73\x73\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x26\x26\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x7b\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3a\x7b\x76\x61\x6c\x75\x65\x3a\x73\x75\x62\x43\x6c\x61\x73\x73\x2c\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x66\x61\x6c\x73\x65\x2c\x77\x72\x69\x74\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x29\x3b\x69\x66\x28\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x29\x5f\x73\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x3f\x28\x30\x2c\x5f\x73\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x75\x62\x43\x6c\x61\x73\x73\x2c\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x29\x3a\x73\x75\x62\x43\x6c\x61\x73\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3d\x73\x75\x70\x65\x72\x43\x6c\x61\x73\x73\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x42\x75\x66\x66\x65\x72\x29\x7b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x73\x63\x61\x70\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x72\x65\x61\x74\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x61\x6c\x6c\x6f\x77\x45\x71\x75\x61\x6c\x4b\x65\x79\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x62\x75\x69\x6c\x64\x46\x6f\x72\x6d\x44\x61\x74\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x6f\x72\x74\x65\x72\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x62\x74\x6f\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x53\x65\x61\x72\x63\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x73\x65\x53\x65\x61\x72\x63\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x53\x61\x6d\x70\x6c\x65\x53\x63\x68\x65\x6d\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x74\x74\x65\x72\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x47\x75\x69\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x44\x61\x74\x65\x54\x69\x6d\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x53\x74\x72\x69\x6e\x67\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x6f\x6f\x6c\x65\x61\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x46\x69\x6c\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x49\x6e\x74\x65\x67\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4e\x75\x6d\x62\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x69\x6d\x75\x6d\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x69\x6d\x75\x6d\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x6f\x70\x43\x68\x65\x63\x6b\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x30\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x32\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6b\x65\x79\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x79\x70\x65\x6f\x66\x32\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4a\x53\x4f\x4e\x4f\x62\x6a\x65\x63\x74\x3d\x69\x73\x4a\x53\x4f\x4e\x4f\x62\x6a\x65\x63\x74\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x3d\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x72\x72\x61\x79\x69\x66\x79\x3d\x61\x72\x72\x61\x79\x69\x66\x79\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x3d\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x62\x69\x6e\x64\x54\x6f\x53\x74\x61\x74\x65\x3d\x62\x69\x6e\x64\x54\x6f\x53\x74\x61\x74\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x41\x72\x72\x61\x79\x3d\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x41\x72\x72\x61\x79\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x46\x6e\x3d\x69\x73\x46\x6e\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x69\x73\x4f\x62\x6a\x65\x63\x74\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x46\x75\x6e\x63\x3d\x69\x73\x46\x75\x6e\x63\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x41\x72\x72\x61\x79\x3d\x69\x73\x41\x72\x72\x61\x79\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x3d\x6f\x62\x6a\x4d\x61\x70\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x62\x6a\x52\x65\x64\x75\x63\x65\x3d\x6f\x62\x6a\x52\x65\x64\x75\x63\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x79\x73\x74\x65\x6d\x54\x68\x75\x6e\x6b\x4d\x69\x64\x64\x6c\x65\x77\x61\x72\x65\x3d\x73\x79\x73\x74\x65\x6d\x54\x68\x75\x6e\x6b\x4d\x69\x64\x64\x6c\x65\x77\x61\x72\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x61\x74\x75\x73\x43\x6f\x64\x65\x3d\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x61\x74\x75\x73\x43\x6f\x64\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x4c\x69\x73\x74\x3d\x67\x65\x74\x4c\x69\x73\x74\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x3d\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x61\x70\x54\x6f\x4c\x69\x73\x74\x3d\x6d\x61\x70\x54\x6f\x4c\x69\x73\x74\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x74\x72\x61\x63\x74\x46\x69\x6c\x65\x4e\x61\x6d\x65\x46\x72\x6f\x6d\x43\x6f\x6e\x74\x65\x6e\x74\x44\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x48\x65\x61\x64\x65\x72\x3d\x65\x78\x74\x72\x61\x63\x74\x46\x69\x6c\x65\x4e\x61\x6d\x65\x46\x72\x6f\x6d\x43\x6f\x6e\x74\x65\x6e\x74\x44\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x48\x65\x61\x64\x65\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x73\x63\x61\x6c\x43\x61\x73\x65\x3d\x70\x61\x73\x63\x61\x6c\x43\x61\x73\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x73\x63\x61\x6c\x43\x61\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x3d\x70\x61\x73\x63\x61\x6c\x43\x61\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x3d\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x41\x63\x63\x65\x70\x74\x43\x6f\x6e\x74\x72\x6f\x6c\x6c\x69\x6e\x67\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x67\x65\x74\x41\x63\x63\x65\x70\x74\x43\x6f\x6e\x74\x72\x6f\x6c\x6c\x69\x6e\x67\x52\x65\x73\x70\x6f\x6e\x73\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x65\x70\x6c\x79\x53\x74\x72\x69\x70\x4b\x65\x79\x3d\x64\x65\x65\x70\x6c\x79\x53\x74\x72\x69\x70\x4b\x65\x79\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x75\x6d\x62\x65\x72\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x6e\x75\x6d\x62\x65\x72\x54\x6f\x53\x74\x72\x69\x6e\x67\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x54\x6f\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x3d\x70\x61\x72\x61\x6d\x54\x6f\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x54\x6f\x56\x61\x6c\x75\x65\x3d\x70\x61\x72\x61\x6d\x54\x6f\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x61\x6d\x65\x6c\x43\x61\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x34\x29\x3b\x76\x61\x72\x20\x5f\x63\x61\x6d\x65\x6c\x43\x61\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x61\x6d\x65\x6c\x43\x61\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x30\x29\x3b\x76\x61\x72\x20\x5f\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74\x29\x3b\x76\x61\x72\x20\x5f\x6d\x65\x6d\x6f\x69\x7a\x65\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x34\x29\x3b\x76\x61\x72\x20\x5f\x6d\x65\x6d\x6f\x69\x7a\x65\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x65\x6d\x6f\x69\x7a\x65\x32\x29\x3b\x76\x61\x72\x20\x5f\x66\x69\x6e\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x66\x69\x6e\x64\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x66\x69\x6e\x64\x29\x3b\x76\x61\x72\x20\x5f\x73\x6f\x6d\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x36\x29\x3b\x76\x61\x72\x20\x5f\x73\x6f\x6d\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6f\x6d\x65\x29\x3b\x76\x61\x72\x20\x5f\x65\x71\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x31\x29\x3b\x76\x61\x72\x20\x5f\x65\x71\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x71\x29\x3b\x76\x61\x72\x20\x5f\x66\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x34\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x63\x73\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x38\x29\x3b\x76\x61\x72\x20\x5f\x63\x73\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x73\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x44\x45\x46\x41\x55\x4c\x54\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x5f\x4b\x45\x59\x3d\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x3b\x76\x61\x72\x20\x69\x73\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x28\x6d\x61\x79\x62\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x49\x74\x65\x72\x61\x62\x6c\x65\x2e\x69\x73\x49\x74\x65\x72\x61\x62\x6c\x65\x28\x6d\x61\x79\x62\x65\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4a\x53\x4f\x4e\x4f\x62\x6a\x65\x63\x74\x28\x73\x74\x72\x29\x7b\x74\x72\x79\x7b\x76\x61\x72\x20\x6f\x3d\x4a\x53\x4f\x4e\x2e\x70\x61\x72\x73\x65\x28\x73\x74\x72\x29\x3b\x69\x66\x28\x6f\x26\x26\x28\x74\x79\x70\x65\x6f\x66\x20\x6f\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x28\x74\x68\x69\x6e\x67\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x74\x68\x69\x6e\x67\x29\x29\x72\x65\x74\x75\x72\x6e\x7b\x7d\x3b\x69\x66\x28\x69\x73\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x28\x74\x68\x69\x6e\x67\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x6e\x67\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x6e\x67\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x72\x72\x61\x79\x69\x66\x79\x28\x74\x68\x69\x6e\x67\x29\x7b\x69\x66\x28\x21\x74\x68\x69\x6e\x67\x29\x72\x65\x74\x75\x72\x6e\x5b\x5d\x3b\x69\x66\x28\x74\x68\x69\x6e\x67\x2e\x74\x6f\x41\x72\x72\x61\x79\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x6e\x67\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x41\x72\x72\x61\x79\x28\x74\x68\x69\x6e\x67\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x28\x6a\x73\x29\x7b\x69\x66\x28\x69\x73\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x28\x6a\x73\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x6a\x73\x3b\x69\x66\x28\x6a\x73\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x46\x69\x6c\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x6a\x73\x3b\x72\x65\x74\x75\x72\x6e\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x6a\x73\x29\x3f\x6a\x73\x3a\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x6a\x73\x29\x3f\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x53\x65\x71\x28\x6a\x73\x29\x2e\x6d\x61\x70\x28\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x29\x2e\x74\x6f\x4c\x69\x73\x74\x28\x29\x3a\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x28\x6a\x73\x29\x2e\x6d\x61\x70\x28\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x69\x6e\x64\x54\x6f\x53\x74\x61\x74\x65\x28\x6f\x62\x6a\x2c\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x62\x6a\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x7d\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x73\x74\x61\x74\x65\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x41\x72\x72\x61\x79\x28\x61\x72\x72\x29\x7b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x61\x72\x72\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x3b\x72\x65\x74\x75\x72\x6e\x5b\x61\x72\x72\x5d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x46\x6e\x28\x66\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x66\x6e\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x6f\x62\x6a\x26\x26\x28\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x62\x6a\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x46\x75\x6e\x63\x28\x74\x68\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x74\x68\x69\x6e\x67\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x41\x72\x72\x61\x79\x28\x74\x68\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x74\x68\x69\x6e\x67\x29\x7d\x76\x61\x72\x20\x6d\x65\x6d\x6f\x69\x7a\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x3d\x5f\x6d\x65\x6d\x6f\x69\x7a\x65\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x4d\x61\x70\x28\x6f\x62\x6a\x2c\x66\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x62\x6a\x29\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x65\x77\x4f\x62\x6a\x2c\x6b\x65\x79\x29\x7b\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x66\x6e\x28\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x2c\x6b\x65\x79\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x2c\x7b\x7d\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x52\x65\x64\x75\x63\x65\x28\x6f\x62\x6a\x2c\x66\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x62\x6a\x29\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x65\x77\x4f\x62\x6a\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x3d\x66\x6e\x28\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x2c\x6b\x65\x79\x29\x3b\x69\x66\x28\x72\x65\x73\x26\x26\x28\x74\x79\x70\x65\x6f\x66\x20\x72\x65\x73\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x73\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6e\x65\x77\x4f\x62\x6a\x2c\x72\x65\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x2c\x7b\x7d\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x79\x73\x74\x65\x6d\x54\x68\x75\x6e\x6b\x4d\x69\x64\x64\x6c\x65\x77\x61\x72\x65\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x64\x69\x73\x70\x61\x74\x63\x68\x3d\x5f\x72\x65\x66\x2e\x64\x69\x73\x70\x61\x74\x63\x68\x2c\x67\x65\x74\x53\x74\x61\x74\x65\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x53\x74\x61\x74\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x65\x78\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x63\x74\x69\x6f\x6e\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x61\x63\x74\x69\x6f\x6e\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x63\x74\x69\x6f\x6e\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x78\x74\x28\x61\x63\x74\x69\x6f\x6e\x29\x7d\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x61\x74\x75\x73\x43\x6f\x64\x65\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x29\x7b\x76\x61\x72\x20\x63\x6f\x64\x65\x73\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x64\x65\x73\x2e\x63\x6f\x6e\x74\x61\x69\x6e\x73\x28\x44\x45\x46\x41\x55\x4c\x54\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x5f\x4b\x45\x59\x29\x3f\x44\x45\x46\x41\x55\x4c\x54\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x5f\x4b\x45\x59\x3a\x63\x6f\x64\x65\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x6b\x65\x79\x2b\x22\x22\x29\x5b\x30\x5d\x3d\x3d\x3d\x22\x32\x22\x7d\x29\x2e\x73\x6f\x72\x74\x28\x29\x2e\x66\x69\x72\x73\x74\x28\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4c\x69\x73\x74\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x6b\x65\x79\x73\x29\x7b\x69\x66\x28\x21\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x49\x74\x65\x72\x61\x62\x6c\x65\x2e\x69\x73\x49\x74\x65\x72\x61\x62\x6c\x65\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4c\x69\x73\x74\x28\x29\x7d\x76\x61\x72\x20\x76\x61\x6c\x3d\x69\x74\x65\x72\x61\x62\x6c\x65\x2e\x67\x65\x74\x49\x6e\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x6b\x65\x79\x73\x29\x3f\x6b\x65\x79\x73\x3a\x5b\x6b\x65\x79\x73\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x76\x61\x6c\x29\x3f\x76\x61\x6c\x3a\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4c\x69\x73\x74\x28\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x28\x65\x6c\x29\x7b\x76\x61\x72\x20\x4d\x41\x58\x5f\x4c\x45\x4e\x47\x54\x48\x3d\x35\x65\x33\x3b\x76\x61\x72\x20\x5f\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3d\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2c\x61\x70\x70\x65\x6e\x64\x43\x68\x69\x6c\x64\x3d\x22\x61\x70\x70\x65\x6e\x64\x43\x68\x69\x6c\x64\x22\x2c\x74\x65\x73\x74\x3d\x22\x74\x65\x73\x74\x22\x3b\x69\x66\x28\x21\x65\x6c\x29\x72\x65\x74\x75\x72\x6e\x22\x22\x3b\x69\x66\x28\x65\x6c\x2e\x74\x65\x78\x74\x43\x6f\x6e\x74\x65\x6e\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x4d\x41\x58\x5f\x4c\x45\x4e\x47\x54\x48\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x6c\x2e\x74\x65\x78\x74\x43\x6f\x6e\x74\x65\x6e\x74\x7d\x76\x61\x72\x20\x72\x65\x73\x65\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x65\x74\x28\x65\x6c\x29\x7b\x76\x61\x72\x20\x74\x65\x78\x74\x3d\x65\x6c\x2e\x74\x65\x78\x74\x43\x6f\x6e\x74\x65\x6e\x74\x2c\x70\x6f\x73\x3d\x30\x2c\x6e\x65\x78\x74\x31\x3d\x74\x65\x78\x74\x5b\x30\x5d\x2c\x63\x68\x72\x3d\x31\x2c\x70\x72\x65\x76\x31\x2c\x70\x72\x65\x76\x32\x2c\x74\x6f\x6b\x65\x6e\x3d\x65\x6c\x2e\x69\x6e\x6e\x65\x72\x48\x54\x4d\x4c\x3d\x22\x22\x2c\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3d\x30\x2c\x6c\x61\x73\x74\x54\x6f\x6b\x65\x6e\x54\x79\x70\x65\x2c\x6d\x75\x6c\x74\x69\x63\x68\x61\x72\x2c\x6e\x6f\x64\x65\x3b\x77\x68\x69\x6c\x65\x28\x70\x72\x65\x76\x32\x3d\x70\x72\x65\x76\x31\x2c\x70\x72\x65\x76\x31\x3d\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3c\x37\x26\x26\x70\x72\x65\x76\x31\x3d\x3d\x22\x5c\x5c\x22\x3f\x31\x3a\x63\x68\x72\x29\x7b\x63\x68\x72\x3d\x6e\x65\x78\x74\x31\x3b\x6e\x65\x78\x74\x31\x3d\x74\x65\x78\x74\x5b\x2b\x2b\x70\x6f\x73\x5d\x3b\x6d\x75\x6c\x74\x69\x63\x68\x61\x72\x3d\x74\x6f\x6b\x65\x6e\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x3b\x69\x66\x28\x21\x63\x68\x72\x7c\x7c\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3e\x38\x26\x26\x63\x68\x72\x3d\x3d\x22\x5c\x6e\x22\x7c\x7c\x5b\x2f\x5c\x53\x2f\x5b\x74\x65\x73\x74\x5d\x28\x63\x68\x72\x29\x2c\x31\x2c\x31\x2c\x21\x2f\x5b\x24\x5c\x77\x5d\x2f\x5b\x74\x65\x73\x74\x5d\x28\x63\x68\x72\x29\x2c\x28\x70\x72\x65\x76\x31\x3d\x3d\x22\x2f\x22\x7c\x7c\x70\x72\x65\x76\x31\x3d\x3d\x22\x5c\x6e\x22\x29\x26\x26\x6d\x75\x6c\x74\x69\x63\x68\x61\x72\x2c\x70\x72\x65\x76\x31\x3d\x3d\x27\x22\x27\x26\x26\x6d\x75\x6c\x74\x69\x63\x68\x61\x72\x2c\x70\x72\x65\x76\x31\x3d\x3d\x22\x27\x22\x26\x26\x6d\x75\x6c\x74\x69\x63\x68\x61\x72\x2c\x74\x65\x78\x74\x5b\x70\x6f\x73\x2d\x34\x5d\x2b\x70\x72\x65\x76\x32\x2b\x70\x72\x65\x76\x31\x3d\x3d\x22\x2d\x2d\x5c\x78\x33\x65\x22\x2c\x70\x72\x65\x76\x32\x2b\x70\x72\x65\x76\x31\x3d\x3d\x22\x2a\x2f\x22\x5d\x5b\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x5d\x29\x7b\x69\x66\x28\x74\x6f\x6b\x65\x6e\x29\x7b\x65\x6c\x5b\x61\x70\x70\x65\x6e\x64\x43\x68\x69\x6c\x64\x5d\x28\x6e\x6f\x64\x65\x3d\x5f\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x29\x29\x2e\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6c\x65\x22\x2c\x5b\x22\x63\x6f\x6c\x6f\x72\x3a\x20\x23\x35\x35\x35\x3b\x20\x66\x6f\x6e\x74\x2d\x77\x65\x69\x67\x68\x74\x3a\x20\x62\x6f\x6c\x64\x3b\x22\x2c\x22\x22\x2c\x22\x22\x2c\x22\x63\x6f\x6c\x6f\x72\x3a\x20\x23\x35\x35\x35\x3b\x22\x2c\x22\x22\x5d\x5b\x21\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3f\x30\x3a\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3c\x33\x3f\x32\x3a\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3e\x36\x3f\x34\x3a\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3e\x33\x3f\x33\x3a\x2b\x2f\x5e\x28\x61\x28\x62\x73\x74\x72\x61\x63\x74\x7c\x6c\x69\x61\x73\x7c\x6e\x64\x7c\x72\x67\x75\x6d\x65\x6e\x74\x73\x7c\x72\x72\x61\x79\x7c\x73\x28\x6d\x7c\x73\x65\x72\x74\x29\x3f\x7c\x75\x74\x6f\x29\x7c\x62\x28\x61\x73\x65\x7c\x65\x67\x69\x6e\x7c\x6f\x6f\x6c\x28\x65\x61\x6e\x29\x3f\x7c\x72\x65\x61\x6b\x7c\x79\x74\x65\x29\x7c\x63\x28\x61\x73\x65\x7c\x61\x74\x63\x68\x7c\x68\x61\x72\x7c\x68\x65\x63\x6b\x65\x64\x7c\x6c\x61\x73\x73\x7c\x6c\x6f\x6e\x65\x7c\x6f\x6d\x70\x6c\x7c\x6f\x6e\x73\x74\x7c\x6f\x6e\x74\x69\x6e\x75\x65\x29\x7c\x64\x65\x28\x62\x75\x67\x67\x65\x72\x7c\x63\x69\x6d\x61\x6c\x7c\x63\x6c\x61\x72\x65\x7c\x66\x28\x61\x75\x6c\x74\x7c\x65\x72\x29\x3f\x7c\x69\x6e\x69\x74\x7c\x6c\x28\x65\x67\x61\x74\x65\x7c\x65\x74\x65\x29\x3f\x29\x7c\x64\x6f\x7c\x64\x6f\x75\x62\x6c\x65\x7c\x65\x28\x63\x68\x6f\x7c\x6c\x73\x3f\x69\x66\x7c\x6c\x73\x65\x28\x69\x66\x29\x3f\x7c\x6e\x64\x7c\x6e\x73\x75\x72\x65\x7c\x6e\x75\x6d\x7c\x76\x65\x6e\x74\x7c\x78\x28\x63\x65\x70\x74\x7c\x65\x63\x7c\x70\x28\x6c\x69\x63\x69\x74\x7c\x6f\x72\x74\x29\x7c\x74\x65\x28\x6e\x64\x73\x7c\x6e\x73\x69\x6f\x6e\x7c\x72\x6e\x29\x29\x29\x7c\x66\x28\x61\x6c\x6c\x74\x68\x72\x6f\x75\x67\x68\x7c\x61\x6c\x73\x65\x7c\x69\x6e\x61\x6c\x28\x6c\x79\x29\x3f\x7c\x69\x78\x65\x64\x7c\x6c\x6f\x61\x74\x7c\x6f\x72\x28\x65\x61\x63\x68\x29\x3f\x7c\x72\x69\x65\x6e\x64\x7c\x72\x6f\x6d\x7c\x75\x6e\x63\x28\x74\x69\x6f\x6e\x29\x3f\x29\x7c\x67\x6c\x6f\x62\x61\x6c\x7c\x67\x6f\x74\x6f\x7c\x67\x75\x61\x72\x64\x7c\x69\x28\x66\x7c\x6d\x70\x28\x6c\x65\x6d\x65\x6e\x74\x73\x7c\x6c\x69\x63\x69\x74\x7c\x6f\x72\x74\x29\x7c\x6e\x28\x69\x74\x7c\x63\x6c\x75\x64\x65\x28\x5f\x6f\x6e\x63\x65\x29\x3f\x7c\x6c\x69\x6e\x65\x7c\x6f\x75\x74\x7c\x73\x74\x61\x6e\x63\x65\x6f\x66\x7c\x74\x28\x65\x72\x66\x61\x63\x65\x7c\x65\x72\x6e\x61\x6c\x29\x3f\x29\x3f\x7c\x73\x29\x7c\x6c\x28\x61\x6d\x62\x64\x61\x7c\x65\x74\x7c\x6f\x63\x6b\x7c\x6f\x6e\x67\x29\x7c\x6d\x28\x69\x63\x72\x6f\x6c\x69\x67\x68\x74\x7c\x6f\x64\x75\x6c\x65\x7c\x75\x74\x61\x62\x6c\x65\x29\x7c\x4e\x61\x4e\x7c\x6e\x28\x61\x6d\x65\x73\x70\x61\x63\x65\x7c\x61\x74\x69\x76\x65\x7c\x65\x78\x74\x7c\x65\x77\x7c\x69\x6c\x7c\x6f\x74\x7c\x75\x6c\x6c\x29\x7c\x6f\x28\x62\x6a\x65\x63\x74\x7c\x70\x65\x72\x61\x74\x6f\x72\x7c\x72\x7c\x75\x74\x7c\x76\x65\x72\x72\x69\x64\x65\x29\x7c\x70\x28\x61\x63\x6b\x61\x67\x65\x7c\x61\x72\x61\x6d\x73\x7c\x72\x69\x76\x61\x74\x65\x7c\x72\x6f\x74\x65\x63\x74\x65\x64\x7c\x72\x6f\x74\x6f\x63\x6f\x6c\x7c\x75\x62\x6c\x69\x63\x29\x7c\x72\x28\x61\x69\x73\x65\x7c\x65\x28\x61\x64\x6f\x6e\x6c\x79\x7c\x64\x6f\x7c\x66\x7c\x67\x69\x73\x74\x65\x72\x7c\x70\x65\x61\x74\x7c\x71\x75\x69\x72\x65\x28\x5f\x6f\x6e\x63\x65\x29\x3f\x7c\x73\x63\x75\x65\x7c\x73\x74\x72\x69\x63\x74\x7c\x74\x72\x79\x7c\x74\x75\x72\x6e\x29\x29\x7c\x73\x28\x62\x79\x74\x65\x7c\x65\x61\x6c\x65\x64\x7c\x65\x6c\x66\x7c\x68\x6f\x72\x74\x7c\x69\x67\x6e\x65\x64\x7c\x69\x7a\x65\x6f\x66\x7c\x74\x61\x74\x69\x63\x7c\x74\x72\x69\x6e\x67\x7c\x74\x72\x75\x63\x74\x7c\x75\x62\x73\x63\x72\x69\x70\x74\x7c\x75\x70\x65\x72\x7c\x79\x6e\x63\x68\x72\x6f\x6e\x69\x7a\x65\x64\x7c\x77\x69\x74\x63\x68\x29\x7c\x74\x28\x65\x6d\x70\x6c\x61\x74\x65\x7c\x68\x65\x6e\x7c\x68\x69\x73\x7c\x68\x72\x6f\x77\x73\x3f\x7c\x72\x61\x6e\x73\x69\x65\x6e\x74\x7c\x72\x75\x65\x7c\x72\x79\x7c\x79\x70\x65\x28\x61\x6c\x69\x61\x73\x7c\x64\x65\x66\x7c\x69\x64\x7c\x6e\x61\x6d\x65\x7c\x6f\x66\x29\x29\x7c\x75\x28\x6e\x28\x63\x68\x65\x63\x6b\x65\x64\x7c\x64\x65\x66\x28\x69\x6e\x65\x64\x29\x3f\x7c\x69\x6f\x6e\x7c\x6c\x65\x73\x73\x7c\x73\x69\x67\x6e\x65\x64\x7c\x74\x69\x6c\x29\x7c\x73\x65\x7c\x73\x69\x6e\x67\x29\x7c\x76\x28\x61\x72\x7c\x69\x72\x74\x75\x61\x6c\x7c\x6f\x69\x64\x7c\x6f\x6c\x61\x74\x69\x6c\x65\x29\x7c\x77\x28\x63\x68\x61\x72\x5f\x74\x7c\x68\x65\x6e\x7c\x68\x65\x72\x65\x7c\x68\x69\x6c\x65\x7c\x69\x74\x68\x29\x7c\x78\x6f\x72\x7c\x79\x69\x65\x6c\x64\x29\x24\x2f\x5b\x74\x65\x73\x74\x5d\x28\x74\x6f\x6b\x65\x6e\x29\x5d\x29\x3b\x6e\x6f\x64\x65\x5b\x61\x70\x70\x65\x6e\x64\x43\x68\x69\x6c\x64\x5d\x28\x5f\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x54\x65\x78\x74\x4e\x6f\x64\x65\x28\x74\x6f\x6b\x65\x6e\x29\x29\x7d\x6c\x61\x73\x74\x54\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3d\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x26\x26\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3c\x37\x3f\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3a\x6c\x61\x73\x74\x54\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3b\x74\x6f\x6b\x65\x6e\x3d\x22\x22\x3b\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3d\x31\x31\x3b\x77\x68\x69\x6c\x65\x28\x21\x5b\x31\x2c\x2f\x5b\x5c\x2f\x7b\x7d\x5b\x28\x5c\x2d\x2b\x2a\x3d\x3c\x3e\x3a\x3b\x7c\x5c\x5c\x2e\x2c\x3f\x21\x26\x40\x7e\x5d\x2f\x5b\x74\x65\x73\x74\x5d\x28\x63\x68\x72\x29\x2c\x2f\x5b\x5c\x5d\x29\x5d\x2f\x5b\x74\x65\x73\x74\x5d\x28\x63\x68\x72\x29\x2c\x2f\x5b\x24\x5c\x77\x5d\x2f\x5b\x74\x65\x73\x74\x5d\x28\x63\x68\x72\x29\x2c\x63\x68\x72\x3d\x3d\x22\x2f\x22\x26\x26\x6c\x61\x73\x74\x54\x6f\x6b\x65\x6e\x54\x79\x70\x65\x3c\x32\x26\x26\x70\x72\x65\x76\x31\x21\x3d\x22\x3c\x22\x2c\x63\x68\x72\x3d\x3d\x27\x22\x27\x2c\x63\x68\x72\x3d\x3d\x22\x27\x22\x2c\x63\x68\x72\x2b\x6e\x65\x78\x74\x31\x2b\x74\x65\x78\x74\x5b\x70\x6f\x73\x2b\x31\x5d\x2b\x74\x65\x78\x74\x5b\x70\x6f\x73\x2b\x32\x5d\x3d\x3d\x22\x5c\x78\x33\x63\x21\x2d\x2d\x22\x2c\x63\x68\x72\x2b\x6e\x65\x78\x74\x31\x3d\x3d\x22\x2f\x2a\x22\x2c\x63\x68\x72\x2b\x6e\x65\x78\x74\x31\x3d\x3d\x22\x2f\x2f\x22\x2c\x63\x68\x72\x3d\x3d\x22\x23\x22\x5d\x5b\x2d\x2d\x74\x6f\x6b\x65\x6e\x54\x79\x70\x65\x5d\x29\x7b\x7d\x7d\x74\x6f\x6b\x65\x6e\x2b\x3d\x63\x68\x72\x7d\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x65\x74\x28\x65\x6c\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x70\x54\x6f\x4c\x69\x73\x74\x28\x6d\x61\x70\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x4e\x61\x6d\x65\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x22\x6b\x65\x79\x22\x3b\x76\x61\x72\x20\x63\x6f\x6c\x6c\x65\x63\x74\x65\x64\x4b\x65\x79\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x32\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x3a\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4d\x61\x70\x28\x29\x3b\x69\x66\x28\x21\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x6d\x61\x70\x29\x7c\x7c\x21\x6d\x61\x70\x2e\x73\x69\x7a\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4c\x69\x73\x74\x28\x29\x7d\x69\x66\x28\x21\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x6b\x65\x79\x4e\x61\x6d\x65\x73\x29\x29\x7b\x6b\x65\x79\x4e\x61\x6d\x65\x73\x3d\x5b\x6b\x65\x79\x4e\x61\x6d\x65\x73\x5d\x7d\x69\x66\x28\x6b\x65\x79\x4e\x61\x6d\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x31\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x70\x2e\x6d\x65\x72\x67\x65\x28\x63\x6f\x6c\x6c\x65\x63\x74\x65\x64\x4b\x65\x79\x73\x29\x7d\x76\x61\x72\x20\x6c\x69\x73\x74\x3d\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4c\x69\x73\x74\x28\x29\x3b\x76\x61\x72\x20\x6b\x65\x79\x4e\x61\x6d\x65\x3d\x6b\x65\x79\x4e\x61\x6d\x65\x73\x5b\x30\x5d\x3b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x72\x79\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x3d\x28\x30\x2c\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6d\x61\x70\x2e\x65\x6e\x74\x72\x69\x65\x73\x28\x29\x29\x2c\x5f\x73\x74\x65\x70\x3b\x21\x28\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x3d\x28\x5f\x73\x74\x65\x70\x3d\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x6e\x65\x78\x74\x28\x29\x29\x2e\x64\x6f\x6e\x65\x29\x3b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x3d\x74\x72\x75\x65\x29\x7b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3d\x5f\x73\x74\x65\x70\x2e\x76\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x5f\x65\x6e\x74\x72\x79\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x6e\x74\x72\x79\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x65\x6e\x74\x72\x79\x5b\x30\x5d\x2c\x76\x61\x6c\x3d\x5f\x65\x6e\x74\x72\x79\x5b\x31\x5d\x3b\x76\x61\x72\x20\x6e\x65\x78\x74\x4c\x69\x73\x74\x3d\x6d\x61\x70\x54\x6f\x4c\x69\x73\x74\x28\x76\x61\x6c\x2c\x6b\x65\x79\x4e\x61\x6d\x65\x73\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x2c\x63\x6f\x6c\x6c\x65\x63\x74\x65\x64\x4b\x65\x79\x73\x2e\x73\x65\x74\x28\x6b\x65\x79\x4e\x61\x6d\x65\x2c\x6b\x65\x79\x29\x29\x3b\x69\x66\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x6e\x65\x78\x74\x4c\x69\x73\x74\x29\x29\x7b\x6c\x69\x73\x74\x3d\x6c\x69\x73\x74\x2e\x63\x6f\x6e\x63\x61\x74\x28\x6e\x65\x78\x74\x4c\x69\x73\x74\x29\x7d\x65\x6c\x73\x65\x7b\x6c\x69\x73\x74\x3d\x6c\x69\x73\x74\x2e\x70\x75\x73\x68\x28\x6e\x65\x78\x74\x4c\x69\x73\x74\x29\x7d\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x29\x7b\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x74\x72\x75\x65\x3b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x65\x72\x72\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x74\x72\x79\x7b\x69\x66\x28\x21\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x26\x26\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x72\x65\x74\x75\x72\x6e\x29\x7b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x72\x65\x74\x75\x72\x6e\x28\x29\x7d\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x29\x7b\x74\x68\x72\x6f\x77\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x7d\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6c\x69\x73\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x78\x74\x72\x61\x63\x74\x46\x69\x6c\x65\x4e\x61\x6d\x65\x46\x72\x6f\x6d\x43\x6f\x6e\x74\x65\x6e\x74\x44\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x48\x65\x61\x64\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x70\x61\x74\x74\x65\x72\x6e\x73\x3d\x5b\x2f\x66\x69\x6c\x65\x6e\x61\x6d\x65\x5c\x2a\x3d\x5b\x5e\x27\x5d\x2b\x27\x5c\x77\x2a\x27\x22\x28\x5b\x5e\x22\x5d\x2b\x29\x22\x3b\x3f\x2f\x69\x2c\x2f\x66\x69\x6c\x65\x6e\x61\x6d\x65\x5c\x2a\x3d\x5b\x5e\x27\x5d\x2b\x27\x5c\x77\x2a\x27\x28\x5b\x5e\x3b\x5d\x2b\x29\x3b\x3f\x2f\x69\x2c\x2f\x66\x69\x6c\x65\x6e\x61\x6d\x65\x3d\x22\x28\x5b\x5e\x3b\x5d\x2a\x29\x3b\x3f\x22\x2f\x69\x2c\x2f\x66\x69\x6c\x65\x6e\x61\x6d\x65\x3d\x28\x5b\x5e\x3b\x5d\x2a\x29\x3b\x3f\x2f\x69\x5d\x3b\x76\x61\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x70\x61\x74\x74\x65\x72\x6e\x73\x2e\x73\x6f\x6d\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x67\x65\x78\x29\x7b\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x3d\x72\x65\x67\x65\x78\x2e\x65\x78\x65\x63\x28\x76\x61\x6c\x75\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x21\x3d\x3d\x6e\x75\x6c\x6c\x7d\x29\x3b\x69\x66\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x21\x3d\x3d\x6e\x75\x6c\x6c\x26\x26\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x65\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x5b\x31\x5d\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x65\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x73\x63\x61\x6c\x43\x61\x73\x65\x28\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x28\x30\x2c\x5f\x63\x61\x6d\x65\x6c\x43\x61\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x74\x72\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x73\x63\x61\x6c\x43\x61\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x28\x66\x69\x6c\x65\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x73\x63\x61\x6c\x43\x61\x73\x65\x28\x66\x69\x6c\x65\x6e\x61\x6d\x65\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5c\x2e\x5b\x5e\x2e\x2f\x5d\x2a\x24\x2f\x2c\x22\x22\x29\x29\x7d\x76\x61\x72\x20\x70\x72\x6f\x70\x43\x68\x65\x63\x6b\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x6f\x70\x43\x68\x65\x63\x6b\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x6f\x70\x43\x68\x65\x63\x6b\x65\x72\x28\x70\x72\x6f\x70\x73\x2c\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x4c\x69\x73\x74\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x32\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x3a\x5b\x5d\x3b\x76\x61\x72\x20\x69\x67\x6e\x6f\x72\x65\x4c\x69\x73\x74\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x33\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x33\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x33\x5d\x3a\x5b\x5d\x3b\x69\x66\x28\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x72\x6f\x70\x73\x29\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x73\x6f\x6d\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x72\x6f\x70\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x2c\x6e\x61\x6d\x65\x29\x7b\x69\x66\x28\x69\x67\x6e\x6f\x72\x65\x4c\x69\x73\x74\x2e\x69\x6e\x63\x6c\x75\x64\x65\x73\x28\x6e\x61\x6d\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x62\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x5b\x6e\x61\x6d\x65\x5d\x3b\x69\x66\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x49\x74\x65\x72\x61\x62\x6c\x65\x2e\x69\x73\x49\x74\x65\x72\x61\x62\x6c\x65\x28\x61\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x69\x73\x28\x61\x2c\x62\x29\x7d\x69\x66\x28\x28\x74\x79\x70\x65\x6f\x66\x20\x61\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x61\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x28\x74\x79\x70\x65\x6f\x66\x20\x62\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x62\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x21\x3d\x3d\x62\x7d\x29\x7c\x7c\x6f\x62\x6a\x65\x63\x74\x4c\x69\x73\x74\x2e\x73\x6f\x6d\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x70\x4e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x28\x30\x2c\x5f\x65\x71\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x72\x6f\x70\x73\x5b\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2c\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x5b\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x29\x7d\x29\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x69\x6d\x75\x6d\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x69\x6d\x75\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x69\x6d\x75\x6d\x28\x76\x61\x6c\x2c\x6d\x61\x78\x29\x7b\x69\x66\x28\x76\x61\x6c\x3e\x6d\x61\x78\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x6c\x65\x73\x73\x20\x74\x68\x61\x6e\x20\x4d\x61\x78\x69\x6d\x75\x6d\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x69\x6d\x75\x6d\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x69\x6d\x75\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x69\x6d\x75\x6d\x28\x76\x61\x6c\x2c\x6d\x69\x6e\x29\x7b\x69\x66\x28\x76\x61\x6c\x3c\x6d\x69\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x67\x72\x65\x61\x74\x65\x72\x20\x74\x68\x61\x6e\x20\x4d\x69\x6e\x69\x6d\x75\x6d\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4e\x75\x6d\x62\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4e\x75\x6d\x62\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4e\x75\x6d\x62\x65\x72\x28\x76\x61\x6c\x29\x7b\x69\x66\x28\x21\x2f\x5e\x2d\x3f\x5c\x64\x2b\x28\x5c\x2e\x3f\x5c\x64\x2b\x29\x3f\x24\x2f\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x6e\x75\x6d\x62\x65\x72\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x49\x6e\x74\x65\x67\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x49\x6e\x74\x65\x67\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x49\x6e\x74\x65\x67\x65\x72\x28\x76\x61\x6c\x29\x7b\x69\x66\x28\x21\x2f\x5e\x2d\x3f\x5c\x64\x2b\x24\x2f\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x6e\x20\x69\x6e\x74\x65\x67\x65\x72\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x46\x69\x6c\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x46\x69\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x46\x69\x6c\x65\x28\x76\x61\x6c\x29\x7b\x69\x66\x28\x76\x61\x6c\x26\x26\x21\x28\x76\x61\x6c\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x46\x69\x6c\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x66\x69\x6c\x65\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x6f\x6f\x6c\x65\x61\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x6f\x6f\x6c\x65\x61\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x6f\x6f\x6c\x65\x61\x6e\x28\x76\x61\x6c\x29\x7b\x69\x66\x28\x21\x28\x76\x61\x6c\x3d\x3d\x3d\x22\x74\x72\x75\x65\x22\x7c\x7c\x76\x61\x6c\x3d\x3d\x3d\x22\x66\x61\x6c\x73\x65\x22\x7c\x7c\x76\x61\x6c\x3d\x3d\x3d\x74\x72\x75\x65\x7c\x7c\x76\x61\x6c\x3d\x3d\x3d\x66\x61\x6c\x73\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x62\x6f\x6f\x6c\x65\x61\x6e\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x53\x74\x72\x69\x6e\x67\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x53\x74\x72\x69\x6e\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x29\x7b\x69\x66\x28\x76\x61\x6c\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x73\x74\x72\x69\x6e\x67\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x44\x61\x74\x65\x54\x69\x6d\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x44\x61\x74\x65\x54\x69\x6d\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x44\x61\x74\x65\x54\x69\x6d\x65\x28\x76\x61\x6c\x29\x7b\x69\x66\x28\x69\x73\x4e\x61\x4e\x28\x44\x61\x74\x65\x2e\x70\x61\x72\x73\x65\x28\x76\x61\x6c\x29\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x44\x61\x74\x65\x54\x69\x6d\x65\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x47\x75\x69\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x47\x75\x69\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x47\x75\x69\x64\x28\x76\x61\x6c\x29\x7b\x76\x61\x6c\x3d\x76\x61\x6c\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x3b\x69\x66\x28\x21\x2f\x5e\x5b\x7b\x28\x5d\x3f\x5b\x30\x2d\x39\x61\x2d\x66\x5d\x7b\x38\x7d\x2d\x5b\x30\x2d\x39\x61\x2d\x66\x5d\x7b\x34\x7d\x2d\x5b\x30\x2d\x39\x61\x2d\x66\x5d\x7b\x34\x7d\x2d\x5b\x30\x2d\x39\x61\x2d\x66\x5d\x7b\x34\x7d\x2d\x5b\x30\x2d\x39\x61\x2d\x66\x5d\x7b\x31\x32\x7d\x5b\x29\x7d\x5d\x3f\x24\x2f\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x47\x75\x69\x64\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x28\x76\x61\x6c\x2c\x6d\x61\x78\x29\x7b\x69\x66\x28\x76\x61\x6c\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x6d\x61\x78\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x6c\x65\x73\x73\x20\x74\x68\x61\x6e\x20\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x28\x76\x61\x6c\x2c\x6d\x69\x6e\x29\x7b\x69\x66\x28\x76\x61\x6c\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x6d\x69\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x67\x72\x65\x61\x74\x65\x72\x20\x74\x68\x61\x6e\x20\x4d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x22\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x74\x74\x65\x72\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x74\x74\x65\x72\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x74\x74\x65\x72\x6e\x28\x76\x61\x6c\x2c\x72\x78\x50\x61\x74\x74\x65\x72\x6e\x29\x7b\x76\x61\x72\x20\x70\x61\x74\x74\x3d\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x72\x78\x50\x61\x74\x74\x65\x72\x6e\x29\x3b\x69\x66\x28\x21\x70\x61\x74\x74\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x56\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x66\x6f\x6c\x6c\x6f\x77\x20\x70\x61\x74\x74\x65\x72\x6e\x20\x22\x2b\x72\x78\x50\x61\x74\x74\x65\x72\x6e\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x28\x70\x61\x72\x61\x6d\x2c\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x32\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x32\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x3a\x7b\x7d\x2c\x5f\x72\x65\x66\x32\x24\x69\x73\x4f\x41\x53\x3d\x5f\x72\x65\x66\x32\x2e\x69\x73\x4f\x41\x53\x33\x2c\x69\x73\x4f\x41\x53\x33\x3d\x5f\x72\x65\x66\x32\x24\x69\x73\x4f\x41\x53\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x66\x61\x6c\x73\x65\x3a\x5f\x72\x65\x66\x32\x24\x69\x73\x4f\x41\x53\x2c\x5f\x72\x65\x66\x32\x24\x62\x79\x70\x61\x73\x73\x52\x65\x71\x75\x69\x72\x65\x64\x43\x3d\x5f\x72\x65\x66\x32\x2e\x62\x79\x70\x61\x73\x73\x52\x65\x71\x75\x69\x72\x65\x64\x43\x68\x65\x63\x6b\x2c\x62\x79\x70\x61\x73\x73\x52\x65\x71\x75\x69\x72\x65\x64\x43\x68\x65\x63\x6b\x3d\x5f\x72\x65\x66\x32\x24\x62\x79\x70\x61\x73\x73\x52\x65\x71\x75\x69\x72\x65\x64\x43\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x66\x61\x6c\x73\x65\x3a\x5f\x72\x65\x66\x32\x24\x62\x79\x70\x61\x73\x73\x52\x65\x71\x75\x69\x72\x65\x64\x43\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x73\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x69\x72\x65\x64\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x3d\x69\x73\x4f\x41\x53\x33\x3f\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x3a\x70\x61\x72\x61\x6d\x3b\x69\x66\x28\x21\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x29\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x3b\x76\x61\x72\x20\x6d\x61\x78\x69\x6d\x75\x6d\x3d\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x2e\x67\x65\x74\x28\x22\x6d\x61\x78\x69\x6d\x75\x6d\x22\x29\x3b\x76\x61\x72\x20\x6d\x69\x6e\x69\x6d\x75\x6d\x3d\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x2e\x67\x65\x74\x28\x22\x6d\x69\x6e\x69\x6d\x75\x6d\x22\x29\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3b\x76\x61\x72\x20\x66\x6f\x72\x6d\x61\x74\x3d\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x2e\x67\x65\x74\x28\x22\x66\x6f\x72\x6d\x61\x74\x22\x29\x3b\x76\x61\x72\x20\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x3d\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x2e\x67\x65\x74\x28\x22\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x22\x29\x3b\x76\x61\x72\x20\x6d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x3d\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x2e\x67\x65\x74\x28\x22\x6d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x22\x29\x3b\x76\x61\x72\x20\x70\x61\x74\x74\x65\x72\x6e\x3d\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x74\x65\x72\x6e\x22\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x26\x26\x28\x72\x65\x71\x75\x69\x72\x65\x64\x7c\x7c\x76\x61\x6c\x75\x65\x29\x29\x7b\x76\x61\x72\x20\x73\x74\x72\x69\x6e\x67\x43\x68\x65\x63\x6b\x3d\x74\x79\x70\x65\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x26\x26\x76\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x43\x68\x65\x63\x6b\x3d\x74\x79\x70\x65\x3d\x3d\x3d\x22\x61\x72\x72\x61\x79\x22\x26\x26\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x76\x61\x6c\x75\x65\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x6c\x69\x73\x74\x43\x68\x65\x63\x6b\x3d\x74\x79\x70\x65\x3d\x3d\x3d\x22\x61\x72\x72\x61\x79\x22\x26\x26\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x76\x61\x6c\x75\x65\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3b\x76\x61\x72\x20\x66\x69\x6c\x65\x43\x68\x65\x63\x6b\x3d\x74\x79\x70\x65\x3d\x3d\x3d\x22\x66\x69\x6c\x65\x22\x26\x26\x76\x61\x6c\x75\x65\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x46\x69\x6c\x65\x3b\x76\x61\x72\x20\x62\x6f\x6f\x6c\x65\x61\x6e\x43\x68\x65\x63\x6b\x3d\x74\x79\x70\x65\x3d\x3d\x3d\x22\x62\x6f\x6f\x6c\x65\x61\x6e\x22\x26\x26\x28\x76\x61\x6c\x75\x65\x7c\x7c\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x66\x61\x6c\x73\x65\x29\x3b\x76\x61\x72\x20\x6e\x75\x6d\x62\x65\x72\x43\x68\x65\x63\x6b\x3d\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x26\x26\x28\x76\x61\x6c\x75\x65\x7c\x7c\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x30\x29\x3b\x76\x61\x72\x20\x69\x6e\x74\x65\x67\x65\x72\x43\x68\x65\x63\x6b\x3d\x74\x79\x70\x65\x3d\x3d\x3d\x22\x69\x6e\x74\x65\x67\x65\x72\x22\x26\x26\x28\x76\x61\x6c\x75\x65\x7c\x7c\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x30\x29\x3b\x76\x61\x72\x20\x6f\x61\x73\x33\x4f\x62\x6a\x65\x63\x74\x43\x68\x65\x63\x6b\x3d\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x66\x61\x6c\x73\x65\x7c\x7c\x69\x73\x4f\x41\x53\x33\x26\x26\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x69\x66\x28\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x76\x61\x6c\x75\x65\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x6f\x61\x73\x33\x4f\x62\x6a\x65\x63\x74\x43\x68\x65\x63\x6b\x3d\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x74\x72\x79\x7b\x4a\x53\x4f\x4e\x2e\x70\x61\x72\x73\x65\x28\x76\x61\x6c\x75\x65\x29\x3b\x6f\x61\x73\x33\x4f\x62\x6a\x65\x63\x74\x43\x68\x65\x63\x6b\x3d\x74\x72\x75\x65\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x22\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x20\x73\x74\x72\x69\x6e\x67\x20\x76\x61\x6c\x75\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x76\x61\x6c\x69\x64\x20\x4a\x53\x4f\x4e\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x7d\x7d\x7d\x76\x61\x72\x20\x61\x6c\x6c\x43\x68\x65\x63\x6b\x73\x3d\x5b\x73\x74\x72\x69\x6e\x67\x43\x68\x65\x63\x6b\x2c\x61\x72\x72\x61\x79\x43\x68\x65\x63\x6b\x2c\x6c\x69\x73\x74\x43\x68\x65\x63\x6b\x2c\x66\x69\x6c\x65\x43\x68\x65\x63\x6b\x2c\x62\x6f\x6f\x6c\x65\x61\x6e\x43\x68\x65\x63\x6b\x2c\x6e\x75\x6d\x62\x65\x72\x43\x68\x65\x63\x6b\x2c\x69\x6e\x74\x65\x67\x65\x72\x43\x68\x65\x63\x6b\x2c\x6f\x61\x73\x33\x4f\x62\x6a\x65\x63\x74\x43\x68\x65\x63\x6b\x5d\x3b\x76\x61\x72\x20\x70\x61\x73\x73\x65\x64\x41\x6e\x79\x43\x68\x65\x63\x6b\x3d\x61\x6c\x6c\x43\x68\x65\x63\x6b\x73\x2e\x73\x6f\x6d\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x76\x7d\x29\x3b\x69\x66\x28\x72\x65\x71\x75\x69\x72\x65\x64\x26\x26\x21\x70\x61\x73\x73\x65\x64\x41\x6e\x79\x43\x68\x65\x63\x6b\x26\x26\x21\x62\x79\x70\x61\x73\x73\x52\x65\x71\x75\x69\x72\x65\x64\x43\x68\x65\x63\x6b\x29\x7b\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x22\x52\x65\x71\x75\x69\x72\x65\x64\x20\x66\x69\x65\x6c\x64\x20\x69\x73\x20\x6e\x6f\x74\x20\x70\x72\x6f\x76\x69\x64\x65\x64\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x7d\x69\x66\x28\x70\x61\x74\x74\x65\x72\x6e\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x74\x74\x65\x72\x6e\x28\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x74\x65\x72\x6e\x29\x3b\x69\x66\x28\x65\x72\x72\x29\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x65\x72\x72\x29\x7d\x69\x66\x28\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x7c\x7c\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x28\x76\x61\x6c\x75\x65\x2c\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x29\x3b\x69\x66\x28\x5f\x65\x72\x72\x29\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x5f\x65\x72\x72\x29\x7d\x69\x66\x28\x6d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x32\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x28\x76\x61\x6c\x75\x65\x2c\x6d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x29\x3b\x69\x66\x28\x5f\x65\x72\x72\x32\x29\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x5f\x65\x72\x72\x32\x29\x7d\x69\x66\x28\x6d\x61\x78\x69\x6d\x75\x6d\x7c\x7c\x6d\x61\x78\x69\x6d\x75\x6d\x3d\x3d\x3d\x30\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x33\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x61\x78\x69\x6d\x75\x6d\x28\x76\x61\x6c\x75\x65\x2c\x6d\x61\x78\x69\x6d\x75\x6d\x29\x3b\x69\x66\x28\x5f\x65\x72\x72\x33\x29\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x5f\x65\x72\x72\x33\x29\x7d\x69\x66\x28\x6d\x69\x6e\x69\x6d\x75\x6d\x7c\x7c\x6d\x69\x6e\x69\x6d\x75\x6d\x3d\x3d\x3d\x30\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x34\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x4d\x69\x6e\x69\x6d\x75\x6d\x28\x76\x61\x6c\x75\x65\x2c\x6d\x69\x6e\x69\x6d\x75\x6d\x29\x3b\x69\x66\x28\x5f\x65\x72\x72\x34\x29\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x5f\x65\x72\x72\x34\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x35\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x66\x6f\x72\x6d\x61\x74\x3d\x3d\x3d\x22\x64\x61\x74\x65\x2d\x74\x69\x6d\x65\x22\x29\x7b\x5f\x65\x72\x72\x35\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x44\x61\x74\x65\x54\x69\x6d\x65\x28\x76\x61\x6c\x75\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x66\x6f\x72\x6d\x61\x74\x3d\x3d\x3d\x22\x75\x75\x69\x64\x22\x29\x7b\x5f\x65\x72\x72\x35\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x47\x75\x69\x64\x28\x76\x61\x6c\x75\x65\x29\x7d\x65\x6c\x73\x65\x7b\x5f\x65\x72\x72\x35\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x7d\x69\x66\x28\x21\x5f\x65\x72\x72\x35\x29\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x3b\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x5f\x65\x72\x72\x35\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x62\x6f\x6f\x6c\x65\x61\x6e\x22\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x36\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x6f\x6f\x6c\x65\x61\x6e\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x21\x5f\x65\x72\x72\x36\x29\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x3b\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x5f\x65\x72\x72\x36\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x37\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x4e\x75\x6d\x62\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x21\x5f\x65\x72\x72\x37\x29\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x3b\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x5f\x65\x72\x72\x37\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x69\x6e\x74\x65\x67\x65\x72\x22\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x38\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x49\x6e\x74\x65\x67\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x21\x5f\x65\x72\x72\x38\x29\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x3b\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x5f\x65\x72\x72\x38\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x61\x72\x72\x61\x79\x22\x29\x7b\x76\x61\x72\x20\x69\x74\x65\x6d\x54\x79\x70\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x21\x6c\x69\x73\x74\x43\x68\x65\x63\x6b\x7c\x7c\x21\x76\x61\x6c\x75\x65\x2e\x63\x6f\x75\x6e\x74\x28\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x7d\x69\x74\x65\x6d\x54\x79\x70\x65\x3d\x70\x61\x72\x61\x6d\x44\x65\x74\x61\x69\x6c\x73\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x69\x74\x65\x6d\x73\x22\x2c\x22\x74\x79\x70\x65\x22\x5d\x29\x3b\x76\x61\x6c\x75\x65\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x6d\x2c\x69\x6e\x64\x65\x78\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x69\x74\x65\x6d\x54\x79\x70\x65\x3d\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x65\x72\x72\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x4e\x75\x6d\x62\x65\x72\x28\x69\x74\x65\x6d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x74\x65\x6d\x54\x79\x70\x65\x3d\x3d\x3d\x22\x69\x6e\x74\x65\x67\x65\x72\x22\x29\x7b\x65\x72\x72\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x49\x6e\x74\x65\x67\x65\x72\x28\x69\x74\x65\x6d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x74\x65\x6d\x54\x79\x70\x65\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x65\x72\x72\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x53\x74\x72\x69\x6e\x67\x28\x69\x74\x65\x6d\x29\x7d\x69\x66\x28\x65\x72\x72\x29\x7b\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x7b\x69\x6e\x64\x65\x78\x3a\x69\x6e\x64\x65\x78\x2c\x65\x72\x72\x6f\x72\x3a\x65\x72\x72\x7d\x29\x7d\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x66\x69\x6c\x65\x22\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x39\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x46\x69\x6c\x65\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x21\x5f\x65\x72\x72\x39\x29\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x3b\x65\x72\x72\x6f\x72\x73\x2e\x70\x75\x73\x68\x28\x5f\x65\x72\x72\x39\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x7d\x3b\x76\x61\x72\x20\x67\x65\x74\x53\x61\x6d\x70\x6c\x65\x53\x63\x68\x65\x6d\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x53\x61\x6d\x70\x6c\x65\x53\x63\x68\x65\x6d\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x53\x61\x6d\x70\x6c\x65\x53\x63\x68\x65\x6d\x61\x28\x73\x63\x68\x65\x6d\x61\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x22\x22\x3b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x32\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x3a\x7b\x7d\x3b\x69\x66\x28\x2f\x78\x6d\x6c\x2f\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x29\x7b\x69\x66\x28\x21\x73\x63\x68\x65\x6d\x61\x2e\x78\x6d\x6c\x7c\x7c\x21\x73\x63\x68\x65\x6d\x61\x2e\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x29\x7b\x73\x63\x68\x65\x6d\x61\x2e\x78\x6d\x6c\x3d\x73\x63\x68\x65\x6d\x61\x2e\x78\x6d\x6c\x7c\x7c\x7b\x7d\x3b\x69\x66\x28\x73\x63\x68\x65\x6d\x61\x2e\x24\x24\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x6d\x61\x74\x63\x68\x3d\x73\x63\x68\x65\x6d\x61\x2e\x24\x24\x72\x65\x66\x2e\x6d\x61\x74\x63\x68\x28\x2f\x5c\x53\x2a\x5c\x2f\x28\x5c\x53\x2b\x29\x24\x2f\x29\x3b\x73\x63\x68\x65\x6d\x61\x2e\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x3d\x6d\x61\x74\x63\x68\x5b\x31\x5d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x63\x68\x65\x6d\x61\x2e\x74\x79\x70\x65\x7c\x7c\x73\x63\x68\x65\x6d\x61\x2e\x69\x74\x65\x6d\x73\x7c\x7c\x73\x63\x68\x65\x6d\x61\x2e\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x7c\x7c\x73\x63\x68\x65\x6d\x61\x2e\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x27\x3c\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x30\x22\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x22\x55\x54\x46\x2d\x38\x22\x3f\x3e\x5c\x6e\x5c\x78\x33\x63\x21\x2d\x2d\x20\x58\x4d\x4c\x20\x65\x78\x61\x6d\x70\x6c\x65\x20\x63\x61\x6e\x6e\x6f\x74\x20\x62\x65\x20\x67\x65\x6e\x65\x72\x61\x74\x65\x64\x3b\x20\x72\x6f\x6f\x74\x20\x65\x6c\x65\x6d\x65\x6e\x74\x20\x6e\x61\x6d\x65\x20\x69\x73\x20\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x20\x2d\x2d\x5c\x78\x33\x65\x27\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x7d\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x66\x6e\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x43\x72\x65\x61\x74\x65\x58\x4d\x4c\x45\x78\x61\x6d\x70\x6c\x65\x29\x28\x73\x63\x68\x65\x6d\x61\x2c\x63\x6f\x6e\x66\x69\x67\x29\x7d\x76\x61\x72\x20\x72\x65\x73\x3d\x28\x30\x2c\x5f\x66\x6e\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x53\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x29\x28\x73\x63\x68\x65\x6d\x61\x2c\x63\x6f\x6e\x66\x69\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x74\x79\x70\x65\x6f\x66\x20\x72\x65\x73\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x73\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x3f\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x73\x2c\x6e\x75\x6c\x6c\x2c\x32\x29\x3a\x72\x65\x73\x7d\x3b\x76\x61\x72\x20\x70\x61\x72\x73\x65\x53\x65\x61\x72\x63\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x73\x65\x53\x65\x61\x72\x63\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x73\x65\x53\x65\x61\x72\x63\x68\x28\x29\x7b\x76\x61\x72\x20\x6d\x61\x70\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x73\x65\x61\x72\x63\x68\x3d\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x2e\x73\x65\x61\x72\x63\x68\x3b\x69\x66\x28\x21\x73\x65\x61\x72\x63\x68\x29\x72\x65\x74\x75\x72\x6e\x7b\x7d\x3b\x69\x66\x28\x73\x65\x61\x72\x63\x68\x21\x3d\x22\x22\x29\x7b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x73\x3d\x73\x65\x61\x72\x63\x68\x2e\x73\x75\x62\x73\x74\x72\x28\x31\x29\x2e\x73\x70\x6c\x69\x74\x28\x22\x26\x22\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x20\x69\x6e\x20\x70\x61\x72\x61\x6d\x73\x29\x7b\x69\x66\x28\x21\x70\x61\x72\x61\x6d\x73\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x69\x29\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x3d\x70\x61\x72\x61\x6d\x73\x5b\x69\x5d\x2e\x73\x70\x6c\x69\x74\x28\x22\x3d\x22\x29\x3b\x6d\x61\x70\x5b\x64\x65\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x69\x5b\x30\x5d\x29\x5d\x3d\x69\x5b\x31\x5d\x26\x26\x64\x65\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x69\x5b\x31\x5d\x29\x7c\x7c\x22\x22\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x70\x7d\x3b\x76\x61\x72\x20\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x53\x65\x61\x72\x63\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x53\x65\x61\x72\x63\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x53\x65\x61\x72\x63\x68\x28\x73\x65\x61\x72\x63\x68\x4d\x61\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x65\x61\x72\x63\x68\x4d\x61\x70\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x6b\x29\x2b\x22\x3d\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x73\x65\x61\x72\x63\x68\x4d\x61\x70\x5b\x6b\x5d\x29\x7d\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x26\x22\x29\x7d\x3b\x76\x61\x72\x20\x62\x74\x6f\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x62\x74\x6f\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x74\x6f\x61\x28\x73\x74\x72\x29\x7b\x76\x61\x72\x20\x62\x75\x66\x66\x65\x72\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x73\x74\x72\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x42\x75\x66\x66\x65\x72\x29\x7b\x62\x75\x66\x66\x65\x72\x3d\x73\x74\x72\x7d\x65\x6c\x73\x65\x7b\x62\x75\x66\x66\x65\x72\x3d\x6e\x65\x77\x20\x42\x75\x66\x66\x65\x72\x28\x73\x74\x72\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x2c\x22\x75\x74\x66\x2d\x38\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x62\x75\x66\x66\x65\x72\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x22\x62\x61\x73\x65\x36\x34\x22\x29\x7d\x3b\x76\x61\x72\x20\x73\x6f\x72\x74\x65\x72\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x6f\x72\x74\x65\x72\x73\x3d\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x53\x6f\x72\x74\x65\x72\x3a\x7b\x61\x6c\x70\x68\x61\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x6c\x70\x68\x61\x28\x61\x2c\x62\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x2e\x6c\x6f\x63\x61\x6c\x65\x43\x6f\x6d\x70\x61\x72\x65\x28\x62\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x29\x7d\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x65\x74\x68\x6f\x64\x28\x61\x2c\x62\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x2e\x67\x65\x74\x28\x22\x6d\x65\x74\x68\x6f\x64\x22\x29\x2e\x6c\x6f\x63\x61\x6c\x65\x43\x6f\x6d\x70\x61\x72\x65\x28\x62\x2e\x67\x65\x74\x28\x22\x6d\x65\x74\x68\x6f\x64\x22\x29\x29\x7d\x7d\x2c\x74\x61\x67\x73\x53\x6f\x72\x74\x65\x72\x3a\x7b\x61\x6c\x70\x68\x61\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x6c\x70\x68\x61\x28\x61\x2c\x62\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x2e\x6c\x6f\x63\x61\x6c\x65\x43\x6f\x6d\x70\x61\x72\x65\x28\x62\x29\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x62\x75\x69\x6c\x64\x46\x6f\x72\x6d\x44\x61\x74\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x62\x75\x69\x6c\x64\x46\x6f\x72\x6d\x44\x61\x74\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x75\x69\x6c\x64\x46\x6f\x72\x6d\x44\x61\x74\x61\x28\x64\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x66\x6f\x72\x6d\x41\x72\x72\x3d\x5b\x5d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6e\x61\x6d\x65\x20\x69\x6e\x20\x64\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x3d\x64\x61\x74\x61\x5b\x6e\x61\x6d\x65\x5d\x3b\x69\x66\x28\x76\x61\x6c\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x76\x61\x6c\x21\x3d\x3d\x22\x22\x29\x7b\x66\x6f\x72\x6d\x41\x72\x72\x2e\x70\x75\x73\x68\x28\x5b\x6e\x61\x6d\x65\x2c\x22\x3d\x22\x2c\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x76\x61\x6c\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x25\x32\x30\x2f\x67\x2c\x22\x2b\x22\x29\x5d\x2e\x6a\x6f\x69\x6e\x28\x22\x22\x29\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x6f\x72\x6d\x41\x72\x72\x2e\x6a\x6f\x69\x6e\x28\x22\x26\x22\x29\x7d\x3b\x76\x61\x72\x20\x73\x68\x61\x6c\x6c\x6f\x77\x45\x71\x75\x61\x6c\x4b\x65\x79\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x61\x6c\x6c\x6f\x77\x45\x71\x75\x61\x6c\x4b\x65\x79\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x68\x61\x6c\x6c\x6f\x77\x45\x71\x75\x61\x6c\x4b\x65\x79\x73\x28\x61\x2c\x62\x2c\x6b\x65\x79\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x28\x30\x2c\x5f\x66\x69\x6e\x64\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6b\x65\x79\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x65\x71\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x61\x5b\x6b\x65\x79\x5d\x2c\x62\x5b\x6b\x65\x79\x5d\x29\x7d\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x28\x75\x72\x6c\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x75\x72\x6c\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x7c\x7c\x75\x72\x6c\x3d\x3d\x3d\x22\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x22\x7d\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x75\x72\x6c\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x41\x63\x63\x65\x70\x74\x43\x6f\x6e\x74\x72\x6f\x6c\x6c\x69\x6e\x67\x52\x65\x73\x70\x6f\x6e\x73\x65\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x29\x7b\x69\x66\x28\x21\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x2e\x69\x73\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x69\x66\x28\x21\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x73\x69\x7a\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x76\x61\x72\x20\x73\x75\x69\x74\x61\x62\x6c\x65\x32\x78\x78\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x66\x69\x6e\x64\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x2c\x6b\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6b\x2e\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x28\x22\x32\x22\x29\x26\x26\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x73\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x29\x7c\x7c\x7b\x7d\x29\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x7d\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x61\x75\x6c\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x67\x65\x74\x28\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x29\x7c\x7c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x28\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x61\x75\x6c\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x73\x3d\x28\x64\x65\x66\x61\x75\x6c\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x29\x7c\x7c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x28\x29\x29\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x76\x61\x72\x20\x73\x75\x69\x74\x61\x62\x6c\x65\x44\x65\x66\x61\x75\x6c\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x64\x65\x66\x61\x75\x6c\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x64\x65\x66\x61\x75\x6c\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3a\x6e\x75\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x75\x69\x74\x61\x62\x6c\x65\x32\x78\x78\x52\x65\x73\x70\x6f\x6e\x73\x65\x7c\x7c\x73\x75\x69\x74\x61\x62\x6c\x65\x44\x65\x66\x61\x75\x6c\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x7d\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x72\x65\x61\x74\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x28\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x73\x74\x72\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x7c\x7c\x73\x74\x72\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x53\x74\x72\x69\x6e\x67\x3f\x73\x74\x72\x2e\x74\x72\x69\x6d\x28\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5c\x73\x2f\x67\x2c\x22\x25\x32\x30\x22\x29\x3a\x22\x22\x7d\x3b\x76\x61\x72\x20\x65\x73\x63\x61\x70\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x73\x63\x61\x70\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x73\x63\x61\x70\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x28\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x63\x73\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x63\x72\x65\x61\x74\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x28\x73\x74\x72\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x25\x32\x30\x2f\x67\x2c\x22\x5f\x22\x29\x29\x7d\x3b\x76\x61\x72\x20\x67\x65\x74\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x28\x64\x65\x66\x4f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x65\x66\x4f\x62\x6a\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x2c\x6b\x29\x7b\x72\x65\x74\x75\x72\x6e\x2f\x5e\x78\x2d\x2f\x2e\x74\x65\x73\x74\x28\x6b\x29\x7d\x29\x7d\x3b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x28\x64\x65\x66\x4f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x65\x66\x4f\x62\x6a\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x2c\x6b\x29\x7b\x72\x65\x74\x75\x72\x6e\x2f\x5e\x70\x61\x74\x74\x65\x72\x6e\x7c\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x7c\x6d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x7c\x6d\x61\x78\x69\x6d\x75\x6d\x7c\x6d\x69\x6e\x69\x6d\x75\x6d\x2f\x2e\x74\x65\x73\x74\x28\x6b\x29\x7d\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x65\x70\x6c\x79\x53\x74\x72\x69\x70\x4b\x65\x79\x28\x69\x6e\x70\x75\x74\x2c\x6b\x65\x79\x54\x6f\x53\x74\x72\x69\x70\x29\x7b\x76\x61\x72\x20\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x32\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x3b\x69\x66\x28\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x6e\x70\x75\x74\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x69\x6e\x70\x75\x74\x29\x29\x21\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x7c\x7c\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x69\x6e\x70\x75\x74\x29\x7c\x7c\x69\x6e\x70\x75\x74\x3d\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x21\x6b\x65\x79\x54\x6f\x53\x74\x72\x69\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x70\x75\x74\x7d\x76\x61\x72\x20\x6f\x62\x6a\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x69\x6e\x70\x75\x74\x29\x3b\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x62\x6a\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x29\x7b\x69\x66\x28\x6b\x3d\x3d\x3d\x6b\x65\x79\x54\x6f\x53\x74\x72\x69\x70\x26\x26\x70\x72\x65\x64\x69\x63\x61\x74\x65\x28\x6f\x62\x6a\x5b\x6b\x5d\x2c\x6b\x29\x29\x7b\x64\x65\x6c\x65\x74\x65\x20\x6f\x62\x6a\x5b\x6b\x5d\x3b\x72\x65\x74\x75\x72\x6e\x7d\x6f\x62\x6a\x5b\x6b\x5d\x3d\x64\x65\x65\x70\x6c\x79\x53\x74\x72\x69\x70\x4b\x65\x79\x28\x6f\x62\x6a\x5b\x6b\x5d\x2c\x6b\x65\x79\x54\x6f\x53\x74\x72\x69\x70\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x28\x74\x68\x69\x6e\x67\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x74\x68\x69\x6e\x67\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x6e\x67\x7d\x69\x66\x28\x74\x68\x69\x6e\x67\x26\x26\x74\x68\x69\x6e\x67\x2e\x74\x6f\x4a\x53\x29\x7b\x74\x68\x69\x6e\x67\x3d\x74\x68\x69\x6e\x67\x2e\x74\x6f\x4a\x53\x28\x29\x7d\x69\x66\x28\x28\x74\x79\x70\x65\x6f\x66\x20\x74\x68\x69\x6e\x67\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x6e\x67\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x74\x68\x69\x6e\x67\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x6e\x67\x2c\x6e\x75\x6c\x6c\x2c\x32\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x53\x74\x72\x69\x6e\x67\x28\x74\x68\x69\x6e\x67\x29\x7d\x7d\x69\x66\x28\x74\x68\x69\x6e\x67\x3d\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x74\x68\x69\x6e\x67\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x22\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x6e\x67\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x75\x6d\x62\x65\x72\x54\x6f\x53\x74\x72\x69\x6e\x67\x28\x74\x68\x69\x6e\x67\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x74\x68\x69\x6e\x67\x3d\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x6e\x67\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x6e\x67\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x61\x6d\x54\x6f\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x28\x70\x61\x72\x61\x6d\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x33\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x7b\x7d\x2c\x5f\x72\x65\x66\x33\x24\x72\x65\x74\x75\x72\x6e\x41\x6c\x6c\x3d\x5f\x72\x65\x66\x33\x2e\x72\x65\x74\x75\x72\x6e\x41\x6c\x6c\x2c\x72\x65\x74\x75\x72\x6e\x41\x6c\x6c\x3d\x5f\x72\x65\x66\x33\x24\x72\x65\x74\x75\x72\x6e\x41\x6c\x6c\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x66\x61\x6c\x73\x65\x3a\x5f\x72\x65\x66\x33\x24\x72\x65\x74\x75\x72\x6e\x41\x6c\x6c\x2c\x5f\x72\x65\x66\x33\x24\x61\x6c\x6c\x6f\x77\x48\x61\x73\x68\x65\x73\x3d\x5f\x72\x65\x66\x33\x2e\x61\x6c\x6c\x6f\x77\x48\x61\x73\x68\x65\x73\x2c\x61\x6c\x6c\x6f\x77\x48\x61\x73\x68\x65\x73\x3d\x5f\x72\x65\x66\x33\x24\x61\x6c\x6c\x6f\x77\x48\x61\x73\x68\x65\x73\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x74\x72\x75\x65\x3a\x5f\x72\x65\x66\x33\x24\x61\x6c\x6c\x6f\x77\x48\x61\x73\x68\x65\x73\x3b\x69\x66\x28\x21\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x70\x61\x72\x61\x6d\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x70\x61\x72\x61\x6d\x54\x6f\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x3a\x20\x72\x65\x63\x65\x69\x76\x65\x64\x20\x61\x20\x6e\x6f\x6e\x2d\x49\x6d\x2e\x4d\x61\x70\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x20\x61\x73\x20\x69\x6e\x70\x75\x74\x22\x29\x7d\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x49\x6e\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x3b\x76\x61\x72\x20\x67\x65\x6e\x65\x72\x61\x74\x65\x64\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x73\x3d\x5b\x5d\x3b\x69\x66\x28\x70\x61\x72\x61\x6d\x26\x26\x70\x61\x72\x61\x6d\x2e\x68\x61\x73\x68\x43\x6f\x64\x65\x26\x26\x70\x61\x72\x61\x6d\x49\x6e\x26\x26\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x26\x26\x61\x6c\x6c\x6f\x77\x48\x61\x73\x68\x65\x73\x29\x7b\x67\x65\x6e\x65\x72\x61\x74\x65\x64\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x73\x2e\x70\x75\x73\x68\x28\x70\x61\x72\x61\x6d\x49\x6e\x2b\x22\x2e\x22\x2b\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2b\x22\x2e\x68\x61\x73\x68\x2d\x22\x2b\x70\x61\x72\x61\x6d\x2e\x68\x61\x73\x68\x43\x6f\x64\x65\x28\x29\x29\x7d\x69\x66\x28\x70\x61\x72\x61\x6d\x49\x6e\x26\x26\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x29\x7b\x67\x65\x6e\x65\x72\x61\x74\x65\x64\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x73\x2e\x70\x75\x73\x68\x28\x70\x61\x72\x61\x6d\x49\x6e\x2b\x22\x2e\x22\x2b\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x29\x7d\x67\x65\x6e\x65\x72\x61\x74\x65\x64\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x73\x2e\x70\x75\x73\x68\x28\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x74\x75\x72\x6e\x41\x6c\x6c\x3f\x67\x65\x6e\x65\x72\x61\x74\x65\x64\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x73\x3a\x67\x65\x6e\x65\x72\x61\x74\x65\x64\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x73\x5b\x30\x5d\x7c\x7c\x22\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x61\x6d\x54\x6f\x56\x61\x6c\x75\x65\x28\x70\x61\x72\x61\x6d\x2c\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x73\x29\x7b\x76\x61\x72\x20\x61\x6c\x6c\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x73\x3d\x70\x61\x72\x61\x6d\x54\x6f\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x28\x70\x61\x72\x61\x6d\x2c\x7b\x72\x65\x74\x75\x72\x6e\x41\x6c\x6c\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x73\x3d\x61\x6c\x6c\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x73\x5b\x69\x64\x5d\x7d\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x73\x5b\x30\x5d\x7d\x7d\x29\x2e\x63\x61\x6c\x6c\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x36\x29\x2e\x42\x75\x66\x66\x65\x72\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x61\x63\x74\x2d\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2d\x70\x72\x6f\x70\x74\x79\x70\x65\x73\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x76\x65\x72\x73\x69\x6f\x6e\x3a\x22\x32\x2e\x35\x2e\x35\x22\x7d\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x5f\x5f\x65\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x5f\x5f\x65\x3d\x63\x6f\x72\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x36\x29\x3b\x76\x61\x72\x20\x54\x59\x50\x45\x5f\x43\x4f\x4e\x53\x54\x52\x55\x43\x54\x4f\x52\x5f\x4f\x50\x54\x49\x4f\x4e\x53\x3d\x5b\x22\x6b\x69\x6e\x64\x22\x2c\x22\x72\x65\x73\x6f\x6c\x76\x65\x22\x2c\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x22\x2c\x22\x69\x6e\x73\x74\x61\x6e\x63\x65\x4f\x66\x22\x2c\x22\x70\x72\x65\x64\x69\x63\x61\x74\x65\x22\x2c\x22\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x22\x2c\x22\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x79\x6c\x65\x22\x2c\x22\x73\x74\x79\x6c\x65\x41\x6c\x69\x61\x73\x65\x73\x22\x5d\x3b\x76\x61\x72\x20\x59\x41\x4d\x4c\x5f\x4e\x4f\x44\x45\x5f\x4b\x49\x4e\x44\x53\x3d\x5b\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x22\x73\x65\x71\x75\x65\x6e\x63\x65\x22\x2c\x22\x6d\x61\x70\x70\x69\x6e\x67\x22\x5d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x69\x6c\x65\x53\x74\x79\x6c\x65\x41\x6c\x69\x61\x73\x65\x73\x28\x6d\x61\x70\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x7b\x7d\x3b\x69\x66\x28\x6d\x61\x70\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x6d\x61\x70\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x79\x6c\x65\x29\x7b\x6d\x61\x70\x5b\x73\x74\x79\x6c\x65\x5d\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x6c\x69\x61\x73\x29\x7b\x72\x65\x73\x75\x6c\x74\x5b\x53\x74\x72\x69\x6e\x67\x28\x61\x6c\x69\x61\x73\x29\x5d\x3d\x73\x74\x79\x6c\x65\x7d\x29\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x54\x79\x70\x65\x28\x74\x61\x67\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x6f\x70\x74\x69\x6f\x6e\x73\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x7c\x7c\x7b\x7d\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x6f\x70\x74\x69\x6f\x6e\x73\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x29\x7b\x69\x66\x28\x54\x59\x50\x45\x5f\x43\x4f\x4e\x53\x54\x52\x55\x43\x54\x4f\x52\x5f\x4f\x50\x54\x49\x4f\x4e\x53\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x6e\x61\x6d\x65\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x27\x55\x6e\x6b\x6e\x6f\x77\x6e\x20\x6f\x70\x74\x69\x6f\x6e\x20\x22\x27\x2b\x6e\x61\x6d\x65\x2b\x27\x22\x20\x69\x73\x20\x6d\x65\x74\x20\x69\x6e\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x20\x6f\x66\x20\x22\x27\x2b\x74\x61\x67\x2b\x27\x22\x20\x59\x41\x4d\x4c\x20\x74\x79\x70\x65\x2e\x27\x29\x7d\x7d\x29\x3b\x74\x68\x69\x73\x2e\x74\x61\x67\x3d\x74\x61\x67\x3b\x74\x68\x69\x73\x2e\x6b\x69\x6e\x64\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x6b\x69\x6e\x64\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x3b\x74\x68\x69\x73\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x72\x65\x73\x6f\x6c\x76\x65\x22\x5d\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x3b\x74\x68\x69\x73\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x22\x5d\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x61\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x61\x7d\x3b\x74\x68\x69\x73\x2e\x69\x6e\x73\x74\x61\x6e\x63\x65\x4f\x66\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x69\x6e\x73\x74\x61\x6e\x63\x65\x4f\x66\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x3b\x74\x68\x69\x73\x2e\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x70\x72\x65\x64\x69\x63\x61\x74\x65\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x3b\x74\x68\x69\x73\x2e\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x3b\x74\x68\x69\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x79\x6c\x65\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x79\x6c\x65\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x3b\x74\x68\x69\x73\x2e\x73\x74\x79\x6c\x65\x41\x6c\x69\x61\x73\x65\x73\x3d\x63\x6f\x6d\x70\x69\x6c\x65\x53\x74\x79\x6c\x65\x41\x6c\x69\x61\x73\x65\x73\x28\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x73\x74\x79\x6c\x65\x41\x6c\x69\x61\x73\x65\x73\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x29\x3b\x69\x66\x28\x59\x41\x4d\x4c\x5f\x4e\x4f\x44\x45\x5f\x4b\x49\x4e\x44\x53\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x74\x68\x69\x73\x2e\x6b\x69\x6e\x64\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x27\x55\x6e\x6b\x6e\x6f\x77\x6e\x20\x6b\x69\x6e\x64\x20\x22\x27\x2b\x74\x68\x69\x73\x2e\x6b\x69\x6e\x64\x2b\x27\x22\x20\x69\x73\x20\x73\x70\x65\x63\x69\x66\x69\x65\x64\x20\x66\x6f\x72\x20\x22\x27\x2b\x74\x61\x67\x2b\x27\x22\x20\x59\x41\x4d\x4c\x20\x74\x79\x70\x65\x2e\x27\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x54\x79\x70\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x73\x74\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x35\x29\x28\x22\x77\x6b\x73\x22\x29\x3b\x76\x61\x72\x20\x75\x69\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x36\x29\x3b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x2e\x53\x79\x6d\x62\x6f\x6c\x3b\x76\x61\x72\x20\x55\x53\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x3d\x74\x79\x70\x65\x6f\x66\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x6f\x72\x65\x5b\x6e\x61\x6d\x65\x5d\x7c\x7c\x28\x73\x74\x6f\x72\x65\x5b\x6e\x61\x6d\x65\x5d\x3d\x55\x53\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x26\x26\x53\x79\x6d\x62\x6f\x6c\x5b\x6e\x61\x6d\x65\x5d\x7c\x7c\x28\x55\x53\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x3f\x53\x79\x6d\x62\x6f\x6c\x3a\x75\x69\x64\x29\x28\x22\x53\x79\x6d\x62\x6f\x6c\x2e\x22\x2b\x6e\x61\x6d\x65\x29\x29\x7d\x3b\x24\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x74\x6f\x72\x65\x3d\x73\x74\x6f\x72\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x3b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x29\x3b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x29\x3b\x76\x61\x72\x20\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x3d\x22\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x79\x70\x65\x2c\x6e\x61\x6d\x65\x2c\x73\x6f\x75\x72\x63\x65\x29\x7b\x76\x61\x72\x20\x49\x53\x5f\x46\x4f\x52\x43\x45\x44\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x3b\x76\x61\x72\x20\x49\x53\x5f\x47\x4c\x4f\x42\x41\x4c\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x47\x3b\x76\x61\x72\x20\x49\x53\x5f\x53\x54\x41\x54\x49\x43\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x3b\x76\x61\x72\x20\x49\x53\x5f\x50\x52\x4f\x54\x4f\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x3b\x76\x61\x72\x20\x49\x53\x5f\x42\x49\x4e\x44\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x42\x3b\x76\x61\x72\x20\x49\x53\x5f\x57\x52\x41\x50\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x57\x3b\x76\x61\x72\x20\x65\x78\x70\x6f\x72\x74\x73\x3d\x49\x53\x5f\x47\x4c\x4f\x42\x41\x4c\x3f\x63\x6f\x72\x65\x3a\x63\x6f\x72\x65\x5b\x6e\x61\x6d\x65\x5d\x7c\x7c\x28\x63\x6f\x72\x65\x5b\x6e\x61\x6d\x65\x5d\x3d\x7b\x7d\x29\x3b\x76\x61\x72\x20\x65\x78\x70\x50\x72\x6f\x74\x6f\x3d\x65\x78\x70\x6f\x72\x74\x73\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x3d\x49\x53\x5f\x47\x4c\x4f\x42\x41\x4c\x3f\x67\x6c\x6f\x62\x61\x6c\x3a\x49\x53\x5f\x53\x54\x41\x54\x49\x43\x3f\x67\x6c\x6f\x62\x61\x6c\x5b\x6e\x61\x6d\x65\x5d\x3a\x28\x67\x6c\x6f\x62\x61\x6c\x5b\x6e\x61\x6d\x65\x5d\x7c\x7c\x7b\x7d\x29\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3b\x76\x61\x72\x20\x6b\x65\x79\x2c\x6f\x77\x6e\x2c\x6f\x75\x74\x3b\x69\x66\x28\x49\x53\x5f\x47\x4c\x4f\x42\x41\x4c\x29\x73\x6f\x75\x72\x63\x65\x3d\x6e\x61\x6d\x65\x3b\x66\x6f\x72\x28\x6b\x65\x79\x20\x69\x6e\x20\x73\x6f\x75\x72\x63\x65\x29\x7b\x6f\x77\x6e\x3d\x21\x49\x53\x5f\x46\x4f\x52\x43\x45\x44\x26\x26\x74\x61\x72\x67\x65\x74\x26\x26\x74\x61\x72\x67\x65\x74\x5b\x6b\x65\x79\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x6f\x77\x6e\x26\x26\x68\x61\x73\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x6b\x65\x79\x29\x29\x63\x6f\x6e\x74\x69\x6e\x75\x65\x3b\x6f\x75\x74\x3d\x6f\x77\x6e\x3f\x74\x61\x72\x67\x65\x74\x5b\x6b\x65\x79\x5d\x3a\x73\x6f\x75\x72\x63\x65\x5b\x6b\x65\x79\x5d\x3b\x65\x78\x70\x6f\x72\x74\x73\x5b\x6b\x65\x79\x5d\x3d\x49\x53\x5f\x47\x4c\x4f\x42\x41\x4c\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x74\x61\x72\x67\x65\x74\x5b\x6b\x65\x79\x5d\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x73\x6f\x75\x72\x63\x65\x5b\x6b\x65\x79\x5d\x3a\x49\x53\x5f\x42\x49\x4e\x44\x26\x26\x6f\x77\x6e\x3f\x63\x74\x78\x28\x6f\x75\x74\x2c\x67\x6c\x6f\x62\x61\x6c\x29\x3a\x49\x53\x5f\x57\x52\x41\x50\x26\x26\x74\x61\x72\x67\x65\x74\x5b\x6b\x65\x79\x5d\x3d\x3d\x6f\x75\x74\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x29\x7b\x76\x61\x72\x20\x46\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x2c\x62\x2c\x63\x29\x7b\x69\x66\x28\x74\x68\x69\x73\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x43\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x63\x61\x73\x65\x20\x30\x3a\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x3b\x63\x61\x73\x65\x20\x31\x3a\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x28\x61\x29\x3b\x63\x61\x73\x65\x20\x32\x3a\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x28\x61\x2c\x62\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x28\x61\x2c\x62\x2c\x63\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x43\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x3b\x46\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3d\x43\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x46\x7d\x28\x6f\x75\x74\x29\x3a\x49\x53\x5f\x50\x52\x4f\x54\x4f\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x6f\x75\x74\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x63\x74\x78\x28\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x63\x61\x6c\x6c\x2c\x6f\x75\x74\x29\x3a\x6f\x75\x74\x3b\x69\x66\x28\x49\x53\x5f\x50\x52\x4f\x54\x4f\x29\x7b\x28\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x69\x72\x74\x75\x61\x6c\x7c\x7c\x28\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x69\x72\x74\x75\x61\x6c\x3d\x7b\x7d\x29\x29\x5b\x6b\x65\x79\x5d\x3d\x6f\x75\x74\x3b\x69\x66\x28\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x52\x26\x26\x65\x78\x70\x50\x72\x6f\x74\x6f\x26\x26\x21\x65\x78\x70\x50\x72\x6f\x74\x6f\x5b\x6b\x65\x79\x5d\x29\x68\x69\x64\x65\x28\x65\x78\x70\x50\x72\x6f\x74\x6f\x2c\x6b\x65\x79\x2c\x6f\x75\x74\x29\x7d\x7d\x7d\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x3d\x31\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x47\x3d\x32\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x3d\x34\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x3d\x38\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x42\x3d\x31\x36\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x57\x3d\x33\x32\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x55\x3d\x36\x34\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x52\x3d\x31\x32\x38\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x24\x65\x78\x70\x6f\x72\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x73\x74\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x32\x29\x28\x22\x77\x6b\x73\x22\x29\x3b\x76\x61\x72\x20\x75\x69\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x34\x29\x3b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x2e\x53\x79\x6d\x62\x6f\x6c\x3b\x76\x61\x72\x20\x55\x53\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x3d\x74\x79\x70\x65\x6f\x66\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x6f\x72\x65\x5b\x6e\x61\x6d\x65\x5d\x7c\x7c\x28\x73\x74\x6f\x72\x65\x5b\x6e\x61\x6d\x65\x5d\x3d\x55\x53\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x26\x26\x53\x79\x6d\x62\x6f\x6c\x5b\x6e\x61\x6d\x65\x5d\x7c\x7c\x28\x55\x53\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x3f\x53\x79\x6d\x62\x6f\x6c\x3a\x75\x69\x64\x29\x28\x22\x53\x79\x6d\x62\x6f\x6c\x2e\x22\x2b\x6e\x61\x6d\x65\x29\x29\x7d\x3b\x24\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x74\x6f\x72\x65\x3d\x73\x74\x6f\x72\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x69\x73\x49\x74\x65\x72\x61\x62\x6c\x65\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x30\x29\x3b\x76\x61\x72\x20\x5f\x69\x73\x49\x74\x65\x72\x61\x62\x6c\x65\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x73\x49\x74\x65\x72\x61\x62\x6c\x65\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x30\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x6c\x69\x63\x65\x49\x74\x65\x72\x61\x74\x6f\x72\x28\x61\x72\x72\x2c\x69\x29\x7b\x76\x61\x72\x20\x5f\x61\x72\x72\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x5f\x6e\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x64\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x5f\x65\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x72\x79\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x69\x3d\x28\x30\x2c\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x61\x72\x72\x29\x2c\x5f\x73\x3b\x21\x28\x5f\x6e\x3d\x28\x5f\x73\x3d\x5f\x69\x2e\x6e\x65\x78\x74\x28\x29\x29\x2e\x64\x6f\x6e\x65\x29\x3b\x5f\x6e\x3d\x74\x72\x75\x65\x29\x7b\x5f\x61\x72\x72\x2e\x70\x75\x73\x68\x28\x5f\x73\x2e\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x69\x26\x26\x5f\x61\x72\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x69\x29\x62\x72\x65\x61\x6b\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x29\x7b\x5f\x64\x3d\x74\x72\x75\x65\x3b\x5f\x65\x3d\x65\x72\x72\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x74\x72\x79\x7b\x69\x66\x28\x21\x5f\x6e\x26\x26\x5f\x69\x5b\x22\x72\x65\x74\x75\x72\x6e\x22\x5d\x29\x5f\x69\x5b\x22\x72\x65\x74\x75\x72\x6e\x22\x5d\x28\x29\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x5f\x64\x29\x74\x68\x72\x6f\x77\x20\x5f\x65\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x61\x72\x72\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x72\x72\x2c\x69\x29\x7b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x61\x72\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x28\x30\x2c\x5f\x69\x73\x49\x74\x65\x72\x61\x62\x6c\x65\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x62\x6a\x65\x63\x74\x28\x61\x72\x72\x29\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x6c\x69\x63\x65\x49\x74\x65\x72\x61\x74\x6f\x72\x28\x61\x72\x72\x2c\x69\x29\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x49\x6e\x76\x61\x6c\x69\x64\x20\x61\x74\x74\x65\x6d\x70\x74\x20\x74\x6f\x20\x64\x65\x73\x74\x72\x75\x63\x74\x75\x72\x65\x20\x6e\x6f\x6e\x2d\x69\x74\x65\x72\x61\x62\x6c\x65\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x22\x29\x7d\x7d\x7d\x28\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x79\x70\x65\x6f\x66\x20\x77\x69\x6e\x64\x6f\x77\x21\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x26\x26\x77\x69\x6e\x64\x6f\x77\x2e\x4d\x61\x74\x68\x3d\x3d\x4d\x61\x74\x68\x3f\x77\x69\x6e\x64\x6f\x77\x3a\x74\x79\x70\x65\x6f\x66\x20\x73\x65\x6c\x66\x21\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x26\x26\x73\x65\x6c\x66\x2e\x4d\x61\x74\x68\x3d\x3d\x4d\x61\x74\x68\x3f\x73\x65\x6c\x66\x3a\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x22\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x22\x29\x28\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x5f\x5f\x67\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x5f\x5f\x67\x3d\x67\x6c\x6f\x62\x61\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x35\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x77\x72\x69\x74\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x76\x61\x6c\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x3b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x29\x3b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x29\x3b\x76\x61\x72\x20\x72\x65\x64\x65\x66\x69\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x29\x3b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x39\x29\x3b\x76\x61\x72\x20\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x3d\x22\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x79\x70\x65\x2c\x6e\x61\x6d\x65\x2c\x73\x6f\x75\x72\x63\x65\x29\x7b\x76\x61\x72\x20\x49\x53\x5f\x46\x4f\x52\x43\x45\x44\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x3b\x76\x61\x72\x20\x49\x53\x5f\x47\x4c\x4f\x42\x41\x4c\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x47\x3b\x76\x61\x72\x20\x49\x53\x5f\x53\x54\x41\x54\x49\x43\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x3b\x76\x61\x72\x20\x49\x53\x5f\x50\x52\x4f\x54\x4f\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x3b\x76\x61\x72\x20\x49\x53\x5f\x42\x49\x4e\x44\x3d\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x42\x3b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x3d\x49\x53\x5f\x47\x4c\x4f\x42\x41\x4c\x3f\x67\x6c\x6f\x62\x61\x6c\x3a\x49\x53\x5f\x53\x54\x41\x54\x49\x43\x3f\x67\x6c\x6f\x62\x61\x6c\x5b\x6e\x61\x6d\x65\x5d\x7c\x7c\x28\x67\x6c\x6f\x62\x61\x6c\x5b\x6e\x61\x6d\x65\x5d\x3d\x7b\x7d\x29\x3a\x28\x67\x6c\x6f\x62\x61\x6c\x5b\x6e\x61\x6d\x65\x5d\x7c\x7c\x7b\x7d\x29\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3b\x76\x61\x72\x20\x65\x78\x70\x6f\x72\x74\x73\x3d\x49\x53\x5f\x47\x4c\x4f\x42\x41\x4c\x3f\x63\x6f\x72\x65\x3a\x63\x6f\x72\x65\x5b\x6e\x61\x6d\x65\x5d\x7c\x7c\x28\x63\x6f\x72\x65\x5b\x6e\x61\x6d\x65\x5d\x3d\x7b\x7d\x29\x3b\x76\x61\x72\x20\x65\x78\x70\x50\x72\x6f\x74\x6f\x3d\x65\x78\x70\x6f\x72\x74\x73\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x7c\x7c\x28\x65\x78\x70\x6f\x72\x74\x73\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3d\x7b\x7d\x29\x3b\x76\x61\x72\x20\x6b\x65\x79\x2c\x6f\x77\x6e\x2c\x6f\x75\x74\x2c\x65\x78\x70\x3b\x69\x66\x28\x49\x53\x5f\x47\x4c\x4f\x42\x41\x4c\x29\x73\x6f\x75\x72\x63\x65\x3d\x6e\x61\x6d\x65\x3b\x66\x6f\x72\x28\x6b\x65\x79\x20\x69\x6e\x20\x73\x6f\x75\x72\x63\x65\x29\x7b\x6f\x77\x6e\x3d\x21\x49\x53\x5f\x46\x4f\x52\x43\x45\x44\x26\x26\x74\x61\x72\x67\x65\x74\x26\x26\x74\x61\x72\x67\x65\x74\x5b\x6b\x65\x79\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x6f\x75\x74\x3d\x28\x6f\x77\x6e\x3f\x74\x61\x72\x67\x65\x74\x3a\x73\x6f\x75\x72\x63\x65\x29\x5b\x6b\x65\x79\x5d\x3b\x65\x78\x70\x3d\x49\x53\x5f\x42\x49\x4e\x44\x26\x26\x6f\x77\x6e\x3f\x63\x74\x78\x28\x6f\x75\x74\x2c\x67\x6c\x6f\x62\x61\x6c\x29\x3a\x49\x53\x5f\x50\x52\x4f\x54\x4f\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x6f\x75\x74\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x63\x74\x78\x28\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x63\x61\x6c\x6c\x2c\x6f\x75\x74\x29\x3a\x6f\x75\x74\x3b\x69\x66\x28\x74\x61\x72\x67\x65\x74\x29\x72\x65\x64\x65\x66\x69\x6e\x65\x28\x74\x61\x72\x67\x65\x74\x2c\x6b\x65\x79\x2c\x6f\x75\x74\x2c\x74\x79\x70\x65\x26\x24\x65\x78\x70\x6f\x72\x74\x2e\x55\x29\x3b\x69\x66\x28\x65\x78\x70\x6f\x72\x74\x73\x5b\x6b\x65\x79\x5d\x21\x3d\x6f\x75\x74\x29\x68\x69\x64\x65\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x6b\x65\x79\x2c\x65\x78\x70\x29\x3b\x69\x66\x28\x49\x53\x5f\x50\x52\x4f\x54\x4f\x26\x26\x65\x78\x70\x50\x72\x6f\x74\x6f\x5b\x6b\x65\x79\x5d\x21\x3d\x6f\x75\x74\x29\x65\x78\x70\x50\x72\x6f\x74\x6f\x5b\x6b\x65\x79\x5d\x3d\x6f\x75\x74\x7d\x7d\x3b\x67\x6c\x6f\x62\x61\x6c\x2e\x63\x6f\x72\x65\x3d\x63\x6f\x72\x65\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x3d\x31\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x47\x3d\x32\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x3d\x34\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x3d\x38\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x42\x3d\x31\x36\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x57\x3d\x33\x32\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x55\x3d\x36\x34\x3b\x24\x65\x78\x70\x6f\x72\x74\x2e\x52\x3d\x31\x32\x38\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x24\x65\x78\x70\x6f\x72\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x66\x61\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x38\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x29\x3b\x76\x61\x72\x20\x71\x75\x6f\x74\x3d\x2f\x22\x2f\x67\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x72\x69\x6e\x67\x2c\x74\x61\x67\x2c\x61\x74\x74\x72\x69\x62\x75\x74\x65\x2c\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x53\x3d\x53\x74\x72\x69\x6e\x67\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x73\x74\x72\x69\x6e\x67\x29\x29\x3b\x76\x61\x72\x20\x70\x31\x3d\x22\x3c\x22\x2b\x74\x61\x67\x3b\x69\x66\x28\x61\x74\x74\x72\x69\x62\x75\x74\x65\x21\x3d\x3d\x22\x22\x29\x70\x31\x2b\x3d\x22\x20\x22\x2b\x61\x74\x74\x72\x69\x62\x75\x74\x65\x2b\x27\x3d\x22\x27\x2b\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x71\x75\x6f\x74\x2c\x22\x26\x71\x75\x6f\x74\x3b\x22\x29\x2b\x27\x22\x27\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x31\x2b\x22\x3e\x22\x2b\x53\x2b\x22\x3c\x2f\x22\x2b\x74\x61\x67\x2b\x22\x3e\x22\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4e\x41\x4d\x45\x2c\x65\x78\x65\x63\x29\x7b\x76\x61\x72\x20\x4f\x3d\x7b\x7d\x3b\x4f\x5b\x4e\x41\x4d\x45\x5d\x3d\x65\x78\x65\x63\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x66\x61\x69\x6c\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x74\x65\x73\x74\x3d\x22\x22\x5b\x4e\x41\x4d\x45\x5d\x28\x27\x22\x27\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x65\x73\x74\x21\x3d\x3d\x74\x65\x73\x74\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x7c\x7c\x74\x65\x73\x74\x2e\x73\x70\x6c\x69\x74\x28\x27\x22\x27\x29\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x33\x7d\x29\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x4f\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x31\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x3d\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x72\x67\x65\x74\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x31\x3b\x69\x3c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x76\x61\x72\x20\x73\x6f\x75\x72\x63\x65\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x5d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x73\x6f\x75\x72\x63\x65\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x73\x6f\x75\x72\x63\x65\x2c\x6b\x65\x79\x29\x29\x7b\x74\x61\x72\x67\x65\x74\x5b\x6b\x65\x79\x5d\x3d\x73\x6f\x75\x72\x63\x65\x5b\x6b\x65\x79\x5d\x7d\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x72\x67\x65\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x30\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x6b\x65\x57\x69\x6e\x64\x6f\x77\x28\x29\x7b\x76\x61\x72\x20\x77\x69\x6e\x3d\x7b\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x3a\x7b\x7d\x2c\x68\x69\x73\x74\x6f\x72\x79\x3a\x7b\x7d\x2c\x6f\x70\x65\x6e\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x70\x65\x6e\x28\x29\x7b\x7d\x2c\x63\x6c\x6f\x73\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x6f\x73\x65\x28\x29\x7b\x7d\x2c\x46\x69\x6c\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x46\x69\x6c\x65\x28\x29\x7b\x7d\x7d\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x77\x69\x6e\x64\x6f\x77\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x69\x6e\x7d\x74\x72\x79\x7b\x77\x69\x6e\x3d\x77\x69\x6e\x64\x6f\x77\x3b\x76\x61\x72\x20\x70\x72\x6f\x70\x73\x3d\x5b\x22\x46\x69\x6c\x65\x22\x2c\x22\x42\x6c\x6f\x62\x22\x2c\x22\x46\x6f\x72\x6d\x44\x61\x74\x61\x22\x5d\x3b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x72\x79\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x3d\x28\x30\x2c\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x72\x6f\x70\x73\x29\x2c\x5f\x73\x74\x65\x70\x3b\x21\x28\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x3d\x28\x5f\x73\x74\x65\x70\x3d\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x6e\x65\x78\x74\x28\x29\x29\x2e\x64\x6f\x6e\x65\x29\x3b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x3d\x74\x72\x75\x65\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x70\x3d\x5f\x73\x74\x65\x70\x2e\x76\x61\x6c\x75\x65\x3b\x69\x66\x28\x70\x72\x6f\x70\x20\x69\x6e\x20\x77\x69\x6e\x64\x6f\x77\x29\x7b\x77\x69\x6e\x5b\x70\x72\x6f\x70\x5d\x3d\x77\x69\x6e\x64\x6f\x77\x5b\x70\x72\x6f\x70\x5d\x7d\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x29\x7b\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x74\x72\x75\x65\x3b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x65\x72\x72\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x74\x72\x79\x7b\x69\x66\x28\x21\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x26\x26\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x72\x65\x74\x75\x72\x6e\x29\x7b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x72\x65\x74\x75\x72\x6e\x28\x29\x7d\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x29\x7b\x74\x68\x72\x6f\x77\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x7d\x7d\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x77\x69\x6e\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x61\x6b\x65\x57\x69\x6e\x64\x6f\x77\x28\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x79\x70\x65\x6f\x66\x20\x77\x69\x6e\x64\x6f\x77\x21\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x26\x26\x77\x69\x6e\x64\x6f\x77\x2e\x4d\x61\x74\x68\x3d\x3d\x4d\x61\x74\x68\x3f\x77\x69\x6e\x64\x6f\x77\x3a\x74\x79\x70\x65\x6f\x66\x20\x73\x65\x6c\x66\x21\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x26\x26\x73\x65\x6c\x66\x2e\x4d\x61\x74\x68\x3d\x3d\x4d\x61\x74\x68\x3f\x73\x65\x6c\x66\x3a\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x22\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x22\x29\x28\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x5f\x5f\x67\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x5f\x5f\x67\x3d\x67\x6c\x6f\x62\x61\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x76\x61\x72\x20\x49\x45\x38\x5f\x44\x4f\x4d\x5f\x44\x45\x46\x49\x4e\x45\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x30\x29\x3b\x76\x61\x72\x20\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x39\x29\x3b\x76\x61\x72\x20\x64\x50\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x3f\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x4f\x2c\x50\x2c\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x7b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x50\x3d\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x50\x2c\x74\x72\x75\x65\x29\x3b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x3b\x69\x66\x28\x49\x45\x38\x5f\x44\x4f\x4d\x5f\x44\x45\x46\x49\x4e\x45\x29\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x50\x28\x4f\x2c\x50\x2c\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x69\x66\x28\x22\x67\x65\x74\x22\x69\x6e\x20\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x7c\x7c\x22\x73\x65\x74\x22\x69\x6e\x20\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x41\x63\x63\x65\x73\x73\x6f\x72\x73\x20\x6e\x6f\x74\x20\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x21\x22\x29\x3b\x69\x66\x28\x22\x76\x61\x6c\x75\x65\x22\x69\x6e\x20\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x4f\x5b\x50\x5d\x3d\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x2e\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x3f\x69\x74\x21\x3d\x3d\x6e\x75\x6c\x6c\x3a\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x66\x72\x65\x65\x47\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x38\x29\x3b\x76\x61\x72\x20\x66\x72\x65\x65\x53\x65\x6c\x66\x3d\x74\x79\x70\x65\x6f\x66\x20\x73\x65\x6c\x66\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x73\x65\x6c\x66\x26\x26\x73\x65\x6c\x66\x2e\x4f\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x26\x26\x73\x65\x6c\x66\x3b\x76\x61\x72\x20\x72\x6f\x6f\x74\x3d\x66\x72\x65\x65\x47\x6c\x6f\x62\x61\x6c\x7c\x7c\x66\x72\x65\x65\x53\x65\x6c\x66\x7c\x7c\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x22\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x22\x29\x28\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x6f\x6f\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4f\x41\x53\x33\x3d\x69\x73\x4f\x41\x53\x33\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3d\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x4f\x41\x53\x33\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x72\x61\x70\x46\x61\x63\x74\x6f\x72\x79\x3d\x4f\x41\x53\x33\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x72\x61\x70\x46\x61\x63\x74\x6f\x72\x79\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4f\x41\x53\x33\x28\x6a\x73\x53\x70\x65\x63\x29\x7b\x76\x61\x72\x20\x6f\x61\x73\x56\x65\x72\x73\x69\x6f\x6e\x3d\x6a\x73\x53\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x6f\x70\x65\x6e\x61\x70\x69\x22\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6f\x61\x73\x56\x65\x72\x73\x69\x6f\x6e\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x61\x73\x56\x65\x72\x73\x69\x6f\x6e\x2e\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x28\x22\x33\x2e\x30\x2e\x22\x29\x26\x26\x6f\x61\x73\x56\x65\x72\x73\x69\x6f\x6e\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x34\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x28\x6a\x73\x53\x70\x65\x63\x29\x7b\x76\x61\x72\x20\x73\x77\x61\x67\x67\x65\x72\x56\x65\x72\x73\x69\x6f\x6e\x3d\x6a\x73\x53\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x73\x77\x61\x67\x67\x65\x72\x22\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x77\x61\x67\x67\x65\x72\x56\x65\x72\x73\x69\x6f\x6e\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x77\x61\x67\x67\x65\x72\x56\x65\x72\x73\x69\x6f\x6e\x2e\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x28\x22\x32\x2e\x30\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x41\x53\x33\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x72\x61\x70\x46\x61\x63\x74\x6f\x72\x79\x28\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x73\x79\x73\x74\x65\x6d\x26\x26\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x26\x26\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x3b\x69\x66\x28\x69\x73\x4f\x41\x53\x33\x28\x73\x70\x65\x63\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x70\x72\x6f\x70\x73\x2c\x73\x79\x73\x74\x65\x6d\x2c\x7b\x4f\x72\x69\x3a\x4f\x72\x69\x7d\x29\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x72\x69\x2c\x70\x72\x6f\x70\x73\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x77\x61\x72\x6e\x28\x22\x4f\x41\x53\x33\x20\x77\x72\x61\x70\x70\x65\x72\x3a\x20\x63\x6f\x75\x6c\x64\x6e\x27\x74\x20\x67\x65\x74\x20\x73\x70\x65\x63\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x69\x74\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x61\x6e\x20\x6f\x62\x6a\x65\x63\x74\x21\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x7b\x7d\x2c\x22\x61\x22\x2c\x7b\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x37\x7d\x7d\x29\x2e\x61\x21\x3d\x37\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x28\x74\x79\x70\x65\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x4f\x62\x6a\x65\x63\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x2c\x74\x68\x61\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x29\x3b\x69\x66\x28\x74\x68\x61\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x3b\x73\x77\x69\x74\x63\x68\x28\x6c\x65\x6e\x67\x74\x68\x29\x7b\x63\x61\x73\x65\x20\x31\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x29\x7d\x3b\x63\x61\x73\x65\x20\x32\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x2c\x62\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x2c\x62\x29\x7d\x3b\x63\x61\x73\x65\x20\x33\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x2c\x62\x2c\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x2c\x62\x2c\x63\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x36\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x37\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x50\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x50\x2e\x66\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x28\x31\x2c\x76\x61\x6c\x75\x65\x29\x29\x7d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x3d\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x69\x66\x28\x69\x74\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x43\x61\x6e\x27\x74\x20\x63\x61\x6c\x6c\x20\x6d\x65\x74\x68\x6f\x64\x20\x6f\x6e\x20\x20\x22\x2b\x69\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x39\x29\x3b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x29\x3b\x76\x61\x72\x20\x5f\x73\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x31\x29\x3b\x76\x61\x72\x20\x5f\x73\x79\x6d\x62\x6f\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x79\x6d\x62\x6f\x6c\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x3d\x74\x79\x70\x65\x6f\x66\x20\x5f\x73\x79\x6d\x62\x6f\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x3d\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x7d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x5f\x73\x79\x6d\x62\x6f\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x6f\x62\x6a\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x3d\x3d\x5f\x73\x79\x6d\x62\x6f\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x26\x26\x6f\x62\x6a\x21\x3d\x3d\x5f\x73\x79\x6d\x62\x6f\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3f\x22\x73\x79\x6d\x62\x6f\x6c\x22\x3a\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x74\x79\x70\x65\x6f\x66\x20\x5f\x73\x79\x6d\x62\x6f\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x5f\x74\x79\x70\x65\x6f\x66\x28\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x3d\x3d\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x5f\x74\x79\x70\x65\x6f\x66\x28\x6f\x62\x6a\x29\x7d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x5f\x73\x79\x6d\x62\x6f\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x6f\x62\x6a\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x3d\x3d\x5f\x73\x79\x6d\x62\x6f\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x26\x26\x6f\x62\x6a\x21\x3d\x3d\x5f\x73\x79\x6d\x62\x6f\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3f\x22\x73\x79\x6d\x62\x6f\x6c\x22\x3a\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x5f\x74\x79\x70\x65\x6f\x66\x28\x6f\x62\x6a\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x73\x65\x6c\x65\x63\x74\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x65\x78\x65\x63\x28\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x7b\x7d\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x69\x74\x2c\x6b\x65\x79\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x50\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x36\x29\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x37\x29\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x50\x2e\x66\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x28\x31\x2c\x76\x61\x6c\x75\x65\x29\x29\x7d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x3d\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x69\x74\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x61\x6e\x20\x6f\x62\x6a\x65\x63\x74\x21\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x76\x65\x72\x73\x69\x6f\x6e\x3a\x22\x32\x2e\x35\x2e\x35\x22\x7d\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x5f\x5f\x65\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x5f\x5f\x65\x3d\x63\x6f\x72\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x3d\x3d\x6e\x75\x6c\x6c\x3f\x22\x22\x3a\x62\x61\x73\x65\x54\x6f\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x6f\x53\x74\x72\x69\x6e\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x29\x2c\x67\x65\x74\x52\x61\x77\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x37\x29\x2c\x6f\x62\x6a\x65\x63\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x38\x29\x3b\x76\x61\x72\x20\x6e\x75\x6c\x6c\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4e\x75\x6c\x6c\x5d\x22\x2c\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x5d\x22\x3b\x76\x61\x72\x20\x73\x79\x6d\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x53\x79\x6d\x62\x6f\x6c\x3f\x53\x79\x6d\x62\x6f\x6c\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x54\x61\x67\x3a\x6e\x75\x6c\x6c\x54\x61\x67\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x79\x6d\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x26\x26\x73\x79\x6d\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x20\x69\x6e\x20\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x3f\x67\x65\x74\x52\x61\x77\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x3a\x6f\x62\x6a\x65\x63\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x49\x73\x4e\x61\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x35\x29\x2c\x67\x65\x74\x56\x61\x6c\x75\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x49\x73\x4e\x61\x74\x69\x76\x65\x28\x76\x61\x6c\x75\x65\x29\x3f\x76\x61\x6c\x75\x65\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x35\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x49\x4f\x62\x6a\x65\x63\x74\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x69\x74\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x69\x74\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x61\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x35\x29\x28\x74\x72\x75\x65\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x37\x29\x28\x53\x74\x72\x69\x6e\x67\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x61\x74\x65\x64\x29\x7b\x74\x68\x69\x73\x2e\x5f\x74\x3d\x53\x74\x72\x69\x6e\x67\x28\x69\x74\x65\x72\x61\x74\x65\x64\x29\x3b\x74\x68\x69\x73\x2e\x5f\x69\x3d\x30\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x68\x69\x73\x2e\x5f\x74\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x74\x68\x69\x73\x2e\x5f\x69\x3b\x76\x61\x72\x20\x70\x6f\x69\x6e\x74\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x3e\x3d\x4f\x2e\x6c\x65\x6e\x67\x74\x68\x29\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x64\x6f\x6e\x65\x3a\x74\x72\x75\x65\x7d\x3b\x70\x6f\x69\x6e\x74\x3d\x24\x61\x74\x28\x4f\x2c\x69\x6e\x64\x65\x78\x29\x3b\x74\x68\x69\x73\x2e\x5f\x69\x2b\x3d\x70\x6f\x69\x6e\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x70\x6f\x69\x6e\x74\x2c\x64\x6f\x6e\x65\x3a\x66\x61\x6c\x73\x65\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x3b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x37\x29\x3b\x76\x61\x72\x20\x53\x52\x43\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x36\x29\x28\x22\x73\x72\x63\x22\x29\x3b\x76\x61\x72\x20\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x3d\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x22\x3b\x76\x61\x72\x20\x24\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x46\x75\x6e\x63\x74\x69\x6f\x6e\x5b\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x5d\x3b\x76\x61\x72\x20\x54\x50\x4c\x3d\x28\x22\x22\x2b\x24\x74\x6f\x53\x74\x72\x69\x6e\x67\x29\x2e\x73\x70\x6c\x69\x74\x28\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x29\x2e\x69\x6e\x73\x70\x65\x63\x74\x53\x6f\x75\x72\x63\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x7d\x3b\x28\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4f\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x2c\x73\x61\x66\x65\x29\x7b\x76\x61\x72\x20\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3b\x69\x66\x28\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x29\x68\x61\x73\x28\x76\x61\x6c\x2c\x22\x6e\x61\x6d\x65\x22\x29\x7c\x7c\x68\x69\x64\x65\x28\x76\x61\x6c\x2c\x22\x6e\x61\x6d\x65\x22\x2c\x6b\x65\x79\x29\x3b\x69\x66\x28\x4f\x5b\x6b\x65\x79\x5d\x3d\x3d\x3d\x76\x61\x6c\x29\x72\x65\x74\x75\x72\x6e\x3b\x69\x66\x28\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x29\x68\x61\x73\x28\x76\x61\x6c\x2c\x53\x52\x43\x29\x7c\x7c\x68\x69\x64\x65\x28\x76\x61\x6c\x2c\x53\x52\x43\x2c\x4f\x5b\x6b\x65\x79\x5d\x3f\x22\x22\x2b\x4f\x5b\x6b\x65\x79\x5d\x3a\x54\x50\x4c\x2e\x6a\x6f\x69\x6e\x28\x53\x74\x72\x69\x6e\x67\x28\x6b\x65\x79\x29\x29\x29\x3b\x69\x66\x28\x4f\x3d\x3d\x3d\x67\x6c\x6f\x62\x61\x6c\x29\x7b\x4f\x5b\x6b\x65\x79\x5d\x3d\x76\x61\x6c\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x21\x73\x61\x66\x65\x29\x7b\x64\x65\x6c\x65\x74\x65\x20\x4f\x5b\x6b\x65\x79\x5d\x3b\x68\x69\x64\x65\x28\x4f\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x4f\x5b\x6b\x65\x79\x5d\x29\x7b\x4f\x5b\x6b\x65\x79\x5d\x3d\x76\x61\x6c\x7d\x65\x6c\x73\x65\x7b\x68\x69\x64\x65\x28\x4f\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x29\x7d\x7d\x29\x28\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x74\x68\x69\x73\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x74\x68\x69\x73\x5b\x53\x52\x43\x5d\x7c\x7c\x24\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x29\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x3f\x69\x74\x21\x3d\x3d\x6e\x75\x6c\x6c\x3a\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x72\x6f\x6f\x74\x2e\x53\x79\x6d\x62\x6f\x6c\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x53\x79\x6d\x62\x6f\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x4c\x69\x6b\x65\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x34\x29\x2c\x62\x61\x73\x65\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x36\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x3f\x61\x72\x72\x61\x79\x4c\x69\x6b\x65\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x3a\x62\x61\x73\x65\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6b\x65\x79\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x35\x29\x3b\x76\x61\x72\x20\x49\x4e\x46\x49\x4e\x49\x54\x59\x3d\x31\x2f\x30\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x4b\x65\x79\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x7c\x7c\x69\x73\x53\x79\x6d\x62\x6f\x6c\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x76\x61\x6c\x75\x65\x2b\x22\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x3d\x3d\x22\x30\x22\x26\x26\x31\x2f\x76\x61\x6c\x75\x65\x3d\x3d\x2d\x49\x4e\x46\x49\x4e\x49\x54\x59\x3f\x22\x2d\x30\x22\x3a\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x6f\x4b\x65\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x66\x72\x6f\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x33\x29\x3b\x76\x61\x72\x20\x5f\x66\x72\x6f\x6d\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x66\x72\x6f\x6d\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x72\x72\x29\x7b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x61\x72\x72\x29\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x2c\x61\x72\x72\x32\x3d\x41\x72\x72\x61\x79\x28\x61\x72\x72\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x69\x3c\x61\x72\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x61\x72\x72\x32\x5b\x69\x5d\x3d\x61\x72\x72\x5b\x69\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x32\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x66\x72\x6f\x6d\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x61\x72\x72\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4e\x6f\x74\x68\x69\x6e\x67\x28\x73\x75\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x73\x75\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x7c\x7c\x73\x75\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x6e\x75\x6c\x6c\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x73\x75\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x73\x75\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x73\x75\x62\x6a\x65\x63\x74\x21\x3d\x3d\x6e\x75\x6c\x6c\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x41\x72\x72\x61\x79\x28\x73\x65\x71\x75\x65\x6e\x63\x65\x29\x7b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x73\x65\x71\x75\x65\x6e\x63\x65\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x71\x75\x65\x6e\x63\x65\x3b\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x73\x4e\x6f\x74\x68\x69\x6e\x67\x28\x73\x65\x71\x75\x65\x6e\x63\x65\x29\x29\x72\x65\x74\x75\x72\x6e\x5b\x5d\x3b\x72\x65\x74\x75\x72\x6e\x5b\x73\x65\x71\x75\x65\x6e\x63\x65\x5d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x78\x74\x65\x6e\x64\x28\x74\x61\x72\x67\x65\x74\x2c\x73\x6f\x75\x72\x63\x65\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x6b\x65\x79\x2c\x73\x6f\x75\x72\x63\x65\x4b\x65\x79\x73\x3b\x69\x66\x28\x73\x6f\x75\x72\x63\x65\x29\x7b\x73\x6f\x75\x72\x63\x65\x4b\x65\x79\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x73\x6f\x75\x72\x63\x65\x29\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x73\x6f\x75\x72\x63\x65\x4b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x6b\x65\x79\x3d\x73\x6f\x75\x72\x63\x65\x4b\x65\x79\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x74\x61\x72\x67\x65\x74\x5b\x6b\x65\x79\x5d\x3d\x73\x6f\x75\x72\x63\x65\x5b\x6b\x65\x79\x5d\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x72\x67\x65\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x70\x65\x61\x74\x28\x73\x74\x72\x69\x6e\x67\x2c\x63\x6f\x75\x6e\x74\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x2c\x63\x79\x63\x6c\x65\x3b\x66\x6f\x72\x28\x63\x79\x63\x6c\x65\x3d\x30\x3b\x63\x79\x63\x6c\x65\x3c\x63\x6f\x75\x6e\x74\x3b\x63\x79\x63\x6c\x65\x2b\x3d\x31\x29\x7b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x73\x74\x72\x69\x6e\x67\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4e\x65\x67\x61\x74\x69\x76\x65\x5a\x65\x72\x6f\x28\x6e\x75\x6d\x62\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6d\x62\x65\x72\x3d\x3d\x3d\x30\x26\x26\x4e\x75\x6d\x62\x65\x72\x2e\x4e\x45\x47\x41\x54\x49\x56\x45\x5f\x49\x4e\x46\x49\x4e\x49\x54\x59\x3d\x3d\x3d\x31\x2f\x6e\x75\x6d\x62\x65\x72\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4e\x6f\x74\x68\x69\x6e\x67\x3d\x69\x73\x4e\x6f\x74\x68\x69\x6e\x67\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x69\x73\x4f\x62\x6a\x65\x63\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x6f\x41\x72\x72\x61\x79\x3d\x74\x6f\x41\x72\x72\x61\x79\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x70\x65\x61\x74\x3d\x72\x65\x70\x65\x61\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4e\x65\x67\x61\x74\x69\x76\x65\x5a\x65\x72\x6f\x3d\x69\x73\x4e\x65\x67\x61\x74\x69\x76\x65\x5a\x65\x72\x6f\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x74\x65\x6e\x64\x3d\x65\x78\x74\x65\x6e\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x6f\x6d\x6d\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x29\x3b\x76\x61\x72\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x36\x29\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x69\x6c\x65\x4c\x69\x73\x74\x28\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x2c\x72\x65\x73\x75\x6c\x74\x29\x7b\x76\x61\x72\x20\x65\x78\x63\x6c\x75\x64\x65\x3d\x5b\x5d\x3b\x73\x63\x68\x65\x6d\x61\x2e\x69\x6e\x63\x6c\x75\x64\x65\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x6e\x63\x6c\x75\x64\x65\x64\x53\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x63\x6f\x6d\x70\x69\x6c\x65\x4c\x69\x73\x74\x28\x69\x6e\x63\x6c\x75\x64\x65\x64\x53\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x2c\x72\x65\x73\x75\x6c\x74\x29\x7d\x29\x3b\x73\x63\x68\x65\x6d\x61\x5b\x6e\x61\x6d\x65\x5d\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x75\x72\x72\x65\x6e\x74\x54\x79\x70\x65\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x65\x76\x69\x6f\x75\x73\x54\x79\x70\x65\x2c\x70\x72\x65\x76\x69\x6f\x75\x73\x49\x6e\x64\x65\x78\x29\x7b\x69\x66\x28\x70\x72\x65\x76\x69\x6f\x75\x73\x54\x79\x70\x65\x2e\x74\x61\x67\x3d\x3d\x3d\x63\x75\x72\x72\x65\x6e\x74\x54\x79\x70\x65\x2e\x74\x61\x67\x26\x26\x70\x72\x65\x76\x69\x6f\x75\x73\x54\x79\x70\x65\x2e\x6b\x69\x6e\x64\x3d\x3d\x3d\x63\x75\x72\x72\x65\x6e\x74\x54\x79\x70\x65\x2e\x6b\x69\x6e\x64\x29\x7b\x65\x78\x63\x6c\x75\x64\x65\x2e\x70\x75\x73\x68\x28\x70\x72\x65\x76\x69\x6f\x75\x73\x49\x6e\x64\x65\x78\x29\x7d\x7d\x29\x3b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x63\x75\x72\x72\x65\x6e\x74\x54\x79\x70\x65\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x79\x70\x65\x2c\x69\x6e\x64\x65\x78\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x78\x63\x6c\x75\x64\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x69\x6e\x64\x65\x78\x29\x3d\x3d\x3d\x2d\x31\x7d\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x69\x6c\x65\x4d\x61\x70\x28\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x7b\x73\x63\x61\x6c\x61\x72\x3a\x7b\x7d\x2c\x73\x65\x71\x75\x65\x6e\x63\x65\x3a\x7b\x7d\x2c\x6d\x61\x70\x70\x69\x6e\x67\x3a\x7b\x7d\x2c\x66\x61\x6c\x6c\x62\x61\x63\x6b\x3a\x7b\x7d\x7d\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6c\x6c\x65\x63\x74\x54\x79\x70\x65\x28\x74\x79\x70\x65\x29\x7b\x72\x65\x73\x75\x6c\x74\x5b\x74\x79\x70\x65\x2e\x6b\x69\x6e\x64\x5d\x5b\x74\x79\x70\x65\x2e\x74\x61\x67\x5d\x3d\x72\x65\x73\x75\x6c\x74\x5b\x22\x66\x61\x6c\x6c\x62\x61\x63\x6b\x22\x5d\x5b\x74\x79\x70\x65\x2e\x74\x61\x67\x5d\x3d\x74\x79\x70\x65\x7d\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x6e\x64\x65\x78\x5d\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x63\x6f\x6c\x6c\x65\x63\x74\x54\x79\x70\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x63\x68\x65\x6d\x61\x28\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x29\x7b\x74\x68\x69\x73\x2e\x69\x6e\x63\x6c\x75\x64\x65\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x69\x6e\x63\x6c\x75\x64\x65\x7c\x7c\x5b\x5d\x3b\x74\x68\x69\x73\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x7c\x7c\x5b\x5d\x3b\x74\x68\x69\x73\x2e\x65\x78\x70\x6c\x69\x63\x69\x74\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x65\x78\x70\x6c\x69\x63\x69\x74\x7c\x7c\x5b\x5d\x3b\x74\x68\x69\x73\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x79\x70\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x2e\x6c\x6f\x61\x64\x4b\x69\x6e\x64\x26\x26\x74\x79\x70\x65\x2e\x6c\x6f\x61\x64\x4b\x69\x6e\x64\x21\x3d\x3d\x22\x73\x63\x61\x6c\x61\x72\x22\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x54\x68\x65\x72\x65\x20\x69\x73\x20\x61\x20\x6e\x6f\x6e\x2d\x73\x63\x61\x6c\x61\x72\x20\x74\x79\x70\x65\x20\x69\x6e\x20\x74\x68\x65\x20\x69\x6d\x70\x6c\x69\x63\x69\x74\x20\x6c\x69\x73\x74\x20\x6f\x66\x20\x61\x20\x73\x63\x68\x65\x6d\x61\x2e\x20\x49\x6d\x70\x6c\x69\x63\x69\x74\x20\x72\x65\x73\x6f\x6c\x76\x69\x6e\x67\x20\x6f\x66\x20\x73\x75\x63\x68\x20\x74\x79\x70\x65\x73\x20\x69\x73\x20\x6e\x6f\x74\x20\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x2e\x22\x29\x7d\x7d\x29\x3b\x74\x68\x69\x73\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x49\x6d\x70\x6c\x69\x63\x69\x74\x3d\x63\x6f\x6d\x70\x69\x6c\x65\x4c\x69\x73\x74\x28\x74\x68\x69\x73\x2c\x22\x69\x6d\x70\x6c\x69\x63\x69\x74\x22\x2c\x5b\x5d\x29\x3b\x74\x68\x69\x73\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x45\x78\x70\x6c\x69\x63\x69\x74\x3d\x63\x6f\x6d\x70\x69\x6c\x65\x4c\x69\x73\x74\x28\x74\x68\x69\x73\x2c\x22\x65\x78\x70\x6c\x69\x63\x69\x74\x22\x2c\x5b\x5d\x29\x3b\x74\x68\x69\x73\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x54\x79\x70\x65\x4d\x61\x70\x3d\x63\x6f\x6d\x70\x69\x6c\x65\x4d\x61\x70\x28\x74\x68\x69\x73\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x49\x6d\x70\x6c\x69\x63\x69\x74\x2c\x74\x68\x69\x73\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x45\x78\x70\x6c\x69\x63\x69\x74\x29\x7d\x53\x63\x68\x65\x6d\x61\x2e\x44\x45\x46\x41\x55\x4c\x54\x3d\x6e\x75\x6c\x6c\x3b\x53\x63\x68\x65\x6d\x61\x2e\x63\x72\x65\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x53\x63\x68\x65\x6d\x61\x28\x29\x7b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x73\x2c\x74\x79\x70\x65\x73\x3b\x73\x77\x69\x74\x63\x68\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x63\x61\x73\x65\x20\x31\x3a\x73\x63\x68\x65\x6d\x61\x73\x3d\x53\x63\x68\x65\x6d\x61\x2e\x44\x45\x46\x41\x55\x4c\x54\x3b\x74\x79\x70\x65\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3b\x62\x72\x65\x61\x6b\x3b\x63\x61\x73\x65\x20\x32\x3a\x73\x63\x68\x65\x6d\x61\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3b\x74\x79\x70\x65\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3b\x62\x72\x65\x61\x6b\x3b\x64\x65\x66\x61\x75\x6c\x74\x3a\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x57\x72\x6f\x6e\x67\x20\x6e\x75\x6d\x62\x65\x72\x20\x6f\x66\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x20\x66\x6f\x72\x20\x53\x63\x68\x65\x6d\x61\x2e\x63\x72\x65\x61\x74\x65\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7d\x73\x63\x68\x65\x6d\x61\x73\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x73\x63\x68\x65\x6d\x61\x73\x29\x3b\x74\x79\x70\x65\x73\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x74\x79\x70\x65\x73\x29\x3b\x69\x66\x28\x21\x73\x63\x68\x65\x6d\x61\x73\x2e\x65\x76\x65\x72\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x63\x68\x65\x6d\x61\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x53\x63\x68\x65\x6d\x61\x7d\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x53\x70\x65\x63\x69\x66\x69\x65\x64\x20\x6c\x69\x73\x74\x20\x6f\x66\x20\x73\x75\x70\x65\x72\x20\x73\x63\x68\x65\x6d\x61\x73\x20\x28\x6f\x72\x20\x61\x20\x73\x69\x6e\x67\x6c\x65\x20\x53\x63\x68\x65\x6d\x61\x20\x6f\x62\x6a\x65\x63\x74\x29\x20\x63\x6f\x6e\x74\x61\x69\x6e\x73\x20\x61\x20\x6e\x6f\x6e\x2d\x53\x63\x68\x65\x6d\x61\x20\x6f\x62\x6a\x65\x63\x74\x2e\x22\x29\x7d\x69\x66\x28\x21\x74\x79\x70\x65\x73\x2e\x65\x76\x65\x72\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x79\x70\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x54\x79\x70\x65\x7d\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x53\x70\x65\x63\x69\x66\x69\x65\x64\x20\x6c\x69\x73\x74\x20\x6f\x66\x20\x59\x41\x4d\x4c\x20\x74\x79\x70\x65\x73\x20\x28\x6f\x72\x20\x61\x20\x73\x69\x6e\x67\x6c\x65\x20\x54\x79\x70\x65\x20\x6f\x62\x6a\x65\x63\x74\x29\x20\x63\x6f\x6e\x74\x61\x69\x6e\x73\x20\x61\x20\x6e\x6f\x6e\x2d\x54\x79\x70\x65\x20\x6f\x62\x6a\x65\x63\x74\x2e\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x53\x63\x68\x65\x6d\x61\x28\x7b\x69\x6e\x63\x6c\x75\x64\x65\x3a\x73\x63\x68\x65\x6d\x61\x73\x2c\x65\x78\x70\x6c\x69\x63\x69\x74\x3a\x74\x79\x70\x65\x73\x7d\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x53\x63\x68\x65\x6d\x61\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x39\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x29\x3b\x76\x61\x72\x20\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x5f\x54\x41\x47\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x22\x29\x3b\x76\x61\x72\x20\x44\x4f\x4d\x49\x74\x65\x72\x61\x62\x6c\x65\x73\x3d\x28\x22\x43\x53\x53\x52\x75\x6c\x65\x4c\x69\x73\x74\x2c\x43\x53\x53\x53\x74\x79\x6c\x65\x44\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x2c\x43\x53\x53\x56\x61\x6c\x75\x65\x4c\x69\x73\x74\x2c\x43\x6c\x69\x65\x6e\x74\x52\x65\x63\x74\x4c\x69\x73\x74\x2c\x44\x4f\x4d\x52\x65\x63\x74\x4c\x69\x73\x74\x2c\x44\x4f\x4d\x53\x74\x72\x69\x6e\x67\x4c\x69\x73\x74\x2c\x22\x2b\x22\x44\x4f\x4d\x54\x6f\x6b\x65\x6e\x4c\x69\x73\x74\x2c\x44\x61\x74\x61\x54\x72\x61\x6e\x73\x66\x65\x72\x49\x74\x65\x6d\x4c\x69\x73\x74\x2c\x46\x69\x6c\x65\x4c\x69\x73\x74\x2c\x48\x54\x4d\x4c\x41\x6c\x6c\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x48\x54\x4d\x4c\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x48\x54\x4d\x4c\x46\x6f\x72\x6d\x45\x6c\x65\x6d\x65\x6e\x74\x2c\x48\x54\x4d\x4c\x53\x65\x6c\x65\x63\x74\x45\x6c\x65\x6d\x65\x6e\x74\x2c\x22\x2b\x22\x4d\x65\x64\x69\x61\x4c\x69\x73\x74\x2c\x4d\x69\x6d\x65\x54\x79\x70\x65\x41\x72\x72\x61\x79\x2c\x4e\x61\x6d\x65\x64\x4e\x6f\x64\x65\x4d\x61\x70\x2c\x4e\x6f\x64\x65\x4c\x69\x73\x74\x2c\x50\x61\x69\x6e\x74\x52\x65\x71\x75\x65\x73\x74\x4c\x69\x73\x74\x2c\x50\x6c\x75\x67\x69\x6e\x2c\x50\x6c\x75\x67\x69\x6e\x41\x72\x72\x61\x79\x2c\x53\x56\x47\x4c\x65\x6e\x67\x74\x68\x4c\x69\x73\x74\x2c\x53\x56\x47\x4e\x75\x6d\x62\x65\x72\x4c\x69\x73\x74\x2c\x22\x2b\x22\x53\x56\x47\x50\x61\x74\x68\x53\x65\x67\x4c\x69\x73\x74\x2c\x53\x56\x47\x50\x6f\x69\x6e\x74\x4c\x69\x73\x74\x2c\x53\x56\x47\x53\x74\x72\x69\x6e\x67\x4c\x69\x73\x74\x2c\x53\x56\x47\x54\x72\x61\x6e\x73\x66\x6f\x72\x6d\x4c\x69\x73\x74\x2c\x53\x6f\x75\x72\x63\x65\x42\x75\x66\x66\x65\x72\x4c\x69\x73\x74\x2c\x53\x74\x79\x6c\x65\x53\x68\x65\x65\x74\x4c\x69\x73\x74\x2c\x54\x65\x78\x74\x54\x72\x61\x63\x6b\x43\x75\x65\x4c\x69\x73\x74\x2c\x22\x2b\x22\x54\x65\x78\x74\x54\x72\x61\x63\x6b\x4c\x69\x73\x74\x2c\x54\x6f\x75\x63\x68\x4c\x69\x73\x74\x22\x29\x2e\x73\x70\x6c\x69\x74\x28\x22\x2c\x22\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x44\x4f\x4d\x49\x74\x65\x72\x61\x62\x6c\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x76\x61\x72\x20\x4e\x41\x4d\x45\x3d\x44\x4f\x4d\x49\x74\x65\x72\x61\x62\x6c\x65\x73\x5b\x69\x5d\x3b\x76\x61\x72\x20\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x3d\x67\x6c\x6f\x62\x61\x6c\x5b\x4e\x41\x4d\x45\x5d\x3b\x76\x61\x72\x20\x70\x72\x6f\x74\x6f\x3d\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x26\x26\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x69\x66\x28\x70\x72\x6f\x74\x6f\x26\x26\x21\x70\x72\x6f\x74\x6f\x5b\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x5f\x54\x41\x47\x5d\x29\x68\x69\x64\x65\x28\x70\x72\x6f\x74\x6f\x2c\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x5f\x54\x41\x47\x2c\x4e\x41\x4d\x45\x29\x3b\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x5b\x4e\x41\x4d\x45\x5d\x3d\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x2e\x41\x72\x72\x61\x79\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x7b\x7d\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x2e\x73\x6c\x69\x63\x65\x28\x38\x2c\x2d\x31\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x69\x74\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x61\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x21\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x62\x69\x74\x6d\x61\x70\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x21\x28\x62\x69\x74\x6d\x61\x70\x26\x31\x29\x2c\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x21\x28\x62\x69\x74\x6d\x61\x70\x26\x32\x29\x2c\x77\x72\x69\x74\x61\x62\x6c\x65\x3a\x21\x28\x62\x69\x74\x6d\x61\x70\x26\x34\x29\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x32\x29\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6b\x65\x79\x73\x28\x4f\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x6b\x65\x79\x73\x28\x4f\x2c\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x65\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x2e\x66\x3b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x29\x3b\x76\x61\x72\x20\x54\x41\x47\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x74\x61\x67\x2c\x73\x74\x61\x74\x29\x7b\x69\x66\x28\x69\x74\x26\x26\x21\x68\x61\x73\x28\x69\x74\x3d\x73\x74\x61\x74\x3f\x69\x74\x3a\x69\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x54\x41\x47\x29\x29\x64\x65\x66\x28\x69\x74\x2c\x54\x41\x47\x2c\x7b\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x76\x61\x6c\x75\x65\x3a\x74\x61\x67\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x7b\x7d\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x2e\x73\x6c\x69\x63\x65\x28\x38\x2c\x2d\x31\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x38\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x7b\x7d\x2c\x22\x61\x22\x2c\x7b\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x37\x7d\x7d\x29\x2e\x61\x21\x3d\x37\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x65\x78\x65\x63\x28\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x38\x29\x3b\x76\x61\x72\x20\x6d\x69\x6e\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x3e\x30\x3f\x6d\x69\x6e\x28\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x28\x69\x74\x29\x2c\x39\x30\x30\x37\x31\x39\x39\x32\x35\x34\x37\x34\x30\x39\x39\x31\x29\x3a\x30\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x71\x28\x76\x61\x6c\x75\x65\x2c\x6f\x74\x68\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x6f\x74\x68\x65\x72\x7c\x7c\x76\x61\x6c\x75\x65\x21\x3d\x3d\x76\x61\x6c\x75\x65\x26\x26\x6f\x74\x68\x65\x72\x21\x3d\x3d\x6f\x74\x68\x65\x72\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x65\x71\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x35\x29\x2c\x69\x73\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x69\x73\x4c\x65\x6e\x67\x74\x68\x28\x76\x61\x6c\x75\x65\x2e\x6c\x65\x6e\x67\x74\x68\x29\x26\x26\x21\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x69\x73\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x33\x29\x2c\x73\x74\x72\x69\x6e\x67\x54\x6f\x50\x61\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x34\x29\x2c\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x61\x73\x74\x50\x61\x74\x68\x28\x76\x61\x6c\x75\x65\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4b\x65\x79\x28\x76\x61\x6c\x75\x65\x2c\x6f\x62\x6a\x65\x63\x74\x29\x3f\x5b\x76\x61\x6c\x75\x65\x5d\x3a\x73\x74\x72\x69\x6e\x67\x54\x6f\x50\x61\x74\x68\x28\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x61\x73\x74\x50\x61\x74\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x73\x29\x7b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x3d\x7b\x7d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6b\x65\x79\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x69\x29\x3e\x3d\x30\x29\x63\x6f\x6e\x74\x69\x6e\x75\x65\x3b\x69\x66\x28\x21\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x69\x29\x29\x63\x6f\x6e\x74\x69\x6e\x75\x65\x3b\x74\x61\x72\x67\x65\x74\x5b\x69\x5d\x3d\x6f\x62\x6a\x5b\x69\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x72\x67\x65\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x29\x3b\x76\x61\x72\x20\x63\x61\x6c\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x31\x29\x3b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x49\x74\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x32\x29\x3b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x76\x61\x72\x20\x74\x6f\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x33\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x49\x74\x65\x72\x46\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x34\x29\x3b\x76\x61\x72\x20\x42\x52\x45\x41\x4b\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x52\x45\x54\x55\x52\x4e\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x65\x6e\x74\x72\x69\x65\x73\x2c\x66\x6e\x2c\x74\x68\x61\x74\x2c\x49\x54\x45\x52\x41\x54\x4f\x52\x29\x7b\x76\x61\x72\x20\x69\x74\x65\x72\x46\x6e\x3d\x49\x54\x45\x52\x41\x54\x4f\x52\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x65\x72\x61\x62\x6c\x65\x7d\x3a\x67\x65\x74\x49\x74\x65\x72\x46\x6e\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x66\x3d\x63\x74\x78\x28\x66\x6e\x2c\x74\x68\x61\x74\x2c\x65\x6e\x74\x72\x69\x65\x73\x3f\x32\x3a\x31\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x30\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x2c\x73\x74\x65\x70\x2c\x69\x74\x65\x72\x61\x74\x6f\x72\x2c\x72\x65\x73\x75\x6c\x74\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x65\x72\x46\x6e\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x69\x74\x65\x72\x61\x62\x6c\x65\x21\x22\x29\x3b\x69\x66\x28\x69\x73\x41\x72\x72\x61\x79\x49\x74\x65\x72\x28\x69\x74\x65\x72\x46\x6e\x29\x29\x66\x6f\x72\x28\x6c\x65\x6e\x67\x74\x68\x3d\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x6c\x65\x6e\x67\x74\x68\x3e\x69\x6e\x64\x65\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x65\x6e\x74\x72\x69\x65\x73\x3f\x66\x28\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x73\x74\x65\x70\x3d\x69\x74\x65\x72\x61\x62\x6c\x65\x5b\x69\x6e\x64\x65\x78\x5d\x29\x5b\x30\x5d\x2c\x73\x74\x65\x70\x5b\x31\x5d\x29\x3a\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x5b\x69\x6e\x64\x65\x78\x5d\x29\x3b\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x42\x52\x45\x41\x4b\x7c\x7c\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x52\x45\x54\x55\x52\x4e\x29\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x65\x6c\x73\x65\x20\x66\x6f\x72\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x3d\x69\x74\x65\x72\x46\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x3b\x21\x28\x73\x74\x65\x70\x3d\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x6e\x65\x78\x74\x28\x29\x29\x2e\x64\x6f\x6e\x65\x3b\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x63\x61\x6c\x6c\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x2c\x66\x2c\x73\x74\x65\x70\x2e\x76\x61\x6c\x75\x65\x2c\x65\x6e\x74\x72\x69\x65\x73\x29\x3b\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x42\x52\x45\x41\x4b\x7c\x7c\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x52\x45\x54\x55\x52\x4e\x29\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x42\x52\x45\x41\x4b\x3d\x42\x52\x45\x41\x4b\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x52\x45\x54\x55\x52\x4e\x3d\x52\x45\x54\x55\x52\x4e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x72\x65\x61\x73\x6f\x6e\x2c\x6d\x61\x72\x6b\x29\x7b\x45\x72\x72\x6f\x72\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x29\x3b\x74\x68\x69\x73\x2e\x6e\x61\x6d\x65\x3d\x22\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x22\x3b\x74\x68\x69\x73\x2e\x72\x65\x61\x73\x6f\x6e\x3d\x72\x65\x61\x73\x6f\x6e\x3b\x74\x68\x69\x73\x2e\x6d\x61\x72\x6b\x3d\x6d\x61\x72\x6b\x3b\x74\x68\x69\x73\x2e\x6d\x65\x73\x73\x61\x67\x65\x3d\x28\x74\x68\x69\x73\x2e\x72\x65\x61\x73\x6f\x6e\x7c\x7c\x22\x28\x75\x6e\x6b\x6e\x6f\x77\x6e\x20\x72\x65\x61\x73\x6f\x6e\x29\x22\x29\x2b\x28\x74\x68\x69\x73\x2e\x6d\x61\x72\x6b\x3f\x22\x20\x22\x2b\x74\x68\x69\x73\x2e\x6d\x61\x72\x6b\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x3a\x22\x22\x29\x3b\x69\x66\x28\x45\x72\x72\x6f\x72\x2e\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x63\x6b\x54\x72\x61\x63\x65\x29\x7b\x45\x72\x72\x6f\x72\x2e\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x63\x6b\x54\x72\x61\x63\x65\x28\x74\x68\x69\x73\x2c\x74\x68\x69\x73\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x29\x7d\x65\x6c\x73\x65\x7b\x74\x68\x69\x73\x2e\x73\x74\x61\x63\x6b\x3d\x28\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x29\x2e\x73\x74\x61\x63\x6b\x7c\x7c\x22\x22\x7d\x7d\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x28\x45\x72\x72\x6f\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x29\x3b\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x3b\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x63\x6f\x6d\x70\x61\x63\x74\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x74\x68\x69\x73\x2e\x6e\x61\x6d\x65\x2b\x22\x3a\x20\x22\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x74\x68\x69\x73\x2e\x72\x65\x61\x73\x6f\x6e\x7c\x7c\x22\x28\x75\x6e\x6b\x6e\x6f\x77\x6e\x20\x72\x65\x61\x73\x6f\x6e\x29\x22\x3b\x69\x66\x28\x21\x63\x6f\x6d\x70\x61\x63\x74\x26\x26\x74\x68\x69\x73\x2e\x6d\x61\x72\x6b\x29\x7b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x20\x22\x2b\x74\x68\x69\x73\x2e\x6d\x61\x72\x6b\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x53\x63\x68\x65\x6d\x61\x28\x7b\x69\x6e\x63\x6c\x75\x64\x65\x3a\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x33\x29\x5d\x2c\x69\x6d\x70\x6c\x69\x63\x69\x74\x3a\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x36\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x37\x29\x5d\x2c\x65\x78\x70\x6c\x69\x63\x69\x74\x3a\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x38\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x30\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x31\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x32\x29\x5d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x32\x29\x2c\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x28\x73\x6f\x75\x72\x63\x65\x2c\x70\x72\x6f\x70\x73\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x29\x7b\x76\x61\x72\x20\x69\x73\x4e\x65\x77\x3d\x21\x6f\x62\x6a\x65\x63\x74\x3b\x6f\x62\x6a\x65\x63\x74\x7c\x7c\x28\x6f\x62\x6a\x65\x63\x74\x3d\x7b\x7d\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x70\x72\x6f\x70\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x3d\x70\x72\x6f\x70\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x76\x61\x72\x20\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x3f\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x28\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x2c\x73\x6f\x75\x72\x63\x65\x5b\x6b\x65\x79\x5d\x2c\x6b\x65\x79\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x73\x6f\x75\x72\x63\x65\x29\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x73\x6f\x75\x72\x63\x65\x5b\x6b\x65\x79\x5d\x7d\x69\x66\x28\x69\x73\x4e\x65\x77\x29\x7b\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x6e\x65\x77\x56\x61\x6c\x75\x65\x29\x7d\x65\x6c\x73\x65\x7b\x61\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x6e\x65\x77\x56\x61\x6c\x75\x65\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x38\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x72\x75\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x76\x61\x72\x20\x64\x50\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x32\x29\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x33\x29\x3b\x76\x61\x72\x20\x49\x45\x5f\x50\x52\x4f\x54\x4f\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x31\x29\x28\x22\x49\x45\x5f\x50\x52\x4f\x54\x4f\x22\x29\x3b\x76\x61\x72\x20\x45\x6d\x70\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x7d\x3b\x76\x61\x72\x20\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x3d\x22\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x22\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x69\x66\x72\x61\x6d\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x38\x29\x28\x22\x69\x66\x72\x61\x6d\x65\x22\x29\x3b\x76\x61\x72\x20\x69\x3d\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x6c\x74\x3d\x22\x3c\x22\x3b\x76\x61\x72\x20\x67\x74\x3d\x22\x3e\x22\x3b\x76\x61\x72\x20\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x3b\x69\x66\x72\x61\x6d\x65\x2e\x73\x74\x79\x6c\x65\x2e\x64\x69\x73\x70\x6c\x61\x79\x3d\x22\x6e\x6f\x6e\x65\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x33\x29\x2e\x61\x70\x70\x65\x6e\x64\x43\x68\x69\x6c\x64\x28\x69\x66\x72\x61\x6d\x65\x29\x3b\x69\x66\x72\x61\x6d\x65\x2e\x73\x72\x63\x3d\x22\x6a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3a\x22\x3b\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x3d\x69\x66\x72\x61\x6d\x65\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x57\x69\x6e\x64\x6f\x77\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3b\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x6f\x70\x65\x6e\x28\x29\x3b\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x6c\x74\x2b\x22\x73\x63\x72\x69\x70\x74\x22\x2b\x67\x74\x2b\x22\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x46\x3d\x4f\x62\x6a\x65\x63\x74\x22\x2b\x6c\x74\x2b\x22\x2f\x73\x63\x72\x69\x70\x74\x22\x2b\x67\x74\x29\x3b\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x6c\x6f\x73\x65\x28\x29\x3b\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x3d\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x46\x3b\x77\x68\x69\x6c\x65\x28\x69\x2d\x2d\x29\x64\x65\x6c\x65\x74\x65\x20\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x5b\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x5b\x69\x5d\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x28\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x28\x4f\x2c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3b\x69\x66\x28\x4f\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x45\x6d\x70\x74\x79\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3d\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x45\x6d\x70\x74\x79\x3b\x45\x6d\x70\x74\x79\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3d\x6e\x75\x6c\x6c\x3b\x72\x65\x73\x75\x6c\x74\x5b\x49\x45\x5f\x50\x52\x4f\x54\x4f\x5d\x3d\x4f\x7d\x65\x6c\x73\x65\x20\x72\x65\x73\x75\x6c\x74\x3d\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x72\x65\x73\x75\x6c\x74\x3a\x64\x50\x73\x28\x72\x65\x73\x75\x6c\x74\x2c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x30\x29\x3b\x76\x61\x72\x20\x6d\x69\x6e\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x3e\x30\x3f\x6d\x69\x6e\x28\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x28\x69\x74\x29\x2c\x39\x30\x30\x37\x31\x39\x39\x32\x35\x34\x37\x34\x30\x39\x39\x31\x29\x3a\x30\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x69\x64\x3d\x30\x3b\x76\x61\x72\x20\x70\x78\x3d\x4d\x61\x74\x68\x2e\x72\x61\x6e\x64\x6f\x6d\x28\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x53\x79\x6d\x62\x6f\x6c\x28\x22\x2e\x63\x6f\x6e\x63\x61\x74\x28\x6b\x65\x79\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x22\x3a\x6b\x65\x79\x2c\x22\x29\x5f\x22\x2c\x28\x2b\x2b\x69\x64\x2b\x70\x78\x29\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x33\x36\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x29\x3b\x76\x61\x72\x20\x54\x41\x47\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x22\x29\x3b\x76\x61\x72\x20\x41\x52\x47\x3d\x63\x6f\x66\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x7d\x28\x29\x29\x3d\x3d\x22\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x22\x3b\x76\x61\x72\x20\x74\x72\x79\x47\x65\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x6b\x65\x79\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x5b\x6b\x65\x79\x5d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x4f\x2c\x54\x2c\x42\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x69\x74\x3d\x3d\x3d\x6e\x75\x6c\x6c\x3f\x22\x4e\x75\x6c\x6c\x22\x3a\x74\x79\x70\x65\x6f\x66\x28\x54\x3d\x74\x72\x79\x47\x65\x74\x28\x4f\x3d\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x2c\x54\x41\x47\x29\x29\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x3f\x54\x3a\x41\x52\x47\x3f\x63\x6f\x66\x28\x4f\x29\x3a\x28\x42\x3d\x63\x6f\x66\x28\x4f\x29\x29\x3d\x3d\x22\x4f\x62\x6a\x65\x63\x74\x22\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x4f\x2e\x63\x61\x6c\x6c\x65\x65\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x22\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x22\x3a\x42\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x29\x3b\x76\x61\x72\x20\x49\x45\x38\x5f\x44\x4f\x4d\x5f\x44\x45\x46\x49\x4e\x45\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x39\x29\x3b\x76\x61\x72\x20\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x30\x29\x3b\x76\x61\x72\x20\x64\x50\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x37\x29\x3f\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x4f\x2c\x50\x2c\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x7b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x50\x3d\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x50\x2c\x74\x72\x75\x65\x29\x3b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x3b\x69\x66\x28\x49\x45\x38\x5f\x44\x4f\x4d\x5f\x44\x45\x46\x49\x4e\x45\x29\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x50\x28\x4f\x2c\x50\x2c\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x69\x66\x28\x22\x67\x65\x74\x22\x69\x6e\x20\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x7c\x7c\x22\x73\x65\x74\x22\x69\x6e\x20\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x41\x63\x63\x65\x73\x73\x6f\x72\x73\x20\x6e\x6f\x74\x20\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x21\x22\x29\x3b\x69\x66\x28\x22\x76\x61\x6c\x75\x65\x22\x69\x6e\x20\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x29\x4f\x5b\x50\x5d\x3d\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73\x2e\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x7b\x7d\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x69\x74\x2c\x6b\x65\x79\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x63\x65\x69\x6c\x3d\x4d\x61\x74\x68\x2e\x63\x65\x69\x6c\x3b\x76\x61\x72\x20\x66\x6c\x6f\x6f\x72\x3d\x4d\x61\x74\x68\x2e\x66\x6c\x6f\x6f\x72\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4e\x61\x4e\x28\x69\x74\x3d\x2b\x69\x74\x29\x3f\x30\x3a\x28\x69\x74\x3e\x30\x3f\x66\x6c\x6f\x6f\x72\x3a\x63\x65\x69\x6c\x29\x28\x69\x74\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x30\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x2c\x74\x68\x61\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x29\x3b\x69\x66\x28\x74\x68\x61\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x3b\x73\x77\x69\x74\x63\x68\x28\x6c\x65\x6e\x67\x74\x68\x29\x7b\x63\x61\x73\x65\x20\x31\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x29\x7d\x3b\x63\x61\x73\x65\x20\x32\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x2c\x62\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x2c\x62\x29\x7d\x3b\x63\x61\x73\x65\x20\x33\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x2c\x62\x2c\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x2c\x62\x2c\x63\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x69\x74\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x61\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x21\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x35\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x49\x4f\x62\x6a\x65\x63\x74\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x69\x74\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x29\x3b\x76\x61\x72\x20\x72\x65\x64\x65\x66\x69\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x29\x3b\x76\x61\x72\x20\x66\x61\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x38\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x29\x3b\x76\x61\x72\x20\x77\x6b\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4b\x45\x59\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x65\x78\x65\x63\x29\x7b\x76\x61\x72\x20\x53\x59\x4d\x42\x4f\x4c\x3d\x77\x6b\x73\x28\x4b\x45\x59\x29\x3b\x76\x61\x72\x20\x66\x6e\x73\x3d\x65\x78\x65\x63\x28\x64\x65\x66\x69\x6e\x65\x64\x2c\x53\x59\x4d\x42\x4f\x4c\x2c\x22\x22\x5b\x4b\x45\x59\x5d\x29\x3b\x76\x61\x72\x20\x73\x74\x72\x66\x6e\x3d\x66\x6e\x73\x5b\x30\x5d\x3b\x76\x61\x72\x20\x72\x78\x66\x6e\x3d\x66\x6e\x73\x5b\x31\x5d\x3b\x69\x66\x28\x66\x61\x69\x6c\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x4f\x3d\x7b\x7d\x3b\x4f\x5b\x53\x59\x4d\x42\x4f\x4c\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x37\x7d\x3b\x72\x65\x74\x75\x72\x6e\x22\x22\x5b\x4b\x45\x59\x5d\x28\x4f\x29\x21\x3d\x37\x7d\x29\x29\x7b\x72\x65\x64\x65\x66\x69\x6e\x65\x28\x53\x74\x72\x69\x6e\x67\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x4b\x45\x59\x2c\x73\x74\x72\x66\x6e\x29\x3b\x68\x69\x64\x65\x28\x52\x65\x67\x45\x78\x70\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x53\x59\x4d\x42\x4f\x4c\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x32\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x72\x69\x6e\x67\x2c\x61\x72\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x78\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x73\x74\x72\x69\x6e\x67\x2c\x74\x68\x69\x73\x2c\x61\x72\x67\x29\x7d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x78\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x73\x74\x72\x69\x6e\x67\x2c\x74\x68\x69\x73\x29\x7d\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x7b\x7d\x2e\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x5f\x42\x59\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x41\x55\x54\x48\x5f\x45\x52\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x3d\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x42\x61\x74\x63\x68\x3d\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x42\x61\x74\x63\x68\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x65\x77\x53\x70\x65\x63\x45\x72\x72\x3d\x6e\x65\x77\x53\x70\x65\x63\x45\x72\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x65\x77\x53\x70\x65\x63\x45\x72\x72\x42\x61\x74\x63\x68\x3d\x6e\x65\x77\x53\x70\x65\x63\x45\x72\x72\x42\x61\x74\x63\x68\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x3d\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6c\x65\x61\x72\x3d\x63\x6c\x65\x61\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6c\x65\x61\x72\x42\x79\x3d\x63\x6c\x65\x61\x72\x42\x79\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x38\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x3d\x22\x65\x72\x72\x5f\x6e\x65\x77\x5f\x74\x68\x72\x6f\x77\x6e\x5f\x65\x72\x72\x22\x3b\x76\x61\x72\x20\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x3d\x22\x65\x72\x72\x5f\x6e\x65\x77\x5f\x74\x68\x72\x6f\x77\x6e\x5f\x65\x72\x72\x5f\x62\x61\x74\x63\x68\x22\x3b\x76\x61\x72\x20\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x3d\x22\x65\x72\x72\x5f\x6e\x65\x77\x5f\x73\x70\x65\x63\x5f\x65\x72\x72\x22\x3b\x76\x61\x72\x20\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x3d\x22\x65\x72\x72\x5f\x6e\x65\x77\x5f\x73\x70\x65\x63\x5f\x65\x72\x72\x5f\x62\x61\x74\x63\x68\x22\x3b\x76\x61\x72\x20\x4e\x45\x57\x5f\x41\x55\x54\x48\x5f\x45\x52\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4e\x45\x57\x5f\x41\x55\x54\x48\x5f\x45\x52\x52\x3d\x22\x65\x72\x72\x5f\x6e\x65\x77\x5f\x61\x75\x74\x68\x5f\x65\x72\x72\x22\x3b\x76\x61\x72\x20\x43\x4c\x45\x41\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x3d\x22\x65\x72\x72\x5f\x63\x6c\x65\x61\x72\x22\x3b\x76\x61\x72\x20\x43\x4c\x45\x41\x52\x5f\x42\x59\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x5f\x42\x59\x3d\x22\x65\x72\x72\x5f\x63\x6c\x65\x61\x72\x5f\x62\x79\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x28\x30\x2c\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x72\x72\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x42\x61\x74\x63\x68\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x65\x72\x72\x6f\x72\x73\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x65\x77\x53\x70\x65\x63\x45\x72\x72\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x65\x72\x72\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x65\x77\x53\x70\x65\x63\x45\x72\x72\x42\x61\x74\x63\x68\x28\x65\x72\x72\x41\x72\x72\x61\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x65\x72\x72\x41\x72\x72\x61\x79\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x4e\x45\x57\x5f\x41\x55\x54\x48\x5f\x45\x52\x52\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x65\x72\x72\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x72\x28\x29\x7b\x76\x61\x72\x20\x66\x69\x6c\x74\x65\x72\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3a\x7b\x7d\x3b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x43\x4c\x45\x41\x52\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x66\x69\x6c\x74\x65\x72\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x72\x42\x79\x28\x29\x7b\x76\x61\x72\x20\x66\x69\x6c\x74\x65\x72\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x3b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x43\x4c\x45\x41\x52\x5f\x42\x59\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x66\x69\x6c\x74\x65\x72\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x29\x3b\x76\x61\x72\x20\x73\x79\x6d\x62\x6f\x6c\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x79\x6d\x62\x6f\x6c\x5d\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x53\x79\x6d\x62\x6f\x6c\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x7c\x7c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x3d\x3d\x73\x79\x6d\x62\x6f\x6c\x54\x61\x67\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x53\x79\x6d\x62\x6f\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x29\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x3d\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x28\x4f\x62\x6a\x65\x63\x74\x2c\x22\x63\x72\x65\x61\x74\x65\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x43\x6c\x65\x61\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x33\x29\x2c\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x44\x65\x6c\x65\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x34\x29\x2c\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x47\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x35\x29\x2c\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x48\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x36\x29\x2c\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x53\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x28\x65\x6e\x74\x72\x69\x65\x73\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x65\x6e\x74\x72\x69\x65\x73\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x65\x6e\x74\x72\x69\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x74\x68\x69\x73\x2e\x63\x6c\x65\x61\x72\x28\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3d\x65\x6e\x74\x72\x69\x65\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x74\x68\x69\x73\x2e\x73\x65\x74\x28\x65\x6e\x74\x72\x79\x5b\x30\x5d\x2c\x65\x6e\x74\x72\x79\x5b\x31\x5d\x29\x7d\x7d\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x63\x6c\x65\x61\x72\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x43\x6c\x65\x61\x72\x3b\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x44\x65\x6c\x65\x74\x65\x3b\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x67\x65\x74\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x47\x65\x74\x3b\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x48\x61\x73\x3b\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x65\x74\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x53\x65\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x65\x71\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x28\x61\x72\x72\x61\x79\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x2d\x2d\x29\x7b\x69\x66\x28\x65\x71\x28\x61\x72\x72\x61\x79\x5b\x6c\x65\x6e\x67\x74\x68\x5d\x5b\x30\x5d\x2c\x6b\x65\x79\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x6e\x67\x74\x68\x7d\x7d\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4b\x65\x79\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x39\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x28\x6d\x61\x70\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x6d\x61\x70\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4b\x65\x79\x61\x62\x6c\x65\x28\x6b\x65\x79\x29\x3f\x64\x61\x74\x61\x5b\x74\x79\x70\x65\x6f\x66\x20\x6b\x65\x79\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x3f\x22\x73\x74\x72\x69\x6e\x67\x22\x3a\x22\x68\x61\x73\x68\x22\x5d\x3a\x64\x61\x74\x61\x2e\x6d\x61\x70\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x4d\x61\x74\x63\x68\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x35\x29\x2c\x62\x61\x73\x65\x4d\x61\x74\x63\x68\x65\x73\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x33\x29\x2c\x69\x64\x65\x6e\x74\x69\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x39\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x70\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x39\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x64\x65\x6e\x74\x69\x74\x79\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x3f\x62\x61\x73\x65\x4d\x61\x74\x63\x68\x65\x73\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x76\x61\x6c\x75\x65\x5b\x30\x5d\x2c\x76\x61\x6c\x75\x65\x5b\x31\x5d\x29\x3a\x62\x61\x73\x65\x4d\x61\x74\x63\x68\x65\x73\x28\x76\x61\x6c\x75\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x70\x65\x72\x74\x79\x28\x76\x61\x6c\x75\x65\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x4d\x41\x58\x5f\x53\x41\x46\x45\x5f\x49\x4e\x54\x45\x47\x45\x52\x3d\x39\x30\x30\x37\x31\x39\x39\x32\x35\x34\x37\x34\x30\x39\x39\x31\x3b\x76\x61\x72\x20\x72\x65\x49\x73\x55\x69\x6e\x74\x3d\x2f\x5e\x28\x3f\x3a\x30\x7c\x5b\x31\x2d\x39\x5d\x5c\x64\x2a\x29\x24\x2f\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x49\x6e\x64\x65\x78\x28\x76\x61\x6c\x75\x65\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3b\x6c\x65\x6e\x67\x74\x68\x3d\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x6e\x75\x6c\x6c\x3f\x4d\x41\x58\x5f\x53\x41\x46\x45\x5f\x49\x4e\x54\x45\x47\x45\x52\x3a\x6c\x65\x6e\x67\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x21\x21\x6c\x65\x6e\x67\x74\x68\x26\x26\x28\x74\x79\x70\x65\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x7c\x7c\x74\x79\x70\x65\x21\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x26\x26\x72\x65\x49\x73\x55\x69\x6e\x74\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x75\x65\x29\x29\x26\x26\x28\x76\x61\x6c\x75\x65\x3e\x2d\x31\x26\x26\x76\x61\x6c\x75\x65\x25\x31\x3d\x3d\x30\x26\x26\x76\x61\x6c\x75\x65\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x49\x6e\x64\x65\x78\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x44\x61\x74\x61\x56\x69\x65\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x38\x29\x2c\x4d\x61\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x30\x29\x2c\x50\x72\x6f\x6d\x69\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x39\x29\x2c\x53\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x30\x29\x2c\x57\x65\x61\x6b\x4d\x61\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x31\x29\x2c\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x29\x2c\x74\x6f\x53\x6f\x75\x72\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x36\x29\x3b\x76\x61\x72\x20\x6d\x61\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4d\x61\x70\x5d\x22\x2c\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4f\x62\x6a\x65\x63\x74\x5d\x22\x2c\x70\x72\x6f\x6d\x69\x73\x65\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x50\x72\x6f\x6d\x69\x73\x65\x5d\x22\x2c\x73\x65\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x65\x74\x5d\x22\x2c\x77\x65\x61\x6b\x4d\x61\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x57\x65\x61\x6b\x4d\x61\x70\x5d\x22\x3b\x76\x61\x72\x20\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x44\x61\x74\x61\x56\x69\x65\x77\x5d\x22\x3b\x76\x61\x72\x20\x64\x61\x74\x61\x56\x69\x65\x77\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3d\x74\x6f\x53\x6f\x75\x72\x63\x65\x28\x44\x61\x74\x61\x56\x69\x65\x77\x29\x2c\x6d\x61\x70\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3d\x74\x6f\x53\x6f\x75\x72\x63\x65\x28\x4d\x61\x70\x29\x2c\x70\x72\x6f\x6d\x69\x73\x65\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3d\x74\x6f\x53\x6f\x75\x72\x63\x65\x28\x50\x72\x6f\x6d\x69\x73\x65\x29\x2c\x73\x65\x74\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3d\x74\x6f\x53\x6f\x75\x72\x63\x65\x28\x53\x65\x74\x29\x2c\x77\x65\x61\x6b\x4d\x61\x70\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3d\x74\x6f\x53\x6f\x75\x72\x63\x65\x28\x57\x65\x61\x6b\x4d\x61\x70\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x54\x61\x67\x3d\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x3b\x69\x66\x28\x44\x61\x74\x61\x56\x69\x65\x77\x26\x26\x67\x65\x74\x54\x61\x67\x28\x6e\x65\x77\x20\x44\x61\x74\x61\x56\x69\x65\x77\x28\x6e\x65\x77\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x28\x31\x29\x29\x29\x21\x3d\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x7c\x7c\x4d\x61\x70\x26\x26\x67\x65\x74\x54\x61\x67\x28\x6e\x65\x77\x20\x4d\x61\x70\x29\x21\x3d\x6d\x61\x70\x54\x61\x67\x7c\x7c\x50\x72\x6f\x6d\x69\x73\x65\x26\x26\x67\x65\x74\x54\x61\x67\x28\x50\x72\x6f\x6d\x69\x73\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x29\x29\x21\x3d\x70\x72\x6f\x6d\x69\x73\x65\x54\x61\x67\x7c\x7c\x53\x65\x74\x26\x26\x67\x65\x74\x54\x61\x67\x28\x6e\x65\x77\x20\x53\x65\x74\x29\x21\x3d\x73\x65\x74\x54\x61\x67\x7c\x7c\x57\x65\x61\x6b\x4d\x61\x70\x26\x26\x67\x65\x74\x54\x61\x67\x28\x6e\x65\x77\x20\x57\x65\x61\x6b\x4d\x61\x70\x29\x21\x3d\x77\x65\x61\x6b\x4d\x61\x70\x54\x61\x67\x29\x7b\x67\x65\x74\x54\x61\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x2c\x43\x74\x6f\x72\x3d\x72\x65\x73\x75\x6c\x74\x3d\x3d\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x3f\x76\x61\x6c\x75\x65\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x63\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3d\x43\x74\x6f\x72\x3f\x74\x6f\x53\x6f\x75\x72\x63\x65\x28\x43\x74\x6f\x72\x29\x3a\x22\x22\x3b\x69\x66\x28\x63\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x63\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x29\x7b\x63\x61\x73\x65\x20\x64\x61\x74\x61\x56\x69\x65\x77\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x3b\x63\x61\x73\x65\x20\x6d\x61\x70\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x70\x54\x61\x67\x3b\x63\x61\x73\x65\x20\x70\x72\x6f\x6d\x69\x73\x65\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x54\x61\x67\x3b\x63\x61\x73\x65\x20\x73\x65\x74\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x74\x54\x61\x67\x3b\x63\x61\x73\x65\x20\x77\x65\x61\x6b\x4d\x61\x70\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x77\x65\x61\x6b\x4d\x61\x70\x54\x61\x67\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x54\x61\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x65\x66\x6f\x72\x65\x45\x78\x65\x63\x75\x74\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x61\x6e\x45\x78\x65\x63\x75\x74\x65\x53\x63\x68\x65\x6d\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x68\x61\x73\x48\x6f\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x53\x65\x74\x74\x69\x6e\x67\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x61\x67\x67\x65\x64\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x57\x69\x74\x68\x54\x61\x67\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x61\x67\x44\x65\x74\x61\x69\x6c\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x61\x67\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x57\x69\x74\x68\x52\x6f\x6f\x74\x49\x6e\x68\x65\x72\x69\x74\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x68\x6f\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x62\x61\x73\x65\x50\x61\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x69\x6e\x64\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x74\x68\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x6d\x76\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x65\x72\x73\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x6e\x66\x6f\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4f\x41\x53\x33\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x53\x6f\x75\x72\x63\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x53\x74\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x72\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x61\x73\x74\x45\x72\x72\x6f\x72\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x3d\x67\x65\x74\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x56\x61\x6c\x75\x65\x73\x3d\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x56\x61\x6c\x75\x65\x73\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x49\x6e\x63\x6c\x75\x64\x65\x49\x6e\x3d\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x49\x6e\x63\x6c\x75\x64\x65\x49\x6e\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x49\x6e\x63\x6c\x75\x64\x65\x54\x79\x70\x65\x3d\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x49\x6e\x63\x6c\x75\x64\x65\x54\x79\x70\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x73\x3d\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x73\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x50\x72\x6f\x64\x75\x63\x65\x73\x46\x6f\x72\x3d\x63\x75\x72\x72\x65\x6e\x74\x50\x72\x6f\x64\x75\x63\x65\x73\x46\x6f\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x4f\x70\x74\x69\x6f\x6e\x73\x46\x6f\x72\x3d\x70\x72\x6f\x64\x75\x63\x65\x73\x4f\x70\x74\x69\x6f\x6e\x73\x46\x6f\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x4f\x70\x74\x69\x6f\x6e\x73\x46\x6f\x72\x3d\x63\x6f\x6e\x73\x75\x6d\x65\x73\x4f\x70\x74\x69\x6f\x6e\x73\x46\x6f\x72\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x44\x45\x46\x41\x55\x4c\x54\x5f\x54\x41\x47\x3d\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x3b\x76\x61\x72\x20\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x48\x4f\x44\x53\x3d\x5b\x22\x67\x65\x74\x22\x2c\x22\x70\x75\x74\x22\x2c\x22\x70\x6f\x73\x74\x22\x2c\x22\x64\x65\x6c\x65\x74\x65\x22\x2c\x22\x6f\x70\x74\x69\x6f\x6e\x73\x22\x2c\x22\x68\x65\x61\x64\x22\x2c\x22\x70\x61\x74\x63\x68\x22\x2c\x22\x74\x72\x61\x63\x65\x22\x5d\x3b\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x74\x65\x28\x5f\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x74\x61\x74\x65\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x3b\x76\x61\x72\x20\x6c\x61\x73\x74\x45\x72\x72\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x61\x73\x74\x45\x72\x72\x6f\x72\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x6c\x61\x73\x74\x45\x72\x72\x6f\x72\x22\x29\x7d\x29\x3b\x76\x61\x72\x20\x75\x72\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x72\x6c\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x74\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x53\x74\x72\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x73\x70\x65\x63\x22\x29\x7c\x7c\x22\x22\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x6f\x75\x72\x63\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x53\x6f\x75\x72\x63\x65\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x73\x70\x65\x63\x53\x6f\x75\x72\x63\x65\x22\x29\x7c\x7c\x22\x6e\x6f\x74\x2d\x65\x64\x69\x74\x6f\x72\x22\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x4a\x73\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x6a\x73\x6f\x6e\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x29\x29\x2c\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7d\x3b\x76\x61\x72\x20\x6d\x65\x72\x67\x65\x72\x46\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x65\x72\x67\x65\x72\x46\x6e\x28\x6f\x6c\x64\x56\x61\x6c\x2c\x6e\x65\x77\x56\x61\x6c\x29\x7b\x69\x66\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x6f\x6c\x64\x56\x61\x6c\x29\x26\x26\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x6e\x65\x77\x56\x61\x6c\x29\x29\x7b\x69\x66\x28\x6e\x65\x77\x56\x61\x6c\x2e\x67\x65\x74\x28\x22\x24\x24\x72\x65\x66\x22\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x56\x61\x6c\x7d\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x2e\x6d\x65\x72\x67\x65\x57\x69\x74\x68\x28\x6d\x65\x72\x67\x65\x72\x46\x6e\x2c\x6f\x6c\x64\x56\x61\x6c\x2c\x6e\x65\x77\x56\x61\x6c\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x56\x61\x6c\x7d\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x2e\x6d\x65\x72\x67\x65\x57\x69\x74\x68\x28\x6d\x65\x72\x67\x65\x72\x46\x6e\x2c\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x6a\x73\x6f\x6e\x22\x29\x2c\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x22\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x70\x65\x63\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x70\x65\x63\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4f\x41\x53\x33\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x29\x3b\x76\x61\x72\x20\x69\x6e\x66\x6f\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x6e\x66\x6f\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x74\x75\x72\x6e\x53\x65\x6c\x66\x4f\x72\x4e\x65\x77\x4d\x61\x70\x28\x73\x70\x65\x63\x26\x26\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x69\x6e\x66\x6f\x22\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x74\x75\x72\x6e\x53\x65\x6c\x66\x4f\x72\x4e\x65\x77\x4d\x61\x70\x28\x73\x70\x65\x63\x26\x26\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x22\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x65\x72\x73\x69\x6f\x6e\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x69\x6e\x66\x6f\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x6e\x66\x6f\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x66\x6f\x26\x26\x69\x6e\x66\x6f\x2e\x67\x65\x74\x28\x22\x76\x65\x72\x73\x69\x6f\x6e\x22\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x65\x6d\x76\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x6d\x76\x65\x72\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x76\x65\x72\x73\x69\x6f\x6e\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x65\x72\x73\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x2f\x76\x3f\x28\x5b\x30\x2d\x39\x5d\x2a\x29\x5c\x2e\x28\x5b\x30\x2d\x39\x5d\x2a\x29\x5c\x2e\x28\x5b\x30\x2d\x39\x5d\x2a\x29\x2f\x69\x2e\x65\x78\x65\x63\x28\x76\x65\x72\x73\x69\x6f\x6e\x29\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x29\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x74\x68\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x73\x22\x29\x7d\x29\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x70\x61\x74\x68\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x74\x68\x73\x29\x7b\x69\x66\x28\x21\x70\x61\x74\x68\x73\x7c\x7c\x70\x61\x74\x68\x73\x2e\x73\x69\x7a\x65\x3c\x31\x29\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x3b\x76\x61\x72\x20\x6c\x69\x73\x74\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x3b\x69\x66\x28\x21\x70\x61\x74\x68\x73\x7c\x7c\x21\x70\x61\x74\x68\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x7d\x70\x61\x74\x68\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x74\x68\x2c\x70\x61\x74\x68\x4e\x61\x6d\x65\x29\x7b\x69\x66\x28\x21\x70\x61\x74\x68\x7c\x7c\x21\x70\x61\x74\x68\x2e\x66\x6f\x72\x45\x61\x63\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x7d\x7d\x70\x61\x74\x68\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x69\x66\x28\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x48\x4f\x44\x53\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x6d\x65\x74\x68\x6f\x64\x29\x3c\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x6c\x69\x73\x74\x3d\x6c\x69\x73\x74\x2e\x70\x75\x73\x68\x28\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x69\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2b\x22\x2d\x22\x2b\x70\x61\x74\x68\x4e\x61\x6d\x65\x7d\x29\x29\x7d\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6c\x69\x73\x74\x7d\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x53\x65\x74\x29\x28\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x73\x75\x6d\x65\x73\x22\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x64\x75\x63\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x53\x65\x74\x29\x28\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x70\x72\x6f\x64\x75\x63\x65\x73\x22\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x73\x65\x63\x75\x72\x69\x74\x79\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x29\x7d\x29\x3b\x76\x61\x72\x20\x66\x69\x6e\x64\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x69\x6e\x64\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x69\x6e\x64\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x6e\x61\x6d\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x64\x52\x65\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x22\x2c\x22\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x2c\x6e\x75\x6c\x6c\x29\x3b\x76\x61\x72\x20\x75\x6e\x72\x65\x73\x6f\x6c\x76\x65\x64\x52\x65\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6a\x73\x6f\x6e\x22\x2c\x22\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x2c\x6e\x75\x6c\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x64\x52\x65\x73\x7c\x7c\x75\x6e\x72\x65\x73\x6f\x6c\x76\x65\x64\x52\x65\x73\x7c\x7c\x6e\x75\x6c\x6c\x7d\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x3d\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x72\x65\x73\x29\x3f\x72\x65\x73\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x29\x3b\x76\x61\x72\x20\x62\x61\x73\x65\x50\x61\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x62\x61\x73\x65\x50\x61\x74\x68\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x62\x61\x73\x65\x50\x61\x74\x68\x22\x29\x7d\x29\x3b\x76\x61\x72\x20\x68\x6f\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x68\x6f\x73\x74\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x68\x6f\x73\x74\x22\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x65\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x57\x69\x74\x68\x52\x6f\x6f\x74\x49\x6e\x68\x65\x72\x69\x74\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x57\x69\x74\x68\x52\x6f\x6f\x74\x49\x6e\x68\x65\x72\x69\x74\x65\x64\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2c\x63\x6f\x6e\x73\x75\x6d\x65\x73\x2c\x70\x72\x6f\x64\x75\x63\x65\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2c\x63\x6f\x6e\x73\x75\x6d\x65\x73\x2c\x70\x72\x6f\x64\x75\x63\x65\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x73\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x29\x7b\x69\x66\x28\x6f\x70\x29\x7b\x69\x66\x28\x21\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x6f\x70\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x2e\x77\x69\x74\x68\x4d\x75\x74\x61\x74\x69\x6f\x6e\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x29\x7b\x69\x66\x28\x21\x6f\x70\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x73\x75\x6d\x65\x73\x22\x29\x29\x7b\x6f\x70\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x63\x6f\x6e\x73\x75\x6d\x65\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x53\x65\x74\x29\x28\x61\x29\x2e\x6d\x65\x72\x67\x65\x28\x63\x6f\x6e\x73\x75\x6d\x65\x73\x29\x7d\x29\x7d\x69\x66\x28\x21\x6f\x70\x2e\x67\x65\x74\x28\x22\x70\x72\x6f\x64\x75\x63\x65\x73\x22\x29\x29\x7b\x6f\x70\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x70\x72\x6f\x64\x75\x63\x65\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x53\x65\x74\x29\x28\x61\x29\x2e\x6d\x65\x72\x67\x65\x28\x70\x72\x6f\x64\x75\x63\x65\x73\x29\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x7d\x29\x7d\x29\x7d\x29\x3b\x76\x61\x72\x20\x74\x61\x67\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x61\x67\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6a\x73\x6f\x6e\x29\x7b\x76\x61\x72\x20\x74\x61\x67\x73\x3d\x6a\x73\x6f\x6e\x2e\x67\x65\x74\x28\x22\x74\x61\x67\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x74\x61\x67\x73\x29\x3f\x74\x61\x67\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x74\x61\x67\x29\x7d\x29\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x7d\x29\x3b\x76\x61\x72\x20\x74\x61\x67\x44\x65\x74\x61\x69\x6c\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x61\x67\x44\x65\x74\x61\x69\x6c\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x61\x67\x44\x65\x74\x61\x69\x6c\x73\x28\x73\x74\x61\x74\x65\x2c\x74\x61\x67\x29\x7b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x54\x61\x67\x73\x3d\x74\x61\x67\x73\x28\x73\x74\x61\x74\x65\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x75\x72\x72\x65\x6e\x74\x54\x61\x67\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x29\x2e\x66\x69\x6e\x64\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x3d\x3d\x3d\x74\x61\x67\x7d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x57\x69\x74\x68\x54\x61\x67\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x57\x69\x74\x68\x54\x61\x67\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x57\x69\x74\x68\x52\x6f\x6f\x74\x49\x6e\x68\x65\x72\x69\x74\x65\x64\x2c\x74\x61\x67\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2c\x74\x61\x67\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x67\x67\x65\x64\x4d\x61\x70\x2c\x6f\x70\x29\x7b\x76\x61\x72\x20\x74\x61\x67\x73\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x53\x65\x74\x29\x28\x6f\x70\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x22\x74\x61\x67\x73\x22\x5d\x29\x29\x3b\x69\x66\x28\x74\x61\x67\x73\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3c\x31\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x67\x67\x65\x64\x4d\x61\x70\x2e\x75\x70\x64\x61\x74\x65\x28\x44\x45\x46\x41\x55\x4c\x54\x5f\x54\x41\x47\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x2e\x70\x75\x73\x68\x28\x6f\x70\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x67\x73\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x2c\x74\x61\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x2e\x75\x70\x64\x61\x74\x65\x28\x74\x61\x67\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x2e\x70\x75\x73\x68\x28\x6f\x70\x29\x7d\x29\x7d\x2c\x74\x61\x67\x67\x65\x64\x4d\x61\x70\x29\x7d\x2c\x74\x61\x67\x73\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x67\x67\x65\x64\x4d\x61\x70\x2c\x74\x61\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x67\x67\x65\x64\x4d\x61\x70\x2e\x73\x65\x74\x28\x74\x61\x67\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x7d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x74\x61\x67\x67\x65\x64\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x61\x67\x67\x65\x64\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x61\x67\x67\x65\x64\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x74\x61\x67\x73\x53\x6f\x72\x74\x65\x72\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x74\x61\x67\x73\x53\x6f\x72\x74\x65\x72\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x53\x6f\x72\x74\x65\x72\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x53\x6f\x72\x74\x65\x72\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x57\x69\x74\x68\x54\x61\x67\x73\x28\x73\x74\x61\x74\x65\x29\x2e\x73\x6f\x72\x74\x42\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6b\x65\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x67\x41\x2c\x74\x61\x67\x42\x29\x7b\x76\x61\x72\x20\x73\x6f\x72\x74\x46\x6e\x3d\x74\x79\x70\x65\x6f\x66\x20\x74\x61\x67\x73\x53\x6f\x72\x74\x65\x72\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x74\x61\x67\x73\x53\x6f\x72\x74\x65\x72\x3a\x5f\x75\x74\x69\x6c\x73\x2e\x73\x6f\x72\x74\x65\x72\x73\x2e\x74\x61\x67\x73\x53\x6f\x72\x74\x65\x72\x5b\x74\x61\x67\x73\x53\x6f\x72\x74\x65\x72\x5d\x3b\x72\x65\x74\x75\x72\x6e\x21\x73\x6f\x72\x74\x46\x6e\x3f\x6e\x75\x6c\x6c\x3a\x73\x6f\x72\x74\x46\x6e\x28\x74\x61\x67\x41\x2c\x74\x61\x67\x42\x29\x7d\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x73\x2c\x74\x61\x67\x29\x7b\x76\x61\x72\x20\x73\x6f\x72\x74\x46\x6e\x3d\x74\x79\x70\x65\x6f\x66\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x53\x6f\x72\x74\x65\x72\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x53\x6f\x72\x74\x65\x72\x3a\x5f\x75\x74\x69\x6c\x73\x2e\x73\x6f\x72\x74\x65\x72\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x53\x6f\x72\x74\x65\x72\x5b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x53\x6f\x72\x74\x65\x72\x5d\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x21\x73\x6f\x72\x74\x46\x6e\x3f\x6f\x70\x73\x3a\x6f\x70\x73\x2e\x73\x6f\x72\x74\x28\x73\x6f\x72\x74\x46\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x74\x61\x67\x44\x65\x74\x61\x69\x6c\x73\x3a\x74\x61\x67\x44\x65\x74\x61\x69\x6c\x73\x28\x73\x74\x61\x74\x65\x2c\x74\x61\x67\x29\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x7d\x29\x7d\x29\x7d\x7d\x3b\x76\x61\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x65\x73\x74\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x28\x73\x74\x61\x74\x65\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x6e\x75\x6c\x6c\x29\x7d\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x71\x75\x65\x73\x74\x73\x28\x73\x74\x61\x74\x65\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x6e\x75\x6c\x6c\x29\x7d\x3b\x76\x61\x72\x20\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x73\x28\x73\x74\x61\x74\x65\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x6e\x75\x6c\x6c\x29\x7d\x3b\x76\x61\x72\x20\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x46\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x46\x6f\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x29\x7b\x76\x61\x72\x20\x6f\x70\x50\x61\x72\x61\x6d\x73\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x28\x73\x74\x61\x74\x65\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x5d\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x76\x61\x72\x20\x6d\x65\x74\x61\x50\x61\x72\x61\x6d\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x5d\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x76\x61\x72\x20\x6d\x65\x72\x67\x65\x64\x50\x61\x72\x61\x6d\x73\x3d\x6f\x70\x50\x61\x72\x61\x6d\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x75\x72\x72\x65\x6e\x74\x50\x61\x72\x61\x6d\x29\x7b\x76\x61\x72\x20\x69\x6e\x4e\x61\x6d\x65\x4b\x65\x79\x65\x64\x4d\x65\x74\x61\x3d\x6d\x65\x74\x61\x50\x61\x72\x61\x6d\x73\x2e\x67\x65\x74\x28\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x2b\x22\x2e\x22\x2b\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x68\x4b\x65\x79\x65\x64\x4d\x65\x74\x61\x3d\x6d\x65\x74\x61\x50\x61\x72\x61\x6d\x73\x2e\x67\x65\x74\x28\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x2b\x22\x2e\x22\x2b\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2b\x22\x2e\x68\x61\x73\x68\x2d\x22\x2b\x70\x61\x72\x61\x6d\x2e\x68\x61\x73\x68\x43\x6f\x64\x65\x28\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x2e\x6d\x65\x72\x67\x65\x28\x63\x75\x72\x72\x65\x6e\x74\x50\x61\x72\x61\x6d\x2c\x69\x6e\x4e\x61\x6d\x65\x4b\x65\x79\x65\x64\x4d\x65\x74\x61\x2c\x68\x61\x73\x68\x4b\x65\x79\x65\x64\x4d\x65\x74\x61\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6d\x65\x72\x67\x65\x64\x50\x61\x72\x61\x6d\x73\x2e\x66\x69\x6e\x64\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x75\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x75\x72\x72\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x3d\x3d\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x26\x26\x63\x75\x72\x72\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x3d\x3d\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x7d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x7d\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x53\x65\x74\x74\x69\x6e\x67\x46\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x53\x65\x74\x74\x69\x6e\x67\x46\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x53\x65\x74\x74\x69\x6e\x67\x46\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2c\x70\x61\x72\x61\x6d\x49\x6e\x29\x7b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x4b\x65\x79\x3d\x70\x61\x72\x61\x6d\x49\x6e\x2b\x22\x2e\x22\x2b\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x69\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x73\x22\x2c\x70\x61\x72\x61\x6d\x4b\x65\x79\x5d\x29\x2c\x66\x61\x6c\x73\x65\x29\x7d\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2c\x70\x61\x72\x61\x6d\x49\x6e\x29\x7b\x76\x61\x72\x20\x6f\x70\x50\x61\x72\x61\x6d\x73\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x28\x73\x74\x61\x74\x65\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x5d\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x50\x61\x72\x61\x6d\x3d\x6f\x70\x50\x61\x72\x61\x6d\x73\x2e\x66\x69\x6e\x64\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x3d\x3d\x3d\x70\x61\x72\x61\x6d\x49\x6e\x26\x26\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x3d\x3d\x3d\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x7d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x63\x75\x72\x72\x65\x6e\x74\x50\x61\x72\x61\x6d\x29\x7d\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x69\x74\x68\x4d\x65\x74\x61\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x76\x61\x72\x20\x6f\x70\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x28\x73\x74\x61\x74\x65\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x76\x61\x72\x20\x6d\x65\x74\x61\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x76\x61\x72\x20\x6d\x65\x72\x67\x65\x64\x50\x61\x72\x61\x6d\x73\x3d\x6f\x70\x2e\x67\x65\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x73\x74\x61\x74\x65\x2c\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x70\x61\x72\x61\x6d\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x2e\x6d\x65\x72\x67\x65\x28\x6f\x70\x2c\x6d\x65\x74\x61\x29\x2e\x73\x65\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x6d\x65\x72\x67\x65\x64\x50\x61\x72\x61\x6d\x73\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x6e\x61\x6d\x65\x2c\x69\x6e\x54\x79\x70\x65\x29\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7c\x7c\x5b\x5d\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x5d\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x5b\x5d\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x73\x2e\x66\x69\x6e\x64\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x70\x29\x26\x26\x70\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x3d\x3d\x3d\x6e\x61\x6d\x65\x26\x26\x70\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x3d\x3d\x3d\x69\x6e\x54\x79\x70\x65\x7d\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x76\x61\x72\x20\x68\x61\x73\x48\x6f\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x68\x61\x73\x48\x6f\x73\x74\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x76\x61\x72\x20\x68\x6f\x73\x74\x3d\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x68\x6f\x73\x74\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x68\x6f\x73\x74\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x26\x26\x68\x6f\x73\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x68\x6f\x73\x74\x5b\x30\x5d\x21\x3d\x3d\x22\x2f\x22\x7d\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x56\x61\x6c\x75\x65\x73\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x69\x73\x58\x6d\x6c\x29\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7c\x7c\x5b\x5d\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x73\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x5b\x73\x74\x61\x74\x65\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x29\x2e\x67\x65\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x73\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x68\x61\x73\x68\x2c\x70\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x69\x73\x58\x6d\x6c\x26\x26\x70\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x3d\x3d\x3d\x22\x62\x6f\x64\x79\x22\x3f\x70\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x5f\x78\x6d\x6c\x22\x29\x3a\x70\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x68\x2e\x73\x65\x74\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x70\x61\x72\x61\x6d\x54\x6f\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x29\x28\x70\x2c\x7b\x61\x6c\x6c\x6f\x77\x48\x61\x73\x68\x65\x73\x3a\x66\x61\x6c\x73\x65\x7d\x29\x2c\x76\x61\x6c\x75\x65\x29\x7d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x7d\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x49\x6e\x63\x6c\x75\x64\x65\x49\x6e\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x29\x7b\x76\x61\x72\x20\x69\x6e\x56\x61\x6c\x75\x65\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x22\x22\x3b\x69\x66\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2e\x73\x6f\x6d\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x70\x29\x26\x26\x70\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x3d\x3d\x3d\x69\x6e\x56\x61\x6c\x75\x65\x7d\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x49\x6e\x63\x6c\x75\x64\x65\x54\x79\x70\x65\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x29\x7b\x76\x61\x72\x20\x74\x79\x70\x65\x56\x61\x6c\x75\x65\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x22\x22\x3b\x69\x66\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2e\x73\x6f\x6d\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x70\x29\x26\x26\x70\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3d\x3d\x3d\x74\x79\x70\x65\x56\x61\x6c\x75\x65\x7d\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x73\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7c\x7c\x5b\x5d\x3b\x76\x61\x72\x20\x6f\x70\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x28\x73\x74\x61\x74\x65\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x7d\x29\x29\x3b\x76\x61\x72\x20\x6d\x65\x74\x61\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x7d\x29\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x3d\x63\x75\x72\x72\x65\x6e\x74\x50\x72\x6f\x64\x75\x63\x65\x73\x46\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x6f\x70\x2e\x67\x65\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x7c\x7c\x6e\x65\x77\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x6d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x73\x75\x6d\x65\x73\x5f\x76\x61\x6c\x75\x65\x22\x29\x3f\x6d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x73\x75\x6d\x65\x73\x5f\x76\x61\x6c\x75\x65\x22\x29\x3a\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x49\x6e\x63\x6c\x75\x64\x65\x54\x79\x70\x65\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x22\x66\x69\x6c\x65\x22\x29\x3f\x22\x6d\x75\x6c\x74\x69\x70\x61\x72\x74\x2f\x66\x6f\x72\x6d\x2d\x64\x61\x74\x61\x22\x3a\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x49\x6e\x63\x6c\x75\x64\x65\x54\x79\x70\x65\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x22\x66\x6f\x72\x6d\x44\x61\x74\x61\x22\x29\x3f\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x78\x2d\x77\x77\x77\x2d\x66\x6f\x72\x6d\x2d\x75\x72\x6c\x65\x6e\x63\x6f\x64\x65\x64\x22\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x70\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x7d\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x75\x72\x72\x65\x6e\x74\x50\x72\x6f\x64\x75\x63\x65\x73\x46\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7c\x7c\x5b\x5d\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x28\x73\x74\x61\x74\x65\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x2c\x6e\x75\x6c\x6c\x29\x3b\x69\x66\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x50\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x72\x6f\x64\x75\x63\x65\x73\x5f\x76\x61\x6c\x75\x65\x22\x5d\x29\x2c\x6e\x75\x6c\x6c\x29\x3b\x76\x61\x72\x20\x66\x69\x72\x73\x74\x50\x72\x6f\x64\x75\x63\x65\x73\x41\x72\x72\x61\x79\x49\x74\x65\x6d\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x72\x6f\x64\x75\x63\x65\x73\x22\x2c\x30\x5d\x2c\x6e\x75\x6c\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x75\x72\x72\x65\x6e\x74\x50\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x7c\x7c\x66\x69\x72\x73\x74\x50\x72\x6f\x64\x75\x63\x65\x73\x41\x72\x72\x61\x79\x49\x74\x65\x6d\x7c\x7c\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x6a\x73\x6f\x6e\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x6f\x64\x75\x63\x65\x73\x4f\x70\x74\x69\x6f\x6e\x73\x46\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7c\x7c\x5b\x5d\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x28\x73\x74\x61\x74\x65\x29\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x2c\x6e\x75\x6c\x6c\x29\x3b\x69\x66\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x76\x61\x72\x20\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x32\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x31\x29\x2c\x70\x61\x74\x68\x3d\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x32\x5b\x30\x5d\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x64\x75\x63\x65\x73\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x70\x72\x6f\x64\x75\x63\x65\x73\x22\x2c\x6e\x75\x6c\x6c\x29\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x49\x74\x65\x6d\x50\x72\x6f\x64\x75\x63\x65\x73\x3d\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x2c\x70\x61\x74\x68\x2c\x22\x70\x72\x6f\x64\x75\x63\x65\x73\x22\x5d\x2c\x6e\x75\x6c\x6c\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x50\x72\x6f\x64\x75\x63\x65\x73\x3d\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x72\x6f\x64\x75\x63\x65\x73\x22\x5d\x2c\x6e\x75\x6c\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x64\x75\x63\x65\x73\x7c\x7c\x70\x61\x74\x68\x49\x74\x65\x6d\x50\x72\x6f\x64\x75\x63\x65\x73\x7c\x7c\x67\x6c\x6f\x62\x61\x6c\x50\x72\x6f\x64\x75\x63\x65\x73\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x75\x6d\x65\x73\x4f\x70\x74\x69\x6f\x6e\x73\x46\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7c\x7c\x5b\x5d\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x28\x73\x74\x61\x74\x65\x29\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x2c\x6e\x75\x6c\x6c\x29\x3b\x69\x66\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x76\x61\x72\x20\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x33\x3d\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x34\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x33\x2c\x31\x29\x2c\x70\x61\x74\x68\x3d\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x34\x5b\x30\x5d\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x73\x75\x6d\x65\x73\x22\x2c\x6e\x75\x6c\x6c\x29\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x49\x74\x65\x6d\x43\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x2c\x70\x61\x74\x68\x2c\x22\x63\x6f\x6e\x73\x75\x6d\x65\x73\x22\x5d\x2c\x6e\x75\x6c\x6c\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x43\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x63\x6f\x6e\x73\x75\x6d\x65\x73\x22\x5d\x2c\x6e\x75\x6c\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x73\x75\x6d\x65\x73\x7c\x7c\x70\x61\x74\x68\x49\x74\x65\x6d\x43\x6f\x6e\x73\x75\x6d\x65\x73\x7c\x7c\x67\x6c\x6f\x62\x61\x6c\x43\x6f\x6e\x73\x75\x6d\x65\x73\x7d\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x76\x61\x72\x20\x75\x72\x6c\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x3b\x76\x61\x72\x20\x6d\x61\x74\x63\x68\x52\x65\x73\x75\x6c\x74\x3d\x75\x72\x6c\x2e\x6d\x61\x74\x63\x68\x28\x2f\x5e\x28\x5b\x61\x2d\x7a\x5d\x5b\x61\x2d\x7a\x30\x2d\x39\x2b\x5c\x2d\x2e\x5d\x2a\x29\x3a\x2f\x29\x3b\x76\x61\x72\x20\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x3d\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x6d\x61\x74\x63\x68\x52\x65\x73\x75\x6c\x74\x29\x3f\x6d\x61\x74\x63\x68\x52\x65\x73\x75\x6c\x74\x5b\x31\x5d\x3a\x6e\x75\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x65\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x7c\x7c\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x65\x22\x2c\x22\x5f\x64\x65\x66\x61\x75\x6c\x74\x53\x63\x68\x65\x6d\x65\x22\x5d\x29\x7c\x7c\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x7c\x7c\x22\x22\x7d\x3b\x76\x61\x72\x20\x63\x61\x6e\x45\x78\x65\x63\x75\x74\x65\x53\x63\x68\x65\x6d\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x61\x6e\x45\x78\x65\x63\x75\x74\x65\x53\x63\x68\x65\x6d\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x61\x6e\x45\x78\x65\x63\x75\x74\x65\x53\x63\x68\x65\x6d\x65\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x22\x68\x74\x74\x70\x22\x2c\x22\x68\x74\x74\x70\x73\x22\x5d\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x29\x3e\x2d\x31\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x65\x66\x6f\x72\x65\x45\x78\x65\x63\x75\x74\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x65\x66\x6f\x72\x65\x45\x78\x65\x63\x75\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x65\x66\x6f\x72\x65\x45\x78\x65\x63\x75\x74\x65\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7c\x7c\x5b\x5d\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x5d\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x5b\x5d\x29\x29\x3b\x76\x61\x72\x20\x69\x73\x56\x61\x6c\x69\x64\x3d\x74\x72\x75\x65\x3b\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x73\x3d\x70\x2e\x67\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x29\x3b\x69\x66\x28\x65\x72\x72\x6f\x72\x73\x26\x26\x65\x72\x72\x6f\x72\x73\x2e\x63\x6f\x75\x6e\x74\x28\x29\x29\x7b\x69\x73\x56\x61\x6c\x69\x64\x3d\x66\x61\x6c\x73\x65\x7d\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x56\x61\x6c\x69\x64\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x74\x75\x72\x6e\x53\x65\x6c\x66\x4f\x72\x4e\x65\x77\x4d\x61\x70\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x6f\x62\x6a\x29\x3f\x6f\x62\x6a\x3a\x6e\x65\x77\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x53\x63\x68\x65\x6d\x61\x2e\x44\x45\x46\x41\x55\x4c\x54\x3d\x6e\x65\x77\x20\x53\x63\x68\x65\x6d\x61\x28\x7b\x69\x6e\x63\x6c\x75\x64\x65\x3a\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x37\x29\x5d\x2c\x65\x78\x70\x6c\x69\x63\x69\x74\x3a\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x33\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x34\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x35\x29\x5d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4f\x62\x6a\x65\x63\x74\x28\x22\x7a\x22\x29\x2e\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x28\x30\x29\x3f\x4f\x62\x6a\x65\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x66\x28\x69\x74\x29\x3d\x3d\x22\x53\x74\x72\x69\x6e\x67\x22\x3f\x69\x74\x2e\x73\x70\x6c\x69\x74\x28\x22\x22\x29\x3a\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x69\x66\x28\x69\x74\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x43\x61\x6e\x27\x74\x20\x63\x61\x6c\x6c\x20\x6d\x65\x74\x68\x6f\x64\x20\x6f\x6e\x20\x20\x22\x2b\x69\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x4c\x49\x42\x52\x41\x52\x59\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x31\x29\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x76\x61\x72\x20\x72\x65\x64\x65\x66\x69\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x31\x29\x3b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x29\x3b\x76\x61\x72\x20\x24\x69\x74\x65\x72\x43\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x31\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x34\x29\x3b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x42\x55\x47\x47\x59\x3d\x21\x28\x5b\x5d\x2e\x6b\x65\x79\x73\x26\x26\x22\x6e\x65\x78\x74\x22\x69\x6e\x5b\x5d\x2e\x6b\x65\x79\x73\x28\x29\x29\x3b\x76\x61\x72\x20\x46\x46\x5f\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x22\x40\x40\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x3b\x76\x61\x72\x20\x4b\x45\x59\x53\x3d\x22\x6b\x65\x79\x73\x22\x3b\x76\x61\x72\x20\x56\x41\x4c\x55\x45\x53\x3d\x22\x76\x61\x6c\x75\x65\x73\x22\x3b\x76\x61\x72\x20\x72\x65\x74\x75\x72\x6e\x54\x68\x69\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x42\x61\x73\x65\x2c\x4e\x41\x4d\x45\x2c\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x6e\x65\x78\x74\x2c\x44\x45\x46\x41\x55\x4c\x54\x2c\x49\x53\x5f\x53\x45\x54\x2c\x46\x4f\x52\x43\x45\x44\x29\x7b\x24\x69\x74\x65\x72\x43\x72\x65\x61\x74\x65\x28\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x4e\x41\x4d\x45\x2c\x6e\x65\x78\x74\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x69\x6e\x64\x29\x7b\x69\x66\x28\x21\x42\x55\x47\x47\x59\x26\x26\x6b\x69\x6e\x64\x20\x69\x6e\x20\x70\x72\x6f\x74\x6f\x29\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x74\x6f\x5b\x6b\x69\x6e\x64\x5d\x3b\x73\x77\x69\x74\x63\x68\x28\x6b\x69\x6e\x64\x29\x7b\x63\x61\x73\x65\x20\x4b\x45\x59\x53\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6b\x65\x79\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x6b\x69\x6e\x64\x29\x7d\x3b\x63\x61\x73\x65\x20\x56\x41\x4c\x55\x45\x53\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x75\x65\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x6b\x69\x6e\x64\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x6e\x74\x72\x69\x65\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x6b\x69\x6e\x64\x29\x7d\x7d\x3b\x76\x61\x72\x20\x54\x41\x47\x3d\x4e\x41\x4d\x45\x2b\x22\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x22\x3b\x76\x61\x72\x20\x44\x45\x46\x5f\x56\x41\x4c\x55\x45\x53\x3d\x44\x45\x46\x41\x55\x4c\x54\x3d\x3d\x56\x41\x4c\x55\x45\x53\x3b\x76\x61\x72\x20\x56\x41\x4c\x55\x45\x53\x5f\x42\x55\x47\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x70\x72\x6f\x74\x6f\x3d\x42\x61\x73\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x24\x6e\x61\x74\x69\x76\x65\x3d\x70\x72\x6f\x74\x6f\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x7c\x7c\x70\x72\x6f\x74\x6f\x5b\x46\x46\x5f\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x7c\x7c\x44\x45\x46\x41\x55\x4c\x54\x26\x26\x70\x72\x6f\x74\x6f\x5b\x44\x45\x46\x41\x55\x4c\x54\x5d\x3b\x76\x61\x72\x20\x24\x64\x65\x66\x61\x75\x6c\x74\x3d\x24\x6e\x61\x74\x69\x76\x65\x7c\x7c\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x28\x44\x45\x46\x41\x55\x4c\x54\x29\x3b\x76\x61\x72\x20\x24\x65\x6e\x74\x72\x69\x65\x73\x3d\x44\x45\x46\x41\x55\x4c\x54\x3f\x21\x44\x45\x46\x5f\x56\x41\x4c\x55\x45\x53\x3f\x24\x64\x65\x66\x61\x75\x6c\x74\x3a\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x28\x22\x65\x6e\x74\x72\x69\x65\x73\x22\x29\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x24\x61\x6e\x79\x4e\x61\x74\x69\x76\x65\x3d\x4e\x41\x4d\x45\x3d\x3d\x22\x41\x72\x72\x61\x79\x22\x3f\x70\x72\x6f\x74\x6f\x2e\x65\x6e\x74\x72\x69\x65\x73\x7c\x7c\x24\x6e\x61\x74\x69\x76\x65\x3a\x24\x6e\x61\x74\x69\x76\x65\x3b\x76\x61\x72\x20\x6d\x65\x74\x68\x6f\x64\x73\x2c\x6b\x65\x79\x2c\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x69\x66\x28\x24\x61\x6e\x79\x4e\x61\x74\x69\x76\x65\x29\x7b\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x28\x24\x61\x6e\x79\x4e\x61\x74\x69\x76\x65\x2e\x63\x61\x6c\x6c\x28\x6e\x65\x77\x20\x42\x61\x73\x65\x29\x29\x3b\x69\x66\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x21\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x26\x26\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x6e\x65\x78\x74\x29\x7b\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x54\x41\x47\x2c\x74\x72\x75\x65\x29\x3b\x69\x66\x28\x21\x4c\x49\x42\x52\x41\x52\x59\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x68\x69\x64\x65\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x49\x54\x45\x52\x41\x54\x4f\x52\x2c\x72\x65\x74\x75\x72\x6e\x54\x68\x69\x73\x29\x7d\x7d\x69\x66\x28\x44\x45\x46\x5f\x56\x41\x4c\x55\x45\x53\x26\x26\x24\x6e\x61\x74\x69\x76\x65\x26\x26\x24\x6e\x61\x74\x69\x76\x65\x2e\x6e\x61\x6d\x65\x21\x3d\x3d\x56\x41\x4c\x55\x45\x53\x29\x7b\x56\x41\x4c\x55\x45\x53\x5f\x42\x55\x47\x3d\x74\x72\x75\x65\x3b\x24\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x75\x65\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x6e\x61\x74\x69\x76\x65\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x29\x7d\x7d\x69\x66\x28\x28\x21\x4c\x49\x42\x52\x41\x52\x59\x7c\x7c\x46\x4f\x52\x43\x45\x44\x29\x26\x26\x28\x42\x55\x47\x47\x59\x7c\x7c\x56\x41\x4c\x55\x45\x53\x5f\x42\x55\x47\x7c\x7c\x21\x70\x72\x6f\x74\x6f\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x29\x29\x7b\x68\x69\x64\x65\x28\x70\x72\x6f\x74\x6f\x2c\x49\x54\x45\x52\x41\x54\x4f\x52\x2c\x24\x64\x65\x66\x61\x75\x6c\x74\x29\x7d\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x5b\x4e\x41\x4d\x45\x5d\x3d\x24\x64\x65\x66\x61\x75\x6c\x74\x3b\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x5b\x54\x41\x47\x5d\x3d\x72\x65\x74\x75\x72\x6e\x54\x68\x69\x73\x3b\x69\x66\x28\x44\x45\x46\x41\x55\x4c\x54\x29\x7b\x6d\x65\x74\x68\x6f\x64\x73\x3d\x7b\x76\x61\x6c\x75\x65\x73\x3a\x44\x45\x46\x5f\x56\x41\x4c\x55\x45\x53\x3f\x24\x64\x65\x66\x61\x75\x6c\x74\x3a\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x28\x56\x41\x4c\x55\x45\x53\x29\x2c\x6b\x65\x79\x73\x3a\x49\x53\x5f\x53\x45\x54\x3f\x24\x64\x65\x66\x61\x75\x6c\x74\x3a\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x28\x4b\x45\x59\x53\x29\x2c\x65\x6e\x74\x72\x69\x65\x73\x3a\x24\x65\x6e\x74\x72\x69\x65\x73\x7d\x3b\x69\x66\x28\x46\x4f\x52\x43\x45\x44\x29\x66\x6f\x72\x28\x6b\x65\x79\x20\x69\x6e\x20\x6d\x65\x74\x68\x6f\x64\x73\x29\x7b\x69\x66\x28\x21\x28\x6b\x65\x79\x20\x69\x6e\x20\x70\x72\x6f\x74\x6f\x29\x29\x72\x65\x64\x65\x66\x69\x6e\x65\x28\x70\x72\x6f\x74\x6f\x2c\x6b\x65\x79\x2c\x6d\x65\x74\x68\x6f\x64\x73\x5b\x6b\x65\x79\x5d\x29\x7d\x65\x6c\x73\x65\x20\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x28\x42\x55\x47\x47\x59\x7c\x7c\x56\x41\x4c\x55\x45\x53\x5f\x42\x55\x47\x29\x2c\x4e\x41\x4d\x45\x2c\x6d\x65\x74\x68\x6f\x64\x73\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6d\x65\x74\x68\x6f\x64\x73\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x76\x61\x72\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3b\x76\x61\x72\x20\x69\x73\x3d\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x29\x26\x26\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x3f\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x69\x74\x29\x3a\x7b\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x53\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x3b\x76\x61\x72\x20\x66\x6e\x2c\x76\x61\x6c\x3b\x69\x66\x28\x53\x26\x26\x74\x79\x70\x65\x6f\x66\x28\x66\x6e\x3d\x69\x74\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x29\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x3d\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x28\x66\x6e\x3d\x69\x74\x2e\x76\x61\x6c\x75\x65\x4f\x66\x29\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x3d\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x3b\x69\x66\x28\x21\x53\x26\x26\x74\x79\x70\x65\x6f\x66\x28\x66\x6e\x3d\x69\x74\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x29\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x3d\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x3b\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x43\x61\x6e\x27\x74\x20\x63\x6f\x6e\x76\x65\x72\x74\x20\x6f\x62\x6a\x65\x63\x74\x20\x74\x6f\x20\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x20\x76\x61\x6c\x75\x65\x22\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x63\x65\x69\x6c\x3d\x4d\x61\x74\x68\x2e\x63\x65\x69\x6c\x3b\x76\x61\x72\x20\x66\x6c\x6f\x6f\x72\x3d\x4d\x61\x74\x68\x2e\x66\x6c\x6f\x6f\x72\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4e\x61\x4e\x28\x69\x74\x3d\x2b\x69\x74\x29\x3f\x30\x3a\x28\x69\x74\x3e\x30\x3f\x66\x6c\x6f\x6f\x72\x3a\x63\x65\x69\x6c\x29\x28\x69\x74\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x73\x68\x61\x72\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x32\x29\x28\x22\x6b\x65\x79\x73\x22\x29\x3b\x76\x61\x72\x20\x75\x69\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x34\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x68\x61\x72\x65\x64\x5b\x6b\x65\x79\x5d\x7c\x7c\x28\x73\x68\x61\x72\x65\x64\x5b\x6b\x65\x79\x5d\x3d\x75\x69\x64\x28\x6b\x65\x79\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x53\x48\x41\x52\x45\x44\x3d\x22\x5f\x5f\x63\x6f\x72\x65\x2d\x6a\x73\x5f\x73\x68\x61\x72\x65\x64\x5f\x5f\x22\x3b\x76\x61\x72\x20\x73\x74\x6f\x72\x65\x3d\x67\x6c\x6f\x62\x61\x6c\x5b\x53\x48\x41\x52\x45\x44\x5d\x7c\x7c\x28\x67\x6c\x6f\x62\x61\x6c\x5b\x53\x48\x41\x52\x45\x44\x5d\x3d\x7b\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x6f\x72\x65\x5b\x6b\x65\x79\x5d\x7c\x7c\x28\x73\x74\x6f\x72\x65\x5b\x6b\x65\x79\x5d\x3d\x7b\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2c\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x2c\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x2c\x74\x6f\x4c\x6f\x63\x61\x6c\x65\x53\x74\x72\x69\x6e\x67\x2c\x74\x6f\x53\x74\x72\x69\x6e\x67\x2c\x76\x61\x6c\x75\x65\x4f\x66\x22\x2e\x73\x70\x6c\x69\x74\x28\x22\x2c\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x35\x29\x3b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x4d\x65\x74\x68\x6f\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x69\x66\x28\x69\x74\x21\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x7c\x7c\x69\x74\x5b\x22\x40\x40\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x5d\x7c\x7c\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x5b\x63\x6c\x61\x73\x73\x6f\x66\x28\x69\x74\x29\x5d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x29\x3b\x76\x61\x72\x20\x54\x41\x47\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x22\x29\x3b\x76\x61\x72\x20\x41\x52\x47\x3d\x63\x6f\x66\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x7d\x28\x29\x29\x3d\x3d\x22\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x22\x3b\x76\x61\x72\x20\x74\x72\x79\x47\x65\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x6b\x65\x79\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x5b\x6b\x65\x79\x5d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x4f\x2c\x54\x2c\x42\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x69\x74\x3d\x3d\x3d\x6e\x75\x6c\x6c\x3f\x22\x4e\x75\x6c\x6c\x22\x3a\x74\x79\x70\x65\x6f\x66\x28\x54\x3d\x74\x72\x79\x47\x65\x74\x28\x4f\x3d\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x2c\x54\x41\x47\x29\x29\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x3f\x54\x3a\x41\x52\x47\x3f\x63\x6f\x66\x28\x4f\x29\x3a\x28\x42\x3d\x63\x6f\x66\x28\x4f\x29\x29\x3d\x3d\x22\x4f\x62\x6a\x65\x63\x74\x22\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x4f\x2e\x63\x61\x6c\x6c\x65\x65\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x22\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x22\x3a\x42\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x69\x64\x3d\x30\x3b\x76\x61\x72\x20\x70\x78\x3d\x4d\x61\x74\x68\x2e\x72\x61\x6e\x64\x6f\x6d\x28\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x53\x79\x6d\x62\x6f\x6c\x28\x22\x2e\x63\x6f\x6e\x63\x61\x74\x28\x6b\x65\x79\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x22\x3a\x6b\x65\x79\x2c\x22\x29\x5f\x22\x2c\x28\x2b\x2b\x69\x64\x2b\x70\x78\x29\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x33\x36\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x29\x3b\x76\x61\x72\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3b\x76\x61\x72\x20\x69\x73\x3d\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x29\x26\x26\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x3f\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x69\x74\x29\x3a\x7b\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x73\x68\x61\x72\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x35\x29\x28\x22\x6b\x65\x79\x73\x22\x29\x3b\x76\x61\x72\x20\x75\x69\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x68\x61\x72\x65\x64\x5b\x6b\x65\x79\x5d\x7c\x7c\x28\x73\x68\x61\x72\x65\x64\x5b\x6b\x65\x79\x5d\x3d\x75\x69\x64\x28\x6b\x65\x79\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x65\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x36\x29\x2e\x66\x3b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x37\x29\x3b\x76\x61\x72\x20\x54\x41\x47\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x74\x61\x67\x2c\x73\x74\x61\x74\x29\x7b\x69\x66\x28\x69\x74\x26\x26\x21\x68\x61\x73\x28\x69\x74\x3d\x73\x74\x61\x74\x3f\x69\x74\x3a\x69\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x54\x41\x47\x29\x29\x64\x65\x66\x28\x69\x74\x2c\x54\x41\x47\x2c\x7b\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x76\x61\x6c\x75\x65\x3a\x74\x61\x67\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x30\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x2c\x72\x65\x6a\x65\x63\x74\x3b\x74\x68\x69\x73\x2e\x70\x72\x6f\x6d\x69\x73\x65\x3d\x6e\x65\x77\x20\x43\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x24\x24\x72\x65\x73\x6f\x6c\x76\x65\x2c\x24\x24\x72\x65\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x72\x65\x73\x6f\x6c\x76\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x72\x65\x6a\x65\x63\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x42\x61\x64\x20\x50\x72\x6f\x6d\x69\x73\x65\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x22\x29\x3b\x72\x65\x73\x6f\x6c\x76\x65\x3d\x24\x24\x72\x65\x73\x6f\x6c\x76\x65\x3b\x72\x65\x6a\x65\x63\x74\x3d\x24\x24\x72\x65\x6a\x65\x63\x74\x7d\x29\x3b\x74\x68\x69\x73\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3d\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x6f\x6c\x76\x65\x29\x3b\x74\x68\x69\x73\x2e\x72\x65\x6a\x65\x63\x74\x3d\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x52\x65\x67\x45\x78\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x39\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x68\x61\x74\x2c\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x2c\x4e\x41\x4d\x45\x29\x7b\x69\x66\x28\x69\x73\x52\x65\x67\x45\x78\x70\x28\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x29\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x53\x74\x72\x69\x6e\x67\x23\x22\x2b\x4e\x41\x4d\x45\x2b\x22\x20\x64\x6f\x65\x73\x6e\x27\x74\x20\x61\x63\x63\x65\x70\x74\x20\x72\x65\x67\x65\x78\x21\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x53\x74\x72\x69\x6e\x67\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x74\x68\x61\x74\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x4d\x41\x54\x43\x48\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x6d\x61\x74\x63\x68\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4b\x45\x59\x29\x7b\x76\x61\x72\x20\x72\x65\x3d\x2f\x2e\x2f\x3b\x74\x72\x79\x7b\x22\x2f\x2e\x2f\x22\x5b\x4b\x45\x59\x5d\x28\x72\x65\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x74\x72\x79\x7b\x72\x65\x5b\x4d\x41\x54\x43\x48\x5d\x3d\x66\x61\x6c\x73\x65\x3b\x72\x65\x74\x75\x72\x6e\x21\x22\x2f\x2e\x2f\x22\x5b\x4b\x45\x59\x5d\x28\x72\x65\x29\x7d\x63\x61\x74\x63\x68\x28\x66\x29\x7b\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x4d\x45\x54\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x34\x29\x28\x22\x6d\x65\x74\x61\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x44\x65\x73\x63\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x2e\x66\x3b\x76\x61\x72\x20\x69\x64\x3d\x30\x3b\x76\x61\x72\x20\x69\x73\x45\x78\x74\x65\x6e\x73\x69\x62\x6c\x65\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x69\x73\x45\x78\x74\x65\x6e\x73\x69\x62\x6c\x65\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x3b\x76\x61\x72\x20\x46\x52\x45\x45\x5a\x45\x3d\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x45\x78\x74\x65\x6e\x73\x69\x62\x6c\x65\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x65\x76\x65\x6e\x74\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x28\x7b\x7d\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x4d\x65\x74\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x73\x65\x74\x44\x65\x73\x63\x28\x69\x74\x2c\x4d\x45\x54\x41\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x7b\x69\x3a\x22\x4f\x22\x2b\x20\x2b\x2b\x69\x64\x2c\x77\x3a\x7b\x7d\x7d\x7d\x29\x7d\x3b\x76\x61\x72\x20\x66\x61\x73\x74\x4b\x65\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x63\x72\x65\x61\x74\x65\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x3d\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x3f\x69\x74\x3a\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x3f\x22\x53\x22\x3a\x22\x50\x22\x29\x2b\x69\x74\x3b\x69\x66\x28\x21\x68\x61\x73\x28\x69\x74\x2c\x4d\x45\x54\x41\x29\x29\x7b\x69\x66\x28\x21\x69\x73\x45\x78\x74\x65\x6e\x73\x69\x62\x6c\x65\x28\x69\x74\x29\x29\x72\x65\x74\x75\x72\x6e\x22\x46\x22\x3b\x69\x66\x28\x21\x63\x72\x65\x61\x74\x65\x29\x72\x65\x74\x75\x72\x6e\x22\x45\x22\x3b\x73\x65\x74\x4d\x65\x74\x61\x28\x69\x74\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x5b\x4d\x45\x54\x41\x5d\x2e\x69\x7d\x3b\x76\x61\x72\x20\x67\x65\x74\x57\x65\x61\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x63\x72\x65\x61\x74\x65\x29\x7b\x69\x66\x28\x21\x68\x61\x73\x28\x69\x74\x2c\x4d\x45\x54\x41\x29\x29\x7b\x69\x66\x28\x21\x69\x73\x45\x78\x74\x65\x6e\x73\x69\x62\x6c\x65\x28\x69\x74\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x69\x66\x28\x21\x63\x72\x65\x61\x74\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x73\x65\x74\x4d\x65\x74\x61\x28\x69\x74\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x5b\x4d\x45\x54\x41\x5d\x2e\x77\x7d\x3b\x76\x61\x72\x20\x6f\x6e\x46\x72\x65\x65\x7a\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x69\x66\x28\x46\x52\x45\x45\x5a\x45\x26\x26\x6d\x65\x74\x61\x2e\x4e\x45\x45\x44\x26\x26\x69\x73\x45\x78\x74\x65\x6e\x73\x69\x62\x6c\x65\x28\x69\x74\x29\x26\x26\x21\x68\x61\x73\x28\x69\x74\x2c\x4d\x45\x54\x41\x29\x29\x73\x65\x74\x4d\x65\x74\x61\x28\x69\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x3b\x76\x61\x72\x20\x6d\x65\x74\x61\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x4b\x45\x59\x3a\x4d\x45\x54\x41\x2c\x4e\x45\x45\x44\x3a\x66\x61\x6c\x73\x65\x2c\x66\x61\x73\x74\x4b\x65\x79\x3a\x66\x61\x73\x74\x4b\x65\x79\x2c\x67\x65\x74\x57\x65\x61\x6b\x3a\x67\x65\x74\x57\x65\x61\x6b\x2c\x6f\x6e\x46\x72\x65\x65\x7a\x65\x3a\x6f\x6e\x46\x72\x65\x65\x7a\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x3b\x76\x61\x72\x20\x4c\x49\x42\x52\x41\x52\x59\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x31\x29\x3b\x76\x61\x72\x20\x77\x6b\x73\x45\x78\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x33\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x2e\x66\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x29\x7b\x76\x61\x72\x20\x24\x53\x79\x6d\x62\x6f\x6c\x3d\x63\x6f\x72\x65\x2e\x53\x79\x6d\x62\x6f\x6c\x7c\x7c\x28\x63\x6f\x72\x65\x2e\x53\x79\x6d\x62\x6f\x6c\x3d\x4c\x49\x42\x52\x41\x52\x59\x3f\x7b\x7d\x3a\x67\x6c\x6f\x62\x61\x6c\x2e\x53\x79\x6d\x62\x6f\x6c\x7c\x7c\x7b\x7d\x29\x3b\x69\x66\x28\x6e\x61\x6d\x65\x2e\x63\x68\x61\x72\x41\x74\x28\x30\x29\x21\x3d\x22\x5f\x22\x26\x26\x21\x28\x6e\x61\x6d\x65\x20\x69\x6e\x20\x24\x53\x79\x6d\x62\x6f\x6c\x29\x29\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x24\x53\x79\x6d\x62\x6f\x6c\x2c\x6e\x61\x6d\x65\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x77\x6b\x73\x45\x78\x74\x2e\x66\x28\x6e\x61\x6d\x65\x29\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x53\x79\x6d\x62\x6f\x6c\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x2d\x65\x72\x72\x6f\x72\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6d\x61\x70\x43\x61\x63\x68\x65\x43\x6c\x65\x61\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x32\x29\x2c\x6d\x61\x70\x43\x61\x63\x68\x65\x44\x65\x6c\x65\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x38\x29\x2c\x6d\x61\x70\x43\x61\x63\x68\x65\x47\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x30\x29\x2c\x6d\x61\x70\x43\x61\x63\x68\x65\x48\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x31\x29\x2c\x6d\x61\x70\x43\x61\x63\x68\x65\x53\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x61\x70\x43\x61\x63\x68\x65\x28\x65\x6e\x74\x72\x69\x65\x73\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x65\x6e\x74\x72\x69\x65\x73\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x65\x6e\x74\x72\x69\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x74\x68\x69\x73\x2e\x63\x6c\x65\x61\x72\x28\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3d\x65\x6e\x74\x72\x69\x65\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x74\x68\x69\x73\x2e\x73\x65\x74\x28\x65\x6e\x74\x72\x79\x5b\x30\x5d\x2c\x65\x6e\x74\x72\x79\x5b\x31\x5d\x29\x7d\x7d\x4d\x61\x70\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x63\x6c\x65\x61\x72\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x43\x6c\x65\x61\x72\x3b\x4d\x61\x70\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x44\x65\x6c\x65\x74\x65\x3b\x4d\x61\x70\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x67\x65\x74\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x47\x65\x74\x3b\x4d\x61\x70\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x48\x61\x73\x3b\x4d\x61\x70\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x65\x74\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x53\x65\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4d\x61\x70\x43\x61\x63\x68\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x29\x2c\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x4d\x61\x70\x3d\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x28\x72\x6f\x6f\x74\x2c\x22\x4d\x61\x70\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4d\x61\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x37\x29\x2c\x73\x74\x61\x63\x6b\x43\x6c\x65\x61\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x37\x29\x2c\x73\x74\x61\x63\x6b\x44\x65\x6c\x65\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x38\x29\x2c\x73\x74\x61\x63\x6b\x47\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x39\x29\x2c\x73\x74\x61\x63\x6b\x48\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x30\x29\x2c\x73\x74\x61\x63\x6b\x53\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x74\x61\x63\x6b\x28\x65\x6e\x74\x72\x69\x65\x73\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3d\x6e\x65\x77\x20\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x28\x65\x6e\x74\x72\x69\x65\x73\x29\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3d\x64\x61\x74\x61\x2e\x73\x69\x7a\x65\x7d\x53\x74\x61\x63\x6b\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x63\x6c\x65\x61\x72\x3d\x73\x74\x61\x63\x6b\x43\x6c\x65\x61\x72\x3b\x53\x74\x61\x63\x6b\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x3d\x73\x74\x61\x63\x6b\x44\x65\x6c\x65\x74\x65\x3b\x53\x74\x61\x63\x6b\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x67\x65\x74\x3d\x73\x74\x61\x63\x6b\x47\x65\x74\x3b\x53\x74\x61\x63\x6b\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x3d\x73\x74\x61\x63\x6b\x48\x61\x73\x3b\x53\x74\x61\x63\x6b\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x65\x74\x3d\x73\x74\x61\x63\x6b\x53\x65\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x53\x74\x61\x63\x6b\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x72\x72\x61\x79\x50\x75\x73\x68\x28\x61\x72\x72\x61\x79\x2c\x76\x61\x6c\x75\x65\x73\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x76\x61\x6c\x75\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6f\x66\x66\x73\x65\x74\x3d\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x61\x72\x72\x61\x79\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x6e\x64\x65\x78\x5d\x3d\x76\x61\x6c\x75\x65\x73\x5b\x69\x6e\x64\x65\x78\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x61\x79\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x72\x72\x61\x79\x50\x75\x73\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x46\x69\x6c\x74\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x31\x29\x2c\x73\x74\x75\x62\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x33\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x47\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x53\x79\x6d\x62\x6f\x6c\x73\x3b\x76\x61\x72\x20\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x21\x6e\x61\x74\x69\x76\x65\x47\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3f\x73\x74\x75\x62\x41\x72\x72\x61\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x5d\x7d\x6f\x62\x6a\x65\x63\x74\x3d\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x61\x79\x46\x69\x6c\x74\x65\x72\x28\x6e\x61\x74\x69\x76\x65\x47\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x6d\x62\x6f\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x2c\x73\x79\x6d\x62\x6f\x6c\x29\x7d\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x49\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x33\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x76\x61\x72\x20\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3b\x76\x61\x72\x20\x69\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x3d\x62\x61\x73\x65\x49\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x7d\x28\x29\x29\x3f\x62\x61\x73\x65\x49\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x2c\x22\x63\x61\x6c\x6c\x65\x65\x22\x29\x26\x26\x21\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x2e\x63\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x2c\x22\x63\x61\x6c\x6c\x65\x65\x22\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x29\x7b\x76\x61\x72\x20\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x2c\x73\x74\x75\x62\x46\x61\x6c\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x34\x29\x3b\x76\x61\x72\x20\x66\x72\x65\x65\x45\x78\x70\x6f\x72\x74\x73\x3d\x74\x79\x70\x65\x6f\x66\x20\x65\x78\x70\x6f\x72\x74\x73\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x65\x78\x70\x6f\x72\x74\x73\x26\x26\x21\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x6f\x64\x65\x54\x79\x70\x65\x26\x26\x65\x78\x70\x6f\x72\x74\x73\x3b\x76\x61\x72\x20\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x3d\x66\x72\x65\x65\x45\x78\x70\x6f\x72\x74\x73\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x6d\x6f\x64\x75\x6c\x65\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x6d\x6f\x64\x75\x6c\x65\x26\x26\x21\x6d\x6f\x64\x75\x6c\x65\x2e\x6e\x6f\x64\x65\x54\x79\x70\x65\x26\x26\x6d\x6f\x64\x75\x6c\x65\x3b\x76\x61\x72\x20\x6d\x6f\x64\x75\x6c\x65\x45\x78\x70\x6f\x72\x74\x73\x3d\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x26\x26\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x3d\x3d\x66\x72\x65\x65\x45\x78\x70\x6f\x72\x74\x73\x3b\x76\x61\x72\x20\x42\x75\x66\x66\x65\x72\x3d\x6d\x6f\x64\x75\x6c\x65\x45\x78\x70\x6f\x72\x74\x73\x3f\x72\x6f\x6f\x74\x2e\x42\x75\x66\x66\x65\x72\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x49\x73\x42\x75\x66\x66\x65\x72\x3d\x42\x75\x66\x66\x65\x72\x3f\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x69\x73\x42\x75\x66\x66\x65\x72\x3d\x6e\x61\x74\x69\x76\x65\x49\x73\x42\x75\x66\x66\x65\x72\x7c\x7c\x73\x74\x75\x62\x46\x61\x6c\x73\x65\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x42\x75\x66\x66\x65\x72\x7d\x29\x2e\x63\x61\x6c\x6c\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x36\x29\x28\x6d\x6f\x64\x75\x6c\x65\x29\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x29\x7b\x69\x66\x28\x21\x6d\x6f\x64\x75\x6c\x65\x2e\x77\x65\x62\x70\x61\x63\x6b\x50\x6f\x6c\x79\x66\x69\x6c\x6c\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x64\x65\x70\x72\x65\x63\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x70\x61\x74\x68\x73\x3d\x5b\x5d\x3b\x69\x66\x28\x21\x6d\x6f\x64\x75\x6c\x65\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x29\x6d\x6f\x64\x75\x6c\x65\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x3d\x5b\x5d\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x22\x6c\x6f\x61\x64\x65\x64\x22\x2c\x7b\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6d\x6f\x64\x75\x6c\x65\x2e\x6c\x7d\x7d\x29\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x22\x69\x64\x22\x2c\x7b\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6d\x6f\x64\x75\x6c\x65\x2e\x69\x7d\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x77\x65\x62\x70\x61\x63\x6b\x50\x6f\x6c\x79\x66\x69\x6c\x6c\x3d\x31\x7d\x72\x65\x74\x75\x72\x6e\x20\x6d\x6f\x64\x75\x6c\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x4d\x41\x58\x5f\x53\x41\x46\x45\x5f\x49\x4e\x54\x45\x47\x45\x52\x3d\x39\x30\x30\x37\x31\x39\x39\x32\x35\x34\x37\x34\x30\x39\x39\x31\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4c\x65\x6e\x67\x74\x68\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x26\x26\x76\x61\x6c\x75\x65\x3e\x2d\x31\x26\x26\x76\x61\x6c\x75\x65\x25\x31\x3d\x3d\x30\x26\x26\x76\x61\x6c\x75\x65\x3c\x3d\x4d\x41\x58\x5f\x53\x41\x46\x45\x5f\x49\x4e\x54\x45\x47\x45\x52\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x4c\x65\x6e\x67\x74\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x55\x6e\x61\x72\x79\x28\x66\x75\x6e\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x28\x76\x61\x6c\x75\x65\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x55\x6e\x61\x72\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x29\x7b\x76\x61\x72\x20\x66\x72\x65\x65\x47\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x38\x29\x3b\x76\x61\x72\x20\x66\x72\x65\x65\x45\x78\x70\x6f\x72\x74\x73\x3d\x74\x79\x70\x65\x6f\x66\x20\x65\x78\x70\x6f\x72\x74\x73\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x65\x78\x70\x6f\x72\x74\x73\x26\x26\x21\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x6f\x64\x65\x54\x79\x70\x65\x26\x26\x65\x78\x70\x6f\x72\x74\x73\x3b\x76\x61\x72\x20\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x3d\x66\x72\x65\x65\x45\x78\x70\x6f\x72\x74\x73\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x6d\x6f\x64\x75\x6c\x65\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x6d\x6f\x64\x75\x6c\x65\x26\x26\x21\x6d\x6f\x64\x75\x6c\x65\x2e\x6e\x6f\x64\x65\x54\x79\x70\x65\x26\x26\x6d\x6f\x64\x75\x6c\x65\x3b\x76\x61\x72\x20\x6d\x6f\x64\x75\x6c\x65\x45\x78\x70\x6f\x72\x74\x73\x3d\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x26\x26\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x3d\x3d\x66\x72\x65\x65\x45\x78\x70\x6f\x72\x74\x73\x3b\x76\x61\x72\x20\x66\x72\x65\x65\x50\x72\x6f\x63\x65\x73\x73\x3d\x6d\x6f\x64\x75\x6c\x65\x45\x78\x70\x6f\x72\x74\x73\x26\x26\x66\x72\x65\x65\x47\x6c\x6f\x62\x61\x6c\x2e\x70\x72\x6f\x63\x65\x73\x73\x3b\x76\x61\x72\x20\x6e\x6f\x64\x65\x55\x74\x69\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x72\x79\x7b\x76\x61\x72\x20\x74\x79\x70\x65\x73\x3d\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x26\x26\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x2e\x72\x65\x71\x75\x69\x72\x65\x26\x26\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x2e\x72\x65\x71\x75\x69\x72\x65\x28\x22\x75\x74\x69\x6c\x22\x29\x2e\x74\x79\x70\x65\x73\x3b\x69\x66\x28\x74\x79\x70\x65\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x73\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x72\x65\x65\x50\x72\x6f\x63\x65\x73\x73\x26\x26\x66\x72\x65\x65\x50\x72\x6f\x63\x65\x73\x73\x2e\x62\x69\x6e\x64\x69\x6e\x67\x26\x26\x66\x72\x65\x65\x50\x72\x6f\x63\x65\x73\x73\x2e\x62\x69\x6e\x64\x69\x6e\x67\x28\x22\x75\x74\x69\x6c\x22\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x7d\x28\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x6f\x64\x65\x55\x74\x69\x6c\x7d\x29\x2e\x63\x61\x6c\x6c\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x36\x29\x28\x6d\x6f\x64\x75\x6c\x65\x29\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x43\x74\x6f\x72\x3d\x76\x61\x6c\x75\x65\x26\x26\x76\x61\x6c\x75\x65\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x70\x72\x6f\x74\x6f\x3d\x74\x79\x70\x65\x6f\x66\x20\x43\x74\x6f\x72\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x43\x74\x6f\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x7c\x7c\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x70\x72\x6f\x74\x6f\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x2c\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x62\x61\x73\x65\x47\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3a\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x61\x73\x74\x50\x61\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x33\x29\x2c\x74\x6f\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x47\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x29\x7b\x70\x61\x74\x68\x3d\x63\x61\x73\x74\x50\x61\x74\x68\x28\x70\x61\x74\x68\x2c\x6f\x62\x6a\x65\x63\x74\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x70\x61\x74\x68\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x6f\x62\x6a\x65\x63\x74\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x6f\x62\x6a\x65\x63\x74\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x74\x6f\x4b\x65\x79\x28\x70\x61\x74\x68\x5b\x69\x6e\x64\x65\x78\x2b\x2b\x5d\x29\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x64\x65\x78\x26\x26\x69\x6e\x64\x65\x78\x3d\x3d\x6c\x65\x6e\x67\x74\x68\x3f\x6f\x62\x6a\x65\x63\x74\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x47\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x69\x73\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x35\x29\x3b\x76\x61\x72\x20\x72\x65\x49\x73\x44\x65\x65\x70\x50\x72\x6f\x70\x3d\x2f\x5c\x2e\x7c\x5c\x5b\x28\x3f\x3a\x5b\x5e\x5b\x5c\x5d\x5d\x2a\x7c\x28\x5b\x22\x27\x5d\x29\x28\x3f\x3a\x28\x3f\x21\x5c\x31\x29\x5b\x5e\x5c\x5c\x5d\x7c\x5c\x5c\x2e\x29\x2a\x3f\x5c\x31\x29\x5c\x5d\x2f\x2c\x72\x65\x49\x73\x50\x6c\x61\x69\x6e\x50\x72\x6f\x70\x3d\x2f\x5e\x5c\x77\x2a\x24\x2f\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4b\x65\x79\x28\x76\x61\x6c\x75\x65\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x22\x62\x6f\x6f\x6c\x65\x61\x6e\x22\x7c\x7c\x76\x61\x6c\x75\x65\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x69\x73\x53\x79\x6d\x62\x6f\x6c\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x49\x73\x50\x6c\x61\x69\x6e\x50\x72\x6f\x70\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x75\x65\x29\x7c\x7c\x21\x72\x65\x49\x73\x44\x65\x65\x70\x50\x72\x6f\x70\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x75\x65\x29\x7c\x7c\x6f\x62\x6a\x65\x63\x74\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x76\x61\x6c\x75\x65\x20\x69\x6e\x20\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x4b\x65\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x53\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x43\x72\x65\x61\x74\x65\x58\x4d\x4c\x45\x78\x61\x6d\x70\x6c\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x72\x65\x61\x74\x65\x58\x4d\x4c\x45\x78\x61\x6d\x70\x6c\x65\x3d\x63\x72\x65\x61\x74\x65\x58\x4d\x4c\x45\x78\x61\x6d\x70\x6c\x65\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x78\x6d\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x33\x29\x3b\x76\x61\x72\x20\x5f\x78\x6d\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x78\x6d\x6c\x29\x3b\x76\x61\x72\x20\x5f\x6d\x65\x6d\x6f\x69\x7a\x65\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x37\x29\x3b\x76\x61\x72\x20\x5f\x6d\x65\x6d\x6f\x69\x7a\x65\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x65\x6d\x6f\x69\x7a\x65\x65\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x36\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x73\x3d\x7b\x73\x74\x72\x69\x6e\x67\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x73\x74\x72\x69\x6e\x67\x22\x7d\x2c\x73\x74\x72\x69\x6e\x67\x5f\x65\x6d\x61\x69\x6c\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x5f\x65\x6d\x61\x69\x6c\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x75\x73\x65\x72\x40\x65\x78\x61\x6d\x70\x6c\x65\x2e\x63\x6f\x6d\x22\x7d\x2c\x22\x73\x74\x72\x69\x6e\x67\x5f\x64\x61\x74\x65\x2d\x74\x69\x6d\x65\x22\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x5f\x64\x61\x74\x65\x54\x69\x6d\x65\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x6e\x65\x77\x20\x44\x61\x74\x65\x29\x2e\x74\x6f\x49\x53\x4f\x53\x74\x72\x69\x6e\x67\x28\x29\x7d\x2c\x73\x74\x72\x69\x6e\x67\x5f\x64\x61\x74\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x5f\x64\x61\x74\x65\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x6e\x65\x77\x20\x44\x61\x74\x65\x29\x2e\x74\x6f\x49\x53\x4f\x53\x74\x72\x69\x6e\x67\x28\x29\x2e\x73\x75\x62\x73\x74\x72\x69\x6e\x67\x28\x30\x2c\x31\x30\x29\x7d\x2c\x73\x74\x72\x69\x6e\x67\x5f\x75\x75\x69\x64\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x5f\x75\x75\x69\x64\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x33\x66\x61\x38\x35\x66\x36\x34\x2d\x35\x37\x31\x37\x2d\x34\x35\x36\x32\x2d\x62\x33\x66\x63\x2d\x32\x63\x39\x36\x33\x66\x36\x36\x61\x66\x61\x36\x22\x7d\x2c\x73\x74\x72\x69\x6e\x67\x5f\x68\x6f\x73\x74\x6e\x61\x6d\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x5f\x68\x6f\x73\x74\x6e\x61\x6d\x65\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x65\x78\x61\x6d\x70\x6c\x65\x2e\x63\x6f\x6d\x22\x7d\x2c\x73\x74\x72\x69\x6e\x67\x5f\x69\x70\x76\x34\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x5f\x69\x70\x76\x34\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x31\x39\x38\x2e\x35\x31\x2e\x31\x30\x30\x2e\x34\x32\x22\x7d\x2c\x73\x74\x72\x69\x6e\x67\x5f\x69\x70\x76\x36\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x5f\x69\x70\x76\x36\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x32\x30\x30\x31\x3a\x30\x64\x62\x38\x3a\x35\x62\x39\x36\x3a\x30\x30\x30\x30\x3a\x30\x30\x30\x30\x3a\x34\x32\x36\x66\x3a\x38\x65\x31\x37\x3a\x36\x34\x32\x61\x22\x7d\x2c\x6e\x75\x6d\x62\x65\x72\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x75\x6d\x62\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x30\x7d\x2c\x6e\x75\x6d\x62\x65\x72\x5f\x66\x6c\x6f\x61\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x75\x6d\x62\x65\x72\x5f\x66\x6c\x6f\x61\x74\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x30\x7d\x2c\x69\x6e\x74\x65\x67\x65\x72\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x74\x65\x67\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x30\x7d\x2c\x62\x6f\x6f\x6c\x65\x61\x6e\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x6f\x6f\x6c\x65\x61\x6e\x28\x73\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x73\x63\x68\x65\x6d\x61\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x3d\x3d\x22\x62\x6f\x6f\x6c\x65\x61\x6e\x22\x3f\x73\x63\x68\x65\x6d\x61\x2e\x64\x65\x66\x61\x75\x6c\x74\x3a\x74\x72\x75\x65\x7d\x7d\x3b\x76\x61\x72\x20\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x73\x63\x68\x65\x6d\x61\x29\x7b\x73\x63\x68\x65\x6d\x61\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x29\x28\x73\x63\x68\x65\x6d\x61\x29\x3b\x76\x61\x72\x20\x5f\x73\x63\x68\x65\x6d\x61\x3d\x73\x63\x68\x65\x6d\x61\x2c\x74\x79\x70\x65\x3d\x5f\x73\x63\x68\x65\x6d\x61\x2e\x74\x79\x70\x65\x2c\x66\x6f\x72\x6d\x61\x74\x3d\x5f\x73\x63\x68\x65\x6d\x61\x2e\x66\x6f\x72\x6d\x61\x74\x3b\x76\x61\x72\x20\x66\x6e\x3d\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x73\x5b\x74\x79\x70\x65\x2b\x22\x5f\x22\x2b\x66\x6f\x72\x6d\x61\x74\x5d\x7c\x7c\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x73\x5b\x74\x79\x70\x65\x5d\x3b\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x46\x75\x6e\x63\x29\x28\x66\x6e\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x28\x73\x63\x68\x65\x6d\x61\x29\x3b\x72\x65\x74\x75\x72\x6e\x22\x55\x6e\x6b\x6e\x6f\x77\x6e\x20\x54\x79\x70\x65\x3a\x20\x22\x2b\x73\x63\x68\x65\x6d\x61\x2e\x74\x79\x70\x65\x7d\x3b\x76\x61\x72\x20\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x73\x63\x68\x65\x6d\x61\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x7b\x7d\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x29\x28\x73\x63\x68\x65\x6d\x61\x29\x2c\x74\x79\x70\x65\x3d\x5f\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x2e\x74\x79\x70\x65\x2c\x65\x78\x61\x6d\x70\x6c\x65\x3d\x5f\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x2e\x65\x78\x61\x6d\x70\x6c\x65\x2c\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x5f\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x2e\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2c\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x5f\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x2e\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2c\x69\x74\x65\x6d\x73\x3d\x5f\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x2e\x69\x74\x65\x6d\x73\x3b\x76\x61\x72\x20\x69\x6e\x63\x6c\x75\x64\x65\x52\x65\x61\x64\x4f\x6e\x6c\x79\x3d\x63\x6f\x6e\x66\x69\x67\x2e\x69\x6e\x63\x6c\x75\x64\x65\x52\x65\x61\x64\x4f\x6e\x6c\x79\x2c\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x3d\x63\x6f\x6e\x66\x69\x67\x2e\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x3b\x69\x66\x28\x65\x78\x61\x6d\x70\x6c\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x64\x65\x65\x70\x6c\x79\x53\x74\x72\x69\x70\x4b\x65\x79\x29\x28\x65\x78\x61\x6d\x70\x6c\x65\x2c\x22\x24\x24\x72\x65\x66\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x26\x26\x76\x61\x6c\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x23\x22\x29\x3e\x2d\x31\x7d\x29\x7d\x69\x66\x28\x21\x74\x79\x70\x65\x29\x7b\x69\x66\x28\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x74\x79\x70\x65\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x74\x65\x6d\x73\x29\x7b\x74\x79\x70\x65\x3d\x22\x61\x72\x72\x61\x79\x22\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x7d\x7d\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x70\x73\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x29\x28\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x3d\x7b\x7d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6e\x61\x6d\x65\x20\x69\x6e\x20\x70\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x70\x72\x6f\x70\x73\x5b\x6e\x61\x6d\x65\x5d\x26\x26\x70\x72\x6f\x70\x73\x5b\x6e\x61\x6d\x65\x5d\x2e\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x66\x28\x70\x72\x6f\x70\x73\x5b\x6e\x61\x6d\x65\x5d\x26\x26\x70\x72\x6f\x70\x73\x5b\x6e\x61\x6d\x65\x5d\x2e\x72\x65\x61\x64\x4f\x6e\x6c\x79\x26\x26\x21\x69\x6e\x63\x6c\x75\x64\x65\x52\x65\x61\x64\x4f\x6e\x6c\x79\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x66\x28\x70\x72\x6f\x70\x73\x5b\x6e\x61\x6d\x65\x5d\x26\x26\x70\x72\x6f\x70\x73\x5b\x6e\x61\x6d\x65\x5d\x2e\x77\x72\x69\x74\x65\x4f\x6e\x6c\x79\x26\x26\x21\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x6f\x62\x6a\x5b\x6e\x61\x6d\x65\x5d\x3d\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x70\x72\x6f\x70\x73\x5b\x6e\x61\x6d\x65\x5d\x2c\x63\x6f\x6e\x66\x69\x67\x29\x7d\x69\x66\x28\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x3d\x3d\x74\x72\x75\x65\x29\x7b\x6f\x62\x6a\x2e\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x31\x3d\x7b\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x76\x61\x72\x20\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x73\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x29\x28\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x3b\x76\x61\x72\x20\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x56\x61\x6c\x3d\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x66\x69\x67\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x31\x3b\x69\x3c\x34\x3b\x69\x2b\x2b\x29\x7b\x6f\x62\x6a\x5b\x22\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x22\x2b\x69\x5d\x3d\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x56\x61\x6c\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x61\x72\x72\x61\x79\x22\x29\x7b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x69\x74\x65\x6d\x73\x2e\x61\x6e\x79\x4f\x66\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x65\x6d\x73\x2e\x61\x6e\x79\x4f\x66\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x69\x2c\x63\x6f\x6e\x66\x69\x67\x29\x7d\x29\x7d\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x69\x74\x65\x6d\x73\x2e\x6f\x6e\x65\x4f\x66\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x65\x6d\x73\x2e\x6f\x6e\x65\x4f\x66\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x69\x2c\x63\x6f\x6e\x66\x69\x67\x29\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x5b\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x69\x74\x65\x6d\x73\x2c\x63\x6f\x6e\x66\x69\x67\x29\x5d\x7d\x69\x66\x28\x73\x63\x68\x65\x6d\x61\x5b\x22\x65\x6e\x75\x6d\x22\x5d\x29\x7b\x69\x66\x28\x73\x63\x68\x65\x6d\x61\x5b\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x5d\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x63\x68\x65\x6d\x61\x5b\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x5d\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x41\x72\x72\x61\x79\x29\x28\x73\x63\x68\x65\x6d\x61\x5b\x22\x65\x6e\x75\x6d\x22\x5d\x29\x5b\x30\x5d\x7d\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x66\x69\x6c\x65\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x73\x63\x68\x65\x6d\x61\x29\x7d\x3b\x76\x61\x72\x20\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x28\x74\x68\x69\x6e\x67\x29\x7b\x69\x66\x28\x74\x68\x69\x6e\x67\x2e\x73\x63\x68\x65\x6d\x61\x29\x74\x68\x69\x6e\x67\x3d\x74\x68\x69\x6e\x67\x2e\x73\x63\x68\x65\x6d\x61\x3b\x69\x66\x28\x74\x68\x69\x6e\x67\x2e\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x74\x68\x69\x6e\x67\x2e\x74\x79\x70\x65\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x6e\x67\x7d\x3b\x76\x61\x72\x20\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x73\x63\x68\x65\x6d\x61\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x7b\x7d\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x53\x63\x68\x65\x6d\x61\x3d\x28\x30\x2c\x5f\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x29\x28\x73\x63\x68\x65\x6d\x61\x29\x29\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x53\x63\x68\x65\x6d\x61\x2e\x74\x79\x70\x65\x2c\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x53\x63\x68\x65\x6d\x61\x2e\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2c\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x53\x63\x68\x65\x6d\x61\x2e\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2c\x69\x74\x65\x6d\x73\x3d\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x53\x63\x68\x65\x6d\x61\x2e\x69\x74\x65\x6d\x73\x2c\x65\x78\x61\x6d\x70\x6c\x65\x3d\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x53\x63\x68\x65\x6d\x61\x2e\x65\x78\x61\x6d\x70\x6c\x65\x3b\x76\x61\x72\x20\x69\x6e\x63\x6c\x75\x64\x65\x52\x65\x61\x64\x4f\x6e\x6c\x79\x3d\x63\x6f\x6e\x66\x69\x67\x2e\x69\x6e\x63\x6c\x75\x64\x65\x52\x65\x61\x64\x4f\x6e\x6c\x79\x2c\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x3d\x63\x6f\x6e\x66\x69\x67\x2e\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x3b\x76\x61\x72\x20\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3d\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x53\x63\x68\x65\x6d\x61\x2e\x64\x65\x66\x61\x75\x6c\x74\x3b\x76\x61\x72\x20\x72\x65\x73\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x5f\x61\x74\x74\x72\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x78\x6d\x6c\x3d\x73\x63\x68\x65\x6d\x61\x2e\x78\x6d\x6c\x3b\x76\x61\x72\x20\x6e\x61\x6d\x65\x3d\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x2c\x70\x72\x65\x66\x69\x78\x3d\x78\x6d\x6c\x2e\x70\x72\x65\x66\x69\x78\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x3d\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x53\x63\x68\x65\x6d\x61\x2e\x65\x6e\x75\x6d\x3b\x76\x61\x72\x20\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3d\x76\x6f\x69\x64\x20\x30\x2c\x76\x61\x6c\x75\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x21\x74\x79\x70\x65\x29\x7b\x69\x66\x28\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x7c\x7c\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x74\x79\x70\x65\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x74\x65\x6d\x73\x29\x7b\x74\x79\x70\x65\x3d\x22\x61\x72\x72\x61\x79\x22\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x7d\x7d\x6e\x61\x6d\x65\x3d\x6e\x61\x6d\x65\x7c\x7c\x22\x6e\x6f\x74\x61\x67\x6e\x61\x6d\x65\x22\x3b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3d\x28\x70\x72\x65\x66\x69\x78\x3f\x70\x72\x65\x66\x69\x78\x2b\x22\x3a\x22\x3a\x22\x22\x29\x2b\x6e\x61\x6d\x65\x3b\x69\x66\x28\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x29\x7b\x76\x61\x72\x20\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x50\x72\x65\x66\x69\x78\x3d\x70\x72\x65\x66\x69\x78\x3f\x22\x78\x6d\x6c\x6e\x73\x3a\x22\x2b\x70\x72\x65\x66\x69\x78\x3a\x22\x78\x6d\x6c\x6e\x73\x22\x3b\x5f\x61\x74\x74\x72\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x50\x72\x65\x66\x69\x78\x5d\x3d\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x7d\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x61\x72\x72\x61\x79\x22\x29\x7b\x69\x66\x28\x69\x74\x65\x6d\x73\x29\x7b\x69\x74\x65\x6d\x73\x2e\x78\x6d\x6c\x3d\x69\x74\x65\x6d\x73\x2e\x78\x6d\x6c\x7c\x7c\x78\x6d\x6c\x7c\x7c\x7b\x7d\x3b\x69\x74\x65\x6d\x73\x2e\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x3d\x69\x74\x65\x6d\x73\x2e\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x7c\x7c\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x3b\x69\x66\x28\x78\x6d\x6c\x2e\x77\x72\x61\x70\x70\x65\x64\x29\x7b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x3d\x5b\x5d\x3b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x65\x78\x61\x6d\x70\x6c\x65\x29\x29\x7b\x65\x78\x61\x6d\x70\x6c\x65\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x69\x74\x65\x6d\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x3d\x76\x3b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x2e\x70\x75\x73\x68\x28\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x69\x74\x65\x6d\x73\x2c\x63\x6f\x6e\x66\x69\x67\x29\x29\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x29\x29\x7b\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x69\x74\x65\x6d\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x76\x3b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x2e\x70\x75\x73\x68\x28\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x69\x74\x65\x6d\x73\x2c\x63\x6f\x6e\x66\x69\x67\x29\x29\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x3d\x5b\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x69\x74\x65\x6d\x73\x2c\x63\x6f\x6e\x66\x69\x67\x29\x5d\x7d\x69\x66\x28\x5f\x61\x74\x74\x72\x29\x7b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x2e\x70\x75\x73\x68\x28\x7b\x5f\x61\x74\x74\x72\x3a\x5f\x61\x74\x74\x72\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x76\x61\x72\x20\x5f\x72\x65\x73\x3d\x5b\x5d\x3b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x65\x78\x61\x6d\x70\x6c\x65\x29\x29\x7b\x65\x78\x61\x6d\x70\x6c\x65\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x69\x74\x65\x6d\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x3d\x76\x3b\x5f\x72\x65\x73\x2e\x70\x75\x73\x68\x28\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x69\x74\x65\x6d\x73\x2c\x63\x6f\x6e\x66\x69\x67\x29\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x73\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x29\x29\x7b\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x69\x74\x65\x6d\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x76\x3b\x5f\x72\x65\x73\x2e\x70\x75\x73\x68\x28\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x69\x74\x65\x6d\x73\x2c\x63\x6f\x6e\x66\x69\x67\x29\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x73\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x69\x74\x65\x6d\x73\x2c\x63\x6f\x6e\x66\x69\x67\x29\x7d\x7d\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x70\x73\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x65\x63\x74\x69\x66\x79\x29\x28\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x3b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x3d\x5b\x5d\x3b\x65\x78\x61\x6d\x70\x6c\x65\x3d\x65\x78\x61\x6d\x70\x6c\x65\x7c\x7c\x7b\x7d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x70\x72\x6f\x70\x4e\x61\x6d\x65\x20\x69\x6e\x20\x70\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x21\x70\x72\x6f\x70\x73\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x70\x72\x6f\x70\x4e\x61\x6d\x65\x29\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x66\x28\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x72\x65\x61\x64\x4f\x6e\x6c\x79\x26\x26\x21\x69\x6e\x63\x6c\x75\x64\x65\x52\x65\x61\x64\x4f\x6e\x6c\x79\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x66\x28\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x77\x72\x69\x74\x65\x4f\x6e\x6c\x79\x26\x26\x21\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x78\x6d\x6c\x3d\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x78\x6d\x6c\x7c\x7c\x7b\x7d\x3b\x69\x66\x28\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x78\x6d\x6c\x2e\x61\x74\x74\x72\x69\x62\x75\x74\x65\x29\x7b\x76\x61\x72\x20\x65\x6e\x75\x6d\x41\x74\x74\x72\x56\x61\x6c\x3d\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x65\x6e\x75\x6d\x29\x26\x26\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x65\x6e\x75\x6d\x5b\x30\x5d\x3b\x76\x61\x72\x20\x61\x74\x74\x72\x45\x78\x61\x6d\x70\x6c\x65\x3d\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x65\x78\x61\x6d\x70\x6c\x65\x3b\x76\x61\x72\x20\x61\x74\x74\x72\x44\x65\x66\x61\x75\x6c\x74\x3d\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x64\x65\x66\x61\x75\x6c\x74\x3b\x5f\x61\x74\x74\x72\x5b\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x7c\x7c\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x3d\x61\x74\x74\x72\x45\x78\x61\x6d\x70\x6c\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x61\x74\x74\x72\x45\x78\x61\x6d\x70\x6c\x65\x7c\x7c\x65\x78\x61\x6d\x70\x6c\x65\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x65\x78\x61\x6d\x70\x6c\x65\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x7c\x7c\x61\x74\x74\x72\x44\x65\x66\x61\x75\x6c\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x61\x74\x74\x72\x44\x65\x66\x61\x75\x6c\x74\x7c\x7c\x65\x6e\x75\x6d\x41\x74\x74\x72\x56\x61\x6c\x7c\x7c\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x29\x7d\x65\x6c\x73\x65\x7b\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x3d\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x78\x6d\x6c\x2e\x6e\x61\x6d\x65\x7c\x7c\x70\x72\x6f\x70\x4e\x61\x6d\x65\x3b\x69\x66\x28\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x65\x78\x61\x6d\x70\x6c\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x65\x78\x61\x6d\x70\x6c\x65\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x2e\x65\x78\x61\x6d\x70\x6c\x65\x3d\x65\x78\x61\x6d\x70\x6c\x65\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x7d\x76\x61\x72\x20\x74\x3d\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x4e\x61\x6d\x65\x5d\x29\x3b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x74\x29\x29\x7b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x3d\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x74\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x2e\x70\x75\x73\x68\x28\x74\x29\x7d\x7d\x7d\x69\x66\x28\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x3d\x3d\x74\x72\x75\x65\x29\x7b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x2e\x70\x75\x73\x68\x28\x7b\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x3a\x22\x41\x6e\x79\x74\x68\x69\x6e\x67\x20\x63\x61\x6e\x20\x62\x65\x20\x68\x65\x72\x65\x22\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x2e\x70\x75\x73\x68\x28\x7b\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x3a\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7d\x29\x7d\x69\x66\x28\x5f\x61\x74\x74\x72\x29\x7b\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x2e\x70\x75\x73\x68\x28\x7b\x5f\x61\x74\x74\x72\x3a\x5f\x61\x74\x74\x72\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x69\x66\x28\x65\x78\x61\x6d\x70\x6c\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x76\x61\x6c\x75\x65\x3d\x65\x78\x61\x6d\x70\x6c\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x76\x61\x6c\x75\x65\x3d\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x29\x29\x7b\x76\x61\x6c\x75\x65\x3d\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x5b\x30\x5d\x7d\x65\x6c\x73\x65\x7b\x76\x61\x6c\x75\x65\x3d\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x73\x63\x68\x65\x6d\x61\x29\x7d\x72\x65\x73\x5b\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x5d\x3d\x5f\x61\x74\x74\x72\x3f\x5b\x7b\x5f\x61\x74\x74\x72\x3a\x5f\x61\x74\x74\x72\x7d\x2c\x76\x61\x6c\x75\x65\x5d\x3a\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x58\x4d\x4c\x45\x78\x61\x6d\x70\x6c\x65\x28\x73\x63\x68\x65\x6d\x61\x2c\x63\x6f\x6e\x66\x69\x67\x29\x7b\x76\x61\x72\x20\x6a\x73\x6f\x6e\x3d\x73\x61\x6d\x70\x6c\x65\x58\x6d\x6c\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x28\x73\x63\x68\x65\x6d\x61\x2c\x63\x6f\x6e\x66\x69\x67\x29\x3b\x69\x66\x28\x21\x6a\x73\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x78\x6d\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6a\x73\x6f\x6e\x2c\x7b\x64\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x3a\x74\x72\x75\x65\x2c\x69\x6e\x64\x65\x6e\x74\x3a\x22\x5c\x74\x22\x7d\x29\x7d\x76\x61\x72\x20\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x43\x72\x65\x61\x74\x65\x58\x4d\x4c\x45\x78\x61\x6d\x70\x6c\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x43\x72\x65\x61\x74\x65\x58\x4d\x4c\x45\x78\x61\x6d\x70\x6c\x65\x3d\x28\x30\x2c\x5f\x6d\x65\x6d\x6f\x69\x7a\x65\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x63\x72\x65\x61\x74\x65\x58\x4d\x4c\x45\x78\x61\x6d\x70\x6c\x65\x29\x3b\x76\x61\x72\x20\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x53\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x53\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x3d\x28\x30\x2c\x5f\x6d\x65\x6d\x6f\x69\x7a\x65\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x61\x6d\x70\x6c\x65\x46\x72\x6f\x6d\x53\x63\x68\x65\x6d\x61\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x48\x4f\x57\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4d\x4f\x44\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x46\x49\x4c\x54\x45\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x4c\x61\x79\x6f\x75\x74\x3d\x75\x70\x64\x61\x74\x65\x4c\x61\x79\x6f\x75\x74\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x46\x69\x6c\x74\x65\x72\x3d\x75\x70\x64\x61\x74\x65\x46\x69\x6c\x74\x65\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x6f\x77\x3d\x73\x68\x6f\x77\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x68\x61\x6e\x67\x65\x4d\x6f\x64\x65\x3d\x63\x68\x61\x6e\x67\x65\x4d\x6f\x64\x65\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x3d\x22\x6c\x61\x79\x6f\x75\x74\x5f\x75\x70\x64\x61\x74\x65\x5f\x6c\x61\x79\x6f\x75\x74\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x46\x49\x4c\x54\x45\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x46\x49\x4c\x54\x45\x52\x3d\x22\x6c\x61\x79\x6f\x75\x74\x5f\x75\x70\x64\x61\x74\x65\x5f\x66\x69\x6c\x74\x65\x72\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x4d\x4f\x44\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4d\x4f\x44\x45\x3d\x22\x6c\x61\x79\x6f\x75\x74\x5f\x75\x70\x64\x61\x74\x65\x5f\x6d\x6f\x64\x65\x22\x3b\x76\x61\x72\x20\x53\x48\x4f\x57\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x48\x4f\x57\x3d\x22\x6c\x61\x79\x6f\x75\x74\x5f\x73\x68\x6f\x77\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x4c\x61\x79\x6f\x75\x74\x28\x6c\x61\x79\x6f\x75\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x6c\x61\x79\x6f\x75\x74\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x46\x69\x6c\x74\x65\x72\x28\x66\x69\x6c\x74\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x46\x49\x4c\x54\x45\x52\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x66\x69\x6c\x74\x65\x72\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x68\x6f\x77\x28\x74\x68\x69\x6e\x67\x29\x7b\x76\x61\x72\x20\x73\x68\x6f\x77\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x74\x72\x75\x65\x3b\x74\x68\x69\x6e\x67\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x41\x72\x72\x61\x79\x29\x28\x74\x68\x69\x6e\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x53\x48\x4f\x57\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x74\x68\x69\x6e\x67\x3a\x74\x68\x69\x6e\x67\x2c\x73\x68\x6f\x77\x6e\x3a\x73\x68\x6f\x77\x6e\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x61\x6e\x67\x65\x4d\x6f\x64\x65\x28\x74\x68\x69\x6e\x67\x29\x7b\x76\x61\x72\x20\x6d\x6f\x64\x65\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x22\x22\x3b\x74\x68\x69\x6e\x67\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x41\x72\x72\x61\x79\x29\x28\x74\x68\x69\x6e\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x4d\x4f\x44\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x74\x68\x69\x6e\x67\x3a\x74\x68\x69\x6e\x67\x2c\x6d\x6f\x64\x65\x3a\x6d\x6f\x64\x65\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x67\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x45\x6d\x70\x74\x79\x50\x61\x72\x61\x6d\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x6e\x76\x61\x6c\x69\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x43\x61\x63\x68\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x73\x6f\x6c\x76\x65\x53\x70\x65\x63\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x73\x65\x54\x6f\x4a\x73\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x45\x54\x5f\x53\x43\x48\x45\x4d\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x5f\x53\x55\x42\x54\x52\x45\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x41\x5f\x56\x41\x4c\x55\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x5f\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4c\x4f\x47\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x45\x54\x5f\x4d\x55\x54\x41\x54\x45\x44\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x45\x54\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x45\x54\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x45\x4d\x50\x54\x59\x5f\x50\x41\x52\x41\x4d\x5f\x49\x4e\x43\x4c\x55\x53\x49\x4f\x4e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4a\x53\x4f\x4e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x55\x52\x4c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x34\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6b\x65\x79\x73\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x6d\x69\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x36\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x6d\x69\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x6d\x69\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x67\x65\x6e\x65\x72\x61\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x33\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x67\x65\x6e\x65\x72\x61\x74\x6f\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x67\x65\x6e\x65\x72\x61\x74\x6f\x72\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x79\x6e\x63\x54\x6f\x47\x65\x6e\x65\x72\x61\x74\x6f\x72\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x35\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x79\x6e\x63\x54\x6f\x47\x65\x6e\x65\x72\x61\x74\x6f\x72\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x79\x6e\x63\x54\x6f\x47\x65\x6e\x65\x72\x61\x74\x6f\x72\x32\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x79\x70\x65\x6f\x66\x32\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x3d\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x3d\x75\x70\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x55\x72\x6c\x3d\x75\x70\x64\x61\x74\x65\x55\x72\x6c\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x3d\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x68\x61\x6e\x67\x65\x50\x61\x72\x61\x6d\x3d\x63\x68\x61\x6e\x67\x65\x50\x61\x72\x61\x6d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x68\x61\x6e\x67\x65\x50\x61\x72\x61\x6d\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x3d\x63\x68\x61\x6e\x67\x65\x50\x61\x72\x61\x6d\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6c\x65\x61\x72\x56\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x3d\x63\x6c\x65\x61\x72\x56\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3d\x63\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x68\x61\x6e\x67\x65\x50\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x3d\x63\x68\x61\x6e\x67\x65\x50\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6c\x65\x61\x72\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x63\x6c\x65\x61\x72\x52\x65\x73\x70\x6f\x6e\x73\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6c\x65\x61\x72\x52\x65\x71\x75\x65\x73\x74\x3d\x63\x6c\x65\x61\x72\x52\x65\x71\x75\x65\x73\x74\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x53\x63\x68\x65\x6d\x65\x3d\x73\x65\x74\x53\x63\x68\x65\x6d\x65\x3b\x76\x61\x72\x20\x5f\x6a\x73\x59\x61\x6d\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x32\x29\x3b\x76\x61\x72\x20\x5f\x6a\x73\x59\x61\x6d\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6a\x73\x59\x61\x6d\x6c\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x31\x29\x3b\x76\x61\x72\x20\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x38\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x29\x3b\x76\x61\x72\x20\x5f\x69\x73\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x73\x53\x74\x72\x69\x6e\x67\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x73\x53\x74\x72\x69\x6e\x67\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x62\x6f\x75\x6e\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x38\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x62\x6f\x75\x6e\x63\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x62\x6f\x75\x6e\x63\x65\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x30\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x65\x74\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x3d\x22\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x73\x70\x65\x63\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x55\x52\x4c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x55\x52\x4c\x3d\x22\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x75\x72\x6c\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x4a\x53\x4f\x4e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4a\x53\x4f\x4e\x3d\x22\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x6a\x73\x6f\x6e\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x3d\x22\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x70\x61\x72\x61\x6d\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x45\x4d\x50\x54\x59\x5f\x50\x41\x52\x41\x4d\x5f\x49\x4e\x43\x4c\x55\x53\x49\x4f\x4e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x45\x4d\x50\x54\x59\x5f\x50\x41\x52\x41\x4d\x5f\x49\x4e\x43\x4c\x55\x53\x49\x4f\x4e\x3d\x22\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x65\x6d\x70\x74\x79\x5f\x70\x61\x72\x61\x6d\x5f\x69\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x22\x3b\x76\x61\x72\x20\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x3d\x22\x73\x70\x65\x63\x5f\x76\x61\x6c\x69\x64\x61\x74\x65\x5f\x70\x61\x72\x61\x6d\x22\x3b\x76\x61\x72\x20\x53\x45\x54\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x45\x54\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x3d\x22\x73\x70\x65\x63\x5f\x73\x65\x74\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x22\x3b\x76\x61\x72\x20\x53\x45\x54\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x45\x54\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x22\x73\x70\x65\x63\x5f\x73\x65\x74\x5f\x72\x65\x71\x75\x65\x73\x74\x22\x3b\x76\x61\x72\x20\x53\x45\x54\x5f\x4d\x55\x54\x41\x54\x45\x44\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x45\x54\x5f\x4d\x55\x54\x41\x54\x45\x44\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x22\x73\x70\x65\x63\x5f\x73\x65\x74\x5f\x6d\x75\x74\x61\x74\x65\x64\x5f\x72\x65\x71\x75\x65\x73\x74\x22\x3b\x76\x61\x72\x20\x4c\x4f\x47\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4c\x4f\x47\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x22\x73\x70\x65\x63\x5f\x6c\x6f\x67\x5f\x72\x65\x71\x75\x65\x73\x74\x22\x3b\x76\x61\x72\x20\x43\x4c\x45\x41\x52\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x3d\x22\x73\x70\x65\x63\x5f\x63\x6c\x65\x61\x72\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x22\x3b\x76\x61\x72\x20\x43\x4c\x45\x41\x52\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x5f\x52\x45\x51\x55\x45\x53\x54\x3d\x22\x73\x70\x65\x63\x5f\x63\x6c\x65\x61\x72\x5f\x72\x65\x71\x75\x65\x73\x74\x22\x3b\x76\x61\x72\x20\x43\x4c\x45\x41\x52\x5f\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4c\x45\x41\x52\x5f\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x3d\x22\x73\x70\x65\x63\x5f\x63\x6c\x65\x61\x72\x5f\x76\x61\x6c\x69\x64\x61\x74\x65\x5f\x70\x61\x72\x61\x6d\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x41\x5f\x56\x41\x4c\x55\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x41\x5f\x56\x41\x4c\x55\x45\x3d\x22\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x5f\x6d\x65\x74\x61\x5f\x76\x61\x6c\x75\x65\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x3d\x22\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x72\x65\x73\x6f\x6c\x76\x65\x64\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x5f\x53\x55\x42\x54\x52\x45\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x5f\x53\x55\x42\x54\x52\x45\x45\x3d\x22\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x72\x65\x73\x6f\x6c\x76\x65\x64\x5f\x73\x75\x62\x74\x72\x65\x65\x22\x3b\x76\x61\x72\x20\x53\x45\x54\x5f\x53\x43\x48\x45\x4d\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x45\x54\x5f\x53\x43\x48\x45\x4d\x45\x3d\x22\x73\x65\x74\x5f\x73\x63\x68\x65\x6d\x65\x22\x3b\x76\x61\x72\x20\x74\x6f\x53\x74\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x53\x74\x72\x28\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x73\x53\x74\x72\x69\x6e\x67\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x74\x72\x29\x3f\x73\x74\x72\x3a\x22\x22\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x28\x73\x70\x65\x63\x29\x7b\x76\x61\x72\x20\x63\x6c\x65\x61\x6e\x53\x70\x65\x63\x3d\x74\x6f\x53\x74\x72\x28\x73\x70\x65\x63\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5c\x74\x2f\x67\x2c\x22\x20\x20\x22\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x70\x65\x63\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x63\x6c\x65\x61\x6e\x53\x70\x65\x63\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x73\x70\x65\x63\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x55\x72\x6c\x28\x75\x72\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x55\x52\x4c\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x75\x72\x6c\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x28\x6a\x73\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x4a\x53\x4f\x4e\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x6a\x73\x6f\x6e\x7d\x7d\x76\x61\x72\x20\x70\x61\x72\x73\x65\x54\x6f\x4a\x73\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x73\x65\x54\x6f\x4a\x73\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x73\x65\x54\x6f\x4a\x73\x6f\x6e\x28\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x74\x72\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x53\x74\x72\x3b\x76\x61\x72\x20\x6a\x73\x6f\x6e\x3d\x6e\x75\x6c\x6c\x3b\x74\x72\x79\x7b\x73\x74\x72\x3d\x73\x74\x72\x7c\x7c\x73\x70\x65\x63\x53\x74\x72\x28\x29\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x28\x7b\x73\x6f\x75\x72\x63\x65\x3a\x22\x70\x61\x72\x73\x65\x72\x22\x7d\x29\x3b\x6a\x73\x6f\x6e\x3d\x5f\x6a\x73\x59\x61\x6d\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x73\x61\x66\x65\x4c\x6f\x61\x64\x28\x73\x74\x72\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x53\x70\x65\x63\x45\x72\x72\x28\x7b\x73\x6f\x75\x72\x63\x65\x3a\x22\x70\x61\x72\x73\x65\x72\x22\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x65\x72\x72\x6f\x72\x22\x2c\x6d\x65\x73\x73\x61\x67\x65\x3a\x65\x2e\x72\x65\x61\x73\x6f\x6e\x2c\x6c\x69\x6e\x65\x3a\x65\x2e\x6d\x61\x72\x6b\x26\x26\x65\x2e\x6d\x61\x72\x6b\x2e\x6c\x69\x6e\x65\x3f\x65\x2e\x6d\x61\x72\x6b\x2e\x6c\x69\x6e\x65\x2b\x31\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x29\x7d\x69\x66\x28\x6a\x73\x6f\x6e\x26\x26\x28\x74\x79\x70\x65\x6f\x66\x20\x6a\x73\x6f\x6e\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6a\x73\x6f\x6e\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x28\x6a\x73\x6f\x6e\x29\x7d\x72\x65\x74\x75\x72\x6e\x7b\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x68\x61\x73\x57\x61\x72\x6e\x65\x64\x41\x62\x6f\x75\x74\x52\x65\x73\x6f\x6c\x76\x65\x53\x70\x65\x63\x44\x65\x70\x72\x65\x63\x61\x74\x69\x6f\x6e\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x53\x70\x65\x63\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x73\x6f\x6c\x76\x65\x53\x70\x65\x63\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x53\x70\x65\x63\x28\x6a\x73\x6f\x6e\x2c\x75\x72\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x32\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x32\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x32\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x5f\x72\x65\x66\x32\x24\x66\x6e\x3d\x5f\x72\x65\x66\x32\x2e\x66\x6e\x2c\x66\x65\x74\x63\x68\x3d\x5f\x72\x65\x66\x32\x24\x66\x6e\x2e\x66\x65\x74\x63\x68\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3d\x5f\x72\x65\x66\x32\x24\x66\x6e\x2e\x72\x65\x73\x6f\x6c\x76\x65\x2c\x5f\x72\x65\x66\x32\x24\x66\x6e\x24\x41\x53\x54\x3d\x5f\x72\x65\x66\x32\x24\x66\x6e\x2e\x41\x53\x54\x2c\x41\x53\x54\x3d\x5f\x72\x65\x66\x32\x24\x66\x6e\x24\x41\x53\x54\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x7b\x7d\x3a\x5f\x72\x65\x66\x32\x24\x66\x6e\x24\x41\x53\x54\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x32\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x69\x66\x28\x21\x68\x61\x73\x57\x61\x72\x6e\x65\x64\x41\x62\x6f\x75\x74\x52\x65\x73\x6f\x6c\x76\x65\x53\x70\x65\x63\x44\x65\x70\x72\x65\x63\x61\x74\x69\x6f\x6e\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x77\x61\x72\x6e\x28\x22\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x72\x65\x73\x6f\x6c\x76\x65\x53\x70\x65\x63\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x20\x73\x69\x6e\x63\x65\x20\x76\x33\x2e\x31\x30\x2e\x30\x20\x61\x6e\x64\x20\x77\x69\x6c\x6c\x20\x62\x65\x20\x72\x65\x6d\x6f\x76\x65\x64\x20\x69\x6e\x20\x76\x34\x2e\x30\x2e\x30\x3b\x20\x75\x73\x65\x20\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x20\x69\x6e\x73\x74\x65\x61\x64\x21\x22\x29\x3b\x68\x61\x73\x57\x61\x72\x6e\x65\x64\x41\x62\x6f\x75\x74\x52\x65\x73\x6f\x6c\x76\x65\x53\x70\x65\x63\x44\x65\x70\x72\x65\x63\x61\x74\x69\x6f\x6e\x3d\x74\x72\x75\x65\x7d\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6a\x73\x6f\x6e\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x6a\x73\x6f\x6e\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x75\x72\x6c\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x75\x72\x6c\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x75\x72\x6c\x28\x29\x7d\x76\x61\x72\x20\x67\x65\x74\x4c\x69\x6e\x65\x4e\x75\x6d\x62\x65\x72\x46\x6f\x72\x50\x61\x74\x68\x3d\x41\x53\x54\x2e\x67\x65\x74\x4c\x69\x6e\x65\x4e\x75\x6d\x62\x65\x72\x46\x6f\x72\x50\x61\x74\x68\x3f\x41\x53\x54\x2e\x67\x65\x74\x4c\x69\x6e\x65\x4e\x75\x6d\x62\x65\x72\x46\x6f\x72\x50\x61\x74\x68\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x74\x72\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x53\x74\x72\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x28\x7b\x66\x65\x74\x63\x68\x3a\x66\x65\x74\x63\x68\x2c\x73\x70\x65\x63\x3a\x6a\x73\x6f\x6e\x2c\x62\x61\x73\x65\x44\x6f\x63\x3a\x75\x72\x6c\x2c\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x3a\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x3a\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x7d\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x5f\x72\x65\x66\x33\x2e\x73\x70\x65\x63\x2c\x65\x72\x72\x6f\x72\x73\x3d\x5f\x72\x65\x66\x33\x2e\x65\x72\x72\x6f\x72\x73\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x28\x7b\x74\x79\x70\x65\x3a\x22\x74\x68\x72\x6f\x77\x6e\x22\x7d\x29\x3b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x65\x72\x72\x6f\x72\x73\x29\x26\x26\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x29\x7b\x76\x61\x72\x20\x70\x72\x65\x70\x61\x72\x65\x64\x45\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x6f\x72\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x65\x72\x72\x29\x3b\x65\x72\x72\x2e\x6c\x69\x6e\x65\x3d\x65\x72\x72\x2e\x66\x75\x6c\x6c\x50\x61\x74\x68\x3f\x67\x65\x74\x4c\x69\x6e\x65\x4e\x75\x6d\x62\x65\x72\x46\x6f\x72\x50\x61\x74\x68\x28\x73\x70\x65\x63\x53\x74\x72\x2c\x65\x72\x72\x2e\x66\x75\x6c\x6c\x50\x61\x74\x68\x29\x3a\x6e\x75\x6c\x6c\x3b\x65\x72\x72\x2e\x70\x61\x74\x68\x3d\x65\x72\x72\x2e\x66\x75\x6c\x6c\x50\x61\x74\x68\x3f\x65\x72\x72\x2e\x66\x75\x6c\x6c\x50\x61\x74\x68\x2e\x6a\x6f\x69\x6e\x28\x22\x2e\x22\x29\x3a\x6e\x75\x6c\x6c\x3b\x65\x72\x72\x2e\x6c\x65\x76\x65\x6c\x3d\x22\x65\x72\x72\x6f\x72\x22\x3b\x65\x72\x72\x2e\x74\x79\x70\x65\x3d\x22\x74\x68\x72\x6f\x77\x6e\x22\x3b\x65\x72\x72\x2e\x73\x6f\x75\x72\x63\x65\x3d\x22\x72\x65\x73\x6f\x6c\x76\x65\x72\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x72\x72\x2c\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x2c\x7b\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x76\x61\x6c\x75\x65\x3a\x65\x72\x72\x2e\x6d\x65\x73\x73\x61\x67\x65\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x7d\x29\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x42\x61\x74\x63\x68\x28\x70\x72\x65\x70\x61\x72\x65\x64\x45\x72\x72\x6f\x72\x73\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x28\x73\x70\x65\x63\x29\x7d\x29\x7d\x7d\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x42\x61\x74\x63\x68\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x64\x65\x62\x52\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x73\x3d\x28\x30\x2c\x5f\x64\x65\x62\x6f\x75\x6e\x63\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x28\x30\x2c\x5f\x61\x73\x79\x6e\x63\x54\x6f\x47\x65\x6e\x65\x72\x61\x74\x6f\x72\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x67\x65\x6e\x65\x72\x61\x74\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6d\x61\x72\x6b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x63\x61\x6c\x6c\x65\x65\x32\x28\x29\x7b\x76\x61\x72\x20\x73\x79\x73\x74\x65\x6d\x2c\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x5f\x73\x79\x73\x74\x65\x6d\x24\x66\x6e\x2c\x72\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x2c\x5f\x73\x79\x73\x74\x65\x6d\x24\x66\x6e\x24\x41\x53\x54\x2c\x41\x53\x54\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x4c\x69\x6e\x65\x4e\x75\x6d\x62\x65\x72\x46\x6f\x72\x50\x61\x74\x68\x2c\x73\x70\x65\x63\x53\x74\x72\x2c\x5f\x73\x79\x73\x74\x65\x6d\x24\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x62\x61\x74\x63\x68\x52\x65\x73\x75\x6c\x74\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x67\x65\x6e\x65\x72\x61\x74\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x77\x72\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x63\x61\x6c\x6c\x65\x65\x32\x24\x28\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x29\x7b\x77\x68\x69\x6c\x65\x28\x31\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x70\x72\x65\x76\x3d\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x6e\x65\x78\x74\x29\x7b\x63\x61\x73\x65\x20\x30\x3a\x73\x79\x73\x74\x65\x6d\x3d\x72\x65\x71\x75\x65\x73\x74\x42\x61\x74\x63\x68\x2e\x73\x79\x73\x74\x65\x6d\x3b\x69\x66\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x6e\x65\x78\x74\x3d\x34\x3b\x62\x72\x65\x61\x6b\x7d\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x22\x64\x65\x62\x52\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x73\x3a\x20\x64\x6f\x6e\x27\x74\x20\x68\x61\x76\x65\x20\x61\x20\x73\x79\x73\x74\x65\x6d\x20\x74\x6f\x20\x6f\x70\x65\x72\x61\x74\x65\x20\x6f\x6e\x2c\x20\x61\x62\x6f\x72\x74\x69\x6e\x67\x2e\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x61\x62\x72\x75\x70\x74\x28\x22\x72\x65\x74\x75\x72\x6e\x22\x29\x3b\x63\x61\x73\x65\x20\x34\x3a\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x73\x79\x73\x74\x65\x6d\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x73\x79\x73\x74\x65\x6d\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x5f\x73\x79\x73\x74\x65\x6d\x24\x66\x6e\x3d\x73\x79\x73\x74\x65\x6d\x2e\x66\x6e\x2c\x72\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x66\x6e\x2e\x72\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x2c\x5f\x73\x79\x73\x74\x65\x6d\x24\x66\x6e\x24\x41\x53\x54\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x66\x6e\x2e\x41\x53\x54\x2c\x41\x53\x54\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x66\x6e\x24\x41\x53\x54\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x7b\x7d\x3a\x5f\x73\x79\x73\x74\x65\x6d\x24\x66\x6e\x24\x41\x53\x54\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3b\x69\x66\x28\x72\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x29\x7b\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x6e\x65\x78\x74\x3d\x38\x3b\x62\x72\x65\x61\x6b\x7d\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x22\x45\x72\x72\x6f\x72\x3a\x20\x53\x77\x61\x67\x67\x65\x72\x2d\x43\x6c\x69\x65\x6e\x74\x20\x64\x69\x64\x20\x6e\x6f\x74\x20\x70\x72\x6f\x76\x69\x64\x65\x20\x61\x20\x60\x72\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x60\x20\x6d\x65\x74\x68\x6f\x64\x2c\x20\x64\x6f\x69\x6e\x67\x20\x6e\x6f\x74\x68\x69\x6e\x67\x2e\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x61\x62\x72\x75\x70\x74\x28\x22\x72\x65\x74\x75\x72\x6e\x22\x29\x3b\x63\x61\x73\x65\x20\x38\x3a\x67\x65\x74\x4c\x69\x6e\x65\x4e\x75\x6d\x62\x65\x72\x46\x6f\x72\x50\x61\x74\x68\x3d\x41\x53\x54\x2e\x67\x65\x74\x4c\x69\x6e\x65\x4e\x75\x6d\x62\x65\x72\x46\x6f\x72\x50\x61\x74\x68\x3f\x41\x53\x54\x2e\x67\x65\x74\x4c\x69\x6e\x65\x4e\x75\x6d\x62\x65\x72\x46\x6f\x72\x50\x61\x74\x68\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x3b\x73\x70\x65\x63\x53\x74\x72\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x53\x74\x72\x28\x29\x3b\x5f\x73\x79\x73\x74\x65\x6d\x24\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3b\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x70\x72\x65\x76\x3d\x31\x31\x3b\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x6e\x65\x78\x74\x3d\x31\x34\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x71\x75\x65\x73\x74\x42\x61\x74\x63\x68\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x35\x3d\x28\x30\x2c\x5f\x61\x73\x79\x6e\x63\x54\x6f\x47\x65\x6e\x65\x72\x61\x74\x6f\x72\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x67\x65\x6e\x65\x72\x61\x74\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6d\x61\x72\x6b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x63\x61\x6c\x6c\x65\x65\x28\x70\x72\x65\x76\x2c\x70\x61\x74\x68\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x36\x2c\x72\x65\x73\x75\x6c\x74\x4d\x61\x70\x2c\x73\x70\x65\x63\x57\x69\x74\x68\x43\x75\x72\x72\x65\x6e\x74\x53\x75\x62\x74\x72\x65\x65\x73\x2c\x5f\x72\x65\x66\x37\x2c\x65\x72\x72\x6f\x72\x73\x2c\x73\x70\x65\x63\x2c\x70\x72\x65\x70\x61\x72\x65\x64\x45\x72\x72\x6f\x72\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x67\x65\x6e\x65\x72\x61\x74\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x77\x72\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x63\x61\x6c\x6c\x65\x65\x24\x28\x5f\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x77\x68\x69\x6c\x65\x28\x31\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x5f\x63\x6f\x6e\x74\x65\x78\x74\x2e\x70\x72\x65\x76\x3d\x5f\x63\x6f\x6e\x74\x65\x78\x74\x2e\x6e\x65\x78\x74\x29\x7b\x63\x61\x73\x65\x20\x30\x3a\x5f\x63\x6f\x6e\x74\x65\x78\x74\x2e\x6e\x65\x78\x74\x3d\x32\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x65\x76\x3b\x63\x61\x73\x65\x20\x32\x3a\x5f\x72\x65\x66\x36\x3d\x5f\x63\x6f\x6e\x74\x65\x78\x74\x2e\x73\x65\x6e\x74\x3b\x72\x65\x73\x75\x6c\x74\x4d\x61\x70\x3d\x5f\x72\x65\x66\x36\x2e\x72\x65\x73\x75\x6c\x74\x4d\x61\x70\x3b\x73\x70\x65\x63\x57\x69\x74\x68\x43\x75\x72\x72\x65\x6e\x74\x53\x75\x62\x74\x72\x65\x65\x73\x3d\x5f\x72\x65\x66\x36\x2e\x73\x70\x65\x63\x57\x69\x74\x68\x43\x75\x72\x72\x65\x6e\x74\x53\x75\x62\x74\x72\x65\x65\x73\x3b\x5f\x63\x6f\x6e\x74\x65\x78\x74\x2e\x6e\x65\x78\x74\x3d\x37\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x28\x73\x70\x65\x63\x57\x69\x74\x68\x43\x75\x72\x72\x65\x6e\x74\x53\x75\x62\x74\x72\x65\x65\x73\x2c\x70\x61\x74\x68\x2c\x7b\x62\x61\x73\x65\x44\x6f\x63\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x75\x72\x6c\x28\x29\x2c\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x3a\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x3a\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x7d\x29\x3b\x63\x61\x73\x65\x20\x37\x3a\x5f\x72\x65\x66\x37\x3d\x5f\x63\x6f\x6e\x74\x65\x78\x74\x2e\x73\x65\x6e\x74\x3b\x65\x72\x72\x6f\x72\x73\x3d\x5f\x72\x65\x66\x37\x2e\x65\x72\x72\x6f\x72\x73\x3b\x73\x70\x65\x63\x3d\x5f\x72\x65\x66\x37\x2e\x73\x70\x65\x63\x3b\x69\x66\x28\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x28\x29\x2e\x73\x69\x7a\x65\x29\x7b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x42\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x21\x3d\x3d\x22\x74\x68\x72\x6f\x77\x6e\x22\x7c\x7c\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x73\x6f\x75\x72\x63\x65\x22\x29\x21\x3d\x3d\x22\x72\x65\x73\x6f\x6c\x76\x65\x72\x22\x7c\x7c\x21\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x66\x75\x6c\x6c\x50\x61\x74\x68\x22\x29\x2e\x65\x76\x65\x72\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x2c\x69\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6b\x65\x79\x3d\x3d\x3d\x70\x61\x74\x68\x5b\x69\x5d\x7c\x7c\x70\x61\x74\x68\x5b\x69\x5d\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x29\x7d\x29\x7d\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x65\x72\x72\x6f\x72\x73\x29\x26\x26\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x29\x7b\x70\x72\x65\x70\x61\x72\x65\x64\x45\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x6f\x72\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x65\x72\x72\x2e\x6c\x69\x6e\x65\x3d\x65\x72\x72\x2e\x66\x75\x6c\x6c\x50\x61\x74\x68\x3f\x67\x65\x74\x4c\x69\x6e\x65\x4e\x75\x6d\x62\x65\x72\x46\x6f\x72\x50\x61\x74\x68\x28\x73\x70\x65\x63\x53\x74\x72\x2c\x65\x72\x72\x2e\x66\x75\x6c\x6c\x50\x61\x74\x68\x29\x3a\x6e\x75\x6c\x6c\x3b\x65\x72\x72\x2e\x70\x61\x74\x68\x3d\x65\x72\x72\x2e\x66\x75\x6c\x6c\x50\x61\x74\x68\x3f\x65\x72\x72\x2e\x66\x75\x6c\x6c\x50\x61\x74\x68\x2e\x6a\x6f\x69\x6e\x28\x22\x2e\x22\x29\x3a\x6e\x75\x6c\x6c\x3b\x65\x72\x72\x2e\x6c\x65\x76\x65\x6c\x3d\x22\x65\x72\x72\x6f\x72\x22\x3b\x65\x72\x72\x2e\x74\x79\x70\x65\x3d\x22\x74\x68\x72\x6f\x77\x6e\x22\x3b\x65\x72\x72\x2e\x73\x6f\x75\x72\x63\x65\x3d\x22\x72\x65\x73\x6f\x6c\x76\x65\x72\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x72\x72\x2c\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x2c\x7b\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x76\x61\x6c\x75\x65\x3a\x65\x72\x72\x2e\x6d\x65\x73\x73\x61\x67\x65\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x7d\x29\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x42\x61\x74\x63\x68\x28\x70\x72\x65\x70\x61\x72\x65\x64\x45\x72\x72\x6f\x72\x73\x29\x7d\x28\x30\x2c\x5f\x73\x65\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x73\x75\x6c\x74\x4d\x61\x70\x2c\x70\x61\x74\x68\x2c\x73\x70\x65\x63\x29\x3b\x28\x30\x2c\x5f\x73\x65\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x70\x65\x63\x57\x69\x74\x68\x43\x75\x72\x72\x65\x6e\x74\x53\x75\x62\x74\x72\x65\x65\x73\x2c\x70\x61\x74\x68\x2c\x73\x70\x65\x63\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x6f\x6e\x74\x65\x78\x74\x2e\x61\x62\x72\x75\x70\x74\x28\x22\x72\x65\x74\x75\x72\x6e\x22\x2c\x7b\x72\x65\x73\x75\x6c\x74\x4d\x61\x70\x3a\x72\x65\x73\x75\x6c\x74\x4d\x61\x70\x2c\x73\x70\x65\x63\x57\x69\x74\x68\x43\x75\x72\x72\x65\x6e\x74\x53\x75\x62\x74\x72\x65\x65\x73\x3a\x73\x70\x65\x63\x57\x69\x74\x68\x43\x75\x72\x72\x65\x6e\x74\x53\x75\x62\x74\x72\x65\x65\x73\x7d\x29\x3b\x63\x61\x73\x65\x20\x31\x35\x3a\x63\x61\x73\x65\x22\x65\x6e\x64\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x6f\x6e\x74\x65\x78\x74\x2e\x73\x74\x6f\x70\x28\x29\x7d\x7d\x7d\x2c\x5f\x63\x61\x6c\x6c\x65\x65\x2c\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7d\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x78\x2c\x5f\x78\x32\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x66\x35\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x7d\x28\x29\x2c\x5f\x70\x72\x6f\x6d\x69\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x7b\x72\x65\x73\x75\x6c\x74\x4d\x61\x70\x3a\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x5b\x5d\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x73\x70\x65\x63\x57\x69\x74\x68\x43\x75\x72\x72\x65\x6e\x74\x53\x75\x62\x74\x72\x65\x65\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x2e\x74\x6f\x4a\x53\x28\x29\x7d\x29\x29\x3b\x63\x61\x73\x65\x20\x31\x34\x3a\x62\x61\x74\x63\x68\x52\x65\x73\x75\x6c\x74\x3d\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x73\x65\x6e\x74\x3b\x64\x65\x6c\x65\x74\x65\x20\x72\x65\x71\x75\x65\x73\x74\x42\x61\x74\x63\x68\x2e\x73\x79\x73\x74\x65\x6d\x3b\x72\x65\x71\x75\x65\x73\x74\x42\x61\x74\x63\x68\x3d\x5b\x5d\x3b\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x6e\x65\x78\x74\x3d\x32\x32\x3b\x62\x72\x65\x61\x6b\x3b\x63\x61\x73\x65\x20\x31\x39\x3a\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x70\x72\x65\x76\x3d\x31\x39\x3b\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x74\x30\x3d\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x5b\x22\x63\x61\x74\x63\x68\x22\x5d\x28\x31\x31\x29\x3b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x74\x30\x29\x3b\x63\x61\x73\x65\x20\x32\x32\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x5b\x5d\x2c\x62\x61\x74\x63\x68\x52\x65\x73\x75\x6c\x74\x2e\x72\x65\x73\x75\x6c\x74\x4d\x61\x70\x29\x3b\x63\x61\x73\x65\x20\x32\x33\x3a\x63\x61\x73\x65\x22\x65\x6e\x64\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x6f\x6e\x74\x65\x78\x74\x32\x2e\x73\x74\x6f\x70\x28\x29\x7d\x7d\x7d\x2c\x5f\x63\x61\x6c\x6c\x65\x65\x32\x2c\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x5b\x5b\x31\x31\x2c\x31\x39\x5d\x5d\x29\x7d\x29\x29\x2c\x33\x35\x29\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x70\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x69\x73\x50\x61\x74\x68\x41\x6c\x72\x65\x61\x64\x79\x42\x61\x74\x63\x68\x65\x64\x3d\x72\x65\x71\x75\x65\x73\x74\x42\x61\x74\x63\x68\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x2e\x6a\x6f\x69\x6e\x28\x22\x40\x40\x22\x29\x7d\x29\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x70\x61\x74\x68\x2e\x6a\x6f\x69\x6e\x28\x22\x40\x40\x22\x29\x29\x3e\x2d\x31\x3b\x69\x66\x28\x69\x73\x50\x61\x74\x68\x41\x6c\x72\x65\x61\x64\x79\x42\x61\x74\x63\x68\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x72\x65\x71\x75\x65\x73\x74\x42\x61\x74\x63\x68\x2e\x70\x75\x73\x68\x28\x70\x61\x74\x68\x29\x3b\x72\x65\x71\x75\x65\x73\x74\x42\x61\x74\x63\x68\x2e\x73\x79\x73\x74\x65\x6d\x3d\x73\x79\x73\x74\x65\x6d\x3b\x64\x65\x62\x52\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x73\x28\x29\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x61\x6e\x67\x65\x50\x61\x72\x61\x6d\x28\x70\x61\x74\x68\x2c\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2c\x70\x61\x72\x61\x6d\x49\x6e\x2c\x76\x61\x6c\x75\x65\x2c\x69\x73\x58\x6d\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x3a\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2c\x70\x61\x72\x61\x6d\x49\x6e\x3a\x70\x61\x72\x61\x6d\x49\x6e\x2c\x69\x73\x58\x6d\x6c\x3a\x69\x73\x58\x6d\x6c\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x61\x6e\x67\x65\x50\x61\x72\x61\x6d\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x2c\x76\x61\x6c\x75\x65\x2c\x69\x73\x58\x6d\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x3a\x70\x61\x72\x61\x6d\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x69\x73\x58\x6d\x6c\x3a\x69\x73\x58\x6d\x6c\x7d\x7d\x7d\x76\x61\x72\x20\x75\x70\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x5f\x53\x55\x42\x54\x52\x45\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x69\x6e\x76\x61\x6c\x69\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x43\x61\x63\x68\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x6e\x76\x61\x6c\x69\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x43\x61\x63\x68\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x76\x61\x6c\x69\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x43\x61\x63\x68\x65\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x5f\x53\x55\x42\x54\x52\x45\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x5b\x5d\x2c\x76\x61\x6c\x75\x65\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x28\x70\x61\x79\x6c\x6f\x61\x64\x2c\x69\x73\x4f\x41\x53\x33\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x79\x6c\x6f\x61\x64\x2c\x69\x73\x4f\x41\x53\x33\x3a\x69\x73\x4f\x41\x53\x33\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x75\x70\x64\x61\x74\x65\x45\x6d\x70\x74\x79\x50\x61\x72\x61\x6d\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x45\x6d\x70\x74\x79\x50\x61\x72\x61\x6d\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x45\x6d\x70\x74\x79\x50\x61\x72\x61\x6d\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2c\x70\x61\x72\x61\x6d\x49\x6e\x2c\x69\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x45\x4d\x50\x54\x59\x5f\x50\x41\x52\x41\x4d\x5f\x49\x4e\x43\x4c\x55\x53\x49\x4f\x4e\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x3a\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2c\x70\x61\x72\x61\x6d\x49\x6e\x3a\x70\x61\x72\x61\x6d\x49\x6e\x2c\x69\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x3a\x69\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x7d\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x72\x56\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x43\x4c\x45\x41\x52\x5f\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x79\x6c\x6f\x61\x64\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x28\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x41\x5f\x56\x41\x4c\x55\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x6b\x65\x79\x3a\x22\x63\x6f\x6e\x73\x75\x6d\x65\x73\x5f\x76\x61\x6c\x75\x65\x22\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x61\x6e\x67\x65\x50\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x28\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x41\x5f\x56\x41\x4c\x55\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x6b\x65\x79\x3a\x22\x70\x72\x6f\x64\x75\x63\x65\x73\x5f\x76\x61\x6c\x75\x65\x22\x7d\x7d\x7d\x76\x61\x72\x20\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x72\x65\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x72\x65\x73\x3a\x72\x65\x73\x7d\x2c\x74\x79\x70\x65\x3a\x53\x45\x54\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x7d\x7d\x3b\x76\x61\x72\x20\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x72\x65\x71\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x72\x65\x71\x3a\x72\x65\x71\x7d\x2c\x74\x79\x70\x65\x3a\x53\x45\x54\x5f\x52\x45\x51\x55\x45\x53\x54\x7d\x7d\x3b\x76\x61\x72\x20\x73\x65\x74\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x72\x65\x71\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x72\x65\x71\x3a\x72\x65\x71\x7d\x2c\x74\x79\x70\x65\x3a\x53\x45\x54\x5f\x4d\x55\x54\x41\x54\x45\x44\x5f\x52\x45\x51\x55\x45\x53\x54\x7d\x7d\x3b\x76\x61\x72\x20\x6c\x6f\x67\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x67\x52\x65\x71\x75\x65\x73\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x6f\x67\x52\x65\x71\x75\x65\x73\x74\x28\x72\x65\x71\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x70\x61\x79\x6c\x6f\x61\x64\x3a\x72\x65\x71\x2c\x74\x79\x70\x65\x3a\x4c\x4f\x47\x5f\x52\x45\x51\x55\x45\x53\x54\x7d\x7d\x3b\x76\x61\x72\x20\x65\x78\x65\x63\x75\x74\x65\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x52\x65\x71\x75\x65\x73\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x78\x65\x63\x75\x74\x65\x52\x65\x71\x75\x65\x73\x74\x28\x72\x65\x71\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x38\x29\x7b\x76\x61\x72\x20\x66\x6e\x3d\x5f\x72\x65\x66\x38\x2e\x66\x6e\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x38\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x38\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x38\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x38\x2e\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x4e\x61\x6d\x65\x3d\x72\x65\x71\x2e\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x72\x65\x71\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x72\x65\x71\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x32\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x32\x2e\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x32\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3b\x76\x61\x72\x20\x6f\x70\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x69\x66\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x26\x26\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x29\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x26\x26\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x61\x6c\x6c\x6f\x77\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x22\x29\x3d\x3d\x3d\x74\x72\x75\x65\x7d\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x29\x7b\x69\x66\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x53\x65\x74\x74\x69\x6e\x67\x46\x6f\x72\x28\x5b\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2c\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x29\x29\x7b\x72\x65\x71\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x72\x65\x71\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x7c\x7c\x7b\x7d\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x70\x61\x72\x61\x6d\x54\x6f\x56\x61\x6c\x75\x65\x29\x28\x70\x61\x72\x61\x6d\x2c\x72\x65\x71\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x29\x3b\x69\x66\x28\x21\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x7c\x7c\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x26\x26\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x2e\x73\x69\x7a\x65\x3d\x3d\x3d\x30\x29\x7b\x72\x65\x71\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x5b\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x5d\x3d\x22\x22\x7d\x7d\x7d\x29\x7d\x72\x65\x71\x2e\x63\x6f\x6e\x74\x65\x78\x74\x55\x72\x6c\x3d\x28\x30\x2c\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x75\x72\x6c\x28\x29\x29\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x3b\x69\x66\x28\x6f\x70\x26\x26\x6f\x70\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x29\x7b\x72\x65\x71\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x6f\x70\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x6f\x70\x26\x26\x70\x61\x74\x68\x4e\x61\x6d\x65\x26\x26\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x71\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x66\x6e\x2e\x6f\x70\x49\x64\x28\x6f\x70\x2c\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7d\x69\x66\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x29\x7b\x76\x61\x72\x20\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x70\x61\x74\x68\x4e\x61\x6d\x65\x2b\x22\x3a\x22\x2b\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x71\x2e\x73\x65\x72\x76\x65\x72\x3d\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x28\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x29\x7c\x7c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x28\x29\x3b\x76\x61\x72\x20\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x3d\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x28\x7b\x73\x65\x72\x76\x65\x72\x3a\x72\x65\x71\x2e\x73\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3a\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x7d\x29\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x3d\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x28\x7b\x73\x65\x72\x76\x65\x72\x3a\x72\x65\x71\x2e\x73\x65\x72\x76\x65\x72\x7d\x29\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x72\x65\x71\x2e\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x3d\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x29\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x3a\x67\x6c\x6f\x62\x61\x6c\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x3b\x72\x65\x71\x2e\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x28\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x6d\x65\x74\x68\x6f\x64\x29\x3b\x72\x65\x71\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x28\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7c\x7c\x22\x2a\x2f\x2a\x22\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3d\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x28\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x6d\x65\x74\x68\x6f\x64\x29\x3b\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x4a\x53\x4f\x4e\x4f\x62\x6a\x65\x63\x74\x29\x28\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x29\x29\x7b\x72\x65\x71\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3d\x4a\x53\x4f\x4e\x2e\x70\x61\x72\x73\x65\x28\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x26\x26\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2e\x74\x6f\x4a\x53\x29\x7b\x72\x65\x71\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3d\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2e\x74\x6f\x4a\x53\x28\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x71\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3d\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x7d\x7d\x76\x61\x72\x20\x70\x61\x72\x73\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x72\x65\x71\x29\x3b\x70\x61\x72\x73\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3d\x66\x6e\x2e\x62\x75\x69\x6c\x64\x52\x65\x71\x75\x65\x73\x74\x28\x70\x61\x72\x73\x65\x64\x52\x65\x71\x75\x65\x73\x74\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x28\x72\x65\x71\x2e\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x72\x65\x71\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x73\x65\x64\x52\x65\x71\x75\x65\x73\x74\x29\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x57\x72\x61\x70\x70\x65\x72\x28\x72\x29\x7b\x76\x61\x72\x20\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3d\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x5b\x72\x5d\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x73\x65\x64\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x28\x72\x65\x71\x2e\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x72\x65\x71\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x73\x65\x64\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x7d\x3b\x72\x65\x71\x2e\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3d\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x57\x72\x61\x70\x70\x65\x72\x3b\x72\x65\x71\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3b\x76\x61\x72\x20\x73\x74\x61\x72\x74\x54\x69\x6d\x65\x3d\x44\x61\x74\x65\x2e\x6e\x6f\x77\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x65\x78\x65\x63\x75\x74\x65\x28\x72\x65\x71\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x29\x7b\x72\x65\x73\x2e\x64\x75\x72\x61\x74\x69\x6f\x6e\x3d\x44\x61\x74\x65\x2e\x6e\x6f\x77\x28\x29\x2d\x73\x74\x61\x72\x74\x54\x69\x6d\x65\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x28\x72\x65\x71\x2e\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x72\x65\x71\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x72\x65\x73\x29\x7d\x29\x2e\x63\x61\x74\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x28\x72\x65\x71\x2e\x70\x61\x74\x68\x4e\x61\x6d\x65\x2c\x72\x65\x71\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x7b\x65\x72\x72\x6f\x72\x3a\x74\x72\x75\x65\x2c\x65\x72\x72\x3a\x28\x30\x2c\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x72\x72\x29\x7d\x29\x7d\x29\x7d\x7d\x3b\x76\x61\x72\x20\x65\x78\x65\x63\x75\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x78\x65\x63\x75\x74\x65\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x39\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3a\x7b\x7d\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x39\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x39\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x65\x78\x74\x72\x61\x73\x3d\x28\x30\x2c\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x39\x2c\x5b\x22\x70\x61\x74\x68\x22\x2c\x22\x6d\x65\x74\x68\x6f\x64\x22\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x66\x65\x74\x63\x68\x3d\x73\x79\x73\x74\x65\x6d\x2e\x66\x6e\x2e\x66\x65\x74\x63\x68\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x28\x29\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x65\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x3b\x76\x61\x72\x20\x5f\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x24\x63\x6f\x6e\x74\x65\x6e\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x73\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x5f\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x24\x63\x6f\x6e\x74\x65\x6e\x2e\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x5f\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x24\x63\x6f\x6e\x74\x65\x6e\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3b\x76\x61\x72\x20\x69\x73\x58\x6d\x6c\x3d\x2f\x78\x6d\x6c\x2f\x69\x2e\x74\x65\x73\x74\x28\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x56\x61\x6c\x75\x65\x73\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x69\x73\x58\x6d\x6c\x29\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x52\x65\x71\x75\x65\x73\x74\x28\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x65\x78\x74\x72\x61\x73\x2c\x7b\x66\x65\x74\x63\x68\x3a\x66\x65\x74\x63\x68\x2c\x73\x70\x65\x63\x3a\x73\x70\x65\x63\x2c\x70\x61\x74\x68\x4e\x61\x6d\x65\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3a\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x73\x63\x68\x65\x6d\x65\x3a\x73\x63\x68\x65\x6d\x65\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x7d\x29\x29\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x3d\x65\x78\x65\x63\x75\x74\x65\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x72\x52\x65\x73\x70\x6f\x6e\x73\x65\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x43\x4c\x45\x41\x52\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x72\x52\x65\x71\x75\x65\x73\x74\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x43\x4c\x45\x41\x52\x5f\x52\x45\x51\x55\x45\x53\x54\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x53\x63\x68\x65\x6d\x65\x28\x73\x63\x68\x65\x6d\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x53\x45\x54\x5f\x53\x43\x48\x45\x4d\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x73\x63\x68\x65\x6d\x65\x3a\x73\x63\x68\x65\x6d\x65\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x6e\x61\x6d\x65\x2c\x66\x6f\x72\x62\x69\x64\x64\x65\x6e\x46\x69\x65\x6c\x64\x29\x7b\x69\x66\x28\x21\x28\x69\x74\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x29\x7c\x7c\x66\x6f\x72\x62\x69\x64\x64\x65\x6e\x46\x69\x65\x6c\x64\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x66\x6f\x72\x62\x69\x64\x64\x65\x6e\x46\x69\x65\x6c\x64\x20\x69\x6e\x20\x69\x74\x29\x7b\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x6e\x61\x6d\x65\x2b\x22\x3a\x20\x69\x6e\x63\x6f\x72\x72\x65\x63\x74\x20\x69\x6e\x76\x6f\x63\x61\x74\x69\x6f\x6e\x21\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x2c\x72\x65\x6a\x65\x63\x74\x3b\x74\x68\x69\x73\x2e\x70\x72\x6f\x6d\x69\x73\x65\x3d\x6e\x65\x77\x20\x43\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x24\x24\x72\x65\x73\x6f\x6c\x76\x65\x2c\x24\x24\x72\x65\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x72\x65\x73\x6f\x6c\x76\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x72\x65\x6a\x65\x63\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x42\x61\x64\x20\x50\x72\x6f\x6d\x69\x73\x65\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x22\x29\x3b\x72\x65\x73\x6f\x6c\x76\x65\x3d\x24\x24\x72\x65\x73\x6f\x6c\x76\x65\x3b\x72\x65\x6a\x65\x63\x74\x3d\x24\x24\x72\x65\x6a\x65\x63\x74\x7d\x29\x3b\x74\x68\x69\x73\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3d\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x6f\x6c\x76\x65\x29\x3b\x74\x68\x69\x73\x2e\x72\x65\x6a\x65\x63\x74\x3d\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x72\x67\x65\x74\x2c\x73\x72\x63\x2c\x73\x61\x66\x65\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x73\x72\x63\x29\x7b\x69\x66\x28\x73\x61\x66\x65\x26\x26\x74\x61\x72\x67\x65\x74\x5b\x6b\x65\x79\x5d\x29\x74\x61\x72\x67\x65\x74\x5b\x6b\x65\x79\x5d\x3d\x73\x72\x63\x5b\x6b\x65\x79\x5d\x3b\x65\x6c\x73\x65\x20\x68\x69\x64\x65\x28\x74\x61\x72\x67\x65\x74\x2c\x6b\x65\x79\x2c\x73\x72\x63\x5b\x6b\x65\x79\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x72\x67\x65\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x53\x63\x68\x65\x6d\x61\x28\x7b\x65\x78\x70\x6c\x69\x63\x69\x74\x3a\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x39\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x30\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x31\x29\x5d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x75\x72\x6c\x2d\x70\x61\x72\x73\x65\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x35\x29\x2c\x65\x71\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x31\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x3b\x69\x66\x28\x21\x28\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x29\x26\x26\x65\x71\x28\x6f\x62\x6a\x56\x61\x6c\x75\x65\x2c\x76\x61\x6c\x75\x65\x29\x29\x7c\x7c\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x21\x28\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6f\x76\x65\x72\x41\x72\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x36\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x6f\x76\x65\x72\x41\x72\x67\x28\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x2c\x4f\x62\x6a\x65\x63\x74\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x30\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x28\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x29\x3b\x6e\x65\x77\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x28\x72\x65\x73\x75\x6c\x74\x29\x2e\x73\x65\x74\x28\x6e\x65\x77\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x28\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x42\x61\x73\x69\x63\x41\x75\x74\x68\x65\x6e\x74\x69\x63\x61\x74\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x46\x6f\x72\x6d\x50\x61\x72\x61\x6d\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x50\x61\x73\x73\x77\x6f\x72\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x65\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x49\x6d\x70\x6c\x69\x63\x69\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4f\x4e\x46\x49\x47\x55\x52\x45\x5f\x41\x55\x54\x48\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x56\x41\x4c\x49\x44\x41\x54\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x5f\x4f\x41\x55\x54\x48\x32\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x50\x52\x45\x5f\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x5f\x4f\x41\x55\x54\x48\x32\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4c\x4f\x47\x4f\x55\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x79\x70\x65\x6f\x66\x32\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x67\x6f\x75\x74\x3d\x6c\x6f\x67\x6f\x75\x74\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x61\x75\x74\x68\x32\x3d\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x61\x75\x74\x68\x32\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6f\x6e\x66\x69\x67\x75\x72\x65\x41\x75\x74\x68\x3d\x63\x6f\x6e\x66\x69\x67\x75\x72\x65\x41\x75\x74\x68\x3b\x76\x61\x72\x20\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x31\x29\x3b\x76\x61\x72\x20\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x3d\x22\x73\x68\x6f\x77\x5f\x70\x6f\x70\x75\x70\x22\x3b\x76\x61\x72\x20\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x3d\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x22\x3b\x76\x61\x72\x20\x4c\x4f\x47\x4f\x55\x54\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4c\x4f\x47\x4f\x55\x54\x3d\x22\x6c\x6f\x67\x6f\x75\x74\x22\x3b\x76\x61\x72\x20\x50\x52\x45\x5f\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x5f\x4f\x41\x55\x54\x48\x32\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x50\x52\x45\x5f\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x5f\x4f\x41\x55\x54\x48\x32\x3d\x22\x70\x72\x65\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x5f\x6f\x61\x75\x74\x68\x32\x22\x3b\x76\x61\x72\x20\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x5f\x4f\x41\x55\x54\x48\x32\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x5f\x4f\x41\x55\x54\x48\x32\x3d\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x5f\x6f\x61\x75\x74\x68\x32\x22\x3b\x76\x61\x72\x20\x56\x41\x4c\x49\x44\x41\x54\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x56\x41\x4c\x49\x44\x41\x54\x45\x3d\x22\x76\x61\x6c\x69\x64\x61\x74\x65\x22\x3b\x76\x61\x72\x20\x43\x4f\x4e\x46\x49\x47\x55\x52\x45\x5f\x41\x55\x54\x48\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4f\x4e\x46\x49\x47\x55\x52\x45\x5f\x41\x55\x54\x48\x3d\x22\x63\x6f\x6e\x66\x69\x67\x75\x72\x65\x5f\x61\x75\x74\x68\x22\x3b\x76\x61\x72\x20\x73\x63\x6f\x70\x65\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x3d\x22\x20\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x70\x61\x79\x6c\x6f\x61\x64\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x70\x61\x79\x6c\x6f\x61\x64\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x6f\x67\x6f\x75\x74\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x4c\x4f\x47\x4f\x55\x54\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x70\x61\x79\x6c\x6f\x61\x64\x7d\x7d\x76\x61\x72\x20\x70\x72\x65\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x49\x6d\x70\x6c\x69\x63\x69\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x65\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x49\x6d\x70\x6c\x69\x63\x69\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x65\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x49\x6d\x70\x6c\x69\x63\x69\x74\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x61\x75\x74\x68\x2c\x74\x6f\x6b\x65\x6e\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x74\x6f\x6b\x65\x6e\x2c\x69\x73\x56\x61\x6c\x69\x64\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x69\x73\x56\x61\x6c\x69\x64\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x61\x75\x74\x68\x2e\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3d\x61\x75\x74\x68\x2e\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x66\x6c\x6f\x77\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x66\x6c\x6f\x77\x22\x29\x3b\x64\x65\x6c\x65\x74\x65\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x73\x77\x61\x67\x67\x65\x72\x55\x49\x52\x65\x64\x69\x72\x65\x63\x74\x4f\x61\x75\x74\x68\x32\x3b\x69\x66\x28\x66\x6c\x6f\x77\x21\x3d\x3d\x22\x61\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x22\x26\x26\x21\x69\x73\x56\x61\x6c\x69\x64\x29\x7b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x28\x7b\x61\x75\x74\x68\x49\x64\x3a\x6e\x61\x6d\x65\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x61\x75\x74\x68\x22\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x77\x61\x72\x6e\x69\x6e\x67\x22\x2c\x6d\x65\x73\x73\x61\x67\x65\x3a\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x20\x6d\x61\x79\x20\x62\x65\x20\x75\x6e\x73\x61\x66\x65\x2c\x20\x70\x61\x73\x73\x65\x64\x20\x73\x74\x61\x74\x65\x20\x77\x61\x73\x20\x63\x68\x61\x6e\x67\x65\x64\x20\x69\x6e\x20\x73\x65\x72\x76\x65\x72\x20\x50\x61\x73\x73\x65\x64\x20\x73\x74\x61\x74\x65\x20\x77\x61\x73\x6e\x27\x74\x20\x72\x65\x74\x75\x72\x6e\x65\x64\x20\x66\x72\x6f\x6d\x20\x61\x75\x74\x68\x20\x73\x65\x72\x76\x65\x72\x22\x7d\x29\x7d\x69\x66\x28\x74\x6f\x6b\x65\x6e\x2e\x65\x72\x72\x6f\x72\x29\x7b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x28\x7b\x61\x75\x74\x68\x49\x64\x3a\x6e\x61\x6d\x65\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x61\x75\x74\x68\x22\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x65\x72\x72\x6f\x72\x22\x2c\x6d\x65\x73\x73\x61\x67\x65\x3a\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x6f\x6b\x65\x6e\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x7d\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x61\x75\x74\x68\x32\x28\x7b\x61\x75\x74\x68\x3a\x61\x75\x74\x68\x2c\x74\x6f\x6b\x65\x6e\x3a\x74\x6f\x6b\x65\x6e\x7d\x29\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x61\x75\x74\x68\x32\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x5f\x4f\x41\x55\x54\x48\x32\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x70\x61\x79\x6c\x6f\x61\x64\x7d\x7d\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x50\x61\x73\x73\x77\x6f\x72\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x50\x61\x73\x73\x77\x6f\x72\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x50\x61\x73\x73\x77\x6f\x72\x64\x28\x61\x75\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x32\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x61\x75\x74\x68\x2e\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3d\x61\x75\x74\x68\x2e\x6e\x61\x6d\x65\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x3d\x61\x75\x74\x68\x2e\x75\x73\x65\x72\x6e\x61\x6d\x65\x2c\x70\x61\x73\x73\x77\x6f\x72\x64\x3d\x61\x75\x74\x68\x2e\x70\x61\x73\x73\x77\x6f\x72\x64\x2c\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x3d\x61\x75\x74\x68\x2e\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x2c\x63\x6c\x69\x65\x6e\x74\x49\x64\x3d\x61\x75\x74\x68\x2e\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3d\x61\x75\x74\x68\x2e\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3b\x76\x61\x72\x20\x66\x6f\x72\x6d\x3d\x7b\x67\x72\x61\x6e\x74\x5f\x74\x79\x70\x65\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x73\x63\x6f\x70\x65\x3a\x61\x75\x74\x68\x2e\x73\x63\x6f\x70\x65\x73\x2e\x6a\x6f\x69\x6e\x28\x73\x63\x6f\x70\x65\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x29\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x3a\x75\x73\x65\x72\x6e\x61\x6d\x65\x2c\x70\x61\x73\x73\x77\x6f\x72\x64\x3a\x70\x61\x73\x73\x77\x6f\x72\x64\x7d\x3b\x76\x61\x72\x20\x71\x75\x65\x72\x79\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x68\x65\x61\x64\x65\x72\x73\x3d\x7b\x7d\x3b\x73\x77\x69\x74\x63\x68\x28\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x29\x7b\x63\x61\x73\x65\x22\x72\x65\x71\x75\x65\x73\x74\x2d\x62\x6f\x64\x79\x22\x3a\x73\x65\x74\x43\x6c\x69\x65\x6e\x74\x49\x64\x41\x6e\x64\x53\x65\x63\x72\x65\x74\x28\x66\x6f\x72\x6d\x2c\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x29\x3b\x62\x72\x65\x61\x6b\x3b\x63\x61\x73\x65\x22\x62\x61\x73\x69\x63\x22\x3a\x68\x65\x61\x64\x65\x72\x73\x2e\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x3d\x22\x42\x61\x73\x69\x63\x20\x22\x2b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x62\x74\x6f\x61\x29\x28\x63\x6c\x69\x65\x6e\x74\x49\x64\x2b\x22\x3a\x22\x2b\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x29\x3b\x62\x72\x65\x61\x6b\x3b\x64\x65\x66\x61\x75\x6c\x74\x3a\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x77\x61\x72\x6e\x28\x22\x57\x61\x72\x6e\x69\x6e\x67\x3a\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x20\x22\x2b\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x2b\x22\x20\x77\x61\x73\x20\x70\x61\x73\x73\x65\x64\x2c\x20\x6e\x6f\x74\x20\x69\x6e\x63\x6c\x75\x64\x69\x6e\x67\x20\x63\x6c\x69\x65\x6e\x74\x20\x69\x64\x20\x61\x6e\x64\x20\x73\x65\x63\x72\x65\x74\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x52\x65\x71\x75\x65\x73\x74\x28\x7b\x62\x6f\x64\x79\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x62\x75\x69\x6c\x64\x46\x6f\x72\x6d\x44\x61\x74\x61\x29\x28\x66\x6f\x72\x6d\x29\x2c\x75\x72\x6c\x3a\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x6f\x6b\x65\x6e\x55\x72\x6c\x22\x29\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x68\x65\x61\x64\x65\x72\x73\x3a\x68\x65\x61\x64\x65\x72\x73\x2c\x71\x75\x65\x72\x79\x3a\x71\x75\x65\x72\x79\x2c\x61\x75\x74\x68\x3a\x61\x75\x74\x68\x7d\x29\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x43\x6c\x69\x65\x6e\x74\x49\x64\x41\x6e\x64\x53\x65\x63\x72\x65\x74\x28\x74\x61\x72\x67\x65\x74\x2c\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x29\x7b\x69\x66\x28\x63\x6c\x69\x65\x6e\x74\x49\x64\x29\x7b\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x61\x72\x67\x65\x74\x2c\x7b\x63\x6c\x69\x65\x6e\x74\x5f\x69\x64\x3a\x63\x6c\x69\x65\x6e\x74\x49\x64\x7d\x29\x7d\x69\x66\x28\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x29\x7b\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x61\x72\x67\x65\x74\x2c\x7b\x63\x6c\x69\x65\x6e\x74\x5f\x73\x65\x63\x72\x65\x74\x3a\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x7d\x29\x7d\x7d\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x28\x61\x75\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x33\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x61\x75\x74\x68\x2e\x73\x63\x68\x65\x6d\x61\x2c\x73\x63\x6f\x70\x65\x73\x3d\x61\x75\x74\x68\x2e\x73\x63\x6f\x70\x65\x73\x2c\x6e\x61\x6d\x65\x3d\x61\x75\x74\x68\x2e\x6e\x61\x6d\x65\x2c\x63\x6c\x69\x65\x6e\x74\x49\x64\x3d\x61\x75\x74\x68\x2e\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3d\x61\x75\x74\x68\x2e\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3b\x76\x61\x72\x20\x68\x65\x61\x64\x65\x72\x73\x3d\x7b\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x3a\x22\x42\x61\x73\x69\x63\x20\x22\x2b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x62\x74\x6f\x61\x29\x28\x63\x6c\x69\x65\x6e\x74\x49\x64\x2b\x22\x3a\x22\x2b\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x29\x7d\x3b\x76\x61\x72\x20\x66\x6f\x72\x6d\x3d\x7b\x67\x72\x61\x6e\x74\x5f\x74\x79\x70\x65\x3a\x22\x63\x6c\x69\x65\x6e\x74\x5f\x63\x72\x65\x64\x65\x6e\x74\x69\x61\x6c\x73\x22\x2c\x73\x63\x6f\x70\x65\x3a\x73\x63\x6f\x70\x65\x73\x2e\x6a\x6f\x69\x6e\x28\x73\x63\x6f\x70\x65\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x52\x65\x71\x75\x65\x73\x74\x28\x7b\x62\x6f\x64\x79\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x62\x75\x69\x6c\x64\x46\x6f\x72\x6d\x44\x61\x74\x61\x29\x28\x66\x6f\x72\x6d\x29\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x75\x72\x6c\x3a\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x6f\x6b\x65\x6e\x55\x72\x6c\x22\x29\x2c\x61\x75\x74\x68\x3a\x61\x75\x74\x68\x2c\x68\x65\x61\x64\x65\x72\x73\x3a\x68\x65\x61\x64\x65\x72\x73\x7d\x29\x7d\x7d\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x46\x6f\x72\x6d\x50\x61\x72\x61\x6d\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x46\x6f\x72\x6d\x50\x61\x72\x61\x6d\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x46\x6f\x72\x6d\x50\x61\x72\x61\x6d\x73\x28\x5f\x72\x65\x66\x34\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x3d\x5f\x72\x65\x66\x34\x2e\x61\x75\x74\x68\x2c\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x3d\x5f\x72\x65\x66\x34\x2e\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x35\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x35\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x61\x75\x74\x68\x2e\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3d\x61\x75\x74\x68\x2e\x6e\x61\x6d\x65\x2c\x63\x6c\x69\x65\x6e\x74\x49\x64\x3d\x61\x75\x74\x68\x2e\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3d\x61\x75\x74\x68\x2e\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3b\x76\x61\x72\x20\x66\x6f\x72\x6d\x3d\x7b\x67\x72\x61\x6e\x74\x5f\x74\x79\x70\x65\x3a\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x5f\x63\x6f\x64\x65\x22\x2c\x63\x6f\x64\x65\x3a\x61\x75\x74\x68\x2e\x63\x6f\x64\x65\x2c\x63\x6c\x69\x65\x6e\x74\x5f\x69\x64\x3a\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x63\x6c\x69\x65\x6e\x74\x5f\x73\x65\x63\x72\x65\x74\x3a\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x2c\x72\x65\x64\x69\x72\x65\x63\x74\x5f\x75\x72\x69\x3a\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x52\x65\x71\x75\x65\x73\x74\x28\x7b\x62\x6f\x64\x79\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x62\x75\x69\x6c\x64\x46\x6f\x72\x6d\x44\x61\x74\x61\x29\x28\x66\x6f\x72\x6d\x29\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x75\x72\x6c\x3a\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x6f\x6b\x65\x6e\x55\x72\x6c\x22\x29\x2c\x61\x75\x74\x68\x3a\x61\x75\x74\x68\x7d\x29\x7d\x7d\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x42\x61\x73\x69\x63\x41\x75\x74\x68\x65\x6e\x74\x69\x63\x61\x74\x69\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x42\x61\x73\x69\x63\x41\x75\x74\x68\x65\x6e\x74\x69\x63\x61\x74\x69\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x42\x61\x73\x69\x63\x41\x75\x74\x68\x65\x6e\x74\x69\x63\x61\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x36\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x3d\x5f\x72\x65\x66\x36\x2e\x61\x75\x74\x68\x2c\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x3d\x5f\x72\x65\x66\x36\x2e\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x37\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x37\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x61\x75\x74\x68\x2e\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3d\x61\x75\x74\x68\x2e\x6e\x61\x6d\x65\x2c\x63\x6c\x69\x65\x6e\x74\x49\x64\x3d\x61\x75\x74\x68\x2e\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3d\x61\x75\x74\x68\x2e\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3b\x76\x61\x72\x20\x68\x65\x61\x64\x65\x72\x73\x3d\x7b\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x3a\x22\x42\x61\x73\x69\x63\x20\x22\x2b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x62\x74\x6f\x61\x29\x28\x63\x6c\x69\x65\x6e\x74\x49\x64\x2b\x22\x3a\x22\x2b\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x29\x7d\x3b\x76\x61\x72\x20\x66\x6f\x72\x6d\x3d\x7b\x67\x72\x61\x6e\x74\x5f\x74\x79\x70\x65\x3a\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x5f\x63\x6f\x64\x65\x22\x2c\x63\x6f\x64\x65\x3a\x61\x75\x74\x68\x2e\x63\x6f\x64\x65\x2c\x63\x6c\x69\x65\x6e\x74\x5f\x69\x64\x3a\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x72\x65\x64\x69\x72\x65\x63\x74\x5f\x75\x72\x69\x3a\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x52\x65\x71\x75\x65\x73\x74\x28\x7b\x62\x6f\x64\x79\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x62\x75\x69\x6c\x64\x46\x6f\x72\x6d\x44\x61\x74\x61\x29\x28\x66\x6f\x72\x6d\x29\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x75\x72\x6c\x3a\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x6f\x6b\x65\x6e\x55\x72\x6c\x22\x29\x2c\x61\x75\x74\x68\x3a\x61\x75\x74\x68\x2c\x68\x65\x61\x64\x65\x72\x73\x3a\x68\x65\x61\x64\x65\x72\x73\x7d\x29\x7d\x7d\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x52\x65\x71\x75\x65\x73\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x52\x65\x71\x75\x65\x73\x74\x28\x64\x61\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x38\x29\x7b\x76\x61\x72\x20\x66\x6e\x3d\x5f\x72\x65\x66\x38\x2e\x66\x6e\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x38\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x38\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x38\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x38\x2e\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x38\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x38\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x62\x6f\x64\x79\x3d\x64\x61\x74\x61\x2e\x62\x6f\x64\x79\x2c\x5f\x64\x61\x74\x61\x24\x71\x75\x65\x72\x79\x3d\x64\x61\x74\x61\x2e\x71\x75\x65\x72\x79\x2c\x71\x75\x65\x72\x79\x3d\x5f\x64\x61\x74\x61\x24\x71\x75\x65\x72\x79\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x7b\x7d\x3a\x5f\x64\x61\x74\x61\x24\x71\x75\x65\x72\x79\x2c\x5f\x64\x61\x74\x61\x24\x68\x65\x61\x64\x65\x72\x73\x3d\x64\x61\x74\x61\x2e\x68\x65\x61\x64\x65\x72\x73\x2c\x68\x65\x61\x64\x65\x72\x73\x3d\x5f\x64\x61\x74\x61\x24\x68\x65\x61\x64\x65\x72\x73\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x7b\x7d\x3a\x5f\x64\x61\x74\x61\x24\x68\x65\x61\x64\x65\x72\x73\x2c\x6e\x61\x6d\x65\x3d\x64\x61\x74\x61\x2e\x6e\x61\x6d\x65\x2c\x75\x72\x6c\x3d\x64\x61\x74\x61\x2e\x75\x72\x6c\x2c\x61\x75\x74\x68\x3d\x64\x61\x74\x61\x2e\x61\x75\x74\x68\x3b\x76\x61\x72\x20\x5f\x72\x65\x66\x39\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x7c\x7c\x7b\x7d\x2c\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x3d\x5f\x72\x65\x66\x39\x2e\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x3b\x76\x61\x72\x20\x70\x61\x72\x73\x65\x64\x55\x72\x6c\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x29\x7b\x70\x61\x72\x73\x65\x64\x55\x72\x6c\x3d\x28\x30\x2c\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x75\x72\x6c\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x28\x29\x2c\x74\x72\x75\x65\x29\x7d\x65\x6c\x73\x65\x7b\x70\x61\x72\x73\x65\x64\x55\x72\x6c\x3d\x28\x30\x2c\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x75\x72\x6c\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x75\x72\x6c\x28\x29\x2c\x74\x72\x75\x65\x29\x7d\x69\x66\x28\x28\x74\x79\x70\x65\x6f\x66\x20\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x70\x61\x72\x73\x65\x64\x55\x72\x6c\x2e\x71\x75\x65\x72\x79\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x70\x61\x72\x73\x65\x64\x55\x72\x6c\x2e\x71\x75\x65\x72\x79\x2c\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x29\x7d\x76\x61\x72\x20\x66\x65\x74\x63\x68\x55\x72\x6c\x3d\x70\x61\x72\x73\x65\x64\x55\x72\x6c\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x61\x64\x65\x72\x73\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x41\x63\x63\x65\x70\x74\x3a\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x6a\x73\x6f\x6e\x2c\x20\x74\x65\x78\x74\x2f\x70\x6c\x61\x69\x6e\x2c\x20\x2a\x2f\x2a\x22\x2c\x22\x43\x6f\x6e\x74\x65\x6e\x74\x2d\x54\x79\x70\x65\x22\x3a\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x78\x2d\x77\x77\x77\x2d\x66\x6f\x72\x6d\x2d\x75\x72\x6c\x65\x6e\x63\x6f\x64\x65\x64\x22\x2c\x22\x58\x2d\x52\x65\x71\x75\x65\x73\x74\x65\x64\x2d\x57\x69\x74\x68\x22\x3a\x22\x58\x4d\x4c\x48\x74\x74\x70\x52\x65\x71\x75\x65\x73\x74\x22\x7d\x2c\x68\x65\x61\x64\x65\x72\x73\x29\x3b\x66\x6e\x2e\x66\x65\x74\x63\x68\x28\x7b\x75\x72\x6c\x3a\x66\x65\x74\x63\x68\x55\x72\x6c\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x22\x70\x6f\x73\x74\x22\x2c\x68\x65\x61\x64\x65\x72\x73\x3a\x5f\x68\x65\x61\x64\x65\x72\x73\x2c\x71\x75\x65\x72\x79\x3a\x71\x75\x65\x72\x79\x2c\x62\x6f\x64\x79\x3a\x62\x6f\x64\x79\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2e\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x7d\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x29\x7b\x76\x61\x72\x20\x74\x6f\x6b\x65\x6e\x3d\x4a\x53\x4f\x4e\x2e\x70\x61\x72\x73\x65\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x64\x61\x74\x61\x29\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x3d\x74\x6f\x6b\x65\x6e\x26\x26\x28\x74\x6f\x6b\x65\x6e\x2e\x65\x72\x72\x6f\x72\x7c\x7c\x22\x22\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x73\x65\x45\x72\x72\x6f\x72\x3d\x74\x6f\x6b\x65\x6e\x26\x26\x28\x74\x6f\x6b\x65\x6e\x2e\x70\x61\x72\x73\x65\x45\x72\x72\x6f\x72\x7c\x7c\x22\x22\x29\x3b\x69\x66\x28\x21\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x6f\x6b\x29\x7b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x28\x7b\x61\x75\x74\x68\x49\x64\x3a\x6e\x61\x6d\x65\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x65\x72\x72\x6f\x72\x22\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x61\x75\x74\x68\x22\x2c\x6d\x65\x73\x73\x61\x67\x65\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x7d\x69\x66\x28\x65\x72\x72\x6f\x72\x7c\x7c\x70\x61\x72\x73\x65\x45\x72\x72\x6f\x72\x29\x7b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x28\x7b\x61\x75\x74\x68\x49\x64\x3a\x6e\x61\x6d\x65\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x65\x72\x72\x6f\x72\x22\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x61\x75\x74\x68\x22\x2c\x6d\x65\x73\x73\x61\x67\x65\x3a\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x6f\x6b\x65\x6e\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x7d\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x61\x75\x74\x68\x32\x28\x7b\x61\x75\x74\x68\x3a\x61\x75\x74\x68\x2c\x74\x6f\x6b\x65\x6e\x3a\x74\x6f\x6b\x65\x6e\x7d\x29\x7d\x29\x2e\x63\x61\x74\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x3d\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x65\x29\x3b\x76\x61\x72\x20\x6d\x65\x73\x73\x61\x67\x65\x3d\x65\x72\x72\x2e\x6d\x65\x73\x73\x61\x67\x65\x3b\x69\x66\x28\x65\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x26\x26\x65\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x64\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x44\x61\x74\x61\x3d\x65\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x64\x61\x74\x61\x3b\x74\x72\x79\x7b\x76\x61\x72\x20\x6a\x73\x6f\x6e\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x74\x79\x70\x65\x6f\x66\x20\x65\x72\x72\x44\x61\x74\x61\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x3f\x4a\x53\x4f\x4e\x2e\x70\x61\x72\x73\x65\x28\x65\x72\x72\x44\x61\x74\x61\x29\x3a\x65\x72\x72\x44\x61\x74\x61\x3b\x69\x66\x28\x6a\x73\x6f\x6e\x52\x65\x73\x70\x6f\x6e\x73\x65\x2e\x65\x72\x72\x6f\x72\x29\x6d\x65\x73\x73\x61\x67\x65\x2b\x3d\x22\x2c\x20\x65\x72\x72\x6f\x72\x3a\x20\x22\x2b\x6a\x73\x6f\x6e\x52\x65\x73\x70\x6f\x6e\x73\x65\x2e\x65\x72\x72\x6f\x72\x3b\x69\x66\x28\x6a\x73\x6f\x6e\x52\x65\x73\x70\x6f\x6e\x73\x65\x2e\x65\x72\x72\x6f\x72\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x29\x6d\x65\x73\x73\x61\x67\x65\x2b\x3d\x22\x2c\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3a\x20\x22\x2b\x6a\x73\x6f\x6e\x52\x65\x73\x70\x6f\x6e\x73\x65\x2e\x65\x72\x72\x6f\x72\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x63\x61\x74\x63\x68\x28\x6a\x73\x6f\x6e\x45\x72\x72\x6f\x72\x29\x7b\x7d\x7d\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x28\x7b\x61\x75\x74\x68\x49\x64\x3a\x6e\x61\x6d\x65\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x65\x72\x72\x6f\x72\x22\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x61\x75\x74\x68\x22\x2c\x6d\x65\x73\x73\x61\x67\x65\x3a\x6d\x65\x73\x73\x61\x67\x65\x7d\x29\x7d\x29\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x66\x69\x67\x75\x72\x65\x41\x75\x74\x68\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x43\x4f\x4e\x46\x49\x47\x55\x52\x45\x5f\x41\x55\x54\x48\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x70\x61\x79\x6c\x6f\x61\x64\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x73\x65\x59\x61\x6d\x6c\x43\x6f\x6e\x66\x69\x67\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x6a\x73\x59\x61\x6d\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x32\x29\x3b\x76\x61\x72\x20\x5f\x6a\x73\x59\x61\x6d\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6a\x73\x59\x61\x6d\x6c\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x70\x61\x72\x73\x65\x59\x61\x6d\x6c\x43\x6f\x6e\x66\x69\x67\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x73\x65\x59\x61\x6d\x6c\x43\x6f\x6e\x66\x69\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x73\x65\x59\x61\x6d\x6c\x43\x6f\x6e\x66\x69\x67\x28\x79\x61\x6d\x6c\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x6a\x73\x59\x61\x6d\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x73\x61\x66\x65\x4c\x6f\x61\x64\x28\x79\x61\x6d\x6c\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x69\x66\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x73\x79\x73\x74\x65\x6d\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x28\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x65\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x7b\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x61\x64\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x54\x4f\x47\x47\x4c\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x3d\x75\x70\x64\x61\x74\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x6f\x67\x67\x6c\x65\x3d\x74\x6f\x67\x67\x6c\x65\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x3d\x22\x63\x6f\x6e\x66\x69\x67\x73\x5f\x75\x70\x64\x61\x74\x65\x22\x3b\x76\x61\x72\x20\x54\x4f\x47\x47\x4c\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x54\x4f\x47\x47\x4c\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x3d\x22\x63\x6f\x6e\x66\x69\x67\x73\x5f\x74\x6f\x67\x67\x6c\x65\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x28\x63\x6f\x6e\x66\x69\x67\x4e\x61\x6d\x65\x2c\x63\x6f\x6e\x66\x69\x67\x56\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x63\x6f\x6e\x66\x69\x67\x4e\x61\x6d\x65\x2c\x63\x6f\x6e\x66\x69\x67\x56\x61\x6c\x75\x65\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x67\x67\x6c\x65\x28\x63\x6f\x6e\x66\x69\x67\x4e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x54\x4f\x47\x47\x4c\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x63\x6f\x6e\x66\x69\x67\x4e\x61\x6d\x65\x7d\x7d\x76\x61\x72\x20\x6c\x6f\x61\x64\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x61\x64\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x6f\x61\x64\x65\x64\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3d\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x3d\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x3d\x73\x65\x74\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x45\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x45\x52\x3d\x22\x6f\x61\x73\x33\x5f\x73\x65\x74\x5f\x73\x65\x72\x76\x65\x72\x73\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x51\x55\x45\x53\x54\x5f\x42\x4f\x44\x59\x5f\x56\x41\x4c\x55\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x51\x55\x45\x53\x54\x5f\x42\x4f\x44\x59\x5f\x56\x41\x4c\x55\x45\x3d\x22\x6f\x61\x73\x33\x5f\x73\x65\x74\x5f\x72\x65\x71\x75\x65\x73\x74\x5f\x62\x6f\x64\x79\x5f\x76\x61\x6c\x75\x65\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x41\x43\x54\x49\x56\x45\x5f\x45\x58\x41\x4d\x50\x4c\x45\x53\x5f\x4d\x45\x4d\x42\x45\x52\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x41\x43\x54\x49\x56\x45\x5f\x45\x58\x41\x4d\x50\x4c\x45\x53\x5f\x4d\x45\x4d\x42\x45\x52\x3d\x22\x6f\x61\x73\x33\x5f\x73\x65\x74\x5f\x61\x63\x74\x69\x76\x65\x5f\x65\x78\x61\x6d\x70\x6c\x65\x73\x5f\x6d\x65\x6d\x62\x65\x72\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x51\x55\x45\x53\x54\x5f\x43\x4f\x4e\x54\x45\x4e\x54\x5f\x54\x59\x50\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x51\x55\x45\x53\x54\x5f\x43\x4f\x4e\x54\x45\x4e\x54\x5f\x54\x59\x50\x45\x3d\x22\x6f\x61\x73\x33\x5f\x73\x65\x74\x5f\x72\x65\x71\x75\x65\x73\x74\x5f\x63\x6f\x6e\x74\x65\x6e\x74\x5f\x74\x79\x70\x65\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x5f\x43\x4f\x4e\x54\x45\x4e\x54\x5f\x54\x59\x50\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x5f\x43\x4f\x4e\x54\x45\x4e\x54\x5f\x54\x59\x50\x45\x3d\x22\x6f\x61\x73\x33\x5f\x73\x65\x74\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x5f\x63\x6f\x6e\x74\x65\x6e\x74\x5f\x74\x79\x70\x65\x22\x3b\x76\x61\x72\x20\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x52\x56\x45\x52\x5f\x56\x41\x52\x49\x41\x42\x4c\x45\x5f\x56\x41\x4c\x55\x45\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x52\x56\x45\x52\x5f\x56\x41\x52\x49\x41\x42\x4c\x45\x5f\x56\x41\x4c\x55\x45\x3d\x22\x6f\x61\x73\x33\x5f\x73\x65\x74\x5f\x73\x65\x72\x76\x65\x72\x5f\x76\x61\x72\x69\x61\x62\x6c\x65\x5f\x76\x61\x6c\x75\x65\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x28\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x55\x72\x6c\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x45\x52\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x55\x72\x6c\x3a\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x55\x72\x6c\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3a\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x2e\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x51\x55\x45\x53\x54\x5f\x42\x4f\x44\x59\x5f\x56\x41\x4c\x55\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x6e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x32\x2e\x6e\x61\x6d\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x32\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x3d\x5f\x72\x65\x66\x32\x2e\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x2c\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x32\x2e\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x3b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x41\x43\x54\x49\x56\x45\x5f\x45\x58\x41\x4d\x50\x4c\x45\x53\x5f\x4d\x45\x4d\x42\x45\x52\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x3a\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x2c\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x3a\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x28\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x33\x2e\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x33\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x51\x55\x45\x53\x54\x5f\x43\x4f\x4e\x54\x45\x4e\x54\x5f\x54\x59\x50\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x28\x5f\x72\x65\x66\x34\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x34\x2e\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x34\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x34\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x5f\x43\x4f\x4e\x54\x45\x4e\x54\x5f\x54\x59\x50\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x28\x5f\x72\x65\x66\x35\x29\x7b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x3d\x5f\x72\x65\x66\x35\x2e\x73\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x5f\x72\x65\x66\x35\x2e\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x35\x2e\x6b\x65\x79\x2c\x76\x61\x6c\x3d\x5f\x72\x65\x66\x35\x2e\x76\x61\x6c\x3b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x52\x56\x45\x52\x5f\x56\x41\x52\x49\x41\x42\x4c\x45\x5f\x56\x41\x4c\x55\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x7b\x73\x65\x72\x76\x65\x72\x3a\x73\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3a\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x6b\x65\x79\x3a\x6b\x65\x79\x2c\x76\x61\x6c\x3a\x76\x61\x6c\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x6f\x6e\x65\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x64\x6f\x6e\x65\x3a\x21\x21\x64\x6f\x6e\x65\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x26\x26\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x38\x29\x28\x22\x64\x69\x76\x22\x29\x2c\x22\x61\x22\x2c\x7b\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x37\x7d\x7d\x29\x2e\x61\x21\x3d\x37\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x29\x3b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x29\x3b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x49\x6e\x64\x65\x78\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x33\x29\x28\x66\x61\x6c\x73\x65\x29\x3b\x76\x61\x72\x20\x49\x45\x5f\x50\x52\x4f\x54\x4f\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x31\x29\x28\x22\x49\x45\x5f\x50\x52\x4f\x54\x4f\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6e\x61\x6d\x65\x73\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x6b\x65\x79\x3b\x66\x6f\x72\x28\x6b\x65\x79\x20\x69\x6e\x20\x4f\x29\x69\x66\x28\x6b\x65\x79\x21\x3d\x49\x45\x5f\x50\x52\x4f\x54\x4f\x29\x68\x61\x73\x28\x4f\x2c\x6b\x65\x79\x29\x26\x26\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x3b\x77\x68\x69\x6c\x65\x28\x6e\x61\x6d\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x69\x66\x28\x68\x61\x73\x28\x4f\x2c\x6b\x65\x79\x3d\x6e\x61\x6d\x65\x73\x5b\x69\x2b\x2b\x5d\x29\x29\x7b\x7e\x61\x72\x72\x61\x79\x49\x6e\x64\x65\x78\x4f\x66\x28\x72\x65\x73\x75\x6c\x74\x2c\x6b\x65\x79\x29\x7c\x7c\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x64\x6f\x63\x75\x6d\x65\x6e\x74\x26\x26\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x45\x6c\x65\x6d\x65\x6e\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x29\x3b\x76\x61\x72\x20\x74\x6f\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x29\x3b\x76\x61\x72\x20\x49\x45\x5f\x50\x52\x4f\x54\x4f\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x31\x29\x28\x22\x49\x45\x5f\x50\x52\x4f\x54\x4f\x22\x29\x3b\x76\x61\x72\x20\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4f\x29\x7b\x4f\x3d\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x69\x66\x28\x68\x61\x73\x28\x4f\x2c\x49\x45\x5f\x50\x52\x4f\x54\x4f\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x4f\x5b\x49\x45\x5f\x50\x52\x4f\x54\x4f\x5d\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x4f\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x4f\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x4f\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x4f\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x4f\x62\x6a\x65\x63\x74\x3f\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3a\x6e\x75\x6c\x6c\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x3b\x76\x61\x72\x20\x53\x48\x41\x52\x45\x44\x3d\x22\x5f\x5f\x63\x6f\x72\x65\x2d\x6a\x73\x5f\x73\x68\x61\x72\x65\x64\x5f\x5f\x22\x3b\x76\x61\x72\x20\x73\x74\x6f\x72\x65\x3d\x67\x6c\x6f\x62\x61\x6c\x5b\x53\x48\x41\x52\x45\x44\x5d\x7c\x7c\x28\x67\x6c\x6f\x62\x61\x6c\x5b\x53\x48\x41\x52\x45\x44\x5d\x3d\x7b\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x6f\x72\x65\x5b\x6b\x65\x79\x5d\x7c\x7c\x28\x73\x74\x6f\x72\x65\x5b\x6b\x65\x79\x5d\x3d\x7b\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x62\x69\x74\x6d\x61\x70\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x21\x28\x62\x69\x74\x6d\x61\x70\x26\x31\x29\x2c\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x21\x28\x62\x69\x74\x6d\x61\x70\x26\x32\x29\x2c\x77\x72\x69\x74\x61\x62\x6c\x65\x3a\x21\x28\x62\x69\x74\x6d\x61\x70\x26\x34\x29\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x61\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x38\x29\x28\x74\x72\x75\x65\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x39\x29\x28\x53\x74\x72\x69\x6e\x67\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x61\x74\x65\x64\x29\x7b\x74\x68\x69\x73\x2e\x5f\x74\x3d\x53\x74\x72\x69\x6e\x67\x28\x69\x74\x65\x72\x61\x74\x65\x64\x29\x3b\x74\x68\x69\x73\x2e\x5f\x69\x3d\x30\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x68\x69\x73\x2e\x5f\x74\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x74\x68\x69\x73\x2e\x5f\x69\x3b\x76\x61\x72\x20\x70\x6f\x69\x6e\x74\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x3e\x3d\x4f\x2e\x6c\x65\x6e\x67\x74\x68\x29\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x64\x6f\x6e\x65\x3a\x74\x72\x75\x65\x7d\x3b\x70\x6f\x69\x6e\x74\x3d\x24\x61\x74\x28\x4f\x2c\x69\x6e\x64\x65\x78\x29\x3b\x74\x68\x69\x73\x2e\x5f\x69\x2b\x3d\x70\x6f\x69\x6e\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x70\x6f\x69\x6e\x74\x2c\x64\x6f\x6e\x65\x3a\x66\x61\x6c\x73\x65\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x38\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x68\x61\x74\x2c\x70\x6f\x73\x29\x7b\x76\x61\x72\x20\x73\x3d\x53\x74\x72\x69\x6e\x67\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x74\x68\x61\x74\x29\x29\x3b\x76\x61\x72\x20\x69\x3d\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x28\x70\x6f\x73\x29\x3b\x76\x61\x72\x20\x6c\x3d\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x61\x2c\x62\x3b\x69\x66\x28\x69\x3c\x30\x7c\x7c\x69\x3e\x3d\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x3f\x22\x22\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x61\x3d\x73\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x3c\x35\x35\x32\x39\x36\x7c\x7c\x61\x3e\x35\x36\x33\x31\x39\x7c\x7c\x69\x2b\x31\x3d\x3d\x3d\x6c\x7c\x7c\x28\x62\x3d\x73\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x2b\x31\x29\x29\x3c\x35\x36\x33\x32\x30\x7c\x7c\x62\x3e\x35\x37\x33\x34\x33\x3f\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x3f\x73\x2e\x63\x68\x61\x72\x41\x74\x28\x69\x29\x3a\x61\x3a\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x3f\x73\x2e\x73\x6c\x69\x63\x65\x28\x69\x2c\x69\x2b\x32\x29\x3a\x28\x61\x2d\x35\x35\x32\x39\x36\x3c\x3c\x31\x30\x29\x2b\x28\x62\x2d\x35\x36\x33\x32\x30\x29\x2b\x36\x35\x35\x33\x36\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x4c\x49\x42\x52\x41\x52\x59\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x30\x29\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x72\x65\x64\x65\x66\x69\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x29\x3b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x39\x29\x3b\x76\x61\x72\x20\x24\x69\x74\x65\x72\x43\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x31\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x39\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x37\x29\x3b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x42\x55\x47\x47\x59\x3d\x21\x28\x5b\x5d\x2e\x6b\x65\x79\x73\x26\x26\x22\x6e\x65\x78\x74\x22\x69\x6e\x5b\x5d\x2e\x6b\x65\x79\x73\x28\x29\x29\x3b\x76\x61\x72\x20\x46\x46\x5f\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x22\x40\x40\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x3b\x76\x61\x72\x20\x4b\x45\x59\x53\x3d\x22\x6b\x65\x79\x73\x22\x3b\x76\x61\x72\x20\x56\x41\x4c\x55\x45\x53\x3d\x22\x76\x61\x6c\x75\x65\x73\x22\x3b\x76\x61\x72\x20\x72\x65\x74\x75\x72\x6e\x54\x68\x69\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x42\x61\x73\x65\x2c\x4e\x41\x4d\x45\x2c\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x6e\x65\x78\x74\x2c\x44\x45\x46\x41\x55\x4c\x54\x2c\x49\x53\x5f\x53\x45\x54\x2c\x46\x4f\x52\x43\x45\x44\x29\x7b\x24\x69\x74\x65\x72\x43\x72\x65\x61\x74\x65\x28\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x4e\x41\x4d\x45\x2c\x6e\x65\x78\x74\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x69\x6e\x64\x29\x7b\x69\x66\x28\x21\x42\x55\x47\x47\x59\x26\x26\x6b\x69\x6e\x64\x20\x69\x6e\x20\x70\x72\x6f\x74\x6f\x29\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x74\x6f\x5b\x6b\x69\x6e\x64\x5d\x3b\x73\x77\x69\x74\x63\x68\x28\x6b\x69\x6e\x64\x29\x7b\x63\x61\x73\x65\x20\x4b\x45\x59\x53\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6b\x65\x79\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x6b\x69\x6e\x64\x29\x7d\x3b\x63\x61\x73\x65\x20\x56\x41\x4c\x55\x45\x53\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x75\x65\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x6b\x69\x6e\x64\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x6e\x74\x72\x69\x65\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x6b\x69\x6e\x64\x29\x7d\x7d\x3b\x76\x61\x72\x20\x54\x41\x47\x3d\x4e\x41\x4d\x45\x2b\x22\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x22\x3b\x76\x61\x72\x20\x44\x45\x46\x5f\x56\x41\x4c\x55\x45\x53\x3d\x44\x45\x46\x41\x55\x4c\x54\x3d\x3d\x56\x41\x4c\x55\x45\x53\x3b\x76\x61\x72\x20\x56\x41\x4c\x55\x45\x53\x5f\x42\x55\x47\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x70\x72\x6f\x74\x6f\x3d\x42\x61\x73\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x24\x6e\x61\x74\x69\x76\x65\x3d\x70\x72\x6f\x74\x6f\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x7c\x7c\x70\x72\x6f\x74\x6f\x5b\x46\x46\x5f\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x7c\x7c\x44\x45\x46\x41\x55\x4c\x54\x26\x26\x70\x72\x6f\x74\x6f\x5b\x44\x45\x46\x41\x55\x4c\x54\x5d\x3b\x76\x61\x72\x20\x24\x64\x65\x66\x61\x75\x6c\x74\x3d\x24\x6e\x61\x74\x69\x76\x65\x7c\x7c\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x28\x44\x45\x46\x41\x55\x4c\x54\x29\x3b\x76\x61\x72\x20\x24\x65\x6e\x74\x72\x69\x65\x73\x3d\x44\x45\x46\x41\x55\x4c\x54\x3f\x21\x44\x45\x46\x5f\x56\x41\x4c\x55\x45\x53\x3f\x24\x64\x65\x66\x61\x75\x6c\x74\x3a\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x28\x22\x65\x6e\x74\x72\x69\x65\x73\x22\x29\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x24\x61\x6e\x79\x4e\x61\x74\x69\x76\x65\x3d\x4e\x41\x4d\x45\x3d\x3d\x22\x41\x72\x72\x61\x79\x22\x3f\x70\x72\x6f\x74\x6f\x2e\x65\x6e\x74\x72\x69\x65\x73\x7c\x7c\x24\x6e\x61\x74\x69\x76\x65\x3a\x24\x6e\x61\x74\x69\x76\x65\x3b\x76\x61\x72\x20\x6d\x65\x74\x68\x6f\x64\x73\x2c\x6b\x65\x79\x2c\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x69\x66\x28\x24\x61\x6e\x79\x4e\x61\x74\x69\x76\x65\x29\x7b\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x28\x24\x61\x6e\x79\x4e\x61\x74\x69\x76\x65\x2e\x63\x61\x6c\x6c\x28\x6e\x65\x77\x20\x42\x61\x73\x65\x29\x29\x3b\x69\x66\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x21\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x26\x26\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x6e\x65\x78\x74\x29\x7b\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x54\x41\x47\x2c\x74\x72\x75\x65\x29\x3b\x69\x66\x28\x21\x4c\x49\x42\x52\x41\x52\x59\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x68\x69\x64\x65\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x49\x54\x45\x52\x41\x54\x4f\x52\x2c\x72\x65\x74\x75\x72\x6e\x54\x68\x69\x73\x29\x7d\x7d\x69\x66\x28\x44\x45\x46\x5f\x56\x41\x4c\x55\x45\x53\x26\x26\x24\x6e\x61\x74\x69\x76\x65\x26\x26\x24\x6e\x61\x74\x69\x76\x65\x2e\x6e\x61\x6d\x65\x21\x3d\x3d\x56\x41\x4c\x55\x45\x53\x29\x7b\x56\x41\x4c\x55\x45\x53\x5f\x42\x55\x47\x3d\x74\x72\x75\x65\x3b\x24\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x75\x65\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x6e\x61\x74\x69\x76\x65\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x29\x7d\x7d\x69\x66\x28\x28\x21\x4c\x49\x42\x52\x41\x52\x59\x7c\x7c\x46\x4f\x52\x43\x45\x44\x29\x26\x26\x28\x42\x55\x47\x47\x59\x7c\x7c\x56\x41\x4c\x55\x45\x53\x5f\x42\x55\x47\x7c\x7c\x21\x70\x72\x6f\x74\x6f\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x29\x29\x7b\x68\x69\x64\x65\x28\x70\x72\x6f\x74\x6f\x2c\x49\x54\x45\x52\x41\x54\x4f\x52\x2c\x24\x64\x65\x66\x61\x75\x6c\x74\x29\x7d\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x5b\x4e\x41\x4d\x45\x5d\x3d\x24\x64\x65\x66\x61\x75\x6c\x74\x3b\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x5b\x54\x41\x47\x5d\x3d\x72\x65\x74\x75\x72\x6e\x54\x68\x69\x73\x3b\x69\x66\x28\x44\x45\x46\x41\x55\x4c\x54\x29\x7b\x6d\x65\x74\x68\x6f\x64\x73\x3d\x7b\x76\x61\x6c\x75\x65\x73\x3a\x44\x45\x46\x5f\x56\x41\x4c\x55\x45\x53\x3f\x24\x64\x65\x66\x61\x75\x6c\x74\x3a\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x28\x56\x41\x4c\x55\x45\x53\x29\x2c\x6b\x65\x79\x73\x3a\x49\x53\x5f\x53\x45\x54\x3f\x24\x64\x65\x66\x61\x75\x6c\x74\x3a\x67\x65\x74\x4d\x65\x74\x68\x6f\x64\x28\x4b\x45\x59\x53\x29\x2c\x65\x6e\x74\x72\x69\x65\x73\x3a\x24\x65\x6e\x74\x72\x69\x65\x73\x7d\x3b\x69\x66\x28\x46\x4f\x52\x43\x45\x44\x29\x66\x6f\x72\x28\x6b\x65\x79\x20\x69\x6e\x20\x6d\x65\x74\x68\x6f\x64\x73\x29\x7b\x69\x66\x28\x21\x28\x6b\x65\x79\x20\x69\x6e\x20\x70\x72\x6f\x74\x6f\x29\x29\x72\x65\x64\x65\x66\x69\x6e\x65\x28\x70\x72\x6f\x74\x6f\x2c\x6b\x65\x79\x2c\x6d\x65\x74\x68\x6f\x64\x73\x5b\x6b\x65\x79\x5d\x29\x7d\x65\x6c\x73\x65\x20\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x28\x42\x55\x47\x47\x59\x7c\x7c\x56\x41\x4c\x55\x45\x53\x5f\x42\x55\x47\x29\x2c\x4e\x41\x4d\x45\x2c\x6d\x65\x74\x68\x6f\x64\x73\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6d\x65\x74\x68\x6f\x64\x73\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x61\x6c\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x34\x29\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6b\x65\x79\x73\x28\x4f\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x6b\x65\x79\x73\x28\x4f\x2c\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x38\x29\x3b\x76\x61\x72\x20\x6d\x61\x78\x3d\x4d\x61\x74\x68\x2e\x6d\x61\x78\x3b\x76\x61\x72\x20\x6d\x69\x6e\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x6e\x64\x65\x78\x3d\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x28\x69\x6e\x64\x65\x78\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x64\x65\x78\x3c\x30\x3f\x6d\x61\x78\x28\x69\x6e\x64\x65\x78\x2b\x6c\x65\x6e\x67\x74\x68\x2c\x30\x29\x3a\x6d\x69\x6e\x28\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2c\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x2c\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x2c\x74\x6f\x4c\x6f\x63\x61\x6c\x65\x53\x74\x72\x69\x6e\x67\x2c\x74\x6f\x53\x74\x72\x69\x6e\x67\x2c\x76\x61\x6c\x75\x65\x4f\x66\x22\x2e\x73\x70\x6c\x69\x74\x28\x22\x2c\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x64\x6f\x63\x75\x6d\x65\x6e\x74\x26\x26\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x45\x6c\x65\x6d\x65\x6e\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x29\x3b\x76\x61\x72\x20\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x30\x29\x3b\x76\x61\x72\x20\x53\x50\x45\x43\x49\x45\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x73\x70\x65\x63\x69\x65\x73\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4f\x2c\x44\x29\x7b\x76\x61\x72\x20\x43\x3d\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3b\x76\x61\x72\x20\x53\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x28\x53\x3d\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x43\x29\x5b\x53\x50\x45\x43\x49\x45\x53\x5d\x29\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x44\x3a\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x53\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x39\x29\x3b\x76\x61\x72\x20\x69\x6e\x76\x6f\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x39\x29\x3b\x76\x61\x72\x20\x68\x74\x6d\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x34\x29\x3b\x76\x61\x72\x20\x63\x65\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x37\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x63\x65\x73\x73\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x70\x72\x6f\x63\x65\x73\x73\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x61\x73\x6b\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x73\x65\x74\x49\x6d\x6d\x65\x64\x69\x61\x74\x65\x3b\x76\x61\x72\x20\x63\x6c\x65\x61\x72\x54\x61\x73\x6b\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x63\x6c\x65\x61\x72\x49\x6d\x6d\x65\x64\x69\x61\x74\x65\x3b\x76\x61\x72\x20\x4d\x65\x73\x73\x61\x67\x65\x43\x68\x61\x6e\x6e\x65\x6c\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x4d\x65\x73\x73\x61\x67\x65\x43\x68\x61\x6e\x6e\x65\x6c\x3b\x76\x61\x72\x20\x44\x69\x73\x70\x61\x74\x63\x68\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x44\x69\x73\x70\x61\x74\x63\x68\x3b\x76\x61\x72\x20\x63\x6f\x75\x6e\x74\x65\x72\x3d\x30\x3b\x76\x61\x72\x20\x71\x75\x65\x75\x65\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x4f\x4e\x52\x45\x41\x44\x59\x53\x54\x41\x54\x45\x43\x48\x41\x4e\x47\x45\x3d\x22\x6f\x6e\x72\x65\x61\x64\x79\x73\x74\x61\x74\x65\x63\x68\x61\x6e\x67\x65\x22\x3b\x76\x61\x72\x20\x64\x65\x66\x65\x72\x2c\x63\x68\x61\x6e\x6e\x65\x6c\x2c\x70\x6f\x72\x74\x3b\x76\x61\x72\x20\x72\x75\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x69\x64\x3d\x2b\x74\x68\x69\x73\x3b\x69\x66\x28\x71\x75\x65\x75\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x69\x64\x29\x29\x7b\x76\x61\x72\x20\x66\x6e\x3d\x71\x75\x65\x75\x65\x5b\x69\x64\x5d\x3b\x64\x65\x6c\x65\x74\x65\x20\x71\x75\x65\x75\x65\x5b\x69\x64\x5d\x3b\x66\x6e\x28\x29\x7d\x7d\x3b\x76\x61\x72\x20\x6c\x69\x73\x74\x65\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x76\x65\x6e\x74\x29\x7b\x72\x75\x6e\x2e\x63\x61\x6c\x6c\x28\x65\x76\x65\x6e\x74\x2e\x64\x61\x74\x61\x29\x7d\x3b\x69\x66\x28\x21\x73\x65\x74\x54\x61\x73\x6b\x7c\x7c\x21\x63\x6c\x65\x61\x72\x54\x61\x73\x6b\x29\x7b\x73\x65\x74\x54\x61\x73\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x49\x6d\x6d\x65\x64\x69\x61\x74\x65\x28\x66\x6e\x29\x7b\x76\x61\x72\x20\x61\x72\x67\x73\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x69\x3d\x31\x3b\x77\x68\x69\x6c\x65\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x61\x72\x67\x73\x2e\x70\x75\x73\x68\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x2b\x2b\x5d\x29\x3b\x71\x75\x65\x75\x65\x5b\x2b\x2b\x63\x6f\x75\x6e\x74\x65\x72\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x69\x6e\x76\x6f\x6b\x65\x28\x74\x79\x70\x65\x6f\x66\x20\x66\x6e\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x66\x6e\x3a\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x29\x2c\x61\x72\x67\x73\x29\x7d\x3b\x64\x65\x66\x65\x72\x28\x63\x6f\x75\x6e\x74\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x75\x6e\x74\x65\x72\x7d\x3b\x63\x6c\x65\x61\x72\x54\x61\x73\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x72\x49\x6d\x6d\x65\x64\x69\x61\x74\x65\x28\x69\x64\x29\x7b\x64\x65\x6c\x65\x74\x65\x20\x71\x75\x65\x75\x65\x5b\x69\x64\x5d\x7d\x3b\x69\x66\x28\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x29\x28\x70\x72\x6f\x63\x65\x73\x73\x29\x3d\x3d\x22\x70\x72\x6f\x63\x65\x73\x73\x22\x29\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x70\x72\x6f\x63\x65\x73\x73\x2e\x6e\x65\x78\x74\x54\x69\x63\x6b\x28\x63\x74\x78\x28\x72\x75\x6e\x2c\x69\x64\x2c\x31\x29\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x44\x69\x73\x70\x61\x74\x63\x68\x26\x26\x44\x69\x73\x70\x61\x74\x63\x68\x2e\x6e\x6f\x77\x29\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x44\x69\x73\x70\x61\x74\x63\x68\x2e\x6e\x6f\x77\x28\x63\x74\x78\x28\x72\x75\x6e\x2c\x69\x64\x2c\x31\x29\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x4d\x65\x73\x73\x61\x67\x65\x43\x68\x61\x6e\x6e\x65\x6c\x29\x7b\x63\x68\x61\x6e\x6e\x65\x6c\x3d\x6e\x65\x77\x20\x4d\x65\x73\x73\x61\x67\x65\x43\x68\x61\x6e\x6e\x65\x6c\x3b\x70\x6f\x72\x74\x3d\x63\x68\x61\x6e\x6e\x65\x6c\x2e\x70\x6f\x72\x74\x32\x3b\x63\x68\x61\x6e\x6e\x65\x6c\x2e\x70\x6f\x72\x74\x31\x2e\x6f\x6e\x6d\x65\x73\x73\x61\x67\x65\x3d\x6c\x69\x73\x74\x65\x6e\x65\x72\x3b\x64\x65\x66\x65\x72\x3d\x63\x74\x78\x28\x70\x6f\x72\x74\x2e\x70\x6f\x73\x74\x4d\x65\x73\x73\x61\x67\x65\x2c\x70\x6f\x72\x74\x2c\x31\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x67\x6c\x6f\x62\x61\x6c\x2e\x61\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\x6e\x65\x72\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x70\x6f\x73\x74\x4d\x65\x73\x73\x61\x67\x65\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x21\x67\x6c\x6f\x62\x61\x6c\x2e\x69\x6d\x70\x6f\x72\x74\x53\x63\x72\x69\x70\x74\x73\x29\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x67\x6c\x6f\x62\x61\x6c\x2e\x70\x6f\x73\x74\x4d\x65\x73\x73\x61\x67\x65\x28\x69\x64\x2b\x22\x22\x2c\x22\x2a\x22\x29\x7d\x3b\x67\x6c\x6f\x62\x61\x6c\x2e\x61\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\x6e\x65\x72\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x2c\x6c\x69\x73\x74\x65\x6e\x65\x72\x2c\x66\x61\x6c\x73\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x4f\x4e\x52\x45\x41\x44\x59\x53\x54\x41\x54\x45\x43\x48\x41\x4e\x47\x45\x20\x69\x6e\x20\x63\x65\x6c\x28\x22\x73\x63\x72\x69\x70\x74\x22\x29\x29\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x68\x74\x6d\x6c\x2e\x61\x70\x70\x65\x6e\x64\x43\x68\x69\x6c\x64\x28\x63\x65\x6c\x28\x22\x73\x63\x72\x69\x70\x74\x22\x29\x29\x5b\x4f\x4e\x52\x45\x41\x44\x59\x53\x54\x41\x54\x45\x43\x48\x41\x4e\x47\x45\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x68\x74\x6d\x6c\x2e\x72\x65\x6d\x6f\x76\x65\x43\x68\x69\x6c\x64\x28\x74\x68\x69\x73\x29\x3b\x72\x75\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x64\x29\x7d\x7d\x7d\x65\x6c\x73\x65\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x63\x74\x78\x28\x72\x75\x6e\x2c\x69\x64\x2c\x31\x29\x2c\x30\x29\x7d\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x73\x65\x74\x3a\x73\x65\x74\x54\x61\x73\x6b\x2c\x63\x6c\x65\x61\x72\x3a\x63\x6c\x65\x61\x72\x54\x61\x73\x6b\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x7b\x65\x3a\x66\x61\x6c\x73\x65\x2c\x76\x3a\x65\x78\x65\x63\x28\x29\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x65\x3a\x74\x72\x75\x65\x2c\x76\x3a\x65\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x29\x3b\x76\x61\x72\x20\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x30\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x2c\x78\x29\x7b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x43\x29\x3b\x69\x66\x28\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x78\x29\x26\x26\x78\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x3d\x3d\x43\x29\x72\x65\x74\x75\x72\x6e\x20\x78\x3b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x66\x28\x43\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3b\x72\x65\x73\x6f\x6c\x76\x65\x28\x78\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x29\x3b\x76\x61\x72\x20\x63\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x29\x3b\x76\x61\x72\x20\x4d\x41\x54\x43\x48\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x6d\x61\x74\x63\x68\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x69\x73\x52\x65\x67\x45\x78\x70\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x26\x26\x28\x28\x69\x73\x52\x65\x67\x45\x78\x70\x3d\x69\x74\x5b\x4d\x41\x54\x43\x48\x5d\x29\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x21\x21\x69\x73\x52\x65\x67\x45\x78\x70\x3a\x63\x6f\x66\x28\x69\x74\x29\x3d\x3d\x22\x52\x65\x67\x45\x78\x70\x22\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x3b\x76\x61\x72\x20\x66\x61\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4b\x45\x59\x2c\x65\x78\x65\x63\x29\x7b\x76\x61\x72\x20\x66\x6e\x3d\x28\x63\x6f\x72\x65\x2e\x4f\x62\x6a\x65\x63\x74\x7c\x7c\x7b\x7d\x29\x5b\x4b\x45\x59\x5d\x7c\x7c\x4f\x62\x6a\x65\x63\x74\x5b\x4b\x45\x59\x5d\x3b\x76\x61\x72\x20\x65\x78\x70\x3d\x7b\x7d\x3b\x65\x78\x70\x5b\x4b\x45\x59\x5d\x3d\x65\x78\x65\x63\x28\x66\x6e\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x66\x61\x69\x6c\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x6e\x28\x31\x29\x7d\x29\x2c\x22\x4f\x62\x6a\x65\x63\x74\x22\x2c\x65\x78\x70\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x41\x72\x72\x61\x79\x28\x61\x72\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x66\x28\x61\x72\x67\x29\x3d\x3d\x22\x41\x72\x72\x61\x79\x22\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x32\x29\x3b\x76\x61\x72\x20\x68\x69\x64\x64\x65\x6e\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x33\x29\x2e\x63\x6f\x6e\x63\x61\x74\x28\x22\x6c\x65\x6e\x67\x74\x68\x22\x2c\x22\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x22\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x28\x4f\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x6b\x65\x79\x73\x28\x4f\x2c\x68\x69\x64\x64\x65\x6e\x4b\x65\x79\x73\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x70\x49\x45\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x33\x29\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x29\x3b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x29\x3b\x76\x61\x72\x20\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x39\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x29\x3b\x76\x61\x72\x20\x49\x45\x38\x5f\x44\x4f\x4d\x5f\x44\x45\x46\x49\x4e\x45\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x30\x29\x3b\x76\x61\x72\x20\x67\x4f\x50\x44\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x3f\x67\x4f\x50\x44\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x28\x4f\x2c\x50\x29\x7b\x4f\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x50\x3d\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x50\x2c\x74\x72\x75\x65\x29\x3b\x69\x66\x28\x49\x45\x38\x5f\x44\x4f\x4d\x5f\x44\x45\x46\x49\x4e\x45\x29\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x67\x4f\x50\x44\x28\x4f\x2c\x50\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x69\x66\x28\x68\x61\x73\x28\x4f\x2c\x50\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x28\x21\x70\x49\x45\x2e\x66\x2e\x63\x61\x6c\x6c\x28\x4f\x2c\x50\x29\x2c\x4f\x5b\x50\x5d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x64\x65\x65\x70\x2d\x65\x78\x74\x65\x6e\x64\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x39\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x3d\x74\x79\x70\x65\x6f\x66\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x53\x79\x6d\x62\x6f\x6c\x2e\x69\x74\x65\x72\x61\x74\x6f\x72\x3d\x3d\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x7d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x6f\x62\x6a\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x3d\x3d\x53\x79\x6d\x62\x6f\x6c\x26\x26\x6f\x62\x6a\x21\x3d\x3d\x53\x79\x6d\x62\x6f\x6c\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3f\x22\x73\x79\x6d\x62\x6f\x6c\x22\x3a\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x54\x79\x70\x65\x4f\x66\x28\x69\x6e\x70\x75\x74\x29\x7b\x69\x66\x28\x69\x6e\x70\x75\x74\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x6e\x75\x6c\x6c\x22\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x6e\x70\x75\x74\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x6e\x70\x75\x74\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x5f\x74\x79\x70\x65\x6f\x66\x28\x69\x6e\x70\x75\x74\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x69\x6e\x70\x75\x74\x29\x3f\x22\x61\x72\x72\x61\x79\x22\x3a\x22\x6f\x62\x6a\x65\x63\x74\x22\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x69\x6e\x70\x75\x74\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x5f\x74\x79\x70\x65\x6f\x66\x28\x69\x6e\x70\x75\x74\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x6f\x6e\x65\x56\x61\x6c\x75\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x67\x65\x74\x54\x79\x70\x65\x4f\x66\x28\x76\x61\x6c\x75\x65\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x71\x75\x69\x63\x6b\x43\x6c\x6f\x6e\x65\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x67\x65\x74\x54\x79\x70\x65\x4f\x66\x28\x76\x61\x6c\x75\x65\x29\x3d\x3d\x3d\x22\x61\x72\x72\x61\x79\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x71\x75\x69\x63\x6b\x43\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x71\x75\x69\x63\x6b\x43\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x28\x69\x6e\x70\x75\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x70\x75\x74\x2e\x6d\x61\x70\x28\x63\x6c\x6f\x6e\x65\x56\x61\x6c\x75\x65\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x71\x75\x69\x63\x6b\x43\x6c\x6f\x6e\x65\x4f\x62\x6a\x65\x63\x74\x28\x69\x6e\x70\x75\x74\x29\x7b\x76\x61\x72\x20\x6f\x75\x74\x70\x75\x74\x3d\x7b\x7d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x69\x6e\x70\x75\x74\x29\x7b\x69\x66\x28\x21\x69\x6e\x70\x75\x74\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x6b\x65\x79\x29\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x6f\x75\x74\x70\x75\x74\x5b\x6b\x65\x79\x5d\x3d\x63\x6c\x6f\x6e\x65\x56\x61\x6c\x75\x65\x28\x69\x6e\x70\x75\x74\x5b\x6b\x65\x79\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x75\x74\x70\x75\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x78\x65\x63\x75\x74\x65\x44\x65\x65\x70\x4d\x65\x72\x67\x65\x28\x74\x61\x72\x67\x65\x74\x29\x7b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x5b\x5d\x3b\x76\x61\x72\x20\x5f\x6f\x70\x74\x69\x6f\x6e\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x32\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x3a\x7b\x7d\x3b\x76\x61\x72\x20\x6f\x70\x74\x69\x6f\x6e\x73\x3d\x7b\x61\x72\x72\x61\x79\x42\x65\x68\x61\x76\x69\x6f\x75\x72\x3a\x5f\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x61\x72\x72\x61\x79\x42\x65\x68\x61\x76\x69\x6f\x75\x72\x7c\x7c\x22\x72\x65\x70\x6c\x61\x63\x65\x22\x7d\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x73\x3d\x5f\x6f\x62\x6a\x65\x63\x74\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x7c\x7c\x7b\x7d\x7d\x29\x3b\x76\x61\x72\x20\x6f\x75\x74\x70\x75\x74\x3d\x74\x61\x72\x67\x65\x74\x7c\x7c\x7b\x7d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6f\x69\x6e\x64\x65\x78\x3d\x30\x3b\x6f\x69\x6e\x64\x65\x78\x3c\x6f\x62\x6a\x65\x63\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x6f\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x3d\x6f\x62\x6a\x65\x63\x74\x73\x5b\x6f\x69\x6e\x64\x65\x78\x5d\x3b\x76\x61\x72\x20\x6b\x65\x79\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x69\x6e\x64\x65\x78\x3d\x30\x3b\x6b\x69\x6e\x64\x65\x78\x3c\x6b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x6b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x3d\x6b\x65\x79\x73\x5b\x6b\x69\x6e\x64\x65\x78\x5d\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x67\x65\x74\x54\x79\x70\x65\x4f\x66\x28\x76\x61\x6c\x75\x65\x29\x3b\x76\x61\x72\x20\x65\x78\x69\x73\x74\x69\x6e\x67\x56\x61\x6c\x75\x65\x54\x79\x70\x65\x3d\x67\x65\x74\x54\x79\x70\x65\x4f\x66\x28\x6f\x75\x74\x70\x75\x74\x5b\x6b\x65\x79\x5d\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x69\x66\x28\x65\x78\x69\x73\x74\x69\x6e\x67\x56\x61\x6c\x75\x65\x54\x79\x70\x65\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x76\x61\x72\x20\x65\x78\x69\x73\x74\x69\x6e\x67\x56\x61\x6c\x75\x65\x3d\x65\x78\x69\x73\x74\x69\x6e\x67\x56\x61\x6c\x75\x65\x54\x79\x70\x65\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x3f\x6f\x75\x74\x70\x75\x74\x5b\x6b\x65\x79\x5d\x3a\x7b\x7d\x3b\x6f\x75\x74\x70\x75\x74\x5b\x6b\x65\x79\x5d\x3d\x65\x78\x65\x63\x75\x74\x65\x44\x65\x65\x70\x4d\x65\x72\x67\x65\x28\x7b\x7d\x2c\x5b\x65\x78\x69\x73\x74\x69\x6e\x67\x56\x61\x6c\x75\x65\x2c\x71\x75\x69\x63\x6b\x43\x6c\x6f\x6e\x65\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x5d\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7d\x65\x6c\x73\x65\x7b\x6f\x75\x74\x70\x75\x74\x5b\x6b\x65\x79\x5d\x3d\x71\x75\x69\x63\x6b\x43\x6c\x6f\x6e\x65\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x61\x72\x72\x61\x79\x22\x29\x7b\x69\x66\x28\x65\x78\x69\x73\x74\x69\x6e\x67\x56\x61\x6c\x75\x65\x54\x79\x70\x65\x3d\x3d\x3d\x22\x61\x72\x72\x61\x79\x22\x29\x7b\x76\x61\x72\x20\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x71\x75\x69\x63\x6b\x43\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x3b\x6f\x75\x74\x70\x75\x74\x5b\x6b\x65\x79\x5d\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x61\x72\x72\x61\x79\x42\x65\x68\x61\x76\x69\x6f\x75\x72\x3d\x3d\x3d\x22\x6d\x65\x72\x67\x65\x22\x3f\x6f\x75\x74\x70\x75\x74\x5b\x6b\x65\x79\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x6e\x65\x77\x56\x61\x6c\x75\x65\x29\x3a\x6e\x65\x77\x56\x61\x6c\x75\x65\x7d\x65\x6c\x73\x65\x7b\x6f\x75\x74\x70\x75\x74\x5b\x6b\x65\x79\x5d\x3d\x71\x75\x69\x63\x6b\x43\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x6f\x75\x74\x70\x75\x74\x5b\x6b\x65\x79\x5d\x3d\x76\x61\x6c\x75\x65\x7d\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x75\x74\x70\x75\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x28\x74\x61\x72\x67\x65\x74\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6f\x62\x6a\x65\x63\x74\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x3e\x31\x3f\x5f\x6c\x65\x6e\x2d\x31\x3a\x30\x29\x2c\x5f\x6b\x65\x79\x3d\x31\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x6f\x62\x6a\x65\x63\x74\x73\x5b\x5f\x6b\x65\x79\x2d\x31\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x65\x78\x65\x63\x75\x74\x65\x44\x65\x65\x70\x4d\x65\x72\x67\x65\x28\x74\x61\x72\x67\x65\x74\x2c\x6f\x62\x6a\x65\x63\x74\x73\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x6f\x4d\x75\x74\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x49\x6e\x74\x6f\x28\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x32\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6f\x62\x6a\x65\x63\x74\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x32\x29\x2c\x5f\x6b\x65\x79\x32\x3d\x30\x3b\x5f\x6b\x65\x79\x32\x3c\x5f\x6c\x65\x6e\x32\x3b\x5f\x6b\x65\x79\x32\x2b\x2b\x29\x7b\x6f\x62\x6a\x65\x63\x74\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x65\x78\x65\x63\x75\x74\x65\x44\x65\x65\x70\x4d\x65\x72\x67\x65\x28\x7b\x7d\x2c\x6f\x62\x6a\x65\x63\x74\x73\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x77\x69\x74\x68\x4f\x70\x74\x69\x6f\x6e\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x49\x6e\x74\x6f\x28\x74\x61\x72\x67\x65\x74\x2c\x6f\x62\x6a\x65\x63\x74\x73\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x78\x65\x63\x75\x74\x65\x44\x65\x65\x70\x4d\x65\x72\x67\x65\x28\x74\x61\x72\x67\x65\x74\x2c\x6f\x62\x6a\x65\x63\x74\x73\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x67\x3b\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x28\x29\x3b\x74\x72\x79\x7b\x67\x3d\x67\x7c\x7c\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x22\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x22\x29\x28\x29\x7c\x7c\x28\x31\x2c\x65\x76\x61\x6c\x29\x28\x22\x74\x68\x69\x73\x22\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x77\x69\x6e\x64\x6f\x77\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x67\x3d\x77\x69\x6e\x64\x6f\x77\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x67\x6c\x6f\x62\x61\x6c\x29\x7b\x76\x61\x72\x20\x66\x72\x65\x65\x47\x6c\x6f\x62\x61\x6c\x3d\x74\x79\x70\x65\x6f\x66\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x67\x6c\x6f\x62\x61\x6c\x26\x26\x67\x6c\x6f\x62\x61\x6c\x2e\x4f\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x26\x26\x67\x6c\x6f\x62\x61\x6c\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x72\x65\x65\x47\x6c\x6f\x62\x61\x6c\x7d\x29\x2e\x63\x61\x6c\x6c\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x37\x29\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x72\x72\x61\x79\x4d\x61\x70\x28\x61\x72\x72\x61\x79\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x72\x65\x73\x75\x6c\x74\x3d\x41\x72\x72\x61\x79\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x73\x75\x6c\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x69\x74\x65\x72\x61\x74\x65\x65\x28\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x69\x6e\x64\x65\x78\x2c\x61\x72\x72\x61\x79\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x72\x72\x61\x79\x4d\x61\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x43\x61\x73\x65\x46\x69\x72\x73\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x39\x29\x3b\x76\x61\x72\x20\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74\x3d\x63\x72\x65\x61\x74\x65\x43\x61\x73\x65\x46\x69\x72\x73\x74\x28\x22\x74\x6f\x55\x70\x70\x65\x72\x43\x61\x73\x65\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x53\x6c\x69\x63\x65\x28\x61\x72\x72\x61\x79\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x73\x74\x61\x72\x74\x3c\x30\x29\x7b\x73\x74\x61\x72\x74\x3d\x2d\x73\x74\x61\x72\x74\x3e\x6c\x65\x6e\x67\x74\x68\x3f\x30\x3a\x6c\x65\x6e\x67\x74\x68\x2b\x73\x74\x61\x72\x74\x7d\x65\x6e\x64\x3d\x65\x6e\x64\x3e\x6c\x65\x6e\x67\x74\x68\x3f\x6c\x65\x6e\x67\x74\x68\x3a\x65\x6e\x64\x3b\x69\x66\x28\x65\x6e\x64\x3c\x30\x29\x7b\x65\x6e\x64\x2b\x3d\x6c\x65\x6e\x67\x74\x68\x7d\x6c\x65\x6e\x67\x74\x68\x3d\x73\x74\x61\x72\x74\x3e\x65\x6e\x64\x3f\x30\x3a\x65\x6e\x64\x2d\x73\x74\x61\x72\x74\x3e\x3e\x3e\x30\x3b\x73\x74\x61\x72\x74\x3e\x3e\x3e\x3d\x30\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x41\x72\x72\x61\x79\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x73\x75\x6c\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x2b\x73\x74\x61\x72\x74\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x53\x6c\x69\x63\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x72\x73\x41\x73\x74\x72\x61\x6c\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x64\x38\x30\x30\x2d\x5c\x5c\x75\x64\x66\x66\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x30\x33\x30\x30\x2d\x5c\x5c\x75\x30\x33\x36\x66\x22\x2c\x72\x65\x43\x6f\x6d\x62\x6f\x48\x61\x6c\x66\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x66\x65\x32\x30\x2d\x5c\x5c\x75\x66\x65\x32\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x53\x79\x6d\x62\x6f\x6c\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x32\x30\x64\x30\x2d\x5c\x5c\x75\x32\x30\x66\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x52\x61\x6e\x67\x65\x3d\x72\x73\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x2b\x72\x65\x43\x6f\x6d\x62\x6f\x48\x61\x6c\x66\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x53\x79\x6d\x62\x6f\x6c\x73\x52\x61\x6e\x67\x65\x2c\x72\x73\x56\x61\x72\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x66\x65\x30\x65\x5c\x5c\x75\x66\x65\x30\x66\x22\x3b\x76\x61\x72\x20\x72\x73\x5a\x57\x4a\x3d\x22\x5c\x5c\x75\x32\x30\x30\x64\x22\x3b\x76\x61\x72\x20\x72\x65\x48\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x3d\x52\x65\x67\x45\x78\x70\x28\x22\x5b\x22\x2b\x72\x73\x5a\x57\x4a\x2b\x72\x73\x41\x73\x74\x72\x61\x6c\x52\x61\x6e\x67\x65\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x52\x61\x6e\x67\x65\x2b\x72\x73\x56\x61\x72\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x48\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x2e\x74\x65\x73\x74\x28\x73\x74\x72\x69\x6e\x67\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x72\x72\x61\x79\x52\x65\x64\x75\x63\x65\x28\x61\x72\x72\x61\x79\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x2c\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x2c\x69\x6e\x69\x74\x41\x63\x63\x75\x6d\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x69\x6e\x69\x74\x41\x63\x63\x75\x6d\x26\x26\x6c\x65\x6e\x67\x74\x68\x29\x7b\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x3d\x61\x72\x72\x61\x79\x5b\x2b\x2b\x69\x6e\x64\x65\x78\x5d\x7d\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x3d\x69\x74\x65\x72\x61\x74\x65\x65\x28\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x2c\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x69\x6e\x64\x65\x78\x2c\x61\x72\x72\x61\x79\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x72\x72\x61\x79\x52\x65\x64\x75\x63\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x4d\x61\x70\x43\x61\x63\x68\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x39\x29\x3b\x76\x61\x72\x20\x46\x55\x4e\x43\x5f\x45\x52\x52\x4f\x52\x5f\x54\x45\x58\x54\x3d\x22\x45\x78\x70\x65\x63\x74\x65\x64\x20\x61\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x65\x6d\x6f\x69\x7a\x65\x28\x66\x75\x6e\x63\x2c\x72\x65\x73\x6f\x6c\x76\x65\x72\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x66\x75\x6e\x63\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x7c\x7c\x72\x65\x73\x6f\x6c\x76\x65\x72\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x72\x65\x73\x6f\x6c\x76\x65\x72\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x46\x55\x4e\x43\x5f\x45\x52\x52\x4f\x52\x5f\x54\x45\x58\x54\x29\x7d\x76\x61\x72\x20\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x61\x72\x67\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2c\x6b\x65\x79\x3d\x72\x65\x73\x6f\x6c\x76\x65\x72\x3f\x72\x65\x73\x6f\x6c\x76\x65\x72\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x73\x29\x3a\x61\x72\x67\x73\x5b\x30\x5d\x2c\x63\x61\x63\x68\x65\x3d\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x2e\x63\x61\x63\x68\x65\x3b\x69\x66\x28\x63\x61\x63\x68\x65\x2e\x68\x61\x73\x28\x6b\x65\x79\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x63\x68\x65\x2e\x67\x65\x74\x28\x6b\x65\x79\x29\x7d\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x66\x75\x6e\x63\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x73\x29\x3b\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x2e\x63\x61\x63\x68\x65\x3d\x63\x61\x63\x68\x65\x2e\x73\x65\x74\x28\x6b\x65\x79\x2c\x72\x65\x73\x75\x6c\x74\x29\x7c\x7c\x63\x61\x63\x68\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x3b\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x2e\x63\x61\x63\x68\x65\x3d\x6e\x65\x77\x28\x6d\x65\x6d\x6f\x69\x7a\x65\x2e\x43\x61\x63\x68\x65\x7c\x7c\x4d\x61\x70\x43\x61\x63\x68\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6d\x65\x6d\x6f\x69\x7a\x65\x64\x7d\x6d\x65\x6d\x6f\x69\x7a\x65\x2e\x43\x61\x63\x68\x65\x3d\x4d\x61\x70\x43\x61\x63\x68\x65\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x65\x6d\x6f\x69\x7a\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x3b\x76\x61\x72\x20\x61\x73\x79\x6e\x63\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x73\x79\x6e\x63\x46\x75\x6e\x63\x74\x69\x6f\x6e\x5d\x22\x2c\x66\x75\x6e\x63\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x75\x6e\x63\x74\x69\x6f\x6e\x5d\x22\x2c\x67\x65\x6e\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x47\x65\x6e\x65\x72\x61\x74\x6f\x72\x46\x75\x6e\x63\x74\x69\x6f\x6e\x5d\x22\x2c\x70\x72\x6f\x78\x79\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x50\x72\x6f\x78\x79\x5d\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x74\x61\x67\x3d\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x67\x3d\x3d\x66\x75\x6e\x63\x54\x61\x67\x7c\x7c\x74\x61\x67\x3d\x3d\x67\x65\x6e\x54\x61\x67\x7c\x7c\x74\x61\x67\x3d\x3d\x61\x73\x79\x6e\x63\x54\x61\x67\x7c\x7c\x74\x61\x67\x3d\x3d\x70\x72\x6f\x78\x79\x54\x61\x67\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x66\x75\x6e\x63\x50\x72\x6f\x74\x6f\x3d\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x66\x75\x6e\x63\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x66\x75\x6e\x63\x50\x72\x6f\x74\x6f\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x53\x6f\x75\x72\x63\x65\x28\x66\x75\x6e\x63\x29\x7b\x69\x66\x28\x66\x75\x6e\x63\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x54\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x66\x75\x6e\x63\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x2b\x22\x22\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x7d\x72\x65\x74\x75\x72\x6e\x22\x22\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x6f\x53\x6f\x75\x72\x63\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x44\x65\x65\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x32\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x28\x76\x61\x6c\x75\x65\x2c\x6f\x74\x68\x65\x72\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x73\x74\x61\x63\x6b\x29\x7b\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x6f\x74\x68\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x6f\x74\x68\x65\x72\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x6f\x74\x68\x65\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x21\x3d\x3d\x76\x61\x6c\x75\x65\x26\x26\x6f\x74\x68\x65\x72\x21\x3d\x3d\x6f\x74\x68\x65\x72\x7d\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x44\x65\x65\x70\x28\x76\x61\x6c\x75\x65\x2c\x6f\x74\x68\x65\x72\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x2c\x73\x74\x61\x63\x6b\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x65\x74\x43\x61\x63\x68\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x33\x29\x2c\x61\x72\x72\x61\x79\x53\x6f\x6d\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x39\x29\x2c\x63\x61\x63\x68\x65\x48\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x36\x29\x3b\x76\x61\x72\x20\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x3d\x31\x2c\x43\x4f\x4d\x50\x41\x52\x45\x5f\x55\x4e\x4f\x52\x44\x45\x52\x45\x44\x5f\x46\x4c\x41\x47\x3d\x32\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x71\x75\x61\x6c\x41\x72\x72\x61\x79\x73\x28\x61\x72\x72\x61\x79\x2c\x6f\x74\x68\x65\x72\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x2c\x73\x74\x61\x63\x6b\x29\x7b\x76\x61\x72\x20\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x3d\x62\x69\x74\x6d\x61\x73\x6b\x26\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x2c\x61\x72\x72\x4c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6f\x74\x68\x4c\x65\x6e\x67\x74\x68\x3d\x6f\x74\x68\x65\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x61\x72\x72\x4c\x65\x6e\x67\x74\x68\x21\x3d\x6f\x74\x68\x4c\x65\x6e\x67\x74\x68\x26\x26\x21\x28\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x26\x26\x6f\x74\x68\x4c\x65\x6e\x67\x74\x68\x3e\x61\x72\x72\x4c\x65\x6e\x67\x74\x68\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x73\x74\x61\x63\x6b\x65\x64\x3d\x73\x74\x61\x63\x6b\x2e\x67\x65\x74\x28\x61\x72\x72\x61\x79\x29\x3b\x69\x66\x28\x73\x74\x61\x63\x6b\x65\x64\x26\x26\x73\x74\x61\x63\x6b\x2e\x67\x65\x74\x28\x6f\x74\x68\x65\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x63\x6b\x65\x64\x3d\x3d\x6f\x74\x68\x65\x72\x7d\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x72\x65\x73\x75\x6c\x74\x3d\x74\x72\x75\x65\x2c\x73\x65\x65\x6e\x3d\x62\x69\x74\x6d\x61\x73\x6b\x26\x43\x4f\x4d\x50\x41\x52\x45\x5f\x55\x4e\x4f\x52\x44\x45\x52\x45\x44\x5f\x46\x4c\x41\x47\x3f\x6e\x65\x77\x20\x53\x65\x74\x43\x61\x63\x68\x65\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x73\x74\x61\x63\x6b\x2e\x73\x65\x74\x28\x61\x72\x72\x61\x79\x2c\x6f\x74\x68\x65\x72\x29\x3b\x73\x74\x61\x63\x6b\x2e\x73\x65\x74\x28\x6f\x74\x68\x65\x72\x2c\x61\x72\x72\x61\x79\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x61\x72\x72\x4c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x56\x61\x6c\x75\x65\x3d\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x6f\x74\x68\x56\x61\x6c\x75\x65\x3d\x6f\x74\x68\x65\x72\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x29\x7b\x76\x61\x72\x20\x63\x6f\x6d\x70\x61\x72\x65\x64\x3d\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x3f\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x28\x6f\x74\x68\x56\x61\x6c\x75\x65\x2c\x61\x72\x72\x56\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x78\x2c\x6f\x74\x68\x65\x72\x2c\x61\x72\x72\x61\x79\x2c\x73\x74\x61\x63\x6b\x29\x3a\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x28\x61\x72\x72\x56\x61\x6c\x75\x65\x2c\x6f\x74\x68\x56\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x78\x2c\x61\x72\x72\x61\x79\x2c\x6f\x74\x68\x65\x72\x2c\x73\x74\x61\x63\x6b\x29\x7d\x69\x66\x28\x63\x6f\x6d\x70\x61\x72\x65\x64\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x69\x66\x28\x63\x6f\x6d\x70\x61\x72\x65\x64\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x72\x65\x73\x75\x6c\x74\x3d\x66\x61\x6c\x73\x65\x3b\x62\x72\x65\x61\x6b\x7d\x69\x66\x28\x73\x65\x65\x6e\x29\x7b\x69\x66\x28\x21\x61\x72\x72\x61\x79\x53\x6f\x6d\x65\x28\x6f\x74\x68\x65\x72\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x74\x68\x56\x61\x6c\x75\x65\x2c\x6f\x74\x68\x49\x6e\x64\x65\x78\x29\x7b\x69\x66\x28\x21\x63\x61\x63\x68\x65\x48\x61\x73\x28\x73\x65\x65\x6e\x2c\x6f\x74\x68\x49\x6e\x64\x65\x78\x29\x26\x26\x28\x61\x72\x72\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x6f\x74\x68\x56\x61\x6c\x75\x65\x7c\x7c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x28\x61\x72\x72\x56\x61\x6c\x75\x65\x2c\x6f\x74\x68\x56\x61\x6c\x75\x65\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x73\x74\x61\x63\x6b\x29\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x65\x6e\x2e\x70\x75\x73\x68\x28\x6f\x74\x68\x49\x6e\x64\x65\x78\x29\x7d\x7d\x29\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x66\x61\x6c\x73\x65\x3b\x62\x72\x65\x61\x6b\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x21\x28\x61\x72\x72\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x6f\x74\x68\x56\x61\x6c\x75\x65\x7c\x7c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x28\x61\x72\x72\x56\x61\x6c\x75\x65\x2c\x6f\x74\x68\x56\x61\x6c\x75\x65\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x73\x74\x61\x63\x6b\x29\x29\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x66\x61\x6c\x73\x65\x3b\x62\x72\x65\x61\x6b\x7d\x7d\x73\x74\x61\x63\x6b\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x28\x61\x72\x72\x61\x79\x29\x3b\x73\x74\x61\x63\x6b\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x28\x6f\x74\x68\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x65\x71\x75\x61\x6c\x41\x72\x72\x61\x79\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x72\x72\x61\x79\x53\x6f\x6d\x65\x28\x61\x72\x72\x61\x79\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x70\x72\x65\x64\x69\x63\x61\x74\x65\x28\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x69\x6e\x64\x65\x78\x2c\x61\x72\x72\x61\x79\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x72\x72\x61\x79\x53\x6f\x6d\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x3d\x72\x6f\x6f\x74\x2e\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x32\x29\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x33\x29\x2c\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x47\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x73\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x50\x75\x73\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x32\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x47\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x73\x46\x75\x6e\x63\x2c\x73\x79\x6d\x62\x6f\x6c\x73\x46\x75\x6e\x63\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x6b\x65\x79\x73\x46\x75\x6e\x63\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x65\x63\x74\x29\x3f\x72\x65\x73\x75\x6c\x74\x3a\x61\x72\x72\x61\x79\x50\x75\x73\x68\x28\x72\x65\x73\x75\x6c\x74\x2c\x73\x79\x6d\x62\x6f\x6c\x73\x46\x75\x6e\x63\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x47\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x75\x62\x41\x72\x72\x61\x79\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x74\x75\x62\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x54\x69\x6d\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x32\x29\x2c\x69\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x34\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x69\x73\x42\x75\x66\x66\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x35\x29\x2c\x69\x73\x49\x6e\x64\x65\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x31\x29\x2c\x69\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x35\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x72\x72\x61\x79\x4c\x69\x6b\x65\x4b\x65\x79\x73\x28\x76\x61\x6c\x75\x65\x2c\x69\x6e\x68\x65\x72\x69\x74\x65\x64\x29\x7b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x3d\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x2c\x69\x73\x41\x72\x67\x3d\x21\x69\x73\x41\x72\x72\x26\x26\x69\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x28\x76\x61\x6c\x75\x65\x29\x2c\x69\x73\x42\x75\x66\x66\x3d\x21\x69\x73\x41\x72\x72\x26\x26\x21\x69\x73\x41\x72\x67\x26\x26\x69\x73\x42\x75\x66\x66\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x2c\x69\x73\x54\x79\x70\x65\x3d\x21\x69\x73\x41\x72\x72\x26\x26\x21\x69\x73\x41\x72\x67\x26\x26\x21\x69\x73\x42\x75\x66\x66\x26\x26\x69\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x2c\x73\x6b\x69\x70\x49\x6e\x64\x65\x78\x65\x73\x3d\x69\x73\x41\x72\x72\x7c\x7c\x69\x73\x41\x72\x67\x7c\x7c\x69\x73\x42\x75\x66\x66\x7c\x7c\x69\x73\x54\x79\x70\x65\x2c\x72\x65\x73\x75\x6c\x74\x3d\x73\x6b\x69\x70\x49\x6e\x64\x65\x78\x65\x73\x3f\x62\x61\x73\x65\x54\x69\x6d\x65\x73\x28\x76\x61\x6c\x75\x65\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x53\x74\x72\x69\x6e\x67\x29\x3a\x5b\x5d\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x72\x65\x73\x75\x6c\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x28\x69\x6e\x68\x65\x72\x69\x74\x65\x64\x7c\x7c\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x2c\x6b\x65\x79\x29\x29\x26\x26\x21\x28\x73\x6b\x69\x70\x49\x6e\x64\x65\x78\x65\x73\x26\x26\x28\x6b\x65\x79\x3d\x3d\x22\x6c\x65\x6e\x67\x74\x68\x22\x7c\x7c\x69\x73\x42\x75\x66\x66\x26\x26\x28\x6b\x65\x79\x3d\x3d\x22\x6f\x66\x66\x73\x65\x74\x22\x7c\x7c\x6b\x65\x79\x3d\x3d\x22\x70\x61\x72\x65\x6e\x74\x22\x29\x7c\x7c\x69\x73\x54\x79\x70\x65\x26\x26\x28\x6b\x65\x79\x3d\x3d\x22\x62\x75\x66\x66\x65\x72\x22\x7c\x7c\x6b\x65\x79\x3d\x3d\x22\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x22\x7c\x7c\x6b\x65\x79\x3d\x3d\x22\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x22\x29\x7c\x7c\x69\x73\x49\x6e\x64\x65\x78\x28\x6b\x65\x79\x2c\x6c\x65\x6e\x67\x74\x68\x29\x29\x29\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x72\x72\x61\x79\x4c\x69\x6b\x65\x4b\x65\x79\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x49\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x35\x29\x2c\x62\x61\x73\x65\x55\x6e\x61\x72\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x38\x29\x2c\x6e\x6f\x64\x65\x55\x74\x69\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x39\x29\x3b\x76\x61\x72\x20\x6e\x6f\x64\x65\x49\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x3d\x6e\x6f\x64\x65\x55\x74\x69\x6c\x26\x26\x6e\x6f\x64\x65\x55\x74\x69\x6c\x2e\x69\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x3b\x76\x61\x72\x20\x69\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x3d\x6e\x6f\x64\x65\x49\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x3f\x62\x61\x73\x65\x55\x6e\x61\x72\x79\x28\x6e\x6f\x64\x65\x49\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x29\x3a\x62\x61\x73\x65\x49\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x76\x65\x72\x41\x72\x67\x28\x66\x75\x6e\x63\x2c\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x72\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x28\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x28\x61\x72\x67\x29\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6f\x76\x65\x72\x41\x72\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x76\x61\x6c\x75\x65\x26\x26\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x74\x63\x68\x65\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x28\x6b\x65\x79\x2c\x73\x72\x63\x56\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x3d\x3d\x3d\x73\x72\x63\x56\x61\x6c\x75\x65\x26\x26\x28\x73\x72\x63\x56\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x6b\x65\x79\x20\x69\x6e\x20\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x61\x74\x63\x68\x65\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x64\x65\x6e\x74\x69\x74\x79\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x64\x65\x6e\x74\x69\x74\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x2c\x69\x73\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x35\x29\x3b\x76\x61\x72\x20\x4e\x41\x4e\x3d\x30\x2f\x30\x3b\x76\x61\x72\x20\x72\x65\x54\x72\x69\x6d\x3d\x2f\x5e\x5c\x73\x2b\x7c\x5c\x73\x2b\x24\x2f\x67\x3b\x76\x61\x72\x20\x72\x65\x49\x73\x42\x61\x64\x48\x65\x78\x3d\x2f\x5e\x5b\x2d\x2b\x5d\x30\x78\x5b\x30\x2d\x39\x61\x2d\x66\x5d\x2b\x24\x2f\x69\x3b\x76\x61\x72\x20\x72\x65\x49\x73\x42\x69\x6e\x61\x72\x79\x3d\x2f\x5e\x30\x62\x5b\x30\x31\x5d\x2b\x24\x2f\x69\x3b\x76\x61\x72\x20\x72\x65\x49\x73\x4f\x63\x74\x61\x6c\x3d\x2f\x5e\x30\x6f\x5b\x30\x2d\x37\x5d\x2b\x24\x2f\x69\x3b\x76\x61\x72\x20\x66\x72\x65\x65\x50\x61\x72\x73\x65\x49\x6e\x74\x3d\x70\x61\x72\x73\x65\x49\x6e\x74\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x4e\x75\x6d\x62\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x69\x66\x28\x69\x73\x53\x79\x6d\x62\x6f\x6c\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4e\x41\x4e\x7d\x69\x66\x28\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x76\x61\x72\x20\x6f\x74\x68\x65\x72\x3d\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x2e\x76\x61\x6c\x75\x65\x4f\x66\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x76\x61\x6c\x75\x65\x2e\x76\x61\x6c\x75\x65\x4f\x66\x28\x29\x3a\x76\x61\x6c\x75\x65\x3b\x76\x61\x6c\x75\x65\x3d\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x6f\x74\x68\x65\x72\x29\x3f\x6f\x74\x68\x65\x72\x2b\x22\x22\x3a\x6f\x74\x68\x65\x72\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x21\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x30\x3f\x76\x61\x6c\x75\x65\x3a\x2b\x76\x61\x6c\x75\x65\x7d\x76\x61\x6c\x75\x65\x3d\x76\x61\x6c\x75\x65\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x72\x65\x54\x72\x69\x6d\x2c\x22\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x42\x69\x6e\x61\x72\x79\x3d\x72\x65\x49\x73\x42\x69\x6e\x61\x72\x79\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x75\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x42\x69\x6e\x61\x72\x79\x7c\x7c\x72\x65\x49\x73\x4f\x63\x74\x61\x6c\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x75\x65\x29\x3f\x66\x72\x65\x65\x50\x61\x72\x73\x65\x49\x6e\x74\x28\x76\x61\x6c\x75\x65\x2e\x73\x6c\x69\x63\x65\x28\x32\x29\x2c\x69\x73\x42\x69\x6e\x61\x72\x79\x3f\x32\x3a\x38\x29\x3a\x72\x65\x49\x73\x42\x61\x64\x48\x65\x78\x2e\x74\x65\x73\x74\x28\x76\x61\x6c\x75\x65\x29\x3f\x4e\x41\x4e\x3a\x2b\x76\x61\x6c\x75\x65\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x6f\x4e\x75\x6d\x62\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x46\x6f\x72\x4f\x77\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x38\x29\x2c\x63\x72\x65\x61\x74\x65\x42\x61\x73\x65\x45\x61\x63\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x31\x29\x3b\x76\x61\x72\x20\x62\x61\x73\x65\x45\x61\x63\x68\x3d\x63\x72\x65\x61\x74\x65\x42\x61\x73\x65\x45\x61\x63\x68\x28\x62\x61\x73\x65\x46\x6f\x72\x4f\x77\x6e\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x45\x61\x63\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x65\x72\x72\x3a\x7b\x72\x65\x64\x75\x63\x65\x72\x73\x3a\x28\x30\x2c\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x79\x73\x74\x65\x6d\x29\x2c\x61\x63\x74\x69\x6f\x6e\x73\x3a\x61\x63\x74\x69\x6f\x6e\x73\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x33\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x34\x29\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x61\x63\x74\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x37\x29\x3b\x76\x61\x72\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x38\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x66\x38\x3d\x7b\x7d\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x38\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x44\x45\x46\x41\x55\x4c\x54\x5f\x45\x52\x52\x4f\x52\x5f\x53\x54\x52\x55\x43\x54\x55\x52\x45\x2c\x70\x61\x79\x6c\x6f\x61\x64\x2c\x7b\x74\x79\x70\x65\x3a\x22\x74\x68\x72\x6f\x77\x6e\x22\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x65\x72\x72\x6f\x72\x73\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x2e\x70\x75\x73\x68\x28\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x65\x72\x72\x6f\x72\x29\x29\x7d\x29\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x6f\x6f\x6b\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x72\x72\x6f\x72\x73\x2c\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x7d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x38\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x32\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x70\x61\x79\x6c\x6f\x61\x64\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x44\x45\x46\x41\x55\x4c\x54\x5f\x45\x52\x52\x4f\x52\x5f\x53\x54\x52\x55\x43\x54\x55\x52\x45\x2c\x65\x72\x72\x2c\x7b\x74\x79\x70\x65\x3a\x22\x74\x68\x72\x6f\x77\x6e\x22\x7d\x29\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x65\x72\x72\x6f\x72\x73\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x29\x7d\x29\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x6f\x6f\x6b\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x72\x72\x6f\x72\x73\x2c\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x7d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x38\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x33\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x3b\x65\x72\x72\x6f\x72\x3d\x65\x72\x72\x6f\x72\x2e\x73\x65\x74\x28\x22\x74\x79\x70\x65\x22\x2c\x22\x73\x70\x65\x63\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x65\x72\x72\x6f\x72\x73\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x2e\x70\x75\x73\x68\x28\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x65\x72\x72\x6f\x72\x29\x29\x2e\x73\x6f\x72\x74\x42\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x6c\x69\x6e\x65\x22\x29\x7d\x29\x7d\x29\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x6f\x6f\x6b\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x72\x72\x6f\x72\x73\x2c\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x7d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x38\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x4e\x45\x57\x5f\x53\x50\x45\x43\x5f\x45\x52\x52\x5f\x42\x41\x54\x43\x48\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x34\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x34\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x70\x61\x79\x6c\x6f\x61\x64\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x44\x45\x46\x41\x55\x4c\x54\x5f\x45\x52\x52\x4f\x52\x5f\x53\x54\x52\x55\x43\x54\x55\x52\x45\x2c\x65\x72\x72\x2c\x7b\x74\x79\x70\x65\x3a\x22\x73\x70\x65\x63\x22\x7d\x29\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x65\x72\x72\x6f\x72\x73\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x29\x7d\x29\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x6f\x6f\x6b\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x72\x72\x6f\x72\x73\x2c\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x7d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x38\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x4e\x45\x57\x5f\x41\x55\x54\x48\x5f\x45\x52\x52\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x35\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x35\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x70\x61\x79\x6c\x6f\x61\x64\x29\x29\x3b\x65\x72\x72\x6f\x72\x3d\x65\x72\x72\x6f\x72\x2e\x73\x65\x74\x28\x22\x74\x79\x70\x65\x22\x2c\x22\x61\x75\x74\x68\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x65\x72\x72\x6f\x72\x73\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x2e\x70\x75\x73\x68\x28\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x65\x72\x72\x6f\x72\x29\x29\x7d\x29\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x6f\x6f\x6b\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x72\x72\x6f\x72\x73\x2c\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x7d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x38\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x43\x4c\x45\x41\x52\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x36\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x36\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x69\x66\x28\x21\x70\x61\x79\x6c\x6f\x61\x64\x7c\x7c\x21\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x7d\x76\x61\x72\x20\x6e\x65\x77\x45\x72\x72\x6f\x72\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x2e\x65\x76\x65\x72\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x56\x61\x6c\x75\x65\x3d\x65\x72\x72\x2e\x67\x65\x74\x28\x6b\x29\x3b\x76\x61\x72\x20\x66\x69\x6c\x74\x65\x72\x56\x61\x6c\x75\x65\x3d\x70\x61\x79\x6c\x6f\x61\x64\x5b\x6b\x5d\x3b\x69\x66\x28\x21\x66\x69\x6c\x74\x65\x72\x56\x61\x6c\x75\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x56\x61\x6c\x75\x65\x21\x3d\x3d\x66\x69\x6c\x74\x65\x72\x56\x61\x6c\x75\x65\x7d\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x6d\x65\x72\x67\x65\x28\x7b\x65\x72\x72\x6f\x72\x73\x3a\x6e\x65\x77\x45\x72\x72\x6f\x72\x73\x7d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x38\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x43\x4c\x45\x41\x52\x5f\x42\x59\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x37\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x37\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x69\x66\x28\x21\x70\x61\x79\x6c\x6f\x61\x64\x7c\x7c\x74\x79\x70\x65\x6f\x66\x20\x70\x61\x79\x6c\x6f\x61\x64\x21\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x7d\x76\x61\x72\x20\x6e\x65\x77\x45\x72\x72\x6f\x72\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x79\x6c\x6f\x61\x64\x28\x65\x72\x72\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x6d\x65\x72\x67\x65\x28\x7b\x65\x72\x72\x6f\x72\x73\x3a\x6e\x65\x77\x45\x72\x72\x6f\x72\x73\x7d\x29\x7d\x29\x2c\x5f\x72\x65\x66\x38\x7d\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x34\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x68\x6f\x6f\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x34\x29\x3b\x76\x61\x72\x20\x5f\x68\x6f\x6f\x6b\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x68\x6f\x6f\x6b\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x44\x45\x46\x41\x55\x4c\x54\x5f\x45\x52\x52\x4f\x52\x5f\x53\x54\x52\x55\x43\x54\x55\x52\x45\x3d\x7b\x6c\x69\x6e\x65\x3a\x30\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x65\x72\x72\x6f\x72\x22\x2c\x6d\x65\x73\x73\x61\x67\x65\x3a\x22\x55\x6e\x6b\x6e\x6f\x77\x6e\x20\x65\x72\x72\x6f\x72\x22\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x45\x72\x72\x6f\x72\x73\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x31\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x64\x75\x63\x65\x29\x3b\x76\x61\x72\x20\x5f\x6e\x6f\x74\x4f\x66\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x35\x29\x3b\x76\x61\x72\x20\x4e\x6f\x74\x4f\x66\x54\x79\x70\x65\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x6e\x6f\x74\x4f\x66\x54\x79\x70\x65\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4f\x6e\x65\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x36\x29\x3b\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x4f\x6e\x65\x4f\x66\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4f\x6e\x65\x6f\x66\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x54\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x73\x3d\x5b\x4e\x6f\x74\x4f\x66\x54\x79\x70\x65\x2c\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x4f\x6e\x65\x4f\x66\x5d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x45\x72\x72\x6f\x72\x73\x28\x65\x72\x72\x6f\x72\x73\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x69\x6e\x70\x75\x74\x73\x3d\x7b\x6a\x73\x53\x70\x65\x63\x3a\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x2e\x74\x6f\x4a\x53\x28\x29\x7d\x3b\x76\x61\x72\x20\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x64\x45\x72\x72\x6f\x72\x73\x3d\x28\x30\x2c\x5f\x72\x65\x64\x75\x63\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x72\x72\x6f\x72\x54\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x75\x6c\x74\x2c\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x29\x7b\x74\x72\x79\x7b\x76\x61\x72\x20\x6e\x65\x77\x6c\x79\x54\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x64\x45\x72\x72\x6f\x72\x73\x3d\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x2e\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x28\x72\x65\x73\x75\x6c\x74\x2c\x69\x6e\x70\x75\x74\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x6c\x79\x54\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x64\x45\x72\x72\x6f\x72\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x65\x72\x72\x7d\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x22\x54\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x20\x65\x72\x72\x6f\x72\x3a\x22\x2c\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x2c\x65\x72\x72\x6f\x72\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x64\x45\x72\x72\x6f\x72\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x65\x72\x72\x7d\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x69\x66\x28\x21\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x6c\x69\x6e\x65\x22\x29\x26\x26\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x29\x7b\x7d\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x3d\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x28\x65\x72\x72\x6f\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x76\x61\x72\x20\x73\x65\x65\x6b\x53\x74\x72\x3d\x22\x69\x73\x20\x6e\x6f\x74\x20\x6f\x66\x20\x61\x20\x74\x79\x70\x65\x28\x73\x29\x22\x3b\x76\x61\x72\x20\x69\x3d\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x29\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x73\x65\x65\x6b\x53\x74\x72\x29\x3b\x69\x66\x28\x69\x3e\x2d\x31\x29\x7b\x76\x61\x72\x20\x74\x79\x70\x65\x73\x3d\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x29\x2e\x73\x6c\x69\x63\x65\x28\x69\x2b\x73\x65\x65\x6b\x53\x74\x72\x2e\x6c\x65\x6e\x67\x74\x68\x29\x2e\x73\x70\x6c\x69\x74\x28\x22\x2c\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x73\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x2c\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x29\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x69\x29\x2b\x6d\x61\x6b\x65\x4e\x65\x77\x4d\x65\x73\x73\x61\x67\x65\x28\x74\x79\x70\x65\x73\x29\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x7d\x7d\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x6b\x65\x4e\x65\x77\x4d\x65\x73\x73\x61\x67\x65\x28\x74\x79\x70\x65\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x73\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x2c\x63\x2c\x69\x2c\x61\x72\x72\x29\x7b\x69\x66\x28\x69\x3d\x3d\x3d\x61\x72\x72\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x26\x26\x61\x72\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x2b\x22\x6f\x72\x20\x22\x2b\x63\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x61\x72\x72\x5b\x69\x2b\x31\x5d\x26\x26\x61\x72\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x32\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x2b\x63\x2b\x22\x2c\x20\x22\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x61\x72\x72\x5b\x69\x2b\x31\x5d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x2b\x63\x2b\x22\x20\x22\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x2b\x63\x7d\x7d\x2c\x22\x73\x68\x6f\x75\x6c\x64\x20\x62\x65\x20\x61\x22\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x3d\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x31\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x28\x65\x72\x72\x6f\x72\x73\x2c\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x6a\x73\x53\x70\x65\x63\x3d\x5f\x72\x65\x66\x2e\x6a\x73\x53\x70\x65\x63\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x3b\x76\x61\x72\x20\x73\x65\x61\x72\x63\x68\x53\x74\x72\x3d\x22\x69\x73\x20\x6e\x6f\x74\x20\x65\x78\x61\x63\x74\x6c\x79\x20\x6f\x6e\x65\x20\x66\x72\x6f\x6d\x20\x3c\x23\x2f\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x3e\x2c\x3c\x23\x2f\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2f\x6a\x73\x6f\x6e\x52\x65\x66\x65\x72\x65\x6e\x63\x65\x3e\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x6f\x72\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x76\x61\x72\x20\x6d\x65\x73\x73\x61\x67\x65\x3d\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x4f\x6e\x65\x4f\x66\x45\x72\x72\x6f\x72\x3d\x6d\x65\x73\x73\x61\x67\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x73\x65\x61\x72\x63\x68\x53\x74\x72\x29\x3e\x2d\x31\x3b\x69\x66\x28\x69\x73\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x4f\x6e\x65\x4f\x66\x45\x72\x72\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x54\x61\x69\x6c\x6f\x72\x65\x64\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x72\x72\x6f\x72\x28\x65\x72\x72\x2c\x6a\x73\x53\x70\x65\x63\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x7d\x7d\x29\x2e\x66\x6c\x61\x74\x74\x65\x6e\x28\x74\x72\x75\x65\x29\x7d\x76\x61\x72\x20\x56\x41\x4c\x49\x44\x5f\x49\x4e\x5f\x56\x41\x4c\x55\x45\x53\x3d\x5b\x22\x70\x61\x74\x68\x22\x2c\x22\x71\x75\x65\x72\x79\x22\x2c\x22\x68\x65\x61\x64\x65\x72\x22\x2c\x22\x62\x6f\x64\x79\x22\x2c\x22\x66\x6f\x72\x6d\x44\x61\x74\x61\x22\x5d\x3b\x76\x61\x72\x20\x56\x41\x4c\x49\x44\x5f\x43\x4f\x4c\x4c\x45\x43\x54\x49\x4f\x4e\x46\x4f\x52\x4d\x41\x54\x5f\x56\x41\x4c\x55\x45\x53\x3d\x5b\x22\x63\x73\x76\x22\x2c\x22\x73\x73\x76\x22\x2c\x22\x74\x73\x76\x22\x2c\x22\x70\x69\x70\x65\x73\x22\x2c\x22\x6d\x75\x6c\x74\x69\x22\x5d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x54\x61\x69\x6c\x6f\x72\x65\x64\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x72\x72\x6f\x72\x28\x65\x72\x72\x2c\x6a\x73\x53\x70\x65\x63\x29\x7b\x76\x61\x72\x20\x6e\x65\x77\x45\x72\x72\x73\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x3d\x28\x30\x2c\x5f\x67\x65\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6a\x73\x53\x70\x65\x63\x2c\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x29\x3b\x69\x66\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2e\x69\x6e\x26\x26\x56\x41\x4c\x49\x44\x5f\x49\x4e\x5f\x56\x41\x4c\x55\x45\x53\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2e\x69\x6e\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x76\x61\x72\x20\x6d\x65\x73\x73\x61\x67\x65\x3d\x27\x57\x72\x6f\x6e\x67\x20\x76\x61\x6c\x75\x65\x20\x66\x6f\x72\x20\x74\x68\x65\x20\x22\x69\x6e\x22\x20\x6b\x65\x79\x77\x6f\x72\x64\x2e\x20\x45\x78\x70\x65\x63\x74\x65\x64\x20\x6f\x6e\x65\x20\x6f\x66\x3a\x20\x27\x2b\x56\x41\x4c\x49\x44\x5f\x49\x4e\x5f\x56\x41\x4c\x55\x45\x53\x2e\x6a\x6f\x69\x6e\x28\x22\x2c\x20\x22\x29\x2b\x22\x2e\x22\x3b\x6e\x65\x77\x45\x72\x72\x73\x2e\x70\x75\x73\x68\x28\x7b\x6d\x65\x73\x73\x61\x67\x65\x3a\x6d\x65\x73\x73\x61\x67\x65\x2c\x70\x61\x74\x68\x3a\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x2b\x22\x2e\x69\x6e\x22\x2c\x74\x79\x70\x65\x3a\x22\x73\x70\x65\x63\x22\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x73\x74\x72\x75\x63\x74\x75\x72\x61\x6c\x22\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x65\x72\x72\x6f\x72\x22\x7d\x29\x7d\x69\x66\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2e\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x46\x6f\x72\x6d\x61\x74\x26\x26\x56\x41\x4c\x49\x44\x5f\x43\x4f\x4c\x4c\x45\x43\x54\x49\x4f\x4e\x46\x4f\x52\x4d\x41\x54\x5f\x56\x41\x4c\x55\x45\x53\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2e\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x46\x6f\x72\x6d\x61\x74\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x76\x61\x72\x20\x5f\x6d\x65\x73\x73\x61\x67\x65\x3d\x27\x57\x72\x6f\x6e\x67\x20\x76\x61\x6c\x75\x65\x20\x66\x6f\x72\x20\x74\x68\x65\x20\x22\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x46\x6f\x72\x6d\x61\x74\x22\x20\x6b\x65\x79\x77\x6f\x72\x64\x2e\x20\x45\x78\x70\x65\x63\x74\x65\x64\x20\x6f\x6e\x65\x20\x6f\x66\x3a\x20\x27\x2b\x56\x41\x4c\x49\x44\x5f\x43\x4f\x4c\x4c\x45\x43\x54\x49\x4f\x4e\x46\x4f\x52\x4d\x41\x54\x5f\x56\x41\x4c\x55\x45\x53\x2e\x6a\x6f\x69\x6e\x28\x22\x2c\x20\x22\x29\x2b\x22\x2e\x22\x3b\x6e\x65\x77\x45\x72\x72\x73\x2e\x70\x75\x73\x68\x28\x7b\x6d\x65\x73\x73\x61\x67\x65\x3a\x5f\x6d\x65\x73\x73\x61\x67\x65\x2c\x70\x61\x74\x68\x3a\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x2b\x22\x2e\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x46\x6f\x72\x6d\x61\x74\x22\x2c\x74\x79\x70\x65\x3a\x22\x73\x70\x65\x63\x22\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x73\x74\x72\x75\x63\x74\x75\x72\x61\x6c\x22\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x65\x72\x72\x6f\x72\x22\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x45\x72\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x6e\x65\x77\x45\x72\x72\x73\x29\x3a\x65\x72\x72\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x61\x73\x74\x45\x72\x72\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x29\x3b\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x74\x65\x28\x5f\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x74\x61\x74\x65\x7d\x3b\x76\x61\x72\x20\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x6c\x61\x73\x74\x45\x72\x72\x6f\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x61\x73\x74\x45\x72\x72\x6f\x72\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x6c\x6c\x2e\x6c\x61\x73\x74\x28\x29\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x6c\x61\x79\x6f\x75\x74\x3a\x7b\x72\x65\x64\x75\x63\x65\x72\x73\x3a\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x63\x74\x69\x6f\x6e\x73\x3a\x61\x63\x74\x69\x6f\x6e\x73\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x35\x29\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x61\x63\x74\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x30\x29\x3b\x76\x61\x72\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x24\x55\x50\x44\x41\x54\x45\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x24\x55\x50\x44\x41\x54\x45\x3d\x7b\x7d\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x24\x55\x50\x44\x41\x54\x45\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x6c\x61\x79\x6f\x75\x74\x22\x2c\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x24\x55\x50\x44\x41\x54\x45\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x46\x49\x4c\x54\x45\x52\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x66\x69\x6c\x74\x65\x72\x22\x2c\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x24\x55\x50\x44\x41\x54\x45\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x53\x48\x4f\x57\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x3d\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2e\x73\x68\x6f\x77\x6e\x3b\x76\x61\x72\x20\x74\x68\x69\x6e\x67\x54\x6f\x53\x68\x6f\x77\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2e\x74\x68\x69\x6e\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x75\x70\x64\x61\x74\x65\x28\x22\x73\x68\x6f\x77\x6e\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x7d\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x2e\x73\x65\x74\x28\x74\x68\x69\x6e\x67\x54\x6f\x53\x68\x6f\x77\x2c\x69\x73\x53\x68\x6f\x77\x6e\x29\x7d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x24\x55\x50\x44\x41\x54\x45\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4d\x4f\x44\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x76\x61\x72\x20\x74\x68\x69\x6e\x67\x3d\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2e\x74\x68\x69\x6e\x67\x3b\x76\x61\x72\x20\x6d\x6f\x64\x65\x3d\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x6f\x64\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x6d\x6f\x64\x65\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x74\x68\x69\x6e\x67\x29\x2c\x28\x6d\x6f\x64\x65\x7c\x7c\x22\x22\x29\x2b\x22\x22\x29\x7d\x29\x2c\x5f\x55\x50\x44\x41\x54\x45\x5f\x4c\x41\x59\x4f\x55\x54\x24\x55\x50\x44\x41\x54\x45\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x77\x68\x61\x74\x4d\x6f\x64\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x46\x69\x6c\x74\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x74\x65\x28\x5f\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x74\x61\x74\x65\x7d\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x75\x72\x72\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x6c\x61\x79\x6f\x75\x74\x22\x29\x7d\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x46\x69\x6c\x74\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x46\x69\x6c\x74\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x75\x72\x72\x65\x6e\x74\x46\x69\x6c\x74\x65\x72\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x66\x69\x6c\x74\x65\x72\x22\x29\x7d\x3b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x53\x68\x6f\x77\x6e\x28\x73\x74\x61\x74\x65\x2c\x74\x68\x69\x6e\x67\x2c\x64\x65\x66\x29\x7b\x74\x68\x69\x6e\x67\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x41\x72\x72\x61\x79\x29\x28\x74\x68\x69\x6e\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x73\x68\x6f\x77\x6e\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x7d\x29\x29\x2e\x67\x65\x74\x28\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x74\x68\x69\x6e\x67\x29\x2c\x64\x65\x66\x29\x7d\x3b\x76\x61\x72\x20\x77\x68\x61\x74\x4d\x6f\x64\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x77\x68\x61\x74\x4d\x6f\x64\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x68\x61\x74\x4d\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x68\x69\x6e\x67\x29\x7b\x76\x61\x72\x20\x64\x65\x66\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x32\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x3a\x22\x22\x3b\x74\x68\x69\x6e\x67\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x41\x72\x72\x61\x79\x29\x28\x74\x68\x69\x6e\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6d\x6f\x64\x65\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x6e\x67\x29\x29\x2c\x64\x65\x66\x29\x7d\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x69\x73\x53\x68\x6f\x77\x6e\x28\x73\x74\x61\x74\x65\x2c\x22\x65\x64\x69\x74\x6f\x72\x22\x29\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x2c\x66\x6e\x2c\x76\x61\x6c\x75\x65\x2c\x65\x6e\x74\x72\x69\x65\x73\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x6e\x74\x72\x69\x65\x73\x3f\x66\x6e\x28\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x5b\x30\x5d\x2c\x76\x61\x6c\x75\x65\x5b\x31\x5d\x29\x3a\x66\x6e\x28\x76\x61\x6c\x75\x65\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x74\x3d\x69\x74\x65\x72\x61\x74\x6f\x72\x5b\x22\x72\x65\x74\x75\x72\x6e\x22\x5d\x3b\x69\x66\x28\x72\x65\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x72\x65\x74\x2e\x63\x61\x6c\x6c\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x29\x29\x3b\x74\x68\x72\x6f\x77\x20\x65\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x29\x3b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x41\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x3d\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x2e\x41\x72\x72\x61\x79\x3d\x3d\x3d\x69\x74\x7c\x7c\x41\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x3d\x3d\x3d\x69\x74\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x53\x41\x46\x45\x5f\x43\x4c\x4f\x53\x49\x4e\x47\x3d\x66\x61\x6c\x73\x65\x3b\x74\x72\x79\x7b\x76\x61\x72\x20\x72\x69\x74\x65\x72\x3d\x5b\x37\x5d\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x28\x29\x3b\x72\x69\x74\x65\x72\x5b\x22\x72\x65\x74\x75\x72\x6e\x22\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x53\x41\x46\x45\x5f\x43\x4c\x4f\x53\x49\x4e\x47\x3d\x74\x72\x75\x65\x7d\x3b\x41\x72\x72\x61\x79\x2e\x66\x72\x6f\x6d\x28\x72\x69\x74\x65\x72\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x68\x72\x6f\x77\x20\x32\x7d\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x2c\x73\x6b\x69\x70\x43\x6c\x6f\x73\x69\x6e\x67\x29\x7b\x69\x66\x28\x21\x73\x6b\x69\x70\x43\x6c\x6f\x73\x69\x6e\x67\x26\x26\x21\x53\x41\x46\x45\x5f\x43\x4c\x4f\x53\x49\x4e\x47\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x73\x61\x66\x65\x3d\x66\x61\x6c\x73\x65\x3b\x74\x72\x79\x7b\x76\x61\x72\x20\x61\x72\x72\x3d\x5b\x37\x5d\x3b\x76\x61\x72\x20\x69\x74\x65\x72\x3d\x61\x72\x72\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x28\x29\x3b\x69\x74\x65\x72\x2e\x6e\x65\x78\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x64\x6f\x6e\x65\x3a\x73\x61\x66\x65\x3d\x74\x72\x75\x65\x7d\x7d\x3b\x61\x72\x72\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x65\x72\x7d\x3b\x65\x78\x65\x63\x28\x61\x72\x72\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x61\x66\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x73\x70\x65\x63\x3a\x7b\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3a\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x2c\x72\x65\x64\x75\x63\x65\x72\x73\x3a\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x63\x74\x69\x6f\x6e\x73\x3a\x61\x63\x74\x69\x6f\x6e\x73\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x35\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x36\x29\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x61\x63\x74\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x33\x29\x3b\x76\x61\x72\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x37\x29\x3b\x76\x61\x72\x20\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x33\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x3d\x7b\x7d\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x3f\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x73\x70\x65\x63\x22\x2c\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x29\x3a\x73\x74\x61\x74\x65\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x55\x52\x4c\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x75\x72\x6c\x22\x2c\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2b\x22\x22\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4a\x53\x4f\x4e\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x6a\x73\x6f\x6e\x22\x2c\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x29\x28\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x29\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x22\x5d\x2c\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x29\x28\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x29\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x4f\x4c\x56\x45\x44\x5f\x53\x55\x42\x54\x52\x45\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x61\x63\x74\x69\x6f\x6e\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x3d\x5f\x61\x63\x74\x69\x6f\x6e\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x29\x29\x2c\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x29\x28\x76\x61\x6c\x75\x65\x29\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x2c\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2c\x70\x61\x72\x61\x6d\x49\x6e\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x72\x61\x6d\x49\x6e\x2c\x70\x61\x72\x61\x6d\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x72\x61\x6d\x2c\x76\x61\x6c\x75\x65\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x76\x61\x6c\x75\x65\x2c\x69\x73\x58\x6d\x6c\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x69\x73\x58\x6d\x6c\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x4b\x65\x79\x3d\x70\x61\x72\x61\x6d\x3f\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x70\x61\x72\x61\x6d\x54\x6f\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x29\x28\x70\x61\x72\x61\x6d\x29\x3a\x70\x61\x72\x61\x6d\x49\x6e\x2b\x22\x2e\x22\x2b\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x4b\x65\x79\x3d\x69\x73\x58\x6d\x6c\x3f\x22\x76\x61\x6c\x75\x65\x5f\x78\x6d\x6c\x22\x3a\x22\x76\x61\x6c\x75\x65\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x70\x61\x72\x61\x6d\x4b\x65\x79\x2c\x76\x61\x6c\x75\x65\x4b\x65\x79\x5d\x29\x2c\x76\x61\x6c\x75\x65\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x45\x4d\x50\x54\x59\x5f\x50\x41\x52\x41\x4d\x5f\x49\x4e\x43\x4c\x55\x53\x49\x4f\x4e\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x32\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2c\x70\x61\x72\x61\x6d\x49\x6e\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x72\x61\x6d\x49\x6e\x2c\x69\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x69\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x3b\x69\x66\x28\x21\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x7c\x7c\x21\x70\x61\x72\x61\x6d\x49\x6e\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x77\x61\x72\x6e\x28\x22\x57\x61\x72\x6e\x69\x6e\x67\x3a\x20\x55\x50\x44\x41\x54\x45\x5f\x45\x4d\x50\x54\x59\x5f\x50\x41\x52\x41\x4d\x5f\x49\x4e\x43\x4c\x55\x53\x49\x4f\x4e\x20\x63\x6f\x75\x6c\x64\x20\x6e\x6f\x74\x20\x67\x65\x6e\x65\x72\x61\x74\x65\x20\x61\x20\x70\x61\x72\x61\x6d\x4b\x65\x79\x2e\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x7d\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x4b\x65\x79\x3d\x70\x61\x72\x61\x6d\x49\x6e\x2b\x22\x2e\x22\x2b\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x69\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x73\x22\x2c\x70\x61\x72\x61\x6d\x4b\x65\x79\x5d\x29\x2c\x69\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x33\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x33\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x33\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x69\x73\x4f\x41\x53\x33\x3d\x5f\x72\x65\x66\x33\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x69\x73\x4f\x41\x53\x33\x3b\x76\x61\x72\x20\x6f\x70\x3d\x28\x30\x2c\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x29\x28\x73\x74\x61\x74\x65\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x73\x3d\x28\x30\x2c\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x56\x61\x6c\x75\x65\x73\x29\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x75\x70\x64\x61\x74\x65\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x5d\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x7d\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x4d\x65\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x2e\x67\x65\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x2c\x70\x61\x72\x61\x6d\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x70\x61\x72\x61\x6d\x54\x6f\x56\x61\x6c\x75\x65\x29\x28\x70\x61\x72\x61\x6d\x2c\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x73\x29\x3b\x76\x61\x72\x20\x69\x73\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x49\x6e\x63\x6c\x75\x64\x65\x64\x3d\x28\x30\x2c\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x53\x65\x74\x74\x69\x6e\x67\x46\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2c\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x29\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x73\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x29\x28\x70\x61\x72\x61\x6d\x2c\x76\x61\x6c\x75\x65\x2c\x7b\x62\x79\x70\x61\x73\x73\x52\x65\x71\x75\x69\x72\x65\x64\x43\x68\x65\x63\x6b\x3a\x69\x73\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x49\x6e\x63\x6c\x75\x64\x65\x64\x2c\x69\x73\x4f\x41\x53\x33\x3a\x69\x73\x4f\x41\x53\x33\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x2e\x73\x65\x74\x49\x6e\x28\x5b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x70\x61\x72\x61\x6d\x54\x6f\x49\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x29\x28\x70\x61\x72\x61\x6d\x29\x2c\x22\x65\x72\x72\x6f\x72\x73\x22\x5d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x65\x72\x72\x6f\x72\x73\x29\x29\x7d\x2c\x70\x61\x72\x61\x6d\x4d\x65\x74\x61\x29\x7d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x43\x4c\x45\x41\x52\x5f\x56\x41\x4c\x49\x44\x41\x54\x45\x5f\x50\x41\x52\x41\x4d\x53\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x34\x29\x7b\x76\x61\x72\x20\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x34\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x75\x70\x64\x61\x74\x65\x49\x6e\x28\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x5d\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x5b\x5d\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x2e\x73\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x5b\x5d\x29\x29\x7d\x29\x7d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x53\x45\x54\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x35\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x35\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x35\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x72\x65\x73\x3d\x5f\x72\x65\x66\x35\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x72\x65\x73\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x35\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x35\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x72\x65\x73\x2e\x65\x72\x72\x6f\x72\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x65\x72\x72\x6f\x72\x3a\x74\x72\x75\x65\x2c\x6e\x61\x6d\x65\x3a\x72\x65\x73\x2e\x65\x72\x72\x2e\x6e\x61\x6d\x65\x2c\x6d\x65\x73\x73\x61\x67\x65\x3a\x72\x65\x73\x2e\x65\x72\x72\x2e\x6d\x65\x73\x73\x61\x67\x65\x2c\x73\x74\x61\x74\x75\x73\x43\x6f\x64\x65\x3a\x72\x65\x73\x2e\x65\x72\x72\x2e\x73\x74\x61\x74\x75\x73\x43\x6f\x64\x65\x7d\x2c\x72\x65\x73\x2e\x65\x72\x72\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x73\x75\x6c\x74\x3d\x72\x65\x73\x7d\x72\x65\x73\x75\x6c\x74\x2e\x68\x65\x61\x64\x65\x72\x73\x3d\x72\x65\x73\x75\x6c\x74\x2e\x68\x65\x61\x64\x65\x72\x73\x7c\x7c\x7b\x7d\x3b\x76\x61\x72\x20\x6e\x65\x77\x53\x74\x61\x74\x65\x3d\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x29\x28\x72\x65\x73\x75\x6c\x74\x29\x29\x3b\x69\x66\x28\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x42\x6c\x6f\x62\x26\x26\x72\x65\x73\x2e\x64\x61\x74\x61\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x42\x6c\x6f\x62\x29\x7b\x6e\x65\x77\x53\x74\x61\x74\x65\x3d\x6e\x65\x77\x53\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x22\x74\x65\x78\x74\x22\x5d\x2c\x72\x65\x73\x2e\x64\x61\x74\x61\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x53\x74\x61\x74\x65\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x53\x45\x54\x5f\x52\x45\x51\x55\x45\x53\x54\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x36\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x36\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x36\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x72\x65\x71\x3d\x5f\x72\x65\x66\x36\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x72\x65\x71\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x36\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x36\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x71\x75\x65\x73\x74\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x29\x28\x72\x65\x71\x29\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x53\x45\x54\x5f\x4d\x55\x54\x41\x54\x45\x44\x5f\x52\x45\x51\x55\x45\x53\x54\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x37\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x37\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x37\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x72\x65\x71\x3d\x5f\x72\x65\x66\x37\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x72\x65\x71\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x37\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x37\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x29\x28\x72\x65\x71\x29\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x41\x5f\x56\x41\x4c\x55\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x38\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x38\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x38\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x38\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x38\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x76\x61\x6c\x75\x65\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x38\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6b\x65\x79\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x61\x74\x68\x3d\x5b\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x29\x29\x3b\x76\x61\x72\x20\x6d\x65\x74\x61\x50\x61\x74\x68\x3d\x5b\x22\x6d\x65\x74\x61\x22\x2c\x22\x70\x61\x74\x68\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x29\x29\x3b\x69\x66\x28\x21\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6a\x73\x6f\x6e\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x61\x74\x68\x29\x29\x29\x26\x26\x21\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x61\x74\x68\x29\x29\x29\x26\x26\x21\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x61\x74\x68\x29\x29\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6d\x65\x74\x61\x50\x61\x74\x68\x29\x2c\x5b\x6b\x65\x79\x5d\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x76\x61\x6c\x75\x65\x29\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x43\x4c\x45\x41\x52\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x39\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x39\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x39\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x39\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x39\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x64\x65\x6c\x65\x74\x65\x49\x6e\x28\x5b\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x43\x4c\x45\x41\x52\x5f\x52\x45\x51\x55\x45\x53\x54\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x31\x30\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x31\x30\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x31\x30\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x31\x30\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x31\x30\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x64\x65\x6c\x65\x74\x65\x49\x6e\x28\x5b\x22\x72\x65\x71\x75\x65\x73\x74\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x53\x45\x54\x5f\x53\x43\x48\x45\x4d\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x31\x31\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x31\x31\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x31\x31\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x73\x63\x68\x65\x6d\x65\x3d\x5f\x72\x65\x66\x31\x31\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x73\x63\x68\x65\x6d\x65\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x31\x31\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x31\x31\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x69\x66\x28\x70\x61\x74\x68\x26\x26\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x65\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x73\x63\x68\x65\x6d\x65\x29\x7d\x69\x66\x28\x21\x70\x61\x74\x68\x26\x26\x21\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x65\x22\x2c\x22\x5f\x64\x65\x66\x61\x75\x6c\x74\x53\x63\x68\x65\x6d\x65\x22\x5d\x2c\x73\x63\x68\x65\x6d\x65\x29\x7d\x7d\x29\x2c\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x50\x45\x43\x24\x55\x50\x44\x41\x54\x45\x5f\x55\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x37\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x76\x61\x72\x20\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x29\x3b\x76\x61\x72\x20\x53\x50\x45\x43\x49\x45\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x73\x70\x65\x63\x69\x65\x73\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4f\x2c\x44\x29\x7b\x76\x61\x72\x20\x43\x3d\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3b\x76\x61\x72\x20\x53\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x28\x53\x3d\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x43\x29\x5b\x53\x50\x45\x43\x49\x45\x53\x5d\x29\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x44\x3a\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x53\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x29\x3b\x76\x61\x72\x20\x69\x6e\x76\x6f\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x39\x29\x3b\x76\x61\x72\x20\x68\x74\x6d\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x33\x29\x3b\x76\x61\x72\x20\x63\x65\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x38\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x63\x65\x73\x73\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x70\x72\x6f\x63\x65\x73\x73\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x61\x73\x6b\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x73\x65\x74\x49\x6d\x6d\x65\x64\x69\x61\x74\x65\x3b\x76\x61\x72\x20\x63\x6c\x65\x61\x72\x54\x61\x73\x6b\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x63\x6c\x65\x61\x72\x49\x6d\x6d\x65\x64\x69\x61\x74\x65\x3b\x76\x61\x72\x20\x4d\x65\x73\x73\x61\x67\x65\x43\x68\x61\x6e\x6e\x65\x6c\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x4d\x65\x73\x73\x61\x67\x65\x43\x68\x61\x6e\x6e\x65\x6c\x3b\x76\x61\x72\x20\x44\x69\x73\x70\x61\x74\x63\x68\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x44\x69\x73\x70\x61\x74\x63\x68\x3b\x76\x61\x72\x20\x63\x6f\x75\x6e\x74\x65\x72\x3d\x30\x3b\x76\x61\x72\x20\x71\x75\x65\x75\x65\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x4f\x4e\x52\x45\x41\x44\x59\x53\x54\x41\x54\x45\x43\x48\x41\x4e\x47\x45\x3d\x22\x6f\x6e\x72\x65\x61\x64\x79\x73\x74\x61\x74\x65\x63\x68\x61\x6e\x67\x65\x22\x3b\x76\x61\x72\x20\x64\x65\x66\x65\x72\x2c\x63\x68\x61\x6e\x6e\x65\x6c\x2c\x70\x6f\x72\x74\x3b\x76\x61\x72\x20\x72\x75\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x69\x64\x3d\x2b\x74\x68\x69\x73\x3b\x69\x66\x28\x71\x75\x65\x75\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x69\x64\x29\x29\x7b\x76\x61\x72\x20\x66\x6e\x3d\x71\x75\x65\x75\x65\x5b\x69\x64\x5d\x3b\x64\x65\x6c\x65\x74\x65\x20\x71\x75\x65\x75\x65\x5b\x69\x64\x5d\x3b\x66\x6e\x28\x29\x7d\x7d\x3b\x76\x61\x72\x20\x6c\x69\x73\x74\x65\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x76\x65\x6e\x74\x29\x7b\x72\x75\x6e\x2e\x63\x61\x6c\x6c\x28\x65\x76\x65\x6e\x74\x2e\x64\x61\x74\x61\x29\x7d\x3b\x69\x66\x28\x21\x73\x65\x74\x54\x61\x73\x6b\x7c\x7c\x21\x63\x6c\x65\x61\x72\x54\x61\x73\x6b\x29\x7b\x73\x65\x74\x54\x61\x73\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x49\x6d\x6d\x65\x64\x69\x61\x74\x65\x28\x66\x6e\x29\x7b\x76\x61\x72\x20\x61\x72\x67\x73\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x69\x3d\x31\x3b\x77\x68\x69\x6c\x65\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x61\x72\x67\x73\x2e\x70\x75\x73\x68\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x2b\x2b\x5d\x29\x3b\x71\x75\x65\x75\x65\x5b\x2b\x2b\x63\x6f\x75\x6e\x74\x65\x72\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x69\x6e\x76\x6f\x6b\x65\x28\x74\x79\x70\x65\x6f\x66\x20\x66\x6e\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x66\x6e\x3a\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x29\x2c\x61\x72\x67\x73\x29\x7d\x3b\x64\x65\x66\x65\x72\x28\x63\x6f\x75\x6e\x74\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x75\x6e\x74\x65\x72\x7d\x3b\x63\x6c\x65\x61\x72\x54\x61\x73\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x72\x49\x6d\x6d\x65\x64\x69\x61\x74\x65\x28\x69\x64\x29\x7b\x64\x65\x6c\x65\x74\x65\x20\x71\x75\x65\x75\x65\x5b\x69\x64\x5d\x7d\x3b\x69\x66\x28\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x29\x28\x70\x72\x6f\x63\x65\x73\x73\x29\x3d\x3d\x22\x70\x72\x6f\x63\x65\x73\x73\x22\x29\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x70\x72\x6f\x63\x65\x73\x73\x2e\x6e\x65\x78\x74\x54\x69\x63\x6b\x28\x63\x74\x78\x28\x72\x75\x6e\x2c\x69\x64\x2c\x31\x29\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x44\x69\x73\x70\x61\x74\x63\x68\x26\x26\x44\x69\x73\x70\x61\x74\x63\x68\x2e\x6e\x6f\x77\x29\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x44\x69\x73\x70\x61\x74\x63\x68\x2e\x6e\x6f\x77\x28\x63\x74\x78\x28\x72\x75\x6e\x2c\x69\x64\x2c\x31\x29\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x4d\x65\x73\x73\x61\x67\x65\x43\x68\x61\x6e\x6e\x65\x6c\x29\x7b\x63\x68\x61\x6e\x6e\x65\x6c\x3d\x6e\x65\x77\x20\x4d\x65\x73\x73\x61\x67\x65\x43\x68\x61\x6e\x6e\x65\x6c\x3b\x70\x6f\x72\x74\x3d\x63\x68\x61\x6e\x6e\x65\x6c\x2e\x70\x6f\x72\x74\x32\x3b\x63\x68\x61\x6e\x6e\x65\x6c\x2e\x70\x6f\x72\x74\x31\x2e\x6f\x6e\x6d\x65\x73\x73\x61\x67\x65\x3d\x6c\x69\x73\x74\x65\x6e\x65\x72\x3b\x64\x65\x66\x65\x72\x3d\x63\x74\x78\x28\x70\x6f\x72\x74\x2e\x70\x6f\x73\x74\x4d\x65\x73\x73\x61\x67\x65\x2c\x70\x6f\x72\x74\x2c\x31\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x67\x6c\x6f\x62\x61\x6c\x2e\x61\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\x6e\x65\x72\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x70\x6f\x73\x74\x4d\x65\x73\x73\x61\x67\x65\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x21\x67\x6c\x6f\x62\x61\x6c\x2e\x69\x6d\x70\x6f\x72\x74\x53\x63\x72\x69\x70\x74\x73\x29\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x67\x6c\x6f\x62\x61\x6c\x2e\x70\x6f\x73\x74\x4d\x65\x73\x73\x61\x67\x65\x28\x69\x64\x2b\x22\x22\x2c\x22\x2a\x22\x29\x7d\x3b\x67\x6c\x6f\x62\x61\x6c\x2e\x61\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\x6e\x65\x72\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x2c\x6c\x69\x73\x74\x65\x6e\x65\x72\x2c\x66\x61\x6c\x73\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x4f\x4e\x52\x45\x41\x44\x59\x53\x54\x41\x54\x45\x43\x48\x41\x4e\x47\x45\x20\x69\x6e\x20\x63\x65\x6c\x28\x22\x73\x63\x72\x69\x70\x74\x22\x29\x29\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x68\x74\x6d\x6c\x2e\x61\x70\x70\x65\x6e\x64\x43\x68\x69\x6c\x64\x28\x63\x65\x6c\x28\x22\x73\x63\x72\x69\x70\x74\x22\x29\x29\x5b\x4f\x4e\x52\x45\x41\x44\x59\x53\x54\x41\x54\x45\x43\x48\x41\x4e\x47\x45\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x68\x74\x6d\x6c\x2e\x72\x65\x6d\x6f\x76\x65\x43\x68\x69\x6c\x64\x28\x74\x68\x69\x73\x29\x3b\x72\x75\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x64\x29\x7d\x7d\x7d\x65\x6c\x73\x65\x7b\x64\x65\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x64\x29\x7b\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x63\x74\x78\x28\x72\x75\x6e\x2c\x69\x64\x2c\x31\x29\x2c\x30\x29\x7d\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x73\x65\x74\x3a\x73\x65\x74\x54\x61\x73\x6b\x2c\x63\x6c\x65\x61\x72\x3a\x63\x6c\x65\x61\x72\x54\x61\x73\x6b\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x7b\x65\x3a\x66\x61\x6c\x73\x65\x2c\x76\x3a\x65\x78\x65\x63\x28\x29\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x65\x3a\x74\x72\x75\x65\x2c\x76\x3a\x65\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x76\x61\x72\x20\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x38\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x2c\x78\x29\x7b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x43\x29\x3b\x69\x66\x28\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x78\x29\x26\x26\x78\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x3d\x3d\x43\x29\x72\x65\x74\x75\x72\x6e\x20\x78\x3b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x66\x28\x43\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3b\x72\x65\x73\x6f\x6c\x76\x65\x28\x78\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x3b\x76\x61\x72\x20\x64\x50\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x3b\x76\x61\x72\x20\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x3b\x76\x61\x72\x20\x53\x50\x45\x43\x49\x45\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x73\x70\x65\x63\x69\x65\x73\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4b\x45\x59\x29\x7b\x76\x61\x72\x20\x43\x3d\x74\x79\x70\x65\x6f\x66\x20\x63\x6f\x72\x65\x5b\x4b\x45\x59\x5d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x63\x6f\x72\x65\x5b\x4b\x45\x59\x5d\x3a\x67\x6c\x6f\x62\x61\x6c\x5b\x4b\x45\x59\x5d\x3b\x69\x66\x28\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x26\x26\x43\x26\x26\x21\x43\x5b\x53\x50\x45\x43\x49\x45\x53\x5d\x29\x64\x50\x2e\x66\x28\x43\x2c\x53\x50\x45\x43\x49\x45\x53\x2c\x7b\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x79\x61\x6d\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x79\x61\x6d\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x53\x63\x68\x65\x6d\x61\x28\x7b\x69\x6e\x63\x6c\x75\x64\x65\x3a\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x34\x29\x5d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x53\x63\x68\x65\x6d\x61\x28\x7b\x69\x6e\x63\x6c\x75\x64\x65\x3a\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x30\x29\x5d\x2c\x69\x6d\x70\x6c\x69\x63\x69\x74\x3a\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x32\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x33\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x34\x29\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x35\x29\x5d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x6b\x65\x79\x3d\x3d\x22\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x22\x26\x26\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x29\x7b\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x2c\x7b\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x77\x72\x69\x74\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x3d\x76\x61\x6c\x75\x65\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x72\x79\x7b\x76\x61\x72\x20\x66\x75\x6e\x63\x3d\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x28\x4f\x62\x6a\x65\x63\x74\x2c\x22\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x22\x29\x3b\x66\x75\x6e\x63\x28\x7b\x7d\x2c\x22\x22\x2c\x7b\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x7d\x28\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6b\x65\x79\x73\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x31\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x28\x6f\x72\x69\x2c\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x70\x61\x72\x73\x65\x54\x6f\x4a\x73\x6f\x6e\x2e\x61\x70\x70\x6c\x79\x28\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x7d\x3b\x76\x61\x72\x20\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x28\x6f\x72\x69\x2c\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x32\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x73\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x69\x6e\x76\x61\x6c\x69\x64\x61\x74\x65\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x43\x61\x63\x68\x65\x28\x29\x3b\x76\x61\x72\x20\x6a\x73\x6f\x6e\x3d\x61\x72\x67\x73\x5b\x30\x5d\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x49\x74\x65\x6d\x73\x3d\x28\x30\x2c\x5f\x67\x65\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6a\x73\x6f\x6e\x2c\x5b\x22\x70\x61\x74\x68\x73\x22\x5d\x29\x7c\x7c\x7b\x7d\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x49\x74\x65\x6d\x4b\x65\x79\x73\x3d\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x49\x74\x65\x6d\x73\x29\x3b\x70\x61\x74\x68\x49\x74\x65\x6d\x4b\x65\x79\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x3d\x28\x30\x2c\x5f\x67\x65\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x49\x74\x65\x6d\x73\x2c\x5b\x6b\x5d\x29\x3b\x69\x66\x28\x76\x61\x6c\x2e\x24\x72\x65\x66\x29\x7b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x2c\x6b\x5d\x29\x7d\x7d\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x5b\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x22\x2c\x22\x73\x65\x63\x75\x72\x69\x74\x79\x53\x63\x68\x65\x6d\x65\x73\x22\x5d\x29\x7d\x7d\x3b\x76\x61\x72\x20\x65\x78\x65\x63\x75\x74\x65\x52\x65\x71\x75\x65\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x52\x65\x71\x75\x65\x73\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x78\x65\x63\x75\x74\x65\x52\x65\x71\x75\x65\x73\x74\x28\x6f\x72\x69\x2c\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x33\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x71\x29\x7b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6c\x6f\x67\x52\x65\x71\x75\x65\x73\x74\x28\x72\x65\x71\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x72\x69\x28\x72\x65\x71\x29\x7d\x7d\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x28\x6f\x72\x69\x2c\x5f\x72\x65\x66\x34\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x34\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x71\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x72\x69\x28\x72\x65\x71\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x53\x74\x6f\x72\x65\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x3b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x72\x65\x6e\x64\x65\x72\x3d\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x2e\x72\x65\x6e\x64\x65\x72\x2c\x6d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x2e\x6d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3b\x76\x61\x72\x20\x6d\x65\x6d\x47\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x29\x28\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x29\x29\x3b\x76\x61\x72\x20\x6d\x65\x6d\x4d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6d\x65\x6d\x6f\x69\x7a\x65\x29\x28\x6d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x2c\x6d\x65\x6d\x47\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x7b\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x3a\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x6d\x65\x6d\x47\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3a\x6d\x65\x6d\x4d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x72\x65\x6e\x64\x65\x72\x3a\x72\x65\x6e\x64\x65\x72\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x29\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x5f\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x39\x29\x3b\x76\x61\x72\x20\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x6e\x64\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x79\x70\x65\x6f\x66\x32\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6b\x65\x79\x73\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x44\x6f\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x31\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x44\x6f\x6d\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x44\x6f\x6d\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x52\x65\x64\x75\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x32\x29\x3b\x76\x61\x72\x20\x5f\x6f\x6d\x69\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x33\x29\x3b\x76\x61\x72\x20\x5f\x6f\x6d\x69\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x6d\x69\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x53\x79\x73\x74\x65\x6d\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x79\x73\x74\x65\x6d\x57\x72\x61\x70\x70\x65\x72\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x54\x6f\x57\x72\x61\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x63\x6c\x61\x73\x73\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x5f\x63\x6c\x61\x73\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x63\x6c\x61\x73\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x54\x6f\x57\x72\x61\x70\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x74\x68\x69\x73\x2e\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x6c\x61\x73\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x3b\x76\x61\x72\x20\x52\x6f\x6f\x74\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x52\x6f\x6f\x74\x57\x72\x61\x70\x70\x65\x72\x28\x72\x65\x64\x75\x78\x53\x74\x6f\x72\x65\x2c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x54\x6f\x57\x72\x61\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x32\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x63\x6c\x61\x73\x73\x32\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x5f\x63\x6c\x61\x73\x73\x32\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x63\x6c\x61\x73\x73\x32\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x32\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x32\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x5f\x72\x65\x61\x63\x74\x52\x65\x64\x75\x78\x2e\x50\x72\x6f\x76\x69\x64\x65\x72\x2c\x7b\x73\x74\x6f\x72\x65\x3a\x72\x65\x64\x75\x78\x53\x74\x6f\x72\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x54\x6f\x57\x72\x61\x70\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x74\x68\x69\x73\x2e\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x6c\x61\x73\x73\x32\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x3b\x76\x61\x72\x20\x6d\x61\x6b\x65\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x6b\x65\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x72\x65\x64\x75\x78\x53\x74\x6f\x72\x65\x29\x7b\x76\x61\x72\x20\x6d\x61\x70\x53\x74\x61\x74\x65\x54\x6f\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x70\x53\x74\x61\x74\x65\x54\x6f\x50\x72\x6f\x70\x73\x28\x73\x74\x61\x74\x65\x2c\x6f\x77\x6e\x50\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x70\x73\x46\x6f\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6f\x77\x6e\x50\x72\x6f\x70\x73\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x3b\x76\x61\x72\x20\x6f\x72\x69\x3d\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x6d\x61\x70\x53\x74\x61\x74\x65\x54\x6f\x50\x72\x6f\x70\x73\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x73\x74\x61\x74\x65\x3a\x73\x74\x61\x74\x65\x7d\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x72\x69\x28\x73\x74\x61\x74\x65\x2c\x70\x72\x6f\x70\x73\x46\x6f\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x3b\x76\x61\x72\x20\x77\x72\x61\x70\x70\x65\x64\x57\x69\x74\x68\x53\x79\x73\x74\x65\x6d\x3d\x53\x79\x73\x74\x65\x6d\x57\x72\x61\x70\x70\x65\x72\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x72\x65\x64\x75\x78\x53\x74\x6f\x72\x65\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x6e\x65\x63\x74\x65\x64\x3d\x28\x30\x2c\x5f\x72\x65\x61\x63\x74\x52\x65\x64\x75\x78\x2e\x63\x6f\x6e\x6e\x65\x63\x74\x29\x28\x6d\x61\x70\x53\x74\x61\x74\x65\x54\x6f\x50\x72\x6f\x70\x73\x29\x28\x77\x72\x61\x70\x70\x65\x64\x57\x69\x74\x68\x53\x79\x73\x74\x65\x6d\x29\x3b\x69\x66\x28\x72\x65\x64\x75\x78\x53\x74\x6f\x72\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x52\x6f\x6f\x74\x57\x72\x61\x70\x70\x65\x72\x28\x72\x65\x64\x75\x78\x53\x74\x6f\x72\x65\x2c\x63\x6f\x6e\x6e\x65\x63\x74\x65\x64\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x6e\x6e\x65\x63\x74\x65\x64\x7d\x3b\x76\x61\x72\x20\x68\x61\x6e\x64\x6c\x65\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x6e\x64\x6c\x65\x50\x72\x6f\x70\x73\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x6d\x61\x70\x70\x69\x6e\x67\x2c\x70\x72\x6f\x70\x73\x2c\x6f\x6c\x64\x50\x72\x6f\x70\x73\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x70\x72\x6f\x70\x20\x69\x6e\x20\x6d\x61\x70\x70\x69\x6e\x67\x29\x7b\x76\x61\x72\x20\x66\x6e\x3d\x6d\x61\x70\x70\x69\x6e\x67\x5b\x70\x72\x6f\x70\x5d\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x66\x6e\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x66\x6e\x28\x70\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x5d\x2c\x6f\x6c\x64\x50\x72\x6f\x70\x73\x5b\x70\x72\x6f\x70\x5d\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x7d\x7d\x3b\x76\x61\x72\x20\x6d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x6b\x65\x4d\x61\x70\x70\x65\x64\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x2c\x6d\x65\x6d\x47\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x4e\x61\x6d\x65\x2c\x6d\x61\x70\x70\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x33\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x33\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x33\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x63\x6c\x61\x73\x73\x33\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x5f\x63\x6c\x61\x73\x73\x33\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x33\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x63\x6c\x61\x73\x73\x33\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x33\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x68\x61\x6e\x64\x6c\x65\x50\x72\x6f\x70\x73\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x6d\x61\x70\x70\x69\x6e\x67\x2c\x70\x72\x6f\x70\x73\x2c\x7b\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x33\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x33\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x68\x61\x6e\x64\x6c\x65\x50\x72\x6f\x70\x73\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x6d\x61\x70\x70\x69\x6e\x67\x2c\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x63\x6c\x65\x61\x6e\x50\x72\x6f\x70\x73\x3d\x28\x30\x2c\x5f\x6f\x6d\x69\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6d\x61\x70\x70\x69\x6e\x67\x3f\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6d\x61\x70\x70\x69\x6e\x67\x29\x3a\x5b\x5d\x29\x3b\x76\x61\x72\x20\x43\x6f\x6d\x70\x3d\x6d\x65\x6d\x47\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x4e\x61\x6d\x65\x2c\x22\x72\x6f\x6f\x74\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6d\x70\x2c\x63\x6c\x65\x61\x6e\x50\x72\x6f\x70\x73\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x6c\x61\x73\x73\x33\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x3b\x76\x61\x72\x20\x72\x65\x6e\x64\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x6e\x64\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x64\x6f\x6d\x4e\x6f\x64\x65\x29\x7b\x76\x61\x72\x20\x41\x70\x70\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x22\x41\x70\x70\x22\x2c\x22\x72\x6f\x6f\x74\x22\x29\x3b\x5f\x72\x65\x61\x63\x74\x44\x6f\x6d\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x72\x65\x6e\x64\x65\x72\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x70\x70\x2c\x6e\x75\x6c\x6c\x29\x2c\x64\x6f\x6d\x4e\x6f\x64\x65\x29\x7d\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x34\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x34\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x34\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x63\x6c\x61\x73\x73\x34\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x5f\x63\x6c\x61\x73\x73\x34\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x63\x6c\x61\x73\x73\x34\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x34\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x63\x6c\x61\x73\x73\x34\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x6c\x61\x73\x73\x34\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x3b\x76\x61\x72\x20\x46\x61\x6c\x6c\x62\x61\x63\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x46\x61\x6c\x6c\x62\x61\x63\x6b\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x6e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x2e\x6e\x61\x6d\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x70\x61\x64\x64\x69\x6e\x67\x3a\x22\x31\x65\x6d\x22\x2c\x63\x6f\x6c\x6f\x72\x3a\x22\x23\x61\x61\x61\x22\x7d\x7d\x2c\x22\xf0\x9f\x98\xb1\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x43\x6f\x75\x6c\x64\x20\x6e\x6f\x74\x20\x72\x65\x6e\x64\x65\x72\x20\x22\x2c\x6e\x61\x6d\x65\x3d\x3d\x3d\x22\x74\x22\x3f\x22\x74\x68\x69\x73\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x22\x3a\x6e\x61\x6d\x65\x2c\x22\x2c\x20\x73\x65\x65\x20\x74\x68\x65\x20\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x22\x29\x29\x7d\x3b\x76\x61\x72\x20\x77\x72\x61\x70\x52\x65\x6e\x64\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x61\x70\x52\x65\x6e\x64\x65\x72\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x69\x73\x53\x74\x61\x74\x65\x6c\x65\x73\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x53\x74\x61\x74\x65\x6c\x65\x73\x73\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x26\x26\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x69\x73\x52\x65\x61\x63\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x3b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x3d\x69\x73\x53\x74\x61\x74\x65\x6c\x65\x73\x73\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3a\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x6f\x72\x69\x3d\x74\x61\x72\x67\x65\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x6e\x64\x65\x72\x3b\x74\x61\x72\x67\x65\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x6e\x64\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x74\x72\x79\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x73\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x6f\x72\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x65\x72\x72\x6f\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x46\x61\x6c\x6c\x62\x61\x63\x6b\x2c\x7b\x65\x72\x72\x6f\x72\x3a\x65\x72\x72\x6f\x72\x2c\x6e\x61\x6d\x65\x3a\x74\x61\x72\x67\x65\x74\x2e\x6e\x61\x6d\x65\x7d\x29\x7d\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x72\x67\x65\x74\x7d\x3b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x4e\x61\x6d\x65\x2c\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x4e\x61\x6d\x65\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x4e\x65\x65\x64\x20\x61\x20\x73\x74\x72\x69\x6e\x67\x2c\x20\x74\x6f\x20\x66\x65\x74\x63\x68\x20\x61\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2e\x20\x57\x61\x73\x20\x67\x69\x76\x65\x6e\x20\x61\x20\x22\x2b\x28\x74\x79\x70\x65\x6f\x66\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x4e\x61\x6d\x65\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x4e\x61\x6d\x65\x29\x29\x29\x3b\x76\x61\x72\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x4e\x61\x6d\x65\x29\x3b\x69\x66\x28\x21\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x2e\x6c\x6f\x67\x2e\x77\x61\x72\x6e\x28\x22\x43\x6f\x75\x6c\x64\x20\x6e\x6f\x74\x20\x66\x69\x6e\x64\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x22\x2c\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x4e\x61\x6d\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x69\x66\x28\x21\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x61\x70\x52\x65\x6e\x64\x65\x72\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x69\x66\x28\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x3d\x3d\x22\x72\x6f\x6f\x74\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x6b\x65\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x28\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x6b\x65\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x77\x72\x61\x70\x52\x65\x6e\x64\x65\x72\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x4c\x69\x6b\x65\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x34\x29\x2c\x62\x61\x73\x65\x4b\x65\x79\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x38\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6b\x65\x79\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x3f\x61\x72\x72\x61\x79\x4c\x69\x6b\x65\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x2c\x74\x72\x75\x65\x29\x3a\x62\x61\x73\x65\x4b\x65\x79\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6b\x65\x79\x73\x49\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x50\x75\x73\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x32\x29\x2c\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x33\x29\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x33\x29\x2c\x73\x74\x75\x62\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x33\x29\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x47\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x53\x79\x6d\x62\x6f\x6c\x73\x3b\x76\x61\x72\x20\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x3d\x21\x6e\x61\x74\x69\x76\x65\x47\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3f\x73\x74\x75\x62\x41\x72\x72\x61\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x77\x68\x69\x6c\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x61\x72\x72\x61\x79\x50\x75\x73\x68\x28\x72\x65\x73\x75\x6c\x74\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x3b\x6f\x62\x6a\x65\x63\x74\x3d\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x32\x29\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x31\x29\x2c\x6b\x65\x79\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x30\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x47\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x73\x49\x6e\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x49\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x66\x6e\x3a\x66\x6e\x7d\x7d\x3b\x76\x61\x72\x20\x5f\x66\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x34\x29\x3b\x76\x61\x72\x20\x66\x6e\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x66\x6e\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x2e\x63\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x6c\x65\x76\x65\x6c\x73\x3d\x7b\x64\x65\x62\x75\x67\x3a\x30\x2c\x69\x6e\x66\x6f\x3a\x31\x2c\x6c\x6f\x67\x3a\x32\x2c\x77\x61\x72\x6e\x3a\x33\x2c\x65\x72\x72\x6f\x72\x3a\x34\x7d\x3b\x76\x61\x72\x20\x67\x65\x74\x4c\x65\x76\x65\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4c\x65\x76\x65\x6c\x28\x6c\x65\x76\x65\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x76\x65\x6c\x73\x5b\x6c\x65\x76\x65\x6c\x5d\x7c\x7c\x2d\x31\x7d\x3b\x76\x61\x72\x20\x6c\x6f\x67\x4c\x65\x76\x65\x6c\x3d\x63\x6f\x6e\x66\x69\x67\x73\x2e\x6c\x6f\x67\x4c\x65\x76\x65\x6c\x3b\x76\x61\x72\x20\x6c\x6f\x67\x4c\x65\x76\x65\x6c\x49\x6e\x74\x3d\x67\x65\x74\x4c\x65\x76\x65\x6c\x28\x6c\x6f\x67\x4c\x65\x76\x65\x6c\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x6f\x67\x28\x6c\x65\x76\x65\x6c\x29\x7b\x76\x61\x72\x20\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x3e\x31\x3f\x5f\x6c\x65\x6e\x2d\x31\x3a\x30\x29\x2c\x5f\x6b\x65\x79\x3d\x31\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x2d\x31\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x69\x66\x28\x67\x65\x74\x4c\x65\x76\x65\x6c\x28\x6c\x65\x76\x65\x6c\x29\x3e\x3d\x6c\x6f\x67\x4c\x65\x76\x65\x6c\x49\x6e\x74\x29\x28\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x3d\x63\x6f\x6e\x73\x6f\x6c\x65\x29\x5b\x6c\x65\x76\x65\x6c\x5d\x2e\x61\x70\x70\x6c\x79\x28\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x2c\x61\x72\x67\x73\x29\x7d\x6c\x6f\x67\x2e\x77\x61\x72\x6e\x3d\x6c\x6f\x67\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x22\x77\x61\x72\x6e\x22\x29\x3b\x6c\x6f\x67\x2e\x65\x72\x72\x6f\x72\x3d\x6c\x6f\x67\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x22\x65\x72\x72\x6f\x72\x22\x29\x3b\x6c\x6f\x67\x2e\x69\x6e\x66\x6f\x3d\x6c\x6f\x67\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x22\x69\x6e\x66\x6f\x22\x29\x3b\x6c\x6f\x67\x2e\x64\x65\x62\x75\x67\x3d\x6c\x6f\x67\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x22\x64\x65\x62\x75\x67\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x7b\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x3a\x7b\x6c\x6f\x67\x3a\x6c\x6f\x67\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x36\x29\x3b\x76\x61\x72\x20\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x5f\x63\x6f\x6e\x66\x69\x67\x73\x57\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x37\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x73\x57\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x63\x6f\x6e\x66\x69\x67\x73\x57\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x2e\x63\x6f\x6e\x66\x69\x67\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x72\x65\x74\x75\x72\x6e\x7b\x66\x6e\x3a\x7b\x66\x65\x74\x63\x68\x3a\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6d\x61\x6b\x65\x48\x74\x74\x70\x28\x63\x6f\x6e\x66\x69\x67\x73\x2e\x70\x72\x65\x46\x65\x74\x63\x68\x2c\x63\x6f\x6e\x66\x69\x67\x73\x2e\x70\x6f\x73\x74\x46\x65\x74\x63\x68\x29\x2c\x62\x75\x69\x6c\x64\x52\x65\x71\x75\x65\x73\x74\x3a\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x62\x75\x69\x6c\x64\x52\x65\x71\x75\x65\x73\x74\x2c\x65\x78\x65\x63\x75\x74\x65\x3a\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x65\x78\x65\x63\x75\x74\x65\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x72\x65\x73\x6f\x6c\x76\x65\x2c\x72\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x28\x6f\x62\x6a\x2c\x70\x61\x74\x68\x2c\x6f\x70\x74\x73\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x72\x65\x73\x74\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x3e\x33\x3f\x5f\x6c\x65\x6e\x2d\x33\x3a\x30\x29\x2c\x5f\x6b\x65\x79\x3d\x33\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x72\x65\x73\x74\x5b\x5f\x6b\x65\x79\x2d\x33\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x69\x66\x28\x6f\x70\x74\x73\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x76\x61\x72\x20\x66\x72\x65\x73\x68\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x3b\x6f\x70\x74\x73\x3d\x7b\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x3a\x66\x72\x65\x73\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x6d\x6f\x64\x65\x6c\x50\x72\x6f\x70\x65\x72\x74\x79\x4d\x61\x63\x72\x6f\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x3a\x66\x72\x65\x73\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x4d\x61\x63\x72\x6f\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x66\x72\x65\x73\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x66\x72\x65\x73\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x72\x65\x73\x6f\x6c\x76\x65\x53\x75\x62\x74\x72\x65\x65\x2e\x61\x70\x70\x6c\x79\x28\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5b\x6f\x62\x6a\x2c\x70\x61\x74\x68\x2c\x6f\x70\x74\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x72\x65\x73\x74\x29\x29\x7d\x2c\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x52\x65\x73\x3a\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x52\x65\x73\x2c\x6f\x70\x49\x64\x3a\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x68\x65\x6c\x70\x65\x72\x73\x2e\x6f\x70\x49\x64\x7d\x2c\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x63\x6f\x6e\x66\x69\x67\x73\x3a\x7b\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3a\x63\x6f\x6e\x66\x69\x67\x73\x57\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x7d\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x73\x77\x61\x67\x67\x65\x72\x2d\x63\x6c\x69\x65\x6e\x74\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x6c\x6f\x61\x64\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x61\x64\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x6f\x61\x64\x65\x64\x28\x6f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2e\x77\x69\x74\x68\x43\x72\x65\x64\x65\x6e\x74\x69\x61\x6c\x73\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x73\x79\x73\x74\x65\x6d\x2e\x66\x6e\x2e\x66\x65\x74\x63\x68\x2e\x77\x69\x74\x68\x43\x72\x65\x64\x65\x6e\x74\x69\x61\x6c\x73\x3d\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x3f\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x74\x72\x75\x65\x22\x3a\x21\x21\x76\x61\x6c\x75\x65\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x61\x66\x74\x65\x72\x4c\x6f\x61\x64\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x66\x74\x65\x72\x4c\x6f\x61\x64\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x74\x68\x69\x73\x2e\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x3d\x74\x68\x69\x73\x2e\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x7c\x7c\x7b\x7d\x3b\x74\x68\x69\x73\x2e\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x2e\x69\x6e\x69\x74\x4f\x41\x75\x74\x68\x3d\x73\x79\x73\x74\x65\x6d\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6f\x6e\x66\x69\x67\x75\x72\x65\x41\x75\x74\x68\x3b\x74\x68\x69\x73\x2e\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x2e\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x69\x4b\x65\x79\x3d\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x69\x4b\x65\x79\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x73\x79\x73\x74\x65\x6d\x29\x3b\x74\x68\x69\x73\x2e\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x2e\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x61\x73\x69\x63\x3d\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x61\x73\x69\x63\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x73\x79\x73\x74\x65\x6d\x29\x7d\x2c\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x61\x75\x74\x68\x3a\x7b\x72\x65\x64\x75\x63\x65\x72\x73\x3a\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x63\x74\x69\x6f\x6e\x73\x3a\x61\x63\x74\x69\x6f\x6e\x73\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x2c\x73\x70\x65\x63\x3a\x7b\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x57\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x52\x65\x70\x6c\x61\x63\x65\x6d\x65\x6e\x74\x73\x7d\x7d\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x61\x73\x69\x63\x3d\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x61\x73\x69\x63\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x69\x4b\x65\x79\x3d\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x69\x4b\x65\x79\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x35\x29\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x61\x63\x74\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x30\x29\x3b\x76\x61\x72\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x70\x65\x63\x57\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x31\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x57\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x52\x65\x70\x6c\x61\x63\x65\x6d\x65\x6e\x74\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x73\x70\x65\x63\x57\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x61\x73\x69\x63\x28\x73\x79\x73\x74\x65\x6d\x2c\x6b\x65\x79\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x2c\x70\x61\x73\x73\x77\x6f\x72\x64\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x73\x79\x73\x74\x65\x6d\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x2c\x5f\x73\x79\x73\x74\x65\x6d\x24\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x4a\x73\x6f\x6e\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x2c\x69\x73\x4f\x41\x53\x33\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x42\x61\x73\x65\x3d\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x5b\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x22\x2c\x22\x73\x65\x63\x75\x72\x69\x74\x79\x53\x63\x68\x65\x6d\x65\x73\x22\x5d\x3a\x5b\x22\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x5d\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x42\x61\x73\x65\x2c\x5b\x6b\x65\x79\x5d\x29\x29\x3b\x69\x66\x28\x21\x73\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x28\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6b\x65\x79\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x7b\x75\x73\x65\x72\x6e\x61\x6d\x65\x3a\x75\x73\x65\x72\x6e\x61\x6d\x65\x2c\x70\x61\x73\x73\x77\x6f\x72\x64\x3a\x70\x61\x73\x73\x77\x6f\x72\x64\x7d\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2e\x74\x6f\x4a\x53\x28\x29\x7d\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x65\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x69\x4b\x65\x79\x28\x73\x79\x73\x74\x65\x6d\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x73\x79\x73\x74\x65\x6d\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x2c\x5f\x73\x79\x73\x74\x65\x6d\x24\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x32\x3d\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x4a\x73\x6f\x6e\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x32\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x2c\x69\x73\x4f\x41\x53\x33\x3d\x5f\x73\x79\x73\x74\x65\x6d\x24\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x32\x2e\x69\x73\x4f\x41\x53\x33\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x42\x61\x73\x65\x3d\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x5b\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x22\x2c\x22\x73\x65\x63\x75\x72\x69\x74\x79\x53\x63\x68\x65\x6d\x65\x73\x22\x5d\x3a\x5b\x22\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x5d\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x42\x61\x73\x65\x2c\x5b\x6b\x65\x79\x5d\x29\x29\x3b\x69\x66\x28\x21\x73\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x28\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6b\x65\x79\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2e\x74\x6f\x4a\x53\x28\x29\x7d\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x24\x41\x55\x54\x48\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x5f\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x24\x41\x55\x54\x48\x3d\x7b\x7d\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x24\x41\x55\x54\x48\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x2c\x70\x61\x79\x6c\x6f\x61\x64\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x24\x41\x55\x54\x48\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x32\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x70\x61\x79\x6c\x6f\x61\x64\x29\x3b\x76\x61\x72\x20\x6d\x61\x70\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x3b\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x34\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x33\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x34\x5b\x30\x5d\x2c\x73\x65\x63\x75\x72\x69\x74\x79\x3d\x5f\x72\x65\x66\x34\x5b\x31\x5d\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x73\x65\x63\x75\x72\x69\x74\x79\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x22\x74\x79\x70\x65\x22\x5d\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x61\x70\x69\x4b\x65\x79\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x3d\x22\x68\x74\x74\x70\x22\x29\x7b\x6d\x61\x70\x3d\x6d\x61\x70\x2e\x73\x65\x74\x28\x6b\x65\x79\x2c\x73\x65\x63\x75\x72\x69\x74\x79\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x62\x61\x73\x69\x63\x22\x29\x7b\x76\x61\x72\x20\x75\x73\x65\x72\x6e\x61\x6d\x65\x3d\x73\x65\x63\x75\x72\x69\x74\x79\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x76\x61\x6c\x75\x65\x22\x2c\x22\x75\x73\x65\x72\x6e\x61\x6d\x65\x22\x5d\x29\x3b\x76\x61\x72\x20\x70\x61\x73\x73\x77\x6f\x72\x64\x3d\x73\x65\x63\x75\x72\x69\x74\x79\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x76\x61\x6c\x75\x65\x22\x2c\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x5d\x29\x3b\x6d\x61\x70\x3d\x6d\x61\x70\x2e\x73\x65\x74\x49\x6e\x28\x5b\x6b\x65\x79\x2c\x22\x76\x61\x6c\x75\x65\x22\x5d\x2c\x7b\x75\x73\x65\x72\x6e\x61\x6d\x65\x3a\x75\x73\x65\x72\x6e\x61\x6d\x65\x2c\x68\x65\x61\x64\x65\x72\x3a\x22\x42\x61\x73\x69\x63\x20\x22\x2b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x62\x74\x6f\x61\x29\x28\x75\x73\x65\x72\x6e\x61\x6d\x65\x2b\x22\x3a\x22\x2b\x70\x61\x73\x73\x77\x6f\x72\x64\x29\x7d\x29\x3b\x6d\x61\x70\x3d\x6d\x61\x70\x2e\x73\x65\x74\x49\x6e\x28\x5b\x6b\x65\x79\x2c\x22\x73\x63\x68\x65\x6d\x61\x22\x5d\x2c\x73\x65\x63\x75\x72\x69\x74\x79\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x29\x7d\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x2c\x6d\x61\x70\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x24\x41\x55\x54\x48\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x41\x55\x54\x48\x4f\x52\x49\x5a\x45\x5f\x4f\x41\x55\x54\x48\x32\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x35\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x35\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x61\x75\x74\x68\x2c\x74\x6f\x6b\x65\x6e\x3d\x70\x61\x79\x6c\x6f\x61\x64\x2e\x74\x6f\x6b\x65\x6e\x3b\x76\x61\x72\x20\x70\x61\x72\x73\x65\x64\x41\x75\x74\x68\x3d\x76\x6f\x69\x64\x20\x30\x3b\x61\x75\x74\x68\x2e\x74\x6f\x6b\x65\x6e\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x6f\x6b\x65\x6e\x29\x3b\x70\x61\x72\x73\x65\x64\x41\x75\x74\x68\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x61\x75\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x2c\x70\x61\x72\x73\x65\x64\x41\x75\x74\x68\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x5d\x2c\x70\x61\x72\x73\x65\x64\x41\x75\x74\x68\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x24\x41\x55\x54\x48\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x4c\x4f\x47\x4f\x55\x54\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x36\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x36\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x29\x2e\x77\x69\x74\x68\x4d\x75\x74\x61\x74\x69\x6f\x6e\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x29\x7b\x70\x61\x79\x6c\x6f\x61\x64\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x75\x74\x68\x29\x7b\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2e\x64\x65\x6c\x65\x74\x65\x28\x61\x75\x74\x68\x29\x7d\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x2c\x72\x65\x73\x75\x6c\x74\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x24\x41\x55\x54\x48\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x43\x4f\x4e\x46\x49\x47\x55\x52\x45\x5f\x41\x55\x54\x48\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x37\x29\x7b\x76\x61\x72\x20\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x37\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x63\x6f\x6e\x66\x69\x67\x73\x22\x2c\x70\x61\x79\x6c\x6f\x61\x64\x29\x7d\x29\x2c\x5f\x53\x48\x4f\x57\x5f\x41\x55\x54\x48\x5f\x50\x4f\x50\x55\x50\x24\x41\x55\x54\x48\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x46\x6f\x72\x52\x65\x71\x75\x69\x72\x65\x6d\x65\x6e\x74\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x42\x79\x4e\x61\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x54\x6f\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x6f\x77\x6e\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6b\x65\x79\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x74\x65\x28\x5f\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x74\x61\x74\x65\x7d\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x6e\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x6f\x77\x6e\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x75\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x2e\x67\x65\x74\x28\x22\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x29\x7d\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x54\x6f\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x54\x6f\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x7d\x29\x3b\x76\x61\x72\x20\x6c\x69\x73\x74\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x3b\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x33\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x32\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x33\x5b\x30\x5d\x2c\x76\x61\x6c\x3d\x5f\x72\x65\x66\x33\x5b\x31\x5d\x3b\x76\x61\x72\x20\x6d\x61\x70\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x3b\x6d\x61\x70\x3d\x6d\x61\x70\x2e\x73\x65\x74\x28\x6b\x65\x79\x2c\x76\x61\x6c\x29\x3b\x6c\x69\x73\x74\x3d\x6c\x69\x73\x74\x2e\x70\x75\x73\x68\x28\x6d\x61\x70\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6c\x69\x73\x74\x7d\x7d\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x42\x79\x4e\x61\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x42\x79\x4e\x61\x6d\x65\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x42\x79\x4e\x61\x6d\x65\x73\x28\x73\x74\x61\x74\x65\x2c\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x34\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x34\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x77\x61\x72\x6e\x28\x22\x57\x41\x52\x4e\x49\x4e\x47\x3a\x20\x67\x65\x74\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x42\x79\x4e\x61\x6d\x65\x73\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x20\x61\x6e\x64\x20\x77\x69\x6c\x6c\x20\x62\x65\x20\x72\x65\x6d\x6f\x76\x65\x64\x20\x69\x6e\x20\x74\x68\x65\x20\x6e\x65\x78\x74\x20\x6d\x61\x6a\x6f\x72\x20\x76\x65\x72\x73\x69\x6f\x6e\x2e\x22\x29\x3b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x3b\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x73\x29\x7b\x76\x61\x72\x20\x6d\x61\x70\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x3b\x6e\x61\x6d\x65\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x35\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x36\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x35\x2c\x32\x29\x2c\x6e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x36\x5b\x30\x5d\x2c\x73\x63\x6f\x70\x65\x73\x3d\x5f\x72\x65\x66\x36\x5b\x31\x5d\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x3d\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x67\x65\x74\x28\x6e\x61\x6d\x65\x29\x3b\x76\x61\x72\x20\x61\x6c\x6c\x6f\x77\x65\x64\x53\x63\x6f\x70\x65\x73\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3d\x3d\x3d\x22\x6f\x61\x75\x74\x68\x32\x22\x26\x26\x73\x63\x6f\x70\x65\x73\x2e\x73\x69\x7a\x65\x29\x7b\x61\x6c\x6c\x6f\x77\x65\x64\x53\x63\x6f\x70\x65\x73\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x73\x63\x6f\x70\x65\x73\x22\x29\x3b\x61\x6c\x6c\x6f\x77\x65\x64\x53\x63\x6f\x70\x65\x73\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x69\x66\x28\x21\x73\x63\x6f\x70\x65\x73\x2e\x63\x6f\x6e\x74\x61\x69\x6e\x73\x28\x6b\x65\x79\x29\x29\x7b\x61\x6c\x6c\x6f\x77\x65\x64\x53\x63\x6f\x70\x65\x73\x3d\x61\x6c\x6c\x6f\x77\x65\x64\x53\x63\x6f\x70\x65\x73\x2e\x64\x65\x6c\x65\x74\x65\x28\x6b\x65\x79\x29\x7d\x7d\x29\x3b\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x73\x65\x74\x28\x22\x61\x6c\x6c\x6f\x77\x65\x64\x53\x63\x6f\x70\x65\x73\x22\x2c\x61\x6c\x6c\x6f\x77\x65\x64\x53\x63\x6f\x70\x65\x73\x29\x7d\x6d\x61\x70\x3d\x6d\x61\x70\x2e\x73\x65\x74\x28\x6e\x61\x6d\x65\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x29\x7d\x29\x3b\x72\x65\x73\x75\x6c\x74\x3d\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6d\x61\x70\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x46\x6f\x72\x52\x65\x71\x75\x69\x72\x65\x6d\x65\x6e\x74\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x46\x6f\x72\x52\x65\x71\x75\x69\x72\x65\x6d\x65\x6e\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x46\x6f\x72\x52\x65\x71\x75\x69\x72\x65\x6d\x65\x6e\x74\x73\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x37\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x37\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x61\x6c\x6c\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x54\x6f\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x28\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x6c\x6c\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x65\x66\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x2e\x73\x6f\x6d\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x63\x2e\x67\x65\x74\x28\x64\x65\x66\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x2e\x66\x69\x72\x73\x74\x28\x29\x29\x7d\x29\x7d\x29\x7d\x7d\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x75\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x29\x3b\x76\x61\x72\x20\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x28\x73\x74\x61\x74\x65\x2c\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x38\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x38\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x28\x29\x3b\x69\x66\x28\x21\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x21\x21\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x2e\x74\x6f\x4a\x53\x28\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x63\x75\x72\x69\x74\x79\x29\x7b\x76\x61\x72\x20\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x74\x72\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x65\x63\x75\x72\x69\x74\x79\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x7c\x7c\x21\x21\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2e\x67\x65\x74\x28\x6b\x65\x79\x29\x7d\x29\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x66\x61\x6c\x73\x65\x29\x3d\x3d\x3d\x2d\x31\x7d\x29\x2e\x6c\x65\x6e\x67\x74\x68\x7d\x7d\x3b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x75\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x66\x69\x67\x73\x22\x29\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x65\x78\x65\x63\x75\x74\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x78\x65\x63\x75\x74\x65\x28\x6f\x72\x69\x41\x63\x74\x69\x6f\x6e\x2c\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x32\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x32\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x72\x65\x66\x32\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x65\x78\x74\x72\x61\x73\x3d\x5f\x72\x65\x66\x32\x2e\x65\x78\x74\x72\x61\x73\x3b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x3d\x7b\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x28\x29\x26\x26\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x28\x29\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x26\x26\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x73\x70\x65\x63\x53\x65\x63\x75\x72\x69\x74\x79\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x28\x29\x26\x26\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x28\x29\x2e\x74\x6f\x4a\x53\x28\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x72\x69\x41\x63\x74\x69\x6f\x6e\x28\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x3a\x73\x65\x63\x75\x72\x69\x74\x69\x65\x73\x7d\x2c\x65\x78\x74\x72\x61\x73\x29\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x66\x6e\x3a\x7b\x73\x68\x61\x6c\x6c\x6f\x77\x45\x71\x75\x61\x6c\x4b\x65\x79\x73\x3a\x5f\x75\x74\x69\x6c\x73\x2e\x73\x68\x61\x6c\x6c\x6f\x77\x45\x71\x75\x61\x6c\x4b\x65\x79\x73\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x55\x72\x6c\x50\x6c\x75\x67\x69\x6e\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x55\x72\x6c\x50\x6c\x75\x67\x69\x6e\x28\x74\x6f\x6f\x6c\x62\x6f\x78\x29\x7b\x76\x61\x72\x20\x66\x6e\x3d\x74\x6f\x6f\x6c\x62\x6f\x78\x2e\x66\x6e\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x73\x3d\x7b\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x28\x75\x72\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x66\x65\x74\x63\x68\x3d\x66\x6e\x2e\x66\x65\x74\x63\x68\x3b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x3b\x75\x72\x6c\x3d\x75\x72\x6c\x7c\x7c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x75\x72\x6c\x28\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x4c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x22\x6c\x6f\x61\x64\x69\x6e\x67\x22\x29\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x28\x7b\x73\x6f\x75\x72\x63\x65\x3a\x22\x66\x65\x74\x63\x68\x22\x7d\x29\x3b\x66\x65\x74\x63\x68\x28\x7b\x75\x72\x6c\x3a\x75\x72\x6c\x2c\x6c\x6f\x61\x64\x53\x70\x65\x63\x3a\x74\x72\x75\x65\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x63\x6f\x6e\x66\x69\x67\x2e\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x7d\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x63\x6f\x6e\x66\x69\x67\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x7d\x2c\x63\x72\x65\x64\x65\x6e\x74\x69\x61\x6c\x73\x3a\x22\x73\x61\x6d\x65\x2d\x6f\x72\x69\x67\x69\x6e\x22\x2c\x68\x65\x61\x64\x65\x72\x73\x3a\x7b\x41\x63\x63\x65\x70\x74\x3a\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x6a\x73\x6f\x6e\x2c\x2a\x2f\x2a\x22\x7d\x7d\x29\x2e\x74\x68\x65\x6e\x28\x6e\x65\x78\x74\x2c\x6e\x65\x78\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x65\x78\x74\x28\x72\x65\x73\x29\x7b\x69\x66\x28\x72\x65\x73\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x45\x72\x72\x6f\x72\x7c\x7c\x72\x65\x73\x2e\x73\x74\x61\x74\x75\x73\x3e\x3d\x34\x30\x30\x29\x7b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x4c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x22\x66\x61\x69\x6c\x65\x64\x22\x29\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x28\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x28\x72\x65\x73\x2e\x6d\x65\x73\x73\x61\x67\x65\x7c\x7c\x72\x65\x73\x2e\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74\x29\x2b\x22\x20\x22\x2b\x75\x72\x6c\x29\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x22\x66\x65\x74\x63\x68\x22\x7d\x29\x29\x3b\x69\x66\x28\x21\x72\x65\x73\x2e\x73\x74\x61\x74\x75\x73\x26\x26\x72\x65\x73\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x45\x72\x72\x6f\x72\x29\x63\x68\x65\x63\x6b\x50\x6f\x73\x73\x69\x62\x6c\x65\x46\x61\x69\x6c\x52\x65\x61\x73\x6f\x6e\x73\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x7d\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x4c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x22\x73\x75\x63\x63\x65\x73\x73\x22\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x28\x72\x65\x73\x2e\x74\x65\x78\x74\x29\x3b\x69\x66\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x75\x72\x6c\x28\x29\x21\x3d\x3d\x75\x72\x6c\x29\x7b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x55\x72\x6c\x28\x75\x72\x6c\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x65\x63\x6b\x50\x6f\x73\x73\x69\x62\x6c\x65\x46\x61\x69\x6c\x52\x65\x61\x73\x6f\x6e\x73\x28\x29\x7b\x74\x72\x79\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x55\x72\x6c\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x22\x55\x52\x4c\x22\x69\x6e\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x7b\x73\x70\x65\x63\x55\x72\x6c\x3d\x6e\x65\x77\x20\x55\x52\x4c\x28\x75\x72\x6c\x29\x7d\x65\x6c\x73\x65\x7b\x73\x70\x65\x63\x55\x72\x6c\x3d\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x29\x3b\x73\x70\x65\x63\x55\x72\x6c\x2e\x68\x72\x65\x66\x3d\x75\x72\x6c\x7d\x69\x66\x28\x73\x70\x65\x63\x55\x72\x6c\x2e\x70\x72\x6f\x74\x6f\x63\x6f\x6c\x21\x3d\x3d\x22\x68\x74\x74\x70\x73\x3a\x22\x26\x26\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x63\x6f\x6c\x3d\x3d\x3d\x22\x68\x74\x74\x70\x73\x3a\x22\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x50\x6f\x73\x73\x69\x62\x6c\x65\x20\x6d\x69\x78\x65\x64\x2d\x63\x6f\x6e\x74\x65\x6e\x74\x20\x69\x73\x73\x75\x65\x3f\x20\x54\x68\x65\x20\x70\x61\x67\x65\x20\x77\x61\x73\x20\x6c\x6f\x61\x64\x65\x64\x20\x6f\x76\x65\x72\x20\x68\x74\x74\x70\x73\x3a\x2f\x2f\x20\x62\x75\x74\x20\x61\x20\x22\x2b\x73\x70\x65\x63\x55\x72\x6c\x2e\x70\x72\x6f\x74\x6f\x63\x6f\x6c\x2b\x22\x2f\x2f\x20\x55\x52\x4c\x20\x77\x61\x73\x20\x73\x70\x65\x63\x69\x66\x69\x65\x64\x2e\x20\x43\x68\x65\x63\x6b\x20\x74\x68\x61\x74\x20\x79\x6f\x75\x20\x61\x72\x65\x20\x6e\x6f\x74\x20\x61\x74\x74\x65\x6d\x70\x74\x69\x6e\x67\x20\x74\x6f\x20\x6c\x6f\x61\x64\x20\x6d\x69\x78\x65\x64\x20\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x22\x29\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x22\x66\x65\x74\x63\x68\x22\x7d\x29\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x28\x65\x72\x72\x6f\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x7d\x69\x66\x28\x73\x70\x65\x63\x55\x72\x6c\x2e\x6f\x72\x69\x67\x69\x6e\x21\x3d\x3d\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x2e\x6f\x72\x69\x67\x69\x6e\x29\x7b\x76\x61\x72\x20\x5f\x65\x72\x72\x6f\x72\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x50\x6f\x73\x73\x69\x62\x6c\x65\x20\x63\x72\x6f\x73\x73\x2d\x6f\x72\x69\x67\x69\x6e\x20\x28\x43\x4f\x52\x53\x29\x20\x69\x73\x73\x75\x65\x3f\x20\x54\x68\x65\x20\x55\x52\x4c\x20\x6f\x72\x69\x67\x69\x6e\x20\x28\x22\x2b\x73\x70\x65\x63\x55\x72\x6c\x2e\x6f\x72\x69\x67\x69\x6e\x2b\x22\x29\x20\x64\x6f\x65\x73\x20\x6e\x6f\x74\x20\x6d\x61\x74\x63\x68\x20\x74\x68\x65\x20\x70\x61\x67\x65\x20\x28\x22\x2b\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x2e\x6f\x72\x69\x67\x69\x6e\x2b\x22\x29\x2e\x20\x43\x68\x65\x63\x6b\x20\x74\x68\x65\x20\x73\x65\x72\x76\x65\x72\x20\x72\x65\x74\x75\x72\x6e\x73\x20\x74\x68\x65\x20\x63\x6f\x72\x72\x65\x63\x74\x20\x27\x41\x63\x63\x65\x73\x73\x2d\x43\x6f\x6e\x74\x72\x6f\x6c\x2d\x41\x6c\x6c\x6f\x77\x2d\x2a\x27\x20\x68\x65\x61\x64\x65\x72\x73\x2e\x22\x29\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x22\x66\x65\x74\x63\x68\x22\x7d\x29\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x28\x5f\x65\x72\x72\x6f\x72\x29\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x7d\x7d\x7d\x2c\x75\x70\x64\x61\x74\x65\x4c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x4c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x73\x74\x61\x74\x75\x73\x29\x7b\x76\x61\x72\x20\x65\x6e\x75\x6d\x73\x3d\x5b\x6e\x75\x6c\x6c\x2c\x22\x6c\x6f\x61\x64\x69\x6e\x67\x22\x2c\x22\x66\x61\x69\x6c\x65\x64\x22\x2c\x22\x73\x75\x63\x63\x65\x73\x73\x22\x2c\x22\x66\x61\x69\x6c\x65\x64\x43\x6f\x6e\x66\x69\x67\x22\x5d\x3b\x69\x66\x28\x65\x6e\x75\x6d\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x73\x74\x61\x74\x75\x73\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x22\x45\x72\x72\x6f\x72\x3a\x20\x22\x2b\x73\x74\x61\x74\x75\x73\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x6f\x6e\x65\x20\x6f\x66\x20\x22\x2b\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x6e\x75\x6d\x73\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x22\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x6c\x6f\x61\x64\x69\x6e\x67\x5f\x73\x74\x61\x74\x75\x73\x22\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x73\x74\x61\x74\x75\x73\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x72\x65\x64\x75\x63\x65\x72\x73\x3d\x7b\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x6c\x6f\x61\x64\x69\x6e\x67\x5f\x73\x74\x61\x74\x75\x73\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x70\x65\x63\x5f\x75\x70\x64\x61\x74\x65\x5f\x6c\x6f\x61\x64\x69\x6e\x67\x5f\x73\x74\x61\x74\x75\x73\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x3f\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x22\x2c\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x29\x3a\x73\x74\x61\x74\x65\x7d\x7d\x3b\x76\x61\x72\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x7b\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x3a\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x22\x29\x7c\x7c\x6e\x75\x6c\x6c\x7d\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x7b\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x73\x70\x65\x63\x3a\x7b\x61\x63\x74\x69\x6f\x6e\x73\x3a\x61\x63\x74\x69\x6f\x6e\x73\x2c\x72\x65\x64\x75\x63\x65\x72\x73\x3a\x72\x65\x64\x75\x63\x65\x72\x73\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x63\x6f\x6e\x66\x69\x67\x73\x50\x6c\x75\x67\x69\x6e\x3b\x76\x61\x72\x20\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6f\x6e\x66\x69\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x31\x29\x3b\x76\x61\x72\x20\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6f\x6e\x66\x69\x67\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6f\x6e\x66\x69\x67\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x36\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x37\x29\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x61\x63\x74\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x35\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x36\x29\x3b\x76\x61\x72\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x37\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x7b\x67\x65\x74\x4c\x6f\x63\x61\x6c\x43\x6f\x6e\x66\x69\x67\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4c\x6f\x63\x61\x6c\x43\x6f\x6e\x66\x69\x67\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x70\x61\x72\x73\x65\x59\x61\x6d\x6c\x43\x6f\x6e\x66\x69\x67\x29\x28\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6f\x6e\x66\x69\x67\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x66\x69\x67\x73\x50\x6c\x75\x67\x69\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x73\x70\x65\x63\x3a\x7b\x61\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x2c\x63\x6f\x6e\x66\x69\x67\x73\x3a\x7b\x72\x65\x64\x75\x63\x65\x72\x73\x3a\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x63\x74\x69\x6f\x6e\x73\x3a\x61\x63\x74\x69\x6f\x6e\x73\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x42\x79\x55\x72\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x43\x6f\x6e\x66\x69\x67\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x36\x29\x3b\x76\x61\x72\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x43\x6f\x6e\x66\x69\x67\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x43\x6f\x6e\x66\x69\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x43\x6f\x6e\x66\x69\x67\x28\x72\x65\x71\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x66\x65\x74\x63\x68\x3d\x73\x79\x73\x74\x65\x6d\x2e\x66\x6e\x2e\x66\x65\x74\x63\x68\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x65\x74\x63\x68\x28\x72\x65\x71\x29\x7d\x7d\x3b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x42\x79\x55\x72\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x42\x79\x55\x72\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x42\x79\x55\x72\x6c\x28\x72\x65\x71\x2c\x63\x62\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3b\x69\x66\x28\x72\x65\x71\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x43\x6f\x6e\x66\x69\x67\x28\x72\x65\x71\x29\x2e\x74\x68\x65\x6e\x28\x6e\x65\x78\x74\x2c\x6e\x65\x78\x74\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x65\x78\x74\x28\x72\x65\x73\x29\x7b\x69\x66\x28\x72\x65\x73\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x45\x72\x72\x6f\x72\x7c\x7c\x72\x65\x73\x2e\x73\x74\x61\x74\x75\x73\x3e\x3d\x34\x30\x30\x29\x7b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x4c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x22\x66\x61\x69\x6c\x65\x64\x43\x6f\x6e\x66\x69\x67\x22\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x4c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x22\x66\x61\x69\x6c\x65\x64\x43\x6f\x6e\x66\x69\x67\x22\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x55\x72\x6c\x28\x22\x22\x29\x3b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x72\x65\x73\x2e\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74\x2b\x22\x20\x22\x2b\x72\x65\x71\x2e\x75\x72\x6c\x29\x3b\x63\x62\x28\x6e\x75\x6c\x6c\x29\x7d\x65\x6c\x73\x65\x7b\x63\x62\x28\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x70\x61\x72\x73\x65\x59\x61\x6d\x6c\x43\x6f\x6e\x66\x69\x67\x29\x28\x72\x65\x73\x2e\x74\x65\x78\x74\x29\x29\x7d\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x67\x65\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x70\x61\x74\x68\x29\x3f\x70\x61\x74\x68\x3a\x5b\x70\x61\x74\x68\x5d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x24\x54\x4f\x47\x47\x4c\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x24\x54\x4f\x47\x47\x4c\x3d\x7b\x7d\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x24\x54\x4f\x47\x47\x4c\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x6d\x65\x72\x67\x65\x28\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x29\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x24\x54\x4f\x47\x47\x4c\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x54\x4f\x47\x47\x4c\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x4e\x61\x6d\x65\x3d\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x3b\x76\x61\x72\x20\x6f\x72\x69\x56\x61\x6c\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x63\x6f\x6e\x66\x69\x67\x4e\x61\x6d\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x63\x6f\x6e\x66\x69\x67\x4e\x61\x6d\x65\x2c\x21\x6f\x72\x69\x56\x61\x6c\x29\x7d\x29\x2c\x5f\x55\x50\x44\x41\x54\x45\x5f\x43\x4f\x4e\x46\x49\x47\x53\x24\x54\x4f\x47\x47\x4c\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x5f\x6c\x61\x79\x6f\x75\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x7b\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x63\x6f\x6e\x66\x69\x67\x73\x3a\x7b\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3a\x7b\x6c\x6f\x61\x64\x65\x64\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x6f\x61\x64\x65\x64\x28\x6f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x68\x3d\x64\x65\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x77\x69\x6e\x64\x6f\x77\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x2e\x68\x61\x73\x68\x29\x3b\x73\x79\x73\x74\x65\x6d\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x70\x61\x72\x73\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x48\x61\x73\x68\x28\x68\x61\x73\x68\x29\x7d\x7d\x7d\x7d\x7d\x2c\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x7d\x7d\x5d\x7d\x3b\x76\x61\x72\x20\x5f\x6c\x61\x79\x6f\x75\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x39\x29\x3b\x76\x61\x72\x20\x5f\x6c\x61\x79\x6f\x75\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6c\x61\x79\x6f\x75\x74\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x31\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x32\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6c\x65\x61\x72\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x45\x6c\x65\x6d\x65\x6e\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x61\x64\x79\x54\x6f\x53\x63\x72\x6f\x6c\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x73\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x48\x61\x73\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x6f\x77\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x30\x29\x3b\x76\x61\x72\x20\x5f\x7a\x65\x6e\x73\x63\x72\x6f\x6c\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x32\x29\x3b\x76\x61\x72\x20\x5f\x7a\x65\x6e\x73\x63\x72\x6f\x6c\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x7a\x65\x6e\x73\x63\x72\x6f\x6c\x6c\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x53\x43\x52\x4f\x4c\x4c\x5f\x54\x4f\x3d\x22\x6c\x61\x79\x6f\x75\x74\x5f\x73\x63\x72\x6f\x6c\x6c\x5f\x74\x6f\x22\x3b\x76\x61\x72\x20\x43\x4c\x45\x41\x52\x5f\x53\x43\x52\x4f\x4c\x4c\x5f\x54\x4f\x3d\x22\x6c\x61\x79\x6f\x75\x74\x5f\x63\x6c\x65\x61\x72\x5f\x73\x63\x72\x6f\x6c\x6c\x22\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x68\x6f\x77\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x68\x6f\x77\x28\x6f\x72\x69\x2c\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x73\x29\x3b\x69\x66\x28\x21\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2e\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x74\x72\x79\x7b\x76\x61\x72\x20\x74\x6f\x6b\x65\x6e\x41\x72\x72\x61\x79\x3d\x61\x72\x67\x73\x5b\x30\x5d\x2c\x73\x68\x6f\x77\x6e\x3d\x61\x72\x67\x73\x5b\x31\x5d\x3b\x74\x6f\x6b\x65\x6e\x41\x72\x72\x61\x79\x3d\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x74\x6f\x6b\x65\x6e\x41\x72\x72\x61\x79\x29\x3f\x74\x6f\x6b\x65\x6e\x41\x72\x72\x61\x79\x3a\x5b\x74\x6f\x6b\x65\x6e\x41\x72\x72\x61\x79\x5d\x3b\x76\x61\x72\x20\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x46\x72\x6f\x6d\x49\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x28\x74\x6f\x6b\x65\x6e\x41\x72\x72\x61\x79\x29\x3b\x69\x66\x28\x21\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x29\x72\x65\x74\x75\x72\x6e\x3b\x76\x61\x72\x20\x5f\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x2c\x32\x29\x2c\x74\x79\x70\x65\x3d\x5f\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x5b\x30\x5d\x2c\x61\x73\x73\x65\x74\x4e\x61\x6d\x65\x3d\x5f\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x5b\x31\x5d\x3b\x69\x66\x28\x21\x73\x68\x6f\x77\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x73\x65\x74\x48\x61\x73\x68\x29\x28\x22\x2f\x22\x29\x7d\x69\x66\x28\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x32\x29\x7b\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x73\x65\x74\x48\x61\x73\x68\x29\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x63\x72\x65\x61\x74\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x29\x28\x22\x2f\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x74\x79\x70\x65\x29\x2b\x22\x2f\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x61\x73\x73\x65\x74\x4e\x61\x6d\x65\x29\x29\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x31\x29\x7b\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x73\x65\x74\x48\x61\x73\x68\x29\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x63\x72\x65\x61\x74\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x29\x28\x22\x2f\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x74\x79\x70\x65\x29\x29\x29\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x65\x29\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x28\x70\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x53\x43\x52\x4f\x4c\x4c\x5f\x54\x4f\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x70\x61\x74\x68\x29\x3f\x70\x61\x74\x68\x3a\x5b\x70\x61\x74\x68\x5d\x7d\x7d\x3b\x76\x61\x72\x20\x70\x61\x72\x73\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x48\x61\x73\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x73\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x48\x61\x73\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x73\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x48\x61\x73\x68\x28\x72\x61\x77\x48\x61\x73\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x32\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x32\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x32\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x69\x66\x28\x21\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2e\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x69\x66\x28\x72\x61\x77\x48\x61\x73\x68\x29\x7b\x76\x61\x72\x20\x68\x61\x73\x68\x3d\x72\x61\x77\x48\x61\x73\x68\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x3b\x69\x66\x28\x68\x61\x73\x68\x5b\x30\x5d\x3d\x3d\x3d\x22\x21\x22\x29\x7b\x68\x61\x73\x68\x3d\x68\x61\x73\x68\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x69\x66\x28\x68\x61\x73\x68\x5b\x30\x5d\x3d\x3d\x3d\x22\x2f\x22\x29\x7b\x68\x61\x73\x68\x3d\x68\x61\x73\x68\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x76\x61\x72\x20\x68\x61\x73\x68\x41\x72\x72\x61\x79\x3d\x68\x61\x73\x68\x2e\x73\x70\x6c\x69\x74\x28\x22\x2f\x22\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x7c\x7c\x22\x22\x7d\x29\x3b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x46\x72\x6f\x6d\x55\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x28\x68\x61\x73\x68\x41\x72\x72\x61\x79\x29\x3b\x76\x61\x72\x20\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x33\x29\x2c\x74\x79\x70\x65\x3d\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x5b\x30\x5d\x2c\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x24\x3d\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x5b\x31\x5d\x2c\x74\x61\x67\x49\x64\x3d\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x24\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x22\x3a\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x24\x2c\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x24\x32\x3d\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x5b\x32\x5d\x2c\x6d\x61\x79\x62\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x24\x32\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x22\x3a\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x24\x32\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x29\x7b\x76\x61\x72\x20\x74\x61\x67\x49\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x46\x72\x6f\x6d\x55\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x28\x5b\x74\x61\x67\x49\x64\x5d\x29\x3b\x69\x66\x28\x74\x61\x67\x49\x64\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x5f\x22\x29\x3e\x2d\x31\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x77\x61\x72\x6e\x28\x22\x57\x61\x72\x6e\x69\x6e\x67\x3a\x20\x65\x73\x63\x61\x70\x69\x6e\x67\x20\x64\x65\x65\x70\x20\x6c\x69\x6e\x6b\x20\x77\x68\x69\x74\x65\x73\x70\x61\x63\x65\x20\x77\x69\x74\x68\x20\x60\x5f\x60\x20\x77\x69\x6c\x6c\x20\x62\x65\x20\x75\x6e\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x20\x69\x6e\x20\x76\x34\x2e\x30\x2c\x20\x75\x73\x65\x20\x60\x25\x32\x30\x60\x20\x69\x6e\x73\x74\x65\x61\x64\x2e\x22\x29\x3b\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x74\x61\x67\x49\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5f\x2f\x67\x2c\x22\x20\x22\x29\x7d\x29\x2c\x74\x72\x75\x65\x29\x7d\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x74\x61\x67\x49\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x74\x72\x75\x65\x29\x7d\x69\x66\x28\x74\x61\x67\x49\x64\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x5f\x22\x29\x3e\x2d\x31\x7c\x7c\x6d\x61\x79\x62\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x5f\x22\x29\x3e\x2d\x31\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x77\x61\x72\x6e\x28\x22\x57\x61\x72\x6e\x69\x6e\x67\x3a\x20\x65\x73\x63\x61\x70\x69\x6e\x67\x20\x64\x65\x65\x70\x20\x6c\x69\x6e\x6b\x20\x77\x68\x69\x74\x65\x73\x70\x61\x63\x65\x20\x77\x69\x74\x68\x20\x60\x5f\x60\x20\x77\x69\x6c\x6c\x20\x62\x65\x20\x75\x6e\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x20\x69\x6e\x20\x76\x34\x2e\x30\x2c\x20\x75\x73\x65\x20\x60\x25\x32\x30\x60\x20\x69\x6e\x73\x74\x65\x61\x64\x2e\x22\x29\x3b\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5f\x2f\x67\x2c\x22\x20\x22\x29\x7d\x29\x2c\x74\x72\x75\x65\x29\x7d\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x74\x72\x75\x65\x29\x3b\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x29\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x72\x65\x61\x64\x79\x54\x6f\x53\x63\x72\x6f\x6c\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x61\x64\x79\x54\x6f\x53\x63\x72\x6f\x6c\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x79\x54\x6f\x53\x63\x72\x6f\x6c\x6c\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x72\x65\x66\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x4b\x65\x79\x3d\x73\x79\x73\x74\x65\x6d\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x67\x65\x74\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x4b\x65\x79\x28\x29\x3b\x69\x66\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x69\x73\x28\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x4b\x65\x79\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x29\x29\x29\x7b\x73\x79\x73\x74\x65\x6d\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x45\x6c\x65\x6d\x65\x6e\x74\x28\x72\x65\x66\x29\x3b\x73\x79\x73\x74\x65\x6d\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x28\x29\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x45\x6c\x65\x6d\x65\x6e\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x45\x6c\x65\x6d\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x45\x6c\x65\x6d\x65\x6e\x74\x28\x72\x65\x66\x2c\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x74\x72\x79\x7b\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7c\x7c\x73\x79\x73\x74\x65\x6d\x2e\x66\x6e\x2e\x67\x65\x74\x53\x63\x72\x6f\x6c\x6c\x50\x61\x72\x65\x6e\x74\x28\x72\x65\x66\x29\x3b\x76\x61\x72\x20\x6d\x79\x53\x63\x72\x6f\x6c\x6c\x65\x72\x3d\x5f\x7a\x65\x6e\x73\x63\x72\x6f\x6c\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x63\x72\x6f\x6c\x6c\x65\x72\x28\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x6d\x79\x53\x63\x72\x6f\x6c\x6c\x65\x72\x2e\x74\x6f\x28\x72\x65\x66\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x65\x29\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x63\x6c\x65\x61\x72\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6c\x65\x61\x72\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x72\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x43\x4c\x45\x41\x52\x5f\x53\x43\x52\x4f\x4c\x4c\x5f\x54\x4f\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x53\x63\x72\x6f\x6c\x6c\x50\x61\x72\x65\x6e\x74\x28\x65\x6c\x65\x6d\x65\x6e\x74\x2c\x69\x6e\x63\x6c\x75\x64\x65\x48\x69\x64\x64\x65\x6e\x29\x7b\x76\x61\x72\x20\x4c\x41\x53\x54\x5f\x52\x45\x53\x4f\x52\x54\x3d\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x45\x6c\x65\x6d\x65\x6e\x74\x3b\x76\x61\x72\x20\x73\x74\x79\x6c\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x75\x74\x65\x64\x53\x74\x79\x6c\x65\x28\x65\x6c\x65\x6d\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x65\x78\x63\x6c\x75\x64\x65\x53\x74\x61\x74\x69\x63\x50\x61\x72\x65\x6e\x74\x3d\x73\x74\x79\x6c\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x22\x61\x62\x73\x6f\x6c\x75\x74\x65\x22\x3b\x76\x61\x72\x20\x6f\x76\x65\x72\x66\x6c\x6f\x77\x52\x65\x67\x65\x78\x3d\x69\x6e\x63\x6c\x75\x64\x65\x48\x69\x64\x64\x65\x6e\x3f\x2f\x28\x61\x75\x74\x6f\x7c\x73\x63\x72\x6f\x6c\x6c\x7c\x68\x69\x64\x64\x65\x6e\x29\x2f\x3a\x2f\x28\x61\x75\x74\x6f\x7c\x73\x63\x72\x6f\x6c\x6c\x29\x2f\x3b\x69\x66\x28\x73\x74\x79\x6c\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x22\x66\x69\x78\x65\x64\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x4c\x41\x53\x54\x5f\x52\x45\x53\x4f\x52\x54\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x70\x61\x72\x65\x6e\x74\x3d\x65\x6c\x65\x6d\x65\x6e\x74\x3b\x70\x61\x72\x65\x6e\x74\x3d\x70\x61\x72\x65\x6e\x74\x2e\x70\x61\x72\x65\x6e\x74\x45\x6c\x65\x6d\x65\x6e\x74\x3b\x29\x7b\x73\x74\x79\x6c\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x75\x74\x65\x64\x53\x74\x79\x6c\x65\x28\x70\x61\x72\x65\x6e\x74\x29\x3b\x69\x66\x28\x65\x78\x63\x6c\x75\x64\x65\x53\x74\x61\x74\x69\x63\x50\x61\x72\x65\x6e\x74\x26\x26\x73\x74\x79\x6c\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x22\x73\x74\x61\x74\x69\x63\x22\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x66\x28\x6f\x76\x65\x72\x66\x6c\x6f\x77\x52\x65\x67\x65\x78\x2e\x74\x65\x73\x74\x28\x73\x74\x79\x6c\x65\x2e\x6f\x76\x65\x72\x66\x6c\x6f\x77\x2b\x73\x74\x79\x6c\x65\x2e\x6f\x76\x65\x72\x66\x6c\x6f\x77\x59\x2b\x73\x74\x79\x6c\x65\x2e\x6f\x76\x65\x72\x66\x6c\x6f\x77\x58\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x65\x6e\x74\x7d\x72\x65\x74\x75\x72\x6e\x20\x4c\x41\x53\x54\x5f\x52\x45\x53\x4f\x52\x54\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x7b\x66\x6e\x3a\x7b\x67\x65\x74\x53\x63\x72\x6f\x6c\x6c\x50\x61\x72\x65\x6e\x74\x3a\x67\x65\x74\x53\x63\x72\x6f\x6c\x6c\x50\x61\x72\x65\x6e\x74\x7d\x2c\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x6c\x61\x79\x6f\x75\x74\x3a\x7b\x61\x63\x74\x69\x6f\x6e\x73\x3a\x7b\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x45\x6c\x65\x6d\x65\x6e\x74\x3a\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x45\x6c\x65\x6d\x65\x6e\x74\x2c\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x3a\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x2c\x63\x6c\x65\x61\x72\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x3a\x63\x6c\x65\x61\x72\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x2c\x72\x65\x61\x64\x79\x54\x6f\x53\x63\x72\x6f\x6c\x6c\x3a\x72\x65\x61\x64\x79\x54\x6f\x53\x63\x72\x6f\x6c\x6c\x2c\x70\x61\x72\x73\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x48\x61\x73\x68\x3a\x70\x61\x72\x73\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x48\x61\x73\x68\x7d\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x7b\x67\x65\x74\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x4b\x65\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x53\x63\x72\x6f\x6c\x6c\x54\x6f\x4b\x65\x79\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x22\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x4b\x65\x79\x22\x29\x7d\x2c\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x46\x72\x6f\x6d\x55\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x46\x72\x6f\x6d\x55\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x28\x73\x74\x61\x74\x65\x2c\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x29\x7b\x76\x61\x72\x20\x5f\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x32\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x2c\x32\x29\x2c\x74\x61\x67\x3d\x5f\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x32\x5b\x30\x5d\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x32\x5b\x31\x5d\x3b\x69\x66\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x2c\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x5d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x61\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2d\x74\x61\x67\x22\x2c\x74\x61\x67\x5d\x7d\x72\x65\x74\x75\x72\x6e\x5b\x5d\x7d\x2c\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x46\x72\x6f\x6d\x49\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x72\x6c\x48\x61\x73\x68\x41\x72\x72\x61\x79\x46\x72\x6f\x6d\x49\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x28\x73\x74\x61\x74\x65\x2c\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x29\x7b\x76\x61\x72\x20\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x32\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x33\x29\x2c\x74\x79\x70\x65\x3d\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x32\x5b\x30\x5d\x2c\x74\x61\x67\x3d\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x32\x5b\x31\x5d\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x32\x5b\x32\x5d\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x5d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2d\x74\x61\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x74\x61\x67\x5d\x7d\x72\x65\x74\x75\x72\x6e\x5b\x5d\x7d\x7d\x2c\x72\x65\x64\x75\x63\x65\x72\x73\x3a\x28\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x3d\x7b\x7d\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x2c\x53\x43\x52\x4f\x4c\x4c\x5f\x54\x4f\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x28\x22\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x4b\x65\x79\x22\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x66\x72\x6f\x6d\x4a\x53\x28\x61\x63\x74\x69\x6f\x6e\x2e\x70\x61\x79\x6c\x6f\x61\x64\x29\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x2c\x43\x4c\x45\x41\x52\x5f\x53\x43\x52\x4f\x4c\x4c\x5f\x54\x4f\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x64\x65\x6c\x65\x74\x65\x28\x22\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x4b\x65\x79\x22\x29\x7d\x29\x2c\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x29\x2c\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3a\x7b\x73\x68\x6f\x77\x3a\x73\x68\x6f\x77\x7d\x7d\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x48\x61\x73\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x74\x48\x61\x73\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x48\x61\x73\x68\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x68\x69\x73\x74\x6f\x72\x79\x2e\x70\x75\x73\x68\x53\x74\x61\x74\x65\x28\x6e\x75\x6c\x6c\x2c\x6e\x75\x6c\x6c\x2c\x22\x23\x22\x2b\x76\x61\x6c\x75\x65\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x69\x6e\x64\x6f\x77\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x2e\x68\x61\x73\x68\x3d\x22\x22\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x57\x72\x61\x70\x70\x65\x72\x28\x4f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x4c\x6f\x61\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x24\x74\x6f\x4f\x62\x6a\x65\x63\x74\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x29\x2c\x74\x61\x67\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x24\x74\x6f\x4f\x62\x6a\x65\x63\x74\x2e\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x24\x74\x6f\x4f\x62\x6a\x65\x63\x74\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x3d\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x2c\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x5d\x3b\x73\x79\x73\x74\x65\x6d\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x72\x65\x61\x64\x79\x54\x6f\x53\x63\x72\x6f\x6c\x6c\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x72\x65\x66\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x72\x65\x66\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x4c\x6f\x61\x64\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x72\x69\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x57\x72\x61\x70\x70\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x57\x72\x61\x70\x70\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x57\x72\x61\x70\x70\x65\x72\x28\x4f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x4c\x6f\x61\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x74\x61\x67\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x74\x61\x67\x3b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x3d\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2d\x74\x61\x67\x22\x2c\x74\x61\x67\x5d\x3b\x73\x79\x73\x74\x65\x6d\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x72\x65\x61\x64\x79\x54\x6f\x53\x63\x72\x6f\x6c\x6c\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x72\x65\x66\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x72\x65\x66\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x4c\x6f\x61\x64\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x72\x69\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x57\x72\x61\x70\x70\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x57\x72\x61\x70\x70\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x66\x6e\x3a\x7b\x6f\x70\x73\x46\x69\x6c\x74\x65\x72\x3a\x5f\x6f\x70\x73\x46\x69\x6c\x74\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x5f\x6f\x70\x73\x46\x69\x6c\x74\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x34\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x73\x46\x69\x6c\x74\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x73\x46\x69\x6c\x74\x65\x72\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x2c\x70\x68\x72\x61\x73\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x67\x4f\x62\x6a\x2c\x74\x61\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x67\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x70\x68\x72\x61\x73\x65\x29\x21\x3d\x3d\x2d\x31\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x73\x70\x65\x63\x3a\x7b\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3a\x7b\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x28\x6f\x72\x69\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x65\x6e\x67\x61\x67\x65\x64\x3d\x74\x72\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x7d\x2c\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x4a\x73\x6f\x6e\x53\x70\x65\x63\x28\x6f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x63\x62\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2e\x6f\x6e\x43\x6f\x6d\x70\x6c\x65\x74\x65\x3b\x69\x66\x28\x65\x6e\x67\x61\x67\x65\x64\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x63\x62\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x63\x62\x2c\x30\x29\x3b\x65\x6e\x67\x61\x67\x65\x64\x3d\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x7d\x7d\x7d\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x65\x6e\x67\x61\x67\x65\x64\x3d\x66\x61\x6c\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x54\x59\x50\x45\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x7c\x7c\x69\x74\x2e\x5f\x74\x21\x3d\x3d\x54\x59\x50\x45\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x49\x6e\x63\x6f\x6d\x70\x61\x74\x69\x62\x6c\x65\x20\x72\x65\x63\x65\x69\x76\x65\x72\x2c\x20\x22\x2b\x54\x59\x50\x45\x2b\x22\x20\x72\x65\x71\x75\x69\x72\x65\x64\x21\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x22\x64\x61\x74\x61\x3a\x69\x6d\x61\x67\x65\x2f\x73\x76\x67\x2b\x78\x6d\x6c\x3b\x62\x61\x73\x65\x36\x34\x2c\x50\x48\x4e\x32\x5a\x79\x42\x33\x61\x57\x52\x30\x61\x44\x30\x69\x4d\x6a\x41\x77\x63\x48\x67\x69\x49\x43\x42\x6f\x5a\x57\x6c\x6e\x61\x48\x51\x39\x49\x6a\x49\x77\x4d\x48\x42\x34\x49\x69\x41\x67\x65\x47\x31\x73\x62\x6e\x4d\x39\x49\x6d\x68\x30\x64\x48\x41\x36\x4c\x79\x39\x33\x64\x33\x63\x75\x64\x7a\x4d\x75\x62\x33\x4a\x6e\x4c\x7a\x49\x77\x4d\x44\x41\x76\x63\x33\x5a\x6e\x49\x69\x42\x32\x61\x57\x56\x33\x51\x6d\x39\x34\x50\x53\x49\x77\x49\x44\x41\x67\x4d\x54\x41\x77\x49\x44\x45\x77\x4d\x43\x49\x67\x63\x48\x4a\x6c\x63\x32\x56\x79\x64\x6d\x56\x42\x63\x33\x42\x6c\x59\x33\x52\x53\x59\x58\x52\x70\x62\x7a\x30\x69\x65\x45\x31\x70\x5a\x46\x6c\x4e\x61\x57\x51\x69\x49\x47\x4e\x73\x59\x58\x4e\x7a\x50\x53\x4a\x73\x5a\x48\x4d\x74\x63\x6d\x39\x73\x62\x47\x6c\x75\x5a\x79\x49\x67\x63\x33\x52\x35\x62\x47\x55\x39\x49\x6d\x4a\x68\x59\x32\x74\x6e\x63\x6d\x39\x31\x62\x6d\x51\x74\x61\x57\x31\x68\x5a\x32\x55\x36\x49\x47\x35\x76\x62\x6d\x55\x37\x49\x47\x4a\x68\x59\x32\x74\x6e\x63\x6d\x39\x31\x62\x6d\x51\x74\x63\x47\x39\x7a\x61\x58\x52\x70\x62\x32\x34\x36\x49\x47\x6c\x75\x61\x58\x52\x70\x59\x57\x77\x67\x61\x57\x35\x70\x64\x47\x6c\x68\x62\x44\x73\x67\x59\x6d\x46\x6a\x61\x32\x64\x79\x62\x33\x56\x75\x5a\x43\x31\x79\x5a\x58\x42\x6c\x59\x58\x51\x36\x49\x47\x6c\x75\x61\x58\x52\x70\x59\x57\x77\x67\x61\x57\x35\x70\x64\x47\x6c\x68\x62\x44\x73\x69\x50\x6a\x78\x6a\x61\x58\x4a\x6a\x62\x47\x55\x67\x59\x33\x67\x39\x49\x6a\x55\x77\x49\x69\x42\x6a\x65\x54\x30\x69\x4e\x54\x41\x69\x49\x47\x5a\x70\x62\x47\x77\x39\x49\x6d\x35\x76\x62\x6d\x55\x69\x49\x47\x35\x6e\x4c\x57\x46\x30\x64\x48\x49\x74\x63\x33\x52\x79\x62\x32\x74\x6c\x50\x53\x4a\x37\x65\x32\x4e\x76\x62\x6d\x5a\x70\x5a\x79\x35\x6a\x62\x32\x78\x76\x63\x6e\x31\x39\x49\x69\x42\x75\x5a\x79\x31\x68\x64\x48\x52\x79\x4c\x58\x4e\x30\x63\x6d\x39\x72\x5a\x53\x31\x33\x61\x57\x52\x30\x61\x44\x30\x69\x65\x33\x74\x6a\x62\x32\x35\x6d\x61\x57\x63\x75\x64\x32\x6c\x6b\x64\x47\x68\x39\x66\x53\x49\x67\x62\x6d\x63\x74\x59\x58\x52\x30\x63\x69\x31\x79\x50\x53\x4a\x37\x65\x32\x4e\x76\x62\x6d\x5a\x70\x5a\x79\x35\x79\x59\x57\x52\x70\x64\x58\x4e\x39\x66\x53\x49\x67\x62\x6d\x63\x74\x59\x58\x52\x30\x63\x69\x31\x7a\x64\x48\x4a\x76\x61\x32\x55\x74\x5a\x47\x46\x7a\x61\x47\x46\x79\x63\x6d\x46\x35\x50\x53\x4a\x37\x65\x32\x4e\x76\x62\x6d\x5a\x70\x5a\x79\x35\x6b\x59\x58\x4e\x6f\x59\x58\x4a\x79\x59\x58\x6c\x39\x66\x53\x49\x67\x63\x33\x52\x79\x62\x32\x74\x6c\x50\x53\x49\x6a\x4e\x54\x55\x31\x4e\x54\x55\x31\x49\x69\x42\x7a\x64\x48\x4a\x76\x61\x32\x55\x74\x64\x32\x6c\x6b\x64\x47\x67\x39\x49\x6a\x45\x77\x49\x69\x42\x79\x50\x53\x49\x7a\x4e\x53\x49\x67\x63\x33\x52\x79\x62\x32\x74\x6c\x4c\x57\x52\x68\x63\x32\x68\x68\x63\x6e\x4a\x68\x65\x54\x30\x69\x4d\x54\x59\x30\x4c\x6a\x6b\x7a\x4d\x7a\x59\x78\x4e\x44\x4d\x78\x4d\x7a\x51\x32\x4e\x44\x45\x31\x49\x44\x55\x32\x4c\x6a\x6b\x33\x4e\x7a\x67\x33\x4d\x54\x51\x7a\x4e\x7a\x67\x79\x4d\x54\x4d\x34\x49\x6a\x34\x38\x59\x57\x35\x70\x62\x57\x46\x30\x5a\x56\x52\x79\x59\x57\x35\x7a\x5a\x6d\x39\x79\x62\x53\x42\x68\x64\x48\x52\x79\x61\x57\x4a\x31\x64\x47\x56\x4f\x59\x57\x31\x6c\x50\x53\x4a\x30\x63\x6d\x46\x75\x63\x32\x5a\x76\x63\x6d\x30\x69\x49\x48\x52\x35\x63\x47\x55\x39\x49\x6e\x4a\x76\x64\x47\x46\x30\x5a\x53\x49\x67\x59\x32\x46\x73\x59\x30\x31\x76\x5a\x47\x55\x39\x49\x6d\x78\x70\x62\x6d\x56\x68\x63\x69\x49\x67\x64\x6d\x46\x73\x64\x57\x56\x7a\x50\x53\x49\x77\x49\x44\x55\x77\x49\x44\x55\x77\x4f\x7a\x4d\x32\x4d\x43\x41\x31\x4d\x43\x41\x31\x4d\x43\x49\x67\x61\x32\x56\x35\x56\x47\x6c\x74\x5a\x58\x4d\x39\x49\x6a\x41\x37\x4d\x53\x49\x67\x5a\x48\x56\x79\x50\x53\x49\x78\x63\x79\x49\x67\x59\x6d\x56\x6e\x61\x57\x34\x39\x49\x6a\x42\x7a\x49\x69\x42\x79\x5a\x58\x42\x6c\x59\x58\x52\x44\x62\x33\x56\x75\x64\x44\x30\x69\x61\x57\x35\x6b\x5a\x57\x5a\x70\x62\x6d\x6c\x30\x5a\x53\x49\x2b\x50\x43\x39\x68\x62\x6d\x6c\x74\x59\x58\x52\x6c\x56\x48\x4a\x68\x62\x6e\x4e\x6d\x62\x33\x4a\x74\x50\x6a\x77\x76\x59\x32\x6c\x79\x59\x32\x78\x6c\x50\x6a\x77\x76\x63\x33\x5a\x6e\x50\x67\x6f\x3d\x22\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4c\x69\x6e\x6b\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x65\x6c\x65\x63\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x49\x6e\x70\x75\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x54\x65\x78\x74\x41\x72\x65\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x42\x75\x74\x74\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x52\x6f\x77\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x6f\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x34\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x78\x63\x6c\x61\x73\x73\x28\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x67\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x61\x7d\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x20\x22\x29\x2e\x74\x72\x69\x6d\x28\x29\x7d\x76\x61\x72\x20\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x66\x75\x6c\x6c\x73\x63\x72\x65\x65\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x75\x6c\x6c\x73\x63\x72\x65\x65\x6e\x2c\x66\x75\x6c\x6c\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x75\x6c\x6c\x2c\x72\x65\x73\x74\x3d\x28\x30\x2c\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x70\x72\x6f\x70\x73\x2c\x5b\x22\x66\x75\x6c\x6c\x73\x63\x72\x65\x65\x6e\x22\x2c\x22\x66\x75\x6c\x6c\x22\x5d\x29\x3b\x69\x66\x28\x66\x75\x6c\x6c\x73\x63\x72\x65\x65\x6e\x29\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x63\x74\x69\x6f\x6e\x22\x2c\x72\x65\x73\x74\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x43\x6c\x61\x73\x73\x3d\x22\x73\x77\x61\x67\x67\x65\x72\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x2b\x28\x66\x75\x6c\x6c\x3f\x22\x2d\x66\x75\x6c\x6c\x22\x3a\x22\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x63\x74\x69\x6f\x6e\x22\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x72\x65\x73\x74\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x78\x63\x6c\x61\x73\x73\x28\x72\x65\x73\x74\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x43\x6c\x61\x73\x73\x29\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x44\x45\x56\x49\x43\x45\x53\x3d\x7b\x6d\x6f\x62\x69\x6c\x65\x3a\x22\x22\x2c\x74\x61\x62\x6c\x65\x74\x3a\x22\x2d\x74\x61\x62\x6c\x65\x74\x22\x2c\x64\x65\x73\x6b\x74\x6f\x70\x3a\x22\x2d\x64\x65\x73\x6b\x74\x6f\x70\x22\x2c\x6c\x61\x72\x67\x65\x3a\x22\x2d\x68\x64\x22\x7d\x3b\x76\x61\x72\x20\x43\x6f\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x6f\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6c\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x43\x6f\x6c\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x43\x6f\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x43\x6f\x6c\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6c\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6c\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x68\x69\x64\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x68\x69\x64\x65\x2c\x6b\x65\x65\x70\x43\x6f\x6e\x74\x65\x6e\x74\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x6b\x65\x65\x70\x43\x6f\x6e\x74\x65\x6e\x74\x73\x2c\x6d\x6f\x62\x69\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x6d\x6f\x62\x69\x6c\x65\x2c\x74\x61\x62\x6c\x65\x74\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x74\x61\x62\x6c\x65\x74\x2c\x64\x65\x73\x6b\x74\x6f\x70\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x64\x65\x73\x6b\x74\x6f\x70\x2c\x6c\x61\x72\x67\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x6c\x61\x72\x67\x65\x2c\x72\x65\x73\x74\x3d\x28\x30\x2c\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x70\x72\x6f\x70\x73\x32\x2c\x5b\x22\x68\x69\x64\x65\x22\x2c\x22\x6b\x65\x65\x70\x43\x6f\x6e\x74\x65\x6e\x74\x73\x22\x2c\x22\x6d\x6f\x62\x69\x6c\x65\x22\x2c\x22\x74\x61\x62\x6c\x65\x74\x22\x2c\x22\x64\x65\x73\x6b\x74\x6f\x70\x22\x2c\x22\x6c\x61\x72\x67\x65\x22\x5d\x29\x3b\x69\x66\x28\x68\x69\x64\x65\x26\x26\x21\x6b\x65\x65\x70\x43\x6f\x6e\x74\x65\x6e\x74\x73\x29\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x29\x3b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x65\x73\x41\x72\x3d\x5b\x5d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x64\x65\x76\x69\x63\x65\x20\x69\x6e\x20\x44\x45\x56\x49\x43\x45\x53\x29\x7b\x69\x66\x28\x21\x44\x45\x56\x49\x43\x45\x53\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x64\x65\x76\x69\x63\x65\x29\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x76\x61\x72\x20\x64\x65\x76\x69\x63\x65\x43\x6c\x61\x73\x73\x3d\x44\x45\x56\x49\x43\x45\x53\x5b\x64\x65\x76\x69\x63\x65\x5d\x3b\x69\x66\x28\x64\x65\x76\x69\x63\x65\x20\x69\x6e\x20\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x5b\x64\x65\x76\x69\x63\x65\x5d\x3b\x69\x66\x28\x76\x61\x6c\x3c\x31\x29\x7b\x63\x6c\x61\x73\x73\x65\x73\x41\x72\x2e\x70\x75\x73\x68\x28\x22\x6e\x6f\x6e\x65\x22\x2b\x64\x65\x76\x69\x63\x65\x43\x6c\x61\x73\x73\x29\x3b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x63\x6c\x61\x73\x73\x65\x73\x41\x72\x2e\x70\x75\x73\x68\x28\x22\x62\x6c\x6f\x63\x6b\x22\x2b\x64\x65\x76\x69\x63\x65\x43\x6c\x61\x73\x73\x29\x3b\x63\x6c\x61\x73\x73\x65\x73\x41\x72\x2e\x70\x75\x73\x68\x28\x22\x63\x6f\x6c\x2d\x22\x2b\x76\x61\x6c\x2b\x64\x65\x76\x69\x63\x65\x43\x6c\x61\x73\x73\x29\x7d\x7d\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x65\x73\x3d\x78\x63\x6c\x61\x73\x73\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x5b\x72\x65\x73\x74\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x63\x6c\x61\x73\x73\x65\x73\x41\x72\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x63\x74\x69\x6f\x6e\x22\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x72\x65\x73\x74\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x64\x69\x73\x70\x6c\x61\x79\x3a\x68\x69\x64\x65\x3f\x22\x6e\x6f\x6e\x65\x22\x3a\x6e\x75\x6c\x6c\x7d\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x63\x6c\x61\x73\x73\x65\x73\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x6f\x6c\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x52\x6f\x77\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x52\x6f\x77\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x33\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x6f\x77\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x33\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x52\x6f\x77\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x52\x6f\x77\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x52\x6f\x77\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x6f\x77\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x6f\x77\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x78\x63\x6c\x61\x73\x73\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x22\x77\x72\x61\x70\x70\x65\x72\x22\x29\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x52\x6f\x77\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x42\x75\x74\x74\x6f\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x42\x75\x74\x74\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x34\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x42\x75\x74\x74\x6f\x6e\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x34\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x42\x75\x74\x74\x6f\x6e\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x42\x75\x74\x74\x6f\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x42\x75\x74\x74\x6f\x6e\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x42\x75\x74\x74\x6f\x6e\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x42\x75\x74\x74\x6f\x6e\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x78\x63\x6c\x61\x73\x73\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x22\x62\x75\x74\x74\x6f\x6e\x22\x29\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x42\x75\x74\x74\x6f\x6e\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x42\x75\x74\x74\x6f\x6e\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x22\x7d\x3b\x76\x61\x72\x20\x54\x65\x78\x74\x41\x72\x65\x61\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x54\x65\x78\x74\x41\x72\x65\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x54\x65\x78\x74\x41\x72\x65\x61\x28\x70\x72\x6f\x70\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x65\x78\x74\x61\x72\x65\x61\x22\x2c\x70\x72\x6f\x70\x73\x29\x7d\x3b\x76\x61\x72\x20\x49\x6e\x70\x75\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x49\x6e\x70\x75\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x49\x6e\x70\x75\x74\x28\x70\x72\x6f\x70\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6e\x70\x75\x74\x22\x2c\x70\x72\x6f\x70\x73\x29\x7d\x3b\x76\x61\x72\x20\x53\x65\x6c\x65\x63\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x65\x6c\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x35\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x65\x6c\x65\x63\x74\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x65\x6c\x65\x63\x74\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x53\x65\x6c\x65\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x35\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x53\x65\x6c\x65\x63\x74\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x65\x6c\x65\x63\x74\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x2e\x63\x61\x6c\x6c\x28\x5f\x74\x68\x69\x73\x35\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x6c\x75\x65\x3d\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x7d\x65\x6c\x73\x65\x7b\x76\x61\x6c\x75\x65\x3d\x70\x72\x6f\x70\x73\x2e\x6d\x75\x6c\x74\x69\x70\x6c\x65\x3f\x5b\x22\x22\x5d\x3a\x22\x22\x7d\x5f\x74\x68\x69\x73\x35\x2e\x73\x74\x61\x74\x65\x3d\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x35\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x65\x6c\x65\x63\x74\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x21\x3d\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x29\x7b\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x7d\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x33\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x61\x6c\x6c\x6f\x77\x65\x64\x56\x61\x6c\x75\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x61\x6c\x6c\x6f\x77\x65\x64\x56\x61\x6c\x75\x65\x73\x2c\x6d\x75\x6c\x74\x69\x70\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x6d\x75\x6c\x74\x69\x70\x6c\x65\x2c\x61\x6c\x6c\x6f\x77\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x61\x6c\x6c\x6f\x77\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x64\x69\x73\x61\x62\x6c\x65\x64\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x2e\x74\x6f\x4a\x53\x3f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x2e\x74\x6f\x4a\x53\x28\x29\x3a\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x6c\x65\x63\x74\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x6d\x75\x6c\x74\x69\x70\x6c\x65\x3a\x6d\x75\x6c\x74\x69\x70\x6c\x65\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x64\x69\x73\x61\x62\x6c\x65\x64\x7d\x2c\x61\x6c\x6c\x6f\x77\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x22\x22\x7d\x2c\x22\x2d\x2d\x22\x29\x3a\x6e\x75\x6c\x6c\x2c\x61\x6c\x6c\x6f\x77\x65\x64\x56\x61\x6c\x75\x65\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x6d\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x3a\x53\x74\x72\x69\x6e\x67\x28\x69\x74\x65\x6d\x29\x7d\x2c\x53\x74\x72\x69\x6e\x67\x28\x69\x74\x65\x6d\x29\x29\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x53\x65\x6c\x65\x63\x74\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x53\x65\x6c\x65\x63\x74\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x6d\x75\x6c\x74\x69\x70\x6c\x65\x3a\x66\x61\x6c\x73\x65\x2c\x61\x6c\x6c\x6f\x77\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x3b\x76\x61\x72\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x38\x3d\x74\x68\x69\x73\x3b\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x35\x3d\x5f\x74\x68\x69\x73\x38\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x6d\x75\x6c\x74\x69\x70\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x6d\x75\x6c\x74\x69\x70\x6c\x65\x3b\x76\x61\x72\x20\x6f\x70\x74\x69\x6f\x6e\x73\x3d\x5b\x5d\x2e\x73\x6c\x69\x63\x65\x2e\x63\x61\x6c\x6c\x28\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x6f\x70\x74\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x6d\x75\x6c\x74\x69\x70\x6c\x65\x29\x7b\x76\x61\x6c\x75\x65\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x74\x69\x6f\x6e\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x7d\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x70\x74\x69\x6f\x6e\x2e\x76\x61\x6c\x75\x65\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x76\x61\x6c\x75\x65\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x7d\x5f\x74\x68\x69\x73\x38\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x29\x3b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x26\x26\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x75\x65\x29\x7d\x7d\x3b\x76\x61\x72\x20\x4c\x69\x6e\x6b\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4c\x69\x6e\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x36\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4c\x69\x6e\x6b\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4c\x69\x6e\x6b\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4c\x69\x6e\x6b\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4c\x69\x6e\x6b\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4c\x69\x6e\x6b\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4c\x69\x6e\x6b\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x72\x65\x6c\x3a\x22\x6e\x6f\x6f\x70\x65\x6e\x65\x72\x20\x6e\x6f\x72\x65\x66\x65\x72\x72\x65\x72\x22\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x78\x63\x6c\x61\x73\x73\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x22\x6c\x69\x6e\x6b\x22\x29\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4c\x69\x6e\x6b\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x4e\x6f\x4d\x61\x72\x67\x69\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4e\x6f\x4d\x61\x72\x67\x69\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x63\x68\x69\x6c\x64\x72\x65\x6e\x3d\x5f\x72\x65\x66\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x68\x65\x69\x67\x68\x74\x3a\x22\x61\x75\x74\x6f\x22\x2c\x62\x6f\x72\x64\x65\x72\x3a\x22\x6e\x6f\x6e\x65\x22\x2c\x6d\x61\x72\x67\x69\x6e\x3a\x30\x2c\x70\x61\x64\x64\x69\x6e\x67\x3a\x30\x7d\x7d\x2c\x22\x20\x22\x2c\x63\x68\x69\x6c\x64\x72\x65\x6e\x2c\x22\x20\x22\x29\x7d\x3b\x76\x61\x72\x20\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x37\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x43\x6f\x6c\x6c\x61\x70\x73\x65\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6c\x6c\x61\x70\x73\x65\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x4e\x6f\x74\x41\x6e\x69\x6d\x61\x74\x65\x64\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x4e\x6f\x74\x41\x6e\x69\x6d\x61\x74\x65\x64\x28\x29\x7b\x69\x66\x28\x21\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x69\x73\x4f\x70\x65\x6e\x65\x64\x29\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6e\x6f\x73\x63\x72\x69\x70\x74\x22\x2c\x6e\x75\x6c\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4e\x6f\x4d\x61\x72\x67\x69\x6e\x2c\x6e\x75\x6c\x6c\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x34\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x61\x6e\x69\x6d\x61\x74\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x61\x6e\x69\x6d\x61\x74\x65\x64\x2c\x69\x73\x4f\x70\x65\x6e\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x69\x73\x4f\x70\x65\x6e\x65\x64\x2c\x63\x68\x69\x6c\x64\x72\x65\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x3b\x69\x66\x28\x21\x61\x6e\x69\x6d\x61\x74\x65\x64\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x72\x65\x6e\x64\x65\x72\x4e\x6f\x74\x41\x6e\x69\x6d\x61\x74\x65\x64\x28\x29\x3b\x63\x68\x69\x6c\x64\x72\x65\x6e\x3d\x69\x73\x4f\x70\x65\x6e\x65\x64\x3f\x63\x68\x69\x6c\x64\x72\x65\x6e\x3a\x6e\x75\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4e\x6f\x4d\x61\x72\x67\x69\x6e\x2c\x6e\x75\x6c\x6c\x2c\x63\x68\x69\x6c\x64\x72\x65\x6e\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x6f\x6c\x6c\x61\x70\x73\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x69\x73\x4f\x70\x65\x6e\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x61\x6e\x69\x6d\x61\x74\x65\x64\x3a\x66\x61\x6c\x73\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x35\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x2c\x5f\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x6f\x64\x65\x6c\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4d\x6f\x64\x65\x6c\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x4d\x6f\x64\x65\x6c\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x4d\x6f\x64\x65\x6c\x4e\x61\x6d\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x66\x29\x7b\x69\x66\x28\x72\x65\x66\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x23\x2f\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2f\x22\x29\x21\x3d\x3d\x2d\x31\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x66\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5e\x2e\x2a\x23\x5c\x2f\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x5c\x2f\x2f\x2c\x22\x22\x29\x7d\x69\x66\x28\x72\x65\x66\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x23\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x73\x63\x68\x65\x6d\x61\x73\x2f\x22\x29\x21\x3d\x3d\x2d\x31\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x66\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5e\x2e\x2a\x23\x5c\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x5c\x2f\x73\x63\x68\x65\x6d\x61\x73\x5c\x2f\x2f\x2c\x22\x22\x29\x7d\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x52\x65\x66\x53\x63\x68\x65\x6d\x61\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x65\x6c\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x66\x69\x6e\x64\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x65\x6c\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x72\x65\x71\x75\x69\x72\x65\x64\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x69\x73\x52\x65\x66\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x52\x65\x66\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3b\x76\x61\x72\x20\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x22\x29\x3b\x76\x61\x72\x20\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x22\x29\x3b\x76\x61\x72\x20\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x4d\x6f\x64\x65\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x4d\x6f\x64\x65\x6c\x22\x29\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x24\x72\x65\x66\x3d\x73\x63\x68\x65\x6d\x61\x26\x26\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x24\x24\x72\x65\x66\x22\x29\x3b\x69\x66\x28\x21\x6e\x61\x6d\x65\x26\x26\x24\x24\x72\x65\x66\x29\x7b\x6e\x61\x6d\x65\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x4d\x6f\x64\x65\x6c\x4e\x61\x6d\x65\x28\x24\x24\x72\x65\x66\x29\x7d\x69\x66\x28\x21\x73\x63\x68\x65\x6d\x61\x26\x26\x24\x24\x72\x65\x66\x29\x7b\x73\x63\x68\x65\x6d\x61\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x52\x65\x66\x53\x63\x68\x65\x6d\x61\x28\x6e\x61\x6d\x65\x29\x7d\x69\x66\x28\x21\x73\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x20\x6d\x6f\x64\x65\x6c\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x74\x69\x74\x6c\x65\x5f\x5f\x74\x65\x78\x74\x22\x7d\x2c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x7c\x7c\x6e\x61\x6d\x65\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6d\x67\x22\x2c\x7b\x73\x72\x63\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x37\x29\x2c\x68\x65\x69\x67\x68\x74\x3a\x22\x32\x30\x70\x78\x22\x2c\x77\x69\x64\x74\x68\x3a\x22\x32\x30\x70\x78\x22\x2c\x73\x74\x79\x6c\x65\x3a\x7b\x6d\x61\x72\x67\x69\x6e\x4c\x65\x66\x74\x3a\x22\x31\x65\x6d\x22\x2c\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3a\x22\x72\x65\x6c\x61\x74\x69\x76\x65\x22\x2c\x62\x6f\x74\x74\x6f\x6d\x3a\x22\x30\x70\x78\x22\x7d\x7d\x29\x29\x7d\x76\x61\x72\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x26\x26\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x29\x3b\x69\x73\x52\x65\x66\x3d\x69\x73\x52\x65\x66\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x69\x73\x52\x65\x66\x3a\x21\x21\x24\x24\x72\x65\x66\x3b\x74\x79\x70\x65\x3d\x73\x63\x68\x65\x6d\x61\x26\x26\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x7c\x7c\x74\x79\x70\x65\x3b\x73\x77\x69\x74\x63\x68\x28\x74\x79\x70\x65\x29\x7b\x63\x61\x73\x65\x22\x6f\x62\x6a\x65\x63\x74\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x62\x6a\x65\x63\x74\x22\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3a\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2c\x69\x73\x52\x65\x66\x3a\x69\x73\x52\x65\x66\x7d\x29\x29\x3b\x63\x61\x73\x65\x22\x61\x72\x72\x61\x79\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x61\x72\x72\x61\x79\x22\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3a\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x72\x65\x71\x75\x69\x72\x65\x64\x7d\x29\x29\x3b\x63\x61\x73\x65\x22\x73\x74\x72\x69\x6e\x67\x22\x3a\x63\x61\x73\x65\x22\x6e\x75\x6d\x62\x65\x72\x22\x3a\x63\x61\x73\x65\x22\x69\x6e\x74\x65\x67\x65\x72\x22\x3a\x63\x61\x73\x65\x22\x62\x6f\x6f\x6c\x65\x61\x6e\x22\x3a\x64\x65\x66\x61\x75\x6c\x74\x3a\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3a\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x72\x65\x71\x75\x69\x72\x65\x64\x7d\x29\x29\x7d\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4d\x6f\x64\x65\x6c\x7d\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x3b\x4d\x6f\x64\x65\x6c\x2e\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x7b\x73\x63\x68\x65\x6d\x61\x3a\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x2e\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x66\x75\x6e\x63\x2e\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x66\x75\x6e\x63\x2e\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6f\x62\x6a\x65\x63\x74\x2e\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x2c\x6e\x61\x6d\x65\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x73\x74\x72\x69\x6e\x67\x2c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x73\x74\x72\x69\x6e\x67\x2c\x69\x73\x52\x65\x66\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x62\x6f\x6f\x6c\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x62\x6f\x6f\x6c\x2c\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6e\x75\x6d\x62\x65\x72\x2c\x64\x65\x70\x74\x68\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6e\x75\x6d\x62\x65\x72\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6c\x69\x73\x74\x2e\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4d\x6f\x64\x65\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x72\x3d\x73\x61\x6e\x69\x74\x69\x7a\x65\x72\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x6d\x61\x72\x6b\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x31\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x6d\x61\x72\x6b\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x6d\x61\x72\x6b\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x64\x6f\x6d\x70\x75\x72\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x6f\x6d\x70\x75\x72\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x6f\x6d\x70\x75\x72\x69\x66\x79\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x39\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x5f\x64\x6f\x6d\x70\x75\x72\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x61\x64\x64\x48\x6f\x6f\x6b\x28\x22\x62\x65\x66\x6f\x72\x65\x53\x61\x6e\x69\x74\x69\x7a\x65\x45\x6c\x65\x6d\x65\x6e\x74\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x75\x72\x72\x65\x6e\x74\x29\x7b\x69\x66\x28\x63\x75\x72\x72\x65\x6e\x74\x2e\x68\x72\x65\x66\x29\x7b\x63\x75\x72\x72\x65\x6e\x74\x2e\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x72\x65\x6c\x22\x2c\x22\x6e\x6f\x6f\x70\x65\x6e\x65\x72\x20\x6e\x6f\x72\x65\x66\x65\x72\x72\x65\x72\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x63\x75\x72\x72\x65\x6e\x74\x7d\x29\x3b\x76\x61\x72\x20\x69\x73\x50\x6c\x61\x69\x6e\x54\x65\x78\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x50\x6c\x61\x69\x6e\x54\x65\x78\x74\x28\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x2f\x5e\x5b\x41\x2d\x5a\x5c\x73\x30\x2d\x39\x21\x3f\x5c\x2e\x5d\x2b\x24\x2f\x67\x69\x2e\x74\x65\x73\x74\x28\x73\x74\x72\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x73\x6f\x75\x72\x63\x65\x3d\x5f\x72\x65\x66\x2e\x73\x6f\x75\x72\x63\x65\x2c\x5f\x72\x65\x66\x24\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x24\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x22\x3a\x5f\x72\x65\x66\x24\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x6f\x75\x72\x63\x65\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x69\x66\x28\x69\x73\x50\x6c\x61\x69\x6e\x54\x65\x78\x74\x28\x73\x6f\x75\x72\x63\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x7d\x2c\x73\x6f\x75\x72\x63\x65\x29\x7d\x76\x61\x72\x20\x6d\x64\x3d\x6e\x65\x77\x20\x5f\x72\x65\x6d\x61\x72\x6b\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x28\x7b\x68\x74\x6d\x6c\x3a\x74\x72\x75\x65\x2c\x74\x79\x70\x6f\x67\x72\x61\x70\x68\x65\x72\x3a\x74\x72\x75\x65\x2c\x62\x72\x65\x61\x6b\x73\x3a\x74\x72\x75\x65\x2c\x6c\x69\x6e\x6b\x69\x66\x79\x3a\x74\x72\x75\x65\x2c\x6c\x69\x6e\x6b\x54\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x7d\x29\x3b\x6d\x64\x2e\x63\x6f\x72\x65\x2e\x72\x75\x6c\x65\x72\x2e\x64\x69\x73\x61\x62\x6c\x65\x28\x5b\x22\x72\x65\x70\x6c\x61\x63\x65\x6d\x65\x6e\x74\x73\x22\x2c\x22\x73\x6d\x61\x72\x74\x71\x75\x6f\x74\x65\x73\x22\x5d\x29\x3b\x76\x61\x72\x20\x68\x74\x6d\x6c\x3d\x6d\x64\x2e\x72\x65\x6e\x64\x65\x72\x28\x73\x6f\x75\x72\x63\x65\x29\x3b\x76\x61\x72\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x3d\x73\x61\x6e\x69\x74\x69\x7a\x65\x72\x28\x68\x74\x6d\x6c\x29\x3b\x69\x66\x28\x21\x73\x6f\x75\x72\x63\x65\x7c\x7c\x21\x68\x74\x6d\x6c\x7c\x7c\x21\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x22\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x2c\x64\x61\x6e\x67\x65\x72\x6f\x75\x73\x6c\x79\x53\x65\x74\x49\x6e\x6e\x65\x72\x48\x54\x4d\x4c\x3a\x7b\x5f\x5f\x68\x74\x6d\x6c\x3a\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x7d\x7d\x29\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x72\x28\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x64\x6f\x6d\x70\x75\x72\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x28\x73\x74\x72\x2c\x7b\x41\x44\x44\x5f\x41\x54\x54\x52\x3a\x5b\x22\x74\x61\x72\x67\x65\x74\x22\x5d\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x6d\x61\x72\x6b\x61\x62\x6c\x65\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x5f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x5f\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x73\x70\x65\x63\x3a\x7b\x77\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x57\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x2c\x61\x75\x74\x68\x3a\x7b\x77\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x61\x75\x74\x68\x57\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x2c\x6f\x61\x73\x33\x3a\x7b\x61\x63\x74\x69\x6f\x6e\x73\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x72\x65\x64\x75\x63\x65\x72\x73\x3a\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x7d\x7d\x7d\x3b\x76\x61\x72\x20\x5f\x77\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x33\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x57\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x77\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x77\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x34\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x57\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x77\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x35\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x36\x29\x3b\x76\x61\x72\x20\x5f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x29\x3b\x76\x61\x72\x20\x5f\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x35\x29\x3b\x76\x61\x72\x20\x5f\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x38\x29\x3b\x76\x61\x72\x20\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x61\x63\x74\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x32\x29\x3b\x76\x61\x72\x20\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x33\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x64\x75\x63\x65\x72\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4f\x41\x53\x33\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x62\x61\x73\x65\x50\x61\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x68\x6f\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x68\x61\x73\x48\x6f\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x33\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x73\x65\x6c\x65\x63\x74\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x3b\x69\x66\x28\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x29\x28\x73\x70\x65\x63\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x7d\x7d\x7d\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x74\x65\x28\x5f\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x74\x61\x74\x65\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x3b\x76\x61\x72\x20\x6e\x75\x6c\x6c\x53\x65\x6c\x65\x63\x74\x6f\x72\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x29\x3b\x76\x61\x72\x20\x4f\x41\x53\x33\x4e\x75\x6c\x6c\x53\x65\x6c\x65\x63\x74\x6f\x72\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x6e\x75\x6c\x6c\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x4a\x73\x6f\x6e\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x6a\x73\x6f\x6e\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x70\x65\x63\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x3d\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x28\x73\x74\x61\x74\x65\x29\x3b\x69\x66\x28\x72\x65\x73\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3c\x31\x29\x72\x65\x73\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x3d\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x22\x2c\x22\x73\x63\x68\x65\x6d\x61\x73\x22\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x72\x65\x73\x29\x3f\x72\x65\x73\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x29\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x48\x6f\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x68\x61\x73\x48\x6f\x73\x74\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x28\x73\x74\x61\x74\x65\x29\x2e\x68\x61\x73\x49\x6e\x28\x5b\x22\x73\x65\x72\x76\x65\x72\x73\x22\x2c\x30\x5d\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x5f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x57\x69\x74\x68\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x22\x2c\x22\x73\x65\x63\x75\x72\x69\x74\x79\x53\x63\x68\x65\x6d\x65\x73\x22\x5d\x29\x7c\x7c\x6e\x75\x6c\x6c\x7d\x29\x29\x3b\x76\x61\x72\x20\x68\x6f\x73\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x68\x6f\x73\x74\x3d\x4f\x41\x53\x33\x4e\x75\x6c\x6c\x53\x65\x6c\x65\x63\x74\x6f\x72\x3b\x76\x61\x72\x20\x62\x61\x73\x65\x50\x61\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x62\x61\x73\x65\x50\x61\x74\x68\x3d\x4f\x41\x53\x33\x4e\x75\x6c\x6c\x53\x65\x6c\x65\x63\x74\x6f\x72\x3b\x76\x61\x72\x20\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x4f\x41\x53\x33\x4e\x75\x6c\x6c\x53\x65\x6c\x65\x63\x74\x6f\x72\x3b\x76\x61\x72\x20\x70\x72\x6f\x64\x75\x63\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x3d\x4f\x41\x53\x33\x4e\x75\x6c\x6c\x53\x65\x6c\x65\x63\x74\x6f\x72\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x3d\x4f\x41\x53\x33\x4e\x75\x6c\x6c\x53\x65\x6c\x65\x63\x74\x6f\x72\x3b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x73\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x65\x72\x76\x65\x72\x73\x22\x5d\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x29\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x4f\x41\x53\x33\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4f\x41\x53\x33\x28\x6f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x29\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x73\x70\x65\x63\x29\x3f\x73\x70\x65\x63\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x7d\x3b\x76\x61\x72\x20\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x28\x6f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x29\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x73\x70\x65\x63\x29\x3f\x73\x70\x65\x63\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x54\x6f\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x74\x65\x28\x5f\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x74\x61\x74\x65\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x73\x65\x6c\x65\x63\x74\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x3e\x31\x3f\x5f\x6c\x65\x6e\x2d\x31\x3a\x30\x29\x2c\x5f\x6b\x65\x79\x3d\x31\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x2d\x31\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x3b\x69\x66\x28\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x29\x28\x73\x70\x65\x63\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x5b\x73\x79\x73\x74\x65\x6d\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x72\x69\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x73\x29\x7d\x7d\x7d\x7d\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x54\x6f\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x54\x6f\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x29\x7b\x76\x61\x72\x20\x6c\x69\x73\x74\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x3b\x69\x66\x28\x21\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x69\x73\x74\x7d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x33\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x32\x2c\x32\x29\x2c\x64\x65\x66\x4e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x33\x5b\x30\x5d\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x3d\x5f\x72\x65\x66\x33\x5b\x31\x5d\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6f\x61\x75\x74\x68\x32\x22\x29\x7b\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x66\x6c\x6f\x77\x73\x22\x29\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x34\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x35\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x34\x2c\x32\x29\x2c\x66\x6c\x6f\x77\x4b\x65\x79\x3d\x5f\x72\x65\x66\x35\x5b\x30\x5d\x2c\x66\x6c\x6f\x77\x56\x61\x6c\x3d\x5f\x72\x65\x66\x35\x5b\x31\x5d\x3b\x76\x61\x72\x20\x74\x72\x61\x6e\x73\x6c\x61\x74\x65\x64\x44\x65\x66\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x66\x6c\x6f\x77\x3a\x66\x6c\x6f\x77\x4b\x65\x79\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x55\x72\x6c\x3a\x66\x6c\x6f\x77\x56\x61\x6c\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x55\x72\x6c\x22\x29\x2c\x74\x6f\x6b\x65\x6e\x55\x72\x6c\x3a\x66\x6c\x6f\x77\x56\x61\x6c\x2e\x67\x65\x74\x28\x22\x74\x6f\x6b\x65\x6e\x55\x72\x6c\x22\x29\x2c\x73\x63\x6f\x70\x65\x73\x3a\x66\x6c\x6f\x77\x56\x61\x6c\x2e\x67\x65\x74\x28\x22\x73\x63\x6f\x70\x65\x73\x22\x29\x2c\x74\x79\x70\x65\x3a\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x7d\x29\x3b\x6c\x69\x73\x74\x3d\x6c\x69\x73\x74\x2e\x70\x75\x73\x68\x28\x6e\x65\x77\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x28\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x64\x65\x66\x4e\x61\x6d\x65\x2c\x74\x72\x61\x6e\x73\x6c\x61\x74\x65\x64\x44\x65\x66\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x29\x29\x29\x29\x7d\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x68\x74\x74\x70\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x3d\x22\x61\x70\x69\x4b\x65\x79\x22\x29\x7b\x6c\x69\x73\x74\x3d\x6c\x69\x73\x74\x2e\x70\x75\x73\x68\x28\x6e\x65\x77\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x28\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x64\x65\x66\x4e\x61\x6d\x65\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x29\x29\x29\x7d\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6c\x69\x73\x74\x7d\x29\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x73\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x73\x65\x6c\x65\x63\x74\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x3e\x31\x3f\x5f\x6c\x65\x6e\x2d\x31\x3a\x30\x29\x2c\x5f\x6b\x65\x79\x3d\x31\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x2d\x31\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x3b\x69\x66\x28\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x29\x28\x73\x70\x65\x63\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x73\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x7d\x7d\x7d\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x74\x65\x28\x5f\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x74\x61\x74\x65\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x4a\x73\x6f\x6e\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x6a\x73\x6f\x6e\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x3d\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x74\x61\x74\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x28\x22\x72\x65\x73\x6f\x6c\x76\x65\x64\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x70\x65\x63\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x3d\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x28\x73\x74\x61\x74\x65\x29\x3b\x69\x66\x28\x72\x65\x73\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3c\x31\x29\x72\x65\x73\x3d\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x3b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x73\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x28\x30\x2c\x5f\x72\x65\x73\x65\x6c\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x28\x73\x70\x65\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x70\x65\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x65\x72\x76\x65\x72\x73\x22\x5d\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x7d\x29\x29\x3b\x76\x61\x72\x20\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x28\x6f\x72\x69\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x29\x28\x73\x70\x65\x63\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x37\x29\x3b\x76\x61\x72\x20\x5f\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x38\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x39\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x76\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x30\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x76\x65\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x65\x72\x76\x65\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x31\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x29\x3b\x76\x61\x72\x20\x5f\x68\x74\x74\x70\x41\x75\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x33\x29\x3b\x76\x61\x72\x20\x5f\x68\x74\x74\x70\x41\x75\x74\x68\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x68\x74\x74\x70\x41\x75\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x34\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x7b\x43\x61\x6c\x6c\x62\x61\x63\x6b\x73\x3a\x5f\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x48\x74\x74\x70\x41\x75\x74\x68\x3a\x5f\x68\x74\x74\x70\x41\x75\x74\x68\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3a\x5f\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x53\x65\x72\x76\x65\x72\x73\x3a\x5f\x73\x65\x72\x76\x65\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3a\x5f\x73\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x3a\x5f\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x43\x61\x6c\x6c\x62\x61\x63\x6b\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x43\x61\x6c\x6c\x62\x61\x63\x6b\x73\x28\x70\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x3d\x70\x72\x6f\x70\x73\x2e\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x2c\x74\x72\x75\x65\x29\x3b\x69\x66\x28\x21\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x4e\x6f\x20\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x22\x29\x7d\x76\x61\x72\x20\x63\x61\x6c\x6c\x62\x61\x63\x6b\x45\x6c\x65\x6d\x65\x6e\x74\x73\x3d\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x2c\x63\x61\x6c\x6c\x62\x61\x63\x6b\x4e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6b\x65\x79\x3a\x63\x61\x6c\x6c\x62\x61\x63\x6b\x4e\x61\x6d\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x32\x22\x2c\x6e\x75\x6c\x6c\x2c\x63\x61\x6c\x6c\x62\x61\x63\x6b\x4e\x61\x6d\x65\x29\x2c\x63\x61\x6c\x6c\x62\x61\x63\x6b\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x74\x68\x49\x74\x65\x6d\x2c\x70\x61\x74\x68\x49\x74\x65\x6d\x4e\x61\x6d\x65\x29\x7b\x69\x66\x28\x70\x61\x74\x68\x49\x74\x65\x6d\x4e\x61\x6d\x65\x3d\x3d\x3d\x22\x24\x24\x72\x65\x66\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6b\x65\x79\x3a\x70\x61\x74\x68\x49\x74\x65\x6d\x4e\x61\x6d\x65\x7d\x2c\x70\x61\x74\x68\x49\x74\x65\x6d\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x69\x66\x28\x6d\x65\x74\x68\x6f\x64\x3d\x3d\x3d\x22\x24\x24\x72\x65\x66\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x76\x61\x72\x20\x6f\x70\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x70\x72\x6f\x70\x73\x2c\x7b\x6f\x70\x3a\x6f\x70\x2c\x6b\x65\x79\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x74\x61\x67\x3a\x22\x22\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x49\x74\x65\x6d\x4e\x61\x6d\x65\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x4e\x61\x6d\x65\x2c\x70\x61\x74\x68\x49\x74\x65\x6d\x4e\x61\x6d\x65\x2c\x6d\x65\x74\x68\x6f\x64\x29\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3a\x66\x61\x6c\x73\x65\x7d\x29\x29\x7d\x29\x29\x7d\x29\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x63\x61\x6c\x6c\x62\x61\x63\x6b\x45\x6c\x65\x6d\x65\x6e\x74\x73\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x43\x61\x6c\x6c\x62\x61\x63\x6b\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x44\x65\x66\x61\x75\x6c\x74\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x28\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2c\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x2c\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x29\x7b\x76\x61\x72\x20\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x3d\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x2c\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x5d\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x76\x61\x72\x20\x65\x78\x61\x6d\x70\x6c\x65\x3d\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x29\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x29\x29\x3a\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x56\x61\x6c\x75\x65\x3d\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x2c\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x2c\x22\x76\x61\x6c\x75\x65\x22\x5d\x29\x3b\x69\x66\x28\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x56\x61\x6c\x75\x65\x29\x7c\x7c\x22\x22\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x65\x78\x61\x6d\x70\x6c\x65\x7c\x7c\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x53\x61\x6d\x70\x6c\x65\x53\x63\x68\x65\x6d\x61\x29\x28\x73\x63\x68\x65\x6d\x61\x2c\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x2c\x7b\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x3a\x74\x72\x75\x65\x7d\x29\x7c\x7c\x22\x22\x29\x7d\x7d\x76\x61\x72\x20\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3d\x5f\x72\x65\x66\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2c\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x66\x6e\x3d\x5f\x72\x65\x66\x2e\x66\x6e\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x5f\x72\x65\x66\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3d\x5f\x72\x65\x66\x2e\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x72\x65\x66\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x5f\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x72\x65\x66\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3d\x5f\x72\x65\x66\x2e\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x2c\x75\x70\x64\x61\x74\x65\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3d\x5f\x72\x65\x66\x2e\x75\x70\x64\x61\x74\x65\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3b\x76\x61\x72\x20\x68\x61\x6e\x64\x6c\x65\x46\x69\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x6e\x64\x6c\x65\x46\x69\x6c\x65\x28\x65\x29\x7b\x5f\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x66\x69\x6c\x65\x73\x5b\x30\x5d\x29\x7d\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x6d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x22\x29\x3b\x76\x61\x72\x20\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x22\x29\x3b\x76\x61\x72\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x22\x29\x3b\x76\x61\x72\x20\x45\x78\x61\x6d\x70\x6c\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x45\x78\x61\x6d\x70\x6c\x65\x22\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x73\x68\x6f\x77\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x68\x6f\x77\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x26\x26\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x7c\x7c\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x26\x26\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x29\x7c\x7c\x6e\x65\x77\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x3b\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x7c\x7c\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x43\x6f\x6e\x74\x65\x6e\x74\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x2e\x66\x69\x72\x73\x74\x28\x29\x7c\x7c\x22\x22\x3b\x76\x61\x72\x20\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x3d\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x43\x6f\x6e\x74\x65\x6e\x74\x2e\x67\x65\x74\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3d\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x76\x61\x72\x20\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3d\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x76\x61\x72\x20\x68\x61\x6e\x64\x6c\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x6e\x64\x6c\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x28\x6b\x65\x79\x29\x7b\x75\x70\x64\x61\x74\x65\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x28\x6b\x65\x79\x29\x7d\x3b\x69\x66\x28\x21\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x73\x69\x7a\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x22\x74\x79\x70\x65\x22\x5d\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x3b\x69\x66\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x3d\x3d\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x6f\x63\x74\x65\x74\x2d\x73\x74\x72\x65\x61\x6d\x22\x7c\x7c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x69\x6d\x61\x67\x65\x2f\x22\x29\x3d\x3d\x3d\x30\x7c\x7c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x61\x75\x64\x69\x6f\x2f\x22\x29\x3d\x3d\x3d\x30\x7c\x7c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x76\x69\x64\x65\x6f\x2f\x22\x29\x3d\x3d\x3d\x30\x29\x7b\x76\x61\x72\x20\x49\x6e\x70\x75\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x70\x75\x74\x22\x29\x3b\x69\x66\x28\x21\x69\x73\x45\x78\x65\x63\x75\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x45\x78\x61\x6d\x70\x6c\x65\x20\x76\x61\x6c\x75\x65\x73\x20\x61\x72\x65\x20\x6e\x6f\x74\x20\x61\x76\x61\x69\x6c\x61\x62\x6c\x65\x20\x66\x6f\x72\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x6f\x63\x74\x65\x74\x2d\x73\x74\x72\x65\x61\x6d\x22\x29\x2c\x22\x20\x6d\x65\x64\x69\x61\x20\x74\x79\x70\x65\x73\x2e\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x74\x79\x70\x65\x3a\x22\x66\x69\x6c\x65\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x68\x61\x6e\x64\x6c\x65\x46\x69\x6c\x65\x7d\x29\x7d\x69\x66\x28\x69\x73\x4f\x62\x6a\x65\x63\x74\x43\x6f\x6e\x74\x65\x6e\x74\x26\x26\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x3d\x3d\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x78\x2d\x77\x77\x77\x2d\x66\x6f\x72\x6d\x2d\x75\x72\x6c\x65\x6e\x63\x6f\x64\x65\x64\x22\x7c\x7c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x6d\x75\x6c\x74\x69\x70\x61\x72\x74\x2f\x22\x29\x3d\x3d\x3d\x30\x29\x26\x26\x73\x63\x68\x65\x6d\x61\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x22\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x2e\x73\x69\x7a\x65\x3e\x30\x29\x7b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x22\x29\x3b\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x22\x29\x3b\x76\x61\x72\x20\x62\x6f\x64\x79\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x73\x63\x68\x65\x6d\x61\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x22\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x29\x3b\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x3d\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x29\x3f\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x6c\x65\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x61\x62\x6c\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x62\x6f\x64\x79\x22\x2c\x6e\x75\x6c\x6c\x2c\x62\x6f\x64\x79\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x70\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x63\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x3d\x73\x68\x6f\x77\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3f\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x29\x28\x70\x72\x6f\x70\x29\x3a\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x69\x72\x65\x64\x3d\x73\x63\x68\x65\x6d\x61\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x2e\x69\x6e\x63\x6c\x75\x64\x65\x73\x28\x6b\x65\x79\x29\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x70\x72\x6f\x70\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3b\x76\x61\x72\x20\x66\x6f\x72\x6d\x61\x74\x3d\x70\x72\x6f\x70\x2e\x67\x65\x74\x28\x22\x66\x6f\x72\x6d\x61\x74\x22\x29\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x70\x72\x6f\x70\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x56\x61\x6c\x75\x65\x3d\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x6b\x65\x79\x29\x3b\x76\x61\x72\x20\x69\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x3d\x70\x72\x6f\x70\x2e\x67\x65\x74\x28\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x29\x7c\x7c\x70\x72\x6f\x70\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x29\x7c\x7c\x22\x22\x3b\x69\x66\x28\x69\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x22\x26\x26\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x69\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x53\x61\x6d\x70\x6c\x65\x53\x63\x68\x65\x6d\x61\x29\x28\x70\x72\x6f\x70\x2c\x66\x61\x6c\x73\x65\x2c\x7b\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x3a\x74\x72\x75\x65\x7d\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x26\x26\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x69\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x69\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x29\x7d\x76\x61\x72\x20\x69\x73\x46\x69\x6c\x65\x3d\x74\x79\x70\x65\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x26\x26\x28\x66\x6f\x72\x6d\x61\x74\x3d\x3d\x3d\x22\x62\x69\x6e\x61\x72\x79\x22\x7c\x7c\x66\x6f\x72\x6d\x61\x74\x3d\x3d\x3d\x22\x62\x61\x73\x65\x36\x34\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x22\x64\x61\x74\x61\x2d\x70\x72\x6f\x70\x65\x72\x74\x79\x2d\x6e\x61\x6d\x65\x22\x3a\x6b\x65\x79\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2d\x63\x6f\x6c\x5f\x6e\x61\x6d\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x72\x65\x71\x75\x69\x72\x65\x64\x3f\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x6e\x61\x6d\x65\x20\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x6e\x61\x6d\x65\x22\x7d\x2c\x6b\x65\x79\x2c\x21\x72\x65\x71\x75\x69\x72\x65\x64\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x63\x6f\x6c\x6f\x72\x3a\x22\x72\x65\x64\x22\x7d\x7d\x2c\x22\xc2\xa0\x2a\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x74\x79\x70\x65\x22\x7d\x2c\x74\x79\x70\x65\x2c\x66\x6f\x72\x6d\x61\x74\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x72\x6f\x70\x2d\x66\x6f\x72\x6d\x61\x74\x22\x7d\x2c\x22\x28\x24\x22\x2c\x66\x6f\x72\x6d\x61\x74\x2c\x22\x29\x22\x29\x2c\x21\x73\x68\x6f\x77\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x7c\x7c\x21\x63\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x2e\x73\x69\x7a\x65\x3f\x6e\x75\x6c\x6c\x3a\x63\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2b\x22\x2d\x22\x2b\x76\x2c\x78\x4b\x65\x79\x3a\x6b\x65\x79\x2c\x78\x56\x61\x6c\x3a\x76\x7d\x29\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x7d\x2c\x70\x72\x6f\x70\x2e\x67\x65\x74\x28\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x29\x3f\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x3a\x6e\x75\x6c\x6c\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2d\x63\x6f\x6c\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x2c\x7b\x66\x6e\x3a\x66\x6e\x2c\x64\x69\x73\x70\x61\x74\x63\x68\x49\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x3a\x21\x69\x73\x46\x69\x6c\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x70\x72\x6f\x70\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3a\x6b\x65\x79\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x76\x61\x6c\x75\x65\x3a\x63\x75\x72\x72\x65\x6e\x74\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x69\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x3a\x63\x75\x72\x72\x65\x6e\x74\x56\x61\x6c\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x5f\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x75\x65\x2c\x5b\x6b\x65\x79\x5d\x29\x7d\x7d\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x29\x7d\x29\x29\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x2c\x7b\x65\x78\x61\x6d\x70\x6c\x65\x73\x3a\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2c\x63\x75\x72\x72\x65\x6e\x74\x4b\x65\x79\x3a\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x2c\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3a\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x2c\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3a\x68\x61\x6e\x64\x6c\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x2c\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x3a\x5f\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x64\x65\x66\x61\x75\x6c\x74\x54\x6f\x46\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x3a\x74\x72\x75\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x2c\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3a\x67\x65\x74\x44\x65\x66\x61\x75\x6c\x74\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x28\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x29\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x5f\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x2c\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3a\x31\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3a\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x6d\x65\x64\x69\x61\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x2c\x65\x78\x61\x6d\x70\x6c\x65\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x5f\x5f\x65\x78\x61\x6d\x70\x6c\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x29\x7c\x7c\x67\x65\x74\x44\x65\x66\x61\x75\x6c\x74\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x28\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x29\x7d\x29\x7d\x29\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x78\x61\x6d\x70\x6c\x65\x2c\x7b\x65\x78\x61\x6d\x70\x6c\x65\x3a\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x29\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6c\x69\x6e\x6b\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x69\x6e\x6b\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x4f\x70\x3d\x6c\x69\x6e\x6b\x2e\x67\x65\x74\x28\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x22\x29\x7c\x7c\x6c\x69\x6e\x6b\x2e\x67\x65\x74\x28\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x52\x65\x66\x22\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x6c\x69\x6e\x6b\x2e\x67\x65\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x26\x26\x6c\x69\x6e\x6b\x2e\x67\x65\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x6c\x69\x6e\x6b\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x6d\x61\x72\x67\x69\x6e\x42\x6f\x74\x74\x6f\x6d\x3a\x22\x31\x2e\x35\x65\x6d\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x6d\x61\x72\x67\x69\x6e\x42\x6f\x74\x74\x6f\x6d\x3a\x22\x2e\x35\x65\x6d\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x6e\x61\x6d\x65\x29\x29\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x3a\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x20\x60\x22\x2c\x74\x61\x72\x67\x65\x74\x4f\x70\x2c\x22\x60\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x72\x22\x2c\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x72\x22\x2c\x6e\x75\x6c\x6c\x29\x2c\x22\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x20\x22\x2c\x70\x61\x64\x53\x74\x72\x69\x6e\x67\x28\x30\x2c\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x6e\x75\x6c\x6c\x2c\x32\x29\x29\x7c\x7c\x22\x7b\x7d\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x72\x22\x2c\x6e\x75\x6c\x6c\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x64\x53\x74\x72\x69\x6e\x67\x28\x6e\x2c\x73\x74\x72\x69\x6e\x67\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x74\x72\x69\x6e\x67\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x22\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x2e\x73\x70\x6c\x69\x74\x28\x22\x5c\x6e\x22\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6c\x69\x6e\x65\x2c\x69\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x3e\x30\x3f\x41\x72\x72\x61\x79\x28\x6e\x2b\x31\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x20\x22\x29\x2b\x6c\x69\x6e\x65\x3a\x6c\x69\x6e\x65\x7d\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x5c\x6e\x22\x29\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x53\x65\x72\x76\x65\x72\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x65\x72\x76\x65\x72\x73\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x65\x72\x76\x65\x72\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x53\x65\x72\x76\x65\x72\x73\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x53\x65\x72\x76\x65\x72\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x65\x72\x76\x65\x72\x73\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x53\x65\x72\x76\x65\x72\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x28\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x29\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x2c\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x3b\x76\x61\x72\x20\x76\x61\x72\x69\x61\x62\x6c\x65\x4e\x61\x6d\x65\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x64\x61\x74\x61\x2d\x76\x61\x72\x69\x61\x62\x6c\x65\x22\x29\x3b\x76\x61\x72\x20\x6e\x65\x77\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x28\x7b\x73\x65\x72\x76\x65\x72\x3a\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x2c\x6b\x65\x79\x3a\x76\x61\x72\x69\x61\x62\x6c\x65\x4e\x61\x6d\x65\x2c\x76\x61\x6c\x3a\x6e\x65\x77\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x7d\x29\x7d\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3b\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x65\x72\x76\x65\x72\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x65\x72\x76\x65\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x65\x72\x76\x65\x72\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x3b\x69\x66\x28\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x28\x73\x65\x72\x76\x65\x72\x73\x2e\x66\x69\x72\x73\x74\x28\x29\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x65\x72\x76\x65\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x65\x72\x76\x65\x72\x73\x2c\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x2c\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x21\x3d\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x29\x7b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x3d\x73\x65\x72\x76\x65\x72\x73\x2e\x66\x69\x6e\x64\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x3d\x3d\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x7d\x29\x3b\x69\x66\x28\x21\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x28\x73\x65\x72\x76\x65\x72\x73\x2e\x66\x69\x72\x73\x74\x28\x29\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x29\x7d\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x44\x65\x66\x73\x3d\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x76\x61\x72\x69\x61\x62\x6c\x65\x73\x22\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x3b\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x44\x65\x66\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x56\x61\x6c\x75\x65\x3d\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x2c\x6b\x65\x79\x29\x3b\x69\x66\x28\x21\x63\x75\x72\x72\x65\x6e\x74\x56\x61\x6c\x75\x65\x29\x7b\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x28\x7b\x73\x65\x72\x76\x65\x72\x3a\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x2c\x6b\x65\x79\x3a\x6b\x65\x79\x2c\x76\x61\x6c\x3a\x76\x61\x6c\x2e\x67\x65\x74\x28\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x29\x7c\x7c\x22\x22\x7d\x29\x7d\x7d\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x33\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x65\x72\x76\x65\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x73\x65\x72\x76\x65\x72\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x2c\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x2c\x67\x65\x74\x45\x66\x66\x65\x63\x74\x69\x76\x65\x53\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x67\x65\x74\x45\x66\x66\x65\x63\x74\x69\x76\x65\x53\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x3d\x73\x65\x72\x76\x65\x72\x73\x2e\x66\x69\x6e\x64\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x3d\x3d\x3d\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x7d\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x44\x65\x66\x73\x3d\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x76\x61\x72\x69\x61\x62\x6c\x65\x73\x22\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x3b\x76\x61\x72\x20\x73\x68\x6f\x75\x6c\x64\x53\x68\x6f\x77\x56\x61\x72\x69\x61\x62\x6c\x65\x55\x49\x3d\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x44\x65\x66\x73\x2e\x73\x69\x7a\x65\x21\x3d\x3d\x30\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x73\x65\x72\x76\x65\x72\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x7b\x68\x74\x6d\x6c\x46\x6f\x72\x3a\x22\x73\x65\x72\x76\x65\x72\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x6c\x65\x63\x74\x22\x2c\x7b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x53\x65\x72\x76\x65\x72\x43\x68\x61\x6e\x67\x65\x7d\x2c\x73\x65\x72\x76\x65\x72\x73\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x72\x76\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x73\x65\x72\x76\x65\x72\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x2c\x6b\x65\x79\x3a\x73\x65\x72\x76\x65\x72\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x7d\x2c\x73\x65\x72\x76\x65\x72\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x2c\x73\x65\x72\x76\x65\x72\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x26\x26\x22\x20\x2d\x20\x22\x2b\x73\x65\x72\x76\x65\x72\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x29\x2c\x73\x68\x6f\x75\x6c\x64\x53\x68\x6f\x77\x56\x61\x72\x69\x61\x62\x6c\x65\x55\x49\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6d\x70\x75\x74\x65\x64\x2d\x75\x72\x6c\x22\x7d\x2c\x22\x43\x6f\x6d\x70\x75\x74\x65\x64\x20\x55\x52\x4c\x3a\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x67\x65\x74\x45\x66\x66\x65\x63\x74\x69\x76\x65\x53\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x28\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x53\x65\x72\x76\x65\x72\x20\x76\x61\x72\x69\x61\x62\x6c\x65\x73\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x61\x62\x6c\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x62\x6f\x64\x79\x22\x2c\x6e\x75\x6c\x6c\x2c\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x44\x65\x66\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x2c\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x6b\x65\x79\x3a\x6e\x61\x6d\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x6e\x61\x6d\x65\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x76\x61\x6c\x2e\x67\x65\x74\x28\x22\x65\x6e\x75\x6d\x22\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x6c\x65\x63\x74\x22\x2c\x7b\x22\x64\x61\x74\x61\x2d\x76\x61\x72\x69\x61\x62\x6c\x65\x22\x3a\x6e\x61\x6d\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x43\x68\x61\x6e\x67\x65\x7d\x2c\x76\x61\x6c\x2e\x67\x65\x74\x28\x22\x65\x6e\x75\x6d\x22\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x73\x65\x6c\x65\x63\x74\x65\x64\x3a\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x28\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x29\x2c\x6b\x65\x79\x3a\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x2c\x76\x61\x6c\x75\x65\x3a\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x7d\x2c\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x29\x7d\x29\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6e\x70\x75\x74\x22\x2c\x7b\x74\x79\x70\x65\x3a\x22\x74\x65\x78\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x28\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x29\x7c\x7c\x22\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x43\x68\x61\x6e\x67\x65\x2c\x22\x64\x61\x74\x61\x2d\x76\x61\x72\x69\x61\x62\x6c\x65\x22\x3a\x6e\x61\x6d\x65\x7d\x29\x29\x29\x7d\x29\x29\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x53\x65\x72\x76\x65\x72\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x53\x65\x72\x76\x65\x72\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x72\x76\x65\x72\x73\x28\x29\x3b\x76\x61\x72\x20\x53\x65\x72\x76\x65\x72\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x53\x65\x72\x76\x65\x72\x73\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x72\x76\x65\x72\x73\x26\x26\x73\x65\x72\x76\x65\x72\x73\x2e\x73\x69\x7a\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x73\x65\x72\x76\x65\x72\x73\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x53\x65\x72\x76\x65\x72\x73\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x65\x72\x76\x65\x72\x73\x2c\x7b\x73\x65\x72\x76\x65\x72\x73\x3a\x73\x65\x72\x76\x65\x72\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x28\x29\x2c\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x2c\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x2c\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x2c\x67\x65\x74\x45\x66\x66\x65\x63\x74\x69\x76\x65\x53\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x72\x76\x65\x72\x45\x66\x66\x65\x63\x74\x69\x76\x65\x56\x61\x6c\x75\x65\x7d\x29\x29\x3a\x6e\x75\x6c\x6c\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4e\x4f\x4f\x50\x3d\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x2c\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x61\x70\x70\x6c\x79\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x3f\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x3a\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x72\x65\x66\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x2e\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x76\x61\x6c\x75\x65\x29\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x44\x6f\x6d\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x69\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x3b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x69\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x69\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x29\x7d\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x76\x61\x6c\x75\x65\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x29\x7c\x7c\x70\x72\x6f\x70\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x7d\x3b\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x21\x3d\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x26\x26\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x21\x3d\x3d\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x29\x7b\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x29\x7d\x29\x7d\x69\x66\x28\x21\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x26\x26\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x26\x26\x21\x21\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x29\x7b\x74\x68\x69\x73\x2e\x61\x70\x70\x6c\x79\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x54\x65\x78\x74\x41\x72\x65\x61\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x54\x65\x78\x74\x41\x72\x65\x61\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x54\x65\x78\x74\x41\x72\x65\x61\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x5f\x5f\x74\x65\x78\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x44\x6f\x6d\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x4e\x4f\x4f\x50\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x45\x64\x69\x74\x6f\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x48\x74\x74\x70\x41\x75\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x48\x74\x74\x70\x41\x75\x74\x68\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x48\x74\x74\x70\x41\x75\x74\x68\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x48\x74\x74\x70\x41\x75\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x48\x74\x74\x70\x41\x75\x74\x68\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x48\x74\x74\x70\x41\x75\x74\x68\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x2e\x63\x61\x6c\x6c\x28\x5f\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x29\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x48\x74\x74\x70\x41\x75\x74\x68\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x56\x61\x6c\x75\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x26\x26\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2e\x67\x65\x74\x49\x6e\x28\x5b\x6e\x61\x6d\x65\x2c\x22\x76\x61\x6c\x75\x65\x22\x5d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x63\x68\x65\x6d\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x49\x6e\x70\x75\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x70\x75\x74\x22\x29\x3b\x76\x61\x72\x20\x52\x6f\x77\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x52\x6f\x77\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x22\x29\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x61\x75\x74\x68\x45\x72\x72\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x65\x3d\x28\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x65\x22\x29\x7c\x7c\x22\x22\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x29\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x28\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x49\x64\x22\x29\x3d\x3d\x3d\x6e\x61\x6d\x65\x7d\x29\x3b\x69\x66\x28\x73\x63\x68\x65\x6d\x65\x3d\x3d\x3d\x22\x62\x61\x73\x69\x63\x22\x29\x7b\x76\x61\x72\x20\x75\x73\x65\x72\x6e\x61\x6d\x65\x3d\x76\x61\x6c\x75\x65\x3f\x76\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x22\x75\x73\x65\x72\x6e\x61\x6d\x65\x22\x29\x3a\x6e\x75\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x6e\x61\x6d\x65\x7c\x7c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x29\x2c\x22\xc2\xa0\x20\x28\x68\x74\x74\x70\x2c\x20\x42\x61\x73\x69\x63\x29\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x7b\x70\x61\x74\x68\x3a\x5b\x22\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x7d\x29\x29\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x36\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x55\x73\x65\x72\x6e\x61\x6d\x65\x3a\x22\x29\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x22\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x2c\x22\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x74\x79\x70\x65\x3a\x22\x74\x65\x78\x74\x22\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x2c\x6e\x61\x6d\x65\x3a\x22\x75\x73\x65\x72\x6e\x61\x6d\x65\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x50\x61\x73\x73\x77\x6f\x72\x64\x3a\x22\x29\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x2a\x2a\x2a\x2a\x2a\x2a\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x2c\x61\x75\x74\x6f\x43\x6f\x6d\x70\x6c\x65\x74\x65\x3a\x22\x6e\x65\x77\x2d\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x6e\x61\x6d\x65\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x74\x79\x70\x65\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x65\x72\x72\x6f\x72\x73\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x2c\x7b\x65\x72\x72\x6f\x72\x3a\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x3a\x6b\x65\x79\x7d\x29\x7d\x29\x29\x7d\x69\x66\x28\x73\x63\x68\x65\x6d\x65\x3d\x3d\x3d\x22\x62\x65\x61\x72\x65\x72\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x6e\x61\x6d\x65\x7c\x7c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x29\x2c\x22\xc2\xa0\x20\x28\x68\x74\x74\x70\x2c\x20\x42\x65\x61\x72\x65\x72\x29\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x7b\x70\x61\x74\x68\x3a\x5b\x22\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x7d\x29\x29\x2c\x76\x61\x6c\x75\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x36\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x56\x61\x6c\x75\x65\x3a\x22\x29\x2c\x76\x61\x6c\x75\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x2a\x2a\x2a\x2a\x2a\x2a\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x74\x79\x70\x65\x3a\x22\x74\x65\x78\x74\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x65\x72\x72\x6f\x72\x73\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x2c\x7b\x65\x72\x72\x6f\x72\x3a\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x3a\x6b\x65\x79\x7d\x29\x7d\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x65\x6d\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x22\x2c\x6e\x75\x6c\x6c\x2c\x6e\x61\x6d\x65\x29\x2c\x22\x20\x48\x54\x54\x50\x20\x61\x75\x74\x68\x65\x6e\x74\x69\x63\x61\x74\x69\x6f\x6e\x3a\x20\x75\x6e\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x20\x73\x63\x68\x65\x6d\x65\x20\x22\x2c\x22\x27\x22\x2b\x73\x63\x68\x65\x6d\x65\x2b\x22\x27\x22\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x48\x74\x74\x70\x41\x75\x74\x68\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3b\x76\x61\x72\x20\x5f\x65\x24\x74\x61\x72\x67\x65\x74\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x65\x24\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x2c\x6e\x61\x6d\x65\x3d\x5f\x65\x24\x74\x61\x72\x67\x65\x74\x2e\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x6e\x61\x6d\x65\x29\x7b\x6e\x65\x77\x56\x61\x6c\x75\x65\x5b\x6e\x61\x6d\x65\x5d\x3d\x76\x61\x6c\x75\x65\x7d\x65\x6c\x73\x65\x7b\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x76\x61\x6c\x75\x65\x7d\x5f\x74\x68\x69\x73\x32\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x6e\x65\x77\x56\x61\x6c\x75\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x29\x7d\x29\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x48\x74\x74\x70\x41\x75\x74\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x72\x76\x65\x72\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x5f\x74\x68\x69\x73\x2e\x66\x6f\x72\x63\x65\x55\x70\x64\x61\x74\x65\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x28\x73\x65\x72\x76\x65\x72\x2c\x70\x61\x74\x68\x2b\x22\x3a\x22\x2b\x6d\x65\x74\x68\x6f\x64\x29\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x5f\x74\x68\x69\x73\x2e\x66\x6f\x72\x63\x65\x55\x70\x64\x61\x74\x65\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x28\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6f\x62\x6a\x2c\x7b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3a\x70\x61\x74\x68\x2b\x22\x3a\x22\x2b\x6d\x65\x74\x68\x6f\x64\x7d\x29\x29\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x28\x70\x61\x74\x68\x2b\x22\x3a\x22\x2b\x6d\x65\x74\x68\x6f\x64\x29\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x72\x76\x65\x72\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x34\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x34\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x34\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x28\x7b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3a\x70\x61\x74\x68\x2b\x22\x3a\x22\x2b\x6d\x65\x74\x68\x6f\x64\x2c\x73\x65\x72\x76\x65\x72\x3a\x73\x65\x72\x76\x65\x72\x7d\x2c\x6b\x65\x79\x29\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x45\x66\x66\x65\x63\x74\x69\x76\x65\x53\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x72\x76\x65\x72\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x35\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x35\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x35\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x45\x66\x66\x65\x63\x74\x69\x76\x65\x53\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x28\x7b\x73\x65\x72\x76\x65\x72\x3a\x73\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3a\x70\x61\x74\x68\x2b\x22\x3a\x22\x2b\x6d\x65\x74\x68\x6f\x64\x7d\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x2c\x70\x61\x74\x68\x53\x65\x72\x76\x65\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x53\x65\x72\x76\x65\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x69\x66\x28\x21\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x26\x26\x21\x70\x61\x74\x68\x53\x65\x72\x76\x65\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x76\x61\x72\x20\x53\x65\x72\x76\x65\x72\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x53\x65\x72\x76\x65\x72\x73\x22\x29\x3b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x73\x54\x6f\x44\x69\x73\x70\x6c\x61\x79\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x7c\x7c\x70\x61\x74\x68\x53\x65\x72\x76\x65\x72\x73\x3b\x76\x61\x72\x20\x64\x69\x73\x70\x6c\x61\x79\x69\x6e\x67\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x3f\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x3a\x22\x70\x61\x74\x68\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2d\x73\x65\x72\x76\x65\x72\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x53\x65\x72\x76\x65\x72\x73\x22\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x7d\x2c\x22\x54\x68\x65\x73\x65\x20\x22\x2c\x64\x69\x73\x70\x6c\x61\x79\x69\x6e\x67\x2c\x22\x2d\x6c\x65\x76\x65\x6c\x20\x6f\x70\x74\x69\x6f\x6e\x73\x20\x6f\x76\x65\x72\x72\x69\x64\x65\x20\x74\x68\x65\x20\x67\x6c\x6f\x62\x61\x6c\x20\x73\x65\x72\x76\x65\x72\x20\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x65\x72\x76\x65\x72\x73\x2c\x7b\x73\x65\x72\x76\x65\x72\x73\x3a\x73\x65\x72\x76\x65\x72\x73\x54\x6f\x44\x69\x73\x70\x6c\x61\x79\x2c\x63\x75\x72\x72\x65\x6e\x74\x53\x65\x72\x76\x65\x72\x3a\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x28\x29\x2c\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3a\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x2c\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3a\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x2c\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x3a\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x2c\x67\x65\x74\x45\x66\x66\x65\x63\x74\x69\x76\x65\x53\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3a\x74\x68\x69\x73\x2e\x67\x65\x74\x45\x66\x66\x65\x63\x74\x69\x76\x65\x53\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x7d\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x36\x29\x3b\x76\x61\x72\x20\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x49\x74\x65\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x37\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x49\x74\x65\x6d\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x75\x74\x68\x49\x74\x65\x6d\x29\x3b\x76\x61\x72\x20\x5f\x76\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x38\x29\x3b\x76\x61\x72\x20\x5f\x76\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x76\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x29\x3b\x76\x61\x72\x20\x5f\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x39\x29\x3b\x76\x61\x72\x20\x5f\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x30\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x6f\x64\x65\x6c\x29\x3b\x76\x61\x72\x20\x5f\x6a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x31\x29\x3b\x76\x61\x72\x20\x5f\x6a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x53\x74\x72\x69\x6e\x67\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x53\x74\x72\x69\x6e\x67\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x7b\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3a\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x41\x75\x74\x68\x49\x74\x65\x6d\x3a\x5f\x61\x75\x74\x68\x49\x74\x65\x6d\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x3a\x5f\x6a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x53\x74\x72\x69\x6e\x67\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x56\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x3a\x5f\x76\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6d\x6f\x64\x65\x6c\x3a\x5f\x6d\x6f\x64\x65\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x3a\x5f\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x39\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x6d\x61\x72\x6b\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x31\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x6d\x61\x72\x6b\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x6d\x61\x72\x6b\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x76\x61\x72\x20\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x30\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x70\x61\x72\x73\x65\x72\x3d\x6e\x65\x77\x20\x5f\x72\x65\x6d\x61\x72\x6b\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x28\x22\x63\x6f\x6d\x6d\x6f\x6e\x6d\x61\x72\x6b\x22\x29\x3b\x70\x61\x72\x73\x65\x72\x2e\x62\x6c\x6f\x63\x6b\x2e\x72\x75\x6c\x65\x72\x2e\x65\x6e\x61\x62\x6c\x65\x28\x5b\x22\x74\x61\x62\x6c\x65\x22\x5d\x29\x3b\x70\x61\x72\x73\x65\x72\x2e\x73\x65\x74\x28\x7b\x6c\x69\x6e\x6b\x54\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x7d\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x73\x6f\x75\x72\x63\x65\x3d\x5f\x72\x65\x66\x2e\x73\x6f\x75\x72\x63\x65\x2c\x5f\x72\x65\x66\x24\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x24\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x22\x3a\x5f\x72\x65\x66\x24\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x6f\x75\x72\x63\x65\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x69\x66\x28\x73\x6f\x75\x72\x63\x65\x29\x7b\x76\x61\x72\x20\x68\x74\x6d\x6c\x3d\x70\x61\x72\x73\x65\x72\x2e\x72\x65\x6e\x64\x65\x72\x28\x73\x6f\x75\x72\x63\x65\x29\x3b\x76\x61\x72\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x3d\x28\x30\x2c\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x72\x29\x28\x68\x74\x6d\x6c\x29\x3b\x76\x61\x72\x20\x74\x72\x69\x6d\x6d\x65\x64\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x74\x72\x69\x6d\x6d\x65\x64\x3d\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x2e\x74\x72\x69\x6d\x28\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x64\x61\x6e\x67\x65\x72\x6f\x75\x73\x6c\x79\x53\x65\x74\x49\x6e\x6e\x65\x72\x48\x54\x4d\x4c\x3a\x7b\x5f\x5f\x68\x74\x6d\x6c\x3a\x74\x72\x69\x6d\x6d\x65\x64\x7d\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x22\x72\x65\x6e\x64\x65\x72\x65\x64\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x4f\x41\x53\x33\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x72\x61\x70\x46\x61\x63\x74\x6f\x72\x79\x29\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x34\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x4f\x41\x53\x33\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x72\x61\x70\x46\x61\x63\x74\x6f\x72\x79\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x4f\x72\x69\x3d\x5f\x72\x65\x66\x2e\x4f\x72\x69\x2c\x70\x72\x6f\x70\x73\x3d\x28\x30\x2c\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x2c\x5b\x22\x4f\x72\x69\x22\x5d\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x70\x72\x6f\x70\x73\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x3d\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x2c\x6e\x61\x6d\x65\x3d\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x48\x74\x74\x70\x41\x75\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x48\x74\x74\x70\x41\x75\x74\x68\x22\x29\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x68\x74\x74\x70\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x74\x74\x70\x41\x75\x74\x68\x2c\x7b\x6b\x65\x79\x3a\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x72\x69\x2c\x70\x72\x6f\x70\x73\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x4f\x41\x53\x33\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x72\x61\x70\x46\x61\x63\x74\x6f\x72\x79\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x4f\x72\x69\x3d\x70\x72\x6f\x70\x73\x2e\x4f\x72\x69\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x72\x69\x2c\x70\x72\x6f\x70\x73\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x62\x61\x63\x6b\x67\x72\x6f\x75\x6e\x64\x43\x6f\x6c\x6f\x72\x3a\x22\x23\x38\x39\x62\x66\x30\x34\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x76\x65\x72\x73\x69\x6f\x6e\x22\x7d\x2c\x22\x4f\x41\x53\x33\x22\x29\x29\x29\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x4f\x41\x53\x33\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x72\x61\x70\x46\x61\x63\x74\x6f\x72\x79\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x39\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4d\x6f\x64\x65\x6c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x3b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x65\x73\x3d\x5b\x22\x6d\x6f\x64\x65\x6c\x2d\x62\x6f\x78\x22\x5d\x3b\x76\x61\x72\x20\x69\x73\x44\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x29\x3d\x3d\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x6d\x65\x73\x73\x61\x67\x65\x3d\x6e\x75\x6c\x6c\x3b\x69\x66\x28\x69\x73\x44\x65\x70\x72\x65\x63\x61\x74\x65\x64\x29\x7b\x63\x6c\x61\x73\x73\x65\x73\x2e\x70\x75\x73\x68\x28\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x29\x3b\x6d\x65\x73\x73\x61\x67\x65\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2d\x77\x61\x72\x6e\x69\x6e\x67\x22\x7d\x2c\x22\x44\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3a\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x63\x6c\x61\x73\x73\x65\x73\x2e\x6a\x6f\x69\x6e\x28\x22\x20\x22\x29\x7d\x2c\x6d\x65\x73\x73\x61\x67\x65\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x5f\x6d\x6f\x64\x65\x6c\x2e\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x64\x65\x70\x74\x68\x3a\x31\x2c\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3a\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x7c\x7c\x30\x7d\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x4f\x41\x53\x33\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x72\x61\x70\x46\x61\x63\x74\x6f\x72\x79\x29\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x34\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x4f\x41\x53\x33\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x72\x61\x70\x46\x61\x63\x74\x6f\x72\x79\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x4f\x72\x69\x3d\x5f\x72\x65\x66\x2e\x4f\x72\x69\x2c\x70\x72\x6f\x70\x73\x3d\x28\x30\x2c\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x2c\x5b\x22\x4f\x72\x69\x22\x5d\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x65\x72\x72\x6f\x72\x73\x3d\x70\x72\x6f\x70\x73\x2e\x65\x72\x72\x6f\x72\x73\x2c\x5f\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x74\x79\x70\x65\x2c\x66\x6f\x72\x6d\x61\x74\x3d\x73\x63\x68\x65\x6d\x61\x2e\x66\x6f\x72\x6d\x61\x74\x3b\x76\x61\x72\x20\x49\x6e\x70\x75\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x70\x75\x74\x22\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x26\x26\x28\x66\x6f\x72\x6d\x61\x74\x3d\x3d\x3d\x22\x62\x69\x6e\x61\x72\x79\x22\x7c\x7c\x66\x6f\x72\x6d\x61\x74\x3d\x3d\x3d\x22\x62\x61\x73\x65\x36\x34\x22\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x74\x79\x70\x65\x3a\x22\x66\x69\x6c\x65\x22\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x22\x69\x6e\x76\x61\x6c\x69\x64\x22\x3a\x22\x22\x2c\x74\x69\x74\x6c\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x65\x72\x72\x6f\x72\x73\x3a\x22\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x65\x29\x7b\x5f\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x66\x69\x6c\x65\x73\x5b\x30\x5d\x29\x7d\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x4f\x72\x69\x2e\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x72\x69\x2c\x70\x72\x6f\x70\x73\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x45\x66\x66\x65\x63\x74\x69\x76\x65\x56\x61\x6c\x75\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x6c\x70\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x73\x65\x6c\x65\x63\x74\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x3d\x73\x79\x73\x74\x65\x6d\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x3b\x69\x66\x28\x28\x30\x2c\x5f\x68\x65\x6c\x70\x65\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x29\x28\x73\x70\x65\x63\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x73\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x7d\x7d\x7d\x76\x61\x72\x20\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x29\x7b\x76\x61\x72\x20\x70\x61\x74\x68\x3d\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3f\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x22\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x22\x5d\x3a\x5b\x22\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x22\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x70\x61\x74\x68\x29\x7c\x7c\x22\x22\x7d\x29\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x71\x75\x65\x73\x74\x44\x61\x74\x61\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x22\x62\x6f\x64\x79\x56\x61\x6c\x75\x65\x22\x5d\x29\x7c\x7c\x6e\x75\x6c\x6c\x7d\x29\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x74\x79\x70\x65\x2c\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x74\x79\x70\x65\x2c\x6e\x61\x6d\x65\x2c\x22\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x22\x5d\x29\x7c\x7c\x6e\x75\x6c\x6c\x7d\x29\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x71\x75\x65\x73\x74\x44\x61\x74\x61\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x22\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x5d\x29\x7c\x7c\x6e\x75\x6c\x6c\x7d\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x71\x75\x65\x73\x74\x44\x61\x74\x61\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x5d\x29\x7c\x7c\x6e\x75\x6c\x6c\x7d\x29\x3b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x70\x61\x74\x68\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x3d\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x2e\x73\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x2e\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3b\x69\x66\x28\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x29\x7b\x70\x61\x74\x68\x3d\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x73\x65\x72\x76\x65\x72\x2c\x6b\x65\x79\x5d\x7d\x65\x6c\x73\x65\x7b\x70\x61\x74\x68\x3d\x5b\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x73\x65\x72\x76\x65\x72\x2c\x6b\x65\x79\x5d\x7d\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x5f\x73\x65\x72\x76\x65\x72\x3d\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x3b\x70\x61\x74\x68\x3d\x5b\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x5f\x73\x65\x72\x76\x65\x72\x2c\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x70\x61\x74\x68\x29\x7c\x7c\x6e\x75\x6c\x6c\x7d\x29\x3b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x73\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x70\x61\x74\x68\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x3d\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x2e\x73\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x2e\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3b\x69\x66\x28\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x29\x7b\x70\x61\x74\x68\x3d\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x73\x65\x72\x76\x65\x72\x5d\x7d\x65\x6c\x73\x65\x7b\x70\x61\x74\x68\x3d\x5b\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x73\x65\x72\x76\x65\x72\x5d\x7d\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x5f\x73\x65\x72\x76\x65\x72\x32\x3d\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x3b\x70\x61\x74\x68\x3d\x5b\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x5f\x73\x65\x72\x76\x65\x72\x32\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x70\x61\x74\x68\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x7d\x29\x3b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x45\x66\x66\x65\x63\x74\x69\x76\x65\x56\x61\x6c\x75\x65\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x65\x72\x76\x65\x72\x45\x66\x66\x65\x63\x74\x69\x76\x65\x56\x61\x6c\x75\x65\x3d\x6f\x6e\x6c\x79\x4f\x41\x53\x33\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x76\x61\x72\x56\x61\x6c\x75\x65\x73\x2c\x73\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x3d\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x2e\x73\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x2e\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3b\x73\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3d\x73\x65\x72\x76\x65\x72\x3b\x69\x66\x28\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x29\x7b\x76\x61\x72\x56\x61\x6c\x75\x65\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x73\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x5d\x29\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x56\x61\x6c\x75\x65\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x73\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x5d\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x73\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3d\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x44\x61\x74\x61\x3b\x76\x61\x72\x56\x61\x6c\x75\x65\x73\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x73\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x5d\x29\x7d\x76\x61\x72\x56\x61\x6c\x75\x65\x73\x3d\x76\x61\x72\x56\x61\x6c\x75\x65\x73\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4f\x72\x64\x65\x72\x65\x64\x4d\x61\x70\x29\x28\x29\x3b\x76\x61\x72\x20\x73\x74\x72\x3d\x73\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x56\x61\x6c\x75\x65\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x2c\x6b\x65\x79\x29\x7b\x73\x74\x72\x3d\x73\x74\x72\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x22\x7b\x22\x2b\x6b\x65\x79\x2b\x22\x7d\x22\x2c\x22\x67\x22\x29\x2c\x76\x61\x6c\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x3d\x7b\x7d\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x45\x52\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x55\x72\x6c\x3d\x5f\x72\x65\x66\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x55\x72\x6c\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x5f\x72\x65\x66\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x3d\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3f\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x22\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x22\x5d\x3a\x5b\x22\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x22\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x70\x61\x74\x68\x2c\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x55\x72\x6c\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x51\x55\x45\x53\x54\x5f\x42\x4f\x44\x59\x5f\x56\x41\x4c\x55\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x32\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x32\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x32\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x32\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3b\x76\x61\x72\x20\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x32\x29\x2c\x70\x61\x74\x68\x3d\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x5b\x30\x5d\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x5b\x31\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x71\x75\x65\x73\x74\x44\x61\x74\x61\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x22\x62\x6f\x64\x79\x56\x61\x6c\x75\x65\x22\x5d\x2c\x76\x61\x6c\x75\x65\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x41\x43\x54\x49\x56\x45\x5f\x45\x58\x41\x4d\x50\x4c\x45\x53\x5f\x4d\x45\x4d\x42\x45\x52\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x33\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x33\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x6e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x33\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6e\x61\x6d\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x33\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x3d\x5f\x72\x65\x66\x33\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x2c\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x33\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x3b\x76\x61\x72\x20\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x32\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x32\x29\x2c\x70\x61\x74\x68\x3d\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x32\x5b\x30\x5d\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x32\x5b\x31\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x2c\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x2c\x22\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x22\x5d\x2c\x6e\x61\x6d\x65\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x51\x55\x45\x53\x54\x5f\x43\x4f\x4e\x54\x45\x4e\x54\x5f\x54\x59\x50\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x34\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x34\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x34\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x34\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x34\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3b\x76\x61\x72\x20\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x33\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x32\x29\x2c\x70\x61\x74\x68\x3d\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x33\x5b\x30\x5d\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x33\x5b\x31\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x71\x75\x65\x73\x74\x44\x61\x74\x61\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x22\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x5d\x2c\x76\x61\x6c\x75\x65\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x52\x45\x53\x50\x4f\x4e\x53\x45\x5f\x43\x4f\x4e\x54\x45\x4e\x54\x5f\x54\x59\x50\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x35\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x35\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x35\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x35\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x35\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x72\x65\x66\x35\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x5b\x22\x72\x65\x71\x75\x65\x73\x74\x44\x61\x74\x61\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x5d\x2c\x76\x61\x6c\x75\x65\x29\x7d\x29\x2c\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x2c\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x52\x56\x45\x52\x5f\x56\x41\x52\x49\x41\x42\x4c\x45\x5f\x56\x41\x4c\x55\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x66\x36\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x36\x24\x70\x61\x79\x6c\x6f\x61\x64\x3d\x5f\x72\x65\x66\x36\x2e\x70\x61\x79\x6c\x6f\x61\x64\x2c\x73\x65\x72\x76\x65\x72\x3d\x5f\x72\x65\x66\x36\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x73\x65\x72\x76\x65\x72\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x5f\x72\x65\x66\x36\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x36\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x6b\x65\x79\x2c\x76\x61\x6c\x3d\x5f\x72\x65\x66\x36\x24\x70\x61\x79\x6c\x6f\x61\x64\x2e\x76\x61\x6c\x3b\x76\x61\x72\x20\x70\x61\x74\x68\x3d\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x3f\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x73\x65\x72\x76\x65\x72\x2c\x6b\x65\x79\x5d\x3a\x5b\x22\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x73\x22\x2c\x73\x65\x72\x76\x65\x72\x2c\x6b\x65\x79\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x73\x65\x74\x49\x6e\x28\x70\x61\x74\x68\x2c\x76\x61\x6c\x29\x7d\x29\x2c\x5f\x55\x50\x44\x41\x54\x45\x5f\x53\x45\x4c\x45\x43\x54\x45\x44\x5f\x53\x45\x52\x56\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x37\x31\x29\x3b\x72\x65\x71\x75\x65\x73\x74\x2e\x6b\x65\x79\x73\x28\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x69\x66\x28\x6b\x65\x79\x3d\x3d\x3d\x22\x2e\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x76\x61\x72\x20\x6d\x6f\x64\x3d\x72\x65\x71\x75\x65\x73\x74\x28\x6b\x65\x79\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x5b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x70\x61\x73\x63\x61\x6c\x43\x61\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x29\x28\x6b\x65\x79\x29\x5d\x3d\x6d\x6f\x64\x2e\x64\x65\x66\x61\x75\x6c\x74\x3f\x6d\x6f\x64\x2e\x64\x65\x66\x61\x75\x6c\x74\x3a\x6d\x6f\x64\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x36\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x37\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x35\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x50\x72\x6f\x6d\x69\x73\x65\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x37\x29\x7d\x69\x66\x28\x21\x53\x74\x72\x69\x6e\x67\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x36\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x36\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x61\x64\x64\x54\x6f\x55\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x30\x29\x3b\x76\x61\x72\x20\x73\x74\x65\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x39\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x29\x3b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x37\x29\x28\x41\x72\x72\x61\x79\x2c\x22\x41\x72\x72\x61\x79\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x61\x74\x65\x64\x2c\x6b\x69\x6e\x64\x29\x7b\x74\x68\x69\x73\x2e\x5f\x74\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x65\x72\x61\x74\x65\x64\x29\x3b\x74\x68\x69\x73\x2e\x5f\x69\x3d\x30\x3b\x74\x68\x69\x73\x2e\x5f\x6b\x3d\x6b\x69\x6e\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x68\x69\x73\x2e\x5f\x74\x3b\x76\x61\x72\x20\x6b\x69\x6e\x64\x3d\x74\x68\x69\x73\x2e\x5f\x6b\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x74\x68\x69\x73\x2e\x5f\x69\x2b\x2b\x3b\x69\x66\x28\x21\x4f\x7c\x7c\x69\x6e\x64\x65\x78\x3e\x3d\x4f\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x74\x68\x69\x73\x2e\x5f\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x31\x29\x7d\x69\x66\x28\x6b\x69\x6e\x64\x3d\x3d\x22\x6b\x65\x79\x73\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x30\x2c\x69\x6e\x64\x65\x78\x29\x3b\x69\x66\x28\x6b\x69\x6e\x64\x3d\x3d\x22\x76\x61\x6c\x75\x65\x73\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x30\x2c\x4f\x5b\x69\x6e\x64\x65\x78\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x30\x2c\x5b\x69\x6e\x64\x65\x78\x2c\x4f\x5b\x69\x6e\x64\x65\x78\x5d\x5d\x29\x7d\x2c\x22\x76\x61\x6c\x75\x65\x73\x22\x29\x3b\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x2e\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x3d\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x2e\x41\x72\x72\x61\x79\x3b\x61\x64\x64\x54\x6f\x55\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x28\x22\x6b\x65\x79\x73\x22\x29\x3b\x61\x64\x64\x54\x6f\x55\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x28\x22\x76\x61\x6c\x75\x65\x73\x22\x29\x3b\x61\x64\x64\x54\x6f\x55\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x28\x22\x65\x6e\x74\x72\x69\x65\x73\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x32\x29\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x7b\x7d\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x29\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x4e\x41\x4d\x45\x2c\x6e\x65\x78\x74\x29\x7b\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x63\x72\x65\x61\x74\x65\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x7b\x6e\x65\x78\x74\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x28\x31\x2c\x6e\x65\x78\x74\x29\x7d\x29\x3b\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x28\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x4e\x41\x4d\x45\x2b\x22\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x50\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x3b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x3f\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x28\x4f\x2c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x76\x61\x72\x20\x6b\x65\x79\x73\x3d\x67\x65\x74\x4b\x65\x79\x73\x28\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x6b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x50\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x64\x50\x2e\x66\x28\x4f\x2c\x50\x3d\x6b\x65\x79\x73\x5b\x69\x2b\x2b\x5d\x2c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x5b\x50\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x29\x3b\x76\x61\x72\x20\x74\x6f\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x33\x29\x3b\x76\x61\x72\x20\x74\x6f\x41\x62\x73\x6f\x6c\x75\x74\x65\x49\x6e\x64\x65\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x34\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x24\x74\x68\x69\x73\x2c\x65\x6c\x2c\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x24\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x4f\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x74\x6f\x41\x62\x73\x6f\x6c\x75\x74\x65\x49\x6e\x64\x65\x78\x28\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3b\x69\x66\x28\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x26\x26\x65\x6c\x21\x3d\x65\x6c\x29\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x3e\x69\x6e\x64\x65\x78\x29\x7b\x76\x61\x6c\x75\x65\x3d\x4f\x5b\x69\x6e\x64\x65\x78\x2b\x2b\x5d\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x21\x3d\x76\x61\x6c\x75\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x20\x66\x6f\x72\x28\x3b\x6c\x65\x6e\x67\x74\x68\x3e\x69\x6e\x64\x65\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x69\x66\x28\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x7c\x7c\x69\x6e\x64\x65\x78\x20\x69\x6e\x20\x4f\x29\x7b\x69\x66\x28\x4f\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x3d\x3d\x65\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x7c\x7c\x69\x6e\x64\x65\x78\x7c\x7c\x30\x7d\x72\x65\x74\x75\x72\x6e\x21\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x26\x26\x2d\x31\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x30\x29\x3b\x76\x61\x72\x20\x6d\x61\x78\x3d\x4d\x61\x74\x68\x2e\x6d\x61\x78\x3b\x76\x61\x72\x20\x6d\x69\x6e\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x6e\x64\x65\x78\x3d\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x28\x69\x6e\x64\x65\x78\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x64\x65\x78\x3c\x30\x3f\x6d\x61\x78\x28\x69\x6e\x64\x65\x78\x2b\x6c\x65\x6e\x67\x74\x68\x2c\x30\x29\x3a\x6d\x69\x6e\x28\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x30\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x68\x61\x74\x2c\x70\x6f\x73\x29\x7b\x76\x61\x72\x20\x73\x3d\x53\x74\x72\x69\x6e\x67\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x74\x68\x61\x74\x29\x29\x3b\x76\x61\x72\x20\x69\x3d\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x28\x70\x6f\x73\x29\x3b\x76\x61\x72\x20\x6c\x3d\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x61\x2c\x62\x3b\x69\x66\x28\x69\x3c\x30\x7c\x7c\x69\x3e\x3d\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x3f\x22\x22\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x61\x3d\x73\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x3c\x35\x35\x32\x39\x36\x7c\x7c\x61\x3e\x35\x36\x33\x31\x39\x7c\x7c\x69\x2b\x31\x3d\x3d\x3d\x6c\x7c\x7c\x28\x62\x3d\x73\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x2b\x31\x29\x29\x3c\x35\x36\x33\x32\x30\x7c\x7c\x62\x3e\x35\x37\x33\x34\x33\x3f\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x3f\x73\x2e\x63\x68\x61\x72\x41\x74\x28\x69\x29\x3a\x61\x3a\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x3f\x73\x2e\x73\x6c\x69\x63\x65\x28\x69\x2c\x69\x2b\x32\x29\x3a\x28\x61\x2d\x35\x35\x32\x39\x36\x3c\x3c\x31\x30\x29\x2b\x28\x62\x2d\x35\x36\x33\x32\x30\x29\x2b\x36\x35\x35\x33\x36\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x34\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x69\x74\x65\x72\x46\x6e\x3d\x67\x65\x74\x28\x69\x74\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x65\x72\x46\x6e\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x69\x74\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x69\x74\x65\x72\x61\x62\x6c\x65\x21\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x65\x72\x46\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x38\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x37\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x39\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x33\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x34\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x35\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x29\x2e\x50\x72\x6f\x6d\x69\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x35\x29\x3b\x76\x61\x72\x20\x74\x65\x73\x74\x3d\x7b\x7d\x3b\x74\x65\x73\x74\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x22\x29\x5d\x3d\x22\x7a\x22\x3b\x69\x66\x28\x74\x65\x73\x74\x2b\x22\x22\x21\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x7a\x5d\x22\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x29\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x22\x2b\x63\x6c\x61\x73\x73\x6f\x66\x28\x74\x68\x69\x73\x29\x2b\x22\x5d\x22\x7d\x2c\x74\x72\x75\x65\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x37\x29\x26\x26\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x38\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x37\x29\x28\x22\x64\x69\x76\x22\x29\x2c\x22\x61\x22\x2c\x7b\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x37\x7d\x7d\x29\x2e\x61\x21\x3d\x37\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x53\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x3b\x76\x61\x72\x20\x66\x6e\x2c\x76\x61\x6c\x3b\x69\x66\x28\x53\x26\x26\x74\x79\x70\x65\x6f\x66\x28\x66\x6e\x3d\x69\x74\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x29\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x3d\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x28\x66\x6e\x3d\x69\x74\x2e\x76\x61\x6c\x75\x65\x4f\x66\x29\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x3d\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x3b\x69\x66\x28\x21\x53\x26\x26\x74\x79\x70\x65\x6f\x66\x28\x66\x6e\x3d\x69\x74\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x29\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x3d\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x3b\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x43\x61\x6e\x27\x74\x20\x63\x6f\x6e\x76\x65\x72\x74\x20\x6f\x62\x6a\x65\x63\x74\x20\x74\x6f\x20\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x20\x76\x61\x6c\x75\x65\x22\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x32\x29\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x36\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x39\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x7b\x7d\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x29\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x4e\x41\x4d\x45\x2c\x6e\x65\x78\x74\x29\x7b\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x63\x72\x65\x61\x74\x65\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x7b\x6e\x65\x78\x74\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x28\x31\x2c\x6e\x65\x78\x74\x29\x7d\x29\x3b\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x28\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x4e\x41\x4d\x45\x2b\x22\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x29\x3b\x76\x61\x72\x20\x64\x50\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x33\x29\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x33\x29\x3b\x76\x61\x72\x20\x49\x45\x5f\x50\x52\x4f\x54\x4f\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x38\x29\x28\x22\x49\x45\x5f\x50\x52\x4f\x54\x4f\x22\x29\x3b\x76\x61\x72\x20\x45\x6d\x70\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x7d\x3b\x76\x61\x72\x20\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x3d\x22\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x22\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x69\x66\x72\x61\x6d\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x37\x29\x28\x22\x69\x66\x72\x61\x6d\x65\x22\x29\x3b\x76\x61\x72\x20\x69\x3d\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x6c\x74\x3d\x22\x3c\x22\x3b\x76\x61\x72\x20\x67\x74\x3d\x22\x3e\x22\x3b\x76\x61\x72\x20\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x3b\x69\x66\x72\x61\x6d\x65\x2e\x73\x74\x79\x6c\x65\x2e\x64\x69\x73\x70\x6c\x61\x79\x3d\x22\x6e\x6f\x6e\x65\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x34\x29\x2e\x61\x70\x70\x65\x6e\x64\x43\x68\x69\x6c\x64\x28\x69\x66\x72\x61\x6d\x65\x29\x3b\x69\x66\x72\x61\x6d\x65\x2e\x73\x72\x63\x3d\x22\x6a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3a\x22\x3b\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x3d\x69\x66\x72\x61\x6d\x65\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x57\x69\x6e\x64\x6f\x77\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x3b\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x6f\x70\x65\x6e\x28\x29\x3b\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x6c\x74\x2b\x22\x73\x63\x72\x69\x70\x74\x22\x2b\x67\x74\x2b\x22\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x46\x3d\x4f\x62\x6a\x65\x63\x74\x22\x2b\x6c\x74\x2b\x22\x2f\x73\x63\x72\x69\x70\x74\x22\x2b\x67\x74\x29\x3b\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x6c\x6f\x73\x65\x28\x29\x3b\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x3d\x69\x66\x72\x61\x6d\x65\x44\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x46\x3b\x77\x68\x69\x6c\x65\x28\x69\x2d\x2d\x29\x64\x65\x6c\x65\x74\x65\x20\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x5b\x65\x6e\x75\x6d\x42\x75\x67\x4b\x65\x79\x73\x5b\x69\x5d\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x28\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x28\x4f\x2c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3b\x69\x66\x28\x4f\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x45\x6d\x70\x74\x79\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3d\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x45\x6d\x70\x74\x79\x3b\x45\x6d\x70\x74\x79\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3d\x6e\x75\x6c\x6c\x3b\x72\x65\x73\x75\x6c\x74\x5b\x49\x45\x5f\x50\x52\x4f\x54\x4f\x5d\x3d\x4f\x7d\x65\x6c\x73\x65\x20\x72\x65\x73\x75\x6c\x74\x3d\x63\x72\x65\x61\x74\x65\x44\x69\x63\x74\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x72\x65\x73\x75\x6c\x74\x3a\x64\x50\x73\x28\x72\x65\x73\x75\x6c\x74\x2c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x50\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x36\x29\x3b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x37\x29\x3f\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x28\x4f\x2c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x7b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x76\x61\x72\x20\x6b\x65\x79\x73\x3d\x67\x65\x74\x4b\x65\x79\x73\x28\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x6b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x50\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x64\x50\x2e\x66\x28\x4f\x2c\x50\x3d\x6b\x65\x79\x73\x5b\x69\x2b\x2b\x5d\x2c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x5b\x50\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x37\x29\x3b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x31\x29\x3b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x49\x6e\x64\x65\x78\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x36\x29\x28\x66\x61\x6c\x73\x65\x29\x3b\x76\x61\x72\x20\x49\x45\x5f\x50\x52\x4f\x54\x4f\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x38\x29\x28\x22\x49\x45\x5f\x50\x52\x4f\x54\x4f\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6e\x61\x6d\x65\x73\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x6b\x65\x79\x3b\x66\x6f\x72\x28\x6b\x65\x79\x20\x69\x6e\x20\x4f\x29\x69\x66\x28\x6b\x65\x79\x21\x3d\x49\x45\x5f\x50\x52\x4f\x54\x4f\x29\x68\x61\x73\x28\x4f\x2c\x6b\x65\x79\x29\x26\x26\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x3b\x77\x68\x69\x6c\x65\x28\x6e\x61\x6d\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x69\x66\x28\x68\x61\x73\x28\x4f\x2c\x6b\x65\x79\x3d\x6e\x61\x6d\x65\x73\x5b\x69\x2b\x2b\x5d\x29\x29\x7b\x7e\x61\x72\x72\x61\x79\x49\x6e\x64\x65\x78\x4f\x66\x28\x72\x65\x73\x75\x6c\x74\x2c\x6b\x65\x79\x29\x7c\x7c\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4f\x62\x6a\x65\x63\x74\x28\x22\x7a\x22\x29\x2e\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x28\x30\x29\x3f\x4f\x62\x6a\x65\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x66\x28\x69\x74\x29\x3d\x3d\x22\x53\x74\x72\x69\x6e\x67\x22\x3f\x69\x74\x2e\x73\x70\x6c\x69\x74\x28\x22\x22\x29\x3a\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x31\x29\x3b\x76\x61\x72\x20\x74\x6f\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x30\x29\x3b\x76\x61\x72\x20\x74\x6f\x41\x62\x73\x6f\x6c\x75\x74\x65\x49\x6e\x64\x65\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x32\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x24\x74\x68\x69\x73\x2c\x65\x6c\x2c\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x24\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x4f\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x74\x6f\x41\x62\x73\x6f\x6c\x75\x74\x65\x49\x6e\x64\x65\x78\x28\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3b\x69\x66\x28\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x26\x26\x65\x6c\x21\x3d\x65\x6c\x29\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x3e\x69\x6e\x64\x65\x78\x29\x7b\x76\x61\x6c\x75\x65\x3d\x4f\x5b\x69\x6e\x64\x65\x78\x2b\x2b\x5d\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x21\x3d\x76\x61\x6c\x75\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x20\x66\x6f\x72\x28\x3b\x6c\x65\x6e\x67\x74\x68\x3e\x69\x6e\x64\x65\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x69\x66\x28\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x7c\x7c\x69\x6e\x64\x65\x78\x20\x69\x6e\x20\x4f\x29\x7b\x69\x66\x28\x4f\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x3d\x3d\x65\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x7c\x7c\x69\x6e\x64\x65\x78\x7c\x7c\x30\x7d\x72\x65\x74\x75\x72\x6e\x21\x49\x53\x5f\x49\x4e\x43\x4c\x55\x44\x45\x53\x26\x26\x2d\x31\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x37\x29\x3b\x76\x61\x72\x20\x74\x6f\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x38\x29\x3b\x76\x61\x72\x20\x49\x45\x5f\x50\x52\x4f\x54\x4f\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x38\x29\x28\x22\x49\x45\x5f\x50\x52\x4f\x54\x4f\x22\x29\x3b\x76\x61\x72\x20\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x7c\x7c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4f\x29\x7b\x4f\x3d\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x69\x66\x28\x68\x61\x73\x28\x4f\x2c\x49\x45\x5f\x50\x52\x4f\x54\x4f\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x4f\x5b\x49\x45\x5f\x50\x52\x4f\x54\x4f\x5d\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x4f\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x4f\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x4f\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x4f\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x4f\x62\x6a\x65\x63\x74\x3f\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3a\x6e\x75\x6c\x6c\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x69\x74\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x69\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x30\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x31\x29\x3b\x76\x61\x72\x20\x72\x65\x64\x65\x66\x69\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x3b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x39\x29\x3b\x76\x61\x72\x20\x77\x6b\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x3b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x77\x6b\x73\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x5f\x54\x41\x47\x3d\x77\x6b\x73\x28\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x22\x29\x3b\x76\x61\x72\x20\x41\x72\x72\x61\x79\x56\x61\x6c\x75\x65\x73\x3d\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x2e\x41\x72\x72\x61\x79\x3b\x76\x61\x72\x20\x44\x4f\x4d\x49\x74\x65\x72\x61\x62\x6c\x65\x73\x3d\x7b\x43\x53\x53\x52\x75\x6c\x65\x4c\x69\x73\x74\x3a\x74\x72\x75\x65\x2c\x43\x53\x53\x53\x74\x79\x6c\x65\x44\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x3a\x66\x61\x6c\x73\x65\x2c\x43\x53\x53\x56\x61\x6c\x75\x65\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x43\x6c\x69\x65\x6e\x74\x52\x65\x63\x74\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x44\x4f\x4d\x52\x65\x63\x74\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x44\x4f\x4d\x53\x74\x72\x69\x6e\x67\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x44\x4f\x4d\x54\x6f\x6b\x65\x6e\x4c\x69\x73\x74\x3a\x74\x72\x75\x65\x2c\x44\x61\x74\x61\x54\x72\x61\x6e\x73\x66\x65\x72\x49\x74\x65\x6d\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x46\x69\x6c\x65\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x48\x54\x4d\x4c\x41\x6c\x6c\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x3a\x66\x61\x6c\x73\x65\x2c\x48\x54\x4d\x4c\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x3a\x66\x61\x6c\x73\x65\x2c\x48\x54\x4d\x4c\x46\x6f\x72\x6d\x45\x6c\x65\x6d\x65\x6e\x74\x3a\x66\x61\x6c\x73\x65\x2c\x48\x54\x4d\x4c\x53\x65\x6c\x65\x63\x74\x45\x6c\x65\x6d\x65\x6e\x74\x3a\x66\x61\x6c\x73\x65\x2c\x4d\x65\x64\x69\x61\x4c\x69\x73\x74\x3a\x74\x72\x75\x65\x2c\x4d\x69\x6d\x65\x54\x79\x70\x65\x41\x72\x72\x61\x79\x3a\x66\x61\x6c\x73\x65\x2c\x4e\x61\x6d\x65\x64\x4e\x6f\x64\x65\x4d\x61\x70\x3a\x66\x61\x6c\x73\x65\x2c\x4e\x6f\x64\x65\x4c\x69\x73\x74\x3a\x74\x72\x75\x65\x2c\x50\x61\x69\x6e\x74\x52\x65\x71\x75\x65\x73\x74\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x50\x6c\x75\x67\x69\x6e\x3a\x66\x61\x6c\x73\x65\x2c\x50\x6c\x75\x67\x69\x6e\x41\x72\x72\x61\x79\x3a\x66\x61\x6c\x73\x65\x2c\x53\x56\x47\x4c\x65\x6e\x67\x74\x68\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x53\x56\x47\x4e\x75\x6d\x62\x65\x72\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x53\x56\x47\x50\x61\x74\x68\x53\x65\x67\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x53\x56\x47\x50\x6f\x69\x6e\x74\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x53\x56\x47\x53\x74\x72\x69\x6e\x67\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x53\x56\x47\x54\x72\x61\x6e\x73\x66\x6f\x72\x6d\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x53\x6f\x75\x72\x63\x65\x42\x75\x66\x66\x65\x72\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x53\x74\x79\x6c\x65\x53\x68\x65\x65\x74\x4c\x69\x73\x74\x3a\x74\x72\x75\x65\x2c\x54\x65\x78\x74\x54\x72\x61\x63\x6b\x43\x75\x65\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x54\x65\x78\x74\x54\x72\x61\x63\x6b\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x2c\x54\x6f\x75\x63\x68\x4c\x69\x73\x74\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x3d\x67\x65\x74\x4b\x65\x79\x73\x28\x44\x4f\x4d\x49\x74\x65\x72\x61\x62\x6c\x65\x73\x29\x2c\x69\x3d\x30\x3b\x69\x3c\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x76\x61\x72\x20\x4e\x41\x4d\x45\x3d\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x5b\x69\x5d\x3b\x76\x61\x72\x20\x65\x78\x70\x6c\x69\x63\x69\x74\x3d\x44\x4f\x4d\x49\x74\x65\x72\x61\x62\x6c\x65\x73\x5b\x4e\x41\x4d\x45\x5d\x3b\x76\x61\x72\x20\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x3d\x67\x6c\x6f\x62\x61\x6c\x5b\x4e\x41\x4d\x45\x5d\x3b\x76\x61\x72\x20\x70\x72\x6f\x74\x6f\x3d\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x26\x26\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x6b\x65\x79\x3b\x69\x66\x28\x70\x72\x6f\x74\x6f\x29\x7b\x69\x66\x28\x21\x70\x72\x6f\x74\x6f\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x29\x68\x69\x64\x65\x28\x70\x72\x6f\x74\x6f\x2c\x49\x54\x45\x52\x41\x54\x4f\x52\x2c\x41\x72\x72\x61\x79\x56\x61\x6c\x75\x65\x73\x29\x3b\x69\x66\x28\x21\x70\x72\x6f\x74\x6f\x5b\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x5f\x54\x41\x47\x5d\x29\x68\x69\x64\x65\x28\x70\x72\x6f\x74\x6f\x2c\x54\x4f\x5f\x53\x54\x52\x49\x4e\x47\x5f\x54\x41\x47\x2c\x4e\x41\x4d\x45\x29\x3b\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x5b\x4e\x41\x4d\x45\x5d\x3d\x41\x72\x72\x61\x79\x56\x61\x6c\x75\x65\x73\x3b\x69\x66\x28\x65\x78\x70\x6c\x69\x63\x69\x74\x29\x66\x6f\x72\x28\x6b\x65\x79\x20\x69\x6e\x20\x24\x69\x74\x65\x72\x61\x74\x6f\x72\x73\x29\x69\x66\x28\x21\x70\x72\x6f\x74\x6f\x5b\x6b\x65\x79\x5d\x29\x72\x65\x64\x65\x66\x69\x6e\x65\x28\x70\x72\x6f\x74\x6f\x2c\x6b\x65\x79\x2c\x24\x69\x74\x65\x72\x61\x74\x6f\x72\x73\x5b\x6b\x65\x79\x5d\x2c\x74\x72\x75\x65\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x61\x64\x64\x54\x6f\x55\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x31\x29\x3b\x76\x61\x72\x20\x73\x74\x65\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x32\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x39\x29\x3b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x39\x29\x28\x41\x72\x72\x61\x79\x2c\x22\x41\x72\x72\x61\x79\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x61\x74\x65\x64\x2c\x6b\x69\x6e\x64\x29\x7b\x74\x68\x69\x73\x2e\x5f\x74\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x65\x72\x61\x74\x65\x64\x29\x3b\x74\x68\x69\x73\x2e\x5f\x69\x3d\x30\x3b\x74\x68\x69\x73\x2e\x5f\x6b\x3d\x6b\x69\x6e\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x68\x69\x73\x2e\x5f\x74\x3b\x76\x61\x72\x20\x6b\x69\x6e\x64\x3d\x74\x68\x69\x73\x2e\x5f\x6b\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x74\x68\x69\x73\x2e\x5f\x69\x2b\x2b\x3b\x69\x66\x28\x21\x4f\x7c\x7c\x69\x6e\x64\x65\x78\x3e\x3d\x4f\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x74\x68\x69\x73\x2e\x5f\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x31\x29\x7d\x69\x66\x28\x6b\x69\x6e\x64\x3d\x3d\x22\x6b\x65\x79\x73\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x30\x2c\x69\x6e\x64\x65\x78\x29\x3b\x69\x66\x28\x6b\x69\x6e\x64\x3d\x3d\x22\x76\x61\x6c\x75\x65\x73\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x30\x2c\x4f\x5b\x69\x6e\x64\x65\x78\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x30\x2c\x5b\x69\x6e\x64\x65\x78\x2c\x4f\x5b\x69\x6e\x64\x65\x78\x5d\x5d\x29\x7d\x2c\x22\x76\x61\x6c\x75\x65\x73\x22\x29\x3b\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x2e\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x3d\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x2e\x41\x72\x72\x61\x79\x3b\x61\x64\x64\x54\x6f\x55\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x28\x22\x6b\x65\x79\x73\x22\x29\x3b\x61\x64\x64\x54\x6f\x55\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x28\x22\x76\x61\x6c\x75\x65\x73\x22\x29\x3b\x61\x64\x64\x54\x6f\x55\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x28\x22\x65\x6e\x74\x72\x69\x65\x73\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x55\x4e\x53\x43\x4f\x50\x41\x42\x4c\x45\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x75\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x22\x29\x3b\x76\x61\x72\x20\x41\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x3d\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x69\x66\x28\x41\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x5b\x55\x4e\x53\x43\x4f\x50\x41\x42\x4c\x45\x53\x5d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x29\x28\x41\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x2c\x55\x4e\x53\x43\x4f\x50\x41\x42\x4c\x45\x53\x2c\x7b\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x41\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x5b\x55\x4e\x53\x43\x4f\x50\x41\x42\x4c\x45\x53\x5d\x5b\x6b\x65\x79\x5d\x3d\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x6f\x6e\x65\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x64\x6f\x6e\x65\x3a\x21\x21\x64\x6f\x6e\x65\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x4c\x49\x42\x52\x41\x52\x59\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x30\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x3b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x39\x29\x3b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x35\x29\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x29\x3b\x76\x61\x72\x20\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x30\x29\x3b\x76\x61\x72\x20\x61\x6e\x49\x6e\x73\x74\x61\x6e\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x34\x29\x3b\x76\x61\x72\x20\x66\x6f\x72\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x35\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x35\x29\x3b\x76\x61\x72\x20\x74\x61\x73\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x36\x29\x2e\x73\x65\x74\x3b\x76\x61\x72\x20\x6d\x69\x63\x72\x6f\x74\x61\x73\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x30\x29\x28\x29\x3b\x76\x61\x72\x20\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x4d\x6f\x64\x75\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x30\x29\x3b\x76\x61\x72\x20\x70\x65\x72\x66\x6f\x72\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x37\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x38\x29\x3b\x76\x61\x72\x20\x50\x52\x4f\x4d\x49\x53\x45\x3d\x22\x50\x72\x6f\x6d\x69\x73\x65\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x3b\x76\x61\x72\x20\x70\x72\x6f\x63\x65\x73\x73\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x70\x72\x6f\x63\x65\x73\x73\x3b\x76\x61\x72\x20\x24\x50\x72\x6f\x6d\x69\x73\x65\x3d\x67\x6c\x6f\x62\x61\x6c\x5b\x50\x52\x4f\x4d\x49\x53\x45\x5d\x3b\x76\x61\x72\x20\x69\x73\x4e\x6f\x64\x65\x3d\x63\x6c\x61\x73\x73\x6f\x66\x28\x70\x72\x6f\x63\x65\x73\x73\x29\x3d\x3d\x22\x70\x72\x6f\x63\x65\x73\x73\x22\x3b\x76\x61\x72\x20\x65\x6d\x70\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x7d\x3b\x76\x61\x72\x20\x49\x6e\x74\x65\x72\x6e\x61\x6c\x2c\x6e\x65\x77\x47\x65\x6e\x65\x72\x69\x63\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2c\x4f\x77\x6e\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2c\x57\x72\x61\x70\x70\x65\x72\x3b\x76\x61\x72\x20\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x47\x65\x6e\x65\x72\x69\x63\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x4d\x6f\x64\x75\x6c\x65\x2e\x66\x3b\x76\x61\x72\x20\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x3d\x21\x21\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x72\x79\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x24\x50\x72\x6f\x6d\x69\x73\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x31\x29\x3b\x76\x61\x72\x20\x46\x61\x6b\x65\x50\x72\x6f\x6d\x69\x73\x65\x3d\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x7b\x7d\x29\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x73\x70\x65\x63\x69\x65\x73\x22\x29\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x29\x7b\x65\x78\x65\x63\x28\x65\x6d\x70\x74\x79\x2c\x65\x6d\x70\x74\x79\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x28\x69\x73\x4e\x6f\x64\x65\x7c\x7c\x74\x79\x70\x65\x6f\x66\x20\x50\x72\x6f\x6d\x69\x73\x65\x52\x65\x6a\x65\x63\x74\x69\x6f\x6e\x45\x76\x65\x6e\x74\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x26\x26\x70\x72\x6f\x6d\x69\x73\x65\x2e\x74\x68\x65\x6e\x28\x65\x6d\x70\x74\x79\x29\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x46\x61\x6b\x65\x50\x72\x6f\x6d\x69\x73\x65\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x7d\x28\x29\x3b\x76\x61\x72\x20\x69\x73\x54\x68\x65\x6e\x61\x62\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x74\x68\x65\x6e\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x26\x26\x74\x79\x70\x65\x6f\x66\x28\x74\x68\x65\x6e\x3d\x69\x74\x2e\x74\x68\x65\x6e\x29\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x74\x68\x65\x6e\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x76\x61\x72\x20\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x2c\x69\x73\x52\x65\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x6e\x29\x72\x65\x74\x75\x72\x6e\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x6e\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x63\x68\x61\x69\x6e\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x63\x3b\x6d\x69\x63\x72\x6f\x74\x61\x73\x6b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x3b\x76\x61\x72\x20\x6f\x6b\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x73\x3d\x3d\x31\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x72\x75\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x61\x63\x74\x69\x6f\x6e\x29\x7b\x76\x61\x72\x20\x68\x61\x6e\x64\x6c\x65\x72\x3d\x6f\x6b\x3f\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x6f\x6b\x3a\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x66\x61\x69\x6c\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x3d\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3b\x76\x61\x72\x20\x72\x65\x6a\x65\x63\x74\x3d\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x72\x65\x6a\x65\x63\x74\x3b\x76\x61\x72\x20\x64\x6f\x6d\x61\x69\x6e\x3d\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x64\x6f\x6d\x61\x69\x6e\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x2c\x74\x68\x65\x6e\x2c\x65\x78\x69\x74\x65\x64\x3b\x74\x72\x79\x7b\x69\x66\x28\x68\x61\x6e\x64\x6c\x65\x72\x29\x7b\x69\x66\x28\x21\x6f\x6b\x29\x7b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x3d\x3d\x32\x29\x6f\x6e\x48\x61\x6e\x64\x6c\x65\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x3d\x31\x7d\x69\x66\x28\x68\x61\x6e\x64\x6c\x65\x72\x3d\x3d\x3d\x74\x72\x75\x65\x29\x72\x65\x73\x75\x6c\x74\x3d\x76\x61\x6c\x75\x65\x3b\x65\x6c\x73\x65\x7b\x69\x66\x28\x64\x6f\x6d\x61\x69\x6e\x29\x64\x6f\x6d\x61\x69\x6e\x2e\x65\x6e\x74\x65\x72\x28\x29\x3b\x72\x65\x73\x75\x6c\x74\x3d\x68\x61\x6e\x64\x6c\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x64\x6f\x6d\x61\x69\x6e\x29\x7b\x64\x6f\x6d\x61\x69\x6e\x2e\x65\x78\x69\x74\x28\x29\x3b\x65\x78\x69\x74\x65\x64\x3d\x74\x72\x75\x65\x7d\x7d\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x72\x65\x6a\x65\x63\x74\x28\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x50\x72\x6f\x6d\x69\x73\x65\x2d\x63\x68\x61\x69\x6e\x20\x63\x79\x63\x6c\x65\x22\x29\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x68\x65\x6e\x3d\x69\x73\x54\x68\x65\x6e\x61\x62\x6c\x65\x28\x72\x65\x73\x75\x6c\x74\x29\x29\x7b\x74\x68\x65\x6e\x2e\x63\x61\x6c\x6c\x28\x72\x65\x73\x75\x6c\x74\x2c\x72\x65\x73\x6f\x6c\x76\x65\x2c\x72\x65\x6a\x65\x63\x74\x29\x7d\x65\x6c\x73\x65\x20\x72\x65\x73\x6f\x6c\x76\x65\x28\x72\x65\x73\x75\x6c\x74\x29\x7d\x65\x6c\x73\x65\x20\x72\x65\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x69\x66\x28\x64\x6f\x6d\x61\x69\x6e\x26\x26\x21\x65\x78\x69\x74\x65\x64\x29\x64\x6f\x6d\x61\x69\x6e\x2e\x65\x78\x69\x74\x28\x29\x3b\x72\x65\x6a\x65\x63\x74\x28\x65\x29\x7d\x7d\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x61\x69\x6e\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x72\x75\x6e\x28\x63\x68\x61\x69\x6e\x5b\x69\x2b\x2b\x5d\x29\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x63\x3d\x5b\x5d\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x6e\x3d\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x69\x73\x52\x65\x6a\x65\x63\x74\x26\x26\x21\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x29\x6f\x6e\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7d\x29\x7d\x3b\x76\x61\x72\x20\x6f\x6e\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x74\x61\x73\x6b\x2e\x63\x61\x6c\x6c\x28\x67\x6c\x6f\x62\x61\x6c\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x3b\x76\x61\x72\x20\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x3d\x69\x73\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x2c\x68\x61\x6e\x64\x6c\x65\x72\x2c\x63\x6f\x6e\x73\x6f\x6c\x65\x3b\x69\x66\x28\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x70\x65\x72\x66\x6f\x72\x6d\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x69\x66\x28\x69\x73\x4e\x6f\x64\x65\x29\x7b\x70\x72\x6f\x63\x65\x73\x73\x2e\x65\x6d\x69\x74\x28\x22\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x52\x65\x6a\x65\x63\x74\x69\x6f\x6e\x22\x2c\x76\x61\x6c\x75\x65\x2c\x70\x72\x6f\x6d\x69\x73\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x68\x61\x6e\x64\x6c\x65\x72\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x6f\x6e\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x72\x65\x6a\x65\x63\x74\x69\x6f\x6e\x29\x7b\x68\x61\x6e\x64\x6c\x65\x72\x28\x7b\x70\x72\x6f\x6d\x69\x73\x65\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2c\x72\x65\x61\x73\x6f\x6e\x3a\x76\x61\x6c\x75\x65\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x28\x63\x6f\x6e\x73\x6f\x6c\x65\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x63\x6f\x6e\x73\x6f\x6c\x65\x29\x26\x26\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x22\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x20\x70\x72\x6f\x6d\x69\x73\x65\x20\x72\x65\x6a\x65\x63\x74\x69\x6f\x6e\x22\x2c\x76\x61\x6c\x75\x65\x29\x7d\x7d\x29\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x3d\x69\x73\x4e\x6f\x64\x65\x7c\x7c\x69\x73\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x3f\x32\x3a\x31\x7d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x61\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x26\x26\x72\x65\x73\x75\x6c\x74\x2e\x65\x29\x74\x68\x72\x6f\x77\x20\x72\x65\x73\x75\x6c\x74\x2e\x76\x7d\x29\x7d\x3b\x76\x61\x72\x20\x69\x73\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x21\x3d\x3d\x31\x26\x26\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x61\x7c\x7c\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x63\x29\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x7d\x3b\x76\x61\x72\x20\x6f\x6e\x48\x61\x6e\x64\x6c\x65\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x74\x61\x73\x6b\x2e\x63\x61\x6c\x6c\x28\x67\x6c\x6f\x62\x61\x6c\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x68\x61\x6e\x64\x6c\x65\x72\x3b\x69\x66\x28\x69\x73\x4e\x6f\x64\x65\x29\x7b\x70\x72\x6f\x63\x65\x73\x73\x2e\x65\x6d\x69\x74\x28\x22\x72\x65\x6a\x65\x63\x74\x69\x6f\x6e\x48\x61\x6e\x64\x6c\x65\x64\x22\x2c\x70\x72\x6f\x6d\x69\x73\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x68\x61\x6e\x64\x6c\x65\x72\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x6f\x6e\x72\x65\x6a\x65\x63\x74\x69\x6f\x6e\x68\x61\x6e\x64\x6c\x65\x64\x29\x7b\x68\x61\x6e\x64\x6c\x65\x72\x28\x7b\x70\x72\x6f\x6d\x69\x73\x65\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2c\x72\x65\x61\x73\x6f\x6e\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x7d\x29\x7d\x7d\x29\x7d\x3b\x76\x61\x72\x20\x24\x72\x65\x6a\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x74\x68\x69\x73\x3b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x64\x29\x72\x65\x74\x75\x72\x6e\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x64\x3d\x74\x72\x75\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x77\x7c\x7c\x70\x72\x6f\x6d\x69\x73\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x3d\x76\x61\x6c\x75\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x73\x3d\x32\x3b\x69\x66\x28\x21\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x61\x29\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x61\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x63\x2e\x73\x6c\x69\x63\x65\x28\x29\x3b\x6e\x6f\x74\x69\x66\x79\x28\x70\x72\x6f\x6d\x69\x73\x65\x2c\x74\x72\x75\x65\x29\x7d\x3b\x76\x61\x72\x20\x24\x72\x65\x73\x6f\x6c\x76\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x74\x68\x65\x6e\x3b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x64\x29\x72\x65\x74\x75\x72\x6e\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x64\x3d\x74\x72\x75\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x77\x7c\x7c\x70\x72\x6f\x6d\x69\x73\x65\x3b\x74\x72\x79\x7b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x3d\x3d\x3d\x76\x61\x6c\x75\x65\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x50\x72\x6f\x6d\x69\x73\x65\x20\x63\x61\x6e\x27\x74\x20\x62\x65\x20\x72\x65\x73\x6f\x6c\x76\x65\x64\x20\x69\x74\x73\x65\x6c\x66\x22\x29\x3b\x69\x66\x28\x74\x68\x65\x6e\x3d\x69\x73\x54\x68\x65\x6e\x61\x62\x6c\x65\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x6d\x69\x63\x72\x6f\x74\x61\x73\x6b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x77\x72\x61\x70\x70\x65\x72\x3d\x7b\x5f\x77\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2c\x5f\x64\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x74\x72\x79\x7b\x74\x68\x65\x6e\x2e\x63\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x2c\x63\x74\x78\x28\x24\x72\x65\x73\x6f\x6c\x76\x65\x2c\x77\x72\x61\x70\x70\x65\x72\x2c\x31\x29\x2c\x63\x74\x78\x28\x24\x72\x65\x6a\x65\x63\x74\x2c\x77\x72\x61\x70\x70\x65\x72\x2c\x31\x29\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x24\x72\x65\x6a\x65\x63\x74\x2e\x63\x61\x6c\x6c\x28\x77\x72\x61\x70\x70\x65\x72\x2c\x65\x29\x7d\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x3d\x76\x61\x6c\x75\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x73\x3d\x31\x3b\x6e\x6f\x74\x69\x66\x79\x28\x70\x72\x6f\x6d\x69\x73\x65\x2c\x66\x61\x6c\x73\x65\x29\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x24\x72\x65\x6a\x65\x63\x74\x2e\x63\x61\x6c\x6c\x28\x7b\x5f\x77\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2c\x5f\x64\x3a\x66\x61\x6c\x73\x65\x7d\x2c\x65\x29\x7d\x7d\x3b\x69\x66\x28\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x29\x7b\x24\x50\x72\x6f\x6d\x69\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x72\x6f\x6d\x69\x73\x65\x28\x65\x78\x65\x63\x75\x74\x6f\x72\x29\x7b\x61\x6e\x49\x6e\x73\x74\x61\x6e\x63\x65\x28\x74\x68\x69\x73\x2c\x24\x50\x72\x6f\x6d\x69\x73\x65\x2c\x50\x52\x4f\x4d\x49\x53\x45\x2c\x22\x5f\x68\x22\x29\x3b\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x75\x74\x6f\x72\x29\x3b\x49\x6e\x74\x65\x72\x6e\x61\x6c\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x29\x3b\x74\x72\x79\x7b\x65\x78\x65\x63\x75\x74\x6f\x72\x28\x63\x74\x78\x28\x24\x72\x65\x73\x6f\x6c\x76\x65\x2c\x74\x68\x69\x73\x2c\x31\x29\x2c\x63\x74\x78\x28\x24\x72\x65\x6a\x65\x63\x74\x2c\x74\x68\x69\x73\x2c\x31\x29\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x29\x7b\x24\x72\x65\x6a\x65\x63\x74\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x65\x72\x72\x29\x7d\x7d\x3b\x49\x6e\x74\x65\x72\x6e\x61\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x72\x6f\x6d\x69\x73\x65\x28\x65\x78\x65\x63\x75\x74\x6f\x72\x29\x7b\x74\x68\x69\x73\x2e\x5f\x63\x3d\x5b\x5d\x3b\x74\x68\x69\x73\x2e\x5f\x61\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x69\x73\x2e\x5f\x73\x3d\x30\x3b\x74\x68\x69\x73\x2e\x5f\x64\x3d\x66\x61\x6c\x73\x65\x3b\x74\x68\x69\x73\x2e\x5f\x76\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x69\x73\x2e\x5f\x68\x3d\x30\x3b\x74\x68\x69\x73\x2e\x5f\x6e\x3d\x66\x61\x6c\x73\x65\x7d\x3b\x49\x6e\x74\x65\x72\x6e\x61\x6c\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x31\x29\x28\x24\x50\x72\x6f\x6d\x69\x73\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x7b\x74\x68\x65\x6e\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x68\x65\x6e\x28\x6f\x6e\x46\x75\x6c\x66\x69\x6c\x6c\x65\x64\x2c\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x29\x7b\x76\x61\x72\x20\x72\x65\x61\x63\x74\x69\x6f\x6e\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x24\x50\x72\x6f\x6d\x69\x73\x65\x29\x29\x3b\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x6f\x6b\x3d\x74\x79\x70\x65\x6f\x66\x20\x6f\x6e\x46\x75\x6c\x66\x69\x6c\x6c\x65\x64\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x6f\x6e\x46\x75\x6c\x66\x69\x6c\x6c\x65\x64\x3a\x74\x72\x75\x65\x3b\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x66\x61\x69\x6c\x3d\x74\x79\x70\x65\x6f\x66\x20\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x3b\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x64\x6f\x6d\x61\x69\x6e\x3d\x69\x73\x4e\x6f\x64\x65\x3f\x70\x72\x6f\x63\x65\x73\x73\x2e\x64\x6f\x6d\x61\x69\x6e\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x69\x73\x2e\x5f\x63\x2e\x70\x75\x73\x68\x28\x72\x65\x61\x63\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x5f\x61\x29\x74\x68\x69\x73\x2e\x5f\x61\x2e\x70\x75\x73\x68\x28\x72\x65\x61\x63\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x5f\x73\x29\x6e\x6f\x74\x69\x66\x79\x28\x74\x68\x69\x73\x2c\x66\x61\x6c\x73\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x2c\x63\x61\x74\x63\x68\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x74\x68\x65\x6e\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x29\x7d\x7d\x29\x3b\x4f\x77\x6e\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x6e\x65\x77\x20\x49\x6e\x74\x65\x72\x6e\x61\x6c\x3b\x74\x68\x69\x73\x2e\x70\x72\x6f\x6d\x69\x73\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x3b\x74\x68\x69\x73\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3d\x63\x74\x78\x28\x24\x72\x65\x73\x6f\x6c\x76\x65\x2c\x70\x72\x6f\x6d\x69\x73\x65\x2c\x31\x29\x3b\x74\x68\x69\x73\x2e\x72\x65\x6a\x65\x63\x74\x3d\x63\x74\x78\x28\x24\x72\x65\x6a\x65\x63\x74\x2c\x70\x72\x6f\x6d\x69\x73\x65\x2c\x31\x29\x7d\x3b\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x4d\x6f\x64\x75\x6c\x65\x2e\x66\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x43\x3d\x3d\x3d\x24\x50\x72\x6f\x6d\x69\x73\x65\x7c\x7c\x43\x3d\x3d\x3d\x57\x72\x61\x70\x70\x65\x72\x3f\x6e\x65\x77\x20\x4f\x77\x6e\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x3a\x6e\x65\x77\x47\x65\x6e\x65\x72\x69\x63\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x7d\x7d\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x47\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x57\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x2c\x7b\x50\x72\x6f\x6d\x69\x73\x65\x3a\x24\x50\x72\x6f\x6d\x69\x73\x65\x7d\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x39\x29\x28\x24\x50\x72\x6f\x6d\x69\x73\x65\x2c\x50\x52\x4f\x4d\x49\x53\x45\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x32\x29\x28\x50\x52\x4f\x4d\x49\x53\x45\x29\x3b\x57\x72\x61\x70\x70\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x29\x5b\x50\x52\x4f\x4d\x49\x53\x45\x5d\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x2c\x50\x52\x4f\x4d\x49\x53\x45\x2c\x7b\x72\x65\x6a\x65\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6a\x65\x63\x74\x28\x72\x29\x7b\x76\x61\x72\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x24\x24\x72\x65\x6a\x65\x63\x74\x3d\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x6a\x65\x63\x74\x3b\x24\x24\x72\x65\x6a\x65\x63\x74\x28\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x7d\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x28\x4c\x49\x42\x52\x41\x52\x59\x7c\x7c\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x29\x2c\x50\x52\x4f\x4d\x49\x53\x45\x2c\x7b\x72\x65\x73\x6f\x6c\x76\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x28\x78\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x28\x4c\x49\x42\x52\x41\x52\x59\x26\x26\x74\x68\x69\x73\x3d\x3d\x3d\x57\x72\x61\x70\x70\x65\x72\x3f\x24\x50\x72\x6f\x6d\x69\x73\x65\x3a\x74\x68\x69\x73\x2c\x78\x29\x7d\x7d\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x28\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x26\x26\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x33\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x29\x7b\x24\x50\x72\x6f\x6d\x69\x73\x65\x2e\x61\x6c\x6c\x28\x69\x74\x65\x72\x29\x5b\x22\x63\x61\x74\x63\x68\x22\x5d\x28\x65\x6d\x70\x74\x79\x29\x7d\x29\x29\x2c\x50\x52\x4f\x4d\x49\x53\x45\x2c\x7b\x61\x6c\x6c\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x6c\x6c\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x7b\x76\x61\x72\x20\x43\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x3d\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3b\x76\x61\x72\x20\x72\x65\x6a\x65\x63\x74\x3d\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x6a\x65\x63\x74\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x70\x65\x72\x66\x6f\x72\x6d\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x73\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x30\x3b\x76\x61\x72\x20\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x3d\x31\x3b\x66\x6f\x72\x4f\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x66\x61\x6c\x73\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x76\x61\x72\x20\x24\x69\x6e\x64\x65\x78\x3d\x69\x6e\x64\x65\x78\x2b\x2b\x3b\x76\x61\x72\x20\x61\x6c\x72\x65\x61\x64\x79\x43\x61\x6c\x6c\x65\x64\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x6c\x75\x65\x73\x2e\x70\x75\x73\x68\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x3b\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x2b\x2b\x3b\x43\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x61\x6c\x72\x65\x61\x64\x79\x43\x61\x6c\x6c\x65\x64\x29\x72\x65\x74\x75\x72\x6e\x3b\x61\x6c\x72\x65\x61\x64\x79\x43\x61\x6c\x6c\x65\x64\x3d\x74\x72\x75\x65\x3b\x76\x61\x6c\x75\x65\x73\x5b\x24\x69\x6e\x64\x65\x78\x5d\x3d\x76\x61\x6c\x75\x65\x3b\x2d\x2d\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x7c\x7c\x72\x65\x73\x6f\x6c\x76\x65\x28\x76\x61\x6c\x75\x65\x73\x29\x7d\x2c\x72\x65\x6a\x65\x63\x74\x29\x7d\x29\x3b\x2d\x2d\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x7c\x7c\x72\x65\x73\x6f\x6c\x76\x65\x28\x76\x61\x6c\x75\x65\x73\x29\x7d\x29\x3b\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x2e\x65\x29\x72\x65\x6a\x65\x63\x74\x28\x72\x65\x73\x75\x6c\x74\x2e\x76\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x2c\x72\x61\x63\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x61\x63\x65\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x7b\x76\x61\x72\x20\x43\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x3b\x76\x61\x72\x20\x72\x65\x6a\x65\x63\x74\x3d\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x6a\x65\x63\x74\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x70\x65\x72\x66\x6f\x72\x6d\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x6f\x72\x4f\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x66\x61\x6c\x73\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x43\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x2e\x74\x68\x65\x6e\x28\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x73\x6f\x6c\x76\x65\x2c\x72\x65\x6a\x65\x63\x74\x29\x7d\x29\x7d\x29\x3b\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x2e\x65\x29\x72\x65\x6a\x65\x63\x74\x28\x72\x65\x73\x75\x6c\x74\x2e\x76\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x6e\x61\x6d\x65\x2c\x66\x6f\x72\x62\x69\x64\x64\x65\x6e\x46\x69\x65\x6c\x64\x29\x7b\x69\x66\x28\x21\x28\x69\x74\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x29\x7c\x7c\x66\x6f\x72\x62\x69\x64\x64\x65\x6e\x46\x69\x65\x6c\x64\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x66\x6f\x72\x62\x69\x64\x64\x65\x6e\x46\x69\x65\x6c\x64\x20\x69\x6e\x20\x69\x74\x29\x7b\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x6e\x61\x6d\x65\x2b\x22\x3a\x20\x69\x6e\x63\x6f\x72\x72\x65\x63\x74\x20\x69\x6e\x76\x6f\x63\x61\x74\x69\x6f\x6e\x21\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x39\x29\x3b\x76\x61\x72\x20\x63\x61\x6c\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x36\x29\x3b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x49\x74\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x37\x29\x3b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x29\x3b\x76\x61\x72\x20\x74\x6f\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x30\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x49\x74\x65\x72\x46\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x38\x29\x3b\x76\x61\x72\x20\x42\x52\x45\x41\x4b\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x52\x45\x54\x55\x52\x4e\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x65\x6e\x74\x72\x69\x65\x73\x2c\x66\x6e\x2c\x74\x68\x61\x74\x2c\x49\x54\x45\x52\x41\x54\x4f\x52\x29\x7b\x76\x61\x72\x20\x69\x74\x65\x72\x46\x6e\x3d\x49\x54\x45\x52\x41\x54\x4f\x52\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x65\x72\x61\x62\x6c\x65\x7d\x3a\x67\x65\x74\x49\x74\x65\x72\x46\x6e\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x66\x3d\x63\x74\x78\x28\x66\x6e\x2c\x74\x68\x61\x74\x2c\x65\x6e\x74\x72\x69\x65\x73\x3f\x32\x3a\x31\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x30\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x2c\x73\x74\x65\x70\x2c\x69\x74\x65\x72\x61\x74\x6f\x72\x2c\x72\x65\x73\x75\x6c\x74\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x65\x72\x46\x6e\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x69\x74\x65\x72\x61\x62\x6c\x65\x21\x22\x29\x3b\x69\x66\x28\x69\x73\x41\x72\x72\x61\x79\x49\x74\x65\x72\x28\x69\x74\x65\x72\x46\x6e\x29\x29\x66\x6f\x72\x28\x6c\x65\x6e\x67\x74\x68\x3d\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x6c\x65\x6e\x67\x74\x68\x3e\x69\x6e\x64\x65\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x65\x6e\x74\x72\x69\x65\x73\x3f\x66\x28\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x73\x74\x65\x70\x3d\x69\x74\x65\x72\x61\x62\x6c\x65\x5b\x69\x6e\x64\x65\x78\x5d\x29\x5b\x30\x5d\x2c\x73\x74\x65\x70\x5b\x31\x5d\x29\x3a\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x5b\x69\x6e\x64\x65\x78\x5d\x29\x3b\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x42\x52\x45\x41\x4b\x7c\x7c\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x52\x45\x54\x55\x52\x4e\x29\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x65\x6c\x73\x65\x20\x66\x6f\x72\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x3d\x69\x74\x65\x72\x46\x6e\x2e\x63\x61\x6c\x6c\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x3b\x21\x28\x73\x74\x65\x70\x3d\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x6e\x65\x78\x74\x28\x29\x29\x2e\x64\x6f\x6e\x65\x3b\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x63\x61\x6c\x6c\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x2c\x66\x2c\x73\x74\x65\x70\x2e\x76\x61\x6c\x75\x65\x2c\x65\x6e\x74\x72\x69\x65\x73\x29\x3b\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x42\x52\x45\x41\x4b\x7c\x7c\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x52\x45\x54\x55\x52\x4e\x29\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x42\x52\x45\x41\x4b\x3d\x42\x52\x45\x41\x4b\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x52\x45\x54\x55\x52\x4e\x3d\x52\x45\x54\x55\x52\x4e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x2c\x66\x6e\x2c\x76\x61\x6c\x75\x65\x2c\x65\x6e\x74\x72\x69\x65\x73\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x6e\x74\x72\x69\x65\x73\x3f\x66\x6e\x28\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x5b\x30\x5d\x2c\x76\x61\x6c\x75\x65\x5b\x31\x5d\x29\x3a\x66\x6e\x28\x76\x61\x6c\x75\x65\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x74\x3d\x69\x74\x65\x72\x61\x74\x6f\x72\x5b\x22\x72\x65\x74\x75\x72\x6e\x22\x5d\x3b\x69\x66\x28\x72\x65\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x72\x65\x74\x2e\x63\x61\x6c\x6c\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x29\x29\x3b\x74\x68\x72\x6f\x77\x20\x65\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x39\x29\x3b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x41\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x3d\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x28\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x2e\x41\x72\x72\x61\x79\x3d\x3d\x3d\x69\x74\x7c\x7c\x41\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x3d\x3d\x3d\x69\x74\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x35\x29\x3b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x29\x2e\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x4d\x65\x74\x68\x6f\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x69\x66\x28\x69\x74\x21\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x7c\x7c\x69\x74\x5b\x22\x40\x40\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x5d\x7c\x7c\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x5b\x63\x6c\x61\x73\x73\x6f\x66\x28\x69\x74\x29\x5d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x2c\x61\x72\x67\x73\x2c\x74\x68\x61\x74\x29\x7b\x76\x61\x72\x20\x75\x6e\x3d\x74\x68\x61\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x73\x77\x69\x74\x63\x68\x28\x61\x72\x67\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x63\x61\x73\x65\x20\x30\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x29\x3b\x63\x61\x73\x65\x20\x31\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x61\x72\x67\x73\x5b\x30\x5d\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x5b\x30\x5d\x29\x3b\x63\x61\x73\x65\x20\x32\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x29\x3b\x63\x61\x73\x65\x20\x33\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x2c\x61\x72\x67\x73\x5b\x32\x5d\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x2c\x61\x72\x67\x73\x5b\x32\x5d\x29\x3b\x63\x61\x73\x65\x20\x34\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x2c\x61\x72\x67\x73\x5b\x32\x5d\x2c\x61\x72\x67\x73\x5b\x33\x5d\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x2c\x61\x72\x67\x73\x5b\x32\x5d\x2c\x61\x72\x67\x73\x5b\x33\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x3b\x76\x61\x72\x20\x6d\x61\x63\x72\x6f\x74\x61\x73\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x36\x29\x2e\x73\x65\x74\x3b\x76\x61\x72\x20\x4f\x62\x73\x65\x72\x76\x65\x72\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x4d\x75\x74\x61\x74\x69\x6f\x6e\x4f\x62\x73\x65\x72\x76\x65\x72\x7c\x7c\x67\x6c\x6f\x62\x61\x6c\x2e\x57\x65\x62\x4b\x69\x74\x4d\x75\x74\x61\x74\x69\x6f\x6e\x4f\x62\x73\x65\x72\x76\x65\x72\x3b\x76\x61\x72\x20\x70\x72\x6f\x63\x65\x73\x73\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x70\x72\x6f\x63\x65\x73\x73\x3b\x76\x61\x72\x20\x50\x72\x6f\x6d\x69\x73\x65\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x50\x72\x6f\x6d\x69\x73\x65\x3b\x76\x61\x72\x20\x69\x73\x4e\x6f\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x29\x28\x70\x72\x6f\x63\x65\x73\x73\x29\x3d\x3d\x22\x70\x72\x6f\x63\x65\x73\x73\x22\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x68\x65\x61\x64\x2c\x6c\x61\x73\x74\x2c\x6e\x6f\x74\x69\x66\x79\x3b\x76\x61\x72\x20\x66\x6c\x75\x73\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x70\x61\x72\x65\x6e\x74\x2c\x66\x6e\x3b\x69\x66\x28\x69\x73\x4e\x6f\x64\x65\x26\x26\x28\x70\x61\x72\x65\x6e\x74\x3d\x70\x72\x6f\x63\x65\x73\x73\x2e\x64\x6f\x6d\x61\x69\x6e\x29\x29\x70\x61\x72\x65\x6e\x74\x2e\x65\x78\x69\x74\x28\x29\x3b\x77\x68\x69\x6c\x65\x28\x68\x65\x61\x64\x29\x7b\x66\x6e\x3d\x68\x65\x61\x64\x2e\x66\x6e\x3b\x68\x65\x61\x64\x3d\x68\x65\x61\x64\x2e\x6e\x65\x78\x74\x3b\x74\x72\x79\x7b\x66\x6e\x28\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x69\x66\x28\x68\x65\x61\x64\x29\x6e\x6f\x74\x69\x66\x79\x28\x29\x3b\x65\x6c\x73\x65\x20\x6c\x61\x73\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x72\x6f\x77\x20\x65\x7d\x7d\x6c\x61\x73\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x70\x61\x72\x65\x6e\x74\x29\x70\x61\x72\x65\x6e\x74\x2e\x65\x6e\x74\x65\x72\x28\x29\x7d\x3b\x69\x66\x28\x69\x73\x4e\x6f\x64\x65\x29\x7b\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x70\x72\x6f\x63\x65\x73\x73\x2e\x6e\x65\x78\x74\x54\x69\x63\x6b\x28\x66\x6c\x75\x73\x68\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x4f\x62\x73\x65\x72\x76\x65\x72\x26\x26\x21\x28\x67\x6c\x6f\x62\x61\x6c\x2e\x6e\x61\x76\x69\x67\x61\x74\x6f\x72\x26\x26\x67\x6c\x6f\x62\x61\x6c\x2e\x6e\x61\x76\x69\x67\x61\x74\x6f\x72\x2e\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x29\x29\x7b\x76\x61\x72\x20\x74\x6f\x67\x67\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x6e\x6f\x64\x65\x3d\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x54\x65\x78\x74\x4e\x6f\x64\x65\x28\x22\x22\x29\x3b\x6e\x65\x77\x20\x4f\x62\x73\x65\x72\x76\x65\x72\x28\x66\x6c\x75\x73\x68\x29\x2e\x6f\x62\x73\x65\x72\x76\x65\x28\x6e\x6f\x64\x65\x2c\x7b\x63\x68\x61\x72\x61\x63\x74\x65\x72\x44\x61\x74\x61\x3a\x74\x72\x75\x65\x7d\x29\x3b\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x6e\x6f\x64\x65\x2e\x64\x61\x74\x61\x3d\x74\x6f\x67\x67\x6c\x65\x3d\x21\x74\x6f\x67\x67\x6c\x65\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x50\x72\x6f\x6d\x69\x73\x65\x26\x26\x50\x72\x6f\x6d\x69\x73\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x50\x72\x6f\x6d\x69\x73\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x29\x3b\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x74\x68\x65\x6e\x28\x66\x6c\x75\x73\x68\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x6d\x61\x63\x72\x6f\x74\x61\x73\x6b\x2e\x63\x61\x6c\x6c\x28\x67\x6c\x6f\x62\x61\x6c\x2c\x66\x6c\x75\x73\x68\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x29\x7b\x76\x61\x72\x20\x74\x61\x73\x6b\x3d\x7b\x66\x6e\x3a\x66\x6e\x2c\x6e\x65\x78\x74\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x3b\x69\x66\x28\x6c\x61\x73\x74\x29\x6c\x61\x73\x74\x2e\x6e\x65\x78\x74\x3d\x74\x61\x73\x6b\x3b\x69\x66\x28\x21\x68\x65\x61\x64\x29\x7b\x68\x65\x61\x64\x3d\x74\x61\x73\x6b\x3b\x6e\x6f\x74\x69\x66\x79\x28\x29\x7d\x6c\x61\x73\x74\x3d\x74\x61\x73\x6b\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x72\x65\x64\x65\x66\x69\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x72\x67\x65\x74\x2c\x73\x72\x63\x2c\x73\x61\x66\x65\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x73\x72\x63\x29\x72\x65\x64\x65\x66\x69\x6e\x65\x28\x74\x61\x72\x67\x65\x74\x2c\x6b\x65\x79\x2c\x73\x72\x63\x5b\x6b\x65\x79\x5d\x2c\x73\x61\x66\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x61\x72\x67\x65\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x3b\x76\x61\x72\x20\x64\x50\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x36\x29\x3b\x76\x61\x72\x20\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x37\x29\x3b\x76\x61\x72\x20\x53\x50\x45\x43\x49\x45\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x73\x70\x65\x63\x69\x65\x73\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4b\x45\x59\x29\x7b\x76\x61\x72\x20\x43\x3d\x67\x6c\x6f\x62\x61\x6c\x5b\x4b\x45\x59\x5d\x3b\x69\x66\x28\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x26\x26\x43\x26\x26\x21\x43\x5b\x53\x50\x45\x43\x49\x45\x53\x5d\x29\x64\x50\x2e\x66\x28\x43\x2c\x53\x50\x45\x43\x49\x45\x53\x2c\x7b\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x53\x41\x46\x45\x5f\x43\x4c\x4f\x53\x49\x4e\x47\x3d\x66\x61\x6c\x73\x65\x3b\x74\x72\x79\x7b\x76\x61\x72\x20\x72\x69\x74\x65\x72\x3d\x5b\x37\x5d\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x28\x29\x3b\x72\x69\x74\x65\x72\x5b\x22\x72\x65\x74\x75\x72\x6e\x22\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x53\x41\x46\x45\x5f\x43\x4c\x4f\x53\x49\x4e\x47\x3d\x74\x72\x75\x65\x7d\x3b\x41\x72\x72\x61\x79\x2e\x66\x72\x6f\x6d\x28\x72\x69\x74\x65\x72\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x68\x72\x6f\x77\x20\x32\x7d\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x2c\x73\x6b\x69\x70\x43\x6c\x6f\x73\x69\x6e\x67\x29\x7b\x69\x66\x28\x21\x73\x6b\x69\x70\x43\x6c\x6f\x73\x69\x6e\x67\x26\x26\x21\x53\x41\x46\x45\x5f\x43\x4c\x4f\x53\x49\x4e\x47\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x73\x61\x66\x65\x3d\x66\x61\x6c\x73\x65\x3b\x74\x72\x79\x7b\x76\x61\x72\x20\x61\x72\x72\x3d\x5b\x37\x5d\x3b\x76\x61\x72\x20\x69\x74\x65\x72\x3d\x61\x72\x72\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x28\x29\x3b\x69\x74\x65\x72\x2e\x6e\x65\x78\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x64\x6f\x6e\x65\x3a\x73\x61\x66\x65\x3d\x74\x72\x75\x65\x7d\x7d\x3b\x61\x72\x72\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x65\x72\x7d\x3b\x65\x78\x65\x63\x28\x61\x72\x72\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x61\x66\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x35\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x38\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x52\x2c\x22\x50\x72\x6f\x6d\x69\x73\x65\x22\x2c\x7b\x66\x69\x6e\x61\x6c\x6c\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x29\x7b\x76\x61\x72\x20\x43\x3d\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x63\x6f\x72\x65\x2e\x50\x72\x6f\x6d\x69\x73\x65\x7c\x7c\x67\x6c\x6f\x62\x61\x6c\x2e\x50\x72\x6f\x6d\x69\x73\x65\x29\x3b\x76\x61\x72\x20\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x74\x79\x70\x65\x6f\x66\x20\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x74\x68\x65\x6e\x28\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x78\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x28\x43\x2c\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x28\x29\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x78\x7d\x29\x7d\x3a\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x2c\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x28\x43\x2c\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x28\x29\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x68\x72\x6f\x77\x20\x65\x7d\x29\x7d\x3a\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x30\x29\x3b\x76\x61\x72\x20\x70\x65\x72\x66\x6f\x72\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x37\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2c\x22\x50\x72\x6f\x6d\x69\x73\x65\x22\x2c\x7b\x74\x72\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x66\x6e\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x66\x28\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x70\x65\x72\x66\x6f\x72\x6d\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x66\x6e\x29\x3b\x28\x72\x65\x73\x75\x6c\x74\x2e\x65\x3f\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x6a\x65\x63\x74\x3a\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x73\x6f\x6c\x76\x65\x29\x28\x72\x65\x73\x75\x6c\x74\x2e\x76\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x37\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x38\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x39\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x37\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x32\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x33\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x34\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x35\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x37\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x38\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x39\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x30\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x31\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x32\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x33\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x34\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x35\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x36\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x37\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x38\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x39\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x30\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x31\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x32\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x33\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x34\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x29\x2e\x53\x74\x72\x69\x6e\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x74\x6f\x41\x62\x73\x6f\x6c\x75\x74\x65\x49\x6e\x64\x65\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x32\x29\x3b\x76\x61\x72\x20\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x3d\x53\x74\x72\x69\x6e\x67\x2e\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x3b\x76\x61\x72\x20\x24\x66\x72\x6f\x6d\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x53\x74\x72\x69\x6e\x67\x2e\x66\x72\x6f\x6d\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x28\x21\x21\x24\x66\x72\x6f\x6d\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x26\x26\x24\x66\x72\x6f\x6d\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x31\x29\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x7b\x66\x72\x6f\x6d\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x28\x78\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x61\x4c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x63\x6f\x64\x65\x3b\x77\x68\x69\x6c\x65\x28\x61\x4c\x65\x6e\x3e\x69\x29\x7b\x63\x6f\x64\x65\x3d\x2b\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x2b\x2b\x5d\x3b\x69\x66\x28\x74\x6f\x41\x62\x73\x6f\x6c\x75\x74\x65\x49\x6e\x64\x65\x78\x28\x63\x6f\x64\x65\x2c\x31\x31\x31\x34\x31\x31\x31\x29\x21\x3d\x3d\x63\x6f\x64\x65\x29\x74\x68\x72\x6f\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x63\x6f\x64\x65\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x61\x20\x76\x61\x6c\x69\x64\x20\x63\x6f\x64\x65\x20\x70\x6f\x69\x6e\x74\x22\x29\x3b\x72\x65\x73\x2e\x70\x75\x73\x68\x28\x63\x6f\x64\x65\x3c\x36\x35\x35\x33\x36\x3f\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x28\x63\x6f\x64\x65\x29\x3a\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x28\x28\x28\x63\x6f\x64\x65\x2d\x3d\x36\x35\x35\x33\x36\x29\x3e\x3e\x31\x30\x29\x2b\x35\x35\x32\x39\x36\x2c\x63\x6f\x64\x65\x25\x31\x30\x32\x34\x2b\x35\x36\x33\x32\x30\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x2e\x6a\x6f\x69\x6e\x28\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x31\x29\x3b\x76\x61\x72\x20\x74\x6f\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x30\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x7b\x72\x61\x77\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x61\x77\x28\x63\x61\x6c\x6c\x53\x69\x74\x65\x29\x7b\x76\x61\x72\x20\x74\x70\x6c\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x63\x61\x6c\x6c\x53\x69\x74\x65\x2e\x72\x61\x77\x29\x3b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x74\x70\x6c\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x61\x4c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x72\x65\x73\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x3e\x69\x29\x7b\x72\x65\x73\x2e\x70\x75\x73\x68\x28\x53\x74\x72\x69\x6e\x67\x28\x74\x70\x6c\x5b\x69\x2b\x2b\x5d\x29\x29\x3b\x69\x66\x28\x69\x3c\x61\x4c\x65\x6e\x29\x72\x65\x73\x2e\x70\x75\x73\x68\x28\x53\x74\x72\x69\x6e\x67\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x5d\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x2e\x6a\x6f\x69\x6e\x28\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x30\x29\x28\x22\x74\x72\x69\x6d\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x24\x74\x72\x69\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x72\x69\x6d\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x74\x72\x69\x6d\x28\x74\x68\x69\x73\x2c\x33\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x29\x3b\x76\x61\x72\x20\x66\x61\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x38\x29\x3b\x76\x61\x72\x20\x73\x70\x61\x63\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x31\x29\x3b\x76\x61\x72\x20\x73\x70\x61\x63\x65\x3d\x22\x5b\x22\x2b\x73\x70\x61\x63\x65\x73\x2b\x22\x5d\x22\x3b\x76\x61\x72\x20\x6e\x6f\x6e\x3d\x22\xe2\x80\x8b\xc2\x85\x22\x3b\x76\x61\x72\x20\x6c\x74\x72\x69\x6d\x3d\x52\x65\x67\x45\x78\x70\x28\x22\x5e\x22\x2b\x73\x70\x61\x63\x65\x2b\x73\x70\x61\x63\x65\x2b\x22\x2a\x22\x29\x3b\x76\x61\x72\x20\x72\x74\x72\x69\x6d\x3d\x52\x65\x67\x45\x78\x70\x28\x73\x70\x61\x63\x65\x2b\x73\x70\x61\x63\x65\x2b\x22\x2a\x24\x22\x29\x3b\x76\x61\x72\x20\x65\x78\x70\x6f\x72\x74\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4b\x45\x59\x2c\x65\x78\x65\x63\x2c\x41\x4c\x49\x41\x53\x29\x7b\x76\x61\x72\x20\x65\x78\x70\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x46\x4f\x52\x43\x45\x3d\x66\x61\x69\x6c\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x73\x70\x61\x63\x65\x73\x5b\x4b\x45\x59\x5d\x28\x29\x7c\x7c\x6e\x6f\x6e\x5b\x4b\x45\x59\x5d\x28\x29\x21\x3d\x6e\x6f\x6e\x7d\x29\x3b\x76\x61\x72\x20\x66\x6e\x3d\x65\x78\x70\x5b\x4b\x45\x59\x5d\x3d\x46\x4f\x52\x43\x45\x3f\x65\x78\x65\x63\x28\x74\x72\x69\x6d\x29\x3a\x73\x70\x61\x63\x65\x73\x5b\x4b\x45\x59\x5d\x3b\x69\x66\x28\x41\x4c\x49\x41\x53\x29\x65\x78\x70\x5b\x41\x4c\x49\x41\x53\x5d\x3d\x66\x6e\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x46\x4f\x52\x43\x45\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x65\x78\x70\x29\x7d\x3b\x76\x61\x72\x20\x74\x72\x69\x6d\x3d\x65\x78\x70\x6f\x72\x74\x65\x72\x2e\x74\x72\x69\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x72\x69\x6e\x67\x2c\x54\x59\x50\x45\x29\x7b\x73\x74\x72\x69\x6e\x67\x3d\x53\x74\x72\x69\x6e\x67\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x73\x74\x72\x69\x6e\x67\x29\x29\x3b\x69\x66\x28\x54\x59\x50\x45\x26\x31\x29\x73\x74\x72\x69\x6e\x67\x3d\x73\x74\x72\x69\x6e\x67\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x6c\x74\x72\x69\x6d\x2c\x22\x22\x29\x3b\x69\x66\x28\x54\x59\x50\x45\x26\x32\x29\x73\x74\x72\x69\x6e\x67\x3d\x73\x74\x72\x69\x6e\x67\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x72\x74\x72\x69\x6d\x2c\x22\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x65\x78\x70\x6f\x72\x74\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x22\x5c\x74\x5c\x6e\x5c\x76\x5c\x66\x5c\x72\x20\xc2\xa0\xe1\x9a\x80\xe1\xa0\x8e\xe2\x80\x80\xe2\x80\x81\xe2\x80\x82\xe2\x80\x83\x22\x2b\x22\xe2\x80\x84\xe2\x80\x85\xe2\x80\x86\xe2\x80\x87\xe2\x80\x88\xe2\x80\x89\xe2\x80\x8a\xe2\x80\xaf\xe2\x81\x9f\xe3\x80\x80\x5c\x75\x32\x30\x32\x38\x5c\x75\x32\x30\x32\x39\x5c\x75\x66\x65\x66\x66\x22\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x24\x61\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x38\x29\x28\x66\x61\x6c\x73\x65\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x7b\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x41\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x41\x74\x28\x70\x6f\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x61\x74\x28\x74\x68\x69\x73\x2c\x70\x6f\x73\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x74\x6f\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x30\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x74\x65\x78\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x31\x29\x3b\x76\x61\x72\x20\x45\x4e\x44\x53\x5f\x57\x49\x54\x48\x3d\x22\x65\x6e\x64\x73\x57\x69\x74\x68\x22\x3b\x76\x61\x72\x20\x24\x65\x6e\x64\x73\x57\x69\x74\x68\x3d\x22\x22\x5b\x45\x4e\x44\x53\x5f\x57\x49\x54\x48\x5d\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x32\x29\x28\x45\x4e\x44\x53\x5f\x57\x49\x54\x48\x29\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x7b\x65\x6e\x64\x73\x57\x69\x74\x68\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x6e\x64\x73\x57\x69\x74\x68\x28\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x29\x7b\x76\x61\x72\x20\x74\x68\x61\x74\x3d\x63\x6f\x6e\x74\x65\x78\x74\x28\x74\x68\x69\x73\x2c\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x2c\x45\x4e\x44\x53\x5f\x57\x49\x54\x48\x29\x3b\x76\x61\x72\x20\x65\x6e\x64\x50\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x74\x68\x61\x74\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x65\x6e\x64\x3d\x65\x6e\x64\x50\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x6c\x65\x6e\x3a\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x65\x6e\x64\x50\x6f\x73\x69\x74\x69\x6f\x6e\x29\x2c\x6c\x65\x6e\x29\x3b\x76\x61\x72\x20\x73\x65\x61\x72\x63\x68\x3d\x53\x74\x72\x69\x6e\x67\x28\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x24\x65\x6e\x64\x73\x57\x69\x74\x68\x3f\x24\x65\x6e\x64\x73\x57\x69\x74\x68\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x73\x65\x61\x72\x63\x68\x2c\x65\x6e\x64\x29\x3a\x74\x68\x61\x74\x2e\x73\x6c\x69\x63\x65\x28\x65\x6e\x64\x2d\x73\x65\x61\x72\x63\x68\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x65\x6e\x64\x29\x3d\x3d\x3d\x73\x65\x61\x72\x63\x68\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x74\x65\x78\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x31\x29\x3b\x76\x61\x72\x20\x49\x4e\x43\x4c\x55\x44\x45\x53\x3d\x22\x69\x6e\x63\x6c\x75\x64\x65\x73\x22\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x32\x29\x28\x49\x4e\x43\x4c\x55\x44\x45\x53\x29\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x7b\x69\x6e\x63\x6c\x75\x64\x65\x73\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x63\x6c\x75\x64\x65\x73\x28\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x7e\x63\x6f\x6e\x74\x65\x78\x74\x28\x74\x68\x69\x73\x2c\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x2c\x49\x4e\x43\x4c\x55\x44\x45\x53\x29\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x7b\x72\x65\x70\x65\x61\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x36\x29\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x38\x29\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x70\x65\x61\x74\x28\x63\x6f\x75\x6e\x74\x29\x7b\x76\x61\x72\x20\x73\x74\x72\x3d\x53\x74\x72\x69\x6e\x67\x28\x64\x65\x66\x69\x6e\x65\x64\x28\x74\x68\x69\x73\x29\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x3d\x22\x22\x3b\x76\x61\x72\x20\x6e\x3d\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x28\x63\x6f\x75\x6e\x74\x29\x3b\x69\x66\x28\x6e\x3c\x30\x7c\x7c\x6e\x3d\x3d\x49\x6e\x66\x69\x6e\x69\x74\x79\x29\x74\x68\x72\x6f\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x43\x6f\x75\x6e\x74\x20\x63\x61\x6e\x27\x74\x20\x62\x65\x20\x6e\x65\x67\x61\x74\x69\x76\x65\x22\x29\x3b\x66\x6f\x72\x28\x3b\x6e\x3e\x30\x3b\x28\x6e\x3e\x3e\x3e\x3d\x31\x29\x26\x26\x28\x73\x74\x72\x2b\x3d\x73\x74\x72\x29\x29\x69\x66\x28\x6e\x26\x31\x29\x72\x65\x73\x2b\x3d\x73\x74\x72\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x29\x3b\x76\x61\x72\x20\x74\x6f\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x30\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x74\x65\x78\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x31\x29\x3b\x76\x61\x72\x20\x53\x54\x41\x52\x54\x53\x5f\x57\x49\x54\x48\x3d\x22\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x22\x3b\x76\x61\x72\x20\x24\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x3d\x22\x22\x5b\x53\x54\x41\x52\x54\x53\x5f\x57\x49\x54\x48\x5d\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x32\x29\x28\x53\x54\x41\x52\x54\x53\x5f\x57\x49\x54\x48\x29\x2c\x22\x53\x74\x72\x69\x6e\x67\x22\x2c\x7b\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x28\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x29\x7b\x76\x61\x72\x20\x74\x68\x61\x74\x3d\x63\x6f\x6e\x74\x65\x78\x74\x28\x74\x68\x69\x73\x2c\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x2c\x53\x54\x41\x52\x54\x53\x5f\x57\x49\x54\x48\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x74\x68\x61\x74\x2e\x6c\x65\x6e\x67\x74\x68\x29\x29\x3b\x76\x61\x72\x20\x73\x65\x61\x72\x63\x68\x3d\x53\x74\x72\x69\x6e\x67\x28\x73\x65\x61\x72\x63\x68\x53\x74\x72\x69\x6e\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x24\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x3f\x24\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x73\x65\x61\x72\x63\x68\x2c\x69\x6e\x64\x65\x78\x29\x3a\x74\x68\x61\x74\x2e\x73\x6c\x69\x63\x65\x28\x69\x6e\x64\x65\x78\x2c\x69\x6e\x64\x65\x78\x2b\x73\x65\x61\x72\x63\x68\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3d\x3d\x3d\x73\x65\x61\x72\x63\x68\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x61\x6e\x63\x68\x6f\x72\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x6e\x63\x68\x6f\x72\x28\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x61\x22\x2c\x22\x6e\x61\x6d\x65\x22\x2c\x6e\x61\x6d\x65\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x62\x69\x67\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x69\x67\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x62\x69\x67\x22\x2c\x22\x22\x2c\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x62\x6c\x69\x6e\x6b\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x6c\x69\x6e\x6b\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x62\x6c\x69\x6e\x6b\x22\x2c\x22\x22\x2c\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x62\x6f\x6c\x64\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x6f\x6c\x64\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x62\x22\x2c\x22\x22\x2c\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x66\x69\x78\x65\x64\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x69\x78\x65\x64\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x74\x74\x22\x2c\x22\x22\x2c\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x66\x6f\x6e\x74\x63\x6f\x6c\x6f\x72\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x6f\x6e\x74\x63\x6f\x6c\x6f\x72\x28\x63\x6f\x6c\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x66\x6f\x6e\x74\x22\x2c\x22\x63\x6f\x6c\x6f\x72\x22\x2c\x63\x6f\x6c\x6f\x72\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x66\x6f\x6e\x74\x73\x69\x7a\x65\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x6f\x6e\x74\x73\x69\x7a\x65\x28\x73\x69\x7a\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x66\x6f\x6e\x74\x22\x2c\x22\x73\x69\x7a\x65\x22\x2c\x73\x69\x7a\x65\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x69\x74\x61\x6c\x69\x63\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x74\x61\x6c\x69\x63\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x69\x22\x2c\x22\x22\x2c\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x6c\x69\x6e\x6b\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x69\x6e\x6b\x28\x75\x72\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x61\x22\x2c\x22\x68\x72\x65\x66\x22\x2c\x75\x72\x6c\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x6d\x61\x6c\x6c\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x22\x22\x2c\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x73\x74\x72\x69\x6b\x65\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6b\x65\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x73\x74\x72\x69\x6b\x65\x22\x2c\x22\x22\x2c\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x73\x75\x62\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x75\x62\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x73\x75\x62\x22\x2c\x22\x22\x2c\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x29\x28\x22\x73\x75\x70\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x75\x70\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x48\x54\x4d\x4c\x28\x74\x68\x69\x73\x2c\x22\x73\x75\x70\x22\x2c\x22\x22\x2c\x22\x22\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x32\x29\x28\x22\x6d\x61\x74\x63\x68\x22\x2c\x31\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x65\x66\x69\x6e\x65\x64\x2c\x4d\x41\x54\x43\x48\x2c\x24\x6d\x61\x74\x63\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x74\x63\x68\x28\x72\x65\x67\x65\x78\x70\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x4f\x3d\x64\x65\x66\x69\x6e\x65\x64\x28\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x66\x6e\x3d\x72\x65\x67\x65\x78\x70\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x72\x65\x67\x65\x78\x70\x5b\x4d\x41\x54\x43\x48\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x72\x65\x67\x65\x78\x70\x2c\x4f\x29\x3a\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x72\x65\x67\x65\x78\x70\x29\x5b\x4d\x41\x54\x43\x48\x5d\x28\x53\x74\x72\x69\x6e\x67\x28\x4f\x29\x29\x7d\x2c\x24\x6d\x61\x74\x63\x68\x5d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x32\x29\x28\x22\x72\x65\x70\x6c\x61\x63\x65\x22\x2c\x32\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x65\x66\x69\x6e\x65\x64\x2c\x52\x45\x50\x4c\x41\x43\x45\x2c\x24\x72\x65\x70\x6c\x61\x63\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x70\x6c\x61\x63\x65\x28\x73\x65\x61\x72\x63\x68\x56\x61\x6c\x75\x65\x2c\x72\x65\x70\x6c\x61\x63\x65\x56\x61\x6c\x75\x65\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x4f\x3d\x64\x65\x66\x69\x6e\x65\x64\x28\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x66\x6e\x3d\x73\x65\x61\x72\x63\x68\x56\x61\x6c\x75\x65\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x73\x65\x61\x72\x63\x68\x56\x61\x6c\x75\x65\x5b\x52\x45\x50\x4c\x41\x43\x45\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x73\x65\x61\x72\x63\x68\x56\x61\x6c\x75\x65\x2c\x4f\x2c\x72\x65\x70\x6c\x61\x63\x65\x56\x61\x6c\x75\x65\x29\x3a\x24\x72\x65\x70\x6c\x61\x63\x65\x2e\x63\x61\x6c\x6c\x28\x53\x74\x72\x69\x6e\x67\x28\x4f\x29\x2c\x73\x65\x61\x72\x63\x68\x56\x61\x6c\x75\x65\x2c\x72\x65\x70\x6c\x61\x63\x65\x56\x61\x6c\x75\x65\x29\x7d\x2c\x24\x72\x65\x70\x6c\x61\x63\x65\x5d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x32\x29\x28\x22\x73\x65\x61\x72\x63\x68\x22\x2c\x31\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x65\x66\x69\x6e\x65\x64\x2c\x53\x45\x41\x52\x43\x48\x2c\x24\x73\x65\x61\x72\x63\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x61\x72\x63\x68\x28\x72\x65\x67\x65\x78\x70\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x4f\x3d\x64\x65\x66\x69\x6e\x65\x64\x28\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x66\x6e\x3d\x72\x65\x67\x65\x78\x70\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x72\x65\x67\x65\x78\x70\x5b\x53\x45\x41\x52\x43\x48\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x72\x65\x67\x65\x78\x70\x2c\x4f\x29\x3a\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x72\x65\x67\x65\x78\x70\x29\x5b\x53\x45\x41\x52\x43\x48\x5d\x28\x53\x74\x72\x69\x6e\x67\x28\x4f\x29\x29\x7d\x2c\x24\x73\x65\x61\x72\x63\x68\x5d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x32\x29\x28\x22\x73\x70\x6c\x69\x74\x22\x2c\x32\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x65\x66\x69\x6e\x65\x64\x2c\x53\x50\x4c\x49\x54\x2c\x24\x73\x70\x6c\x69\x74\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x69\x73\x52\x65\x67\x45\x78\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x39\x29\x3b\x76\x61\x72\x20\x5f\x73\x70\x6c\x69\x74\x3d\x24\x73\x70\x6c\x69\x74\x3b\x76\x61\x72\x20\x24\x70\x75\x73\x68\x3d\x5b\x5d\x2e\x70\x75\x73\x68\x3b\x76\x61\x72\x20\x24\x53\x50\x4c\x49\x54\x3d\x22\x73\x70\x6c\x69\x74\x22\x3b\x76\x61\x72\x20\x4c\x45\x4e\x47\x54\x48\x3d\x22\x6c\x65\x6e\x67\x74\x68\x22\x3b\x76\x61\x72\x20\x4c\x41\x53\x54\x5f\x49\x4e\x44\x45\x58\x3d\x22\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x22\x3b\x69\x66\x28\x22\x61\x62\x62\x63\x22\x5b\x24\x53\x50\x4c\x49\x54\x5d\x28\x2f\x28\x62\x29\x2a\x2f\x29\x5b\x31\x5d\x3d\x3d\x22\x63\x22\x7c\x7c\x22\x74\x65\x73\x74\x22\x5b\x24\x53\x50\x4c\x49\x54\x5d\x28\x2f\x28\x3f\x3a\x29\x2f\x2c\x2d\x31\x29\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x21\x3d\x34\x7c\x7c\x22\x61\x62\x22\x5b\x24\x53\x50\x4c\x49\x54\x5d\x28\x2f\x28\x3f\x3a\x61\x62\x29\x2a\x2f\x29\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x21\x3d\x32\x7c\x7c\x22\x2e\x22\x5b\x24\x53\x50\x4c\x49\x54\x5d\x28\x2f\x28\x2e\x3f\x29\x28\x2e\x3f\x29\x2f\x29\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x21\x3d\x34\x7c\x7c\x22\x2e\x22\x5b\x24\x53\x50\x4c\x49\x54\x5d\x28\x2f\x28\x29\x28\x29\x2f\x29\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x3e\x31\x7c\x7c\x22\x22\x5b\x24\x53\x50\x4c\x49\x54\x5d\x28\x2f\x2e\x3f\x2f\x29\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x29\x7b\x76\x61\x72\x20\x4e\x50\x43\x47\x3d\x2f\x28\x29\x3f\x3f\x2f\x2e\x65\x78\x65\x63\x28\x22\x22\x29\x5b\x31\x5d\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x24\x73\x70\x6c\x69\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2c\x6c\x69\x6d\x69\x74\x29\x7b\x76\x61\x72\x20\x73\x74\x72\x69\x6e\x67\x3d\x53\x74\x72\x69\x6e\x67\x28\x74\x68\x69\x73\x29\x3b\x69\x66\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x6c\x69\x6d\x69\x74\x3d\x3d\x3d\x30\x29\x72\x65\x74\x75\x72\x6e\x5b\x5d\x3b\x69\x66\x28\x21\x69\x73\x52\x65\x67\x45\x78\x70\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x70\x6c\x69\x74\x2e\x63\x61\x6c\x6c\x28\x73\x74\x72\x69\x6e\x67\x2c\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2c\x6c\x69\x6d\x69\x74\x29\x3b\x76\x61\x72\x20\x6f\x75\x74\x70\x75\x74\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x66\x6c\x61\x67\x73\x3d\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2e\x69\x67\x6e\x6f\x72\x65\x43\x61\x73\x65\x3f\x22\x69\x22\x3a\x22\x22\x29\x2b\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2e\x6d\x75\x6c\x74\x69\x6c\x69\x6e\x65\x3f\x22\x6d\x22\x3a\x22\x22\x29\x2b\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2e\x75\x6e\x69\x63\x6f\x64\x65\x3f\x22\x75\x22\x3a\x22\x22\x29\x2b\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2e\x73\x74\x69\x63\x6b\x79\x3f\x22\x79\x22\x3a\x22\x22\x29\x3b\x76\x61\x72\x20\x6c\x61\x73\x74\x4c\x61\x73\x74\x49\x6e\x64\x65\x78\x3d\x30\x3b\x76\x61\x72\x20\x73\x70\x6c\x69\x74\x4c\x69\x6d\x69\x74\x3d\x6c\x69\x6d\x69\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x34\x32\x39\x34\x39\x36\x37\x32\x39\x35\x3a\x6c\x69\x6d\x69\x74\x3e\x3e\x3e\x30\x3b\x76\x61\x72\x20\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x43\x6f\x70\x79\x3d\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2e\x73\x6f\x75\x72\x63\x65\x2c\x66\x6c\x61\x67\x73\x2b\x22\x67\x22\x29\x3b\x76\x61\x72\x20\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x32\x2c\x6d\x61\x74\x63\x68\x2c\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x2c\x6c\x61\x73\x74\x4c\x65\x6e\x67\x74\x68\x2c\x69\x3b\x69\x66\x28\x21\x4e\x50\x43\x47\x29\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x32\x3d\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x22\x5e\x22\x2b\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x43\x6f\x70\x79\x2e\x73\x6f\x75\x72\x63\x65\x2b\x22\x24\x28\x3f\x21\x5c\x5c\x73\x29\x22\x2c\x66\x6c\x61\x67\x73\x29\x3b\x77\x68\x69\x6c\x65\x28\x6d\x61\x74\x63\x68\x3d\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x43\x6f\x70\x79\x2e\x65\x78\x65\x63\x28\x73\x74\x72\x69\x6e\x67\x29\x29\x7b\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x3d\x6d\x61\x74\x63\x68\x2e\x69\x6e\x64\x65\x78\x2b\x6d\x61\x74\x63\x68\x5b\x30\x5d\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x3b\x69\x66\x28\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x3e\x6c\x61\x73\x74\x4c\x61\x73\x74\x49\x6e\x64\x65\x78\x29\x7b\x6f\x75\x74\x70\x75\x74\x2e\x70\x75\x73\x68\x28\x73\x74\x72\x69\x6e\x67\x2e\x73\x6c\x69\x63\x65\x28\x6c\x61\x73\x74\x4c\x61\x73\x74\x49\x6e\x64\x65\x78\x2c\x6d\x61\x74\x63\x68\x2e\x69\x6e\x64\x65\x78\x29\x29\x3b\x69\x66\x28\x21\x4e\x50\x43\x47\x26\x26\x6d\x61\x74\x63\x68\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x3e\x31\x29\x6d\x61\x74\x63\x68\x5b\x30\x5d\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x32\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x6f\x72\x28\x69\x3d\x31\x3b\x69\x3c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x2d\x32\x3b\x69\x2b\x2b\x29\x69\x66\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x5d\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x6d\x61\x74\x63\x68\x5b\x69\x5d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x29\x3b\x69\x66\x28\x6d\x61\x74\x63\x68\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x3e\x31\x26\x26\x6d\x61\x74\x63\x68\x2e\x69\x6e\x64\x65\x78\x3c\x73\x74\x72\x69\x6e\x67\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x29\x24\x70\x75\x73\x68\x2e\x61\x70\x70\x6c\x79\x28\x6f\x75\x74\x70\x75\x74\x2c\x6d\x61\x74\x63\x68\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x29\x3b\x6c\x61\x73\x74\x4c\x65\x6e\x67\x74\x68\x3d\x6d\x61\x74\x63\x68\x5b\x30\x5d\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x3b\x6c\x61\x73\x74\x4c\x61\x73\x74\x49\x6e\x64\x65\x78\x3d\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x3b\x69\x66\x28\x6f\x75\x74\x70\x75\x74\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x3e\x3d\x73\x70\x6c\x69\x74\x4c\x69\x6d\x69\x74\x29\x62\x72\x65\x61\x6b\x7d\x69\x66\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x43\x6f\x70\x79\x5b\x4c\x41\x53\x54\x5f\x49\x4e\x44\x45\x58\x5d\x3d\x3d\x3d\x6d\x61\x74\x63\x68\x2e\x69\x6e\x64\x65\x78\x29\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x43\x6f\x70\x79\x5b\x4c\x41\x53\x54\x5f\x49\x4e\x44\x45\x58\x5d\x2b\x2b\x7d\x69\x66\x28\x6c\x61\x73\x74\x4c\x61\x73\x74\x49\x6e\x64\x65\x78\x3d\x3d\x3d\x73\x74\x72\x69\x6e\x67\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x29\x7b\x69\x66\x28\x6c\x61\x73\x74\x4c\x65\x6e\x67\x74\x68\x7c\x7c\x21\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x43\x6f\x70\x79\x2e\x74\x65\x73\x74\x28\x22\x22\x29\x29\x6f\x75\x74\x70\x75\x74\x2e\x70\x75\x73\x68\x28\x22\x22\x29\x7d\x65\x6c\x73\x65\x20\x6f\x75\x74\x70\x75\x74\x2e\x70\x75\x73\x68\x28\x73\x74\x72\x69\x6e\x67\x2e\x73\x6c\x69\x63\x65\x28\x6c\x61\x73\x74\x4c\x61\x73\x74\x49\x6e\x64\x65\x78\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x75\x74\x70\x75\x74\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x3e\x73\x70\x6c\x69\x74\x4c\x69\x6d\x69\x74\x3f\x6f\x75\x74\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x73\x70\x6c\x69\x74\x4c\x69\x6d\x69\x74\x29\x3a\x6f\x75\x74\x70\x75\x74\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x22\x30\x22\x5b\x24\x53\x50\x4c\x49\x54\x5d\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x30\x29\x5b\x4c\x45\x4e\x47\x54\x48\x5d\x29\x7b\x24\x73\x70\x6c\x69\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2c\x6c\x69\x6d\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x6c\x69\x6d\x69\x74\x3d\x3d\x3d\x30\x3f\x5b\x5d\x3a\x5f\x73\x70\x6c\x69\x74\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2c\x6c\x69\x6d\x69\x74\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x5b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x70\x6c\x69\x74\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2c\x6c\x69\x6d\x69\x74\x29\x7b\x76\x61\x72\x20\x4f\x3d\x64\x65\x66\x69\x6e\x65\x64\x28\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x66\x6e\x3d\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x5b\x53\x50\x4c\x49\x54\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2c\x4f\x2c\x6c\x69\x6d\x69\x74\x29\x3a\x24\x73\x70\x6c\x69\x74\x2e\x63\x61\x6c\x6c\x28\x53\x74\x72\x69\x6e\x67\x28\x4f\x29\x2c\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x2c\x6c\x69\x6d\x69\x74\x29\x7d\x2c\x24\x73\x70\x6c\x69\x74\x5d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6b\x65\x79\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x79\x70\x65\x6f\x66\x32\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x34\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x29\x3b\x76\x61\x72\x20\x5f\x73\x79\x73\x74\x65\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x38\x29\x3b\x76\x61\x72\x20\x5f\x73\x79\x73\x74\x65\x6d\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x79\x73\x74\x65\x6d\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x61\x70\x69\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x39\x29\x3b\x76\x61\x72\x20\x5f\x61\x70\x69\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x70\x69\x73\x29\x3b\x76\x61\x72\x20\x5f\x61\x6c\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x34\x29\x3b\x76\x61\x72\x20\x41\x6c\x6c\x50\x6c\x75\x67\x69\x6e\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x61\x6c\x6c\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x69\x66\x28\x66\x61\x6c\x73\x65\x29\x7b\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x50\x65\x72\x66\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x61\x63\x74\x2d\x64\x6f\x6d\x2f\x6c\x69\x62\x2f\x52\x65\x61\x63\x74\x50\x65\x72\x66\x22\x29\x7d\x76\x61\x72\x20\x5f\x62\x75\x69\x6c\x64\x49\x6e\x66\x6f\x3d\x7b\x50\x41\x43\x4b\x41\x47\x45\x5f\x56\x45\x52\x53\x49\x4f\x4e\x3a\x22\x33\x2e\x32\x33\x2e\x30\x22\x2c\x47\x49\x54\x5f\x43\x4f\x4d\x4d\x49\x54\x3a\x22\x67\x32\x33\x64\x37\x32\x36\x30\x66\x22\x2c\x47\x49\x54\x5f\x44\x49\x52\x54\x59\x3a\x74\x72\x75\x65\x2c\x48\x4f\x53\x54\x4e\x41\x4d\x45\x3a\x22\x6a\x65\x6e\x69\x6e\x73\x2d\x73\x77\x61\x67\x67\x65\x72\x2d\x6f\x73\x73\x22\x2c\x42\x55\x49\x4c\x44\x5f\x54\x49\x4d\x45\x3a\x22\x53\x61\x74\x2c\x20\x32\x39\x20\x4a\x75\x6e\x20\x32\x30\x31\x39\x20\x31\x39\x3a\x34\x32\x3a\x35\x39\x20\x47\x4d\x54\x22\x7d\x2c\x47\x49\x54\x5f\x44\x49\x52\x54\x59\x3d\x5f\x62\x75\x69\x6c\x64\x49\x6e\x66\x6f\x2e\x47\x49\x54\x5f\x44\x49\x52\x54\x59\x2c\x47\x49\x54\x5f\x43\x4f\x4d\x4d\x49\x54\x3d\x5f\x62\x75\x69\x6c\x64\x49\x6e\x66\x6f\x2e\x47\x49\x54\x5f\x43\x4f\x4d\x4d\x49\x54\x2c\x50\x41\x43\x4b\x41\x47\x45\x5f\x56\x45\x52\x53\x49\x4f\x4e\x3d\x5f\x62\x75\x69\x6c\x64\x49\x6e\x66\x6f\x2e\x50\x41\x43\x4b\x41\x47\x45\x5f\x56\x45\x52\x53\x49\x4f\x4e\x2c\x48\x4f\x53\x54\x4e\x41\x4d\x45\x3d\x5f\x62\x75\x69\x6c\x64\x49\x6e\x66\x6f\x2e\x48\x4f\x53\x54\x4e\x41\x4d\x45\x2c\x42\x55\x49\x4c\x44\x5f\x54\x49\x4d\x45\x3d\x5f\x62\x75\x69\x6c\x64\x49\x6e\x66\x6f\x2e\x42\x55\x49\x4c\x44\x5f\x54\x49\x4d\x45\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x77\x61\x67\x67\x65\x72\x55\x49\x28\x6f\x70\x74\x73\x29\x7b\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x76\x65\x72\x73\x69\x6f\x6e\x73\x3d\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x76\x65\x72\x73\x69\x6f\x6e\x73\x7c\x7c\x7b\x7d\x3b\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x76\x65\x72\x73\x69\x6f\x6e\x73\x2e\x73\x77\x61\x67\x67\x65\x72\x55\x69\x3d\x7b\x76\x65\x72\x73\x69\x6f\x6e\x3a\x50\x41\x43\x4b\x41\x47\x45\x5f\x56\x45\x52\x53\x49\x4f\x4e\x2c\x67\x69\x74\x52\x65\x76\x69\x73\x69\x6f\x6e\x3a\x47\x49\x54\x5f\x43\x4f\x4d\x4d\x49\x54\x2c\x67\x69\x74\x44\x69\x72\x74\x79\x3a\x47\x49\x54\x5f\x44\x49\x52\x54\x59\x2c\x62\x75\x69\x6c\x64\x54\x69\x6d\x65\x73\x74\x61\x6d\x70\x3a\x42\x55\x49\x4c\x44\x5f\x54\x49\x4d\x45\x2c\x6d\x61\x63\x68\x69\x6e\x65\x3a\x48\x4f\x53\x54\x4e\x41\x4d\x45\x7d\x3b\x76\x61\x72\x20\x64\x65\x66\x61\x75\x6c\x74\x73\x3d\x7b\x64\x6f\x6d\x5f\x69\x64\x3a\x6e\x75\x6c\x6c\x2c\x64\x6f\x6d\x4e\x6f\x64\x65\x3a\x6e\x75\x6c\x6c\x2c\x73\x70\x65\x63\x3a\x7b\x7d\x2c\x75\x72\x6c\x3a\x22\x22\x2c\x75\x72\x6c\x73\x3a\x6e\x75\x6c\x6c\x2c\x6c\x61\x79\x6f\x75\x74\x3a\x22\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x22\x2c\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x3a\x22\x6c\x69\x73\x74\x22\x2c\x6d\x61\x78\x44\x69\x73\x70\x6c\x61\x79\x65\x64\x54\x61\x67\x73\x3a\x6e\x75\x6c\x6c\x2c\x66\x69\x6c\x74\x65\x72\x3a\x6e\x75\x6c\x6c\x2c\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3a\x22\x68\x74\x74\x70\x73\x3a\x2f\x2f\x6f\x6e\x6c\x69\x6e\x65\x2e\x73\x77\x61\x67\x67\x65\x72\x2e\x69\x6f\x2f\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x22\x2c\x6f\x61\x75\x74\x68\x32\x52\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x3a\x77\x69\x6e\x64\x6f\x77\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x63\x6f\x6c\x2b\x22\x2f\x2f\x22\x2b\x77\x69\x6e\x64\x6f\x77\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x2e\x68\x6f\x73\x74\x2b\x22\x2f\x6f\x61\x75\x74\x68\x32\x2d\x72\x65\x64\x69\x72\x65\x63\x74\x2e\x68\x74\x6d\x6c\x22\x2c\x63\x6f\x6e\x66\x69\x67\x73\x3a\x7b\x7d\x2c\x63\x75\x73\x74\x6f\x6d\x3a\x7b\x7d\x2c\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3a\x66\x61\x6c\x73\x65\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3a\x66\x61\x6c\x73\x65\x2c\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x3a\x66\x61\x6c\x73\x65\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x7d\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x7d\x2c\x73\x68\x6f\x77\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3a\x74\x72\x75\x65\x2c\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x52\x65\x6e\x64\x65\x72\x69\x6e\x67\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x2c\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3a\x31\x2c\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x73\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3a\x31\x2c\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3a\x66\x61\x6c\x73\x65\x2c\x73\x68\x6f\x77\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3a\x66\x61\x6c\x73\x65\x2c\x77\x69\x74\x68\x43\x72\x65\x64\x65\x6e\x74\x69\x61\x6c\x73\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x53\x75\x62\x6d\x69\x74\x4d\x65\x74\x68\x6f\x64\x73\x3a\x5b\x22\x67\x65\x74\x22\x2c\x22\x70\x75\x74\x22\x2c\x22\x70\x6f\x73\x74\x22\x2c\x22\x64\x65\x6c\x65\x74\x65\x22\x2c\x22\x6f\x70\x74\x69\x6f\x6e\x73\x22\x2c\x22\x68\x65\x61\x64\x22\x2c\x22\x70\x61\x74\x63\x68\x22\x2c\x22\x74\x72\x61\x63\x65\x22\x5d\x2c\x70\x72\x65\x73\x65\x74\x73\x3a\x5b\x5f\x61\x70\x69\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x5d\x2c\x70\x6c\x75\x67\x69\x6e\x73\x3a\x5b\x5d\x2c\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x3a\x7b\x7d\x2c\x66\x6e\x3a\x7b\x7d\x2c\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x7b\x7d\x7d\x3b\x76\x61\x72\x20\x71\x75\x65\x72\x79\x43\x6f\x6e\x66\x69\x67\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x70\x61\x72\x73\x65\x53\x65\x61\x72\x63\x68\x29\x28\x29\x3b\x76\x61\x72\x20\x64\x6f\x6d\x4e\x6f\x64\x65\x3d\x6f\x70\x74\x73\x2e\x64\x6f\x6d\x4e\x6f\x64\x65\x3b\x64\x65\x6c\x65\x74\x65\x20\x6f\x70\x74\x73\x2e\x64\x6f\x6d\x4e\x6f\x64\x65\x3b\x76\x61\x72\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x3d\x28\x30\x2c\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x64\x65\x66\x61\x75\x6c\x74\x73\x2c\x6f\x70\x74\x73\x2c\x71\x75\x65\x72\x79\x43\x6f\x6e\x66\x69\x67\x29\x3b\x76\x61\x72\x20\x73\x74\x6f\x72\x65\x43\x6f\x6e\x66\x69\x67\x73\x3d\x7b\x73\x79\x73\x74\x65\x6d\x3a\x7b\x63\x6f\x6e\x66\x69\x67\x73\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x63\x6f\x6e\x66\x69\x67\x73\x7d\x2c\x70\x6c\x75\x67\x69\x6e\x73\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x70\x72\x65\x73\x65\x74\x73\x2c\x73\x74\x61\x74\x65\x3a\x28\x30\x2c\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x6c\x61\x79\x6f\x75\x74\x3a\x7b\x6c\x61\x79\x6f\x75\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x6c\x61\x79\x6f\x75\x74\x2c\x66\x69\x6c\x74\x65\x72\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x66\x69\x6c\x74\x65\x72\x7d\x2c\x73\x70\x65\x63\x3a\x7b\x73\x70\x65\x63\x3a\x22\x22\x2c\x75\x72\x6c\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x75\x72\x6c\x7d\x7d\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x29\x7d\x3b\x69\x66\x28\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x29\x7b\x69\x66\x28\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x6b\x65\x79\x29\x26\x26\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x5b\x6b\x65\x79\x5d\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x64\x65\x6c\x65\x74\x65\x20\x73\x74\x6f\x72\x65\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x74\x61\x74\x65\x5b\x6b\x65\x79\x5d\x7d\x7d\x7d\x76\x61\x72\x20\x69\x6e\x6c\x69\x6e\x65\x50\x6c\x75\x67\x69\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x6c\x69\x6e\x65\x50\x6c\x75\x67\x69\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x66\x6e\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x66\x6e\x2c\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x73\x74\x61\x74\x65\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x73\x74\x61\x74\x65\x7d\x7d\x3b\x76\x61\x72\x20\x73\x74\x6f\x72\x65\x3d\x6e\x65\x77\x20\x5f\x73\x79\x73\x74\x65\x6d\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x28\x73\x74\x6f\x72\x65\x43\x6f\x6e\x66\x69\x67\x73\x29\x3b\x73\x74\x6f\x72\x65\x2e\x72\x65\x67\x69\x73\x74\x65\x72\x28\x5b\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x70\x6c\x75\x67\x69\x6e\x73\x2c\x69\x6e\x6c\x69\x6e\x65\x50\x6c\x75\x67\x69\x6e\x5d\x29\x3b\x76\x61\x72\x20\x73\x79\x73\x74\x65\x6d\x3d\x73\x74\x6f\x72\x65\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x3b\x76\x61\x72\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x53\x70\x65\x63\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x53\x70\x65\x63\x28\x66\x65\x74\x63\x68\x65\x64\x43\x6f\x6e\x66\x69\x67\x29\x7b\x76\x61\x72\x20\x6c\x6f\x63\x61\x6c\x43\x6f\x6e\x66\x69\x67\x3d\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x67\x65\x74\x4c\x6f\x63\x61\x6c\x43\x6f\x6e\x66\x69\x67\x3f\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x67\x65\x74\x4c\x6f\x63\x61\x6c\x43\x6f\x6e\x66\x69\x67\x28\x29\x3a\x7b\x7d\x3b\x76\x61\x72\x20\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x3d\x28\x30\x2c\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6c\x6f\x63\x61\x6c\x43\x6f\x6e\x66\x69\x67\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2c\x66\x65\x74\x63\x68\x65\x64\x43\x6f\x6e\x66\x69\x67\x7c\x7c\x7b\x7d\x2c\x71\x75\x65\x72\x79\x43\x6f\x6e\x66\x69\x67\x29\x3b\x69\x66\x28\x64\x6f\x6d\x4e\x6f\x64\x65\x29\x7b\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x64\x6f\x6d\x4e\x6f\x64\x65\x3d\x64\x6f\x6d\x4e\x6f\x64\x65\x7d\x73\x74\x6f\x72\x65\x2e\x73\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x29\x3b\x73\x79\x73\x74\x65\x6d\x2e\x63\x6f\x6e\x66\x69\x67\x73\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6c\x6f\x61\x64\x65\x64\x28\x29\x3b\x69\x66\x28\x66\x65\x74\x63\x68\x65\x64\x43\x6f\x6e\x66\x69\x67\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x69\x66\x28\x21\x71\x75\x65\x72\x79\x43\x6f\x6e\x66\x69\x67\x2e\x75\x72\x6c\x26\x26\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x73\x70\x65\x63\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x73\x70\x65\x63\x29\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x55\x72\x6c\x28\x22\x22\x29\x3b\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x4c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x22\x73\x75\x63\x63\x65\x73\x73\x22\x29\x3b\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x53\x70\x65\x63\x28\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x73\x70\x65\x63\x29\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x26\x26\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x75\x72\x6c\x26\x26\x21\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x75\x72\x6c\x73\x29\x7b\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x55\x72\x6c\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x75\x72\x6c\x29\x3b\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x75\x72\x6c\x29\x7d\x7d\x69\x66\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x64\x6f\x6d\x4e\x6f\x64\x65\x29\x7b\x73\x79\x73\x74\x65\x6d\x2e\x72\x65\x6e\x64\x65\x72\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x64\x6f\x6d\x4e\x6f\x64\x65\x2c\x22\x41\x70\x70\x22\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x64\x6f\x6d\x5f\x69\x64\x29\x7b\x76\x61\x72\x20\x5f\x64\x6f\x6d\x4e\x6f\x64\x65\x3d\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x71\x75\x65\x72\x79\x53\x65\x6c\x65\x63\x74\x6f\x72\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x64\x6f\x6d\x5f\x69\x64\x29\x3b\x73\x79\x73\x74\x65\x6d\x2e\x72\x65\x6e\x64\x65\x72\x28\x5f\x64\x6f\x6d\x4e\x6f\x64\x65\x2c\x22\x41\x70\x70\x22\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x64\x6f\x6d\x5f\x69\x64\x3d\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x6d\x65\x72\x67\x65\x64\x43\x6f\x6e\x66\x69\x67\x2e\x64\x6f\x6d\x4e\x6f\x64\x65\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x7d\x65\x6c\x73\x65\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x22\x53\x6b\x69\x70\x70\x65\x64\x20\x72\x65\x6e\x64\x65\x72\x69\x6e\x67\x3a\x20\x6e\x6f\x20\x60\x64\x6f\x6d\x5f\x69\x64\x60\x20\x6f\x72\x20\x60\x64\x6f\x6d\x4e\x6f\x64\x65\x60\x20\x77\x61\x73\x20\x73\x70\x65\x63\x69\x66\x69\x65\x64\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x79\x73\x74\x65\x6d\x7d\x3b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x55\x72\x6c\x3d\x71\x75\x65\x72\x79\x43\x6f\x6e\x66\x69\x67\x2e\x63\x6f\x6e\x66\x69\x67\x7c\x7c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x63\x6f\x6e\x66\x69\x67\x55\x72\x6c\x3b\x69\x66\x28\x21\x63\x6f\x6e\x66\x69\x67\x55\x72\x6c\x7c\x7c\x21\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x7c\x7c\x21\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x42\x79\x55\x72\x6c\x7c\x7c\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x42\x79\x55\x72\x6c\x26\x26\x21\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x42\x79\x55\x72\x6c\x28\x7b\x75\x72\x6c\x3a\x63\x6f\x6e\x66\x69\x67\x55\x72\x6c\x2c\x6c\x6f\x61\x64\x52\x65\x6d\x6f\x74\x65\x43\x6f\x6e\x66\x69\x67\x3a\x74\x72\x75\x65\x2c\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x72\x65\x71\x75\x65\x73\x74\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x43\x6f\x6e\x66\x69\x67\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x49\x6e\x74\x65\x72\x63\x65\x70\x74\x6f\x72\x7d\x2c\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x53\x70\x65\x63\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x53\x70\x65\x63\x28\x29\x7d\x65\x6c\x73\x65\x7b\x73\x79\x73\x74\x65\x6d\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x42\x79\x55\x72\x6c\x28\x63\x6f\x6e\x66\x69\x67\x55\x72\x6c\x2c\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x53\x70\x65\x63\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x79\x73\x74\x65\x6d\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x72\x65\x73\x65\x74\x73\x3d\x7b\x61\x70\x69\x73\x3a\x5f\x61\x70\x69\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x6c\x75\x67\x69\x6e\x73\x3d\x41\x6c\x6c\x50\x6c\x75\x67\x69\x6e\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x3b\x76\x61\x72\x20\x24\x4a\x53\x4f\x4e\x3d\x63\x6f\x72\x65\x2e\x4a\x53\x4f\x4e\x7c\x7c\x28\x63\x6f\x72\x65\x2e\x4a\x53\x4f\x4e\x3d\x7b\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3a\x4a\x53\x4f\x4e\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x4a\x53\x4f\x4e\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x2e\x61\x70\x70\x6c\x79\x28\x24\x4a\x53\x4f\x4e\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x38\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x29\x3b\x76\x61\x72\x20\x24\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x30\x29\x28\x22\x6b\x65\x79\x73\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6b\x65\x79\x73\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x6b\x65\x79\x73\x28\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x30\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x33\x29\x2e\x66\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x32\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x33\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x37\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x36\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x37\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x53\x79\x6d\x62\x6f\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x29\x3b\x76\x61\x72\x20\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x76\x61\x72\x20\x72\x65\x64\x65\x66\x69\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x31\x29\x3b\x76\x61\x72\x20\x4d\x45\x54\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x34\x29\x2e\x4b\x45\x59\x3b\x76\x61\x72\x20\x24\x66\x61\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x29\x3b\x76\x61\x72\x20\x73\x68\x61\x72\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x32\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x29\x3b\x76\x61\x72\x20\x75\x69\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x34\x29\x3b\x76\x61\x72\x20\x77\x6b\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x3b\x76\x61\x72\x20\x77\x6b\x73\x45\x78\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x33\x29\x3b\x76\x61\x72\x20\x77\x6b\x73\x44\x65\x66\x69\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x35\x29\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x34\x29\x3b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x31\x29\x3b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x29\x3b\x76\x61\x72\x20\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x39\x29\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x32\x29\x3b\x76\x61\x72\x20\x67\x4f\x50\x4e\x45\x78\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x37\x35\x29\x3b\x76\x61\x72\x20\x24\x47\x4f\x50\x44\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x33\x29\x3b\x76\x61\x72\x20\x24\x44\x50\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x3b\x76\x61\x72\x20\x24\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x29\x3b\x76\x61\x72\x20\x67\x4f\x50\x44\x3d\x24\x47\x4f\x50\x44\x2e\x66\x3b\x76\x61\x72\x20\x64\x50\x3d\x24\x44\x50\x2e\x66\x3b\x76\x61\x72\x20\x67\x4f\x50\x4e\x3d\x67\x4f\x50\x4e\x45\x78\x74\x2e\x66\x3b\x76\x61\x72\x20\x24\x53\x79\x6d\x62\x6f\x6c\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x53\x79\x6d\x62\x6f\x6c\x3b\x76\x61\x72\x20\x24\x4a\x53\x4f\x4e\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x4a\x53\x4f\x4e\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x24\x4a\x53\x4f\x4e\x26\x26\x24\x4a\x53\x4f\x4e\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3b\x76\x61\x72\x20\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x3d\x22\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x22\x3b\x76\x61\x72\x20\x48\x49\x44\x44\x45\x4e\x3d\x77\x6b\x73\x28\x22\x5f\x68\x69\x64\x64\x65\x6e\x22\x29\x3b\x76\x61\x72\x20\x54\x4f\x5f\x50\x52\x49\x4d\x49\x54\x49\x56\x45\x3d\x77\x6b\x73\x28\x22\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x45\x6e\x75\x6d\x3d\x7b\x7d\x2e\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x52\x65\x67\x69\x73\x74\x72\x79\x3d\x73\x68\x61\x72\x65\x64\x28\x22\x73\x79\x6d\x62\x6f\x6c\x2d\x72\x65\x67\x69\x73\x74\x72\x79\x22\x29\x3b\x76\x61\x72\x20\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x73\x68\x61\x72\x65\x64\x28\x22\x73\x79\x6d\x62\x6f\x6c\x73\x22\x29\x3b\x76\x61\x72\x20\x4f\x50\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x73\x68\x61\x72\x65\x64\x28\x22\x6f\x70\x2d\x73\x79\x6d\x62\x6f\x6c\x73\x22\x29\x3b\x76\x61\x72\x20\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x3b\x76\x61\x72\x20\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x3d\x74\x79\x70\x65\x6f\x66\x20\x24\x53\x79\x6d\x62\x6f\x6c\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3b\x76\x61\x72\x20\x51\x4f\x62\x6a\x65\x63\x74\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x51\x4f\x62\x6a\x65\x63\x74\x3b\x76\x61\x72\x20\x73\x65\x74\x74\x65\x72\x3d\x21\x51\x4f\x62\x6a\x65\x63\x74\x7c\x7c\x21\x51\x4f\x62\x6a\x65\x63\x74\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x7c\x7c\x21\x51\x4f\x62\x6a\x65\x63\x74\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x2e\x66\x69\x6e\x64\x43\x68\x69\x6c\x64\x3b\x76\x61\x72\x20\x73\x65\x74\x53\x79\x6d\x62\x6f\x6c\x44\x65\x73\x63\x3d\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x26\x26\x24\x66\x61\x69\x6c\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x63\x72\x65\x61\x74\x65\x28\x64\x50\x28\x7b\x7d\x2c\x22\x61\x22\x2c\x7b\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x50\x28\x74\x68\x69\x73\x2c\x22\x61\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x37\x7d\x29\x2e\x61\x7d\x7d\x29\x29\x2e\x61\x21\x3d\x37\x7d\x29\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x2c\x6b\x65\x79\x2c\x44\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x74\x6f\x44\x65\x73\x63\x3d\x67\x4f\x50\x44\x28\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2c\x6b\x65\x79\x29\x3b\x69\x66\x28\x70\x72\x6f\x74\x6f\x44\x65\x73\x63\x29\x64\x65\x6c\x65\x74\x65\x20\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x5b\x6b\x65\x79\x5d\x3b\x64\x50\x28\x69\x74\x2c\x6b\x65\x79\x2c\x44\x29\x3b\x69\x66\x28\x70\x72\x6f\x74\x6f\x44\x65\x73\x63\x26\x26\x69\x74\x21\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x29\x64\x50\x28\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2c\x6b\x65\x79\x2c\x70\x72\x6f\x74\x6f\x44\x65\x73\x63\x29\x7d\x3a\x64\x50\x3b\x76\x61\x72\x20\x77\x72\x61\x70\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x67\x29\x7b\x76\x61\x72\x20\x73\x79\x6d\x3d\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x5b\x74\x61\x67\x5d\x3d\x5f\x63\x72\x65\x61\x74\x65\x28\x24\x53\x79\x6d\x62\x6f\x6c\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x29\x3b\x73\x79\x6d\x2e\x5f\x6b\x3d\x74\x61\x67\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x79\x6d\x7d\x3b\x76\x61\x72\x20\x69\x73\x53\x79\x6d\x62\x6f\x6c\x3d\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x24\x53\x79\x6d\x62\x6f\x6c\x2e\x69\x74\x65\x72\x61\x74\x6f\x72\x3d\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x3d\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x7d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x24\x53\x79\x6d\x62\x6f\x6c\x7d\x3b\x76\x61\x72\x20\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x69\x74\x2c\x6b\x65\x79\x2c\x44\x29\x7b\x69\x66\x28\x69\x74\x3d\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x29\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x4f\x50\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x2c\x44\x29\x3b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x3b\x6b\x65\x79\x3d\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x6b\x65\x79\x2c\x74\x72\x75\x65\x29\x3b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x44\x29\x3b\x69\x66\x28\x68\x61\x73\x28\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x29\x29\x7b\x69\x66\x28\x21\x44\x2e\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x29\x7b\x69\x66\x28\x21\x68\x61\x73\x28\x69\x74\x2c\x48\x49\x44\x44\x45\x4e\x29\x29\x64\x50\x28\x69\x74\x2c\x48\x49\x44\x44\x45\x4e\x2c\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x28\x31\x2c\x7b\x7d\x29\x29\x3b\x69\x74\x5b\x48\x49\x44\x44\x45\x4e\x5d\x5b\x6b\x65\x79\x5d\x3d\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x68\x61\x73\x28\x69\x74\x2c\x48\x49\x44\x44\x45\x4e\x29\x26\x26\x69\x74\x5b\x48\x49\x44\x44\x45\x4e\x5d\x5b\x6b\x65\x79\x5d\x29\x69\x74\x5b\x48\x49\x44\x44\x45\x4e\x5d\x5b\x6b\x65\x79\x5d\x3d\x66\x61\x6c\x73\x65\x3b\x44\x3d\x5f\x63\x72\x65\x61\x74\x65\x28\x44\x2c\x7b\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x28\x30\x2c\x66\x61\x6c\x73\x65\x29\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x74\x53\x79\x6d\x62\x6f\x6c\x44\x65\x73\x63\x28\x69\x74\x2c\x6b\x65\x79\x2c\x44\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x64\x50\x28\x69\x74\x2c\x6b\x65\x79\x2c\x44\x29\x7d\x3b\x76\x61\x72\x20\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x28\x69\x74\x2c\x50\x29\x7b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x3b\x76\x61\x72\x20\x6b\x65\x79\x73\x3d\x65\x6e\x75\x6d\x4b\x65\x79\x73\x28\x50\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x50\x29\x29\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x6c\x3d\x6b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x6b\x65\x79\x3b\x77\x68\x69\x6c\x65\x28\x6c\x3e\x69\x29\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x69\x74\x2c\x6b\x65\x79\x3d\x6b\x65\x79\x73\x5b\x69\x2b\x2b\x5d\x2c\x50\x5b\x6b\x65\x79\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x7d\x3b\x76\x61\x72\x20\x24\x63\x72\x65\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x28\x69\x74\x2c\x50\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x50\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x5f\x63\x72\x65\x61\x74\x65\x28\x69\x74\x29\x3a\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x28\x5f\x63\x72\x65\x61\x74\x65\x28\x69\x74\x29\x2c\x50\x29\x7d\x3b\x76\x61\x72\x20\x24\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x45\x3d\x69\x73\x45\x6e\x75\x6d\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x6b\x65\x79\x3d\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x6b\x65\x79\x2c\x74\x72\x75\x65\x29\x29\x3b\x69\x66\x28\x74\x68\x69\x73\x3d\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x26\x26\x68\x61\x73\x28\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x29\x26\x26\x21\x68\x61\x73\x28\x4f\x50\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x45\x7c\x7c\x21\x68\x61\x73\x28\x74\x68\x69\x73\x2c\x6b\x65\x79\x29\x7c\x7c\x21\x68\x61\x73\x28\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x29\x7c\x7c\x68\x61\x73\x28\x74\x68\x69\x73\x2c\x48\x49\x44\x44\x45\x4e\x29\x26\x26\x74\x68\x69\x73\x5b\x48\x49\x44\x44\x45\x4e\x5d\x5b\x6b\x65\x79\x5d\x3f\x45\x3a\x74\x72\x75\x65\x7d\x3b\x76\x61\x72\x20\x24\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x28\x69\x74\x2c\x6b\x65\x79\x29\x7b\x69\x74\x3d\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x3b\x6b\x65\x79\x3d\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x6b\x65\x79\x2c\x74\x72\x75\x65\x29\x3b\x69\x66\x28\x69\x74\x3d\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x26\x26\x68\x61\x73\x28\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x29\x26\x26\x21\x68\x61\x73\x28\x4f\x50\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x29\x29\x72\x65\x74\x75\x72\x6e\x3b\x76\x61\x72\x20\x44\x3d\x67\x4f\x50\x44\x28\x69\x74\x2c\x6b\x65\x79\x29\x3b\x69\x66\x28\x44\x26\x26\x68\x61\x73\x28\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x29\x26\x26\x21\x28\x68\x61\x73\x28\x69\x74\x2c\x48\x49\x44\x44\x45\x4e\x29\x26\x26\x69\x74\x5b\x48\x49\x44\x44\x45\x4e\x5d\x5b\x6b\x65\x79\x5d\x29\x29\x44\x2e\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3d\x74\x72\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x44\x7d\x3b\x76\x61\x72\x20\x24\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x6e\x61\x6d\x65\x73\x3d\x67\x4f\x50\x4e\x28\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x6b\x65\x79\x3b\x77\x68\x69\x6c\x65\x28\x6e\x61\x6d\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x7b\x69\x66\x28\x21\x68\x61\x73\x28\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x3d\x6e\x61\x6d\x65\x73\x5b\x69\x2b\x2b\x5d\x29\x26\x26\x6b\x65\x79\x21\x3d\x48\x49\x44\x44\x45\x4e\x26\x26\x6b\x65\x79\x21\x3d\x4d\x45\x54\x41\x29\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x3b\x76\x61\x72\x20\x24\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x53\x79\x6d\x62\x6f\x6c\x73\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x49\x53\x5f\x4f\x50\x3d\x69\x74\x3d\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3b\x76\x61\x72\x20\x6e\x61\x6d\x65\x73\x3d\x67\x4f\x50\x4e\x28\x49\x53\x5f\x4f\x50\x3f\x4f\x50\x53\x79\x6d\x62\x6f\x6c\x73\x3a\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x6b\x65\x79\x3b\x77\x68\x69\x6c\x65\x28\x6e\x61\x6d\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x7b\x69\x66\x28\x68\x61\x73\x28\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x6b\x65\x79\x3d\x6e\x61\x6d\x65\x73\x5b\x69\x2b\x2b\x5d\x29\x26\x26\x28\x49\x53\x5f\x4f\x50\x3f\x68\x61\x73\x28\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2c\x6b\x65\x79\x29\x3a\x74\x72\x75\x65\x29\x29\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x41\x6c\x6c\x53\x79\x6d\x62\x6f\x6c\x73\x5b\x6b\x65\x79\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x3b\x69\x66\x28\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x29\x7b\x24\x53\x79\x6d\x62\x6f\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x79\x6d\x62\x6f\x6c\x28\x29\x7b\x69\x66\x28\x74\x68\x69\x73\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x24\x53\x79\x6d\x62\x6f\x6c\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x53\x79\x6d\x62\x6f\x6c\x20\x69\x73\x20\x6e\x6f\x74\x20\x61\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x21\x22\x29\x3b\x76\x61\x72\x20\x74\x61\x67\x3d\x75\x69\x64\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x3b\x76\x61\x72\x20\x24\x73\x65\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x74\x68\x69\x73\x3d\x3d\x3d\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x29\x24\x73\x65\x74\x2e\x63\x61\x6c\x6c\x28\x4f\x50\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x68\x61\x73\x28\x74\x68\x69\x73\x2c\x48\x49\x44\x44\x45\x4e\x29\x26\x26\x68\x61\x73\x28\x74\x68\x69\x73\x5b\x48\x49\x44\x44\x45\x4e\x5d\x2c\x74\x61\x67\x29\x29\x74\x68\x69\x73\x5b\x48\x49\x44\x44\x45\x4e\x5d\x5b\x74\x61\x67\x5d\x3d\x66\x61\x6c\x73\x65\x3b\x73\x65\x74\x53\x79\x6d\x62\x6f\x6c\x44\x65\x73\x63\x28\x74\x68\x69\x73\x2c\x74\x61\x67\x2c\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x28\x31\x2c\x76\x61\x6c\x75\x65\x29\x29\x7d\x3b\x69\x66\x28\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x26\x26\x73\x65\x74\x74\x65\x72\x29\x73\x65\x74\x53\x79\x6d\x62\x6f\x6c\x44\x65\x73\x63\x28\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2c\x74\x61\x67\x2c\x7b\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x73\x65\x74\x3a\x24\x73\x65\x74\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x61\x70\x28\x74\x61\x67\x29\x7d\x3b\x72\x65\x64\x65\x66\x69\x6e\x65\x28\x24\x53\x79\x6d\x62\x6f\x6c\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x2c\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x5f\x6b\x7d\x29\x3b\x24\x47\x4f\x50\x44\x2e\x66\x3d\x24\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x3b\x24\x44\x50\x2e\x66\x3d\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x32\x29\x2e\x66\x3d\x67\x4f\x50\x4e\x45\x78\x74\x2e\x66\x3d\x24\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x33\x29\x2e\x66\x3d\x24\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x36\x29\x2e\x66\x3d\x24\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x53\x79\x6d\x62\x6f\x6c\x73\x3b\x69\x66\x28\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x26\x26\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x31\x29\x29\x7b\x72\x65\x64\x65\x66\x69\x6e\x65\x28\x4f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2c\x22\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x22\x2c\x24\x70\x72\x6f\x70\x65\x72\x74\x79\x49\x73\x45\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x2c\x74\x72\x75\x65\x29\x7d\x77\x6b\x73\x45\x78\x74\x2e\x66\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x61\x70\x28\x77\x6b\x73\x28\x6e\x61\x6d\x65\x29\x29\x7d\x7d\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x47\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x57\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x2c\x7b\x53\x79\x6d\x62\x6f\x6c\x3a\x24\x53\x79\x6d\x62\x6f\x6c\x7d\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x65\x73\x36\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x22\x68\x61\x73\x49\x6e\x73\x74\x61\x6e\x63\x65\x2c\x69\x73\x43\x6f\x6e\x63\x61\x74\x53\x70\x72\x65\x61\x64\x61\x62\x6c\x65\x2c\x69\x74\x65\x72\x61\x74\x6f\x72\x2c\x6d\x61\x74\x63\x68\x2c\x72\x65\x70\x6c\x61\x63\x65\x2c\x73\x65\x61\x72\x63\x68\x2c\x73\x70\x65\x63\x69\x65\x73\x2c\x73\x70\x6c\x69\x74\x2c\x74\x6f\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x2c\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x2c\x75\x6e\x73\x63\x6f\x70\x61\x62\x6c\x65\x73\x22\x2e\x73\x70\x6c\x69\x74\x28\x22\x2c\x22\x29\x2c\x6a\x3d\x30\x3b\x65\x73\x36\x53\x79\x6d\x62\x6f\x6c\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x6a\x3b\x29\x77\x6b\x73\x28\x65\x73\x36\x53\x79\x6d\x62\x6f\x6c\x73\x5b\x6a\x2b\x2b\x5d\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x77\x65\x6c\x6c\x4b\x6e\x6f\x77\x6e\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x24\x6b\x65\x79\x73\x28\x77\x6b\x73\x2e\x73\x74\x6f\x72\x65\x29\x2c\x6b\x3d\x30\x3b\x77\x65\x6c\x6c\x4b\x6e\x6f\x77\x6e\x53\x79\x6d\x62\x6f\x6c\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x6b\x3b\x29\x77\x6b\x73\x44\x65\x66\x69\x6e\x65\x28\x77\x65\x6c\x6c\x4b\x6e\x6f\x77\x6e\x53\x79\x6d\x62\x6f\x6c\x73\x5b\x6b\x2b\x2b\x5d\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x2c\x22\x53\x79\x6d\x62\x6f\x6c\x22\x2c\x7b\x66\x6f\x72\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x28\x53\x79\x6d\x62\x6f\x6c\x52\x65\x67\x69\x73\x74\x72\x79\x2c\x6b\x65\x79\x2b\x3d\x22\x22\x29\x3f\x53\x79\x6d\x62\x6f\x6c\x52\x65\x67\x69\x73\x74\x72\x79\x5b\x6b\x65\x79\x5d\x3a\x53\x79\x6d\x62\x6f\x6c\x52\x65\x67\x69\x73\x74\x72\x79\x5b\x6b\x65\x79\x5d\x3d\x24\x53\x79\x6d\x62\x6f\x6c\x28\x6b\x65\x79\x29\x7d\x2c\x6b\x65\x79\x46\x6f\x72\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6b\x65\x79\x46\x6f\x72\x28\x73\x79\x6d\x29\x7b\x69\x66\x28\x21\x69\x73\x53\x79\x6d\x62\x6f\x6c\x28\x73\x79\x6d\x29\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x73\x79\x6d\x2b\x22\x20\x69\x73\x20\x6e\x6f\x74\x20\x61\x20\x73\x79\x6d\x62\x6f\x6c\x21\x22\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x53\x79\x6d\x62\x6f\x6c\x52\x65\x67\x69\x73\x74\x72\x79\x29\x69\x66\x28\x53\x79\x6d\x62\x6f\x6c\x52\x65\x67\x69\x73\x74\x72\x79\x5b\x6b\x65\x79\x5d\x3d\x3d\x3d\x73\x79\x6d\x29\x72\x65\x74\x75\x72\x6e\x20\x6b\x65\x79\x7d\x2c\x75\x73\x65\x53\x65\x74\x74\x65\x72\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x73\x65\x74\x74\x65\x72\x3d\x74\x72\x75\x65\x7d\x2c\x75\x73\x65\x53\x69\x6d\x70\x6c\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x73\x65\x74\x74\x65\x72\x3d\x66\x61\x6c\x73\x65\x7d\x7d\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x2c\x22\x4f\x62\x6a\x65\x63\x74\x22\x2c\x7b\x63\x72\x65\x61\x74\x65\x3a\x24\x63\x72\x65\x61\x74\x65\x2c\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3a\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x2c\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3a\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2c\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x3a\x24\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x73\x63\x72\x69\x70\x74\x6f\x72\x2c\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x3a\x24\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x2c\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x53\x79\x6d\x62\x6f\x6c\x73\x3a\x24\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x53\x79\x6d\x62\x6f\x6c\x73\x7d\x29\x3b\x24\x4a\x53\x4f\x4e\x26\x26\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x28\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x7c\x7c\x24\x66\x61\x69\x6c\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x53\x3d\x24\x53\x79\x6d\x62\x6f\x6c\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x28\x5b\x53\x5d\x29\x21\x3d\x22\x5b\x6e\x75\x6c\x6c\x5d\x22\x7c\x7c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x28\x7b\x61\x3a\x53\x7d\x29\x21\x3d\x22\x7b\x7d\x22\x7c\x7c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x28\x4f\x62\x6a\x65\x63\x74\x28\x53\x29\x29\x21\x3d\x22\x7b\x7d\x22\x7d\x29\x29\x2c\x22\x4a\x53\x4f\x4e\x22\x2c\x7b\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x61\x72\x67\x73\x3d\x5b\x69\x74\x5d\x3b\x76\x61\x72\x20\x69\x3d\x31\x3b\x76\x61\x72\x20\x72\x65\x70\x6c\x61\x63\x65\x72\x2c\x24\x72\x65\x70\x6c\x61\x63\x65\x72\x3b\x77\x68\x69\x6c\x65\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x61\x72\x67\x73\x2e\x70\x75\x73\x68\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x2b\x2b\x5d\x29\x3b\x24\x72\x65\x70\x6c\x61\x63\x65\x72\x3d\x72\x65\x70\x6c\x61\x63\x65\x72\x3d\x61\x72\x67\x73\x5b\x31\x5d\x3b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x72\x65\x70\x6c\x61\x63\x65\x72\x29\x26\x26\x69\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x69\x73\x53\x79\x6d\x62\x6f\x6c\x28\x69\x74\x29\x29\x72\x65\x74\x75\x72\x6e\x3b\x69\x66\x28\x21\x69\x73\x41\x72\x72\x61\x79\x28\x72\x65\x70\x6c\x61\x63\x65\x72\x29\x29\x72\x65\x70\x6c\x61\x63\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x24\x72\x65\x70\x6c\x61\x63\x65\x72\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x76\x61\x6c\x75\x65\x3d\x24\x72\x65\x70\x6c\x61\x63\x65\x72\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x21\x69\x73\x53\x79\x6d\x62\x6f\x6c\x28\x76\x61\x6c\x75\x65\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x3b\x61\x72\x67\x73\x5b\x31\x5d\x3d\x72\x65\x70\x6c\x61\x63\x65\x72\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x2e\x61\x70\x70\x6c\x79\x28\x24\x4a\x53\x4f\x4e\x2c\x61\x72\x67\x73\x29\x7d\x7d\x29\x3b\x24\x53\x79\x6d\x62\x6f\x6c\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x5b\x54\x4f\x5f\x50\x52\x49\x4d\x49\x54\x49\x56\x45\x5d\x7c\x7c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x29\x28\x24\x53\x79\x6d\x62\x6f\x6c\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x2c\x54\x4f\x5f\x50\x52\x49\x4d\x49\x54\x49\x56\x45\x2c\x24\x53\x79\x6d\x62\x6f\x6c\x5b\x50\x52\x4f\x54\x4f\x54\x59\x50\x45\x5d\x2e\x76\x61\x6c\x75\x65\x4f\x66\x29\x3b\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x28\x24\x53\x79\x6d\x62\x6f\x6c\x2c\x22\x53\x79\x6d\x62\x6f\x6c\x22\x29\x3b\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x28\x4d\x61\x74\x68\x2c\x22\x4d\x61\x74\x68\x22\x2c\x74\x72\x75\x65\x29\x3b\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x28\x67\x6c\x6f\x62\x61\x6c\x2e\x4a\x53\x4f\x4e\x2c\x22\x4a\x53\x4f\x4e\x22\x2c\x74\x72\x75\x65\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x29\x3b\x76\x61\x72\x20\x67\x4f\x50\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x36\x29\x3b\x76\x61\x72\x20\x70\x49\x45\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x67\x65\x74\x4b\x65\x79\x73\x28\x69\x74\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x67\x4f\x50\x53\x2e\x66\x3b\x69\x66\x28\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x29\x7b\x76\x61\x72\x20\x73\x79\x6d\x62\x6f\x6c\x73\x3d\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x28\x69\x74\x29\x3b\x76\x61\x72\x20\x69\x73\x45\x6e\x75\x6d\x3d\x70\x49\x45\x2e\x66\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x6b\x65\x79\x3b\x77\x68\x69\x6c\x65\x28\x73\x79\x6d\x62\x6f\x6c\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x69\x66\x28\x69\x73\x45\x6e\x75\x6d\x2e\x63\x61\x6c\x6c\x28\x69\x74\x2c\x6b\x65\x79\x3d\x73\x79\x6d\x62\x6f\x6c\x73\x5b\x69\x2b\x2b\x5d\x29\x29\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x29\x3b\x76\x61\x72\x20\x67\x4f\x50\x4e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x32\x29\x2e\x66\x3b\x76\x61\x72\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x7b\x7d\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x76\x61\x72\x20\x77\x69\x6e\x64\x6f\x77\x4e\x61\x6d\x65\x73\x3d\x74\x79\x70\x65\x6f\x66\x20\x77\x69\x6e\x64\x6f\x77\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x77\x69\x6e\x64\x6f\x77\x26\x26\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x3f\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x28\x77\x69\x6e\x64\x6f\x77\x29\x3a\x5b\x5d\x3b\x76\x61\x72\x20\x67\x65\x74\x57\x69\x6e\x64\x6f\x77\x4e\x61\x6d\x65\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x67\x4f\x50\x4e\x28\x69\x74\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x69\x6e\x64\x6f\x77\x4e\x61\x6d\x65\x73\x2e\x73\x6c\x69\x63\x65\x28\x29\x7d\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x66\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x4e\x61\x6d\x65\x73\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x69\x6e\x64\x6f\x77\x4e\x61\x6d\x65\x73\x26\x26\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x69\x74\x29\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x57\x69\x6e\x64\x6f\x77\x5d\x22\x3f\x67\x65\x74\x57\x69\x6e\x64\x6f\x77\x4e\x61\x6d\x65\x73\x28\x69\x74\x29\x3a\x67\x4f\x50\x4e\x28\x74\x6f\x49\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x35\x29\x28\x22\x61\x73\x79\x6e\x63\x49\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x35\x29\x28\x22\x6f\x62\x73\x65\x72\x76\x61\x62\x6c\x65\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6b\x65\x79\x73\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x34\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x34\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x64\x75\x78\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x38\x29\x3b\x76\x61\x72\x20\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x36\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x29\x3b\x76\x61\x72\x20\x5f\x61\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x34\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x69\x64\x46\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x64\x46\x6e\x28\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x53\x74\x6f\x72\x65\x57\x69\x74\x68\x4d\x69\x64\x64\x6c\x65\x77\x61\x72\x65\x28\x72\x6f\x6f\x74\x52\x65\x64\x75\x63\x65\x72\x2c\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x6d\x69\x64\x64\x6c\x77\x61\x72\x65\x73\x3d\x5b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x79\x73\x74\x65\x6d\x54\x68\x75\x6e\x6b\x4d\x69\x64\x64\x6c\x65\x77\x61\x72\x65\x29\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x5d\x3b\x76\x61\x72\x20\x63\x6f\x6d\x70\x6f\x73\x65\x45\x6e\x68\x61\x6e\x63\x65\x72\x73\x3d\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x5f\x5f\x52\x45\x44\x55\x58\x5f\x44\x45\x56\x54\x4f\x4f\x4c\x53\x5f\x45\x58\x54\x45\x4e\x53\x49\x4f\x4e\x5f\x43\x4f\x4d\x50\x4f\x53\x45\x5f\x5f\x7c\x7c\x5f\x72\x65\x64\x75\x78\x2e\x63\x6f\x6d\x70\x6f\x73\x65\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x72\x65\x64\x75\x78\x2e\x63\x72\x65\x61\x74\x65\x53\x74\x6f\x72\x65\x29\x28\x72\x6f\x6f\x74\x52\x65\x64\x75\x63\x65\x72\x2c\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x2c\x63\x6f\x6d\x70\x6f\x73\x65\x45\x6e\x68\x61\x6e\x63\x65\x72\x73\x28\x5f\x72\x65\x64\x75\x78\x2e\x61\x70\x70\x6c\x79\x4d\x69\x64\x64\x6c\x65\x77\x61\x72\x65\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x6d\x69\x64\x64\x6c\x77\x61\x72\x65\x73\x29\x29\x29\x7d\x76\x61\x72\x20\x53\x74\x6f\x72\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x74\x6f\x72\x65\x28\x29\x7b\x76\x61\x72\x20\x6f\x70\x74\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3a\x7b\x7d\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x53\x74\x6f\x72\x65\x29\x3b\x28\x30\x2c\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x7b\x73\x74\x61\x74\x65\x3a\x7b\x7d\x2c\x70\x6c\x75\x67\x69\x6e\x73\x3a\x5b\x5d\x2c\x73\x79\x73\x74\x65\x6d\x3a\x7b\x63\x6f\x6e\x66\x69\x67\x73\x3a\x7b\x7d\x2c\x66\x6e\x3a\x7b\x7d\x2c\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x7b\x7d\x2c\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x3a\x7b\x7d\x2c\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3a\x7b\x7d\x7d\x2c\x62\x6f\x75\x6e\x64\x53\x79\x73\x74\x65\x6d\x3a\x7b\x7d\x2c\x74\x6f\x6f\x6c\x62\x6f\x78\x3a\x7b\x7d\x7d\x2c\x6f\x70\x74\x73\x29\x3b\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x3d\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2e\x62\x69\x6e\x64\x28\x74\x68\x69\x73\x29\x3b\x74\x68\x69\x73\x2e\x73\x74\x6f\x72\x65\x3d\x63\x6f\x6e\x66\x69\x67\x75\x72\x65\x53\x74\x6f\x72\x65\x28\x69\x64\x46\x6e\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x29\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x3b\x74\x68\x69\x73\x2e\x62\x75\x69\x6c\x64\x53\x79\x73\x74\x65\x6d\x28\x66\x61\x6c\x73\x65\x29\x3b\x74\x68\x69\x73\x2e\x72\x65\x67\x69\x73\x74\x65\x72\x28\x74\x68\x69\x73\x2e\x70\x6c\x75\x67\x69\x6e\x73\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x74\x6f\x72\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x53\x74\x6f\x72\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x53\x74\x6f\x72\x65\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x73\x74\x6f\x72\x65\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x67\x69\x73\x74\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x67\x69\x73\x74\x65\x72\x28\x70\x6c\x75\x67\x69\x6e\x73\x29\x7b\x76\x61\x72\x20\x72\x65\x62\x75\x69\x6c\x64\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x70\x6c\x75\x67\x69\x6e\x53\x79\x73\x74\x65\x6d\x3d\x63\x6f\x6d\x62\x69\x6e\x65\x50\x6c\x75\x67\x69\x6e\x73\x28\x70\x6c\x75\x67\x69\x6e\x73\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x3b\x73\x79\x73\x74\x65\x6d\x45\x78\x74\x65\x6e\x64\x28\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2c\x70\x6c\x75\x67\x69\x6e\x53\x79\x73\x74\x65\x6d\x29\x3b\x69\x66\x28\x72\x65\x62\x75\x69\x6c\x64\x29\x7b\x74\x68\x69\x73\x2e\x62\x75\x69\x6c\x64\x53\x79\x73\x74\x65\x6d\x28\x29\x7d\x76\x61\x72\x20\x6e\x65\x65\x64\x41\x6e\x6f\x74\x68\x65\x72\x52\x65\x62\x75\x69\x6c\x64\x3d\x63\x61\x6c\x6c\x41\x66\x74\x65\x72\x4c\x6f\x61\x64\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2c\x70\x6c\x75\x67\x69\x6e\x73\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x3b\x69\x66\x28\x6e\x65\x65\x64\x41\x6e\x6f\x74\x68\x65\x72\x52\x65\x62\x75\x69\x6c\x64\x29\x7b\x74\x68\x69\x73\x2e\x62\x75\x69\x6c\x64\x53\x79\x73\x74\x65\x6d\x28\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x62\x75\x69\x6c\x64\x53\x79\x73\x74\x65\x6d\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x75\x69\x6c\x64\x53\x79\x73\x74\x65\x6d\x28\x29\x7b\x76\x61\x72\x20\x62\x75\x69\x6c\x64\x52\x65\x64\x75\x63\x65\x72\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3a\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x64\x69\x73\x70\x61\x74\x63\x68\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x74\x6f\x72\x65\x28\x29\x2e\x64\x69\x73\x70\x61\x74\x63\x68\x3b\x76\x61\x72\x20\x67\x65\x74\x53\x74\x61\x74\x65\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x74\x6f\x72\x65\x28\x29\x2e\x67\x65\x74\x53\x74\x61\x74\x65\x3b\x74\x68\x69\x73\x2e\x62\x6f\x75\x6e\x64\x53\x79\x73\x74\x65\x6d\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x52\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x28\x29\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x57\x72\x61\x70\x70\x65\x64\x41\x6e\x64\x42\x6f\x75\x6e\x64\x41\x63\x74\x69\x6f\x6e\x73\x28\x64\x69\x73\x70\x61\x74\x63\x68\x29\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x57\x72\x61\x70\x70\x65\x64\x41\x6e\x64\x42\x6f\x75\x6e\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x28\x67\x65\x74\x53\x74\x61\x74\x65\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x74\x61\x74\x65\x54\x68\x75\x6e\x6b\x73\x28\x67\x65\x74\x53\x74\x61\x74\x65\x29\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x46\x6e\x28\x29\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x29\x3b\x69\x66\x28\x62\x75\x69\x6c\x64\x52\x65\x64\x75\x63\x65\x72\x29\x74\x68\x69\x73\x2e\x72\x65\x62\x75\x69\x6c\x64\x52\x65\x64\x75\x63\x65\x72\x28\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x5f\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x62\x6f\x75\x6e\x64\x53\x79\x73\x74\x65\x6d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x52\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x52\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x3a\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x2c\x67\x65\x74\x53\x74\x6f\x72\x65\x3a\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x74\x6f\x72\x65\x2e\x62\x69\x6e\x64\x28\x74\x68\x69\x73\x29\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x74\x68\x69\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2e\x62\x69\x6e\x64\x28\x74\x68\x69\x73\x29\x2c\x67\x65\x74\x53\x74\x61\x74\x65\x3a\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x74\x6f\x72\x65\x28\x29\x2e\x67\x65\x74\x53\x74\x61\x74\x65\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x62\x69\x6e\x64\x28\x74\x68\x69\x73\x29\x2c\x49\x6d\x3a\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x52\x65\x61\x63\x74\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x7d\x2c\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x72\x6f\x6f\x74\x49\x6e\x6a\x65\x63\x74\x73\x7c\x7c\x7b\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x63\x6f\x6e\x66\x69\x67\x73\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x63\x6f\x6e\x66\x69\x67\x73\x3a\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x63\x6f\x6e\x66\x69\x67\x73\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x73\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x63\x6f\x6e\x66\x69\x67\x73\x29\x7b\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x63\x6f\x6e\x66\x69\x67\x73\x3d\x63\x6f\x6e\x66\x69\x67\x73\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x62\x75\x69\x6c\x64\x52\x65\x64\x75\x63\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x62\x75\x69\x6c\x64\x52\x65\x64\x75\x63\x65\x72\x28\x29\x7b\x74\x68\x69\x73\x2e\x73\x74\x6f\x72\x65\x2e\x72\x65\x70\x6c\x61\x63\x65\x52\x65\x64\x75\x63\x65\x72\x28\x62\x75\x69\x6c\x64\x52\x65\x64\x75\x63\x65\x72\x28\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x29\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x54\x79\x70\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x54\x79\x70\x65\x28\x6e\x61\x6d\x65\x29\x7b\x76\x61\x72\x20\x75\x70\x4e\x61\x6d\x65\x3d\x6e\x61\x6d\x65\x5b\x30\x5d\x2e\x74\x6f\x55\x70\x70\x65\x72\x43\x61\x73\x65\x28\x29\x2b\x6e\x61\x6d\x65\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x52\x65\x64\x75\x63\x65\x29\x28\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x29\x7b\x76\x61\x72\x20\x74\x68\x69\x6e\x67\x3d\x76\x61\x6c\x5b\x6e\x61\x6d\x65\x5d\x3b\x69\x66\x28\x74\x68\x69\x6e\x67\x29\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2b\x75\x70\x4e\x61\x6d\x65\x2c\x74\x68\x69\x6e\x67\x29\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x67\x65\x74\x54\x79\x70\x65\x28\x22\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x22\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x41\x63\x74\x69\x6f\x6e\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x41\x63\x74\x69\x6f\x6e\x73\x28\x29\x7b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x48\x6f\x6c\x64\x65\x72\x73\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x54\x79\x70\x65\x28\x22\x61\x63\x74\x69\x6f\x6e\x73\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x61\x63\x74\x69\x6f\x6e\x48\x6f\x6c\x64\x65\x72\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x63\x74\x69\x6f\x6e\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x52\x65\x64\x75\x63\x65\x29\x28\x61\x63\x74\x69\x6f\x6e\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x63\x74\x69\x6f\x6e\x2c\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x29\x7b\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x46\x6e\x29\x28\x61\x63\x74\x69\x6f\x6e\x29\x29\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x7d\x29\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x57\x72\x61\x70\x70\x65\x64\x41\x6e\x64\x42\x6f\x75\x6e\x64\x41\x63\x74\x69\x6f\x6e\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x57\x72\x61\x70\x70\x65\x64\x41\x6e\x64\x42\x6f\x75\x6e\x64\x41\x63\x74\x69\x6f\x6e\x73\x28\x64\x69\x73\x70\x61\x74\x63\x68\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x47\x72\x6f\x75\x70\x73\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x42\x6f\x75\x6e\x64\x41\x63\x74\x69\x6f\x6e\x73\x28\x64\x69\x73\x70\x61\x74\x63\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x61\x63\x74\x69\x6f\x6e\x47\x72\x6f\x75\x70\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x63\x74\x69\x6f\x6e\x73\x2c\x61\x63\x74\x69\x6f\x6e\x47\x72\x6f\x75\x70\x4e\x61\x6d\x65\x29\x7b\x76\x61\x72\x20\x77\x72\x61\x70\x70\x65\x72\x73\x3d\x5f\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x5b\x61\x63\x74\x69\x6f\x6e\x47\x72\x6f\x75\x70\x4e\x61\x6d\x65\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x2d\x37\x29\x5d\x2e\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3b\x69\x66\x28\x77\x72\x61\x70\x70\x65\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x61\x63\x74\x69\x6f\x6e\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x63\x74\x69\x6f\x6e\x2c\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x29\x7b\x76\x61\x72\x20\x77\x72\x61\x70\x3d\x77\x72\x61\x70\x70\x65\x72\x73\x5b\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x5d\x3b\x69\x66\x28\x21\x77\x72\x61\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x63\x74\x69\x6f\x6e\x7d\x69\x66\x28\x21\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x77\x72\x61\x70\x29\x29\x7b\x77\x72\x61\x70\x3d\x5b\x77\x72\x61\x70\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x61\x70\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x63\x63\x2c\x66\x6e\x29\x7b\x76\x61\x72\x20\x6e\x65\x77\x41\x63\x74\x69\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x65\x77\x41\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x28\x61\x63\x63\x2c\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x3b\x69\x66\x28\x21\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x46\x6e\x29\x28\x6e\x65\x77\x41\x63\x74\x69\x6f\x6e\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x20\x6e\x65\x65\x64\x73\x20\x74\x6f\x20\x72\x65\x74\x75\x72\x6e\x20\x61\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x68\x61\x74\x20\x72\x65\x74\x75\x72\x6e\x73\x20\x61\x20\x6e\x65\x77\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x28\x69\x65\x20\x74\x68\x65\x20\x77\x72\x61\x70\x70\x65\x64\x20\x61\x63\x74\x69\x6f\x6e\x29\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x61\x70\x57\x69\x74\x68\x54\x72\x79\x43\x61\x74\x63\x68\x28\x6e\x65\x77\x41\x63\x74\x69\x6f\x6e\x29\x7d\x2c\x61\x63\x74\x69\x6f\x6e\x7c\x7c\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x29\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x63\x74\x69\x6f\x6e\x73\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x57\x72\x61\x70\x70\x65\x64\x41\x6e\x64\x42\x6f\x75\x6e\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x57\x72\x61\x70\x70\x65\x64\x41\x6e\x64\x42\x6f\x75\x6e\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x28\x67\x65\x74\x53\x74\x61\x74\x65\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x47\x72\x6f\x75\x70\x73\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x42\x6f\x75\x6e\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x28\x67\x65\x74\x53\x74\x61\x74\x65\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x73\x65\x6c\x65\x63\x74\x6f\x72\x47\x72\x6f\x75\x70\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x47\x72\x6f\x75\x70\x4e\x61\x6d\x65\x29\x7b\x76\x61\x72\x20\x73\x74\x61\x74\x65\x4e\x61\x6d\x65\x3d\x5b\x73\x65\x6c\x65\x63\x74\x6f\x72\x47\x72\x6f\x75\x70\x4e\x61\x6d\x65\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x2d\x39\x29\x5d\x3b\x76\x61\x72\x20\x77\x72\x61\x70\x70\x65\x72\x73\x3d\x5f\x74\x68\x69\x73\x32\x2e\x73\x79\x73\x74\x65\x6d\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x5b\x73\x74\x61\x74\x65\x4e\x61\x6d\x65\x5d\x2e\x77\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x69\x66\x28\x77\x72\x61\x70\x70\x65\x72\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x65\x6c\x65\x63\x74\x6f\x72\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x4e\x61\x6d\x65\x29\x7b\x76\x61\x72\x20\x77\x72\x61\x70\x3d\x77\x72\x61\x70\x70\x65\x72\x73\x5b\x73\x65\x6c\x65\x63\x74\x6f\x72\x4e\x61\x6d\x65\x5d\x3b\x69\x66\x28\x21\x77\x72\x61\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x7d\x69\x66\x28\x21\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x77\x72\x61\x70\x29\x29\x7b\x77\x72\x61\x70\x3d\x5b\x77\x72\x61\x70\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x61\x70\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x63\x63\x2c\x66\x6e\x29\x7b\x76\x61\x72\x20\x77\x72\x61\x70\x70\x65\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x61\x70\x70\x65\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x28\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x28\x61\x63\x63\x2c\x5f\x74\x68\x69\x73\x32\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x5b\x67\x65\x74\x53\x74\x61\x74\x65\x28\x29\x2e\x67\x65\x74\x49\x6e\x28\x73\x74\x61\x74\x65\x4e\x61\x6d\x65\x29\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x7d\x3b\x69\x66\x28\x21\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x46\x6e\x29\x28\x77\x72\x61\x70\x70\x65\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x77\x72\x61\x70\x53\x65\x6c\x65\x63\x74\x6f\x72\x20\x6e\x65\x65\x64\x73\x20\x74\x6f\x20\x72\x65\x74\x75\x72\x6e\x20\x61\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x68\x61\x74\x20\x72\x65\x74\x75\x72\x6e\x73\x20\x61\x20\x6e\x65\x77\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x28\x69\x65\x20\x74\x68\x65\x20\x77\x72\x61\x70\x70\x65\x64\x20\x61\x63\x74\x69\x6f\x6e\x29\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x61\x70\x70\x65\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x7d\x2c\x73\x65\x6c\x65\x63\x74\x6f\x72\x7c\x7c\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x29\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x53\x74\x61\x74\x65\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x53\x74\x61\x74\x65\x73\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x29\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x7b\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x73\x74\x61\x74\x65\x2e\x67\x65\x74\x28\x6b\x65\x79\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x2c\x7b\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x53\x74\x61\x74\x65\x54\x68\x75\x6e\x6b\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x53\x74\x61\x74\x65\x54\x68\x75\x6e\x6b\x73\x28\x67\x65\x74\x53\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x29\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x7b\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x67\x65\x74\x53\x74\x61\x74\x65\x28\x29\x2e\x67\x65\x74\x28\x6b\x65\x79\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x2c\x7b\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x46\x6e\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x46\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x66\x6e\x3a\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x66\x6e\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x28\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x33\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x72\x65\x73\x3d\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x5b\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x5d\x3b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x72\x65\x73\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x72\x69\x2c\x77\x72\x61\x70\x70\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x61\x70\x70\x65\x72\x28\x6f\x72\x69\x2c\x5f\x74\x68\x69\x73\x33\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x7d\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x5b\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x73\x79\x73\x74\x65\x6d\x2e\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x42\x6f\x75\x6e\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x42\x6f\x75\x6e\x64\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x28\x67\x65\x74\x53\x74\x61\x74\x65\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x28\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x73\x74\x61\x74\x65\x4e\x61\x6d\x65\x3d\x5b\x6b\x65\x79\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x2d\x39\x29\x5d\x3b\x76\x61\x72\x20\x67\x65\x74\x4e\x65\x73\x74\x65\x64\x53\x74\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4e\x65\x73\x74\x65\x64\x53\x74\x61\x74\x65\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x67\x65\x74\x53\x74\x61\x74\x65\x28\x29\x2e\x67\x65\x74\x49\x6e\x28\x73\x74\x61\x74\x65\x4e\x61\x6d\x65\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x6f\x62\x6a\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x32\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x32\x29\x2c\x5f\x6b\x65\x79\x32\x3d\x30\x3b\x5f\x6b\x65\x79\x32\x3c\x5f\x6c\x65\x6e\x32\x3b\x5f\x6b\x65\x79\x32\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x7d\x76\x61\x72\x20\x72\x65\x73\x3d\x77\x72\x61\x70\x57\x69\x74\x68\x54\x72\x79\x43\x61\x74\x63\x68\x28\x66\x6e\x29\x2e\x61\x70\x70\x6c\x79\x28\x6e\x75\x6c\x6c\x2c\x5b\x67\x65\x74\x4e\x65\x73\x74\x65\x64\x53\x74\x61\x74\x65\x28\x29\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x72\x65\x73\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x72\x65\x73\x3d\x77\x72\x61\x70\x57\x69\x74\x68\x54\x72\x79\x43\x61\x74\x63\x68\x28\x72\x65\x73\x29\x28\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x7d\x29\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x42\x6f\x75\x6e\x64\x41\x63\x74\x69\x6f\x6e\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x42\x6f\x75\x6e\x64\x41\x63\x74\x69\x6f\x6e\x73\x28\x64\x69\x73\x70\x61\x74\x63\x68\x29\x7b\x64\x69\x73\x70\x61\x74\x63\x68\x3d\x64\x69\x73\x70\x61\x74\x63\x68\x7c\x7c\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x74\x6f\x72\x65\x28\x29\x2e\x64\x69\x73\x70\x61\x74\x63\x68\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x73\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x41\x63\x74\x69\x6f\x6e\x73\x28\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x63\x65\x73\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x6f\x63\x65\x73\x73\x28\x63\x72\x65\x61\x74\x6f\x72\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x63\x72\x65\x61\x74\x6f\x72\x21\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x63\x72\x65\x61\x74\x6f\x72\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x63\x65\x73\x73\x28\x70\x72\x6f\x70\x29\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x3d\x6e\x75\x6c\x6c\x3b\x74\x72\x79\x7b\x61\x63\x74\x69\x6f\x6e\x3d\x63\x72\x65\x61\x74\x6f\x72\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x61\x63\x74\x69\x6f\x6e\x3d\x7b\x74\x79\x70\x65\x3a\x5f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x4e\x45\x57\x5f\x54\x48\x52\x4f\x57\x4e\x5f\x45\x52\x52\x2c\x65\x72\x72\x6f\x72\x3a\x74\x72\x75\x65\x2c\x70\x61\x79\x6c\x6f\x61\x64\x3a\x28\x30\x2c\x5f\x73\x65\x72\x69\x61\x6c\x69\x7a\x65\x45\x72\x72\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x65\x29\x7d\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x63\x74\x69\x6f\x6e\x7d\x7d\x7d\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x61\x63\x74\x69\x6f\x6e\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x63\x74\x69\x6f\x6e\x43\x72\x65\x61\x74\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x72\x65\x64\x75\x78\x2e\x62\x69\x6e\x64\x41\x63\x74\x69\x6f\x6e\x43\x72\x65\x61\x74\x6f\x72\x73\x29\x28\x70\x72\x6f\x63\x65\x73\x73\x28\x61\x63\x74\x69\x6f\x6e\x43\x72\x65\x61\x74\x6f\x72\x29\x2c\x64\x69\x73\x70\x61\x74\x63\x68\x29\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x4d\x61\x70\x53\x74\x61\x74\x65\x54\x6f\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4d\x61\x70\x53\x74\x61\x74\x65\x54\x6f\x50\x72\x6f\x70\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x34\x3d\x74\x68\x69\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x5f\x74\x68\x69\x73\x34\x2e\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x28\x29\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x4d\x61\x70\x44\x69\x73\x70\x61\x74\x63\x68\x54\x6f\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4d\x61\x70\x44\x69\x73\x70\x61\x74\x63\x68\x54\x6f\x50\x72\x6f\x70\x73\x28\x65\x78\x74\x72\x61\x73\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x35\x3d\x74\x68\x69\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x69\x73\x70\x61\x74\x63\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x5f\x74\x68\x69\x73\x35\x2e\x67\x65\x74\x57\x72\x61\x70\x70\x65\x64\x41\x6e\x64\x42\x6f\x75\x6e\x64\x41\x63\x74\x69\x6f\x6e\x73\x28\x64\x69\x73\x70\x61\x74\x63\x68\x29\x2c\x5f\x74\x68\x69\x73\x35\x2e\x67\x65\x74\x46\x6e\x28\x29\x2c\x65\x78\x74\x72\x61\x73\x29\x7d\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x53\x74\x6f\x72\x65\x7d\x28\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x53\x74\x6f\x72\x65\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x62\x69\x6e\x65\x50\x6c\x75\x67\x69\x6e\x73\x28\x70\x6c\x75\x67\x69\x6e\x73\x2c\x74\x6f\x6f\x6c\x62\x6f\x78\x29\x7b\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x29\x28\x70\x6c\x75\x67\x69\x6e\x73\x29\x26\x26\x21\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x41\x72\x72\x61\x79\x29\x28\x70\x6c\x75\x67\x69\x6e\x73\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x6f\x62\x6a\x65\x63\x74\x41\x73\x73\x69\x67\x6e\x44\x65\x65\x70\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x70\x6c\x75\x67\x69\x6e\x73\x29\x7d\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x46\x75\x6e\x63\x29\x28\x70\x6c\x75\x67\x69\x6e\x73\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x6d\x62\x69\x6e\x65\x50\x6c\x75\x67\x69\x6e\x73\x28\x70\x6c\x75\x67\x69\x6e\x73\x28\x74\x6f\x6f\x6c\x62\x6f\x78\x29\x2c\x74\x6f\x6f\x6c\x62\x6f\x78\x29\x7d\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x41\x72\x72\x61\x79\x29\x28\x70\x6c\x75\x67\x69\x6e\x73\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x6c\x75\x67\x69\x6e\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x6c\x75\x67\x69\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x6d\x62\x69\x6e\x65\x50\x6c\x75\x67\x69\x6e\x73\x28\x70\x6c\x75\x67\x69\x6e\x2c\x74\x6f\x6f\x6c\x62\x6f\x78\x29\x7d\x29\x2e\x72\x65\x64\x75\x63\x65\x28\x73\x79\x73\x74\x65\x6d\x45\x78\x74\x65\x6e\x64\x2c\x7b\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x7b\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x61\x6c\x6c\x41\x66\x74\x65\x72\x4c\x6f\x61\x64\x28\x70\x6c\x75\x67\x69\x6e\x73\x2c\x73\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x36\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x5f\x72\x65\x66\x33\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x32\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x3a\x7b\x7d\x2c\x68\x61\x73\x4c\x6f\x61\x64\x65\x64\x3d\x5f\x72\x65\x66\x33\x2e\x68\x61\x73\x4c\x6f\x61\x64\x65\x64\x3b\x76\x61\x72\x20\x63\x61\x6c\x6c\x65\x64\x53\x6f\x6d\x65\x74\x68\x69\x6e\x67\x3d\x68\x61\x73\x4c\x6f\x61\x64\x65\x64\x3b\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x29\x28\x70\x6c\x75\x67\x69\x6e\x73\x29\x26\x26\x21\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x41\x72\x72\x61\x79\x29\x28\x70\x6c\x75\x67\x69\x6e\x73\x29\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x70\x6c\x75\x67\x69\x6e\x73\x2e\x61\x66\x74\x65\x72\x4c\x6f\x61\x64\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x63\x61\x6c\x6c\x65\x64\x53\x6f\x6d\x65\x74\x68\x69\x6e\x67\x3d\x74\x72\x75\x65\x3b\x77\x72\x61\x70\x57\x69\x74\x68\x54\x72\x79\x43\x61\x74\x63\x68\x28\x70\x6c\x75\x67\x69\x6e\x73\x2e\x61\x66\x74\x65\x72\x4c\x6f\x61\x64\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x73\x79\x73\x74\x65\x6d\x29\x7d\x7d\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x46\x75\x6e\x63\x29\x28\x70\x6c\x75\x67\x69\x6e\x73\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x6c\x6c\x41\x66\x74\x65\x72\x4c\x6f\x61\x64\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x6c\x75\x67\x69\x6e\x73\x28\x73\x79\x73\x74\x65\x6d\x29\x2c\x73\x79\x73\x74\x65\x6d\x2c\x7b\x68\x61\x73\x4c\x6f\x61\x64\x65\x64\x3a\x63\x61\x6c\x6c\x65\x64\x53\x6f\x6d\x65\x74\x68\x69\x6e\x67\x7d\x29\x3b\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x41\x72\x72\x61\x79\x29\x28\x70\x6c\x75\x67\x69\x6e\x73\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x6c\x75\x67\x69\x6e\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x6c\x75\x67\x69\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x6c\x6c\x41\x66\x74\x65\x72\x4c\x6f\x61\x64\x2e\x63\x61\x6c\x6c\x28\x5f\x74\x68\x69\x73\x36\x2c\x70\x6c\x75\x67\x69\x6e\x2c\x73\x79\x73\x74\x65\x6d\x2c\x7b\x68\x61\x73\x4c\x6f\x61\x64\x65\x64\x3a\x63\x61\x6c\x6c\x65\x64\x53\x6f\x6d\x65\x74\x68\x69\x6e\x67\x7d\x29\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x6c\x6c\x65\x64\x53\x6f\x6d\x65\x74\x68\x69\x6e\x67\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x79\x73\x74\x65\x6d\x45\x78\x74\x65\x6e\x64\x28\x29\x7b\x76\x61\x72\x20\x64\x65\x73\x74\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3a\x7b\x7d\x3b\x76\x61\x72\x20\x73\x72\x63\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x7b\x7d\x3b\x69\x66\x28\x21\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x29\x28\x64\x65\x73\x74\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x7d\x7d\x69\x66\x28\x21\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x29\x28\x73\x72\x63\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x65\x73\x74\x7d\x69\x66\x28\x73\x72\x63\x2e\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x29\x7b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x73\x72\x63\x2e\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x77\x72\x61\x70\x70\x65\x72\x46\x6e\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x6f\x72\x69\x3d\x64\x65\x73\x74\x2e\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x26\x26\x64\x65\x73\x74\x2e\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x5b\x6b\x65\x79\x5d\x3b\x69\x66\x28\x6f\x72\x69\x26\x26\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x6f\x72\x69\x29\x29\x7b\x64\x65\x73\x74\x2e\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x5b\x6b\x65\x79\x5d\x3d\x6f\x72\x69\x2e\x63\x6f\x6e\x63\x61\x74\x28\x5b\x77\x72\x61\x70\x70\x65\x72\x46\x6e\x5d\x29\x3b\x64\x65\x6c\x65\x74\x65\x20\x73\x72\x63\x2e\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x5b\x6b\x65\x79\x5d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x6f\x72\x69\x29\x7b\x64\x65\x73\x74\x2e\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x5b\x6b\x65\x79\x5d\x3d\x5b\x6f\x72\x69\x2c\x77\x72\x61\x70\x70\x65\x72\x46\x6e\x5d\x3b\x64\x65\x6c\x65\x74\x65\x20\x73\x72\x63\x2e\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x5b\x6b\x65\x79\x5d\x7d\x7d\x29\x3b\x69\x66\x28\x21\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x72\x63\x2e\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x29\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x64\x65\x6c\x65\x74\x65\x20\x73\x72\x63\x2e\x77\x72\x61\x70\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x7d\x7d\x76\x61\x72\x20\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3d\x64\x65\x73\x74\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x3b\x69\x66\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x29\x28\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x29\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x20\x69\x6e\x20\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x29\x7b\x76\x61\x72\x20\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x4f\x62\x6a\x3d\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x5d\x3b\x69\x66\x28\x21\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x29\x28\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x4f\x62\x6a\x29\x7c\x7c\x21\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x29\x28\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x4f\x62\x6a\x2e\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x29\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x76\x61\x72\x20\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3d\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x4f\x62\x6a\x2e\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x20\x69\x6e\x20\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x29\x7b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x3d\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x5b\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x5d\x3b\x69\x66\x28\x21\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x61\x63\x74\x69\x6f\x6e\x29\x29\x7b\x61\x63\x74\x69\x6f\x6e\x3d\x5b\x61\x63\x74\x69\x6f\x6e\x5d\x3b\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x5b\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x5d\x3d\x61\x63\x74\x69\x6f\x6e\x7d\x69\x66\x28\x73\x72\x63\x26\x26\x73\x72\x63\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x26\x26\x73\x72\x63\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x5d\x26\x26\x73\x72\x63\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x5d\x2e\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x26\x26\x73\x72\x63\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x5d\x2e\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x5b\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x5d\x29\x7b\x73\x72\x63\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x5d\x2e\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x5b\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x5d\x3d\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x5b\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x73\x72\x63\x2e\x73\x74\x61\x74\x65\x50\x6c\x75\x67\x69\x6e\x73\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x5d\x2e\x77\x72\x61\x70\x41\x63\x74\x69\x6f\x6e\x73\x5b\x61\x63\x74\x69\x6f\x6e\x4e\x61\x6d\x65\x5d\x29\x7d\x7d\x7d\x7d\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x64\x65\x65\x70\x45\x78\x74\x65\x6e\x64\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x64\x65\x73\x74\x2c\x73\x72\x63\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x75\x69\x6c\x64\x52\x65\x64\x75\x63\x65\x72\x28\x73\x74\x61\x74\x65\x73\x29\x7b\x76\x61\x72\x20\x72\x65\x64\x75\x63\x65\x72\x4f\x62\x6a\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6f\x62\x6a\x4d\x61\x70\x29\x28\x73\x74\x61\x74\x65\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x2e\x72\x65\x64\x75\x63\x65\x72\x73\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x6c\x6c\x52\x65\x64\x75\x63\x65\x72\x73\x28\x72\x65\x64\x75\x63\x65\x72\x4f\x62\x6a\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x6c\x6c\x52\x65\x64\x75\x63\x65\x72\x73\x28\x72\x65\x64\x75\x63\x65\x72\x53\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x72\x65\x64\x75\x63\x65\x72\x73\x3d\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x64\x75\x63\x65\x72\x53\x79\x73\x74\x65\x6d\x29\x2e\x72\x65\x64\x75\x63\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x7b\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6d\x61\x6b\x65\x52\x65\x64\x75\x63\x65\x72\x28\x72\x65\x64\x75\x63\x65\x72\x53\x79\x73\x74\x65\x6d\x5b\x6b\x65\x79\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x2c\x7b\x7d\x29\x3b\x69\x66\x28\x21\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x64\x75\x63\x65\x72\x73\x29\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x64\x46\x6e\x7d\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x72\x65\x64\x75\x78\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x63\x6f\x6d\x62\x69\x6e\x65\x52\x65\x64\x75\x63\x65\x72\x73\x29\x28\x72\x65\x64\x75\x63\x65\x72\x73\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x6b\x65\x52\x65\x64\x75\x63\x65\x72\x28\x72\x65\x64\x75\x63\x65\x72\x4f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3a\x6e\x65\x77\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x6f\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3b\x69\x66\x28\x21\x72\x65\x64\x75\x63\x65\x72\x4f\x62\x6a\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x3b\x76\x61\x72\x20\x72\x65\x64\x46\x6e\x3d\x72\x65\x64\x75\x63\x65\x72\x4f\x62\x6a\x5b\x61\x63\x74\x69\x6f\x6e\x2e\x74\x79\x70\x65\x5d\x3b\x69\x66\x28\x72\x65\x64\x46\x6e\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x3d\x77\x72\x61\x70\x57\x69\x74\x68\x54\x72\x79\x43\x61\x74\x63\x68\x28\x72\x65\x64\x46\x6e\x29\x28\x73\x74\x61\x74\x65\x2c\x61\x63\x74\x69\x6f\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x3d\x3d\x3d\x6e\x75\x6c\x6c\x3f\x73\x74\x61\x74\x65\x3a\x72\x65\x73\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x61\x70\x57\x69\x74\x68\x54\x72\x79\x43\x61\x74\x63\x68\x28\x66\x6e\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x34\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x7b\x7d\x2c\x5f\x72\x65\x66\x34\x24\x6c\x6f\x67\x45\x72\x72\x6f\x72\x73\x3d\x5f\x72\x65\x66\x34\x2e\x6c\x6f\x67\x45\x72\x72\x6f\x72\x73\x2c\x6c\x6f\x67\x45\x72\x72\x6f\x72\x73\x3d\x5f\x72\x65\x66\x34\x24\x6c\x6f\x67\x45\x72\x72\x6f\x72\x73\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x74\x72\x75\x65\x3a\x5f\x72\x65\x66\x34\x24\x6c\x6f\x67\x45\x72\x72\x6f\x72\x73\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x66\x6e\x21\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x72\x79\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x33\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x33\x29\x2c\x5f\x6b\x65\x79\x33\x3d\x30\x3b\x5f\x6b\x65\x79\x33\x3c\x5f\x6c\x65\x6e\x33\x3b\x5f\x6b\x65\x79\x33\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x33\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x33\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x66\x6e\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x69\x66\x28\x6c\x6f\x67\x45\x72\x72\x6f\x72\x73\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x66\x69\x67\x75\x72\x65\x53\x74\x6f\x72\x65\x28\x72\x6f\x6f\x74\x52\x65\x64\x75\x63\x65\x72\x2c\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x7b\x76\x61\x72\x20\x73\x74\x6f\x72\x65\x3d\x63\x72\x65\x61\x74\x65\x53\x74\x6f\x72\x65\x57\x69\x74\x68\x4d\x69\x64\x64\x6c\x65\x77\x61\x72\x65\x28\x72\x6f\x6f\x74\x52\x65\x64\x75\x63\x65\x72\x2c\x69\x6e\x69\x74\x69\x61\x6c\x53\x74\x61\x74\x65\x2c\x67\x65\x74\x53\x79\x73\x74\x65\x6d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x6f\x72\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x30\x29\x3b\x76\x61\x72\x20\x24\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x4f\x62\x6a\x65\x63\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x69\x74\x2c\x6b\x65\x79\x2c\x64\x65\x73\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x69\x74\x2c\x6b\x65\x79\x2c\x64\x65\x73\x63\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x2c\x22\x4f\x62\x6a\x65\x63\x74\x22\x2c\x7b\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x2e\x66\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x32\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x4f\x62\x6a\x65\x63\x74\x2e\x61\x73\x73\x69\x67\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2c\x22\x4f\x62\x6a\x65\x63\x74\x22\x2c\x7b\x61\x73\x73\x69\x67\x6e\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x33\x29\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x67\x65\x74\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x29\x3b\x76\x61\x72\x20\x67\x4f\x50\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x36\x29\x3b\x76\x61\x72\x20\x70\x49\x45\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x33\x29\x3b\x76\x61\x72\x20\x74\x6f\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x29\x3b\x76\x61\x72\x20\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x35\x29\x3b\x76\x61\x72\x20\x24\x61\x73\x73\x69\x67\x6e\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x61\x73\x73\x69\x67\x6e\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x21\x24\x61\x73\x73\x69\x67\x6e\x7c\x7c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x41\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x42\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x53\x3d\x53\x79\x6d\x62\x6f\x6c\x28\x29\x3b\x76\x61\x72\x20\x4b\x3d\x22\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70\x71\x72\x73\x74\x22\x3b\x41\x5b\x53\x5d\x3d\x37\x3b\x4b\x2e\x73\x70\x6c\x69\x74\x28\x22\x22\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x29\x7b\x42\x5b\x6b\x5d\x3d\x6b\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x24\x61\x73\x73\x69\x67\x6e\x28\x7b\x7d\x2c\x41\x29\x5b\x53\x5d\x21\x3d\x37\x7c\x7c\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x24\x61\x73\x73\x69\x67\x6e\x28\x7b\x7d\x2c\x42\x29\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x22\x29\x21\x3d\x4b\x7d\x29\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x73\x73\x69\x67\x6e\x28\x74\x61\x72\x67\x65\x74\x2c\x73\x6f\x75\x72\x63\x65\x29\x7b\x76\x61\x72\x20\x54\x3d\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x74\x61\x72\x67\x65\x74\x29\x3b\x76\x61\x72\x20\x61\x4c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x31\x3b\x76\x61\x72\x20\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x67\x4f\x50\x53\x2e\x66\x3b\x76\x61\x72\x20\x69\x73\x45\x6e\x75\x6d\x3d\x70\x49\x45\x2e\x66\x3b\x77\x68\x69\x6c\x65\x28\x61\x4c\x65\x6e\x3e\x69\x6e\x64\x65\x78\x29\x7b\x76\x61\x72\x20\x53\x3d\x49\x4f\x62\x6a\x65\x63\x74\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x6e\x64\x65\x78\x2b\x2b\x5d\x29\x3b\x76\x61\x72\x20\x6b\x65\x79\x73\x3d\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3f\x67\x65\x74\x4b\x65\x79\x73\x28\x53\x29\x2e\x63\x6f\x6e\x63\x61\x74\x28\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x28\x53\x29\x29\x3a\x67\x65\x74\x4b\x65\x79\x73\x28\x53\x29\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x6b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x6a\x3d\x30\x3b\x76\x61\x72\x20\x6b\x65\x79\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x3e\x6a\x29\x69\x66\x28\x69\x73\x45\x6e\x75\x6d\x2e\x63\x61\x6c\x6c\x28\x53\x2c\x6b\x65\x79\x3d\x6b\x65\x79\x73\x5b\x6a\x2b\x2b\x5d\x29\x29\x54\x5b\x6b\x65\x79\x5d\x3d\x53\x5b\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x54\x7d\x3a\x24\x61\x73\x73\x69\x67\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x64\x75\x78\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x64\x75\x78\x2d\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x67\x6c\x6f\x62\x61\x6c\x29\x7b\x0a\x2f\x2a\x21\x0a\x20\x2a\x20\x54\x68\x65\x20\x62\x75\x66\x66\x65\x72\x20\x6d\x6f\x64\x75\x6c\x65\x20\x66\x72\x6f\x6d\x20\x6e\x6f\x64\x65\x2e\x6a\x73\x2c\x20\x66\x6f\x72\x20\x74\x68\x65\x20\x62\x72\x6f\x77\x73\x65\x72\x2e\x0a\x20\x2a\x0a\x20\x2a\x20\x40\x61\x75\x74\x68\x6f\x72\x20\x20\x20\x46\x65\x72\x6f\x73\x73\x20\x41\x62\x6f\x75\x6b\x68\x61\x64\x69\x6a\x65\x68\x20\x3c\x66\x65\x72\x6f\x73\x73\x40\x66\x65\x72\x6f\x73\x73\x2e\x6f\x72\x67\x3e\x20\x3c\x68\x74\x74\x70\x3a\x2f\x2f\x66\x65\x72\x6f\x73\x73\x2e\x6f\x72\x67\x3e\x0a\x20\x2a\x20\x40\x6c\x69\x63\x65\x6e\x73\x65\x20\x20\x4d\x49\x54\x0a\x20\x2a\x2f\x0a\x76\x61\x72\x20\x62\x61\x73\x65\x36\x34\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x37\x29\x3b\x76\x61\x72\x20\x69\x65\x65\x65\x37\x35\x34\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x38\x29\x3b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x39\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x42\x75\x66\x66\x65\x72\x3d\x42\x75\x66\x66\x65\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x6c\x6f\x77\x42\x75\x66\x66\x65\x72\x3d\x53\x6c\x6f\x77\x42\x75\x66\x66\x65\x72\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x49\x4e\x53\x50\x45\x43\x54\x5f\x4d\x41\x58\x5f\x42\x59\x54\x45\x53\x3d\x35\x30\x3b\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x67\x6c\x6f\x62\x61\x6c\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x3a\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x53\x75\x70\x70\x6f\x72\x74\x28\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x6b\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x3d\x6b\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x28\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x53\x75\x70\x70\x6f\x72\x74\x28\x29\x7b\x74\x72\x79\x7b\x76\x61\x72\x20\x61\x72\x72\x3d\x6e\x65\x77\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x28\x31\x29\x3b\x61\x72\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3d\x7b\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3a\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x66\x6f\x6f\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x34\x32\x7d\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x2e\x66\x6f\x6f\x28\x29\x3d\x3d\x3d\x34\x32\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x61\x72\x72\x2e\x73\x75\x62\x61\x72\x72\x61\x79\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x61\x72\x72\x2e\x73\x75\x62\x61\x72\x72\x61\x79\x28\x31\x2c\x31\x29\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6b\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x3f\x32\x31\x34\x37\x34\x38\x33\x36\x34\x37\x3a\x31\x30\x37\x33\x37\x34\x31\x38\x32\x33\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x6b\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x28\x29\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x49\x6e\x76\x61\x6c\x69\x64\x20\x74\x79\x70\x65\x64\x20\x61\x72\x72\x61\x79\x20\x6c\x65\x6e\x67\x74\x68\x22\x29\x7d\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x61\x74\x3d\x6e\x65\x77\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x74\x68\x61\x74\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x74\x68\x61\x74\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x74\x68\x61\x74\x3d\x6e\x65\x77\x20\x42\x75\x66\x66\x65\x72\x28\x6c\x65\x6e\x67\x74\x68\x29\x7d\x74\x68\x61\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x6c\x65\x6e\x67\x74\x68\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x61\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x42\x75\x66\x66\x65\x72\x28\x61\x72\x67\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x4f\x72\x4f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x26\x26\x21\x28\x74\x68\x69\x73\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x42\x75\x66\x66\x65\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x42\x75\x66\x66\x65\x72\x28\x61\x72\x67\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x4f\x72\x4f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x61\x72\x67\x3d\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x4f\x72\x4f\x66\x66\x73\x65\x74\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x49\x66\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x20\x69\x73\x20\x73\x70\x65\x63\x69\x66\x69\x65\x64\x20\x74\x68\x65\x6e\x20\x74\x68\x65\x20\x66\x69\x72\x73\x74\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x73\x74\x72\x69\x6e\x67\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x72\x6f\x6d\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x4f\x72\x4f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x6f\x6f\x6c\x53\x69\x7a\x65\x3d\x38\x31\x39\x32\x3b\x42\x75\x66\x66\x65\x72\x2e\x5f\x61\x75\x67\x6d\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x72\x72\x29\x7b\x61\x72\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x28\x74\x68\x61\x74\x2c\x76\x61\x6c\x75\x65\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x4f\x72\x4f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x27\x22\x76\x61\x6c\x75\x65\x22\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x6e\x6f\x74\x20\x62\x65\x20\x61\x20\x6e\x75\x6d\x62\x65\x72\x27\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x26\x26\x76\x61\x6c\x75\x65\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x72\x6f\x6d\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x76\x61\x6c\x75\x65\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x4f\x72\x4f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x72\x6f\x6d\x53\x74\x72\x69\x6e\x67\x28\x74\x68\x61\x74\x2c\x76\x61\x6c\x75\x65\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x4f\x72\x4f\x66\x66\x73\x65\x74\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x72\x6f\x6d\x4f\x62\x6a\x65\x63\x74\x28\x74\x68\x61\x74\x2c\x76\x61\x6c\x75\x65\x29\x7d\x42\x75\x66\x66\x65\x72\x2e\x66\x72\x6f\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x4f\x72\x4f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x72\x6f\x6d\x28\x6e\x75\x6c\x6c\x2c\x76\x61\x6c\x75\x65\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x4f\x72\x4f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3d\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x42\x75\x66\x66\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3d\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x53\x79\x6d\x62\x6f\x6c\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x26\x26\x53\x79\x6d\x62\x6f\x6c\x2e\x73\x70\x65\x63\x69\x65\x73\x26\x26\x42\x75\x66\x66\x65\x72\x5b\x53\x79\x6d\x62\x6f\x6c\x2e\x73\x70\x65\x63\x69\x65\x73\x5d\x3d\x3d\x3d\x42\x75\x66\x66\x65\x72\x29\x7b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x42\x75\x66\x66\x65\x72\x2c\x53\x79\x6d\x62\x6f\x6c\x2e\x73\x70\x65\x63\x69\x65\x73\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x6e\x75\x6c\x6c\x2c\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x7d\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x73\x73\x65\x72\x74\x53\x69\x7a\x65\x28\x73\x69\x7a\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x69\x7a\x65\x21\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x27\x22\x73\x69\x7a\x65\x22\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x6e\x75\x6d\x62\x65\x72\x27\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x69\x7a\x65\x3c\x30\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x27\x22\x73\x69\x7a\x65\x22\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x6e\x6f\x74\x20\x62\x65\x20\x6e\x65\x67\x61\x74\x69\x76\x65\x27\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x6c\x6c\x6f\x63\x28\x74\x68\x61\x74\x2c\x73\x69\x7a\x65\x2c\x66\x69\x6c\x6c\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x61\x73\x73\x65\x72\x74\x53\x69\x7a\x65\x28\x73\x69\x7a\x65\x29\x3b\x69\x66\x28\x73\x69\x7a\x65\x3c\x3d\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x73\x69\x7a\x65\x29\x7d\x69\x66\x28\x66\x69\x6c\x6c\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x3f\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x73\x69\x7a\x65\x29\x2e\x66\x69\x6c\x6c\x28\x66\x69\x6c\x6c\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x3a\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x73\x69\x7a\x65\x29\x2e\x66\x69\x6c\x6c\x28\x66\x69\x6c\x6c\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x73\x69\x7a\x65\x29\x7d\x42\x75\x66\x66\x65\x72\x2e\x61\x6c\x6c\x6f\x63\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x69\x7a\x65\x2c\x66\x69\x6c\x6c\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x6c\x6c\x6f\x63\x28\x6e\x75\x6c\x6c\x2c\x73\x69\x7a\x65\x2c\x66\x69\x6c\x6c\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x28\x74\x68\x61\x74\x2c\x73\x69\x7a\x65\x29\x7b\x61\x73\x73\x65\x72\x74\x53\x69\x7a\x65\x28\x73\x69\x7a\x65\x29\x3b\x74\x68\x61\x74\x3d\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x73\x69\x7a\x65\x3c\x30\x3f\x30\x3a\x63\x68\x65\x63\x6b\x65\x64\x28\x73\x69\x7a\x65\x29\x7c\x30\x29\x3b\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x73\x69\x7a\x65\x3b\x2b\x2b\x69\x29\x7b\x74\x68\x61\x74\x5b\x69\x5d\x3d\x30\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x61\x74\x7d\x42\x75\x66\x66\x65\x72\x2e\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x69\x7a\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x28\x6e\x75\x6c\x6c\x2c\x73\x69\x7a\x65\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x53\x6c\x6f\x77\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x69\x7a\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x28\x6e\x75\x6c\x6c\x2c\x73\x69\x7a\x65\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x53\x74\x72\x69\x6e\x67\x28\x74\x68\x61\x74\x2c\x73\x74\x72\x69\x6e\x67\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x7c\x7c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x3d\x3d\x22\x22\x29\x7b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x22\x75\x74\x66\x38\x22\x7d\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x45\x6e\x63\x6f\x64\x69\x6e\x67\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x27\x22\x65\x6e\x63\x6f\x64\x69\x6e\x67\x22\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x76\x61\x6c\x69\x64\x20\x73\x74\x72\x69\x6e\x67\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x27\x29\x7d\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x28\x73\x74\x72\x69\x6e\x67\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7c\x30\x3b\x74\x68\x61\x74\x3d\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x61\x63\x74\x75\x61\x6c\x3d\x74\x68\x61\x74\x2e\x77\x72\x69\x74\x65\x28\x73\x74\x72\x69\x6e\x67\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x3b\x69\x66\x28\x61\x63\x74\x75\x61\x6c\x21\x3d\x3d\x6c\x65\x6e\x67\x74\x68\x29\x7b\x74\x68\x61\x74\x3d\x74\x68\x61\x74\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x61\x63\x74\x75\x61\x6c\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x61\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x74\x68\x61\x74\x2c\x61\x72\x72\x61\x79\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x30\x3f\x30\x3a\x63\x68\x65\x63\x6b\x65\x64\x28\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7c\x30\x3b\x74\x68\x61\x74\x3d\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x3d\x31\x29\x7b\x74\x68\x61\x74\x5b\x69\x5d\x3d\x61\x72\x72\x61\x79\x5b\x69\x5d\x26\x32\x35\x35\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x61\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x61\x72\x72\x61\x79\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x61\x72\x72\x61\x79\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3c\x30\x7c\x7c\x61\x72\x72\x61\x79\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x27\x6f\x66\x66\x73\x65\x74\x27\x20\x69\x73\x20\x6f\x75\x74\x20\x6f\x66\x20\x62\x6f\x75\x6e\x64\x73\x22\x29\x7d\x69\x66\x28\x61\x72\x72\x61\x79\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2b\x28\x6c\x65\x6e\x67\x74\x68\x7c\x7c\x30\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x27\x6c\x65\x6e\x67\x74\x68\x27\x20\x69\x73\x20\x6f\x75\x74\x20\x6f\x66\x20\x62\x6f\x75\x6e\x64\x73\x22\x29\x7d\x69\x66\x28\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x61\x72\x72\x61\x79\x3d\x6e\x65\x77\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x28\x61\x72\x72\x61\x79\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x61\x72\x72\x61\x79\x3d\x6e\x65\x77\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x28\x61\x72\x72\x61\x79\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x29\x7d\x65\x6c\x73\x65\x7b\x61\x72\x72\x61\x79\x3d\x6e\x65\x77\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x28\x61\x72\x72\x61\x79\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x61\x74\x3d\x61\x72\x72\x61\x79\x3b\x74\x68\x61\x74\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x7d\x65\x6c\x73\x65\x7b\x74\x68\x61\x74\x3d\x66\x72\x6f\x6d\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x74\x68\x61\x74\x2c\x61\x72\x72\x61\x79\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x61\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x4f\x62\x6a\x65\x63\x74\x28\x74\x68\x61\x74\x2c\x6f\x62\x6a\x29\x7b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x6f\x62\x6a\x29\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x63\x68\x65\x63\x6b\x65\x64\x28\x6f\x62\x6a\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7c\x30\x3b\x74\x68\x61\x74\x3d\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x6c\x65\x6e\x29\x3b\x69\x66\x28\x74\x68\x61\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x61\x74\x7d\x6f\x62\x6a\x2e\x63\x6f\x70\x79\x28\x74\x68\x61\x74\x2c\x30\x2c\x30\x2c\x6c\x65\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x61\x74\x7d\x69\x66\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x26\x26\x6f\x62\x6a\x2e\x62\x75\x66\x66\x65\x72\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x7c\x7c\x22\x6c\x65\x6e\x67\x74\x68\x22\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x7c\x7c\x69\x73\x6e\x61\x6e\x28\x6f\x62\x6a\x2e\x6c\x65\x6e\x67\x74\x68\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x72\x65\x61\x74\x65\x42\x75\x66\x66\x65\x72\x28\x74\x68\x61\x74\x2c\x30\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x72\x6f\x6d\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x74\x68\x61\x74\x2c\x6f\x62\x6a\x29\x7d\x69\x66\x28\x6f\x62\x6a\x2e\x74\x79\x70\x65\x3d\x3d\x3d\x22\x42\x75\x66\x66\x65\x72\x22\x26\x26\x69\x73\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x2e\x64\x61\x74\x61\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x72\x6f\x6d\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x74\x68\x61\x74\x2c\x6f\x62\x6a\x2e\x64\x61\x74\x61\x29\x7d\x7d\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x46\x69\x72\x73\x74\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x73\x74\x72\x69\x6e\x67\x2c\x20\x42\x75\x66\x66\x65\x72\x2c\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x2c\x20\x41\x72\x72\x61\x79\x2c\x20\x6f\x72\x20\x61\x72\x72\x61\x79\x2d\x6c\x69\x6b\x65\x20\x6f\x62\x6a\x65\x63\x74\x2e\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x65\x63\x6b\x65\x64\x28\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x6c\x65\x6e\x67\x74\x68\x3e\x3d\x6b\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x28\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x41\x74\x74\x65\x6d\x70\x74\x20\x74\x6f\x20\x61\x6c\x6c\x6f\x63\x61\x74\x65\x20\x42\x75\x66\x66\x65\x72\x20\x6c\x61\x72\x67\x65\x72\x20\x74\x68\x61\x6e\x20\x6d\x61\x78\x69\x6d\x75\x6d\x20\x22\x2b\x22\x73\x69\x7a\x65\x3a\x20\x30\x78\x22\x2b\x6b\x4d\x61\x78\x4c\x65\x6e\x67\x74\x68\x28\x29\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x31\x36\x29\x2b\x22\x20\x62\x79\x74\x65\x73\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x6e\x67\x74\x68\x7c\x30\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x6c\x6f\x77\x42\x75\x66\x66\x65\x72\x28\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x2b\x6c\x65\x6e\x67\x74\x68\x21\x3d\x6c\x65\x6e\x67\x74\x68\x29\x7b\x6c\x65\x6e\x67\x74\x68\x3d\x30\x7d\x72\x65\x74\x75\x72\x6e\x20\x42\x75\x66\x66\x65\x72\x2e\x61\x6c\x6c\x6f\x63\x28\x2b\x6c\x65\x6e\x67\x74\x68\x29\x7d\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x42\x75\x66\x66\x65\x72\x28\x62\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x28\x62\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x62\x2e\x5f\x69\x73\x42\x75\x66\x66\x65\x72\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x63\x6f\x6d\x70\x61\x72\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x61\x72\x65\x28\x61\x2c\x62\x29\x7b\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x61\x29\x7c\x7c\x21\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x62\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x42\x75\x66\x66\x65\x72\x73\x22\x29\x7d\x69\x66\x28\x61\x3d\x3d\x3d\x62\x29\x72\x65\x74\x75\x72\x6e\x20\x30\x3b\x76\x61\x72\x20\x78\x3d\x61\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x79\x3d\x62\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x2c\x6c\x65\x6e\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x78\x2c\x79\x29\x3b\x69\x3c\x6c\x65\x6e\x3b\x2b\x2b\x69\x29\x7b\x69\x66\x28\x61\x5b\x69\x5d\x21\x3d\x3d\x62\x5b\x69\x5d\x29\x7b\x78\x3d\x61\x5b\x69\x5d\x3b\x79\x3d\x62\x5b\x69\x5d\x3b\x62\x72\x65\x61\x6b\x7d\x7d\x69\x66\x28\x78\x3c\x79\x29\x72\x65\x74\x75\x72\x6e\x2d\x31\x3b\x69\x66\x28\x79\x3c\x78\x29\x72\x65\x74\x75\x72\x6e\x20\x31\x3b\x72\x65\x74\x75\x72\x6e\x20\x30\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x45\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x45\x6e\x63\x6f\x64\x69\x6e\x67\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x53\x74\x72\x69\x6e\x67\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x29\x7b\x63\x61\x73\x65\x22\x68\x65\x78\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x38\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x2d\x38\x22\x3a\x63\x61\x73\x65\x22\x61\x73\x63\x69\x69\x22\x3a\x63\x61\x73\x65\x22\x6c\x61\x74\x69\x6e\x31\x22\x3a\x63\x61\x73\x65\x22\x62\x69\x6e\x61\x72\x79\x22\x3a\x63\x61\x73\x65\x22\x62\x61\x73\x65\x36\x34\x22\x3a\x63\x61\x73\x65\x22\x75\x63\x73\x32\x22\x3a\x63\x61\x73\x65\x22\x75\x63\x73\x2d\x32\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x31\x36\x6c\x65\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x2d\x31\x36\x6c\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x64\x65\x66\x61\x75\x6c\x74\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x63\x6f\x6e\x63\x61\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x63\x61\x74\x28\x6c\x69\x73\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x21\x69\x73\x41\x72\x72\x61\x79\x28\x6c\x69\x73\x74\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x27\x22\x6c\x69\x73\x74\x22\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x6e\x20\x41\x72\x72\x61\x79\x20\x6f\x66\x20\x42\x75\x66\x66\x65\x72\x73\x27\x29\x7d\x69\x66\x28\x6c\x69\x73\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x42\x75\x66\x66\x65\x72\x2e\x61\x6c\x6c\x6f\x63\x28\x30\x29\x7d\x76\x61\x72\x20\x69\x3b\x69\x66\x28\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x6c\x65\x6e\x67\x74\x68\x3d\x30\x3b\x66\x6f\x72\x28\x69\x3d\x30\x3b\x69\x3c\x6c\x69\x73\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x2b\x2b\x69\x29\x7b\x6c\x65\x6e\x67\x74\x68\x2b\x3d\x6c\x69\x73\x74\x5b\x69\x5d\x2e\x6c\x65\x6e\x67\x74\x68\x7d\x7d\x76\x61\x72\x20\x62\x75\x66\x66\x65\x72\x3d\x42\x75\x66\x66\x65\x72\x2e\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x70\x6f\x73\x3d\x30\x3b\x66\x6f\x72\x28\x69\x3d\x30\x3b\x69\x3c\x6c\x69\x73\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x2b\x2b\x69\x29\x7b\x76\x61\x72\x20\x62\x75\x66\x3d\x6c\x69\x73\x74\x5b\x69\x5d\x3b\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x62\x75\x66\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x27\x22\x6c\x69\x73\x74\x22\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x6e\x20\x41\x72\x72\x61\x79\x20\x6f\x66\x20\x42\x75\x66\x66\x65\x72\x73\x27\x29\x7d\x62\x75\x66\x2e\x63\x6f\x70\x79\x28\x62\x75\x66\x66\x65\x72\x2c\x70\x6f\x73\x29\x3b\x70\x6f\x73\x2b\x3d\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x7d\x72\x65\x74\x75\x72\x6e\x20\x62\x75\x66\x66\x65\x72\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x28\x73\x74\x72\x69\x6e\x67\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x73\x74\x72\x69\x6e\x67\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x56\x69\x65\x77\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x28\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x56\x69\x65\x77\x28\x73\x74\x72\x69\x6e\x67\x29\x7c\x7c\x73\x74\x72\x69\x6e\x67\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x74\x72\x69\x6e\x67\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x73\x74\x72\x69\x6e\x67\x3d\x22\x22\x2b\x73\x74\x72\x69\x6e\x67\x7d\x76\x61\x72\x20\x6c\x65\x6e\x3d\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x6c\x65\x6e\x3d\x3d\x3d\x30\x29\x72\x65\x74\x75\x72\x6e\x20\x30\x3b\x76\x61\x72\x20\x6c\x6f\x77\x65\x72\x65\x64\x43\x61\x73\x65\x3d\x66\x61\x6c\x73\x65\x3b\x66\x6f\x72\x28\x3b\x3b\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x63\x61\x73\x65\x22\x61\x73\x63\x69\x69\x22\x3a\x63\x61\x73\x65\x22\x6c\x61\x74\x69\x6e\x31\x22\x3a\x63\x61\x73\x65\x22\x62\x69\x6e\x61\x72\x79\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x6e\x3b\x63\x61\x73\x65\x22\x75\x74\x66\x38\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x2d\x38\x22\x3a\x63\x61\x73\x65\x20\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x74\x66\x38\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x69\x6e\x67\x29\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x63\x61\x73\x65\x22\x75\x63\x73\x32\x22\x3a\x63\x61\x73\x65\x22\x75\x63\x73\x2d\x32\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x31\x36\x6c\x65\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x2d\x31\x36\x6c\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x6e\x2a\x32\x3b\x63\x61\x73\x65\x22\x68\x65\x78\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x6e\x3e\x3e\x3e\x31\x3b\x63\x61\x73\x65\x22\x62\x61\x73\x65\x36\x34\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x36\x34\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x69\x6e\x67\x29\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x64\x65\x66\x61\x75\x6c\x74\x3a\x69\x66\x28\x6c\x6f\x77\x65\x72\x65\x64\x43\x61\x73\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x75\x74\x66\x38\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x69\x6e\x67\x29\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x28\x22\x22\x2b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x3b\x6c\x6f\x77\x65\x72\x65\x64\x43\x61\x73\x65\x3d\x74\x72\x75\x65\x7d\x7d\x7d\x42\x75\x66\x66\x65\x72\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x6c\x6f\x77\x54\x6f\x53\x74\x72\x69\x6e\x67\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x6c\x6f\x77\x65\x72\x65\x64\x43\x61\x73\x65\x3d\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x73\x74\x61\x72\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x73\x74\x61\x72\x74\x3c\x30\x29\x7b\x73\x74\x61\x72\x74\x3d\x30\x7d\x69\x66\x28\x73\x74\x61\x72\x74\x3e\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x22\x7d\x69\x66\x28\x65\x6e\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x65\x6e\x64\x3e\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x65\x6e\x64\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x7d\x69\x66\x28\x65\x6e\x64\x3c\x3d\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x22\x7d\x65\x6e\x64\x3e\x3e\x3e\x3d\x30\x3b\x73\x74\x61\x72\x74\x3e\x3e\x3e\x3d\x30\x3b\x69\x66\x28\x65\x6e\x64\x3c\x3d\x73\x74\x61\x72\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x22\x7d\x69\x66\x28\x21\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x22\x75\x74\x66\x38\x22\x3b\x77\x68\x69\x6c\x65\x28\x74\x72\x75\x65\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x63\x61\x73\x65\x22\x68\x65\x78\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x68\x65\x78\x53\x6c\x69\x63\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x63\x61\x73\x65\x22\x75\x74\x66\x38\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x2d\x38\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x74\x66\x38\x53\x6c\x69\x63\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x63\x61\x73\x65\x22\x61\x73\x63\x69\x69\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x61\x73\x63\x69\x69\x53\x6c\x69\x63\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x63\x61\x73\x65\x22\x6c\x61\x74\x69\x6e\x31\x22\x3a\x63\x61\x73\x65\x22\x62\x69\x6e\x61\x72\x79\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x6c\x61\x74\x69\x6e\x31\x53\x6c\x69\x63\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x63\x61\x73\x65\x22\x62\x61\x73\x65\x36\x34\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x36\x34\x53\x6c\x69\x63\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x63\x61\x73\x65\x22\x75\x63\x73\x32\x22\x3a\x63\x61\x73\x65\x22\x75\x63\x73\x2d\x32\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x31\x36\x6c\x65\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x2d\x31\x36\x6c\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x74\x66\x31\x36\x6c\x65\x53\x6c\x69\x63\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x64\x65\x66\x61\x75\x6c\x74\x3a\x69\x66\x28\x6c\x6f\x77\x65\x72\x65\x64\x43\x61\x73\x65\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x55\x6e\x6b\x6e\x6f\x77\x6e\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3a\x20\x22\x2b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x3b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x2b\x22\x22\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x3b\x6c\x6f\x77\x65\x72\x65\x64\x43\x61\x73\x65\x3d\x74\x72\x75\x65\x7d\x7d\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x5f\x69\x73\x42\x75\x66\x66\x65\x72\x3d\x74\x72\x75\x65\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x77\x61\x70\x28\x62\x2c\x6e\x2c\x6d\x29\x7b\x76\x61\x72\x20\x69\x3d\x62\x5b\x6e\x5d\x3b\x62\x5b\x6e\x5d\x3d\x62\x5b\x6d\x5d\x3b\x62\x5b\x6d\x5d\x3d\x69\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x77\x61\x70\x31\x36\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x77\x61\x70\x31\x36\x28\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x6c\x65\x6e\x25\x32\x21\x3d\x3d\x30\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x42\x75\x66\x66\x65\x72\x20\x73\x69\x7a\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x6d\x75\x6c\x74\x69\x70\x6c\x65\x20\x6f\x66\x20\x31\x36\x2d\x62\x69\x74\x73\x22\x29\x7d\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x6c\x65\x6e\x3b\x69\x2b\x3d\x32\x29\x7b\x73\x77\x61\x70\x28\x74\x68\x69\x73\x2c\x69\x2c\x69\x2b\x31\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x77\x61\x70\x33\x32\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x77\x61\x70\x33\x32\x28\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x6c\x65\x6e\x25\x34\x21\x3d\x3d\x30\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x42\x75\x66\x66\x65\x72\x20\x73\x69\x7a\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x6d\x75\x6c\x74\x69\x70\x6c\x65\x20\x6f\x66\x20\x33\x32\x2d\x62\x69\x74\x73\x22\x29\x7d\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x6c\x65\x6e\x3b\x69\x2b\x3d\x34\x29\x7b\x73\x77\x61\x70\x28\x74\x68\x69\x73\x2c\x69\x2c\x69\x2b\x33\x29\x3b\x73\x77\x61\x70\x28\x74\x68\x69\x73\x2c\x69\x2b\x31\x2c\x69\x2b\x32\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x77\x61\x70\x36\x34\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x77\x61\x70\x36\x34\x28\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x6c\x65\x6e\x25\x38\x21\x3d\x3d\x30\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x42\x75\x66\x66\x65\x72\x20\x73\x69\x7a\x65\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x6d\x75\x6c\x74\x69\x70\x6c\x65\x20\x6f\x66\x20\x36\x34\x2d\x62\x69\x74\x73\x22\x29\x7d\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x6c\x65\x6e\x3b\x69\x2b\x3d\x38\x29\x7b\x73\x77\x61\x70\x28\x74\x68\x69\x73\x2c\x69\x2c\x69\x2b\x37\x29\x3b\x73\x77\x61\x70\x28\x74\x68\x69\x73\x2c\x69\x2b\x31\x2c\x69\x2b\x36\x29\x3b\x73\x77\x61\x70\x28\x74\x68\x69\x73\x2c\x69\x2b\x32\x2c\x69\x2b\x35\x29\x3b\x73\x77\x61\x70\x28\x74\x68\x69\x73\x2c\x69\x2b\x33\x2c\x69\x2b\x34\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x7c\x30\x3b\x69\x66\x28\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x72\x65\x74\x75\x72\x6e\x22\x22\x3b\x69\x66\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x72\x65\x74\x75\x72\x6e\x20\x75\x74\x66\x38\x53\x6c\x69\x63\x65\x28\x74\x68\x69\x73\x2c\x30\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x6c\x6f\x77\x54\x6f\x53\x74\x72\x69\x6e\x67\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x65\x71\x75\x61\x6c\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x71\x75\x61\x6c\x73\x28\x62\x29\x7b\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x62\x29\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x41\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x42\x75\x66\x66\x65\x72\x22\x29\x3b\x69\x66\x28\x74\x68\x69\x73\x3d\x3d\x3d\x62\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x42\x75\x66\x66\x65\x72\x2e\x63\x6f\x6d\x70\x61\x72\x65\x28\x74\x68\x69\x73\x2c\x62\x29\x3d\x3d\x3d\x30\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x69\x6e\x73\x70\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x73\x70\x65\x63\x74\x28\x29\x7b\x76\x61\x72\x20\x73\x74\x72\x3d\x22\x22\x3b\x76\x61\x72\x20\x6d\x61\x78\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x49\x4e\x53\x50\x45\x43\x54\x5f\x4d\x41\x58\x5f\x42\x59\x54\x45\x53\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x29\x7b\x73\x74\x72\x3d\x74\x68\x69\x73\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x22\x68\x65\x78\x22\x2c\x30\x2c\x6d\x61\x78\x29\x2e\x6d\x61\x74\x63\x68\x28\x2f\x2e\x7b\x32\x7d\x2f\x67\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x20\x22\x29\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x6d\x61\x78\x29\x73\x74\x72\x2b\x3d\x22\x20\x2e\x2e\x2e\x20\x22\x7d\x72\x65\x74\x75\x72\x6e\x22\x3c\x42\x75\x66\x66\x65\x72\x20\x22\x2b\x73\x74\x72\x2b\x22\x3e\x22\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x63\x6f\x6d\x70\x61\x72\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x61\x72\x65\x28\x74\x61\x72\x67\x65\x74\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x2c\x74\x68\x69\x73\x53\x74\x61\x72\x74\x2c\x74\x68\x69\x73\x45\x6e\x64\x29\x7b\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x74\x61\x72\x67\x65\x74\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x41\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x42\x75\x66\x66\x65\x72\x22\x29\x7d\x69\x66\x28\x73\x74\x61\x72\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x73\x74\x61\x72\x74\x3d\x30\x7d\x69\x66\x28\x65\x6e\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x65\x6e\x64\x3d\x74\x61\x72\x67\x65\x74\x3f\x74\x61\x72\x67\x65\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3a\x30\x7d\x69\x66\x28\x74\x68\x69\x73\x53\x74\x61\x72\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x74\x68\x69\x73\x53\x74\x61\x72\x74\x3d\x30\x7d\x69\x66\x28\x74\x68\x69\x73\x45\x6e\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x74\x68\x69\x73\x45\x6e\x64\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x7d\x69\x66\x28\x73\x74\x61\x72\x74\x3c\x30\x7c\x7c\x65\x6e\x64\x3e\x74\x61\x72\x67\x65\x74\x2e\x6c\x65\x6e\x67\x74\x68\x7c\x7c\x74\x68\x69\x73\x53\x74\x61\x72\x74\x3c\x30\x7c\x7c\x74\x68\x69\x73\x45\x6e\x64\x3e\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x6f\x75\x74\x20\x6f\x66\x20\x72\x61\x6e\x67\x65\x20\x69\x6e\x64\x65\x78\x22\x29\x7d\x69\x66\x28\x74\x68\x69\x73\x53\x74\x61\x72\x74\x3e\x3d\x74\x68\x69\x73\x45\x6e\x64\x26\x26\x73\x74\x61\x72\x74\x3e\x3d\x65\x6e\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x30\x7d\x69\x66\x28\x74\x68\x69\x73\x53\x74\x61\x72\x74\x3e\x3d\x74\x68\x69\x73\x45\x6e\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x69\x66\x28\x73\x74\x61\x72\x74\x3e\x3d\x65\x6e\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x31\x7d\x73\x74\x61\x72\x74\x3e\x3e\x3e\x3d\x30\x3b\x65\x6e\x64\x3e\x3e\x3e\x3d\x30\x3b\x74\x68\x69\x73\x53\x74\x61\x72\x74\x3e\x3e\x3e\x3d\x30\x3b\x74\x68\x69\x73\x45\x6e\x64\x3e\x3e\x3e\x3d\x30\x3b\x69\x66\x28\x74\x68\x69\x73\x3d\x3d\x3d\x74\x61\x72\x67\x65\x74\x29\x72\x65\x74\x75\x72\x6e\x20\x30\x3b\x76\x61\x72\x20\x78\x3d\x74\x68\x69\x73\x45\x6e\x64\x2d\x74\x68\x69\x73\x53\x74\x61\x72\x74\x3b\x76\x61\x72\x20\x79\x3d\x65\x6e\x64\x2d\x73\x74\x61\x72\x74\x3b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x78\x2c\x79\x29\x3b\x76\x61\x72\x20\x74\x68\x69\x73\x43\x6f\x70\x79\x3d\x74\x68\x69\x73\x2e\x73\x6c\x69\x63\x65\x28\x74\x68\x69\x73\x53\x74\x61\x72\x74\x2c\x74\x68\x69\x73\x45\x6e\x64\x29\x3b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x43\x6f\x70\x79\x3d\x74\x61\x72\x67\x65\x74\x2e\x73\x6c\x69\x63\x65\x28\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x6c\x65\x6e\x3b\x2b\x2b\x69\x29\x7b\x69\x66\x28\x74\x68\x69\x73\x43\x6f\x70\x79\x5b\x69\x5d\x21\x3d\x3d\x74\x61\x72\x67\x65\x74\x43\x6f\x70\x79\x5b\x69\x5d\x29\x7b\x78\x3d\x74\x68\x69\x73\x43\x6f\x70\x79\x5b\x69\x5d\x3b\x79\x3d\x74\x61\x72\x67\x65\x74\x43\x6f\x70\x79\x5b\x69\x5d\x3b\x62\x72\x65\x61\x6b\x7d\x7d\x69\x66\x28\x78\x3c\x79\x29\x72\x65\x74\x75\x72\x6e\x2d\x31\x3b\x69\x66\x28\x79\x3c\x78\x29\x72\x65\x74\x75\x72\x6e\x20\x31\x3b\x72\x65\x74\x75\x72\x6e\x20\x30\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x69\x64\x69\x72\x65\x63\x74\x69\x6f\x6e\x61\x6c\x49\x6e\x64\x65\x78\x4f\x66\x28\x62\x75\x66\x66\x65\x72\x2c\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x2c\x64\x69\x72\x29\x7b\x69\x66\x28\x62\x75\x66\x66\x65\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x72\x65\x74\x75\x72\x6e\x2d\x31\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3b\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x30\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3e\x32\x31\x34\x37\x34\x38\x33\x36\x34\x37\x29\x7b\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x32\x31\x34\x37\x34\x38\x33\x36\x34\x37\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3c\x2d\x32\x31\x34\x37\x34\x38\x33\x36\x34\x38\x29\x7b\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x2d\x32\x31\x34\x37\x34\x38\x33\x36\x34\x38\x7d\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x2b\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3b\x69\x66\x28\x69\x73\x4e\x61\x4e\x28\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x29\x29\x7b\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x64\x69\x72\x3f\x30\x3a\x62\x75\x66\x66\x65\x72\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x7d\x69\x66\x28\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3c\x30\x29\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x62\x75\x66\x66\x65\x72\x2e\x6c\x65\x6e\x67\x74\x68\x2b\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3b\x69\x66\x28\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3e\x3d\x62\x75\x66\x66\x65\x72\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x64\x69\x72\x29\x72\x65\x74\x75\x72\x6e\x2d\x31\x3b\x65\x6c\x73\x65\x20\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x62\x75\x66\x66\x65\x72\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3c\x30\x29\x7b\x69\x66\x28\x64\x69\x72\x29\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x30\x3b\x65\x6c\x73\x65\x20\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x76\x61\x6c\x3d\x42\x75\x66\x66\x65\x72\x2e\x66\x72\x6f\x6d\x28\x76\x61\x6c\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7d\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x76\x61\x6c\x29\x29\x7b\x69\x66\x28\x76\x61\x6c\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x61\x79\x49\x6e\x64\x65\x78\x4f\x66\x28\x62\x75\x66\x66\x65\x72\x2c\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x2c\x64\x69\x72\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x3d\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x76\x61\x6c\x3d\x76\x61\x6c\x26\x32\x35\x35\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x69\x66\x28\x64\x69\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x2e\x63\x61\x6c\x6c\x28\x62\x75\x66\x66\x65\x72\x2c\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x4f\x66\x2e\x63\x61\x6c\x6c\x28\x62\x75\x66\x66\x65\x72\x2c\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x61\x79\x49\x6e\x64\x65\x78\x4f\x66\x28\x62\x75\x66\x66\x65\x72\x2c\x5b\x76\x61\x6c\x5d\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x2c\x64\x69\x72\x29\x7d\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x76\x61\x6c\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x73\x74\x72\x69\x6e\x67\x2c\x20\x6e\x75\x6d\x62\x65\x72\x20\x6f\x72\x20\x42\x75\x66\x66\x65\x72\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x72\x72\x61\x79\x49\x6e\x64\x65\x78\x4f\x66\x28\x61\x72\x72\x2c\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x2c\x64\x69\x72\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x53\x69\x7a\x65\x3d\x31\x3b\x76\x61\x72\x20\x61\x72\x72\x4c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x76\x61\x6c\x4c\x65\x6e\x67\x74\x68\x3d\x76\x61\x6c\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x53\x74\x72\x69\x6e\x67\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x3b\x69\x66\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x3d\x3d\x22\x75\x63\x73\x32\x22\x7c\x7c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x3d\x3d\x22\x75\x63\x73\x2d\x32\x22\x7c\x7c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x3d\x3d\x22\x75\x74\x66\x31\x36\x6c\x65\x22\x7c\x7c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x3d\x3d\x22\x75\x74\x66\x2d\x31\x36\x6c\x65\x22\x29\x7b\x69\x66\x28\x61\x72\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x32\x7c\x7c\x76\x61\x6c\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x32\x29\x7b\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x69\x6e\x64\x65\x78\x53\x69\x7a\x65\x3d\x32\x3b\x61\x72\x72\x4c\x65\x6e\x67\x74\x68\x2f\x3d\x32\x3b\x76\x61\x6c\x4c\x65\x6e\x67\x74\x68\x2f\x3d\x32\x3b\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2f\x3d\x32\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x28\x62\x75\x66\x2c\x69\x29\x7b\x69\x66\x28\x69\x6e\x64\x65\x78\x53\x69\x7a\x65\x3d\x3d\x3d\x31\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x75\x66\x5b\x69\x5d\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x75\x66\x2e\x72\x65\x61\x64\x55\x49\x6e\x74\x31\x36\x42\x45\x28\x69\x2a\x69\x6e\x64\x65\x78\x53\x69\x7a\x65\x29\x7d\x7d\x76\x61\x72\x20\x69\x3b\x69\x66\x28\x64\x69\x72\x29\x7b\x76\x61\x72\x20\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x3d\x2d\x31\x3b\x66\x6f\x72\x28\x69\x3d\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3b\x69\x3c\x61\x72\x72\x4c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x69\x66\x28\x72\x65\x61\x64\x28\x61\x72\x72\x2c\x69\x29\x3d\x3d\x3d\x72\x65\x61\x64\x28\x76\x61\x6c\x2c\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x3d\x3d\x3d\x2d\x31\x3f\x30\x3a\x69\x2d\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x29\x29\x7b\x69\x66\x28\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x3d\x3d\x3d\x2d\x31\x29\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x3d\x69\x3b\x69\x66\x28\x69\x2d\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x2b\x31\x3d\x3d\x3d\x76\x61\x6c\x4c\x65\x6e\x67\x74\x68\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x2a\x69\x6e\x64\x65\x78\x53\x69\x7a\x65\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x21\x3d\x3d\x2d\x31\x29\x69\x2d\x3d\x69\x2d\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x3b\x66\x6f\x75\x6e\x64\x49\x6e\x64\x65\x78\x3d\x2d\x31\x7d\x7d\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2b\x76\x61\x6c\x4c\x65\x6e\x67\x74\x68\x3e\x61\x72\x72\x4c\x65\x6e\x67\x74\x68\x29\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3d\x61\x72\x72\x4c\x65\x6e\x67\x74\x68\x2d\x76\x61\x6c\x4c\x65\x6e\x67\x74\x68\x3b\x66\x6f\x72\x28\x69\x3d\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x3b\x69\x3e\x3d\x30\x3b\x69\x2d\x2d\x29\x7b\x76\x61\x72\x20\x66\x6f\x75\x6e\x64\x3d\x74\x72\x75\x65\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6a\x3d\x30\x3b\x6a\x3c\x76\x61\x6c\x4c\x65\x6e\x67\x74\x68\x3b\x6a\x2b\x2b\x29\x7b\x69\x66\x28\x72\x65\x61\x64\x28\x61\x72\x72\x2c\x69\x2b\x6a\x29\x21\x3d\x3d\x72\x65\x61\x64\x28\x76\x61\x6c\x2c\x6a\x29\x29\x7b\x66\x6f\x75\x6e\x64\x3d\x66\x61\x6c\x73\x65\x3b\x62\x72\x65\x61\x6b\x7d\x7d\x69\x66\x28\x66\x6f\x75\x6e\x64\x29\x72\x65\x74\x75\x72\x6e\x20\x69\x7d\x7d\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x69\x6e\x63\x6c\x75\x64\x65\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x63\x6c\x75\x64\x65\x73\x28\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x21\x3d\x3d\x2d\x31\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x64\x65\x78\x4f\x66\x28\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x69\x64\x69\x72\x65\x63\x74\x69\x6f\x6e\x61\x6c\x49\x6e\x64\x65\x78\x4f\x66\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x2c\x74\x72\x75\x65\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x4f\x66\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x4f\x66\x28\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x69\x64\x69\x72\x65\x63\x74\x69\x6f\x6e\x61\x6c\x49\x6e\x64\x65\x78\x4f\x66\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x2c\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x2c\x66\x61\x6c\x73\x65\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x65\x78\x57\x72\x69\x74\x65\x28\x62\x75\x66\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x6f\x66\x66\x73\x65\x74\x3d\x4e\x75\x6d\x62\x65\x72\x28\x6f\x66\x66\x73\x65\x74\x29\x7c\x7c\x30\x3b\x76\x61\x72\x20\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x3d\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x6f\x66\x66\x73\x65\x74\x3b\x69\x66\x28\x21\x6c\x65\x6e\x67\x74\x68\x29\x7b\x6c\x65\x6e\x67\x74\x68\x3d\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x7d\x65\x6c\x73\x65\x7b\x6c\x65\x6e\x67\x74\x68\x3d\x4e\x75\x6d\x62\x65\x72\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x69\x66\x28\x6c\x65\x6e\x67\x74\x68\x3e\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x29\x7b\x6c\x65\x6e\x67\x74\x68\x3d\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x7d\x7d\x76\x61\x72\x20\x73\x74\x72\x4c\x65\x6e\x3d\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x73\x74\x72\x4c\x65\x6e\x25\x32\x21\x3d\x3d\x30\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x49\x6e\x76\x61\x6c\x69\x64\x20\x68\x65\x78\x20\x73\x74\x72\x69\x6e\x67\x22\x29\x3b\x69\x66\x28\x6c\x65\x6e\x67\x74\x68\x3e\x73\x74\x72\x4c\x65\x6e\x2f\x32\x29\x7b\x6c\x65\x6e\x67\x74\x68\x3d\x73\x74\x72\x4c\x65\x6e\x2f\x32\x7d\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x2b\x2b\x69\x29\x7b\x76\x61\x72\x20\x70\x61\x72\x73\x65\x64\x3d\x70\x61\x72\x73\x65\x49\x6e\x74\x28\x73\x74\x72\x69\x6e\x67\x2e\x73\x75\x62\x73\x74\x72\x28\x69\x2a\x32\x2c\x32\x29\x2c\x31\x36\x29\x3b\x69\x66\x28\x69\x73\x4e\x61\x4e\x28\x70\x61\x72\x73\x65\x64\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x69\x3b\x62\x75\x66\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x3d\x70\x61\x72\x73\x65\x64\x7d\x72\x65\x74\x75\x72\x6e\x20\x69\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x74\x66\x38\x57\x72\x69\x74\x65\x28\x62\x75\x66\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x6c\x69\x74\x42\x75\x66\x66\x65\x72\x28\x75\x74\x66\x38\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x69\x6e\x67\x2c\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x6f\x66\x66\x73\x65\x74\x29\x2c\x62\x75\x66\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x73\x63\x69\x69\x57\x72\x69\x74\x65\x28\x62\x75\x66\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x6c\x69\x74\x42\x75\x66\x66\x65\x72\x28\x61\x73\x63\x69\x69\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x69\x6e\x67\x29\x2c\x62\x75\x66\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x61\x74\x69\x6e\x31\x57\x72\x69\x74\x65\x28\x62\x75\x66\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x73\x63\x69\x69\x57\x72\x69\x74\x65\x28\x62\x75\x66\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x36\x34\x57\x72\x69\x74\x65\x28\x62\x75\x66\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x6c\x69\x74\x42\x75\x66\x66\x65\x72\x28\x62\x61\x73\x65\x36\x34\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x69\x6e\x67\x29\x2c\x62\x75\x66\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x63\x73\x32\x57\x72\x69\x74\x65\x28\x62\x75\x66\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x6c\x69\x74\x42\x75\x66\x66\x65\x72\x28\x75\x74\x66\x31\x36\x6c\x65\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x69\x6e\x67\x2c\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x6f\x66\x66\x73\x65\x74\x29\x2c\x62\x75\x66\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x28\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x69\x66\x28\x6f\x66\x66\x73\x65\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x22\x75\x74\x66\x38\x22\x3b\x6c\x65\x6e\x67\x74\x68\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x6f\x66\x66\x73\x65\x74\x3d\x30\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x6f\x66\x66\x73\x65\x74\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x6f\x66\x66\x73\x65\x74\x3b\x6c\x65\x6e\x67\x74\x68\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x6f\x66\x66\x73\x65\x74\x3d\x30\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x73\x46\x69\x6e\x69\x74\x65\x28\x6f\x66\x66\x73\x65\x74\x29\x29\x7b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x69\x73\x46\x69\x6e\x69\x74\x65\x28\x6c\x65\x6e\x67\x74\x68\x29\x29\x7b\x6c\x65\x6e\x67\x74\x68\x3d\x6c\x65\x6e\x67\x74\x68\x7c\x30\x3b\x69\x66\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x22\x75\x74\x66\x38\x22\x7d\x65\x6c\x73\x65\x7b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x6c\x65\x6e\x67\x74\x68\x3b\x6c\x65\x6e\x67\x74\x68\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x42\x75\x66\x66\x65\x72\x2e\x77\x72\x69\x74\x65\x28\x73\x74\x72\x69\x6e\x67\x2c\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x2c\x20\x6f\x66\x66\x73\x65\x74\x5b\x2c\x20\x6c\x65\x6e\x67\x74\x68\x5d\x29\x20\x69\x73\x20\x6e\x6f\x20\x6c\x6f\x6e\x67\x65\x72\x20\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x22\x29\x7d\x76\x61\x72\x20\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x6f\x66\x66\x73\x65\x74\x3b\x69\x66\x28\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x6c\x65\x6e\x67\x74\x68\x3e\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x29\x6c\x65\x6e\x67\x74\x68\x3d\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x3b\x69\x66\x28\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x28\x6c\x65\x6e\x67\x74\x68\x3c\x30\x7c\x7c\x6f\x66\x66\x73\x65\x74\x3c\x30\x29\x7c\x7c\x6f\x66\x66\x73\x65\x74\x3e\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x41\x74\x74\x65\x6d\x70\x74\x20\x74\x6f\x20\x77\x72\x69\x74\x65\x20\x6f\x75\x74\x73\x69\x64\x65\x20\x62\x75\x66\x66\x65\x72\x20\x62\x6f\x75\x6e\x64\x73\x22\x29\x7d\x69\x66\x28\x21\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x22\x75\x74\x66\x38\x22\x3b\x76\x61\x72\x20\x6c\x6f\x77\x65\x72\x65\x64\x43\x61\x73\x65\x3d\x66\x61\x6c\x73\x65\x3b\x66\x6f\x72\x28\x3b\x3b\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x63\x61\x73\x65\x22\x68\x65\x78\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x68\x65\x78\x57\x72\x69\x74\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x63\x61\x73\x65\x22\x75\x74\x66\x38\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x2d\x38\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x74\x66\x38\x57\x72\x69\x74\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x63\x61\x73\x65\x22\x61\x73\x63\x69\x69\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x61\x73\x63\x69\x69\x57\x72\x69\x74\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x63\x61\x73\x65\x22\x6c\x61\x74\x69\x6e\x31\x22\x3a\x63\x61\x73\x65\x22\x62\x69\x6e\x61\x72\x79\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x6c\x61\x74\x69\x6e\x31\x57\x72\x69\x74\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x63\x61\x73\x65\x22\x62\x61\x73\x65\x36\x34\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x36\x34\x57\x72\x69\x74\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x63\x61\x73\x65\x22\x75\x63\x73\x32\x22\x3a\x63\x61\x73\x65\x22\x75\x63\x73\x2d\x32\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x31\x36\x6c\x65\x22\x3a\x63\x61\x73\x65\x22\x75\x74\x66\x2d\x31\x36\x6c\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x63\x73\x32\x57\x72\x69\x74\x65\x28\x74\x68\x69\x73\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3b\x64\x65\x66\x61\x75\x6c\x74\x3a\x69\x66\x28\x6c\x6f\x77\x65\x72\x65\x64\x43\x61\x73\x65\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x55\x6e\x6b\x6e\x6f\x77\x6e\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3a\x20\x22\x2b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x3b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x28\x22\x22\x2b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x3b\x6c\x6f\x77\x65\x72\x65\x64\x43\x61\x73\x65\x3d\x74\x72\x75\x65\x7d\x7d\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x4a\x53\x4f\x4e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x4a\x53\x4f\x4e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x74\x79\x70\x65\x3a\x22\x42\x75\x66\x66\x65\x72\x22\x2c\x64\x61\x74\x61\x3a\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x6c\x69\x63\x65\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2e\x5f\x61\x72\x72\x7c\x7c\x74\x68\x69\x73\x2c\x30\x29\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x36\x34\x53\x6c\x69\x63\x65\x28\x62\x75\x66\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x69\x66\x28\x73\x74\x61\x72\x74\x3d\x3d\x3d\x30\x26\x26\x65\x6e\x64\x3d\x3d\x3d\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x36\x34\x2e\x66\x72\x6f\x6d\x42\x79\x74\x65\x41\x72\x72\x61\x79\x28\x62\x75\x66\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x36\x34\x2e\x66\x72\x6f\x6d\x42\x79\x74\x65\x41\x72\x72\x61\x79\x28\x62\x75\x66\x2e\x73\x6c\x69\x63\x65\x28\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x74\x66\x38\x53\x6c\x69\x63\x65\x28\x62\x75\x66\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x65\x6e\x64\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x65\x6e\x64\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x69\x3d\x73\x74\x61\x72\x74\x3b\x77\x68\x69\x6c\x65\x28\x69\x3c\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x66\x69\x72\x73\x74\x42\x79\x74\x65\x3d\x62\x75\x66\x5b\x69\x5d\x3b\x76\x61\x72\x20\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x62\x79\x74\x65\x73\x50\x65\x72\x53\x65\x71\x75\x65\x6e\x63\x65\x3d\x66\x69\x72\x73\x74\x42\x79\x74\x65\x3e\x32\x33\x39\x3f\x34\x3a\x66\x69\x72\x73\x74\x42\x79\x74\x65\x3e\x32\x32\x33\x3f\x33\x3a\x66\x69\x72\x73\x74\x42\x79\x74\x65\x3e\x31\x39\x31\x3f\x32\x3a\x31\x3b\x69\x66\x28\x69\x2b\x62\x79\x74\x65\x73\x50\x65\x72\x53\x65\x71\x75\x65\x6e\x63\x65\x3c\x3d\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x2c\x74\x68\x69\x72\x64\x42\x79\x74\x65\x2c\x66\x6f\x75\x72\x74\x68\x42\x79\x74\x65\x2c\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3b\x73\x77\x69\x74\x63\x68\x28\x62\x79\x74\x65\x73\x50\x65\x72\x53\x65\x71\x75\x65\x6e\x63\x65\x29\x7b\x63\x61\x73\x65\x20\x31\x3a\x69\x66\x28\x66\x69\x72\x73\x74\x42\x79\x74\x65\x3c\x31\x32\x38\x29\x7b\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x66\x69\x72\x73\x74\x42\x79\x74\x65\x7d\x62\x72\x65\x61\x6b\x3b\x63\x61\x73\x65\x20\x32\x3a\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x3d\x62\x75\x66\x5b\x69\x2b\x31\x5d\x3b\x69\x66\x28\x28\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x26\x31\x39\x32\x29\x3d\x3d\x3d\x31\x32\x38\x29\x7b\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x28\x66\x69\x72\x73\x74\x42\x79\x74\x65\x26\x33\x31\x29\x3c\x3c\x36\x7c\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x26\x36\x33\x3b\x69\x66\x28\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x31\x32\x37\x29\x7b\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x7d\x7d\x62\x72\x65\x61\x6b\x3b\x63\x61\x73\x65\x20\x33\x3a\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x3d\x62\x75\x66\x5b\x69\x2b\x31\x5d\x3b\x74\x68\x69\x72\x64\x42\x79\x74\x65\x3d\x62\x75\x66\x5b\x69\x2b\x32\x5d\x3b\x69\x66\x28\x28\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x26\x31\x39\x32\x29\x3d\x3d\x3d\x31\x32\x38\x26\x26\x28\x74\x68\x69\x72\x64\x42\x79\x74\x65\x26\x31\x39\x32\x29\x3d\x3d\x3d\x31\x32\x38\x29\x7b\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x28\x66\x69\x72\x73\x74\x42\x79\x74\x65\x26\x31\x35\x29\x3c\x3c\x31\x32\x7c\x28\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x26\x36\x33\x29\x3c\x3c\x36\x7c\x74\x68\x69\x72\x64\x42\x79\x74\x65\x26\x36\x33\x3b\x69\x66\x28\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x32\x30\x34\x37\x26\x26\x28\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3c\x35\x35\x32\x39\x36\x7c\x7c\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x35\x37\x33\x34\x33\x29\x29\x7b\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x7d\x7d\x62\x72\x65\x61\x6b\x3b\x63\x61\x73\x65\x20\x34\x3a\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x3d\x62\x75\x66\x5b\x69\x2b\x31\x5d\x3b\x74\x68\x69\x72\x64\x42\x79\x74\x65\x3d\x62\x75\x66\x5b\x69\x2b\x32\x5d\x3b\x66\x6f\x75\x72\x74\x68\x42\x79\x74\x65\x3d\x62\x75\x66\x5b\x69\x2b\x33\x5d\x3b\x69\x66\x28\x28\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x26\x31\x39\x32\x29\x3d\x3d\x3d\x31\x32\x38\x26\x26\x28\x74\x68\x69\x72\x64\x42\x79\x74\x65\x26\x31\x39\x32\x29\x3d\x3d\x3d\x31\x32\x38\x26\x26\x28\x66\x6f\x75\x72\x74\x68\x42\x79\x74\x65\x26\x31\x39\x32\x29\x3d\x3d\x3d\x31\x32\x38\x29\x7b\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x28\x66\x69\x72\x73\x74\x42\x79\x74\x65\x26\x31\x35\x29\x3c\x3c\x31\x38\x7c\x28\x73\x65\x63\x6f\x6e\x64\x42\x79\x74\x65\x26\x36\x33\x29\x3c\x3c\x31\x32\x7c\x28\x74\x68\x69\x72\x64\x42\x79\x74\x65\x26\x36\x33\x29\x3c\x3c\x36\x7c\x66\x6f\x75\x72\x74\x68\x42\x79\x74\x65\x26\x36\x33\x3b\x69\x66\x28\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x36\x35\x35\x33\x35\x26\x26\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3c\x31\x31\x31\x34\x31\x31\x32\x29\x7b\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x74\x65\x6d\x70\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x7d\x7d\x7d\x7d\x69\x66\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x36\x35\x35\x33\x33\x3b\x62\x79\x74\x65\x73\x50\x65\x72\x53\x65\x71\x75\x65\x6e\x63\x65\x3d\x31\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x36\x35\x35\x33\x35\x29\x7b\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x2d\x3d\x36\x35\x35\x33\x36\x3b\x72\x65\x73\x2e\x70\x75\x73\x68\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x3e\x3e\x31\x30\x26\x31\x30\x32\x33\x7c\x35\x35\x32\x39\x36\x29\x3b\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x35\x36\x33\x32\x30\x7c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x26\x31\x30\x32\x33\x7d\x72\x65\x73\x2e\x70\x75\x73\x68\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x29\x3b\x69\x2b\x3d\x62\x79\x74\x65\x73\x50\x65\x72\x53\x65\x71\x75\x65\x6e\x63\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x64\x65\x63\x6f\x64\x65\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x73\x41\x72\x72\x61\x79\x28\x72\x65\x73\x29\x7d\x76\x61\x72\x20\x4d\x41\x58\x5f\x41\x52\x47\x55\x4d\x45\x4e\x54\x53\x5f\x4c\x45\x4e\x47\x54\x48\x3d\x34\x30\x39\x36\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x63\x6f\x64\x65\x43\x6f\x64\x65\x50\x6f\x69\x6e\x74\x73\x41\x72\x72\x61\x79\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x73\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x6c\x65\x6e\x3c\x3d\x4d\x41\x58\x5f\x41\x52\x47\x55\x4d\x45\x4e\x54\x53\x5f\x4c\x45\x4e\x47\x54\x48\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x53\x74\x72\x69\x6e\x67\x2e\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x2e\x61\x70\x70\x6c\x79\x28\x53\x74\x72\x69\x6e\x67\x2c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x73\x29\x7d\x76\x61\x72\x20\x72\x65\x73\x3d\x22\x22\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x77\x68\x69\x6c\x65\x28\x69\x3c\x6c\x65\x6e\x29\x7b\x72\x65\x73\x2b\x3d\x53\x74\x72\x69\x6e\x67\x2e\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x2e\x61\x70\x70\x6c\x79\x28\x53\x74\x72\x69\x6e\x67\x2c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x73\x2e\x73\x6c\x69\x63\x65\x28\x69\x2c\x69\x2b\x3d\x4d\x41\x58\x5f\x41\x52\x47\x55\x4d\x45\x4e\x54\x53\x5f\x4c\x45\x4e\x47\x54\x48\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x73\x63\x69\x69\x53\x6c\x69\x63\x65\x28\x62\x75\x66\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x72\x65\x74\x3d\x22\x22\x3b\x65\x6e\x64\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x65\x6e\x64\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x73\x74\x61\x72\x74\x3b\x69\x3c\x65\x6e\x64\x3b\x2b\x2b\x69\x29\x7b\x72\x65\x74\x2b\x3d\x53\x74\x72\x69\x6e\x67\x2e\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x28\x62\x75\x66\x5b\x69\x5d\x26\x31\x32\x37\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x61\x74\x69\x6e\x31\x53\x6c\x69\x63\x65\x28\x62\x75\x66\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x72\x65\x74\x3d\x22\x22\x3b\x65\x6e\x64\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x65\x6e\x64\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x73\x74\x61\x72\x74\x3b\x69\x3c\x65\x6e\x64\x3b\x2b\x2b\x69\x29\x7b\x72\x65\x74\x2b\x3d\x53\x74\x72\x69\x6e\x67\x2e\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x28\x62\x75\x66\x5b\x69\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x65\x78\x53\x6c\x69\x63\x65\x28\x62\x75\x66\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x21\x73\x74\x61\x72\x74\x7c\x7c\x73\x74\x61\x72\x74\x3c\x30\x29\x73\x74\x61\x72\x74\x3d\x30\x3b\x69\x66\x28\x21\x65\x6e\x64\x7c\x7c\x65\x6e\x64\x3c\x30\x7c\x7c\x65\x6e\x64\x3e\x6c\x65\x6e\x29\x65\x6e\x64\x3d\x6c\x65\x6e\x3b\x76\x61\x72\x20\x6f\x75\x74\x3d\x22\x22\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x73\x74\x61\x72\x74\x3b\x69\x3c\x65\x6e\x64\x3b\x2b\x2b\x69\x29\x7b\x6f\x75\x74\x2b\x3d\x74\x6f\x48\x65\x78\x28\x62\x75\x66\x5b\x69\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x75\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x74\x66\x31\x36\x6c\x65\x53\x6c\x69\x63\x65\x28\x62\x75\x66\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x62\x79\x74\x65\x73\x3d\x62\x75\x66\x2e\x73\x6c\x69\x63\x65\x28\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x3d\x22\x22\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x62\x79\x74\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x3d\x32\x29\x7b\x72\x65\x73\x2b\x3d\x53\x74\x72\x69\x6e\x67\x2e\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x28\x62\x79\x74\x65\x73\x5b\x69\x5d\x2b\x62\x79\x74\x65\x73\x5b\x69\x2b\x31\x5d\x2a\x32\x35\x36\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x6c\x69\x63\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x6c\x69\x63\x65\x28\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x73\x74\x61\x72\x74\x3d\x7e\x7e\x73\x74\x61\x72\x74\x3b\x65\x6e\x64\x3d\x65\x6e\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x6c\x65\x6e\x3a\x7e\x7e\x65\x6e\x64\x3b\x69\x66\x28\x73\x74\x61\x72\x74\x3c\x30\x29\x7b\x73\x74\x61\x72\x74\x2b\x3d\x6c\x65\x6e\x3b\x69\x66\x28\x73\x74\x61\x72\x74\x3c\x30\x29\x73\x74\x61\x72\x74\x3d\x30\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x72\x74\x3e\x6c\x65\x6e\x29\x7b\x73\x74\x61\x72\x74\x3d\x6c\x65\x6e\x7d\x69\x66\x28\x65\x6e\x64\x3c\x30\x29\x7b\x65\x6e\x64\x2b\x3d\x6c\x65\x6e\x3b\x69\x66\x28\x65\x6e\x64\x3c\x30\x29\x65\x6e\x64\x3d\x30\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x65\x6e\x64\x3e\x6c\x65\x6e\x29\x7b\x65\x6e\x64\x3d\x6c\x65\x6e\x7d\x69\x66\x28\x65\x6e\x64\x3c\x73\x74\x61\x72\x74\x29\x65\x6e\x64\x3d\x73\x74\x61\x72\x74\x3b\x76\x61\x72\x20\x6e\x65\x77\x42\x75\x66\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x6e\x65\x77\x42\x75\x66\x3d\x74\x68\x69\x73\x2e\x73\x75\x62\x61\x72\x72\x61\x79\x28\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x6e\x65\x77\x42\x75\x66\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x73\x6c\x69\x63\x65\x4c\x65\x6e\x3d\x65\x6e\x64\x2d\x73\x74\x61\x72\x74\x3b\x6e\x65\x77\x42\x75\x66\x3d\x6e\x65\x77\x20\x42\x75\x66\x66\x65\x72\x28\x73\x6c\x69\x63\x65\x4c\x65\x6e\x2c\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x73\x6c\x69\x63\x65\x4c\x65\x6e\x3b\x2b\x2b\x69\x29\x7b\x6e\x65\x77\x42\x75\x66\x5b\x69\x5d\x3d\x74\x68\x69\x73\x5b\x69\x2b\x73\x74\x61\x72\x74\x5d\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x42\x75\x66\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x65\x78\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x6f\x66\x66\x73\x65\x74\x25\x31\x21\x3d\x3d\x30\x7c\x7c\x6f\x66\x66\x73\x65\x74\x3c\x30\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x6f\x66\x66\x73\x65\x74\x20\x69\x73\x20\x6e\x6f\x74\x20\x75\x69\x6e\x74\x22\x29\x3b\x69\x66\x28\x6f\x66\x66\x73\x65\x74\x2b\x65\x78\x74\x3e\x6c\x65\x6e\x67\x74\x68\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x54\x72\x79\x69\x6e\x67\x20\x74\x6f\x20\x61\x63\x63\x65\x73\x73\x20\x62\x65\x79\x6f\x6e\x64\x20\x62\x75\x66\x66\x65\x72\x20\x6c\x65\x6e\x67\x74\x68\x22\x29\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x55\x49\x6e\x74\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x55\x49\x6e\x74\x4c\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3b\x76\x61\x72\x20\x6d\x75\x6c\x3d\x31\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x3c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x26\x26\x28\x6d\x75\x6c\x2a\x3d\x32\x35\x36\x29\x29\x7b\x76\x61\x6c\x2b\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x2a\x6d\x75\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x55\x49\x6e\x74\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x55\x49\x6e\x74\x42\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7d\x76\x61\x72\x20\x76\x61\x6c\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x2d\x2d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x5d\x3b\x76\x61\x72\x20\x6d\x75\x6c\x3d\x31\x3b\x77\x68\x69\x6c\x65\x28\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3e\x30\x26\x26\x28\x6d\x75\x6c\x2a\x3d\x32\x35\x36\x29\x29\x7b\x76\x61\x6c\x2b\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x2d\x2d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x5d\x2a\x6d\x75\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x55\x49\x6e\x74\x38\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x55\x49\x6e\x74\x38\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x31\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x55\x49\x6e\x74\x31\x36\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x55\x49\x6e\x74\x31\x36\x4c\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x32\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3c\x3c\x38\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x55\x49\x6e\x74\x31\x36\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x55\x49\x6e\x74\x31\x36\x42\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x32\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3c\x3c\x38\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x55\x49\x6e\x74\x33\x32\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x55\x49\x6e\x74\x33\x32\x4c\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3c\x3c\x38\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x32\x5d\x3c\x3c\x31\x36\x29\x2b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x33\x5d\x2a\x31\x36\x37\x37\x37\x32\x31\x36\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x55\x49\x6e\x74\x33\x32\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x55\x49\x6e\x74\x33\x32\x42\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x2a\x31\x36\x37\x37\x37\x32\x31\x36\x2b\x28\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3c\x3c\x31\x36\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x32\x5d\x3c\x3c\x38\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x33\x5d\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x49\x6e\x74\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x49\x6e\x74\x4c\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3b\x76\x61\x72\x20\x6d\x75\x6c\x3d\x31\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x3c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x26\x26\x28\x6d\x75\x6c\x2a\x3d\x32\x35\x36\x29\x29\x7b\x76\x61\x6c\x2b\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x2a\x6d\x75\x6c\x7d\x6d\x75\x6c\x2a\x3d\x31\x32\x38\x3b\x69\x66\x28\x76\x61\x6c\x3e\x3d\x6d\x75\x6c\x29\x76\x61\x6c\x2d\x3d\x4d\x61\x74\x68\x2e\x70\x6f\x77\x28\x32\x2c\x38\x2a\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x49\x6e\x74\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x49\x6e\x74\x42\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x69\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x6d\x75\x6c\x3d\x31\x3b\x76\x61\x72\x20\x76\x61\x6c\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x2d\x2d\x69\x5d\x3b\x77\x68\x69\x6c\x65\x28\x69\x3e\x30\x26\x26\x28\x6d\x75\x6c\x2a\x3d\x32\x35\x36\x29\x29\x7b\x76\x61\x6c\x2b\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x2d\x2d\x69\x5d\x2a\x6d\x75\x6c\x7d\x6d\x75\x6c\x2a\x3d\x31\x32\x38\x3b\x69\x66\x28\x76\x61\x6c\x3e\x3d\x6d\x75\x6c\x29\x76\x61\x6c\x2d\x3d\x4d\x61\x74\x68\x2e\x70\x6f\x77\x28\x32\x2c\x38\x2a\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x49\x6e\x74\x38\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x49\x6e\x74\x38\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x31\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x69\x66\x28\x21\x28\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x26\x31\x32\x38\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3b\x72\x65\x74\x75\x72\x6e\x28\x32\x35\x35\x2d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x2b\x31\x29\x2a\x2d\x31\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x49\x6e\x74\x31\x36\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x49\x6e\x74\x31\x36\x4c\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x32\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3c\x3c\x38\x3b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x26\x33\x32\x37\x36\x38\x3f\x76\x61\x6c\x7c\x34\x32\x39\x34\x39\x30\x31\x37\x36\x30\x3a\x76\x61\x6c\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x49\x6e\x74\x31\x36\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x49\x6e\x74\x31\x36\x42\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x32\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x3d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3c\x3c\x38\x3b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x26\x33\x32\x37\x36\x38\x3f\x76\x61\x6c\x7c\x34\x32\x39\x34\x39\x30\x31\x37\x36\x30\x3a\x76\x61\x6c\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x49\x6e\x74\x33\x32\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x49\x6e\x74\x33\x32\x4c\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3c\x3c\x38\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x32\x5d\x3c\x3c\x31\x36\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x33\x5d\x3c\x3c\x32\x34\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x49\x6e\x74\x33\x32\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x49\x6e\x74\x33\x32\x42\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3c\x3c\x32\x34\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3c\x3c\x31\x36\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x32\x5d\x3c\x3c\x38\x7c\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x33\x5d\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x46\x6c\x6f\x61\x74\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x46\x6c\x6f\x61\x74\x4c\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x65\x65\x65\x37\x35\x34\x2e\x72\x65\x61\x64\x28\x74\x68\x69\x73\x2c\x6f\x66\x66\x73\x65\x74\x2c\x74\x72\x75\x65\x2c\x32\x33\x2c\x34\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x46\x6c\x6f\x61\x74\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x46\x6c\x6f\x61\x74\x42\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x65\x65\x65\x37\x35\x34\x2e\x72\x65\x61\x64\x28\x74\x68\x69\x73\x2c\x6f\x66\x66\x73\x65\x74\x2c\x66\x61\x6c\x73\x65\x2c\x32\x33\x2c\x34\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x44\x6f\x75\x62\x6c\x65\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x44\x6f\x75\x62\x6c\x65\x4c\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x38\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x65\x65\x65\x37\x35\x34\x2e\x72\x65\x61\x64\x28\x74\x68\x69\x73\x2c\x6f\x66\x66\x73\x65\x74\x2c\x74\x72\x75\x65\x2c\x35\x32\x2c\x38\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x65\x61\x64\x44\x6f\x75\x62\x6c\x65\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x44\x6f\x75\x62\x6c\x65\x42\x45\x28\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x4f\x66\x66\x73\x65\x74\x28\x6f\x66\x66\x73\x65\x74\x2c\x38\x2c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x65\x65\x65\x37\x35\x34\x2e\x72\x65\x61\x64\x28\x74\x68\x69\x73\x2c\x6f\x66\x66\x73\x65\x74\x2c\x66\x61\x6c\x73\x65\x2c\x35\x32\x2c\x38\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x65\x78\x74\x2c\x6d\x61\x78\x2c\x6d\x69\x6e\x29\x7b\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x62\x75\x66\x29\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x27\x22\x62\x75\x66\x66\x65\x72\x22\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x42\x75\x66\x66\x65\x72\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x27\x29\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x3e\x6d\x61\x78\x7c\x7c\x76\x61\x6c\x75\x65\x3c\x6d\x69\x6e\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x27\x22\x76\x61\x6c\x75\x65\x22\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x69\x73\x20\x6f\x75\x74\x20\x6f\x66\x20\x62\x6f\x75\x6e\x64\x73\x27\x29\x3b\x69\x66\x28\x6f\x66\x66\x73\x65\x74\x2b\x65\x78\x74\x3e\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x49\x6e\x64\x65\x78\x20\x6f\x75\x74\x20\x6f\x66\x20\x72\x61\x6e\x67\x65\x22\x29\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x4c\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x72\x20\x6d\x61\x78\x42\x79\x74\x65\x73\x3d\x4d\x61\x74\x68\x2e\x70\x6f\x77\x28\x32\x2c\x38\x2a\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x29\x2d\x31\x3b\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6d\x61\x78\x42\x79\x74\x65\x73\x2c\x30\x29\x7d\x76\x61\x72\x20\x6d\x75\x6c\x3d\x31\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x3c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x26\x26\x28\x6d\x75\x6c\x2a\x3d\x32\x35\x36\x29\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x3d\x76\x61\x6c\x75\x65\x2f\x6d\x75\x6c\x26\x32\x35\x35\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x42\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x72\x20\x6d\x61\x78\x42\x79\x74\x65\x73\x3d\x4d\x61\x74\x68\x2e\x70\x6f\x77\x28\x32\x2c\x38\x2a\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x29\x2d\x31\x3b\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6d\x61\x78\x42\x79\x74\x65\x73\x2c\x30\x29\x7d\x76\x61\x72\x20\x69\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2d\x31\x3b\x76\x61\x72\x20\x6d\x75\x6c\x3d\x31\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3b\x77\x68\x69\x6c\x65\x28\x2d\x2d\x69\x3e\x3d\x30\x26\x26\x28\x6d\x75\x6c\x2a\x3d\x32\x35\x36\x29\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x3d\x76\x61\x6c\x75\x65\x2f\x6d\x75\x6c\x26\x32\x35\x35\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x38\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x38\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x31\x2c\x32\x35\x35\x2c\x30\x29\x3b\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x76\x61\x6c\x75\x65\x3d\x4d\x61\x74\x68\x2e\x66\x6c\x6f\x6f\x72\x28\x76\x61\x6c\x75\x65\x29\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x31\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x31\x36\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x69\x74\x74\x6c\x65\x45\x6e\x64\x69\x61\x6e\x29\x7b\x69\x66\x28\x76\x61\x6c\x75\x65\x3c\x30\x29\x76\x61\x6c\x75\x65\x3d\x36\x35\x35\x33\x35\x2b\x76\x61\x6c\x75\x65\x2b\x31\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x2c\x6a\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x6f\x66\x66\x73\x65\x74\x2c\x32\x29\x3b\x69\x3c\x6a\x3b\x2b\x2b\x69\x29\x7b\x62\x75\x66\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x3d\x28\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3c\x3c\x38\x2a\x28\x6c\x69\x74\x74\x6c\x65\x45\x6e\x64\x69\x61\x6e\x3f\x69\x3a\x31\x2d\x69\x29\x29\x3e\x3e\x3e\x28\x6c\x69\x74\x74\x6c\x65\x45\x6e\x64\x69\x61\x6e\x3f\x69\x3a\x31\x2d\x69\x29\x2a\x38\x7d\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x31\x36\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x31\x36\x4c\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x32\x2c\x36\x35\x35\x33\x35\x2c\x30\x29\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x38\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x31\x36\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x74\x72\x75\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x32\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x31\x36\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x31\x36\x42\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x32\x2c\x36\x35\x35\x33\x35\x2c\x30\x29\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x38\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x31\x36\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x66\x61\x6c\x73\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x32\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x33\x32\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x69\x74\x74\x6c\x65\x45\x6e\x64\x69\x61\x6e\x29\x7b\x69\x66\x28\x76\x61\x6c\x75\x65\x3c\x30\x29\x76\x61\x6c\x75\x65\x3d\x34\x32\x39\x34\x39\x36\x37\x32\x39\x35\x2b\x76\x61\x6c\x75\x65\x2b\x31\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x2c\x6a\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x6f\x66\x66\x73\x65\x74\x2c\x34\x29\x3b\x69\x3c\x6a\x3b\x2b\x2b\x69\x29\x7b\x62\x75\x66\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x28\x6c\x69\x74\x74\x6c\x65\x45\x6e\x64\x69\x61\x6e\x3f\x69\x3a\x33\x2d\x69\x29\x2a\x38\x26\x32\x35\x35\x7d\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x33\x32\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x33\x32\x4c\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x34\x32\x39\x34\x39\x36\x37\x32\x39\x35\x2c\x30\x29\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x33\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x32\x34\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x32\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x31\x36\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x38\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x33\x32\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x74\x72\x75\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x34\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x33\x32\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x55\x49\x6e\x74\x33\x32\x42\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x34\x32\x39\x34\x39\x36\x37\x32\x39\x35\x2c\x30\x29\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x32\x34\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x31\x36\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x32\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x38\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x33\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x33\x32\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x66\x61\x6c\x73\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x34\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x49\x6e\x74\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x49\x6e\x74\x4c\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x72\x20\x6c\x69\x6d\x69\x74\x3d\x4d\x61\x74\x68\x2e\x70\x6f\x77\x28\x32\x2c\x38\x2a\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2d\x31\x29\x3b\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6c\x69\x6d\x69\x74\x2d\x31\x2c\x2d\x6c\x69\x6d\x69\x74\x29\x7d\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x6d\x75\x6c\x3d\x31\x3b\x76\x61\x72\x20\x73\x75\x62\x3d\x30\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x3c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x26\x26\x28\x6d\x75\x6c\x2a\x3d\x32\x35\x36\x29\x29\x7b\x69\x66\x28\x76\x61\x6c\x75\x65\x3c\x30\x26\x26\x73\x75\x62\x3d\x3d\x3d\x30\x26\x26\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x2d\x31\x5d\x21\x3d\x3d\x30\x29\x7b\x73\x75\x62\x3d\x31\x7d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x3d\x28\x76\x61\x6c\x75\x65\x2f\x6d\x75\x6c\x3e\x3e\x30\x29\x2d\x73\x75\x62\x26\x32\x35\x35\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x49\x6e\x74\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x49\x6e\x74\x42\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x72\x20\x6c\x69\x6d\x69\x74\x3d\x4d\x61\x74\x68\x2e\x70\x6f\x77\x28\x32\x2c\x38\x2a\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2d\x31\x29\x3b\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2c\x6c\x69\x6d\x69\x74\x2d\x31\x2c\x2d\x6c\x69\x6d\x69\x74\x29\x7d\x76\x61\x72\x20\x69\x3d\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x2d\x31\x3b\x76\x61\x72\x20\x6d\x75\x6c\x3d\x31\x3b\x76\x61\x72\x20\x73\x75\x62\x3d\x30\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3b\x77\x68\x69\x6c\x65\x28\x2d\x2d\x69\x3e\x3d\x30\x26\x26\x28\x6d\x75\x6c\x2a\x3d\x32\x35\x36\x29\x29\x7b\x69\x66\x28\x76\x61\x6c\x75\x65\x3c\x30\x26\x26\x73\x75\x62\x3d\x3d\x3d\x30\x26\x26\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x2b\x31\x5d\x21\x3d\x3d\x30\x29\x7b\x73\x75\x62\x3d\x31\x7d\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x69\x5d\x3d\x28\x76\x61\x6c\x75\x65\x2f\x6d\x75\x6c\x3e\x3e\x30\x29\x2d\x73\x75\x62\x26\x32\x35\x35\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x49\x6e\x74\x38\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x49\x6e\x74\x38\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x31\x2c\x31\x32\x37\x2c\x2d\x31\x32\x38\x29\x3b\x69\x66\x28\x21\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x76\x61\x6c\x75\x65\x3d\x4d\x61\x74\x68\x2e\x66\x6c\x6f\x6f\x72\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x3c\x30\x29\x76\x61\x6c\x75\x65\x3d\x32\x35\x35\x2b\x76\x61\x6c\x75\x65\x2b\x31\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x31\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x49\x6e\x74\x31\x36\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x49\x6e\x74\x31\x36\x4c\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x32\x2c\x33\x32\x37\x36\x37\x2c\x2d\x33\x32\x37\x36\x38\x29\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x38\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x31\x36\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x74\x72\x75\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x32\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x49\x6e\x74\x31\x36\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x49\x6e\x74\x31\x36\x42\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x32\x2c\x33\x32\x37\x36\x37\x2c\x2d\x33\x32\x37\x36\x38\x29\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x38\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x31\x36\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x66\x61\x6c\x73\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x32\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x49\x6e\x74\x33\x32\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x49\x6e\x74\x33\x32\x4c\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x32\x31\x34\x37\x34\x38\x33\x36\x34\x37\x2c\x2d\x32\x31\x34\x37\x34\x38\x33\x36\x34\x38\x29\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x38\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x32\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x31\x36\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x33\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x32\x34\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x33\x32\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x74\x72\x75\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x34\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x49\x6e\x74\x33\x32\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x49\x6e\x74\x33\x32\x42\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x76\x61\x6c\x75\x65\x3d\x2b\x76\x61\x6c\x75\x65\x3b\x6f\x66\x66\x73\x65\x74\x3d\x6f\x66\x66\x73\x65\x74\x7c\x30\x3b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x63\x68\x65\x63\x6b\x49\x6e\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x32\x31\x34\x37\x34\x38\x33\x36\x34\x37\x2c\x2d\x32\x31\x34\x37\x34\x38\x33\x36\x34\x38\x29\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x3c\x30\x29\x76\x61\x6c\x75\x65\x3d\x34\x32\x39\x34\x39\x36\x37\x32\x39\x35\x2b\x76\x61\x6c\x75\x65\x2b\x31\x3b\x69\x66\x28\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x32\x34\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x31\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x31\x36\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x32\x5d\x3d\x76\x61\x6c\x75\x65\x3e\x3e\x3e\x38\x3b\x74\x68\x69\x73\x5b\x6f\x66\x66\x73\x65\x74\x2b\x33\x5d\x3d\x76\x61\x6c\x75\x65\x26\x32\x35\x35\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x57\x72\x69\x74\x65\x55\x49\x6e\x74\x33\x32\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x66\x61\x6c\x73\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x34\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x65\x63\x6b\x49\x45\x45\x45\x37\x35\x34\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x65\x78\x74\x2c\x6d\x61\x78\x2c\x6d\x69\x6e\x29\x7b\x69\x66\x28\x6f\x66\x66\x73\x65\x74\x2b\x65\x78\x74\x3e\x62\x75\x66\x2e\x6c\x65\x6e\x67\x74\x68\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x49\x6e\x64\x65\x78\x20\x6f\x75\x74\x20\x6f\x66\x20\x72\x61\x6e\x67\x65\x22\x29\x3b\x69\x66\x28\x6f\x66\x66\x73\x65\x74\x3c\x30\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x49\x6e\x64\x65\x78\x20\x6f\x75\x74\x20\x6f\x66\x20\x72\x61\x6e\x67\x65\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x46\x6c\x6f\x61\x74\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x69\x74\x74\x6c\x65\x45\x6e\x64\x69\x61\x6e\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x63\x68\x65\x63\x6b\x49\x45\x45\x45\x37\x35\x34\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x34\x2c\x33\x2e\x34\x30\x32\x38\x32\x33\x34\x36\x36\x33\x38\x35\x32\x38\x38\x36\x65\x33\x38\x2c\x2d\x33\x2e\x34\x30\x32\x38\x32\x33\x34\x36\x36\x33\x38\x35\x32\x38\x38\x36\x65\x33\x38\x29\x7d\x69\x65\x65\x65\x37\x35\x34\x2e\x77\x72\x69\x74\x65\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x69\x74\x74\x6c\x65\x45\x6e\x64\x69\x61\x6e\x2c\x32\x33\x2c\x34\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x34\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x46\x6c\x6f\x61\x74\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x46\x6c\x6f\x61\x74\x4c\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x69\x74\x65\x46\x6c\x6f\x61\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x74\x72\x75\x65\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x46\x6c\x6f\x61\x74\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x46\x6c\x6f\x61\x74\x42\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x69\x74\x65\x46\x6c\x6f\x61\x74\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x66\x61\x6c\x73\x65\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x44\x6f\x75\x62\x6c\x65\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x69\x74\x74\x6c\x65\x45\x6e\x64\x69\x61\x6e\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x69\x66\x28\x21\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x63\x68\x65\x63\x6b\x49\x45\x45\x45\x37\x35\x34\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x38\x2c\x31\x2e\x37\x39\x37\x36\x39\x33\x31\x33\x34\x38\x36\x32\x33\x31\x35\x37\x65\x33\x30\x38\x2c\x2d\x31\x2e\x37\x39\x37\x36\x39\x33\x31\x33\x34\x38\x36\x32\x33\x31\x35\x37\x65\x33\x30\x38\x29\x7d\x69\x65\x65\x65\x37\x35\x34\x2e\x77\x72\x69\x74\x65\x28\x62\x75\x66\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x69\x74\x74\x6c\x65\x45\x6e\x64\x69\x61\x6e\x2c\x35\x32\x2c\x38\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x66\x66\x73\x65\x74\x2b\x38\x7d\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x44\x6f\x75\x62\x6c\x65\x4c\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x44\x6f\x75\x62\x6c\x65\x4c\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x69\x74\x65\x44\x6f\x75\x62\x6c\x65\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x74\x72\x75\x65\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x77\x72\x69\x74\x65\x44\x6f\x75\x62\x6c\x65\x42\x45\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x44\x6f\x75\x62\x6c\x65\x42\x45\x28\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x77\x72\x69\x74\x65\x44\x6f\x75\x62\x6c\x65\x28\x74\x68\x69\x73\x2c\x76\x61\x6c\x75\x65\x2c\x6f\x66\x66\x73\x65\x74\x2c\x66\x61\x6c\x73\x65\x2c\x6e\x6f\x41\x73\x73\x65\x72\x74\x29\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x63\x6f\x70\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x70\x79\x28\x74\x61\x72\x67\x65\x74\x2c\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x69\x66\x28\x21\x73\x74\x61\x72\x74\x29\x73\x74\x61\x72\x74\x3d\x30\x3b\x69\x66\x28\x21\x65\x6e\x64\x26\x26\x65\x6e\x64\x21\x3d\x3d\x30\x29\x65\x6e\x64\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x3e\x3d\x74\x61\x72\x67\x65\x74\x2e\x6c\x65\x6e\x67\x74\x68\x29\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x3d\x74\x61\x72\x67\x65\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x21\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x29\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x3d\x30\x3b\x69\x66\x28\x65\x6e\x64\x3e\x30\x26\x26\x65\x6e\x64\x3c\x73\x74\x61\x72\x74\x29\x65\x6e\x64\x3d\x73\x74\x61\x72\x74\x3b\x69\x66\x28\x65\x6e\x64\x3d\x3d\x3d\x73\x74\x61\x72\x74\x29\x72\x65\x74\x75\x72\x6e\x20\x30\x3b\x69\x66\x28\x74\x61\x72\x67\x65\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x7c\x7c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x72\x65\x74\x75\x72\x6e\x20\x30\x3b\x69\x66\x28\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x3c\x30\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x20\x6f\x75\x74\x20\x6f\x66\x20\x62\x6f\x75\x6e\x64\x73\x22\x29\x7d\x69\x66\x28\x73\x74\x61\x72\x74\x3c\x30\x7c\x7c\x73\x74\x61\x72\x74\x3e\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x73\x6f\x75\x72\x63\x65\x53\x74\x61\x72\x74\x20\x6f\x75\x74\x20\x6f\x66\x20\x62\x6f\x75\x6e\x64\x73\x22\x29\x3b\x69\x66\x28\x65\x6e\x64\x3c\x30\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x73\x6f\x75\x72\x63\x65\x45\x6e\x64\x20\x6f\x75\x74\x20\x6f\x66\x20\x62\x6f\x75\x6e\x64\x73\x22\x29\x3b\x69\x66\x28\x65\x6e\x64\x3e\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x65\x6e\x64\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x74\x61\x72\x67\x65\x74\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x3c\x65\x6e\x64\x2d\x73\x74\x61\x72\x74\x29\x7b\x65\x6e\x64\x3d\x74\x61\x72\x67\x65\x74\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x2b\x73\x74\x61\x72\x74\x7d\x76\x61\x72\x20\x6c\x65\x6e\x3d\x65\x6e\x64\x2d\x73\x74\x61\x72\x74\x3b\x76\x61\x72\x20\x69\x3b\x69\x66\x28\x74\x68\x69\x73\x3d\x3d\x3d\x74\x61\x72\x67\x65\x74\x26\x26\x73\x74\x61\x72\x74\x3c\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x26\x26\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x3c\x65\x6e\x64\x29\x7b\x66\x6f\x72\x28\x69\x3d\x6c\x65\x6e\x2d\x31\x3b\x69\x3e\x3d\x30\x3b\x2d\x2d\x69\x29\x7b\x74\x61\x72\x67\x65\x74\x5b\x69\x2b\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x5d\x3d\x74\x68\x69\x73\x5b\x69\x2b\x73\x74\x61\x72\x74\x5d\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x6c\x65\x6e\x3c\x31\x65\x33\x7c\x7c\x21\x42\x75\x66\x66\x65\x72\x2e\x54\x59\x50\x45\x44\x5f\x41\x52\x52\x41\x59\x5f\x53\x55\x50\x50\x4f\x52\x54\x29\x7b\x66\x6f\x72\x28\x69\x3d\x30\x3b\x69\x3c\x6c\x65\x6e\x3b\x2b\x2b\x69\x29\x7b\x74\x61\x72\x67\x65\x74\x5b\x69\x2b\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x5d\x3d\x74\x68\x69\x73\x5b\x69\x2b\x73\x74\x61\x72\x74\x5d\x7d\x7d\x65\x6c\x73\x65\x7b\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x65\x74\x2e\x63\x61\x6c\x6c\x28\x74\x61\x72\x67\x65\x74\x2c\x74\x68\x69\x73\x2e\x73\x75\x62\x61\x72\x72\x61\x79\x28\x73\x74\x61\x72\x74\x2c\x73\x74\x61\x72\x74\x2b\x6c\x65\x6e\x29\x2c\x74\x61\x72\x67\x65\x74\x53\x74\x61\x72\x74\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x6e\x7d\x3b\x42\x75\x66\x66\x65\x72\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x66\x69\x6c\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x69\x6c\x6c\x28\x76\x61\x6c\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x74\x61\x72\x74\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x73\x74\x61\x72\x74\x3b\x73\x74\x61\x72\x74\x3d\x30\x3b\x65\x6e\x64\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x65\x6e\x64\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x65\x6e\x64\x3b\x65\x6e\x64\x3d\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x7d\x69\x66\x28\x76\x61\x6c\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x31\x29\x7b\x76\x61\x72\x20\x63\x6f\x64\x65\x3d\x76\x61\x6c\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x30\x29\x3b\x69\x66\x28\x63\x6f\x64\x65\x3c\x32\x35\x36\x29\x7b\x76\x61\x6c\x3d\x63\x6f\x64\x65\x7d\x7d\x69\x66\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x21\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x65\x6e\x63\x6f\x64\x69\x6e\x67\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x73\x74\x72\x69\x6e\x67\x22\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x26\x26\x21\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x45\x6e\x63\x6f\x64\x69\x6e\x67\x28\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x55\x6e\x6b\x6e\x6f\x77\x6e\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3a\x20\x22\x2b\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x3d\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x76\x61\x6c\x3d\x76\x61\x6c\x26\x32\x35\x35\x7d\x69\x66\x28\x73\x74\x61\x72\x74\x3c\x30\x7c\x7c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x73\x74\x61\x72\x74\x7c\x7c\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x65\x6e\x64\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x52\x61\x6e\x67\x65\x45\x72\x72\x6f\x72\x28\x22\x4f\x75\x74\x20\x6f\x66\x20\x72\x61\x6e\x67\x65\x20\x69\x6e\x64\x65\x78\x22\x29\x7d\x69\x66\x28\x65\x6e\x64\x3c\x3d\x73\x74\x61\x72\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x73\x74\x61\x72\x74\x3d\x73\x74\x61\x72\x74\x3e\x3e\x3e\x30\x3b\x65\x6e\x64\x3d\x65\x6e\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3a\x65\x6e\x64\x3e\x3e\x3e\x30\x3b\x69\x66\x28\x21\x76\x61\x6c\x29\x76\x61\x6c\x3d\x30\x3b\x76\x61\x72\x20\x69\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x3d\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x29\x7b\x66\x6f\x72\x28\x69\x3d\x73\x74\x61\x72\x74\x3b\x69\x3c\x65\x6e\x64\x3b\x2b\x2b\x69\x29\x7b\x74\x68\x69\x73\x5b\x69\x5d\x3d\x76\x61\x6c\x7d\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x62\x79\x74\x65\x73\x3d\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x76\x61\x6c\x29\x3f\x76\x61\x6c\x3a\x75\x74\x66\x38\x54\x6f\x42\x79\x74\x65\x73\x28\x6e\x65\x77\x20\x42\x75\x66\x66\x65\x72\x28\x76\x61\x6c\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x29\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x29\x3b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x62\x79\x74\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x66\x6f\x72\x28\x69\x3d\x30\x3b\x69\x3c\x65\x6e\x64\x2d\x73\x74\x61\x72\x74\x3b\x2b\x2b\x69\x29\x7b\x74\x68\x69\x73\x5b\x69\x2b\x73\x74\x61\x72\x74\x5d\x3d\x62\x79\x74\x65\x73\x5b\x69\x25\x6c\x65\x6e\x5d\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x3b\x76\x61\x72\x20\x49\x4e\x56\x41\x4c\x49\x44\x5f\x42\x41\x53\x45\x36\x34\x5f\x52\x45\x3d\x2f\x5b\x5e\x2b\x5c\x2f\x30\x2d\x39\x41\x2d\x5a\x61\x2d\x7a\x2d\x5f\x5d\x2f\x67\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x36\x34\x63\x6c\x65\x61\x6e\x28\x73\x74\x72\x29\x7b\x73\x74\x72\x3d\x73\x74\x72\x69\x6e\x67\x74\x72\x69\x6d\x28\x73\x74\x72\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x49\x4e\x56\x41\x4c\x49\x44\x5f\x42\x41\x53\x45\x36\x34\x5f\x52\x45\x2c\x22\x22\x29\x3b\x69\x66\x28\x73\x74\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x32\x29\x72\x65\x74\x75\x72\x6e\x22\x22\x3b\x77\x68\x69\x6c\x65\x28\x73\x74\x72\x2e\x6c\x65\x6e\x67\x74\x68\x25\x34\x21\x3d\x3d\x30\x29\x7b\x73\x74\x72\x3d\x73\x74\x72\x2b\x22\x3d\x22\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x74\x72\x69\x6d\x28\x73\x74\x72\x29\x7b\x69\x66\x28\x73\x74\x72\x2e\x74\x72\x69\x6d\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x2e\x74\x72\x69\x6d\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5e\x5c\x73\x2b\x7c\x5c\x73\x2b\x24\x2f\x67\x2c\x22\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x48\x65\x78\x28\x6e\x29\x7b\x69\x66\x28\x6e\x3c\x31\x36\x29\x72\x65\x74\x75\x72\x6e\x22\x30\x22\x2b\x6e\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x31\x36\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x31\x36\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x74\x66\x38\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x69\x6e\x67\x2c\x75\x6e\x69\x74\x73\x29\x7b\x75\x6e\x69\x74\x73\x3d\x75\x6e\x69\x74\x73\x7c\x7c\x49\x6e\x66\x69\x6e\x69\x74\x79\x3b\x76\x61\x72\x20\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x6c\x65\x61\x64\x53\x75\x72\x72\x6f\x67\x61\x74\x65\x3d\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x62\x79\x74\x65\x73\x3d\x5b\x5d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x2b\x2b\x69\x29\x7b\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x73\x74\x72\x69\x6e\x67\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x29\x3b\x69\x66\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x35\x35\x32\x39\x35\x26\x26\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3c\x35\x37\x33\x34\x34\x29\x7b\x69\x66\x28\x21\x6c\x65\x61\x64\x53\x75\x72\x72\x6f\x67\x61\x74\x65\x29\x7b\x69\x66\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x35\x36\x33\x31\x39\x29\x7b\x69\x66\x28\x28\x75\x6e\x69\x74\x73\x2d\x3d\x33\x29\x3e\x2d\x31\x29\x62\x79\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x32\x33\x39\x2c\x31\x39\x31\x2c\x31\x38\x39\x29\x3b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x2b\x31\x3d\x3d\x3d\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x28\x75\x6e\x69\x74\x73\x2d\x3d\x33\x29\x3e\x2d\x31\x29\x62\x79\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x32\x33\x39\x2c\x31\x39\x31\x2c\x31\x38\x39\x29\x3b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x6c\x65\x61\x64\x53\x75\x72\x72\x6f\x67\x61\x74\x65\x3d\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x66\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3c\x35\x36\x33\x32\x30\x29\x7b\x69\x66\x28\x28\x75\x6e\x69\x74\x73\x2d\x3d\x33\x29\x3e\x2d\x31\x29\x62\x79\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x32\x33\x39\x2c\x31\x39\x31\x2c\x31\x38\x39\x29\x3b\x6c\x65\x61\x64\x53\x75\x72\x72\x6f\x67\x61\x74\x65\x3d\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3d\x28\x6c\x65\x61\x64\x53\x75\x72\x72\x6f\x67\x61\x74\x65\x2d\x35\x35\x32\x39\x36\x3c\x3c\x31\x30\x7c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x2d\x35\x36\x33\x32\x30\x29\x2b\x36\x35\x35\x33\x36\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x6c\x65\x61\x64\x53\x75\x72\x72\x6f\x67\x61\x74\x65\x29\x7b\x69\x66\x28\x28\x75\x6e\x69\x74\x73\x2d\x3d\x33\x29\x3e\x2d\x31\x29\x62\x79\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x32\x33\x39\x2c\x31\x39\x31\x2c\x31\x38\x39\x29\x7d\x6c\x65\x61\x64\x53\x75\x72\x72\x6f\x67\x61\x74\x65\x3d\x6e\x75\x6c\x6c\x3b\x69\x66\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3c\x31\x32\x38\x29\x7b\x69\x66\x28\x28\x75\x6e\x69\x74\x73\x2d\x3d\x31\x29\x3c\x30\x29\x62\x72\x65\x61\x6b\x3b\x62\x79\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3c\x32\x30\x34\x38\x29\x7b\x69\x66\x28\x28\x75\x6e\x69\x74\x73\x2d\x3d\x32\x29\x3c\x30\x29\x62\x72\x65\x61\x6b\x3b\x62\x79\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x3e\x36\x7c\x31\x39\x32\x2c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x26\x36\x33\x7c\x31\x32\x38\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3c\x36\x35\x35\x33\x36\x29\x7b\x69\x66\x28\x28\x75\x6e\x69\x74\x73\x2d\x3d\x33\x29\x3c\x30\x29\x62\x72\x65\x61\x6b\x3b\x62\x79\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x3e\x31\x32\x7c\x32\x32\x34\x2c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x3e\x36\x26\x36\x33\x7c\x31\x32\x38\x2c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x26\x36\x33\x7c\x31\x32\x38\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3c\x31\x31\x31\x34\x31\x31\x32\x29\x7b\x69\x66\x28\x28\x75\x6e\x69\x74\x73\x2d\x3d\x34\x29\x3c\x30\x29\x62\x72\x65\x61\x6b\x3b\x62\x79\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x3e\x31\x38\x7c\x32\x34\x30\x2c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x3e\x31\x32\x26\x36\x33\x7c\x31\x32\x38\x2c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x3e\x3e\x36\x26\x36\x33\x7c\x31\x32\x38\x2c\x63\x6f\x64\x65\x50\x6f\x69\x6e\x74\x26\x36\x33\x7c\x31\x32\x38\x29\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x49\x6e\x76\x61\x6c\x69\x64\x20\x63\x6f\x64\x65\x20\x70\x6f\x69\x6e\x74\x22\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x62\x79\x74\x65\x73\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x73\x63\x69\x69\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x29\x7b\x76\x61\x72\x20\x62\x79\x74\x65\x41\x72\x72\x61\x79\x3d\x5b\x5d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x73\x74\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x2b\x2b\x69\x29\x7b\x62\x79\x74\x65\x41\x72\x72\x61\x79\x2e\x70\x75\x73\x68\x28\x73\x74\x72\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x29\x26\x32\x35\x35\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x62\x79\x74\x65\x41\x72\x72\x61\x79\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x74\x66\x31\x36\x6c\x65\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x2c\x75\x6e\x69\x74\x73\x29\x7b\x76\x61\x72\x20\x63\x2c\x68\x69\x2c\x6c\x6f\x3b\x76\x61\x72\x20\x62\x79\x74\x65\x41\x72\x72\x61\x79\x3d\x5b\x5d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x73\x74\x72\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x2b\x2b\x69\x29\x7b\x69\x66\x28\x28\x75\x6e\x69\x74\x73\x2d\x3d\x32\x29\x3c\x30\x29\x62\x72\x65\x61\x6b\x3b\x63\x3d\x73\x74\x72\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x29\x3b\x68\x69\x3d\x63\x3e\x3e\x38\x3b\x6c\x6f\x3d\x63\x25\x32\x35\x36\x3b\x62\x79\x74\x65\x41\x72\x72\x61\x79\x2e\x70\x75\x73\x68\x28\x6c\x6f\x29\x3b\x62\x79\x74\x65\x41\x72\x72\x61\x79\x2e\x70\x75\x73\x68\x28\x68\x69\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x62\x79\x74\x65\x41\x72\x72\x61\x79\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x36\x34\x54\x6f\x42\x79\x74\x65\x73\x28\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x36\x34\x2e\x74\x6f\x42\x79\x74\x65\x41\x72\x72\x61\x79\x28\x62\x61\x73\x65\x36\x34\x63\x6c\x65\x61\x6e\x28\x73\x74\x72\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x6c\x69\x74\x42\x75\x66\x66\x65\x72\x28\x73\x72\x63\x2c\x64\x73\x74\x2c\x6f\x66\x66\x73\x65\x74\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x2b\x2b\x69\x29\x7b\x69\x66\x28\x69\x2b\x6f\x66\x66\x73\x65\x74\x3e\x3d\x64\x73\x74\x2e\x6c\x65\x6e\x67\x74\x68\x7c\x7c\x69\x3e\x3d\x73\x72\x63\x2e\x6c\x65\x6e\x67\x74\x68\x29\x62\x72\x65\x61\x6b\x3b\x64\x73\x74\x5b\x69\x2b\x6f\x66\x66\x73\x65\x74\x5d\x3d\x73\x72\x63\x5b\x69\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x69\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x6e\x61\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x21\x3d\x3d\x76\x61\x6c\x7d\x7d\x29\x2e\x63\x61\x6c\x6c\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x37\x29\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x62\x61\x73\x65\x36\x34\x2d\x6a\x73\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x69\x65\x65\x65\x37\x35\x34\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x69\x73\x61\x72\x72\x61\x79\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x31\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x32\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x35\x29\x3b\x76\x61\x72\x20\x49\x54\x45\x52\x41\x54\x4f\x52\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x69\x73\x49\x74\x65\x72\x61\x62\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x4f\x3d\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x5b\x49\x54\x45\x52\x41\x54\x4f\x52\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x22\x40\x40\x69\x74\x65\x72\x61\x74\x6f\x72\x22\x69\x6e\x20\x4f\x7c\x7c\x49\x74\x65\x72\x61\x74\x6f\x72\x73\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x63\x6c\x61\x73\x73\x6f\x66\x28\x4f\x29\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x69\x6e\x76\x61\x6c\x69\x64\x50\x72\x6f\x74\x6f\x74\x63\x6f\x6c\x52\x65\x67\x65\x78\x3d\x2f\x5e\x28\x25\x32\x30\x7c\x5c\x73\x29\x2a\x28\x6a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x7c\x64\x61\x74\x61\x29\x2f\x69\x6d\x3b\x76\x61\x72\x20\x63\x74\x72\x6c\x43\x68\x61\x72\x61\x63\x74\x65\x72\x73\x52\x65\x67\x65\x78\x3d\x2f\x5b\x5e\x5c\x78\x32\x30\x2d\x5c\x78\x37\x45\x5d\x2f\x67\x69\x6d\x3b\x76\x61\x72\x20\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x52\x65\x67\x65\x78\x3d\x2f\x5e\x28\x5b\x5e\x3a\x5d\x2b\x29\x3a\x2f\x67\x6d\x3b\x76\x61\x72\x20\x72\x65\x6c\x61\x74\x69\x76\x65\x46\x69\x72\x73\x74\x43\x68\x61\x72\x61\x63\x74\x65\x72\x73\x3d\x5b\x22\x2e\x22\x2c\x22\x2f\x22\x5d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x52\x65\x6c\x61\x74\x69\x76\x65\x55\x72\x6c\x28\x75\x72\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x6c\x61\x74\x69\x76\x65\x46\x69\x72\x73\x74\x43\x68\x61\x72\x61\x63\x74\x65\x72\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x75\x72\x6c\x5b\x30\x5d\x29\x3e\x2d\x31\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x28\x75\x72\x6c\x29\x7b\x76\x61\x72\x20\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x2c\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x50\x61\x72\x73\x65\x52\x65\x73\x75\x6c\x74\x73\x3b\x76\x61\x72\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x55\x72\x6c\x3d\x75\x72\x6c\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x63\x74\x72\x6c\x43\x68\x61\x72\x61\x63\x74\x65\x72\x73\x52\x65\x67\x65\x78\x2c\x22\x22\x29\x3b\x69\x66\x28\x69\x73\x52\x65\x6c\x61\x74\x69\x76\x65\x55\x72\x6c\x28\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x55\x72\x6c\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x55\x72\x6c\x7d\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x50\x61\x72\x73\x65\x52\x65\x73\x75\x6c\x74\x73\x3d\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x55\x72\x6c\x2e\x6d\x61\x74\x63\x68\x28\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x52\x65\x67\x65\x78\x29\x3b\x69\x66\x28\x21\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x50\x61\x72\x73\x65\x52\x65\x73\x75\x6c\x74\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x61\x62\x6f\x75\x74\x3a\x62\x6c\x61\x6e\x6b\x22\x7d\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x3d\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x50\x61\x72\x73\x65\x52\x65\x73\x75\x6c\x74\x73\x5b\x30\x5d\x3b\x69\x66\x28\x69\x6e\x76\x61\x6c\x69\x64\x50\x72\x6f\x74\x6f\x74\x63\x6f\x6c\x52\x65\x67\x65\x78\x2e\x74\x65\x73\x74\x28\x75\x72\x6c\x53\x63\x68\x65\x6d\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x61\x62\x6f\x75\x74\x3a\x62\x6c\x61\x6e\x6b\x22\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x55\x72\x6c\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x3a\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x61\x70\x69\x74\x61\x6c\x69\x7a\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x39\x35\x29\x2c\x63\x72\x65\x61\x74\x65\x43\x6f\x6d\x70\x6f\x75\x6e\x64\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x34\x29\x3b\x76\x61\x72\x20\x63\x61\x6d\x65\x6c\x43\x61\x73\x65\x3d\x63\x72\x65\x61\x74\x65\x43\x6f\x6d\x70\x6f\x75\x6e\x64\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x75\x6c\x74\x2c\x77\x6f\x72\x64\x2c\x69\x6e\x64\x65\x78\x29\x7b\x77\x6f\x72\x64\x3d\x77\x6f\x72\x64\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x2b\x28\x69\x6e\x64\x65\x78\x3f\x63\x61\x70\x69\x74\x61\x6c\x69\x7a\x65\x28\x77\x6f\x72\x64\x29\x3a\x77\x6f\x72\x64\x29\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x61\x6d\x65\x6c\x43\x61\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x29\x2c\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x30\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x61\x70\x69\x74\x61\x6c\x69\x7a\x65\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74\x28\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x61\x70\x69\x74\x61\x6c\x69\x7a\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x29\x2c\x61\x72\x72\x61\x79\x4d\x61\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x39\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x69\x73\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x35\x29\x3b\x76\x61\x72\x20\x49\x4e\x46\x49\x4e\x49\x54\x59\x3d\x31\x2f\x30\x3b\x76\x61\x72\x20\x73\x79\x6d\x62\x6f\x6c\x50\x72\x6f\x74\x6f\x3d\x53\x79\x6d\x62\x6f\x6c\x3f\x53\x79\x6d\x62\x6f\x6c\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x73\x79\x6d\x62\x6f\x6c\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x73\x79\x6d\x62\x6f\x6c\x50\x72\x6f\x74\x6f\x3f\x73\x79\x6d\x62\x6f\x6c\x50\x72\x6f\x74\x6f\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x54\x6f\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x69\x66\x28\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x61\x79\x4d\x61\x70\x28\x76\x61\x6c\x75\x65\x2c\x62\x61\x73\x65\x54\x6f\x53\x74\x72\x69\x6e\x67\x29\x2b\x22\x22\x7d\x69\x66\x28\x69\x73\x53\x79\x6d\x62\x6f\x6c\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x79\x6d\x62\x6f\x6c\x54\x6f\x53\x74\x72\x69\x6e\x67\x3f\x73\x79\x6d\x62\x6f\x6c\x54\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x29\x3a\x22\x22\x7d\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x76\x61\x6c\x75\x65\x2b\x22\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x3d\x3d\x22\x30\x22\x26\x26\x31\x2f\x76\x61\x6c\x75\x65\x3d\x3d\x2d\x49\x4e\x46\x49\x4e\x49\x54\x59\x3f\x22\x2d\x30\x22\x3a\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x54\x6f\x53\x74\x72\x69\x6e\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x4f\x62\x6a\x65\x63\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x76\x61\x72\x20\x73\x79\x6d\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x53\x79\x6d\x62\x6f\x6c\x3f\x53\x79\x6d\x62\x6f\x6c\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x52\x61\x77\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x77\x6e\x3d\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x2c\x73\x79\x6d\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x29\x2c\x74\x61\x67\x3d\x76\x61\x6c\x75\x65\x5b\x73\x79\x6d\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x5d\x3b\x74\x72\x79\x7b\x76\x61\x6c\x75\x65\x5b\x73\x79\x6d\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x5d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x75\x6e\x6d\x61\x73\x6b\x65\x64\x3d\x74\x72\x75\x65\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x6e\x61\x74\x69\x76\x65\x4f\x62\x6a\x65\x63\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x75\x6e\x6d\x61\x73\x6b\x65\x64\x29\x7b\x69\x66\x28\x69\x73\x4f\x77\x6e\x29\x7b\x76\x61\x6c\x75\x65\x5b\x73\x79\x6d\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x5d\x3d\x74\x61\x67\x7d\x65\x6c\x73\x65\x7b\x64\x65\x6c\x65\x74\x65\x20\x76\x61\x6c\x75\x65\x5b\x73\x79\x6d\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x5d\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x52\x61\x77\x54\x61\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x4f\x62\x6a\x65\x63\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x65\x63\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x61\x74\x69\x76\x65\x4f\x62\x6a\x65\x63\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6f\x62\x6a\x65\x63\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x61\x73\x74\x53\x6c\x69\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x30\x29\x2c\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x32\x29\x2c\x73\x74\x72\x69\x6e\x67\x54\x6f\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x31\x29\x2c\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x43\x61\x73\x65\x46\x69\x72\x73\x74\x28\x6d\x65\x74\x68\x6f\x64\x4e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x73\x74\x72\x69\x6e\x67\x3d\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x29\x3b\x76\x61\x72\x20\x73\x74\x72\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x28\x73\x74\x72\x69\x6e\x67\x29\x3f\x73\x74\x72\x69\x6e\x67\x54\x6f\x41\x72\x72\x61\x79\x28\x73\x74\x72\x69\x6e\x67\x29\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x63\x68\x72\x3d\x73\x74\x72\x53\x79\x6d\x62\x6f\x6c\x73\x3f\x73\x74\x72\x53\x79\x6d\x62\x6f\x6c\x73\x5b\x30\x5d\x3a\x73\x74\x72\x69\x6e\x67\x2e\x63\x68\x61\x72\x41\x74\x28\x30\x29\x3b\x76\x61\x72\x20\x74\x72\x61\x69\x6c\x69\x6e\x67\x3d\x73\x74\x72\x53\x79\x6d\x62\x6f\x6c\x73\x3f\x63\x61\x73\x74\x53\x6c\x69\x63\x65\x28\x73\x74\x72\x53\x79\x6d\x62\x6f\x6c\x73\x2c\x31\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x22\x29\x3a\x73\x74\x72\x69\x6e\x67\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x68\x72\x5b\x6d\x65\x74\x68\x6f\x64\x4e\x61\x6d\x65\x5d\x28\x29\x2b\x74\x72\x61\x69\x6c\x69\x6e\x67\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x72\x65\x61\x74\x65\x43\x61\x73\x65\x46\x69\x72\x73\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x53\x6c\x69\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x61\x73\x74\x53\x6c\x69\x63\x65\x28\x61\x72\x72\x61\x79\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x65\x6e\x64\x3d\x65\x6e\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x6c\x65\x6e\x67\x74\x68\x3a\x65\x6e\x64\x3b\x72\x65\x74\x75\x72\x6e\x21\x73\x74\x61\x72\x74\x26\x26\x65\x6e\x64\x3e\x3d\x6c\x65\x6e\x67\x74\x68\x3f\x61\x72\x72\x61\x79\x3a\x62\x61\x73\x65\x53\x6c\x69\x63\x65\x28\x61\x72\x72\x61\x79\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x61\x73\x74\x53\x6c\x69\x63\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x73\x63\x69\x69\x54\x6f\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x32\x29\x2c\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x32\x29\x2c\x75\x6e\x69\x63\x6f\x64\x65\x54\x6f\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x33\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x54\x6f\x41\x72\x72\x61\x79\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x28\x73\x74\x72\x69\x6e\x67\x29\x3f\x75\x6e\x69\x63\x6f\x64\x65\x54\x6f\x41\x72\x72\x61\x79\x28\x73\x74\x72\x69\x6e\x67\x29\x3a\x61\x73\x63\x69\x69\x54\x6f\x41\x72\x72\x61\x79\x28\x73\x74\x72\x69\x6e\x67\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x74\x72\x69\x6e\x67\x54\x6f\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x73\x63\x69\x69\x54\x6f\x41\x72\x72\x61\x79\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x2e\x73\x70\x6c\x69\x74\x28\x22\x22\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x73\x63\x69\x69\x54\x6f\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x72\x73\x41\x73\x74\x72\x61\x6c\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x64\x38\x30\x30\x2d\x5c\x5c\x75\x64\x66\x66\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x30\x33\x30\x30\x2d\x5c\x5c\x75\x30\x33\x36\x66\x22\x2c\x72\x65\x43\x6f\x6d\x62\x6f\x48\x61\x6c\x66\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x66\x65\x32\x30\x2d\x5c\x5c\x75\x66\x65\x32\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x53\x79\x6d\x62\x6f\x6c\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x32\x30\x64\x30\x2d\x5c\x5c\x75\x32\x30\x66\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x52\x61\x6e\x67\x65\x3d\x72\x73\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x2b\x72\x65\x43\x6f\x6d\x62\x6f\x48\x61\x6c\x66\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x53\x79\x6d\x62\x6f\x6c\x73\x52\x61\x6e\x67\x65\x2c\x72\x73\x56\x61\x72\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x66\x65\x30\x65\x5c\x5c\x75\x66\x65\x30\x66\x22\x3b\x76\x61\x72\x20\x72\x73\x41\x73\x74\x72\x61\x6c\x3d\x22\x5b\x22\x2b\x72\x73\x41\x73\x74\x72\x61\x6c\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x3d\x22\x5b\x22\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x46\x69\x74\x7a\x3d\x22\x5c\x5c\x75\x64\x38\x33\x63\x5b\x5c\x5c\x75\x64\x66\x66\x62\x2d\x5c\x5c\x75\x64\x66\x66\x66\x5d\x22\x2c\x72\x73\x4d\x6f\x64\x69\x66\x69\x65\x72\x3d\x22\x28\x3f\x3a\x22\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x2b\x22\x7c\x22\x2b\x72\x73\x46\x69\x74\x7a\x2b\x22\x29\x22\x2c\x72\x73\x4e\x6f\x6e\x41\x73\x74\x72\x61\x6c\x3d\x22\x5b\x5e\x22\x2b\x72\x73\x41\x73\x74\x72\x61\x6c\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x52\x65\x67\x69\x6f\x6e\x61\x6c\x3d\x22\x28\x3f\x3a\x5c\x5c\x75\x64\x38\x33\x63\x5b\x5c\x5c\x75\x64\x64\x65\x36\x2d\x5c\x5c\x75\x64\x64\x66\x66\x5d\x29\x7b\x32\x7d\x22\x2c\x72\x73\x53\x75\x72\x72\x50\x61\x69\x72\x3d\x22\x5b\x5c\x5c\x75\x64\x38\x30\x30\x2d\x5c\x5c\x75\x64\x62\x66\x66\x5d\x5b\x5c\x5c\x75\x64\x63\x30\x30\x2d\x5c\x5c\x75\x64\x66\x66\x66\x5d\x22\x2c\x72\x73\x5a\x57\x4a\x3d\x22\x5c\x5c\x75\x32\x30\x30\x64\x22\x3b\x76\x61\x72\x20\x72\x65\x4f\x70\x74\x4d\x6f\x64\x3d\x72\x73\x4d\x6f\x64\x69\x66\x69\x65\x72\x2b\x22\x3f\x22\x2c\x72\x73\x4f\x70\x74\x56\x61\x72\x3d\x22\x5b\x22\x2b\x72\x73\x56\x61\x72\x52\x61\x6e\x67\x65\x2b\x22\x5d\x3f\x22\x2c\x72\x73\x4f\x70\x74\x4a\x6f\x69\x6e\x3d\x22\x28\x3f\x3a\x22\x2b\x72\x73\x5a\x57\x4a\x2b\x22\x28\x3f\x3a\x22\x2b\x5b\x72\x73\x4e\x6f\x6e\x41\x73\x74\x72\x61\x6c\x2c\x72\x73\x52\x65\x67\x69\x6f\x6e\x61\x6c\x2c\x72\x73\x53\x75\x72\x72\x50\x61\x69\x72\x5d\x2e\x6a\x6f\x69\x6e\x28\x22\x7c\x22\x29\x2b\x22\x29\x22\x2b\x72\x73\x4f\x70\x74\x56\x61\x72\x2b\x72\x65\x4f\x70\x74\x4d\x6f\x64\x2b\x22\x29\x2a\x22\x2c\x72\x73\x53\x65\x71\x3d\x72\x73\x4f\x70\x74\x56\x61\x72\x2b\x72\x65\x4f\x70\x74\x4d\x6f\x64\x2b\x72\x73\x4f\x70\x74\x4a\x6f\x69\x6e\x2c\x72\x73\x53\x79\x6d\x62\x6f\x6c\x3d\x22\x28\x3f\x3a\x22\x2b\x5b\x72\x73\x4e\x6f\x6e\x41\x73\x74\x72\x61\x6c\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x2b\x22\x3f\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x2c\x72\x73\x52\x65\x67\x69\x6f\x6e\x61\x6c\x2c\x72\x73\x53\x75\x72\x72\x50\x61\x69\x72\x2c\x72\x73\x41\x73\x74\x72\x61\x6c\x5d\x2e\x6a\x6f\x69\x6e\x28\x22\x7c\x22\x29\x2b\x22\x29\x22\x3b\x76\x61\x72\x20\x72\x65\x55\x6e\x69\x63\x6f\x64\x65\x3d\x52\x65\x67\x45\x78\x70\x28\x72\x73\x46\x69\x74\x7a\x2b\x22\x28\x3f\x3d\x22\x2b\x72\x73\x46\x69\x74\x7a\x2b\x22\x29\x7c\x22\x2b\x72\x73\x53\x79\x6d\x62\x6f\x6c\x2b\x72\x73\x53\x65\x71\x2c\x22\x67\x22\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x6e\x69\x63\x6f\x64\x65\x54\x6f\x41\x72\x72\x61\x79\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x2e\x6d\x61\x74\x63\x68\x28\x72\x65\x55\x6e\x69\x63\x6f\x64\x65\x29\x7c\x7c\x5b\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x75\x6e\x69\x63\x6f\x64\x65\x54\x6f\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x52\x65\x64\x75\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x33\x29\x2c\x64\x65\x62\x75\x72\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x35\x29\x2c\x77\x6f\x72\x64\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x38\x29\x3b\x76\x61\x72\x20\x72\x73\x41\x70\x6f\x73\x3d\x22\x5b\x27\xe2\x80\x99\x5d\x22\x3b\x76\x61\x72\x20\x72\x65\x41\x70\x6f\x73\x3d\x52\x65\x67\x45\x78\x70\x28\x72\x73\x41\x70\x6f\x73\x2c\x22\x67\x22\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x43\x6f\x6d\x70\x6f\x75\x6e\x64\x65\x72\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x61\x79\x52\x65\x64\x75\x63\x65\x28\x77\x6f\x72\x64\x73\x28\x64\x65\x62\x75\x72\x72\x28\x73\x74\x72\x69\x6e\x67\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x72\x65\x41\x70\x6f\x73\x2c\x22\x22\x29\x29\x2c\x63\x61\x6c\x6c\x62\x61\x63\x6b\x2c\x22\x22\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x72\x65\x61\x74\x65\x43\x6f\x6d\x70\x6f\x75\x6e\x64\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x64\x65\x62\x75\x72\x72\x4c\x65\x74\x74\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x36\x29\x2c\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x29\x3b\x76\x61\x72\x20\x72\x65\x4c\x61\x74\x69\x6e\x3d\x2f\x5b\x5c\x78\x63\x30\x2d\x5c\x78\x64\x36\x5c\x78\x64\x38\x2d\x5c\x78\x66\x36\x5c\x78\x66\x38\x2d\x5c\x78\x66\x66\x5c\x75\x30\x31\x30\x30\x2d\x5c\x75\x30\x31\x37\x66\x5d\x2f\x67\x3b\x76\x61\x72\x20\x72\x73\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x30\x33\x30\x30\x2d\x5c\x5c\x75\x30\x33\x36\x66\x22\x2c\x72\x65\x43\x6f\x6d\x62\x6f\x48\x61\x6c\x66\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x66\x65\x32\x30\x2d\x5c\x5c\x75\x66\x65\x32\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x53\x79\x6d\x62\x6f\x6c\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x32\x30\x64\x30\x2d\x5c\x5c\x75\x32\x30\x66\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x52\x61\x6e\x67\x65\x3d\x72\x73\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x2b\x72\x65\x43\x6f\x6d\x62\x6f\x48\x61\x6c\x66\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x53\x79\x6d\x62\x6f\x6c\x73\x52\x61\x6e\x67\x65\x3b\x76\x61\x72\x20\x72\x73\x43\x6f\x6d\x62\x6f\x3d\x22\x5b\x22\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x3b\x76\x61\x72\x20\x72\x65\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x3d\x52\x65\x67\x45\x78\x70\x28\x72\x73\x43\x6f\x6d\x62\x6f\x2c\x22\x67\x22\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x62\x75\x72\x72\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x73\x74\x72\x69\x6e\x67\x3d\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x26\x26\x73\x74\x72\x69\x6e\x67\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x72\x65\x4c\x61\x74\x69\x6e\x2c\x64\x65\x62\x75\x72\x72\x4c\x65\x74\x74\x65\x72\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x72\x65\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x2c\x22\x22\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x64\x65\x62\x75\x72\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x37\x29\x3b\x76\x61\x72\x20\x64\x65\x62\x75\x72\x72\x65\x64\x4c\x65\x74\x74\x65\x72\x73\x3d\x7b\x22\xc3\x80\x22\x3a\x22\x41\x22\x2c\x22\xc3\x81\x22\x3a\x22\x41\x22\x2c\x22\xc3\x82\x22\x3a\x22\x41\x22\x2c\x22\xc3\x83\x22\x3a\x22\x41\x22\x2c\x22\xc3\x84\x22\x3a\x22\x41\x22\x2c\x22\xc3\x85\x22\x3a\x22\x41\x22\x2c\x22\xc3\xa0\x22\x3a\x22\x61\x22\x2c\x22\xc3\xa1\x22\x3a\x22\x61\x22\x2c\x22\xc3\xa2\x22\x3a\x22\x61\x22\x2c\x22\xc3\xa3\x22\x3a\x22\x61\x22\x2c\x22\xc3\xa4\x22\x3a\x22\x61\x22\x2c\x22\xc3\xa5\x22\x3a\x22\x61\x22\x2c\x22\xc3\x87\x22\x3a\x22\x43\x22\x2c\x22\xc3\xa7\x22\x3a\x22\x63\x22\x2c\x22\xc3\x90\x22\x3a\x22\x44\x22\x2c\x22\xc3\xb0\x22\x3a\x22\x64\x22\x2c\x22\xc3\x88\x22\x3a\x22\x45\x22\x2c\x22\xc3\x89\x22\x3a\x22\x45\x22\x2c\x22\xc3\x8a\x22\x3a\x22\x45\x22\x2c\x22\xc3\x8b\x22\x3a\x22\x45\x22\x2c\x22\xc3\xa8\x22\x3a\x22\x65\x22\x2c\x22\xc3\xa9\x22\x3a\x22\x65\x22\x2c\x22\xc3\xaa\x22\x3a\x22\x65\x22\x2c\x22\xc3\xab\x22\x3a\x22\x65\x22\x2c\x22\xc3\x8c\x22\x3a\x22\x49\x22\x2c\x22\xc3\x8d\x22\x3a\x22\x49\x22\x2c\x22\xc3\x8e\x22\x3a\x22\x49\x22\x2c\x22\xc3\x8f\x22\x3a\x22\x49\x22\x2c\x22\xc3\xac\x22\x3a\x22\x69\x22\x2c\x22\xc3\xad\x22\x3a\x22\x69\x22\x2c\x22\xc3\xae\x22\x3a\x22\x69\x22\x2c\x22\xc3\xaf\x22\x3a\x22\x69\x22\x2c\x22\xc3\x91\x22\x3a\x22\x4e\x22\x2c\x22\xc3\xb1\x22\x3a\x22\x6e\x22\x2c\x22\xc3\x92\x22\x3a\x22\x4f\x22\x2c\x22\xc3\x93\x22\x3a\x22\x4f\x22\x2c\x22\xc3\x94\x22\x3a\x22\x4f\x22\x2c\x22\xc3\x95\x22\x3a\x22\x4f\x22\x2c\x22\xc3\x96\x22\x3a\x22\x4f\x22\x2c\x22\xc3\x98\x22\x3a\x22\x4f\x22\x2c\x22\xc3\xb2\x22\x3a\x22\x6f\x22\x2c\x22\xc3\xb3\x22\x3a\x22\x6f\x22\x2c\x22\xc3\xb4\x22\x3a\x22\x6f\x22\x2c\x22\xc3\xb5\x22\x3a\x22\x6f\x22\x2c\x22\xc3\xb6\x22\x3a\x22\x6f\x22\x2c\x22\xc3\xb8\x22\x3a\x22\x6f\x22\x2c\x22\xc3\x99\x22\x3a\x22\x55\x22\x2c\x22\xc3\x9a\x22\x3a\x22\x55\x22\x2c\x22\xc3\x9b\x22\x3a\x22\x55\x22\x2c\x22\xc3\x9c\x22\x3a\x22\x55\x22\x2c\x22\xc3\xb9\x22\x3a\x22\x75\x22\x2c\x22\xc3\xba\x22\x3a\x22\x75\x22\x2c\x22\xc3\xbb\x22\x3a\x22\x75\x22\x2c\x22\xc3\xbc\x22\x3a\x22\x75\x22\x2c\x22\xc3\x9d\x22\x3a\x22\x59\x22\x2c\x22\xc3\xbd\x22\x3a\x22\x79\x22\x2c\x22\xc3\xbf\x22\x3a\x22\x79\x22\x2c\x22\xc3\x86\x22\x3a\x22\x41\x65\x22\x2c\x22\xc3\xa6\x22\x3a\x22\x61\x65\x22\x2c\x22\xc3\x9e\x22\x3a\x22\x54\x68\x22\x2c\x22\xc3\xbe\x22\x3a\x22\x74\x68\x22\x2c\x22\xc3\x9f\x22\x3a\x22\x73\x73\x22\x2c\x22\xc4\x80\x22\x3a\x22\x41\x22\x2c\x22\xc4\x82\x22\x3a\x22\x41\x22\x2c\x22\xc4\x84\x22\x3a\x22\x41\x22\x2c\x22\xc4\x81\x22\x3a\x22\x61\x22\x2c\x22\xc4\x83\x22\x3a\x22\x61\x22\x2c\x22\xc4\x85\x22\x3a\x22\x61\x22\x2c\x22\xc4\x86\x22\x3a\x22\x43\x22\x2c\x22\xc4\x88\x22\x3a\x22\x43\x22\x2c\x22\xc4\x8a\x22\x3a\x22\x43\x22\x2c\x22\xc4\x8c\x22\x3a\x22\x43\x22\x2c\x22\xc4\x87\x22\x3a\x22\x63\x22\x2c\x22\xc4\x89\x22\x3a\x22\x63\x22\x2c\x22\xc4\x8b\x22\x3a\x22\x63\x22\x2c\x22\xc4\x8d\x22\x3a\x22\x63\x22\x2c\x22\xc4\x8e\x22\x3a\x22\x44\x22\x2c\x22\xc4\x90\x22\x3a\x22\x44\x22\x2c\x22\xc4\x8f\x22\x3a\x22\x64\x22\x2c\x22\xc4\x91\x22\x3a\x22\x64\x22\x2c\x22\xc4\x92\x22\x3a\x22\x45\x22\x2c\x22\xc4\x94\x22\x3a\x22\x45\x22\x2c\x22\xc4\x96\x22\x3a\x22\x45\x22\x2c\x22\xc4\x98\x22\x3a\x22\x45\x22\x2c\x22\xc4\x9a\x22\x3a\x22\x45\x22\x2c\x22\xc4\x93\x22\x3a\x22\x65\x22\x2c\x22\xc4\x95\x22\x3a\x22\x65\x22\x2c\x22\xc4\x97\x22\x3a\x22\x65\x22\x2c\x22\xc4\x99\x22\x3a\x22\x65\x22\x2c\x22\xc4\x9b\x22\x3a\x22\x65\x22\x2c\x22\xc4\x9c\x22\x3a\x22\x47\x22\x2c\x22\xc4\x9e\x22\x3a\x22\x47\x22\x2c\x22\xc4\xa0\x22\x3a\x22\x47\x22\x2c\x22\xc4\xa2\x22\x3a\x22\x47\x22\x2c\x22\xc4\x9d\x22\x3a\x22\x67\x22\x2c\x22\xc4\x9f\x22\x3a\x22\x67\x22\x2c\x22\xc4\xa1\x22\x3a\x22\x67\x22\x2c\x22\xc4\xa3\x22\x3a\x22\x67\x22\x2c\x22\xc4\xa4\x22\x3a\x22\x48\x22\x2c\x22\xc4\xa6\x22\x3a\x22\x48\x22\x2c\x22\xc4\xa5\x22\x3a\x22\x68\x22\x2c\x22\xc4\xa7\x22\x3a\x22\x68\x22\x2c\x22\xc4\xa8\x22\x3a\x22\x49\x22\x2c\x22\xc4\xaa\x22\x3a\x22\x49\x22\x2c\x22\xc4\xac\x22\x3a\x22\x49\x22\x2c\x22\xc4\xae\x22\x3a\x22\x49\x22\x2c\x22\xc4\xb0\x22\x3a\x22\x49\x22\x2c\x22\xc4\xa9\x22\x3a\x22\x69\x22\x2c\x22\xc4\xab\x22\x3a\x22\x69\x22\x2c\x22\xc4\xad\x22\x3a\x22\x69\x22\x2c\x22\xc4\xaf\x22\x3a\x22\x69\x22\x2c\x22\xc4\xb1\x22\x3a\x22\x69\x22\x2c\x22\xc4\xb4\x22\x3a\x22\x4a\x22\x2c\x22\xc4\xb5\x22\x3a\x22\x6a\x22\x2c\x22\xc4\xb6\x22\x3a\x22\x4b\x22\x2c\x22\xc4\xb7\x22\x3a\x22\x6b\x22\x2c\x22\xc4\xb8\x22\x3a\x22\x6b\x22\x2c\x22\xc4\xb9\x22\x3a\x22\x4c\x22\x2c\x22\xc4\xbb\x22\x3a\x22\x4c\x22\x2c\x22\xc4\xbd\x22\x3a\x22\x4c\x22\x2c\x22\xc4\xbf\x22\x3a\x22\x4c\x22\x2c\x22\xc5\x81\x22\x3a\x22\x4c\x22\x2c\x22\xc4\xba\x22\x3a\x22\x6c\x22\x2c\x22\xc4\xbc\x22\x3a\x22\x6c\x22\x2c\x22\xc4\xbe\x22\x3a\x22\x6c\x22\x2c\x22\xc5\x80\x22\x3a\x22\x6c\x22\x2c\x22\xc5\x82\x22\x3a\x22\x6c\x22\x2c\x22\xc5\x83\x22\x3a\x22\x4e\x22\x2c\x22\xc5\x85\x22\x3a\x22\x4e\x22\x2c\x22\xc5\x87\x22\x3a\x22\x4e\x22\x2c\x22\xc5\x8a\x22\x3a\x22\x4e\x22\x2c\x22\xc5\x84\x22\x3a\x22\x6e\x22\x2c\x22\xc5\x86\x22\x3a\x22\x6e\x22\x2c\x22\xc5\x88\x22\x3a\x22\x6e\x22\x2c\x22\xc5\x8b\x22\x3a\x22\x6e\x22\x2c\x22\xc5\x8c\x22\x3a\x22\x4f\x22\x2c\x22\xc5\x8e\x22\x3a\x22\x4f\x22\x2c\x22\xc5\x90\x22\x3a\x22\x4f\x22\x2c\x22\xc5\x8d\x22\x3a\x22\x6f\x22\x2c\x22\xc5\x8f\x22\x3a\x22\x6f\x22\x2c\x22\xc5\x91\x22\x3a\x22\x6f\x22\x2c\x22\xc5\x94\x22\x3a\x22\x52\x22\x2c\x22\xc5\x96\x22\x3a\x22\x52\x22\x2c\x22\xc5\x98\x22\x3a\x22\x52\x22\x2c\x22\xc5\x95\x22\x3a\x22\x72\x22\x2c\x22\xc5\x97\x22\x3a\x22\x72\x22\x2c\x22\xc5\x99\x22\x3a\x22\x72\x22\x2c\x22\xc5\x9a\x22\x3a\x22\x53\x22\x2c\x22\xc5\x9c\x22\x3a\x22\x53\x22\x2c\x22\xc5\x9e\x22\x3a\x22\x53\x22\x2c\x22\xc5\xa0\x22\x3a\x22\x53\x22\x2c\x22\xc5\x9b\x22\x3a\x22\x73\x22\x2c\x22\xc5\x9d\x22\x3a\x22\x73\x22\x2c\x22\xc5\x9f\x22\x3a\x22\x73\x22\x2c\x22\xc5\xa1\x22\x3a\x22\x73\x22\x2c\x22\xc5\xa2\x22\x3a\x22\x54\x22\x2c\x22\xc5\xa4\x22\x3a\x22\x54\x22\x2c\x22\xc5\xa6\x22\x3a\x22\x54\x22\x2c\x22\xc5\xa3\x22\x3a\x22\x74\x22\x2c\x22\xc5\xa5\x22\x3a\x22\x74\x22\x2c\x22\xc5\xa7\x22\x3a\x22\x74\x22\x2c\x22\xc5\xa8\x22\x3a\x22\x55\x22\x2c\x22\xc5\xaa\x22\x3a\x22\x55\x22\x2c\x22\xc5\xac\x22\x3a\x22\x55\x22\x2c\x22\xc5\xae\x22\x3a\x22\x55\x22\x2c\x22\xc5\xb0\x22\x3a\x22\x55\x22\x2c\x22\xc5\xb2\x22\x3a\x22\x55\x22\x2c\x22\xc5\xa9\x22\x3a\x22\x75\x22\x2c\x22\xc5\xab\x22\x3a\x22\x75\x22\x2c\x22\xc5\xad\x22\x3a\x22\x75\x22\x2c\x22\xc5\xaf\x22\x3a\x22\x75\x22\x2c\x22\xc5\xb1\x22\x3a\x22\x75\x22\x2c\x22\xc5\xb3\x22\x3a\x22\x75\x22\x2c\x22\xc5\xb4\x22\x3a\x22\x57\x22\x2c\x22\xc5\xb5\x22\x3a\x22\x77\x22\x2c\x22\xc5\xb6\x22\x3a\x22\x59\x22\x2c\x22\xc5\xb7\x22\x3a\x22\x79\x22\x2c\x22\xc5\xb8\x22\x3a\x22\x59\x22\x2c\x22\xc5\xb9\x22\x3a\x22\x5a\x22\x2c\x22\xc5\xbb\x22\x3a\x22\x5a\x22\x2c\x22\xc5\xbd\x22\x3a\x22\x5a\x22\x2c\x22\xc5\xba\x22\x3a\x22\x7a\x22\x2c\x22\xc5\xbc\x22\x3a\x22\x7a\x22\x2c\x22\xc5\xbe\x22\x3a\x22\x7a\x22\x2c\x22\xc4\xb2\x22\x3a\x22\x49\x4a\x22\x2c\x22\xc4\xb3\x22\x3a\x22\x69\x6a\x22\x2c\x22\xc5\x92\x22\x3a\x22\x4f\x65\x22\x2c\x22\xc5\x93\x22\x3a\x22\x6f\x65\x22\x2c\x22\xc5\x89\x22\x3a\x22\x27\x6e\x22\x2c\x22\xc5\xbf\x22\x3a\x22\x73\x22\x7d\x3b\x76\x61\x72\x20\x64\x65\x62\x75\x72\x72\x4c\x65\x74\x74\x65\x72\x3d\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x4f\x66\x28\x64\x65\x62\x75\x72\x72\x65\x64\x4c\x65\x74\x74\x65\x72\x73\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x64\x65\x62\x75\x72\x72\x4c\x65\x74\x74\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x4f\x66\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x4f\x66\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x73\x63\x69\x69\x57\x6f\x72\x64\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x39\x29\x2c\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x30\x29\x2c\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x29\x2c\x75\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x6f\x72\x64\x73\x28\x73\x74\x72\x69\x6e\x67\x2c\x70\x61\x74\x74\x65\x72\x6e\x2c\x67\x75\x61\x72\x64\x29\x7b\x73\x74\x72\x69\x6e\x67\x3d\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x29\x3b\x70\x61\x74\x74\x65\x72\x6e\x3d\x67\x75\x61\x72\x64\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x70\x61\x74\x74\x65\x72\x6e\x3b\x69\x66\x28\x70\x61\x74\x74\x65\x72\x6e\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x28\x73\x74\x72\x69\x6e\x67\x29\x3f\x75\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x73\x28\x73\x74\x72\x69\x6e\x67\x29\x3a\x61\x73\x63\x69\x69\x57\x6f\x72\x64\x73\x28\x73\x74\x72\x69\x6e\x67\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x2e\x6d\x61\x74\x63\x68\x28\x70\x61\x74\x74\x65\x72\x6e\x29\x7c\x7c\x5b\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x77\x6f\x72\x64\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x72\x65\x41\x73\x63\x69\x69\x57\x6f\x72\x64\x3d\x2f\x5b\x5e\x5c\x78\x30\x30\x2d\x5c\x78\x32\x66\x5c\x78\x33\x61\x2d\x5c\x78\x34\x30\x5c\x78\x35\x62\x2d\x5c\x78\x36\x30\x5c\x78\x37\x62\x2d\x5c\x78\x37\x66\x5d\x2b\x2f\x67\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x73\x63\x69\x69\x57\x6f\x72\x64\x73\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x2e\x6d\x61\x74\x63\x68\x28\x72\x65\x41\x73\x63\x69\x69\x57\x6f\x72\x64\x29\x7c\x7c\x5b\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x73\x63\x69\x69\x57\x6f\x72\x64\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x72\x65\x48\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x3d\x2f\x5b\x61\x2d\x7a\x5d\x5b\x41\x2d\x5a\x5d\x7c\x5b\x41\x2d\x5a\x5d\x7b\x32\x7d\x5b\x61\x2d\x7a\x5d\x7c\x5b\x30\x2d\x39\x5d\x5b\x61\x2d\x7a\x41\x2d\x5a\x5d\x7c\x5b\x61\x2d\x7a\x41\x2d\x5a\x5d\x5b\x30\x2d\x39\x5d\x7c\x5b\x5e\x61\x2d\x7a\x41\x2d\x5a\x30\x2d\x39\x20\x5d\x2f\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x48\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x2e\x74\x65\x73\x74\x28\x73\x74\x72\x69\x6e\x67\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x68\x61\x73\x55\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x72\x73\x41\x73\x74\x72\x61\x6c\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x64\x38\x30\x30\x2d\x5c\x5c\x75\x64\x66\x66\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x30\x33\x30\x30\x2d\x5c\x5c\x75\x30\x33\x36\x66\x22\x2c\x72\x65\x43\x6f\x6d\x62\x6f\x48\x61\x6c\x66\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x66\x65\x32\x30\x2d\x5c\x5c\x75\x66\x65\x32\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x53\x79\x6d\x62\x6f\x6c\x73\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x32\x30\x64\x30\x2d\x5c\x5c\x75\x32\x30\x66\x66\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x52\x61\x6e\x67\x65\x3d\x72\x73\x43\x6f\x6d\x62\x6f\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x2b\x72\x65\x43\x6f\x6d\x62\x6f\x48\x61\x6c\x66\x4d\x61\x72\x6b\x73\x52\x61\x6e\x67\x65\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x53\x79\x6d\x62\x6f\x6c\x73\x52\x61\x6e\x67\x65\x2c\x72\x73\x44\x69\x6e\x67\x62\x61\x74\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x32\x37\x30\x30\x2d\x5c\x5c\x75\x32\x37\x62\x66\x22\x2c\x72\x73\x4c\x6f\x77\x65\x72\x52\x61\x6e\x67\x65\x3d\x22\x61\x2d\x7a\x5c\x5c\x78\x64\x66\x2d\x5c\x5c\x78\x66\x36\x5c\x5c\x78\x66\x38\x2d\x5c\x5c\x78\x66\x66\x22\x2c\x72\x73\x4d\x61\x74\x68\x4f\x70\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x78\x61\x63\x5c\x5c\x78\x62\x31\x5c\x5c\x78\x64\x37\x5c\x5c\x78\x66\x37\x22\x2c\x72\x73\x4e\x6f\x6e\x43\x68\x61\x72\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x78\x30\x30\x2d\x5c\x5c\x78\x32\x66\x5c\x5c\x78\x33\x61\x2d\x5c\x5c\x78\x34\x30\x5c\x5c\x78\x35\x62\x2d\x5c\x5c\x78\x36\x30\x5c\x5c\x78\x37\x62\x2d\x5c\x5c\x78\x62\x66\x22\x2c\x72\x73\x50\x75\x6e\x63\x74\x75\x61\x74\x69\x6f\x6e\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x32\x30\x30\x30\x2d\x5c\x5c\x75\x32\x30\x36\x66\x22\x2c\x72\x73\x53\x70\x61\x63\x65\x52\x61\x6e\x67\x65\x3d\x22\x20\x5c\x5c\x74\x5c\x5c\x78\x30\x62\x5c\x5c\x66\x5c\x5c\x78\x61\x30\x5c\x5c\x75\x66\x65\x66\x66\x5c\x5c\x6e\x5c\x5c\x72\x5c\x5c\x75\x32\x30\x32\x38\x5c\x5c\x75\x32\x30\x32\x39\x5c\x5c\x75\x31\x36\x38\x30\x5c\x5c\x75\x31\x38\x30\x65\x5c\x5c\x75\x32\x30\x30\x30\x5c\x5c\x75\x32\x30\x30\x31\x5c\x5c\x75\x32\x30\x30\x32\x5c\x5c\x75\x32\x30\x30\x33\x5c\x5c\x75\x32\x30\x30\x34\x5c\x5c\x75\x32\x30\x30\x35\x5c\x5c\x75\x32\x30\x30\x36\x5c\x5c\x75\x32\x30\x30\x37\x5c\x5c\x75\x32\x30\x30\x38\x5c\x5c\x75\x32\x30\x30\x39\x5c\x5c\x75\x32\x30\x30\x61\x5c\x5c\x75\x32\x30\x32\x66\x5c\x5c\x75\x32\x30\x35\x66\x5c\x5c\x75\x33\x30\x30\x30\x22\x2c\x72\x73\x55\x70\x70\x65\x72\x52\x61\x6e\x67\x65\x3d\x22\x41\x2d\x5a\x5c\x5c\x78\x63\x30\x2d\x5c\x5c\x78\x64\x36\x5c\x5c\x78\x64\x38\x2d\x5c\x5c\x78\x64\x65\x22\x2c\x72\x73\x56\x61\x72\x52\x61\x6e\x67\x65\x3d\x22\x5c\x5c\x75\x66\x65\x30\x65\x5c\x5c\x75\x66\x65\x30\x66\x22\x2c\x72\x73\x42\x72\x65\x61\x6b\x52\x61\x6e\x67\x65\x3d\x72\x73\x4d\x61\x74\x68\x4f\x70\x52\x61\x6e\x67\x65\x2b\x72\x73\x4e\x6f\x6e\x43\x68\x61\x72\x52\x61\x6e\x67\x65\x2b\x72\x73\x50\x75\x6e\x63\x74\x75\x61\x74\x69\x6f\x6e\x52\x61\x6e\x67\x65\x2b\x72\x73\x53\x70\x61\x63\x65\x52\x61\x6e\x67\x65\x3b\x76\x61\x72\x20\x72\x73\x41\x70\x6f\x73\x3d\x22\x5b\x27\xe2\x80\x99\x5d\x22\x2c\x72\x73\x42\x72\x65\x61\x6b\x3d\x22\x5b\x22\x2b\x72\x73\x42\x72\x65\x61\x6b\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x43\x6f\x6d\x62\x6f\x3d\x22\x5b\x22\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x44\x69\x67\x69\x74\x73\x3d\x22\x5c\x5c\x64\x2b\x22\x2c\x72\x73\x44\x69\x6e\x67\x62\x61\x74\x3d\x22\x5b\x22\x2b\x72\x73\x44\x69\x6e\x67\x62\x61\x74\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x4c\x6f\x77\x65\x72\x3d\x22\x5b\x22\x2b\x72\x73\x4c\x6f\x77\x65\x72\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x4d\x69\x73\x63\x3d\x22\x5b\x5e\x22\x2b\x72\x73\x41\x73\x74\x72\x61\x6c\x52\x61\x6e\x67\x65\x2b\x72\x73\x42\x72\x65\x61\x6b\x52\x61\x6e\x67\x65\x2b\x72\x73\x44\x69\x67\x69\x74\x73\x2b\x72\x73\x44\x69\x6e\x67\x62\x61\x74\x52\x61\x6e\x67\x65\x2b\x72\x73\x4c\x6f\x77\x65\x72\x52\x61\x6e\x67\x65\x2b\x72\x73\x55\x70\x70\x65\x72\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x46\x69\x74\x7a\x3d\x22\x5c\x5c\x75\x64\x38\x33\x63\x5b\x5c\x5c\x75\x64\x66\x66\x62\x2d\x5c\x5c\x75\x64\x66\x66\x66\x5d\x22\x2c\x72\x73\x4d\x6f\x64\x69\x66\x69\x65\x72\x3d\x22\x28\x3f\x3a\x22\x2b\x72\x73\x43\x6f\x6d\x62\x6f\x2b\x22\x7c\x22\x2b\x72\x73\x46\x69\x74\x7a\x2b\x22\x29\x22\x2c\x72\x73\x4e\x6f\x6e\x41\x73\x74\x72\x61\x6c\x3d\x22\x5b\x5e\x22\x2b\x72\x73\x41\x73\x74\x72\x61\x6c\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x52\x65\x67\x69\x6f\x6e\x61\x6c\x3d\x22\x28\x3f\x3a\x5c\x5c\x75\x64\x38\x33\x63\x5b\x5c\x5c\x75\x64\x64\x65\x36\x2d\x5c\x5c\x75\x64\x64\x66\x66\x5d\x29\x7b\x32\x7d\x22\x2c\x72\x73\x53\x75\x72\x72\x50\x61\x69\x72\x3d\x22\x5b\x5c\x5c\x75\x64\x38\x30\x30\x2d\x5c\x5c\x75\x64\x62\x66\x66\x5d\x5b\x5c\x5c\x75\x64\x63\x30\x30\x2d\x5c\x5c\x75\x64\x66\x66\x66\x5d\x22\x2c\x72\x73\x55\x70\x70\x65\x72\x3d\x22\x5b\x22\x2b\x72\x73\x55\x70\x70\x65\x72\x52\x61\x6e\x67\x65\x2b\x22\x5d\x22\x2c\x72\x73\x5a\x57\x4a\x3d\x22\x5c\x5c\x75\x32\x30\x30\x64\x22\x3b\x76\x61\x72\x20\x72\x73\x4d\x69\x73\x63\x4c\x6f\x77\x65\x72\x3d\x22\x28\x3f\x3a\x22\x2b\x72\x73\x4c\x6f\x77\x65\x72\x2b\x22\x7c\x22\x2b\x72\x73\x4d\x69\x73\x63\x2b\x22\x29\x22\x2c\x72\x73\x4d\x69\x73\x63\x55\x70\x70\x65\x72\x3d\x22\x28\x3f\x3a\x22\x2b\x72\x73\x55\x70\x70\x65\x72\x2b\x22\x7c\x22\x2b\x72\x73\x4d\x69\x73\x63\x2b\x22\x29\x22\x2c\x72\x73\x4f\x70\x74\x43\x6f\x6e\x74\x72\x4c\x6f\x77\x65\x72\x3d\x22\x28\x3f\x3a\x22\x2b\x72\x73\x41\x70\x6f\x73\x2b\x22\x28\x3f\x3a\x64\x7c\x6c\x6c\x7c\x6d\x7c\x72\x65\x7c\x73\x7c\x74\x7c\x76\x65\x29\x29\x3f\x22\x2c\x72\x73\x4f\x70\x74\x43\x6f\x6e\x74\x72\x55\x70\x70\x65\x72\x3d\x22\x28\x3f\x3a\x22\x2b\x72\x73\x41\x70\x6f\x73\x2b\x22\x28\x3f\x3a\x44\x7c\x4c\x4c\x7c\x4d\x7c\x52\x45\x7c\x53\x7c\x54\x7c\x56\x45\x29\x29\x3f\x22\x2c\x72\x65\x4f\x70\x74\x4d\x6f\x64\x3d\x72\x73\x4d\x6f\x64\x69\x66\x69\x65\x72\x2b\x22\x3f\x22\x2c\x72\x73\x4f\x70\x74\x56\x61\x72\x3d\x22\x5b\x22\x2b\x72\x73\x56\x61\x72\x52\x61\x6e\x67\x65\x2b\x22\x5d\x3f\x22\x2c\x72\x73\x4f\x70\x74\x4a\x6f\x69\x6e\x3d\x22\x28\x3f\x3a\x22\x2b\x72\x73\x5a\x57\x4a\x2b\x22\x28\x3f\x3a\x22\x2b\x5b\x72\x73\x4e\x6f\x6e\x41\x73\x74\x72\x61\x6c\x2c\x72\x73\x52\x65\x67\x69\x6f\x6e\x61\x6c\x2c\x72\x73\x53\x75\x72\x72\x50\x61\x69\x72\x5d\x2e\x6a\x6f\x69\x6e\x28\x22\x7c\x22\x29\x2b\x22\x29\x22\x2b\x72\x73\x4f\x70\x74\x56\x61\x72\x2b\x72\x65\x4f\x70\x74\x4d\x6f\x64\x2b\x22\x29\x2a\x22\x2c\x72\x73\x4f\x72\x64\x4c\x6f\x77\x65\x72\x3d\x22\x5c\x5c\x64\x2a\x28\x3f\x3a\x31\x73\x74\x7c\x32\x6e\x64\x7c\x33\x72\x64\x7c\x28\x3f\x21\x5b\x31\x32\x33\x5d\x29\x5c\x5c\x64\x74\x68\x29\x28\x3f\x3d\x5c\x5c\x62\x7c\x5b\x41\x2d\x5a\x5f\x5d\x29\x22\x2c\x72\x73\x4f\x72\x64\x55\x70\x70\x65\x72\x3d\x22\x5c\x5c\x64\x2a\x28\x3f\x3a\x31\x53\x54\x7c\x32\x4e\x44\x7c\x33\x52\x44\x7c\x28\x3f\x21\x5b\x31\x32\x33\x5d\x29\x5c\x5c\x64\x54\x48\x29\x28\x3f\x3d\x5c\x5c\x62\x7c\x5b\x61\x2d\x7a\x5f\x5d\x29\x22\x2c\x72\x73\x53\x65\x71\x3d\x72\x73\x4f\x70\x74\x56\x61\x72\x2b\x72\x65\x4f\x70\x74\x4d\x6f\x64\x2b\x72\x73\x4f\x70\x74\x4a\x6f\x69\x6e\x2c\x72\x73\x45\x6d\x6f\x6a\x69\x3d\x22\x28\x3f\x3a\x22\x2b\x5b\x72\x73\x44\x69\x6e\x67\x62\x61\x74\x2c\x72\x73\x52\x65\x67\x69\x6f\x6e\x61\x6c\x2c\x72\x73\x53\x75\x72\x72\x50\x61\x69\x72\x5d\x2e\x6a\x6f\x69\x6e\x28\x22\x7c\x22\x29\x2b\x22\x29\x22\x2b\x72\x73\x53\x65\x71\x3b\x76\x61\x72\x20\x72\x65\x55\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x3d\x52\x65\x67\x45\x78\x70\x28\x5b\x72\x73\x55\x70\x70\x65\x72\x2b\x22\x3f\x22\x2b\x72\x73\x4c\x6f\x77\x65\x72\x2b\x22\x2b\x22\x2b\x72\x73\x4f\x70\x74\x43\x6f\x6e\x74\x72\x4c\x6f\x77\x65\x72\x2b\x22\x28\x3f\x3d\x22\x2b\x5b\x72\x73\x42\x72\x65\x61\x6b\x2c\x72\x73\x55\x70\x70\x65\x72\x2c\x22\x24\x22\x5d\x2e\x6a\x6f\x69\x6e\x28\x22\x7c\x22\x29\x2b\x22\x29\x22\x2c\x72\x73\x4d\x69\x73\x63\x55\x70\x70\x65\x72\x2b\x22\x2b\x22\x2b\x72\x73\x4f\x70\x74\x43\x6f\x6e\x74\x72\x55\x70\x70\x65\x72\x2b\x22\x28\x3f\x3d\x22\x2b\x5b\x72\x73\x42\x72\x65\x61\x6b\x2c\x72\x73\x55\x70\x70\x65\x72\x2b\x72\x73\x4d\x69\x73\x63\x4c\x6f\x77\x65\x72\x2c\x22\x24\x22\x5d\x2e\x6a\x6f\x69\x6e\x28\x22\x7c\x22\x29\x2b\x22\x29\x22\x2c\x72\x73\x55\x70\x70\x65\x72\x2b\x22\x3f\x22\x2b\x72\x73\x4d\x69\x73\x63\x4c\x6f\x77\x65\x72\x2b\x22\x2b\x22\x2b\x72\x73\x4f\x70\x74\x43\x6f\x6e\x74\x72\x4c\x6f\x77\x65\x72\x2c\x72\x73\x55\x70\x70\x65\x72\x2b\x22\x2b\x22\x2b\x72\x73\x4f\x70\x74\x43\x6f\x6e\x74\x72\x55\x70\x70\x65\x72\x2c\x72\x73\x4f\x72\x64\x55\x70\x70\x65\x72\x2c\x72\x73\x4f\x72\x64\x4c\x6f\x77\x65\x72\x2c\x72\x73\x44\x69\x67\x69\x74\x73\x2c\x72\x73\x45\x6d\x6f\x6a\x69\x5d\x2e\x6a\x6f\x69\x6e\x28\x22\x7c\x22\x29\x2c\x22\x67\x22\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x73\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x2e\x6d\x61\x74\x63\x68\x28\x72\x65\x55\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x29\x7c\x7c\x5b\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x75\x6e\x69\x63\x6f\x64\x65\x57\x6f\x72\x64\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x48\x61\x73\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x33\x29\x2c\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x37\x29\x2c\x4d\x61\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x30\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x70\x43\x61\x63\x68\x65\x43\x6c\x65\x61\x72\x28\x29\x7b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3d\x30\x3b\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3d\x7b\x68\x61\x73\x68\x3a\x6e\x65\x77\x20\x48\x61\x73\x68\x2c\x6d\x61\x70\x3a\x6e\x65\x77\x28\x4d\x61\x70\x7c\x7c\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x29\x2c\x73\x74\x72\x69\x6e\x67\x3a\x6e\x65\x77\x20\x48\x61\x73\x68\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x43\x6c\x65\x61\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x68\x61\x73\x68\x43\x6c\x65\x61\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x34\x29\x2c\x68\x61\x73\x68\x44\x65\x6c\x65\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x39\x29\x2c\x68\x61\x73\x68\x47\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x30\x29\x2c\x68\x61\x73\x68\x48\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x31\x29\x2c\x68\x61\x73\x68\x53\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x32\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x48\x61\x73\x68\x28\x65\x6e\x74\x72\x69\x65\x73\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x65\x6e\x74\x72\x69\x65\x73\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x65\x6e\x74\x72\x69\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x74\x68\x69\x73\x2e\x63\x6c\x65\x61\x72\x28\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3d\x65\x6e\x74\x72\x69\x65\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x74\x68\x69\x73\x2e\x73\x65\x74\x28\x65\x6e\x74\x72\x79\x5b\x30\x5d\x2c\x65\x6e\x74\x72\x79\x5b\x31\x5d\x29\x7d\x7d\x48\x61\x73\x68\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x63\x6c\x65\x61\x72\x3d\x68\x61\x73\x68\x43\x6c\x65\x61\x72\x3b\x48\x61\x73\x68\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x3d\x68\x61\x73\x68\x44\x65\x6c\x65\x74\x65\x3b\x48\x61\x73\x68\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x67\x65\x74\x3d\x68\x61\x73\x68\x47\x65\x74\x3b\x48\x61\x73\x68\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x3d\x68\x61\x73\x68\x48\x61\x73\x3b\x48\x61\x73\x68\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x65\x74\x3d\x68\x61\x73\x68\x53\x65\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x48\x61\x73\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x68\x43\x6c\x65\x61\x72\x28\x29\x7b\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3d\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x3f\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x28\x6e\x75\x6c\x6c\x29\x3a\x7b\x7d\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3d\x30\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x68\x61\x73\x68\x43\x6c\x65\x61\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x35\x29\x2c\x69\x73\x4d\x61\x73\x6b\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x36\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x2c\x74\x6f\x53\x6f\x75\x72\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x36\x29\x3b\x76\x61\x72\x20\x72\x65\x52\x65\x67\x45\x78\x70\x43\x68\x61\x72\x3d\x2f\x5b\x5c\x5c\x5e\x24\x2e\x2a\x2b\x3f\x28\x29\x5b\x5c\x5d\x7b\x7d\x7c\x5d\x2f\x67\x3b\x76\x61\x72\x20\x72\x65\x49\x73\x48\x6f\x73\x74\x43\x74\x6f\x72\x3d\x2f\x5e\x5c\x5b\x6f\x62\x6a\x65\x63\x74\x20\x2e\x2b\x3f\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x5c\x5d\x24\x2f\x3b\x76\x61\x72\x20\x66\x75\x6e\x63\x50\x72\x6f\x74\x6f\x3d\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x66\x75\x6e\x63\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x66\x75\x6e\x63\x50\x72\x6f\x74\x6f\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x76\x61\x72\x20\x72\x65\x49\x73\x4e\x61\x74\x69\x76\x65\x3d\x52\x65\x67\x45\x78\x70\x28\x22\x5e\x22\x2b\x66\x75\x6e\x63\x54\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x72\x65\x52\x65\x67\x45\x78\x70\x43\x68\x61\x72\x2c\x22\x5c\x5c\x24\x26\x22\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x7c\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x29\x2e\x2a\x3f\x28\x3f\x3d\x5c\x5c\x5c\x28\x29\x7c\x20\x66\x6f\x72\x20\x2e\x2b\x3f\x28\x3f\x3d\x5c\x5c\x5c\x5d\x29\x2f\x67\x2c\x22\x24\x31\x2e\x2a\x3f\x22\x29\x2b\x22\x24\x22\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x49\x73\x4e\x61\x74\x69\x76\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x7c\x7c\x69\x73\x4d\x61\x73\x6b\x65\x64\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x70\x61\x74\x74\x65\x72\x6e\x3d\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x3f\x72\x65\x49\x73\x4e\x61\x74\x69\x76\x65\x3a\x72\x65\x49\x73\x48\x6f\x73\x74\x43\x74\x6f\x72\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x74\x74\x65\x72\x6e\x2e\x74\x65\x73\x74\x28\x74\x6f\x53\x6f\x75\x72\x63\x65\x28\x76\x61\x6c\x75\x65\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x49\x73\x4e\x61\x74\x69\x76\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x72\x65\x4a\x73\x44\x61\x74\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x31\x37\x29\x3b\x76\x61\x72\x20\x6d\x61\x73\x6b\x53\x72\x63\x4b\x65\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x75\x69\x64\x3d\x2f\x5b\x5e\x2e\x5d\x2b\x24\x2f\x2e\x65\x78\x65\x63\x28\x63\x6f\x72\x65\x4a\x73\x44\x61\x74\x61\x26\x26\x63\x6f\x72\x65\x4a\x73\x44\x61\x74\x61\x2e\x6b\x65\x79\x73\x26\x26\x63\x6f\x72\x65\x4a\x73\x44\x61\x74\x61\x2e\x6b\x65\x79\x73\x2e\x49\x45\x5f\x50\x52\x4f\x54\x4f\x7c\x7c\x22\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x75\x69\x64\x3f\x22\x53\x79\x6d\x62\x6f\x6c\x28\x73\x72\x63\x29\x5f\x31\x2e\x22\x2b\x75\x69\x64\x3a\x22\x22\x7d\x28\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4d\x61\x73\x6b\x65\x64\x28\x66\x75\x6e\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x6d\x61\x73\x6b\x53\x72\x63\x4b\x65\x79\x26\x26\x6d\x61\x73\x6b\x53\x72\x63\x4b\x65\x79\x20\x69\x6e\x20\x66\x75\x6e\x63\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x4d\x61\x73\x6b\x65\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x63\x6f\x72\x65\x4a\x73\x44\x61\x74\x61\x3d\x72\x6f\x6f\x74\x5b\x22\x5f\x5f\x63\x6f\x72\x65\x2d\x6a\x73\x5f\x73\x68\x61\x72\x65\x64\x5f\x5f\x22\x5d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6f\x72\x65\x4a\x73\x44\x61\x74\x61\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x56\x61\x6c\x75\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x68\x44\x65\x6c\x65\x74\x65\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x74\x68\x69\x73\x2e\x68\x61\x73\x28\x6b\x65\x79\x29\x26\x26\x64\x65\x6c\x65\x74\x65\x20\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x5b\x6b\x65\x79\x5d\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x2d\x3d\x72\x65\x73\x75\x6c\x74\x3f\x31\x3a\x30\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x68\x61\x73\x68\x44\x65\x6c\x65\x74\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x36\x29\x3b\x76\x61\x72\x20\x48\x41\x53\x48\x5f\x55\x4e\x44\x45\x46\x49\x4e\x45\x44\x3d\x22\x5f\x5f\x6c\x6f\x64\x61\x73\x68\x5f\x68\x61\x73\x68\x5f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x5f\x5f\x22\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x68\x47\x65\x74\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3b\x69\x66\x28\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x64\x61\x74\x61\x5b\x6b\x65\x79\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x48\x41\x53\x48\x5f\x55\x4e\x44\x45\x46\x49\x4e\x45\x44\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x72\x65\x73\x75\x6c\x74\x7d\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x64\x61\x74\x61\x2c\x6b\x65\x79\x29\x3f\x64\x61\x74\x61\x5b\x6b\x65\x79\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x68\x61\x73\x68\x47\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x36\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x68\x48\x61\x73\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x3f\x64\x61\x74\x61\x5b\x6b\x65\x79\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x64\x61\x74\x61\x2c\x6b\x65\x79\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x68\x61\x73\x68\x48\x61\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x36\x29\x3b\x76\x61\x72\x20\x48\x41\x53\x48\x5f\x55\x4e\x44\x45\x46\x49\x4e\x45\x44\x3d\x22\x5f\x5f\x6c\x6f\x64\x61\x73\x68\x5f\x68\x61\x73\x68\x5f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x5f\x5f\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x68\x53\x65\x74\x28\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x2b\x3d\x74\x68\x69\x73\x2e\x68\x61\x73\x28\x6b\x65\x79\x29\x3f\x30\x3a\x31\x3b\x64\x61\x74\x61\x5b\x6b\x65\x79\x5d\x3d\x6e\x61\x74\x69\x76\x65\x43\x72\x65\x61\x74\x65\x26\x26\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x48\x41\x53\x48\x5f\x55\x4e\x44\x45\x46\x49\x4e\x45\x44\x3a\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x68\x61\x73\x68\x53\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x43\x6c\x65\x61\x72\x28\x29\x7b\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3d\x5b\x5d\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3d\x30\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x43\x6c\x65\x61\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x38\x29\x3b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x3d\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x73\x70\x6c\x69\x63\x65\x3d\x61\x72\x72\x61\x79\x50\x72\x6f\x74\x6f\x2e\x73\x70\x6c\x69\x63\x65\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x44\x65\x6c\x65\x74\x65\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x2c\x69\x6e\x64\x65\x78\x3d\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x28\x64\x61\x74\x61\x2c\x6b\x65\x79\x29\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x3c\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x3d\x64\x61\x74\x61\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x3d\x3d\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x29\x7b\x64\x61\x74\x61\x2e\x70\x6f\x70\x28\x29\x7d\x65\x6c\x73\x65\x7b\x73\x70\x6c\x69\x63\x65\x2e\x63\x61\x6c\x6c\x28\x64\x61\x74\x61\x2c\x69\x6e\x64\x65\x78\x2c\x31\x29\x7d\x2d\x2d\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x44\x65\x6c\x65\x74\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x47\x65\x74\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x2c\x69\x6e\x64\x65\x78\x3d\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x28\x64\x61\x74\x61\x2c\x6b\x65\x79\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x64\x65\x78\x3c\x30\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x64\x61\x74\x61\x5b\x69\x6e\x64\x65\x78\x5d\x5b\x31\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x47\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x48\x61\x73\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x28\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x2c\x6b\x65\x79\x29\x3e\x2d\x31\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x48\x61\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x53\x65\x74\x28\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x2c\x69\x6e\x64\x65\x78\x3d\x61\x73\x73\x6f\x63\x49\x6e\x64\x65\x78\x4f\x66\x28\x64\x61\x74\x61\x2c\x6b\x65\x79\x29\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x3c\x30\x29\x7b\x2b\x2b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3b\x64\x61\x74\x61\x2e\x70\x75\x73\x68\x28\x5b\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x5d\x29\x7d\x65\x6c\x73\x65\x7b\x64\x61\x74\x61\x5b\x69\x6e\x64\x65\x78\x5d\x5b\x31\x5d\x3d\x76\x61\x6c\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6c\x69\x73\x74\x43\x61\x63\x68\x65\x53\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x39\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x70\x43\x61\x63\x68\x65\x44\x65\x6c\x65\x74\x65\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x28\x74\x68\x69\x73\x2c\x6b\x65\x79\x29\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x28\x6b\x65\x79\x29\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x2d\x3d\x72\x65\x73\x75\x6c\x74\x3f\x31\x3a\x30\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x44\x65\x6c\x65\x74\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4b\x65\x79\x61\x62\x6c\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x22\x73\x79\x6d\x62\x6f\x6c\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x22\x62\x6f\x6f\x6c\x65\x61\x6e\x22\x3f\x76\x61\x6c\x75\x65\x21\x3d\x3d\x22\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x22\x3a\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x6e\x75\x6c\x6c\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x4b\x65\x79\x61\x62\x6c\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x39\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x70\x43\x61\x63\x68\x65\x47\x65\x74\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x28\x74\x68\x69\x73\x2c\x6b\x65\x79\x29\x2e\x67\x65\x74\x28\x6b\x65\x79\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x47\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x39\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x70\x43\x61\x63\x68\x65\x48\x61\x73\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x28\x74\x68\x69\x73\x2c\x6b\x65\x79\x29\x2e\x68\x61\x73\x28\x6b\x65\x79\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x48\x61\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x39\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x70\x43\x61\x63\x68\x65\x53\x65\x74\x28\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x67\x65\x74\x4d\x61\x70\x44\x61\x74\x61\x28\x74\x68\x69\x73\x2c\x6b\x65\x79\x29\x2c\x73\x69\x7a\x65\x3d\x64\x61\x74\x61\x2e\x73\x69\x7a\x65\x3b\x64\x61\x74\x61\x2e\x73\x65\x74\x28\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x2b\x3d\x64\x61\x74\x61\x2e\x73\x69\x7a\x65\x3d\x3d\x73\x69\x7a\x65\x3f\x30\x3a\x31\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x61\x70\x43\x61\x63\x68\x65\x53\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x46\x69\x6e\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x34\x29\x2c\x66\x69\x6e\x64\x49\x6e\x64\x65\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x32\x29\x3b\x76\x61\x72\x20\x66\x69\x6e\x64\x3d\x63\x72\x65\x61\x74\x65\x46\x69\x6e\x64\x28\x66\x69\x6e\x64\x49\x6e\x64\x65\x78\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x69\x6e\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x30\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x32\x29\x2c\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x46\x69\x6e\x64\x28\x66\x69\x6e\x64\x49\x6e\x64\x65\x78\x46\x75\x6e\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x29\x7b\x76\x61\x72\x20\x69\x74\x65\x72\x61\x62\x6c\x65\x3d\x4f\x62\x6a\x65\x63\x74\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x21\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x29\x7b\x76\x61\x72\x20\x69\x74\x65\x72\x61\x74\x65\x65\x3d\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x28\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x33\x29\x3b\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x3d\x6b\x65\x79\x73\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x3b\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x65\x72\x61\x74\x65\x65\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x5b\x6b\x65\x79\x5d\x2c\x6b\x65\x79\x2c\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x7d\x7d\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x66\x69\x6e\x64\x49\x6e\x64\x65\x78\x46\x75\x6e\x63\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x64\x65\x78\x3e\x2d\x31\x3f\x69\x74\x65\x72\x61\x62\x6c\x65\x5b\x69\x74\x65\x72\x61\x74\x65\x65\x3f\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x5b\x69\x6e\x64\x65\x78\x5d\x3a\x69\x6e\x64\x65\x78\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x72\x65\x61\x74\x65\x46\x69\x6e\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x49\x73\x4d\x61\x74\x63\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x33\x36\x29\x2c\x67\x65\x74\x4d\x61\x74\x63\x68\x44\x61\x74\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x32\x29\x2c\x6d\x61\x74\x63\x68\x65\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x4d\x61\x74\x63\x68\x65\x73\x28\x73\x6f\x75\x72\x63\x65\x29\x7b\x76\x61\x72\x20\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x3d\x67\x65\x74\x4d\x61\x74\x63\x68\x44\x61\x74\x61\x28\x73\x6f\x75\x72\x63\x65\x29\x3b\x69\x66\x28\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x31\x26\x26\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x5b\x30\x5d\x5b\x32\x5d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x74\x63\x68\x65\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x28\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x5b\x30\x5d\x5b\x30\x5d\x2c\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x5b\x30\x5d\x5b\x31\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x73\x6f\x75\x72\x63\x65\x7c\x7c\x62\x61\x73\x65\x49\x73\x4d\x61\x74\x63\x68\x28\x6f\x62\x6a\x65\x63\x74\x2c\x73\x6f\x75\x72\x63\x65\x2c\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x4d\x61\x74\x63\x68\x65\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x74\x61\x63\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x31\x29\x2c\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x37\x29\x3b\x76\x61\x72\x20\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x3d\x31\x2c\x43\x4f\x4d\x50\x41\x52\x45\x5f\x55\x4e\x4f\x52\x44\x45\x52\x45\x44\x5f\x46\x4c\x41\x47\x3d\x32\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x49\x73\x4d\x61\x74\x63\x68\x28\x6f\x62\x6a\x65\x63\x74\x2c\x73\x6f\x75\x72\x63\x65\x2c\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x69\x6e\x64\x65\x78\x2c\x6e\x6f\x43\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x3d\x21\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x6c\x65\x6e\x67\x74\x68\x7d\x6f\x62\x6a\x65\x63\x74\x3d\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x77\x68\x69\x6c\x65\x28\x69\x6e\x64\x65\x78\x2d\x2d\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x6e\x6f\x43\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x26\x26\x64\x61\x74\x61\x5b\x32\x5d\x3f\x64\x61\x74\x61\x5b\x31\x5d\x21\x3d\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x64\x61\x74\x61\x5b\x30\x5d\x5d\x3a\x21\x28\x64\x61\x74\x61\x5b\x30\x5d\x69\x6e\x20\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x64\x61\x74\x61\x3d\x6d\x61\x74\x63\x68\x44\x61\x74\x61\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x76\x61\x72\x20\x6b\x65\x79\x3d\x64\x61\x74\x61\x5b\x30\x5d\x2c\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x2c\x73\x72\x63\x56\x61\x6c\x75\x65\x3d\x64\x61\x74\x61\x5b\x31\x5d\x3b\x69\x66\x28\x6e\x6f\x43\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x26\x26\x64\x61\x74\x61\x5b\x32\x5d\x29\x7b\x69\x66\x28\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x21\x28\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x73\x74\x61\x63\x6b\x3d\x6e\x65\x77\x20\x53\x74\x61\x63\x6b\x3b\x69\x66\x28\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x28\x6f\x62\x6a\x56\x61\x6c\x75\x65\x2c\x73\x72\x63\x56\x61\x6c\x75\x65\x2c\x6b\x65\x79\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x73\x6f\x75\x72\x63\x65\x2c\x73\x74\x61\x63\x6b\x29\x7d\x69\x66\x28\x21\x28\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x28\x73\x72\x63\x56\x61\x6c\x75\x65\x2c\x6f\x62\x6a\x56\x61\x6c\x75\x65\x2c\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x7c\x43\x4f\x4d\x50\x41\x52\x45\x5f\x55\x4e\x4f\x52\x44\x45\x52\x45\x44\x5f\x46\x4c\x41\x47\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x73\x74\x61\x63\x6b\x29\x3a\x72\x65\x73\x75\x6c\x74\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x49\x73\x4d\x61\x74\x63\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x63\x6b\x43\x6c\x65\x61\x72\x28\x29\x7b\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3d\x6e\x65\x77\x20\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3d\x30\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x74\x61\x63\x6b\x43\x6c\x65\x61\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x63\x6b\x44\x65\x6c\x65\x74\x65\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x2c\x72\x65\x73\x75\x6c\x74\x3d\x64\x61\x74\x61\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x28\x6b\x65\x79\x29\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3d\x64\x61\x74\x61\x2e\x73\x69\x7a\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x74\x61\x63\x6b\x44\x65\x6c\x65\x74\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x63\x6b\x47\x65\x74\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x2e\x67\x65\x74\x28\x6b\x65\x79\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x74\x61\x63\x6b\x47\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x63\x6b\x48\x61\x73\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x2e\x68\x61\x73\x28\x6b\x65\x79\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x74\x61\x63\x6b\x48\x61\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x37\x29\x2c\x4d\x61\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x30\x29\x2c\x4d\x61\x70\x43\x61\x63\x68\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x39\x29\x3b\x76\x61\x72\x20\x4c\x41\x52\x47\x45\x5f\x41\x52\x52\x41\x59\x5f\x53\x49\x5a\x45\x3d\x32\x30\x30\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x61\x63\x6b\x53\x65\x74\x28\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3b\x69\x66\x28\x64\x61\x74\x61\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x4c\x69\x73\x74\x43\x61\x63\x68\x65\x29\x7b\x76\x61\x72\x20\x70\x61\x69\x72\x73\x3d\x64\x61\x74\x61\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3b\x69\x66\x28\x21\x4d\x61\x70\x7c\x7c\x70\x61\x69\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x4c\x41\x52\x47\x45\x5f\x41\x52\x52\x41\x59\x5f\x53\x49\x5a\x45\x2d\x31\x29\x7b\x70\x61\x69\x72\x73\x2e\x70\x75\x73\x68\x28\x5b\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x5d\x29\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3d\x2b\x2b\x64\x61\x74\x61\x2e\x73\x69\x7a\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x64\x61\x74\x61\x3d\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3d\x6e\x65\x77\x20\x4d\x61\x70\x43\x61\x63\x68\x65\x28\x70\x61\x69\x72\x73\x29\x7d\x64\x61\x74\x61\x2e\x73\x65\x74\x28\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x3b\x74\x68\x69\x73\x2e\x73\x69\x7a\x65\x3d\x64\x61\x74\x61\x2e\x73\x69\x7a\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x74\x61\x63\x6b\x53\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x74\x61\x63\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x31\x29\x2c\x65\x71\x75\x61\x6c\x41\x72\x72\x61\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x38\x29\x2c\x65\x71\x75\x61\x6c\x42\x79\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x37\x29\x2c\x65\x71\x75\x61\x6c\x4f\x62\x6a\x65\x63\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x30\x29\x2c\x67\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x32\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x69\x73\x42\x75\x66\x66\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x35\x29\x2c\x69\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x35\x29\x3b\x76\x61\x72\x20\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x3d\x31\x3b\x76\x61\x72\x20\x61\x72\x67\x73\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x5d\x22\x2c\x61\x72\x72\x61\x79\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x72\x61\x79\x5d\x22\x2c\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4f\x62\x6a\x65\x63\x74\x5d\x22\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x44\x65\x65\x70\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x65\x72\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x2c\x73\x74\x61\x63\x6b\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x49\x73\x41\x72\x72\x3d\x69\x73\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x6f\x74\x68\x49\x73\x41\x72\x72\x3d\x69\x73\x41\x72\x72\x61\x79\x28\x6f\x74\x68\x65\x72\x29\x2c\x6f\x62\x6a\x54\x61\x67\x3d\x6f\x62\x6a\x49\x73\x41\x72\x72\x3f\x61\x72\x72\x61\x79\x54\x61\x67\x3a\x67\x65\x74\x54\x61\x67\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x6f\x74\x68\x54\x61\x67\x3d\x6f\x74\x68\x49\x73\x41\x72\x72\x3f\x61\x72\x72\x61\x79\x54\x61\x67\x3a\x67\x65\x74\x54\x61\x67\x28\x6f\x74\x68\x65\x72\x29\x3b\x6f\x62\x6a\x54\x61\x67\x3d\x6f\x62\x6a\x54\x61\x67\x3d\x3d\x61\x72\x67\x73\x54\x61\x67\x3f\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x3a\x6f\x62\x6a\x54\x61\x67\x3b\x6f\x74\x68\x54\x61\x67\x3d\x6f\x74\x68\x54\x61\x67\x3d\x3d\x61\x72\x67\x73\x54\x61\x67\x3f\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x3a\x6f\x74\x68\x54\x61\x67\x3b\x76\x61\x72\x20\x6f\x62\x6a\x49\x73\x4f\x62\x6a\x3d\x6f\x62\x6a\x54\x61\x67\x3d\x3d\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x2c\x6f\x74\x68\x49\x73\x4f\x62\x6a\x3d\x6f\x74\x68\x54\x61\x67\x3d\x3d\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x2c\x69\x73\x53\x61\x6d\x65\x54\x61\x67\x3d\x6f\x62\x6a\x54\x61\x67\x3d\x3d\x6f\x74\x68\x54\x61\x67\x3b\x69\x66\x28\x69\x73\x53\x61\x6d\x65\x54\x61\x67\x26\x26\x69\x73\x42\x75\x66\x66\x65\x72\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x69\x66\x28\x21\x69\x73\x42\x75\x66\x66\x65\x72\x28\x6f\x74\x68\x65\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x6f\x62\x6a\x49\x73\x41\x72\x72\x3d\x74\x72\x75\x65\x3b\x6f\x62\x6a\x49\x73\x4f\x62\x6a\x3d\x66\x61\x6c\x73\x65\x7d\x69\x66\x28\x69\x73\x53\x61\x6d\x65\x54\x61\x67\x26\x26\x21\x6f\x62\x6a\x49\x73\x4f\x62\x6a\x29\x7b\x73\x74\x61\x63\x6b\x7c\x7c\x28\x73\x74\x61\x63\x6b\x3d\x6e\x65\x77\x20\x53\x74\x61\x63\x6b\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x49\x73\x41\x72\x72\x7c\x7c\x69\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x65\x63\x74\x29\x3f\x65\x71\x75\x61\x6c\x41\x72\x72\x61\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x65\x72\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x2c\x73\x74\x61\x63\x6b\x29\x3a\x65\x71\x75\x61\x6c\x42\x79\x54\x61\x67\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x65\x72\x2c\x6f\x62\x6a\x54\x61\x67\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x2c\x73\x74\x61\x63\x6b\x29\x7d\x69\x66\x28\x21\x28\x62\x69\x74\x6d\x61\x73\x6b\x26\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x29\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x49\x73\x57\x72\x61\x70\x70\x65\x64\x3d\x6f\x62\x6a\x49\x73\x4f\x62\x6a\x26\x26\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x2c\x22\x5f\x5f\x77\x72\x61\x70\x70\x65\x64\x5f\x5f\x22\x29\x2c\x6f\x74\x68\x49\x73\x57\x72\x61\x70\x70\x65\x64\x3d\x6f\x74\x68\x49\x73\x4f\x62\x6a\x26\x26\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x74\x68\x65\x72\x2c\x22\x5f\x5f\x77\x72\x61\x70\x70\x65\x64\x5f\x5f\x22\x29\x3b\x69\x66\x28\x6f\x62\x6a\x49\x73\x57\x72\x61\x70\x70\x65\x64\x7c\x7c\x6f\x74\x68\x49\x73\x57\x72\x61\x70\x70\x65\x64\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x55\x6e\x77\x72\x61\x70\x70\x65\x64\x3d\x6f\x62\x6a\x49\x73\x57\x72\x61\x70\x70\x65\x64\x3f\x6f\x62\x6a\x65\x63\x74\x2e\x76\x61\x6c\x75\x65\x28\x29\x3a\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x55\x6e\x77\x72\x61\x70\x70\x65\x64\x3d\x6f\x74\x68\x49\x73\x57\x72\x61\x70\x70\x65\x64\x3f\x6f\x74\x68\x65\x72\x2e\x76\x61\x6c\x75\x65\x28\x29\x3a\x6f\x74\x68\x65\x72\x3b\x73\x74\x61\x63\x6b\x7c\x7c\x28\x73\x74\x61\x63\x6b\x3d\x6e\x65\x77\x20\x53\x74\x61\x63\x6b\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x28\x6f\x62\x6a\x55\x6e\x77\x72\x61\x70\x70\x65\x64\x2c\x6f\x74\x68\x55\x6e\x77\x72\x61\x70\x70\x65\x64\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x73\x74\x61\x63\x6b\x29\x7d\x7d\x69\x66\x28\x21\x69\x73\x53\x61\x6d\x65\x54\x61\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x73\x74\x61\x63\x6b\x7c\x7c\x28\x73\x74\x61\x63\x6b\x3d\x6e\x65\x77\x20\x53\x74\x61\x63\x6b\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x71\x75\x61\x6c\x4f\x62\x6a\x65\x63\x74\x73\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x65\x72\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x2c\x73\x74\x61\x63\x6b\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x44\x65\x65\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x4d\x61\x70\x43\x61\x63\x68\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x39\x29\x2c\x73\x65\x74\x43\x61\x63\x68\x65\x41\x64\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x34\x29\x2c\x73\x65\x74\x43\x61\x63\x68\x65\x48\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x65\x74\x43\x61\x63\x68\x65\x28\x76\x61\x6c\x75\x65\x73\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x76\x61\x6c\x75\x65\x73\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x76\x61\x6c\x75\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x3d\x6e\x65\x77\x20\x4d\x61\x70\x43\x61\x63\x68\x65\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x74\x68\x69\x73\x2e\x61\x64\x64\x28\x76\x61\x6c\x75\x65\x73\x5b\x69\x6e\x64\x65\x78\x5d\x29\x7d\x7d\x53\x65\x74\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x61\x64\x64\x3d\x53\x65\x74\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x70\x75\x73\x68\x3d\x73\x65\x74\x43\x61\x63\x68\x65\x41\x64\x64\x3b\x53\x65\x74\x43\x61\x63\x68\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x3d\x73\x65\x74\x43\x61\x63\x68\x65\x48\x61\x73\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x53\x65\x74\x43\x61\x63\x68\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x48\x41\x53\x48\x5f\x55\x4e\x44\x45\x46\x49\x4e\x45\x44\x3d\x22\x5f\x5f\x6c\x6f\x64\x61\x73\x68\x5f\x68\x61\x73\x68\x5f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x5f\x5f\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x43\x61\x63\x68\x65\x41\x64\x64\x28\x76\x61\x6c\x75\x65\x29\x7b\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x2e\x73\x65\x74\x28\x76\x61\x6c\x75\x65\x2c\x48\x41\x53\x48\x5f\x55\x4e\x44\x45\x46\x49\x4e\x45\x44\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x65\x74\x43\x61\x63\x68\x65\x41\x64\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x43\x61\x63\x68\x65\x48\x61\x73\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x5f\x5f\x64\x61\x74\x61\x5f\x5f\x2e\x68\x61\x73\x28\x76\x61\x6c\x75\x65\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x65\x74\x43\x61\x63\x68\x65\x48\x61\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x61\x63\x68\x65\x48\x61\x73\x28\x63\x61\x63\x68\x65\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x63\x68\x65\x2e\x68\x61\x73\x28\x6b\x65\x79\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x61\x63\x68\x65\x48\x61\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x29\x2c\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x30\x29\x2c\x65\x71\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x31\x29\x2c\x65\x71\x75\x61\x6c\x41\x72\x72\x61\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x38\x29\x2c\x6d\x61\x70\x54\x6f\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x38\x29\x2c\x73\x65\x74\x54\x6f\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x34\x39\x29\x3b\x76\x61\x72\x20\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x3d\x31\x2c\x43\x4f\x4d\x50\x41\x52\x45\x5f\x55\x4e\x4f\x52\x44\x45\x52\x45\x44\x5f\x46\x4c\x41\x47\x3d\x32\x3b\x76\x61\x72\x20\x62\x6f\x6f\x6c\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x42\x6f\x6f\x6c\x65\x61\x6e\x5d\x22\x2c\x64\x61\x74\x65\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x44\x61\x74\x65\x5d\x22\x2c\x65\x72\x72\x6f\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x2c\x6d\x61\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4d\x61\x70\x5d\x22\x2c\x6e\x75\x6d\x62\x65\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4e\x75\x6d\x62\x65\x72\x5d\x22\x2c\x72\x65\x67\x65\x78\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x52\x65\x67\x45\x78\x70\x5d\x22\x2c\x73\x65\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x65\x74\x5d\x22\x2c\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x74\x72\x69\x6e\x67\x5d\x22\x2c\x73\x79\x6d\x62\x6f\x6c\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x79\x6d\x62\x6f\x6c\x5d\x22\x3b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x5d\x22\x2c\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x44\x61\x74\x61\x56\x69\x65\x77\x5d\x22\x3b\x76\x61\x72\x20\x73\x79\x6d\x62\x6f\x6c\x50\x72\x6f\x74\x6f\x3d\x53\x79\x6d\x62\x6f\x6c\x3f\x53\x79\x6d\x62\x6f\x6c\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x73\x79\x6d\x62\x6f\x6c\x56\x61\x6c\x75\x65\x4f\x66\x3d\x73\x79\x6d\x62\x6f\x6c\x50\x72\x6f\x74\x6f\x3f\x73\x79\x6d\x62\x6f\x6c\x50\x72\x6f\x74\x6f\x2e\x76\x61\x6c\x75\x65\x4f\x66\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x71\x75\x61\x6c\x42\x79\x54\x61\x67\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x65\x72\x2c\x74\x61\x67\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x2c\x73\x74\x61\x63\x6b\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x74\x61\x67\x29\x7b\x63\x61\x73\x65\x20\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x3a\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x21\x3d\x6f\x74\x68\x65\x72\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7c\x7c\x6f\x62\x6a\x65\x63\x74\x2e\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x21\x3d\x6f\x74\x68\x65\x72\x2e\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x6f\x62\x6a\x65\x63\x74\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x62\x75\x66\x66\x65\x72\x3b\x6f\x74\x68\x65\x72\x3d\x6f\x74\x68\x65\x72\x2e\x62\x75\x66\x66\x65\x72\x3b\x63\x61\x73\x65\x20\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x54\x61\x67\x3a\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x21\x3d\x6f\x74\x68\x65\x72\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x7c\x7c\x21\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x28\x6e\x65\x77\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x6e\x65\x77\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x28\x6f\x74\x68\x65\x72\x29\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x63\x61\x73\x65\x20\x62\x6f\x6f\x6c\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x64\x61\x74\x65\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x6e\x75\x6d\x62\x65\x72\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x65\x71\x28\x2b\x6f\x62\x6a\x65\x63\x74\x2c\x2b\x6f\x74\x68\x65\x72\x29\x3b\x63\x61\x73\x65\x20\x65\x72\x72\x6f\x72\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x2e\x6e\x61\x6d\x65\x3d\x3d\x6f\x74\x68\x65\x72\x2e\x6e\x61\x6d\x65\x26\x26\x6f\x62\x6a\x65\x63\x74\x2e\x6d\x65\x73\x73\x61\x67\x65\x3d\x3d\x6f\x74\x68\x65\x72\x2e\x6d\x65\x73\x73\x61\x67\x65\x3b\x63\x61\x73\x65\x20\x72\x65\x67\x65\x78\x70\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6f\x74\x68\x65\x72\x2b\x22\x22\x3b\x63\x61\x73\x65\x20\x6d\x61\x70\x54\x61\x67\x3a\x76\x61\x72\x20\x63\x6f\x6e\x76\x65\x72\x74\x3d\x6d\x61\x70\x54\x6f\x41\x72\x72\x61\x79\x3b\x63\x61\x73\x65\x20\x73\x65\x74\x54\x61\x67\x3a\x76\x61\x72\x20\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x3d\x62\x69\x74\x6d\x61\x73\x6b\x26\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x3b\x63\x6f\x6e\x76\x65\x72\x74\x7c\x7c\x28\x63\x6f\x6e\x76\x65\x72\x74\x3d\x73\x65\x74\x54\x6f\x41\x72\x72\x61\x79\x29\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x2e\x73\x69\x7a\x65\x21\x3d\x6f\x74\x68\x65\x72\x2e\x73\x69\x7a\x65\x26\x26\x21\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x73\x74\x61\x63\x6b\x65\x64\x3d\x73\x74\x61\x63\x6b\x2e\x67\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x69\x66\x28\x73\x74\x61\x63\x6b\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x63\x6b\x65\x64\x3d\x3d\x6f\x74\x68\x65\x72\x7d\x62\x69\x74\x6d\x61\x73\x6b\x7c\x3d\x43\x4f\x4d\x50\x41\x52\x45\x5f\x55\x4e\x4f\x52\x44\x45\x52\x45\x44\x5f\x46\x4c\x41\x47\x3b\x73\x74\x61\x63\x6b\x2e\x73\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x65\x72\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x65\x71\x75\x61\x6c\x41\x72\x72\x61\x79\x73\x28\x63\x6f\x6e\x76\x65\x72\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x63\x6f\x6e\x76\x65\x72\x74\x28\x6f\x74\x68\x65\x72\x29\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x2c\x73\x74\x61\x63\x6b\x29\x3b\x73\x74\x61\x63\x6b\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x3b\x63\x61\x73\x65\x20\x73\x79\x6d\x62\x6f\x6c\x54\x61\x67\x3a\x69\x66\x28\x73\x79\x6d\x62\x6f\x6c\x56\x61\x6c\x75\x65\x4f\x66\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x79\x6d\x62\x6f\x6c\x56\x61\x6c\x75\x65\x4f\x66\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x29\x3d\x3d\x73\x79\x6d\x62\x6f\x6c\x56\x61\x6c\x75\x65\x4f\x66\x2e\x63\x61\x6c\x6c\x28\x6f\x74\x68\x65\x72\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x65\x71\x75\x61\x6c\x42\x79\x54\x61\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x70\x54\x6f\x41\x72\x72\x61\x79\x28\x6d\x61\x70\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x72\x65\x73\x75\x6c\x74\x3d\x41\x72\x72\x61\x79\x28\x6d\x61\x70\x2e\x73\x69\x7a\x65\x29\x3b\x6d\x61\x70\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x2c\x6b\x65\x79\x29\x7b\x72\x65\x73\x75\x6c\x74\x5b\x2b\x2b\x69\x6e\x64\x65\x78\x5d\x3d\x5b\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x5d\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x61\x70\x54\x6f\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x54\x6f\x41\x72\x72\x61\x79\x28\x73\x65\x74\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x72\x65\x73\x75\x6c\x74\x3d\x41\x72\x72\x61\x79\x28\x73\x65\x74\x2e\x73\x69\x7a\x65\x29\x3b\x73\x65\x74\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x73\x75\x6c\x74\x5b\x2b\x2b\x69\x6e\x64\x65\x78\x5d\x3d\x76\x61\x6c\x75\x65\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x65\x74\x54\x6f\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x31\x29\x3b\x76\x61\x72\x20\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x3d\x31\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x71\x75\x61\x6c\x4f\x62\x6a\x65\x63\x74\x73\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x65\x72\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x2c\x73\x74\x61\x63\x6b\x29\x7b\x76\x61\x72\x20\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x3d\x62\x69\x74\x6d\x61\x73\x6b\x26\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x2c\x6f\x62\x6a\x50\x72\x6f\x70\x73\x3d\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x6f\x62\x6a\x4c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x50\x72\x6f\x70\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6f\x74\x68\x50\x72\x6f\x70\x73\x3d\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x28\x6f\x74\x68\x65\x72\x29\x2c\x6f\x74\x68\x4c\x65\x6e\x67\x74\x68\x3d\x6f\x74\x68\x50\x72\x6f\x70\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x6f\x62\x6a\x4c\x65\x6e\x67\x74\x68\x21\x3d\x6f\x74\x68\x4c\x65\x6e\x67\x74\x68\x26\x26\x21\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x6f\x62\x6a\x4c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x69\x6e\x64\x65\x78\x2d\x2d\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x3d\x6f\x62\x6a\x50\x72\x6f\x70\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x21\x28\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x3f\x6b\x65\x79\x20\x69\x6e\x20\x6f\x74\x68\x65\x72\x3a\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x74\x68\x65\x72\x2c\x6b\x65\x79\x29\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x76\x61\x72\x20\x73\x74\x61\x63\x6b\x65\x64\x3d\x73\x74\x61\x63\x6b\x2e\x67\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x69\x66\x28\x73\x74\x61\x63\x6b\x65\x64\x26\x26\x73\x74\x61\x63\x6b\x2e\x67\x65\x74\x28\x6f\x74\x68\x65\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x63\x6b\x65\x64\x3d\x3d\x6f\x74\x68\x65\x72\x7d\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x74\x72\x75\x65\x3b\x73\x74\x61\x63\x6b\x2e\x73\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x65\x72\x29\x3b\x73\x74\x61\x63\x6b\x2e\x73\x65\x74\x28\x6f\x74\x68\x65\x72\x2c\x6f\x62\x6a\x65\x63\x74\x29\x3b\x76\x61\x72\x20\x73\x6b\x69\x70\x43\x74\x6f\x72\x3d\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6f\x62\x6a\x4c\x65\x6e\x67\x74\x68\x29\x7b\x6b\x65\x79\x3d\x6f\x62\x6a\x50\x72\x6f\x70\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x76\x61\x72\x20\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x2c\x6f\x74\x68\x56\x61\x6c\x75\x65\x3d\x6f\x74\x68\x65\x72\x5b\x6b\x65\x79\x5d\x3b\x69\x66\x28\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x29\x7b\x76\x61\x72\x20\x63\x6f\x6d\x70\x61\x72\x65\x64\x3d\x69\x73\x50\x61\x72\x74\x69\x61\x6c\x3f\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x28\x6f\x74\x68\x56\x61\x6c\x75\x65\x2c\x6f\x62\x6a\x56\x61\x6c\x75\x65\x2c\x6b\x65\x79\x2c\x6f\x74\x68\x65\x72\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x73\x74\x61\x63\x6b\x29\x3a\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x28\x6f\x62\x6a\x56\x61\x6c\x75\x65\x2c\x6f\x74\x68\x56\x61\x6c\x75\x65\x2c\x6b\x65\x79\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x74\x68\x65\x72\x2c\x73\x74\x61\x63\x6b\x29\x7d\x69\x66\x28\x21\x28\x63\x6f\x6d\x70\x61\x72\x65\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x6f\x74\x68\x56\x61\x6c\x75\x65\x7c\x7c\x65\x71\x75\x61\x6c\x46\x75\x6e\x63\x28\x6f\x62\x6a\x56\x61\x6c\x75\x65\x2c\x6f\x74\x68\x56\x61\x6c\x75\x65\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x73\x74\x61\x63\x6b\x29\x3a\x63\x6f\x6d\x70\x61\x72\x65\x64\x29\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x66\x61\x6c\x73\x65\x3b\x62\x72\x65\x61\x6b\x7d\x73\x6b\x69\x70\x43\x74\x6f\x72\x7c\x7c\x28\x73\x6b\x69\x70\x43\x74\x6f\x72\x3d\x6b\x65\x79\x3d\x3d\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x22\x29\x7d\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x26\x26\x21\x73\x6b\x69\x70\x43\x74\x6f\x72\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x43\x74\x6f\x72\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x2c\x6f\x74\x68\x43\x74\x6f\x72\x3d\x6f\x74\x68\x65\x72\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3b\x69\x66\x28\x6f\x62\x6a\x43\x74\x6f\x72\x21\x3d\x6f\x74\x68\x43\x74\x6f\x72\x26\x26\x28\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x22\x69\x6e\x20\x6f\x62\x6a\x65\x63\x74\x26\x26\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x22\x69\x6e\x20\x6f\x74\x68\x65\x72\x29\x26\x26\x21\x28\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x43\x74\x6f\x72\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x6f\x62\x6a\x43\x74\x6f\x72\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x6f\x62\x6a\x43\x74\x6f\x72\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x6f\x74\x68\x43\x74\x6f\x72\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x6f\x74\x68\x43\x74\x6f\x72\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x6f\x74\x68\x43\x74\x6f\x72\x29\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x66\x61\x6c\x73\x65\x7d\x7d\x73\x74\x61\x63\x6b\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x73\x74\x61\x63\x6b\x5b\x22\x64\x65\x6c\x65\x74\x65\x22\x5d\x28\x6f\x74\x68\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x65\x71\x75\x61\x6c\x4f\x62\x6a\x65\x63\x74\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x72\x72\x61\x79\x46\x69\x6c\x74\x65\x72\x28\x61\x72\x72\x61\x79\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x72\x65\x73\x49\x6e\x64\x65\x78\x3d\x30\x2c\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x70\x72\x65\x64\x69\x63\x61\x74\x65\x28\x76\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x78\x2c\x61\x72\x72\x61\x79\x29\x29\x7b\x72\x65\x73\x75\x6c\x74\x5b\x72\x65\x73\x49\x6e\x64\x65\x78\x2b\x2b\x5d\x3d\x76\x61\x6c\x75\x65\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x72\x72\x61\x79\x46\x69\x6c\x74\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x54\x69\x6d\x65\x73\x28\x6e\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x72\x65\x73\x75\x6c\x74\x3d\x41\x72\x72\x61\x79\x28\x6e\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6e\x29\x7b\x72\x65\x73\x75\x6c\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x69\x74\x65\x72\x61\x74\x65\x65\x28\x69\x6e\x64\x65\x78\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x54\x69\x6d\x65\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x29\x3b\x76\x61\x72\x20\x61\x72\x67\x73\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x5d\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x49\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x3d\x3d\x61\x72\x67\x73\x54\x61\x67\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x49\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x75\x62\x46\x61\x6c\x73\x65\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x74\x75\x62\x46\x61\x6c\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x29\x2c\x69\x73\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x37\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x29\x3b\x76\x61\x72\x20\x61\x72\x67\x73\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x5d\x22\x2c\x61\x72\x72\x61\x79\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x72\x61\x79\x5d\x22\x2c\x62\x6f\x6f\x6c\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x42\x6f\x6f\x6c\x65\x61\x6e\x5d\x22\x2c\x64\x61\x74\x65\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x44\x61\x74\x65\x5d\x22\x2c\x65\x72\x72\x6f\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x2c\x66\x75\x6e\x63\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x75\x6e\x63\x74\x69\x6f\x6e\x5d\x22\x2c\x6d\x61\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4d\x61\x70\x5d\x22\x2c\x6e\x75\x6d\x62\x65\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4e\x75\x6d\x62\x65\x72\x5d\x22\x2c\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4f\x62\x6a\x65\x63\x74\x5d\x22\x2c\x72\x65\x67\x65\x78\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x52\x65\x67\x45\x78\x70\x5d\x22\x2c\x73\x65\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x65\x74\x5d\x22\x2c\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x74\x72\x69\x6e\x67\x5d\x22\x2c\x77\x65\x61\x6b\x4d\x61\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x57\x65\x61\x6b\x4d\x61\x70\x5d\x22\x3b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x5d\x22\x2c\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x44\x61\x74\x61\x56\x69\x65\x77\x5d\x22\x2c\x66\x6c\x6f\x61\x74\x33\x32\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x6c\x6f\x61\x74\x33\x32\x41\x72\x72\x61\x79\x5d\x22\x2c\x66\x6c\x6f\x61\x74\x36\x34\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x6c\x6f\x61\x74\x36\x34\x41\x72\x72\x61\x79\x5d\x22\x2c\x69\x6e\x74\x38\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x49\x6e\x74\x38\x41\x72\x72\x61\x79\x5d\x22\x2c\x69\x6e\x74\x31\x36\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x49\x6e\x74\x31\x36\x41\x72\x72\x61\x79\x5d\x22\x2c\x69\x6e\x74\x33\x32\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x49\x6e\x74\x33\x32\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x38\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x38\x43\x6c\x61\x6d\x70\x65\x64\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x38\x43\x6c\x61\x6d\x70\x65\x64\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x31\x36\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x31\x36\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x33\x32\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x33\x32\x41\x72\x72\x61\x79\x5d\x22\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x3d\x7b\x7d\x3b\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x66\x6c\x6f\x61\x74\x33\x32\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x66\x6c\x6f\x61\x74\x36\x34\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x69\x6e\x74\x38\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x69\x6e\x74\x31\x36\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x69\x6e\x74\x33\x32\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x75\x69\x6e\x74\x38\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x75\x69\x6e\x74\x38\x43\x6c\x61\x6d\x70\x65\x64\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x75\x69\x6e\x74\x31\x36\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x75\x69\x6e\x74\x33\x32\x54\x61\x67\x5d\x3d\x74\x72\x75\x65\x3b\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x61\x72\x67\x73\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x61\x72\x72\x61\x79\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x62\x6f\x6f\x6c\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x64\x61\x74\x65\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x65\x72\x72\x6f\x72\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x66\x75\x6e\x63\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x6d\x61\x70\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x6e\x75\x6d\x62\x65\x72\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x72\x65\x67\x65\x78\x70\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x73\x65\x74\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x5d\x3d\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x77\x65\x61\x6b\x4d\x61\x70\x54\x61\x67\x5d\x3d\x66\x61\x6c\x73\x65\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x49\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x69\x73\x4c\x65\x6e\x67\x74\x68\x28\x76\x61\x6c\x75\x65\x2e\x6c\x65\x6e\x67\x74\x68\x29\x26\x26\x21\x21\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x54\x61\x67\x73\x5b\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x49\x73\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x30\x29\x2c\x6e\x61\x74\x69\x76\x65\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x37\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x21\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x61\x74\x69\x76\x65\x4b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x7d\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x69\x66\x28\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x29\x26\x26\x6b\x65\x79\x21\x3d\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x22\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x4b\x65\x79\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6f\x76\x65\x72\x41\x72\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x36\x29\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x4b\x65\x79\x73\x3d\x6f\x76\x65\x72\x41\x72\x67\x28\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x2c\x4f\x62\x6a\x65\x63\x74\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x61\x74\x69\x76\x65\x4b\x65\x79\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x29\x2c\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x44\x61\x74\x61\x56\x69\x65\x77\x3d\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x28\x72\x6f\x6f\x74\x2c\x22\x44\x61\x74\x61\x56\x69\x65\x77\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x44\x61\x74\x61\x56\x69\x65\x77\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x29\x2c\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x50\x72\x6f\x6d\x69\x73\x65\x3d\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x28\x72\x6f\x6f\x74\x2c\x22\x50\x72\x6f\x6d\x69\x73\x65\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x50\x72\x6f\x6d\x69\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x29\x2c\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x53\x65\x74\x3d\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x28\x72\x6f\x6f\x74\x2c\x22\x53\x65\x74\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x53\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x29\x2c\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x57\x65\x61\x6b\x4d\x61\x70\x3d\x67\x65\x74\x4e\x61\x74\x69\x76\x65\x28\x72\x6f\x6f\x74\x2c\x22\x57\x65\x61\x6b\x4d\x61\x70\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x57\x65\x61\x6b\x4d\x61\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x37\x29\x2c\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4d\x61\x74\x63\x68\x44\x61\x74\x61\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x6b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x72\x65\x73\x75\x6c\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x2d\x2d\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x3d\x72\x65\x73\x75\x6c\x74\x5b\x6c\x65\x6e\x67\x74\x68\x5d\x2c\x76\x61\x6c\x75\x65\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x3b\x72\x65\x73\x75\x6c\x74\x5b\x6c\x65\x6e\x67\x74\x68\x5d\x3d\x5b\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x2c\x69\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x28\x76\x61\x6c\x75\x65\x29\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x67\x65\x74\x4d\x61\x74\x63\x68\x44\x61\x74\x61\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x37\x29\x2c\x67\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x31\x29\x2c\x68\x61\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x36\x29\x2c\x69\x73\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x33\x29\x2c\x69\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x37\x29\x2c\x6d\x61\x74\x63\x68\x65\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x38\x29\x2c\x74\x6f\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x29\x3b\x76\x61\x72\x20\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x3d\x31\x2c\x43\x4f\x4d\x50\x41\x52\x45\x5f\x55\x4e\x4f\x52\x44\x45\x52\x45\x44\x5f\x46\x4c\x41\x47\x3d\x32\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x4d\x61\x74\x63\x68\x65\x73\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x70\x61\x74\x68\x2c\x73\x72\x63\x56\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x69\x73\x4b\x65\x79\x28\x70\x61\x74\x68\x29\x26\x26\x69\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x28\x73\x72\x63\x56\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x74\x63\x68\x65\x73\x53\x74\x72\x69\x63\x74\x43\x6f\x6d\x70\x61\x72\x61\x62\x6c\x65\x28\x74\x6f\x4b\x65\x79\x28\x70\x61\x74\x68\x29\x2c\x73\x72\x63\x56\x61\x6c\x75\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3d\x67\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x73\x72\x63\x56\x61\x6c\x75\x65\x3f\x68\x61\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x29\x3a\x62\x61\x73\x65\x49\x73\x45\x71\x75\x61\x6c\x28\x73\x72\x63\x56\x61\x6c\x75\x65\x2c\x6f\x62\x6a\x56\x61\x6c\x75\x65\x2c\x43\x4f\x4d\x50\x41\x52\x45\x5f\x50\x41\x52\x54\x49\x41\x4c\x5f\x46\x4c\x41\x47\x7c\x43\x4f\x4d\x50\x41\x52\x45\x5f\x55\x4e\x4f\x52\x44\x45\x52\x45\x44\x5f\x46\x4c\x41\x47\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x4d\x61\x74\x63\x68\x65\x73\x50\x72\x6f\x70\x65\x72\x74\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6d\x65\x6d\x6f\x69\x7a\x65\x43\x61\x70\x70\x65\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x35\x29\x3b\x76\x61\x72\x20\x72\x65\x50\x72\x6f\x70\x4e\x61\x6d\x65\x3d\x2f\x5b\x5e\x2e\x5b\x5c\x5d\x5d\x2b\x7c\x5c\x5b\x28\x3f\x3a\x28\x2d\x3f\x5c\x64\x2b\x28\x3f\x3a\x5c\x2e\x5c\x64\x2b\x29\x3f\x29\x7c\x28\x5b\x22\x27\x5d\x29\x28\x28\x3f\x3a\x28\x3f\x21\x5c\x32\x29\x5b\x5e\x5c\x5c\x5d\x7c\x5c\x5c\x2e\x29\x2a\x3f\x29\x5c\x32\x29\x5c\x5d\x7c\x28\x3f\x3d\x28\x3f\x3a\x5c\x2e\x7c\x5c\x5b\x5c\x5d\x29\x28\x3f\x3a\x5c\x2e\x7c\x5c\x5b\x5c\x5d\x7c\x24\x29\x29\x2f\x67\x3b\x76\x61\x72\x20\x72\x65\x45\x73\x63\x61\x70\x65\x43\x68\x61\x72\x3d\x2f\x5c\x5c\x28\x5c\x5c\x29\x3f\x2f\x67\x3b\x76\x61\x72\x20\x73\x74\x72\x69\x6e\x67\x54\x6f\x50\x61\x74\x68\x3d\x6d\x65\x6d\x6f\x69\x7a\x65\x43\x61\x70\x70\x65\x64\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x69\x66\x28\x73\x74\x72\x69\x6e\x67\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x30\x29\x3d\x3d\x3d\x34\x36\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x22\x22\x29\x7d\x73\x74\x72\x69\x6e\x67\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x72\x65\x50\x72\x6f\x70\x4e\x61\x6d\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x61\x74\x63\x68\x2c\x6e\x75\x6d\x62\x65\x72\x2c\x71\x75\x6f\x74\x65\x2c\x73\x75\x62\x53\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x71\x75\x6f\x74\x65\x3f\x73\x75\x62\x53\x74\x72\x69\x6e\x67\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x72\x65\x45\x73\x63\x61\x70\x65\x43\x68\x61\x72\x2c\x22\x24\x31\x22\x29\x3a\x6e\x75\x6d\x62\x65\x72\x7c\x7c\x6d\x61\x74\x63\x68\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x74\x72\x69\x6e\x67\x54\x6f\x50\x61\x74\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6d\x65\x6d\x6f\x69\x7a\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x34\x29\x3b\x76\x61\x72\x20\x4d\x41\x58\x5f\x4d\x45\x4d\x4f\x49\x5a\x45\x5f\x53\x49\x5a\x45\x3d\x35\x30\x30\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x65\x6d\x6f\x69\x7a\x65\x43\x61\x70\x70\x65\x64\x28\x66\x75\x6e\x63\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x6d\x65\x6d\x6f\x69\x7a\x65\x28\x66\x75\x6e\x63\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x69\x66\x28\x63\x61\x63\x68\x65\x2e\x73\x69\x7a\x65\x3d\x3d\x3d\x4d\x41\x58\x5f\x4d\x45\x4d\x4f\x49\x5a\x45\x5f\x53\x49\x5a\x45\x29\x7b\x63\x61\x63\x68\x65\x2e\x63\x6c\x65\x61\x72\x28\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6b\x65\x79\x7d\x29\x3b\x76\x61\x72\x20\x63\x61\x63\x68\x65\x3d\x72\x65\x73\x75\x6c\x74\x2e\x63\x61\x63\x68\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6d\x65\x6d\x6f\x69\x7a\x65\x43\x61\x70\x70\x65\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x48\x61\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x37\x29\x2c\x68\x61\x73\x50\x61\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x68\x61\x73\x50\x61\x74\x68\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x2c\x62\x61\x73\x65\x48\x61\x73\x49\x6e\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x68\x61\x73\x49\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x48\x61\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x6b\x65\x79\x20\x69\x6e\x20\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x48\x61\x73\x49\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x61\x73\x74\x50\x61\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x33\x29\x2c\x69\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x34\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x69\x73\x49\x6e\x64\x65\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x31\x29\x2c\x69\x73\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x37\x29\x2c\x74\x6f\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x50\x61\x74\x68\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x2c\x68\x61\x73\x46\x75\x6e\x63\x29\x7b\x70\x61\x74\x68\x3d\x63\x61\x73\x74\x50\x61\x74\x68\x28\x70\x61\x74\x68\x2c\x6f\x62\x6a\x65\x63\x74\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x70\x61\x74\x68\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x72\x65\x73\x75\x6c\x74\x3d\x66\x61\x6c\x73\x65\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x3d\x74\x6f\x4b\x65\x79\x28\x70\x61\x74\x68\x5b\x69\x6e\x64\x65\x78\x5d\x29\x3b\x69\x66\x28\x21\x28\x72\x65\x73\x75\x6c\x74\x3d\x6f\x62\x6a\x65\x63\x74\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x68\x61\x73\x46\x75\x6e\x63\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x29\x29\x29\x7b\x62\x72\x65\x61\x6b\x7d\x6f\x62\x6a\x65\x63\x74\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x7d\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x7c\x7c\x2b\x2b\x69\x6e\x64\x65\x78\x21\x3d\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x21\x21\x6c\x65\x6e\x67\x74\x68\x26\x26\x69\x73\x4c\x65\x6e\x67\x74\x68\x28\x6c\x65\x6e\x67\x74\x68\x29\x26\x26\x69\x73\x49\x6e\x64\x65\x78\x28\x6b\x65\x79\x2c\x6c\x65\x6e\x67\x74\x68\x29\x26\x26\x28\x69\x73\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x65\x63\x74\x29\x7c\x7c\x69\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x68\x61\x73\x50\x61\x74\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x30\x29\x2c\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x65\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x31\x29\x2c\x69\x73\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x33\x29\x2c\x74\x6f\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x6f\x70\x65\x72\x74\x79\x28\x70\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4b\x65\x79\x28\x70\x61\x74\x68\x29\x3f\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x74\x6f\x4b\x65\x79\x28\x70\x61\x74\x68\x29\x29\x3a\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x65\x70\x28\x70\x61\x74\x68\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x70\x72\x6f\x70\x65\x72\x74\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x65\x70\x28\x70\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x47\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x44\x65\x65\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x46\x69\x6e\x64\x49\x6e\x64\x65\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x33\x29\x2c\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x30\x29\x2c\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x34\x29\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x4d\x61\x78\x3d\x4d\x61\x74\x68\x2e\x6d\x61\x78\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x69\x6e\x64\x49\x6e\x64\x65\x78\x28\x61\x72\x72\x61\x79\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x21\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x28\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x29\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x3c\x30\x29\x7b\x69\x6e\x64\x65\x78\x3d\x6e\x61\x74\x69\x76\x65\x4d\x61\x78\x28\x6c\x65\x6e\x67\x74\x68\x2b\x69\x6e\x64\x65\x78\x2c\x30\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x62\x61\x73\x65\x46\x69\x6e\x64\x49\x6e\x64\x65\x78\x28\x61\x72\x72\x61\x79\x2c\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x28\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x33\x29\x2c\x69\x6e\x64\x65\x78\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x69\x6e\x64\x49\x6e\x64\x65\x78\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x46\x69\x6e\x64\x49\x6e\x64\x65\x78\x28\x61\x72\x72\x61\x79\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x2c\x66\x72\x6f\x6d\x52\x69\x67\x68\x74\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x69\x6e\x64\x65\x78\x3d\x66\x72\x6f\x6d\x49\x6e\x64\x65\x78\x2b\x28\x66\x72\x6f\x6d\x52\x69\x67\x68\x74\x3f\x31\x3a\x2d\x31\x29\x3b\x77\x68\x69\x6c\x65\x28\x66\x72\x6f\x6d\x52\x69\x67\x68\x74\x3f\x69\x6e\x64\x65\x78\x2d\x2d\x3a\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x70\x72\x65\x64\x69\x63\x61\x74\x65\x28\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x69\x6e\x64\x65\x78\x2c\x61\x72\x72\x61\x79\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x64\x65\x78\x7d\x7d\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x46\x69\x6e\x64\x49\x6e\x64\x65\x78\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x46\x69\x6e\x69\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x74\x6f\x46\x69\x6e\x69\x74\x65\x28\x76\x61\x6c\x75\x65\x29\x2c\x72\x65\x6d\x61\x69\x6e\x64\x65\x72\x3d\x72\x65\x73\x75\x6c\x74\x25\x31\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x72\x65\x73\x75\x6c\x74\x3f\x72\x65\x6d\x61\x69\x6e\x64\x65\x72\x3f\x72\x65\x73\x75\x6c\x74\x2d\x72\x65\x6d\x61\x69\x6e\x64\x65\x72\x3a\x72\x65\x73\x75\x6c\x74\x3a\x30\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x6f\x49\x6e\x74\x65\x67\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x4e\x75\x6d\x62\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x30\x29\x3b\x76\x61\x72\x20\x49\x4e\x46\x49\x4e\x49\x54\x59\x3d\x31\x2f\x30\x2c\x4d\x41\x58\x5f\x49\x4e\x54\x45\x47\x45\x52\x3d\x31\x2e\x37\x39\x37\x36\x39\x33\x31\x33\x34\x38\x36\x32\x33\x31\x35\x37\x65\x33\x30\x38\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x46\x69\x6e\x69\x74\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x21\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x30\x3f\x76\x61\x6c\x75\x65\x3a\x30\x7d\x76\x61\x6c\x75\x65\x3d\x74\x6f\x4e\x75\x6d\x62\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x49\x4e\x46\x49\x4e\x49\x54\x59\x7c\x7c\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x2d\x49\x4e\x46\x49\x4e\x49\x54\x59\x29\x7b\x76\x61\x72\x20\x73\x69\x67\x6e\x3d\x76\x61\x6c\x75\x65\x3c\x30\x3f\x2d\x31\x3a\x31\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x69\x67\x6e\x2a\x4d\x41\x58\x5f\x49\x4e\x54\x45\x47\x45\x52\x7d\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x76\x61\x6c\x75\x65\x3f\x76\x61\x6c\x75\x65\x3a\x30\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x6f\x46\x69\x6e\x69\x74\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x53\x6f\x6d\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x39\x29\x2c\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x30\x29\x2c\x62\x61\x73\x65\x53\x6f\x6d\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x37\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x69\x73\x49\x74\x65\x72\x61\x74\x65\x65\x43\x61\x6c\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x6f\x6d\x65\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x67\x75\x61\x72\x64\x29\x7b\x76\x61\x72\x20\x66\x75\x6e\x63\x3d\x69\x73\x41\x72\x72\x61\x79\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x3f\x61\x72\x72\x61\x79\x53\x6f\x6d\x65\x3a\x62\x61\x73\x65\x53\x6f\x6d\x65\x3b\x69\x66\x28\x67\x75\x61\x72\x64\x26\x26\x69\x73\x49\x74\x65\x72\x61\x74\x65\x65\x43\x61\x6c\x6c\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x67\x75\x61\x72\x64\x29\x29\x7b\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x28\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x33\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x6f\x6d\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x45\x61\x63\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x53\x6f\x6d\x65\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3b\x62\x61\x73\x65\x45\x61\x63\x68\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x78\x2c\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x70\x72\x65\x64\x69\x63\x61\x74\x65\x28\x76\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x78\x2c\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x21\x72\x65\x73\x75\x6c\x74\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x21\x21\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x53\x6f\x6d\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x46\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x37\x39\x29\x2c\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x46\x6f\x72\x4f\x77\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x26\x26\x62\x61\x73\x65\x46\x6f\x72\x28\x6f\x62\x6a\x65\x63\x74\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x2c\x6b\x65\x79\x73\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x46\x6f\x72\x4f\x77\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x42\x61\x73\x65\x46\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x30\x29\x3b\x76\x61\x72\x20\x62\x61\x73\x65\x46\x6f\x72\x3d\x63\x72\x65\x61\x74\x65\x42\x61\x73\x65\x46\x6f\x72\x28\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x46\x6f\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x42\x61\x73\x65\x46\x6f\x72\x28\x66\x72\x6f\x6d\x52\x69\x67\x68\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x2c\x6b\x65\x79\x73\x46\x75\x6e\x63\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x69\x74\x65\x72\x61\x62\x6c\x65\x3d\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x70\x72\x6f\x70\x73\x3d\x6b\x65\x79\x73\x46\x75\x6e\x63\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x70\x72\x6f\x70\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x2d\x2d\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x3d\x70\x72\x6f\x70\x73\x5b\x66\x72\x6f\x6d\x52\x69\x67\x68\x74\x3f\x6c\x65\x6e\x67\x74\x68\x3a\x2b\x2b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x69\x74\x65\x72\x61\x74\x65\x65\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x5b\x6b\x65\x79\x5d\x2c\x6b\x65\x79\x2c\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x3d\x3d\x3d\x66\x61\x6c\x73\x65\x29\x7b\x62\x72\x65\x61\x6b\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x72\x65\x61\x74\x65\x42\x61\x73\x65\x46\x6f\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x42\x61\x73\x65\x45\x61\x63\x68\x28\x65\x61\x63\x68\x46\x75\x6e\x63\x2c\x66\x72\x6f\x6d\x52\x69\x67\x68\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x29\x7b\x69\x66\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x7d\x69\x66\x28\x21\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x61\x63\x68\x46\x75\x6e\x63\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x29\x7d\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x69\x6e\x64\x65\x78\x3d\x66\x72\x6f\x6d\x52\x69\x67\x68\x74\x3f\x6c\x65\x6e\x67\x74\x68\x3a\x2d\x31\x2c\x69\x74\x65\x72\x61\x62\x6c\x65\x3d\x4f\x62\x6a\x65\x63\x74\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x3b\x77\x68\x69\x6c\x65\x28\x66\x72\x6f\x6d\x52\x69\x67\x68\x74\x3f\x69\x6e\x64\x65\x78\x2d\x2d\x3a\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x69\x74\x65\x72\x61\x74\x65\x65\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x69\x6e\x64\x65\x78\x2c\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x3d\x3d\x3d\x66\x61\x6c\x73\x65\x29\x7b\x62\x72\x65\x61\x6b\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x72\x65\x61\x74\x65\x42\x61\x73\x65\x45\x61\x63\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x65\x71\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x31\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x32\x29\x2c\x69\x73\x49\x6e\x64\x65\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x31\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x49\x74\x65\x72\x61\x74\x65\x65\x43\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x78\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x74\x79\x70\x65\x6f\x66\x20\x69\x6e\x64\x65\x78\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x22\x6e\x75\x6d\x62\x65\x72\x22\x3f\x69\x73\x41\x72\x72\x61\x79\x4c\x69\x6b\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x26\x26\x69\x73\x49\x6e\x64\x65\x78\x28\x69\x6e\x64\x65\x78\x2c\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3a\x74\x79\x70\x65\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x26\x26\x69\x6e\x64\x65\x78\x20\x69\x6e\x20\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x71\x28\x6f\x62\x6a\x65\x63\x74\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x76\x61\x6c\x75\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x49\x74\x65\x72\x61\x74\x65\x65\x43\x61\x6c\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x63\x65\x73\x73\x29\x7b\x76\x61\x72\x20\x65\x73\x63\x61\x70\x65\x46\x6f\x72\x58\x4d\x4c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x35\x29\x3b\x76\x61\x72\x20\x53\x74\x72\x65\x61\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x36\x29\x2e\x53\x74\x72\x65\x61\x6d\x3b\x76\x61\x72\x20\x44\x45\x46\x41\x55\x4c\x54\x5f\x49\x4e\x44\x45\x4e\x54\x3d\x22\x20\x20\x20\x20\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x78\x6d\x6c\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6f\x70\x74\x69\x6f\x6e\x73\x21\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x6f\x70\x74\x69\x6f\x6e\x73\x3d\x7b\x69\x6e\x64\x65\x6e\x74\x3a\x6f\x70\x74\x69\x6f\x6e\x73\x7d\x7d\x76\x61\x72\x20\x73\x74\x72\x65\x61\x6d\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x73\x74\x72\x65\x61\x6d\x3f\x6e\x65\x77\x20\x53\x74\x72\x65\x61\x6d\x3a\x6e\x75\x6c\x6c\x2c\x6f\x75\x74\x70\x75\x74\x3d\x22\x22\x2c\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x65\x64\x3d\x66\x61\x6c\x73\x65\x2c\x69\x6e\x64\x65\x6e\x74\x3d\x21\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x69\x6e\x64\x65\x6e\x74\x3f\x22\x22\x3a\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x69\x6e\x64\x65\x6e\x74\x3d\x3d\x3d\x74\x72\x75\x65\x3f\x44\x45\x46\x41\x55\x4c\x54\x5f\x49\x4e\x44\x45\x4e\x54\x3a\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x69\x6e\x64\x65\x6e\x74\x2c\x69\x6e\x73\x74\x61\x6e\x74\x3d\x74\x72\x75\x65\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x6c\x61\x79\x28\x66\x75\x6e\x63\x29\x7b\x69\x66\x28\x21\x69\x6e\x73\x74\x61\x6e\x74\x29\x7b\x66\x75\x6e\x63\x28\x29\x7d\x65\x6c\x73\x65\x7b\x70\x72\x6f\x63\x65\x73\x73\x2e\x6e\x65\x78\x74\x54\x69\x63\x6b\x28\x66\x75\x6e\x63\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x70\x70\x65\x6e\x64\x28\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x2c\x6f\x75\x74\x29\x7b\x69\x66\x28\x6f\x75\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x6f\x75\x74\x70\x75\x74\x2b\x3d\x6f\x75\x74\x7d\x69\x66\x28\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x26\x26\x21\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x65\x64\x29\x7b\x73\x74\x72\x65\x61\x6d\x3d\x73\x74\x72\x65\x61\x6d\x7c\x7c\x6e\x65\x77\x20\x53\x74\x72\x65\x61\x6d\x3b\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x65\x64\x3d\x74\x72\x75\x65\x7d\x69\x66\x28\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x26\x26\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x65\x64\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x6f\x75\x74\x70\x75\x74\x3b\x64\x65\x6c\x61\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x73\x74\x72\x65\x61\x6d\x2e\x65\x6d\x69\x74\x28\x22\x64\x61\x74\x61\x22\x2c\x64\x61\x74\x61\x29\x7d\x29\x3b\x6f\x75\x74\x70\x75\x74\x3d\x22\x22\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x64\x64\x28\x76\x61\x6c\x75\x65\x2c\x6c\x61\x73\x74\x29\x7b\x66\x6f\x72\x6d\x61\x74\x28\x61\x70\x70\x65\x6e\x64\x2c\x72\x65\x73\x6f\x6c\x76\x65\x28\x76\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x6e\x74\x2c\x69\x6e\x64\x65\x6e\x74\x3f\x31\x3a\x30\x29\x2c\x6c\x61\x73\x74\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x6e\x64\x28\x29\x7b\x69\x66\x28\x73\x74\x72\x65\x61\x6d\x29\x7b\x76\x61\x72\x20\x64\x61\x74\x61\x3d\x6f\x75\x74\x70\x75\x74\x3b\x64\x65\x6c\x61\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x73\x74\x72\x65\x61\x6d\x2e\x65\x6d\x69\x74\x28\x22\x64\x61\x74\x61\x22\x2c\x64\x61\x74\x61\x29\x3b\x73\x74\x72\x65\x61\x6d\x2e\x65\x6d\x69\x74\x28\x22\x65\x6e\x64\x22\x29\x3b\x73\x74\x72\x65\x61\x6d\x2e\x72\x65\x61\x64\x61\x62\x6c\x65\x3d\x66\x61\x6c\x73\x65\x3b\x73\x74\x72\x65\x61\x6d\x2e\x65\x6d\x69\x74\x28\x22\x63\x6c\x6f\x73\x65\x22\x29\x7d\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x64\x64\x58\x6d\x6c\x44\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x28\x64\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x29\x7b\x76\x61\x72\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x64\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x2e\x65\x6e\x63\x6f\x64\x69\x6e\x67\x7c\x7c\x22\x55\x54\x46\x2d\x38\x22\x2c\x61\x74\x74\x72\x3d\x7b\x76\x65\x72\x73\x69\x6f\x6e\x3a\x22\x31\x2e\x30\x22\x2c\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3a\x65\x6e\x63\x6f\x64\x69\x6e\x67\x7d\x3b\x69\x66\x28\x64\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x2e\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x29\x7b\x61\x74\x74\x72\x2e\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x64\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x2e\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x7d\x61\x64\x64\x28\x7b\x22\x3f\x78\x6d\x6c\x22\x3a\x7b\x5f\x61\x74\x74\x72\x3a\x61\x74\x74\x72\x7d\x7d\x29\x3b\x6f\x75\x74\x70\x75\x74\x3d\x6f\x75\x74\x70\x75\x74\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x22\x2f\x3e\x22\x2c\x22\x3f\x3e\x22\x29\x7d\x64\x65\x6c\x61\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x69\x6e\x73\x74\x61\x6e\x74\x3d\x66\x61\x6c\x73\x65\x7d\x29\x3b\x69\x66\x28\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x64\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x29\x7b\x61\x64\x64\x58\x6d\x6c\x44\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x28\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x64\x65\x63\x6c\x61\x72\x61\x74\x69\x6f\x6e\x29\x7d\x69\x66\x28\x69\x6e\x70\x75\x74\x26\x26\x69\x6e\x70\x75\x74\x2e\x66\x6f\x72\x45\x61\x63\x68\x29\x7b\x69\x6e\x70\x75\x74\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x2c\x69\x29\x7b\x76\x61\x72\x20\x6c\x61\x73\x74\x3b\x69\x66\x28\x69\x2b\x31\x3d\x3d\x3d\x69\x6e\x70\x75\x74\x2e\x6c\x65\x6e\x67\x74\x68\x29\x6c\x61\x73\x74\x3d\x65\x6e\x64\x3b\x61\x64\x64\x28\x76\x61\x6c\x75\x65\x2c\x6c\x61\x73\x74\x29\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x61\x64\x64\x28\x69\x6e\x70\x75\x74\x2c\x65\x6e\x64\x29\x7d\x69\x66\x28\x73\x74\x72\x65\x61\x6d\x29\x7b\x73\x74\x72\x65\x61\x6d\x2e\x72\x65\x61\x64\x61\x62\x6c\x65\x3d\x74\x72\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x65\x61\x6d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x75\x74\x70\x75\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x6c\x65\x6d\x65\x6e\x74\x28\x29\x7b\x76\x61\x72\x20\x69\x6e\x70\x75\x74\x3d\x41\x72\x72\x61\x79\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x73\x6c\x69\x63\x65\x2e\x63\x61\x6c\x6c\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x2c\x73\x65\x6c\x66\x3d\x7b\x5f\x65\x6c\x65\x6d\x3a\x72\x65\x73\x6f\x6c\x76\x65\x28\x69\x6e\x70\x75\x74\x29\x7d\x3b\x73\x65\x6c\x66\x2e\x70\x75\x73\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x6e\x70\x75\x74\x29\x7b\x69\x66\x28\x21\x74\x68\x69\x73\x2e\x61\x70\x70\x65\x6e\x64\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x6e\x6f\x74\x20\x61\x73\x73\x69\x67\x6e\x65\x64\x20\x74\x6f\x20\x61\x20\x70\x61\x72\x65\x6e\x74\x21\x22\x29\x7d\x76\x61\x72\x20\x74\x68\x61\x74\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x6e\x74\x3d\x74\x68\x69\x73\x2e\x5f\x65\x6c\x65\x6d\x2e\x69\x6e\x64\x65\x6e\x74\x3b\x66\x6f\x72\x6d\x61\x74\x28\x74\x68\x69\x73\x2e\x61\x70\x70\x65\x6e\x64\x2c\x72\x65\x73\x6f\x6c\x76\x65\x28\x69\x6e\x70\x75\x74\x2c\x69\x6e\x64\x65\x6e\x74\x2c\x74\x68\x69\x73\x2e\x5f\x65\x6c\x65\x6d\x2e\x69\x63\x6f\x75\x6e\x74\x2b\x28\x69\x6e\x64\x65\x6e\x74\x3f\x31\x3a\x30\x29\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x68\x61\x74\x2e\x61\x70\x70\x65\x6e\x64\x28\x74\x72\x75\x65\x29\x7d\x29\x7d\x3b\x73\x65\x6c\x66\x2e\x63\x6c\x6f\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x6e\x70\x75\x74\x29\x7b\x69\x66\x28\x69\x6e\x70\x75\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x74\x68\x69\x73\x2e\x70\x75\x73\x68\x28\x69\x6e\x70\x75\x74\x29\x7d\x69\x66\x28\x74\x68\x69\x73\x2e\x65\x6e\x64\x29\x7b\x74\x68\x69\x73\x2e\x65\x6e\x64\x28\x29\x7d\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x6c\x66\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x5f\x69\x6e\x64\x65\x6e\x74\x28\x63\x68\x61\x72\x61\x63\x74\x65\x72\x2c\x63\x6f\x75\x6e\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x41\x72\x72\x61\x79\x28\x63\x6f\x75\x6e\x74\x7c\x7c\x30\x29\x2e\x6a\x6f\x69\x6e\x28\x63\x68\x61\x72\x61\x63\x74\x65\x72\x7c\x7c\x22\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x28\x64\x61\x74\x61\x2c\x69\x6e\x64\x65\x6e\x74\x2c\x69\x6e\x64\x65\x6e\x74\x5f\x63\x6f\x75\x6e\x74\x29\x7b\x69\x6e\x64\x65\x6e\x74\x5f\x63\x6f\x75\x6e\x74\x3d\x69\x6e\x64\x65\x6e\x74\x5f\x63\x6f\x75\x6e\x74\x7c\x7c\x30\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x6e\x74\x5f\x73\x70\x61\x63\x65\x73\x3d\x63\x72\x65\x61\x74\x65\x5f\x69\x6e\x64\x65\x6e\x74\x28\x69\x6e\x64\x65\x6e\x74\x2c\x69\x6e\x64\x65\x6e\x74\x5f\x63\x6f\x75\x6e\x74\x29\x3b\x76\x61\x72\x20\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x73\x3d\x64\x61\x74\x61\x3b\x76\x61\x72\x20\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x3d\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x64\x61\x74\x61\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x64\x61\x74\x61\x29\x3b\x6e\x61\x6d\x65\x3d\x6b\x65\x79\x73\x5b\x30\x5d\x3b\x76\x61\x6c\x75\x65\x73\x3d\x64\x61\x74\x61\x5b\x6e\x61\x6d\x65\x5d\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x73\x26\x26\x76\x61\x6c\x75\x65\x73\x2e\x5f\x65\x6c\x65\x6d\x29\x7b\x76\x61\x6c\x75\x65\x73\x2e\x5f\x65\x6c\x65\x6d\x2e\x6e\x61\x6d\x65\x3d\x6e\x61\x6d\x65\x3b\x76\x61\x6c\x75\x65\x73\x2e\x5f\x65\x6c\x65\x6d\x2e\x69\x63\x6f\x75\x6e\x74\x3d\x69\x6e\x64\x65\x6e\x74\x5f\x63\x6f\x75\x6e\x74\x3b\x76\x61\x6c\x75\x65\x73\x2e\x5f\x65\x6c\x65\x6d\x2e\x69\x6e\x64\x65\x6e\x74\x3d\x69\x6e\x64\x65\x6e\x74\x3b\x76\x61\x6c\x75\x65\x73\x2e\x5f\x65\x6c\x65\x6d\x2e\x69\x6e\x64\x65\x6e\x74\x73\x3d\x69\x6e\x64\x65\x6e\x74\x5f\x73\x70\x61\x63\x65\x73\x3b\x76\x61\x6c\x75\x65\x73\x2e\x5f\x65\x6c\x65\x6d\x2e\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x3d\x76\x61\x6c\x75\x65\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x73\x2e\x5f\x65\x6c\x65\x6d\x7d\x7d\x76\x61\x72\x20\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x3d\x5b\x5d\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x69\x73\x53\x74\x72\x69\x6e\x67\x43\x6f\x6e\x74\x65\x6e\x74\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x5f\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x28\x6f\x62\x6a\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x6f\x62\x6a\x29\x3b\x6b\x65\x79\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x61\x74\x74\x72\x69\x62\x75\x74\x65\x28\x6b\x65\x79\x2c\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x29\x29\x7d\x29\x7d\x73\x77\x69\x74\x63\x68\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x73\x29\x7b\x63\x61\x73\x65\x22\x6f\x62\x6a\x65\x63\x74\x22\x3a\x69\x66\x28\x76\x61\x6c\x75\x65\x73\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x62\x72\x65\x61\x6b\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x73\x2e\x5f\x61\x74\x74\x72\x29\x7b\x67\x65\x74\x5f\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x28\x76\x61\x6c\x75\x65\x73\x2e\x5f\x61\x74\x74\x72\x29\x7d\x69\x66\x28\x76\x61\x6c\x75\x65\x73\x2e\x5f\x63\x64\x61\x74\x61\x29\x7b\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x70\x75\x73\x68\x28\x28\x22\x3c\x21\x5b\x43\x44\x41\x54\x41\x5b\x22\x2b\x76\x61\x6c\x75\x65\x73\x2e\x5f\x63\x64\x61\x74\x61\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5c\x5d\x5c\x5d\x3e\x2f\x67\x2c\x22\x5d\x5d\x5d\x5d\x3e\x3c\x21\x5b\x43\x44\x41\x54\x41\x5b\x3e\x22\x29\x2b\x22\x5d\x5d\x3e\x22\x29\x7d\x69\x66\x28\x76\x61\x6c\x75\x65\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x29\x7b\x69\x73\x53\x74\x72\x69\x6e\x67\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x66\x61\x6c\x73\x65\x3b\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x70\x75\x73\x68\x28\x22\x22\x29\x3b\x76\x61\x6c\x75\x65\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x76\x61\x72\x20\x5f\x6e\x61\x6d\x65\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x76\x61\x6c\x75\x65\x29\x5b\x30\x5d\x3b\x69\x66\x28\x5f\x6e\x61\x6d\x65\x3d\x3d\x22\x5f\x61\x74\x74\x72\x22\x29\x7b\x67\x65\x74\x5f\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x28\x76\x61\x6c\x75\x65\x2e\x5f\x61\x74\x74\x72\x29\x7d\x65\x6c\x73\x65\x7b\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x70\x75\x73\x68\x28\x72\x65\x73\x6f\x6c\x76\x65\x28\x76\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x6e\x74\x2c\x69\x6e\x64\x65\x6e\x74\x5f\x63\x6f\x75\x6e\x74\x2b\x31\x29\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x70\x6f\x70\x28\x29\x3b\x69\x73\x53\x74\x72\x69\x6e\x67\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x74\x72\x75\x65\x3b\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x70\x75\x73\x68\x28\x65\x73\x63\x61\x70\x65\x46\x6f\x72\x58\x4d\x4c\x28\x76\x61\x6c\x75\x65\x29\x29\x7d\x7d\x29\x3b\x69\x66\x28\x21\x69\x73\x53\x74\x72\x69\x6e\x67\x43\x6f\x6e\x74\x65\x6e\x74\x29\x7b\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x70\x75\x73\x68\x28\x22\x22\x29\x7d\x7d\x62\x72\x65\x61\x6b\x3b\x64\x65\x66\x61\x75\x6c\x74\x3a\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x70\x75\x73\x68\x28\x65\x73\x63\x61\x70\x65\x46\x6f\x72\x58\x4d\x4c\x28\x76\x61\x6c\x75\x65\x73\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x7b\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x3a\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x2c\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x3a\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x3a\x63\x6f\x6e\x74\x65\x6e\x74\x2c\x69\x63\x6f\x75\x6e\x74\x3a\x69\x6e\x64\x65\x6e\x74\x5f\x63\x6f\x75\x6e\x74\x2c\x69\x6e\x64\x65\x6e\x74\x73\x3a\x69\x6e\x64\x65\x6e\x74\x5f\x73\x70\x61\x63\x65\x73\x2c\x69\x6e\x64\x65\x6e\x74\x3a\x69\x6e\x64\x65\x6e\x74\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x6f\x72\x6d\x61\x74\x28\x61\x70\x70\x65\x6e\x64\x2c\x65\x6c\x65\x6d\x2c\x65\x6e\x64\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x65\x6c\x65\x6d\x21\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x70\x70\x65\x6e\x64\x28\x66\x61\x6c\x73\x65\x2c\x65\x6c\x65\x6d\x29\x7d\x76\x61\x72\x20\x6c\x65\x6e\x3d\x65\x6c\x65\x6d\x2e\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x3f\x31\x3a\x65\x6c\x65\x6d\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x72\x6f\x63\x65\x65\x64\x28\x29\x7b\x77\x68\x69\x6c\x65\x28\x65\x6c\x65\x6d\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x65\x6c\x65\x6d\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x73\x68\x69\x66\x74\x28\x29\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x63\x6f\x6e\x74\x69\x6e\x75\x65\x3b\x69\x66\x28\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x28\x76\x61\x6c\x75\x65\x29\x29\x72\x65\x74\x75\x72\x6e\x3b\x66\x6f\x72\x6d\x61\x74\x28\x61\x70\x70\x65\x6e\x64\x2c\x76\x61\x6c\x75\x65\x29\x7d\x61\x70\x70\x65\x6e\x64\x28\x66\x61\x6c\x73\x65\x2c\x28\x6c\x65\x6e\x3e\x31\x3f\x65\x6c\x65\x6d\x2e\x69\x6e\x64\x65\x6e\x74\x73\x3a\x22\x22\x29\x2b\x28\x65\x6c\x65\x6d\x2e\x6e\x61\x6d\x65\x3f\x22\x3c\x2f\x22\x2b\x65\x6c\x65\x6d\x2e\x6e\x61\x6d\x65\x2b\x22\x3e\x22\x3a\x22\x22\x29\x2b\x28\x65\x6c\x65\x6d\x2e\x69\x6e\x64\x65\x6e\x74\x26\x26\x21\x65\x6e\x64\x3f\x22\x5c\x6e\x22\x3a\x22\x22\x29\x29\x3b\x69\x66\x28\x65\x6e\x64\x29\x7b\x65\x6e\x64\x28\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x76\x61\x6c\x75\x65\x2e\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x29\x7b\x76\x61\x6c\x75\x65\x2e\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x2e\x61\x70\x70\x65\x6e\x64\x3d\x61\x70\x70\x65\x6e\x64\x3b\x76\x61\x6c\x75\x65\x2e\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x2e\x65\x6e\x64\x3d\x70\x72\x6f\x63\x65\x65\x64\x3b\x76\x61\x6c\x75\x65\x2e\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x3d\x66\x61\x6c\x73\x65\x3b\x61\x70\x70\x65\x6e\x64\x28\x74\x72\x75\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x61\x70\x70\x65\x6e\x64\x28\x66\x61\x6c\x73\x65\x2c\x65\x6c\x65\x6d\x2e\x69\x6e\x64\x65\x6e\x74\x73\x2b\x28\x65\x6c\x65\x6d\x2e\x6e\x61\x6d\x65\x3f\x22\x3c\x22\x2b\x65\x6c\x65\x6d\x2e\x6e\x61\x6d\x65\x3a\x22\x22\x29\x2b\x28\x65\x6c\x65\x6d\x2e\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x22\x20\x22\x2b\x65\x6c\x65\x6d\x2e\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x2e\x6a\x6f\x69\x6e\x28\x22\x20\x22\x29\x3a\x22\x22\x29\x2b\x28\x6c\x65\x6e\x3f\x65\x6c\x65\x6d\x2e\x6e\x61\x6d\x65\x3f\x22\x3e\x22\x3a\x22\x22\x3a\x65\x6c\x65\x6d\x2e\x6e\x61\x6d\x65\x3f\x22\x2f\x3e\x22\x3a\x22\x22\x29\x2b\x28\x65\x6c\x65\x6d\x2e\x69\x6e\x64\x65\x6e\x74\x26\x26\x6c\x65\x6e\x3e\x31\x3f\x22\x5c\x6e\x22\x3a\x22\x22\x29\x29\x3b\x69\x66\x28\x21\x6c\x65\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x70\x70\x65\x6e\x64\x28\x66\x61\x6c\x73\x65\x2c\x65\x6c\x65\x6d\x2e\x69\x6e\x64\x65\x6e\x74\x3f\x22\x5c\x6e\x22\x3a\x22\x22\x29\x7d\x69\x66\x28\x21\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x28\x65\x6c\x65\x6d\x29\x29\x7b\x70\x72\x6f\x63\x65\x65\x64\x28\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x74\x74\x72\x69\x62\x75\x74\x65\x28\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6b\x65\x79\x2b\x22\x3d\x22\x2b\x27\x22\x27\x2b\x65\x73\x63\x61\x70\x65\x46\x6f\x72\x58\x4d\x4c\x28\x76\x61\x6c\x75\x65\x29\x2b\x27\x22\x27\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x78\x6d\x6c\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x65\x6c\x65\x6d\x65\x6e\x74\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x45\x6c\x65\x6d\x65\x6e\x74\x3d\x65\x6c\x65\x6d\x65\x6e\x74\x7d\x29\x2e\x63\x61\x6c\x6c\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x38\x34\x29\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x63\x65\x73\x73\x3d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x7d\x3b\x76\x61\x72\x20\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x3b\x76\x61\x72\x20\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x61\x75\x6c\x74\x53\x65\x74\x54\x69\x6d\x6f\x75\x74\x28\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x20\x68\x61\x73\x20\x6e\x6f\x74\x20\x62\x65\x65\x6e\x20\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x66\x61\x75\x6c\x74\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x28\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x63\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x20\x68\x61\x73\x20\x6e\x6f\x74\x20\x62\x65\x65\x6e\x20\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7d\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x72\x79\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x3d\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x7d\x65\x6c\x73\x65\x7b\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x3d\x64\x65\x66\x61\x75\x6c\x74\x53\x65\x74\x54\x69\x6d\x6f\x75\x74\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x3d\x64\x65\x66\x61\x75\x6c\x74\x53\x65\x74\x54\x69\x6d\x6f\x75\x74\x7d\x74\x72\x79\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x63\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x3d\x63\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x7d\x65\x6c\x73\x65\x7b\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x3d\x64\x65\x66\x61\x75\x6c\x74\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x3d\x64\x65\x66\x61\x75\x6c\x74\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x7d\x7d\x29\x28\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x75\x6e\x54\x69\x6d\x65\x6f\x75\x74\x28\x66\x75\x6e\x29\x7b\x69\x66\x28\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x3d\x3d\x3d\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x66\x75\x6e\x2c\x30\x29\x7d\x69\x66\x28\x28\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x3d\x3d\x3d\x64\x65\x66\x61\x75\x6c\x74\x53\x65\x74\x54\x69\x6d\x6f\x75\x74\x7c\x7c\x21\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x29\x26\x26\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x29\x7b\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x3d\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x66\x75\x6e\x2c\x30\x29\x7d\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x66\x75\x6e\x2c\x30\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x2e\x63\x61\x6c\x6c\x28\x6e\x75\x6c\x6c\x2c\x66\x75\x6e\x2c\x30\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x63\x68\x65\x64\x53\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x66\x75\x6e\x2c\x30\x29\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x75\x6e\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x28\x6d\x61\x72\x6b\x65\x72\x29\x7b\x69\x66\x28\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x3d\x3d\x3d\x63\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x28\x6d\x61\x72\x6b\x65\x72\x29\x7d\x69\x66\x28\x28\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x3d\x3d\x3d\x64\x65\x66\x61\x75\x6c\x74\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x7c\x7c\x21\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x29\x26\x26\x63\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x29\x7b\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x3d\x63\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x28\x6d\x61\x72\x6b\x65\x72\x29\x7d\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x28\x6d\x61\x72\x6b\x65\x72\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x74\x72\x79\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x2e\x63\x61\x6c\x6c\x28\x6e\x75\x6c\x6c\x2c\x6d\x61\x72\x6b\x65\x72\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x63\x68\x65\x64\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x6d\x61\x72\x6b\x65\x72\x29\x7d\x7d\x7d\x76\x61\x72\x20\x71\x75\x65\x75\x65\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x64\x72\x61\x69\x6e\x69\x6e\x67\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x51\x75\x65\x75\x65\x3b\x76\x61\x72\x20\x71\x75\x65\x75\x65\x49\x6e\x64\x65\x78\x3d\x2d\x31\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x6e\x55\x70\x4e\x65\x78\x74\x54\x69\x63\x6b\x28\x29\x7b\x69\x66\x28\x21\x64\x72\x61\x69\x6e\x69\x6e\x67\x7c\x7c\x21\x63\x75\x72\x72\x65\x6e\x74\x51\x75\x65\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x64\x72\x61\x69\x6e\x69\x6e\x67\x3d\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x63\x75\x72\x72\x65\x6e\x74\x51\x75\x65\x75\x65\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x71\x75\x65\x75\x65\x3d\x63\x75\x72\x72\x65\x6e\x74\x51\x75\x65\x75\x65\x2e\x63\x6f\x6e\x63\x61\x74\x28\x71\x75\x65\x75\x65\x29\x7d\x65\x6c\x73\x65\x7b\x71\x75\x65\x75\x65\x49\x6e\x64\x65\x78\x3d\x2d\x31\x7d\x69\x66\x28\x71\x75\x65\x75\x65\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x64\x72\x61\x69\x6e\x51\x75\x65\x75\x65\x28\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x72\x61\x69\x6e\x51\x75\x65\x75\x65\x28\x29\x7b\x69\x66\x28\x64\x72\x61\x69\x6e\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x76\x61\x72\x20\x74\x69\x6d\x65\x6f\x75\x74\x3d\x72\x75\x6e\x54\x69\x6d\x65\x6f\x75\x74\x28\x63\x6c\x65\x61\x6e\x55\x70\x4e\x65\x78\x74\x54\x69\x63\x6b\x29\x3b\x64\x72\x61\x69\x6e\x69\x6e\x67\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x6c\x65\x6e\x3d\x71\x75\x65\x75\x65\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x29\x7b\x63\x75\x72\x72\x65\x6e\x74\x51\x75\x65\x75\x65\x3d\x71\x75\x65\x75\x65\x3b\x71\x75\x65\x75\x65\x3d\x5b\x5d\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x71\x75\x65\x75\x65\x49\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x29\x7b\x69\x66\x28\x63\x75\x72\x72\x65\x6e\x74\x51\x75\x65\x75\x65\x29\x7b\x63\x75\x72\x72\x65\x6e\x74\x51\x75\x65\x75\x65\x5b\x71\x75\x65\x75\x65\x49\x6e\x64\x65\x78\x5d\x2e\x72\x75\x6e\x28\x29\x7d\x7d\x71\x75\x65\x75\x65\x49\x6e\x64\x65\x78\x3d\x2d\x31\x3b\x6c\x65\x6e\x3d\x71\x75\x65\x75\x65\x2e\x6c\x65\x6e\x67\x74\x68\x7d\x63\x75\x72\x72\x65\x6e\x74\x51\x75\x65\x75\x65\x3d\x6e\x75\x6c\x6c\x3b\x64\x72\x61\x69\x6e\x69\x6e\x67\x3d\x66\x61\x6c\x73\x65\x3b\x72\x75\x6e\x43\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x28\x74\x69\x6d\x65\x6f\x75\x74\x29\x7d\x70\x72\x6f\x63\x65\x73\x73\x2e\x6e\x65\x78\x74\x54\x69\x63\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x75\x6e\x29\x7b\x76\x61\x72\x20\x61\x72\x67\x73\x3d\x6e\x65\x77\x20\x41\x72\x72\x61\x79\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x29\x3b\x69\x66\x28\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x31\x3b\x69\x3c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x69\x2d\x31\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x69\x5d\x7d\x7d\x71\x75\x65\x75\x65\x2e\x70\x75\x73\x68\x28\x6e\x65\x77\x20\x49\x74\x65\x6d\x28\x66\x75\x6e\x2c\x61\x72\x67\x73\x29\x29\x3b\x69\x66\x28\x71\x75\x65\x75\x65\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x31\x26\x26\x21\x64\x72\x61\x69\x6e\x69\x6e\x67\x29\x7b\x72\x75\x6e\x54\x69\x6d\x65\x6f\x75\x74\x28\x64\x72\x61\x69\x6e\x51\x75\x65\x75\x65\x29\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x49\x74\x65\x6d\x28\x66\x75\x6e\x2c\x61\x72\x72\x61\x79\x29\x7b\x74\x68\x69\x73\x2e\x66\x75\x6e\x3d\x66\x75\x6e\x3b\x74\x68\x69\x73\x2e\x61\x72\x72\x61\x79\x3d\x61\x72\x72\x61\x79\x7d\x49\x74\x65\x6d\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x72\x75\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x68\x69\x73\x2e\x66\x75\x6e\x2e\x61\x70\x70\x6c\x79\x28\x6e\x75\x6c\x6c\x2c\x74\x68\x69\x73\x2e\x61\x72\x72\x61\x79\x29\x7d\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x74\x69\x74\x6c\x65\x3d\x22\x62\x72\x6f\x77\x73\x65\x72\x22\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x62\x72\x6f\x77\x73\x65\x72\x3d\x74\x72\x75\x65\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x65\x6e\x76\x3d\x7b\x7d\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x61\x72\x67\x76\x3d\x5b\x5d\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x22\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x76\x65\x72\x73\x69\x6f\x6e\x73\x3d\x7b\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x6f\x6f\x70\x28\x29\x7b\x7d\x70\x72\x6f\x63\x65\x73\x73\x2e\x6f\x6e\x3d\x6e\x6f\x6f\x70\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x61\x64\x64\x4c\x69\x73\x74\x65\x6e\x65\x72\x3d\x6e\x6f\x6f\x70\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x6f\x6e\x63\x65\x3d\x6e\x6f\x6f\x70\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x6f\x66\x66\x3d\x6e\x6f\x6f\x70\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x72\x65\x6d\x6f\x76\x65\x4c\x69\x73\x74\x65\x6e\x65\x72\x3d\x6e\x6f\x6f\x70\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x72\x65\x6d\x6f\x76\x65\x41\x6c\x6c\x4c\x69\x73\x74\x65\x6e\x65\x72\x73\x3d\x6e\x6f\x6f\x70\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x65\x6d\x69\x74\x3d\x6e\x6f\x6f\x70\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x70\x72\x65\x70\x65\x6e\x64\x4c\x69\x73\x74\x65\x6e\x65\x72\x3d\x6e\x6f\x6f\x70\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x70\x72\x65\x70\x65\x6e\x64\x4f\x6e\x63\x65\x4c\x69\x73\x74\x65\x6e\x65\x72\x3d\x6e\x6f\x6f\x70\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x6c\x69\x73\x74\x65\x6e\x65\x72\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x5d\x7d\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x62\x69\x6e\x64\x69\x6e\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x70\x72\x6f\x63\x65\x73\x73\x2e\x62\x69\x6e\x64\x69\x6e\x67\x20\x69\x73\x20\x6e\x6f\x74\x20\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x22\x29\x7d\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x63\x77\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x2f\x22\x7d\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x63\x68\x64\x69\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x69\x72\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x70\x72\x6f\x63\x65\x73\x73\x2e\x63\x68\x64\x69\x72\x20\x69\x73\x20\x6e\x6f\x74\x20\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x22\x29\x7d\x3b\x70\x72\x6f\x63\x65\x73\x73\x2e\x75\x6d\x61\x73\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x30\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x58\x4d\x4c\x5f\x43\x48\x41\x52\x41\x43\x54\x45\x52\x5f\x4d\x41\x50\x3d\x7b\x22\x26\x22\x3a\x22\x26\x61\x6d\x70\x3b\x22\x2c\x27\x22\x27\x3a\x22\x26\x71\x75\x6f\x74\x3b\x22\x2c\x22\x27\x22\x3a\x22\x26\x61\x70\x6f\x73\x3b\x22\x2c\x22\x3c\x22\x3a\x22\x26\x6c\x74\x3b\x22\x2c\x22\x3e\x22\x3a\x22\x26\x67\x74\x3b\x22\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x73\x63\x61\x70\x65\x46\x6f\x72\x58\x4d\x4c\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x26\x26\x73\x74\x72\x69\x6e\x67\x2e\x72\x65\x70\x6c\x61\x63\x65\x3f\x73\x74\x72\x69\x6e\x67\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x28\x5b\x26\x22\x3c\x3e\x27\x5d\x29\x2f\x67\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x72\x2c\x69\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x58\x4d\x4c\x5f\x43\x48\x41\x52\x41\x43\x54\x45\x52\x5f\x4d\x41\x50\x5b\x69\x74\x65\x6d\x5d\x7d\x29\x3a\x73\x74\x72\x69\x6e\x67\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x65\x73\x63\x61\x70\x65\x46\x6f\x72\x58\x4d\x4c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x73\x74\x72\x65\x61\x6d\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x6d\x65\x6d\x6f\x69\x7a\x65\x65\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x63\x73\x73\x2e\x65\x73\x63\x61\x70\x65\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x50\x72\x65\x73\x65\x74\x41\x70\x69\x73\x3b\x76\x61\x72\x20\x5f\x62\x61\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x30\x29\x3b\x76\x61\x72\x20\x5f\x62\x61\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x62\x61\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x6f\x61\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x32\x29\x3b\x76\x61\x72\x20\x5f\x6f\x61\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x61\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x72\x65\x73\x65\x74\x41\x70\x69\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x5f\x62\x61\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x6f\x61\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x5d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x63\x6f\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3d\x7b\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x7b\x41\x70\x70\x3a\x5f\x61\x70\x70\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x3a\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x3a\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3a\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x34\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x3a\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x75\x74\x68\x73\x3a\x5f\x61\x75\x74\x68\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x41\x75\x74\x68\x49\x74\x65\x6d\x3a\x5f\x61\x75\x74\x68\x49\x74\x65\x6d\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x75\x74\x68\x45\x72\x72\x6f\x72\x3a\x5f\x65\x72\x72\x6f\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6f\x61\x75\x74\x68\x32\x3a\x5f\x6f\x61\x75\x74\x68\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x61\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x3a\x5f\x61\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x62\x61\x73\x69\x63\x41\x75\x74\x68\x3a\x5f\x62\x61\x73\x69\x63\x41\x75\x74\x68\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x63\x6c\x65\x61\x72\x3a\x5f\x63\x6c\x65\x61\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x3a\x5f\x6c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x69\x6e\x66\x6f\x3a\x5f\x69\x6e\x66\x6f\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3a\x5f\x69\x6e\x66\x6f\x34\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3a\x5f\x6a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x3a\x5f\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x3a\x5f\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x3a\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3a\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x3a\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3a\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2e\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x3a\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x65\x78\x65\x63\x75\x74\x65\x3a\x5f\x65\x78\x65\x63\x75\x74\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x68\x65\x61\x64\x65\x72\x73\x3a\x5f\x68\x65\x61\x64\x65\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x65\x72\x72\x6f\x72\x73\x3a\x5f\x65\x72\x72\x6f\x72\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x5f\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6f\x76\x65\x72\x76\x69\x65\x77\x3a\x5f\x6f\x76\x65\x72\x76\x69\x65\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x66\x6f\x6f\x74\x65\x72\x3a\x5f\x66\x6f\x6f\x74\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3a\x5f\x66\x69\x6c\x74\x65\x72\x34\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x3a\x5f\x70\x61\x72\x61\x6d\x42\x6f\x64\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x63\x75\x72\x6c\x3a\x5f\x63\x75\x72\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x73\x63\x68\x65\x6d\x65\x73\x3a\x5f\x73\x63\x68\x65\x6d\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3a\x5f\x73\x63\x68\x65\x6d\x65\x73\x34\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x3a\x5f\x6d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x3a\x5f\x6d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3a\x5f\x6d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4d\x6f\x64\x65\x6c\x3a\x5f\x6d\x6f\x64\x65\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4d\x6f\x64\x65\x6c\x73\x3a\x5f\x6d\x6f\x64\x65\x6c\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x45\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x3a\x5f\x65\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x3a\x5f\x6f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x3a\x5f\x61\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x4d\x6f\x64\x65\x6c\x3a\x5f\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x4d\x6f\x64\x65\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x50\x72\x6f\x70\x65\x72\x74\x79\x3a\x5f\x70\x72\x6f\x70\x65\x72\x74\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x3a\x5f\x74\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3a\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x3a\x5f\x62\x61\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x3a\x5f\x76\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x56\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x3a\x5f\x76\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x52\x6f\x77\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x52\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x3a\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x3a\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x3a\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3a\x5f\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x44\x65\x65\x70\x4c\x69\x6e\x6b\x3a\x5f\x64\x65\x65\x70\x4c\x69\x6e\x6b\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x49\x6e\x66\x6f\x55\x72\x6c\x3a\x5f\x69\x6e\x66\x6f\x2e\x49\x6e\x66\x6f\x55\x72\x6c\x2c\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x3a\x5f\x69\x6e\x66\x6f\x2e\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x2c\x53\x76\x67\x41\x73\x73\x65\x74\x73\x3a\x5f\x73\x76\x67\x41\x73\x73\x65\x74\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x45\x78\x61\x6d\x70\x6c\x65\x3a\x5f\x65\x78\x61\x6d\x70\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x3a\x5f\x65\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x3a\x5f\x65\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x7d\x7d\x3b\x76\x61\x72\x20\x66\x6f\x72\x6d\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3d\x7b\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x4c\x61\x79\x6f\x75\x74\x55\x74\x69\x6c\x73\x7d\x3b\x76\x61\x72\x20\x6a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3d\x7b\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3a\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x7d\x3b\x72\x65\x74\x75\x72\x6e\x5b\x5f\x63\x6f\x6e\x66\x69\x67\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x75\x74\x69\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x6c\x6f\x67\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x76\x69\x65\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x73\x70\x65\x63\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x65\x72\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x6c\x61\x79\x6f\x75\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x73\x61\x6d\x70\x6c\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x63\x6f\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x66\x6f\x72\x6d\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x5f\x73\x77\x61\x67\x67\x65\x72\x4a\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x6a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2c\x5f\x61\x75\x74\x68\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x55\x72\x6c\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x66\x69\x6c\x74\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x5f\x6f\x6e\x43\x6f\x6d\x70\x6c\x65\x74\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x5d\x7d\x3b\x76\x61\x72\x20\x5f\x65\x72\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x72\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x72\x72\x29\x3b\x76\x61\x72\x20\x5f\x6c\x61\x79\x6f\x75\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x38\x29\x3b\x76\x61\x72\x20\x5f\x6c\x61\x79\x6f\x75\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6c\x61\x79\x6f\x75\x74\x29\x3b\x76\x61\x72\x20\x5f\x73\x70\x65\x63\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x34\x29\x3b\x76\x61\x72\x20\x5f\x73\x70\x65\x63\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x70\x65\x63\x29\x3b\x76\x61\x72\x20\x5f\x76\x69\x65\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x76\x69\x65\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x76\x69\x65\x77\x29\x3b\x76\x61\x72\x20\x5f\x73\x61\x6d\x70\x6c\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x61\x6d\x70\x6c\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x61\x6d\x70\x6c\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x6c\x6f\x67\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x34\x29\x3b\x76\x61\x72\x20\x5f\x6c\x6f\x67\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6c\x6f\x67\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x77\x61\x67\x67\x65\x72\x4a\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x77\x61\x67\x67\x65\x72\x4a\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x77\x61\x67\x67\x65\x72\x4a\x73\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x38\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x75\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x32\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x75\x74\x69\x6c\x29\x3b\x76\x61\x72\x20\x5f\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x55\x72\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x33\x29\x3b\x76\x61\x72\x20\x5f\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x55\x72\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x55\x72\x6c\x29\x3b\x76\x61\x72\x20\x5f\x63\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x34\x29\x3b\x76\x61\x72\x20\x5f\x63\x6f\x6e\x66\x69\x67\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6f\x6e\x66\x69\x67\x73\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x38\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x29\x3b\x76\x61\x72\x20\x5f\x66\x69\x6c\x74\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x33\x29\x3b\x76\x61\x72\x20\x5f\x66\x69\x6c\x74\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x66\x69\x6c\x74\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x6f\x6e\x43\x6f\x6d\x70\x6c\x65\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x35\x29\x3b\x76\x61\x72\x20\x5f\x6f\x6e\x43\x6f\x6d\x70\x6c\x65\x74\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x6e\x43\x6f\x6d\x70\x6c\x65\x74\x65\x29\x3b\x76\x61\x72\x20\x5f\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x33\x29\x3b\x76\x61\x72\x20\x5f\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x61\x70\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x34\x29\x3b\x76\x61\x72\x20\x5f\x61\x70\x70\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x70\x70\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x35\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x36\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x33\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x37\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x34\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x33\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x38\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x39\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x75\x74\x68\x73\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x49\x74\x65\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x75\x74\x68\x49\x74\x65\x6d\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x75\x74\x68\x49\x74\x65\x6d\x29\x3b\x76\x61\x72\x20\x5f\x65\x72\x72\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x31\x29\x3b\x76\x61\x72\x20\x5f\x65\x72\x72\x6f\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x72\x72\x6f\x72\x29\x3b\x76\x61\x72\x20\x5f\x61\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x32\x29\x3b\x76\x61\x72\x20\x5f\x61\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x62\x61\x73\x69\x63\x41\x75\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x33\x29\x3b\x76\x61\x72\x20\x5f\x62\x61\x73\x69\x63\x41\x75\x74\x68\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x62\x61\x73\x69\x63\x41\x75\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x61\x6d\x70\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x34\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x61\x6d\x70\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x61\x6d\x70\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x35\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x31\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x6f\x61\x75\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x32\x29\x3b\x76\x61\x72\x20\x5f\x6f\x61\x75\x74\x68\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x61\x75\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x65\x61\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x34\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x65\x61\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x65\x61\x72\x29\x3b\x76\x61\x72\x20\x5f\x6c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x6c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x36\x29\x3b\x76\x61\x72\x20\x5f\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x38\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x39\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x31\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x52\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x34\x29\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x52\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x52\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x35\x29\x3b\x76\x61\x72\x20\x5f\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x37\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x38\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x36\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x65\x63\x75\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x37\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x65\x63\x75\x74\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x65\x63\x75\x74\x65\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x61\x64\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x68\x65\x61\x64\x65\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x68\x65\x61\x64\x65\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x65\x72\x72\x6f\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x39\x29\x3b\x76\x61\x72\x20\x5f\x65\x72\x72\x6f\x72\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x72\x72\x6f\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x30\x29\x3b\x76\x61\x72\x20\x5f\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x3b\x76\x61\x72\x20\x5f\x6f\x76\x65\x72\x76\x69\x65\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x31\x29\x3b\x76\x61\x72\x20\x5f\x6f\x76\x65\x72\x76\x69\x65\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x76\x65\x72\x76\x69\x65\x77\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x66\x6f\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x66\x6f\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x66\x6f\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x66\x6f\x33\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x33\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x66\x6f\x34\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x66\x6f\x33\x29\x3b\x76\x61\x72\x20\x5f\x6a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x34\x29\x3b\x76\x61\x72\x20\x5f\x6a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x66\x6f\x6f\x74\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x35\x29\x3b\x76\x61\x72\x20\x5f\x66\x6f\x6f\x74\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x66\x6f\x6f\x74\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x66\x69\x6c\x74\x65\x72\x33\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x36\x29\x3b\x76\x61\x72\x20\x5f\x66\x69\x6c\x74\x65\x72\x34\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x66\x69\x6c\x74\x65\x72\x33\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x42\x6f\x64\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x37\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x42\x6f\x64\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x61\x72\x61\x6d\x42\x6f\x64\x79\x29\x3b\x76\x61\x72\x20\x5f\x63\x75\x72\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x38\x29\x3b\x76\x61\x72\x20\x5f\x63\x75\x72\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x75\x72\x6c\x29\x3b\x76\x61\x72\x20\x5f\x73\x63\x68\x65\x6d\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x30\x29\x3b\x76\x61\x72\x20\x5f\x73\x63\x68\x65\x6d\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x63\x68\x65\x6d\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x63\x68\x65\x6d\x65\x73\x33\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x31\x29\x3b\x76\x61\x72\x20\x5f\x73\x63\x68\x65\x6d\x65\x73\x34\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x63\x68\x65\x6d\x65\x73\x33\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x32\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x33\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x34\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x39\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x6f\x64\x65\x6c\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x36\x29\x3b\x76\x61\x72\x20\x5f\x6d\x6f\x64\x65\x6c\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x6f\x64\x65\x6c\x73\x29\x3b\x76\x61\x72\x20\x5f\x65\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x37\x29\x3b\x76\x61\x72\x20\x5f\x65\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x38\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x29\x3b\x76\x61\x72\x20\x5f\x61\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x39\x29\x3b\x76\x61\x72\x20\x5f\x61\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x4d\x6f\x64\x65\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x30\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x4d\x6f\x64\x65\x6c\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x69\x6d\x69\x74\x69\x76\x65\x4d\x6f\x64\x65\x6c\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x65\x72\x74\x79\x29\x3b\x76\x61\x72\x20\x5f\x74\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x32\x29\x3b\x76\x61\x72\x20\x5f\x74\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x29\x3b\x76\x61\x72\x20\x5f\x76\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x33\x29\x3b\x76\x61\x72\x20\x5f\x76\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x76\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x76\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x34\x29\x3b\x76\x61\x72\x20\x5f\x76\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x76\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x65\x70\x4c\x69\x6e\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x35\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x65\x70\x4c\x69\x6e\x6b\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x65\x70\x4c\x69\x6e\x6b\x29\x3b\x76\x61\x72\x20\x5f\x73\x76\x67\x41\x73\x73\x65\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x36\x29\x3b\x76\x61\x72\x20\x5f\x73\x76\x67\x41\x73\x73\x65\x74\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x76\x67\x41\x73\x73\x65\x74\x73\x29\x3b\x76\x61\x72\x20\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x30\x29\x3b\x76\x61\x72\x20\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x29\x3b\x76\x61\x72\x20\x5f\x62\x61\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x38\x29\x3b\x76\x61\x72\x20\x5f\x62\x61\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x62\x61\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x6c\x61\x79\x6f\x75\x74\x55\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x38\x29\x3b\x76\x61\x72\x20\x4c\x61\x79\x6f\x75\x74\x55\x74\x69\x6c\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x6c\x61\x79\x6f\x75\x74\x55\x74\x69\x6c\x73\x29\x3b\x76\x61\x72\x20\x5f\x6a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x36\x39\x29\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x5f\x6a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x57\x69\x6c\x64\x63\x61\x72\x64\x28\x6f\x62\x6a\x29\x7b\x69\x66\x28\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x6e\x65\x77\x4f\x62\x6a\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x29\x7b\x69\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x2c\x6b\x65\x79\x29\x29\x6e\x65\x77\x4f\x62\x6a\x5b\x6b\x65\x79\x5d\x3d\x6f\x62\x6a\x5b\x6b\x65\x79\x5d\x7d\x7d\x6e\x65\x77\x4f\x62\x6a\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x6f\x62\x6a\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x4f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x52\x65\x64\x75\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x33\x29\x2c\x62\x61\x73\x65\x45\x61\x63\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x31\x29\x2c\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x30\x29\x2c\x62\x61\x73\x65\x52\x65\x64\x75\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x32\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x64\x75\x63\x65\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x2c\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x29\x7b\x76\x61\x72\x20\x66\x75\x6e\x63\x3d\x69\x73\x41\x72\x72\x61\x79\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x3f\x61\x72\x72\x61\x79\x52\x65\x64\x75\x63\x65\x3a\x62\x61\x73\x65\x52\x65\x64\x75\x63\x65\x2c\x69\x6e\x69\x74\x41\x63\x63\x75\x6d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x33\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x62\x61\x73\x65\x49\x74\x65\x72\x61\x74\x65\x65\x28\x69\x74\x65\x72\x61\x74\x65\x65\x2c\x34\x29\x2c\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x2c\x69\x6e\x69\x74\x41\x63\x63\x75\x6d\x2c\x62\x61\x73\x65\x45\x61\x63\x68\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x64\x75\x63\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x52\x65\x64\x75\x63\x65\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x2c\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x2c\x69\x6e\x69\x74\x41\x63\x63\x75\x6d\x2c\x65\x61\x63\x68\x46\x75\x6e\x63\x29\x7b\x65\x61\x63\x68\x46\x75\x6e\x63\x28\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x78\x2c\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x7b\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x3d\x69\x6e\x69\x74\x41\x63\x63\x75\x6d\x3f\x28\x69\x6e\x69\x74\x41\x63\x63\x75\x6d\x3d\x66\x61\x6c\x73\x65\x2c\x76\x61\x6c\x75\x65\x29\x3a\x69\x74\x65\x72\x61\x74\x65\x65\x28\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x2c\x76\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x78\x2c\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x63\x63\x75\x6d\x75\x6c\x61\x74\x6f\x72\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x52\x65\x64\x75\x63\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x34\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x35\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x41\x72\x72\x61\x79\x2e\x66\x72\x6f\x6d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x29\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x76\x61\x72\x20\x74\x6f\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x29\x3b\x76\x61\x72\x20\x63\x61\x6c\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x31\x29\x3b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x49\x74\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x32\x29\x3b\x76\x61\x72\x20\x74\x6f\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x33\x29\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x36\x29\x3b\x76\x61\x72\x20\x67\x65\x74\x49\x74\x65\x72\x46\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x34\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x33\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x29\x7b\x41\x72\x72\x61\x79\x2e\x66\x72\x6f\x6d\x28\x69\x74\x65\x72\x29\x7d\x29\x2c\x22\x41\x72\x72\x61\x79\x22\x2c\x7b\x66\x72\x6f\x6d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x28\x61\x72\x72\x61\x79\x4c\x69\x6b\x65\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x61\x72\x72\x61\x79\x4c\x69\x6b\x65\x29\x3b\x76\x61\x72\x20\x43\x3d\x74\x79\x70\x65\x6f\x66\x20\x74\x68\x69\x73\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x74\x68\x69\x73\x3a\x41\x72\x72\x61\x79\x3b\x76\x61\x72\x20\x61\x4c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x6d\x61\x70\x66\x6e\x3d\x61\x4c\x65\x6e\x3e\x31\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x6d\x61\x70\x70\x69\x6e\x67\x3d\x6d\x61\x70\x66\x6e\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x30\x3b\x76\x61\x72\x20\x69\x74\x65\x72\x46\x6e\x3d\x67\x65\x74\x49\x74\x65\x72\x46\x6e\x28\x4f\x29\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x2c\x72\x65\x73\x75\x6c\x74\x2c\x73\x74\x65\x70\x2c\x69\x74\x65\x72\x61\x74\x6f\x72\x3b\x69\x66\x28\x6d\x61\x70\x70\x69\x6e\x67\x29\x6d\x61\x70\x66\x6e\x3d\x63\x74\x78\x28\x6d\x61\x70\x66\x6e\x2c\x61\x4c\x65\x6e\x3e\x32\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x32\x29\x3b\x69\x66\x28\x69\x74\x65\x72\x46\x6e\x21\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x21\x28\x43\x3d\x3d\x41\x72\x72\x61\x79\x26\x26\x69\x73\x41\x72\x72\x61\x79\x49\x74\x65\x72\x28\x69\x74\x65\x72\x46\x6e\x29\x29\x29\x7b\x66\x6f\x72\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x3d\x69\x74\x65\x72\x46\x6e\x2e\x63\x61\x6c\x6c\x28\x4f\x29\x2c\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x43\x3b\x21\x28\x73\x74\x65\x70\x3d\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x6e\x65\x78\x74\x28\x29\x29\x2e\x64\x6f\x6e\x65\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x63\x72\x65\x61\x74\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x72\x65\x73\x75\x6c\x74\x2c\x69\x6e\x64\x65\x78\x2c\x6d\x61\x70\x70\x69\x6e\x67\x3f\x63\x61\x6c\x6c\x28\x69\x74\x65\x72\x61\x74\x6f\x72\x2c\x6d\x61\x70\x66\x6e\x2c\x5b\x73\x74\x65\x70\x2e\x76\x61\x6c\x75\x65\x2c\x69\x6e\x64\x65\x78\x5d\x2c\x74\x72\x75\x65\x29\x3a\x73\x74\x65\x70\x2e\x76\x61\x6c\x75\x65\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x6c\x65\x6e\x67\x74\x68\x3d\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x4f\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x66\x6f\x72\x28\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x43\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x6c\x65\x6e\x67\x74\x68\x3e\x69\x6e\x64\x65\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x63\x72\x65\x61\x74\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x72\x65\x73\x75\x6c\x74\x2c\x69\x6e\x64\x65\x78\x2c\x6d\x61\x70\x70\x69\x6e\x67\x3f\x6d\x61\x70\x66\x6e\x28\x4f\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x69\x6e\x64\x65\x78\x29\x3a\x4f\x5b\x69\x6e\x64\x65\x78\x5d\x29\x7d\x7d\x72\x65\x73\x75\x6c\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x69\x6e\x64\x65\x78\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x69\x6e\x64\x65\x78\x2c\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x69\x6e\x64\x65\x78\x20\x69\x6e\x20\x6f\x62\x6a\x65\x63\x74\x29\x24\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x66\x28\x6f\x62\x6a\x65\x63\x74\x2c\x69\x6e\x64\x65\x78\x2c\x63\x72\x65\x61\x74\x65\x44\x65\x73\x63\x28\x30\x2c\x76\x61\x6c\x75\x65\x29\x29\x3b\x65\x6c\x73\x65\x20\x6f\x62\x6a\x65\x63\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x76\x61\x6c\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x37\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x39\x38\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x31\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x32\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x50\x72\x6f\x6d\x69\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x4c\x49\x42\x52\x41\x52\x59\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x31\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x29\x3b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x35\x29\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x76\x61\x72\x20\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x29\x3b\x76\x61\x72\x20\x61\x6e\x49\x6e\x73\x74\x61\x6e\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x37\x29\x3b\x76\x61\x72\x20\x66\x6f\x72\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x35\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x37\x29\x3b\x76\x61\x72\x20\x74\x61\x73\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x38\x29\x2e\x73\x65\x74\x3b\x76\x61\x72\x20\x6d\x69\x63\x72\x6f\x74\x61\x73\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x30\x29\x28\x29\x3b\x76\x61\x72\x20\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x4d\x6f\x64\x75\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x38\x29\x3b\x76\x61\x72\x20\x70\x65\x72\x66\x6f\x72\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x39\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x30\x29\x3b\x76\x61\x72\x20\x50\x52\x4f\x4d\x49\x53\x45\x3d\x22\x50\x72\x6f\x6d\x69\x73\x65\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x3b\x76\x61\x72\x20\x70\x72\x6f\x63\x65\x73\x73\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x70\x72\x6f\x63\x65\x73\x73\x3b\x76\x61\x72\x20\x24\x50\x72\x6f\x6d\x69\x73\x65\x3d\x67\x6c\x6f\x62\x61\x6c\x5b\x50\x52\x4f\x4d\x49\x53\x45\x5d\x3b\x76\x61\x72\x20\x69\x73\x4e\x6f\x64\x65\x3d\x63\x6c\x61\x73\x73\x6f\x66\x28\x70\x72\x6f\x63\x65\x73\x73\x29\x3d\x3d\x22\x70\x72\x6f\x63\x65\x73\x73\x22\x3b\x76\x61\x72\x20\x65\x6d\x70\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x7d\x3b\x76\x61\x72\x20\x49\x6e\x74\x65\x72\x6e\x61\x6c\x2c\x6e\x65\x77\x47\x65\x6e\x65\x72\x69\x63\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2c\x4f\x77\x6e\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2c\x57\x72\x61\x70\x70\x65\x72\x3b\x76\x61\x72\x20\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x47\x65\x6e\x65\x72\x69\x63\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x4d\x6f\x64\x75\x6c\x65\x2e\x66\x3b\x76\x61\x72\x20\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x3d\x21\x21\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x72\x79\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x24\x50\x72\x6f\x6d\x69\x73\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x31\x29\x3b\x76\x61\x72\x20\x46\x61\x6b\x65\x50\x72\x6f\x6d\x69\x73\x65\x3d\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x7b\x7d\x29\x5b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x73\x70\x65\x63\x69\x65\x73\x22\x29\x5d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x29\x7b\x65\x78\x65\x63\x28\x65\x6d\x70\x74\x79\x2c\x65\x6d\x70\x74\x79\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x28\x69\x73\x4e\x6f\x64\x65\x7c\x7c\x74\x79\x70\x65\x6f\x66\x20\x50\x72\x6f\x6d\x69\x73\x65\x52\x65\x6a\x65\x63\x74\x69\x6f\x6e\x45\x76\x65\x6e\x74\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x26\x26\x70\x72\x6f\x6d\x69\x73\x65\x2e\x74\x68\x65\x6e\x28\x65\x6d\x70\x74\x79\x29\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x46\x61\x6b\x65\x50\x72\x6f\x6d\x69\x73\x65\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x7d\x28\x29\x3b\x76\x61\x72\x20\x69\x73\x54\x68\x65\x6e\x61\x62\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x29\x7b\x76\x61\x72\x20\x74\x68\x65\x6e\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x26\x26\x74\x79\x70\x65\x6f\x66\x28\x74\x68\x65\x6e\x3d\x69\x74\x2e\x74\x68\x65\x6e\x29\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x74\x68\x65\x6e\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x76\x61\x72\x20\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x2c\x69\x73\x52\x65\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x6e\x29\x72\x65\x74\x75\x72\x6e\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x6e\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x63\x68\x61\x69\x6e\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x63\x3b\x6d\x69\x63\x72\x6f\x74\x61\x73\x6b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x3b\x76\x61\x72\x20\x6f\x6b\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x73\x3d\x3d\x31\x3b\x76\x61\x72\x20\x69\x3d\x30\x3b\x76\x61\x72\x20\x72\x75\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x61\x63\x74\x69\x6f\x6e\x29\x7b\x76\x61\x72\x20\x68\x61\x6e\x64\x6c\x65\x72\x3d\x6f\x6b\x3f\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x6f\x6b\x3a\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x66\x61\x69\x6c\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x3d\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3b\x76\x61\x72\x20\x72\x65\x6a\x65\x63\x74\x3d\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x72\x65\x6a\x65\x63\x74\x3b\x76\x61\x72\x20\x64\x6f\x6d\x61\x69\x6e\x3d\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x64\x6f\x6d\x61\x69\x6e\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x2c\x74\x68\x65\x6e\x2c\x65\x78\x69\x74\x65\x64\x3b\x74\x72\x79\x7b\x69\x66\x28\x68\x61\x6e\x64\x6c\x65\x72\x29\x7b\x69\x66\x28\x21\x6f\x6b\x29\x7b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x3d\x3d\x32\x29\x6f\x6e\x48\x61\x6e\x64\x6c\x65\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x3d\x31\x7d\x69\x66\x28\x68\x61\x6e\x64\x6c\x65\x72\x3d\x3d\x3d\x74\x72\x75\x65\x29\x72\x65\x73\x75\x6c\x74\x3d\x76\x61\x6c\x75\x65\x3b\x65\x6c\x73\x65\x7b\x69\x66\x28\x64\x6f\x6d\x61\x69\x6e\x29\x64\x6f\x6d\x61\x69\x6e\x2e\x65\x6e\x74\x65\x72\x28\x29\x3b\x72\x65\x73\x75\x6c\x74\x3d\x68\x61\x6e\x64\x6c\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x64\x6f\x6d\x61\x69\x6e\x29\x7b\x64\x6f\x6d\x61\x69\x6e\x2e\x65\x78\x69\x74\x28\x29\x3b\x65\x78\x69\x74\x65\x64\x3d\x74\x72\x75\x65\x7d\x7d\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x72\x65\x6a\x65\x63\x74\x28\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x50\x72\x6f\x6d\x69\x73\x65\x2d\x63\x68\x61\x69\x6e\x20\x63\x79\x63\x6c\x65\x22\x29\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x68\x65\x6e\x3d\x69\x73\x54\x68\x65\x6e\x61\x62\x6c\x65\x28\x72\x65\x73\x75\x6c\x74\x29\x29\x7b\x74\x68\x65\x6e\x2e\x63\x61\x6c\x6c\x28\x72\x65\x73\x75\x6c\x74\x2c\x72\x65\x73\x6f\x6c\x76\x65\x2c\x72\x65\x6a\x65\x63\x74\x29\x7d\x65\x6c\x73\x65\x20\x72\x65\x73\x6f\x6c\x76\x65\x28\x72\x65\x73\x75\x6c\x74\x29\x7d\x65\x6c\x73\x65\x20\x72\x65\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x69\x66\x28\x64\x6f\x6d\x61\x69\x6e\x26\x26\x21\x65\x78\x69\x74\x65\x64\x29\x64\x6f\x6d\x61\x69\x6e\x2e\x65\x78\x69\x74\x28\x29\x3b\x72\x65\x6a\x65\x63\x74\x28\x65\x29\x7d\x7d\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x61\x69\x6e\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x69\x29\x72\x75\x6e\x28\x63\x68\x61\x69\x6e\x5b\x69\x2b\x2b\x5d\x29\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x63\x3d\x5b\x5d\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x6e\x3d\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x69\x73\x52\x65\x6a\x65\x63\x74\x26\x26\x21\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x29\x6f\x6e\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7d\x29\x7d\x3b\x76\x61\x72\x20\x6f\x6e\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x74\x61\x73\x6b\x2e\x63\x61\x6c\x6c\x28\x67\x6c\x6f\x62\x61\x6c\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x3b\x76\x61\x72\x20\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x3d\x69\x73\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x2c\x68\x61\x6e\x64\x6c\x65\x72\x2c\x63\x6f\x6e\x73\x6f\x6c\x65\x3b\x69\x66\x28\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x70\x65\x72\x66\x6f\x72\x6d\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x69\x66\x28\x69\x73\x4e\x6f\x64\x65\x29\x7b\x70\x72\x6f\x63\x65\x73\x73\x2e\x65\x6d\x69\x74\x28\x22\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x52\x65\x6a\x65\x63\x74\x69\x6f\x6e\x22\x2c\x76\x61\x6c\x75\x65\x2c\x70\x72\x6f\x6d\x69\x73\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x68\x61\x6e\x64\x6c\x65\x72\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x6f\x6e\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x72\x65\x6a\x65\x63\x74\x69\x6f\x6e\x29\x7b\x68\x61\x6e\x64\x6c\x65\x72\x28\x7b\x70\x72\x6f\x6d\x69\x73\x65\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2c\x72\x65\x61\x73\x6f\x6e\x3a\x76\x61\x6c\x75\x65\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x28\x63\x6f\x6e\x73\x6f\x6c\x65\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x63\x6f\x6e\x73\x6f\x6c\x65\x29\x26\x26\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x29\x7b\x63\x6f\x6e\x73\x6f\x6c\x65\x2e\x65\x72\x72\x6f\x72\x28\x22\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x20\x70\x72\x6f\x6d\x69\x73\x65\x20\x72\x65\x6a\x65\x63\x74\x69\x6f\x6e\x22\x2c\x76\x61\x6c\x75\x65\x29\x7d\x7d\x29\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x3d\x69\x73\x4e\x6f\x64\x65\x7c\x7c\x69\x73\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x3f\x32\x3a\x31\x7d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x61\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x75\x6e\x68\x61\x6e\x64\x6c\x65\x64\x26\x26\x72\x65\x73\x75\x6c\x74\x2e\x65\x29\x74\x68\x72\x6f\x77\x20\x72\x65\x73\x75\x6c\x74\x2e\x76\x7d\x29\x7d\x3b\x76\x61\x72\x20\x69\x73\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x68\x21\x3d\x3d\x31\x26\x26\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x61\x7c\x7c\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x63\x29\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x7d\x3b\x76\x61\x72\x20\x6f\x6e\x48\x61\x6e\x64\x6c\x65\x55\x6e\x68\x61\x6e\x64\x6c\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x74\x61\x73\x6b\x2e\x63\x61\x6c\x6c\x28\x67\x6c\x6f\x62\x61\x6c\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x68\x61\x6e\x64\x6c\x65\x72\x3b\x69\x66\x28\x69\x73\x4e\x6f\x64\x65\x29\x7b\x70\x72\x6f\x63\x65\x73\x73\x2e\x65\x6d\x69\x74\x28\x22\x72\x65\x6a\x65\x63\x74\x69\x6f\x6e\x48\x61\x6e\x64\x6c\x65\x64\x22\x2c\x70\x72\x6f\x6d\x69\x73\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x68\x61\x6e\x64\x6c\x65\x72\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x6f\x6e\x72\x65\x6a\x65\x63\x74\x69\x6f\x6e\x68\x61\x6e\x64\x6c\x65\x64\x29\x7b\x68\x61\x6e\x64\x6c\x65\x72\x28\x7b\x70\x72\x6f\x6d\x69\x73\x65\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2c\x72\x65\x61\x73\x6f\x6e\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x7d\x29\x7d\x7d\x29\x7d\x3b\x76\x61\x72\x20\x24\x72\x65\x6a\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x74\x68\x69\x73\x3b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x64\x29\x72\x65\x74\x75\x72\x6e\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x64\x3d\x74\x72\x75\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x77\x7c\x7c\x70\x72\x6f\x6d\x69\x73\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x3d\x76\x61\x6c\x75\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x73\x3d\x32\x3b\x69\x66\x28\x21\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x61\x29\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x61\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x63\x2e\x73\x6c\x69\x63\x65\x28\x29\x3b\x6e\x6f\x74\x69\x66\x79\x28\x70\x72\x6f\x6d\x69\x73\x65\x2c\x74\x72\x75\x65\x29\x7d\x3b\x76\x61\x72\x20\x24\x72\x65\x73\x6f\x6c\x76\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x74\x68\x65\x6e\x3b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x64\x29\x72\x65\x74\x75\x72\x6e\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x64\x3d\x74\x72\x75\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x77\x7c\x7c\x70\x72\x6f\x6d\x69\x73\x65\x3b\x74\x72\x79\x7b\x69\x66\x28\x70\x72\x6f\x6d\x69\x73\x65\x3d\x3d\x3d\x76\x61\x6c\x75\x65\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x22\x50\x72\x6f\x6d\x69\x73\x65\x20\x63\x61\x6e\x27\x74\x20\x62\x65\x20\x72\x65\x73\x6f\x6c\x76\x65\x64\x20\x69\x74\x73\x65\x6c\x66\x22\x29\x3b\x69\x66\x28\x74\x68\x65\x6e\x3d\x69\x73\x54\x68\x65\x6e\x61\x62\x6c\x65\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x6d\x69\x63\x72\x6f\x74\x61\x73\x6b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x77\x72\x61\x70\x70\x65\x72\x3d\x7b\x5f\x77\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2c\x5f\x64\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x74\x72\x79\x7b\x74\x68\x65\x6e\x2e\x63\x61\x6c\x6c\x28\x76\x61\x6c\x75\x65\x2c\x63\x74\x78\x28\x24\x72\x65\x73\x6f\x6c\x76\x65\x2c\x77\x72\x61\x70\x70\x65\x72\x2c\x31\x29\x2c\x63\x74\x78\x28\x24\x72\x65\x6a\x65\x63\x74\x2c\x77\x72\x61\x70\x70\x65\x72\x2c\x31\x29\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x24\x72\x65\x6a\x65\x63\x74\x2e\x63\x61\x6c\x6c\x28\x77\x72\x61\x70\x70\x65\x72\x2c\x65\x29\x7d\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x76\x3d\x76\x61\x6c\x75\x65\x3b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x5f\x73\x3d\x31\x3b\x6e\x6f\x74\x69\x66\x79\x28\x70\x72\x6f\x6d\x69\x73\x65\x2c\x66\x61\x6c\x73\x65\x29\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x24\x72\x65\x6a\x65\x63\x74\x2e\x63\x61\x6c\x6c\x28\x7b\x5f\x77\x3a\x70\x72\x6f\x6d\x69\x73\x65\x2c\x5f\x64\x3a\x66\x61\x6c\x73\x65\x7d\x2c\x65\x29\x7d\x7d\x3b\x69\x66\x28\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x29\x7b\x24\x50\x72\x6f\x6d\x69\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x72\x6f\x6d\x69\x73\x65\x28\x65\x78\x65\x63\x75\x74\x6f\x72\x29\x7b\x61\x6e\x49\x6e\x73\x74\x61\x6e\x63\x65\x28\x74\x68\x69\x73\x2c\x24\x50\x72\x6f\x6d\x69\x73\x65\x2c\x50\x52\x4f\x4d\x49\x53\x45\x2c\x22\x5f\x68\x22\x29\x3b\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x65\x63\x75\x74\x6f\x72\x29\x3b\x49\x6e\x74\x65\x72\x6e\x61\x6c\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x29\x3b\x74\x72\x79\x7b\x65\x78\x65\x63\x75\x74\x6f\x72\x28\x63\x74\x78\x28\x24\x72\x65\x73\x6f\x6c\x76\x65\x2c\x74\x68\x69\x73\x2c\x31\x29\x2c\x63\x74\x78\x28\x24\x72\x65\x6a\x65\x63\x74\x2c\x74\x68\x69\x73\x2c\x31\x29\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x29\x7b\x24\x72\x65\x6a\x65\x63\x74\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x65\x72\x72\x29\x7d\x7d\x3b\x49\x6e\x74\x65\x72\x6e\x61\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x72\x6f\x6d\x69\x73\x65\x28\x65\x78\x65\x63\x75\x74\x6f\x72\x29\x7b\x74\x68\x69\x73\x2e\x5f\x63\x3d\x5b\x5d\x3b\x74\x68\x69\x73\x2e\x5f\x61\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x69\x73\x2e\x5f\x73\x3d\x30\x3b\x74\x68\x69\x73\x2e\x5f\x64\x3d\x66\x61\x6c\x73\x65\x3b\x74\x68\x69\x73\x2e\x5f\x76\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x69\x73\x2e\x5f\x68\x3d\x30\x3b\x74\x68\x69\x73\x2e\x5f\x6e\x3d\x66\x61\x6c\x73\x65\x7d\x3b\x49\x6e\x74\x65\x72\x6e\x61\x6c\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x39\x29\x28\x24\x50\x72\x6f\x6d\x69\x73\x65\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x7b\x74\x68\x65\x6e\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x68\x65\x6e\x28\x6f\x6e\x46\x75\x6c\x66\x69\x6c\x6c\x65\x64\x2c\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x29\x7b\x76\x61\x72\x20\x72\x65\x61\x63\x74\x69\x6f\x6e\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x24\x50\x72\x6f\x6d\x69\x73\x65\x29\x29\x3b\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x6f\x6b\x3d\x74\x79\x70\x65\x6f\x66\x20\x6f\x6e\x46\x75\x6c\x66\x69\x6c\x6c\x65\x64\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3f\x6f\x6e\x46\x75\x6c\x66\x69\x6c\x6c\x65\x64\x3a\x74\x72\x75\x65\x3b\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x66\x61\x69\x6c\x3d\x74\x79\x70\x65\x6f\x66\x20\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x3b\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x64\x6f\x6d\x61\x69\x6e\x3d\x69\x73\x4e\x6f\x64\x65\x3f\x70\x72\x6f\x63\x65\x73\x73\x2e\x64\x6f\x6d\x61\x69\x6e\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x69\x73\x2e\x5f\x63\x2e\x70\x75\x73\x68\x28\x72\x65\x61\x63\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x5f\x61\x29\x74\x68\x69\x73\x2e\x5f\x61\x2e\x70\x75\x73\x68\x28\x72\x65\x61\x63\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x5f\x73\x29\x6e\x6f\x74\x69\x66\x79\x28\x74\x68\x69\x73\x2c\x66\x61\x6c\x73\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x61\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x2c\x63\x61\x74\x63\x68\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x74\x68\x65\x6e\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x6f\x6e\x52\x65\x6a\x65\x63\x74\x65\x64\x29\x7d\x7d\x29\x3b\x4f\x77\x6e\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x6e\x65\x77\x20\x49\x6e\x74\x65\x72\x6e\x61\x6c\x3b\x74\x68\x69\x73\x2e\x70\x72\x6f\x6d\x69\x73\x65\x3d\x70\x72\x6f\x6d\x69\x73\x65\x3b\x74\x68\x69\x73\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3d\x63\x74\x78\x28\x24\x72\x65\x73\x6f\x6c\x76\x65\x2c\x70\x72\x6f\x6d\x69\x73\x65\x2c\x31\x29\x3b\x74\x68\x69\x73\x2e\x72\x65\x6a\x65\x63\x74\x3d\x63\x74\x78\x28\x24\x72\x65\x6a\x65\x63\x74\x2c\x70\x72\x6f\x6d\x69\x73\x65\x2c\x31\x29\x7d\x3b\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x4d\x6f\x64\x75\x6c\x65\x2e\x66\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x43\x3d\x3d\x3d\x24\x50\x72\x6f\x6d\x69\x73\x65\x7c\x7c\x43\x3d\x3d\x3d\x57\x72\x61\x70\x70\x65\x72\x3f\x6e\x65\x77\x20\x4f\x77\x6e\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x3a\x6e\x65\x77\x47\x65\x6e\x65\x72\x69\x63\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x7d\x7d\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x47\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x57\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x2c\x7b\x50\x72\x6f\x6d\x69\x73\x65\x3a\x24\x50\x72\x6f\x6d\x69\x73\x65\x7d\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x29\x28\x24\x50\x72\x6f\x6d\x69\x73\x65\x2c\x50\x52\x4f\x4d\x49\x53\x45\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x31\x29\x28\x50\x52\x4f\x4d\x49\x53\x45\x29\x3b\x57\x72\x61\x70\x70\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x5b\x50\x52\x4f\x4d\x49\x53\x45\x5d\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x2c\x50\x52\x4f\x4d\x49\x53\x45\x2c\x7b\x72\x65\x6a\x65\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6a\x65\x63\x74\x28\x72\x29\x7b\x76\x61\x72\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x24\x24\x72\x65\x6a\x65\x63\x74\x3d\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x6a\x65\x63\x74\x3b\x24\x24\x72\x65\x6a\x65\x63\x74\x28\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x7d\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x28\x4c\x49\x42\x52\x41\x52\x59\x7c\x7c\x21\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x29\x2c\x50\x52\x4f\x4d\x49\x53\x45\x2c\x7b\x72\x65\x73\x6f\x6c\x76\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x28\x78\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x28\x4c\x49\x42\x52\x41\x52\x59\x26\x26\x74\x68\x69\x73\x3d\x3d\x3d\x57\x72\x61\x70\x70\x65\x72\x3f\x24\x50\x72\x6f\x6d\x69\x73\x65\x3a\x74\x68\x69\x73\x2c\x78\x29\x7d\x7d\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2a\x21\x28\x55\x53\x45\x5f\x4e\x41\x54\x49\x56\x45\x26\x26\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x33\x29\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x29\x7b\x24\x50\x72\x6f\x6d\x69\x73\x65\x2e\x61\x6c\x6c\x28\x69\x74\x65\x72\x29\x5b\x22\x63\x61\x74\x63\x68\x22\x5d\x28\x65\x6d\x70\x74\x79\x29\x7d\x29\x29\x2c\x50\x52\x4f\x4d\x49\x53\x45\x2c\x7b\x61\x6c\x6c\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x6c\x6c\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x7b\x76\x61\x72\x20\x43\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x3d\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3b\x76\x61\x72\x20\x72\x65\x6a\x65\x63\x74\x3d\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x6a\x65\x63\x74\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x70\x65\x72\x66\x6f\x72\x6d\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x73\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x30\x3b\x76\x61\x72\x20\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x3d\x31\x3b\x66\x6f\x72\x4f\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x66\x61\x6c\x73\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x76\x61\x72\x20\x24\x69\x6e\x64\x65\x78\x3d\x69\x6e\x64\x65\x78\x2b\x2b\x3b\x76\x61\x72\x20\x61\x6c\x72\x65\x61\x64\x79\x43\x61\x6c\x6c\x65\x64\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x6c\x75\x65\x73\x2e\x70\x75\x73\x68\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x3b\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x2b\x2b\x3b\x43\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x61\x6c\x72\x65\x61\x64\x79\x43\x61\x6c\x6c\x65\x64\x29\x72\x65\x74\x75\x72\x6e\x3b\x61\x6c\x72\x65\x61\x64\x79\x43\x61\x6c\x6c\x65\x64\x3d\x74\x72\x75\x65\x3b\x76\x61\x6c\x75\x65\x73\x5b\x24\x69\x6e\x64\x65\x78\x5d\x3d\x76\x61\x6c\x75\x65\x3b\x2d\x2d\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x7c\x7c\x72\x65\x73\x6f\x6c\x76\x65\x28\x76\x61\x6c\x75\x65\x73\x29\x7d\x2c\x72\x65\x6a\x65\x63\x74\x29\x7d\x29\x3b\x2d\x2d\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x7c\x7c\x72\x65\x73\x6f\x6c\x76\x65\x28\x76\x61\x6c\x75\x65\x73\x29\x7d\x29\x3b\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x2e\x65\x29\x72\x65\x6a\x65\x63\x74\x28\x72\x65\x73\x75\x6c\x74\x2e\x76\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x2c\x72\x61\x63\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x61\x63\x65\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x7b\x76\x61\x72\x20\x43\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x28\x43\x29\x3b\x76\x61\x72\x20\x72\x65\x6a\x65\x63\x74\x3d\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x6a\x65\x63\x74\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x70\x65\x72\x66\x6f\x72\x6d\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x6f\x72\x4f\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x66\x61\x6c\x73\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x7b\x43\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x70\x72\x6f\x6d\x69\x73\x65\x29\x2e\x74\x68\x65\x6e\x28\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x73\x6f\x6c\x76\x65\x2c\x72\x65\x6a\x65\x63\x74\x29\x7d\x29\x7d\x29\x3b\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x2e\x65\x29\x72\x65\x6a\x65\x63\x74\x28\x72\x65\x73\x75\x6c\x74\x2e\x76\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x2c\x61\x72\x67\x73\x2c\x74\x68\x61\x74\x29\x7b\x76\x61\x72\x20\x75\x6e\x3d\x74\x68\x61\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x73\x77\x69\x74\x63\x68\x28\x61\x72\x67\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x63\x61\x73\x65\x20\x30\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x29\x3b\x63\x61\x73\x65\x20\x31\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x61\x72\x67\x73\x5b\x30\x5d\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x5b\x30\x5d\x29\x3b\x63\x61\x73\x65\x20\x32\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x29\x3b\x63\x61\x73\x65\x20\x33\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x2c\x61\x72\x67\x73\x5b\x32\x5d\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x2c\x61\x72\x67\x73\x5b\x32\x5d\x29\x3b\x63\x61\x73\x65\x20\x34\x3a\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x3f\x66\x6e\x28\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x2c\x61\x72\x67\x73\x5b\x32\x5d\x2c\x61\x72\x67\x73\x5b\x33\x5d\x29\x3a\x66\x6e\x2e\x63\x61\x6c\x6c\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x2c\x61\x72\x67\x73\x5b\x32\x5d\x2c\x61\x72\x67\x73\x5b\x33\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x6e\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x61\x74\x2c\x61\x72\x67\x73\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x6d\x61\x63\x72\x6f\x74\x61\x73\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x38\x29\x2e\x73\x65\x74\x3b\x76\x61\x72\x20\x4f\x62\x73\x65\x72\x76\x65\x72\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x4d\x75\x74\x61\x74\x69\x6f\x6e\x4f\x62\x73\x65\x72\x76\x65\x72\x7c\x7c\x67\x6c\x6f\x62\x61\x6c\x2e\x57\x65\x62\x4b\x69\x74\x4d\x75\x74\x61\x74\x69\x6f\x6e\x4f\x62\x73\x65\x72\x76\x65\x72\x3b\x76\x61\x72\x20\x70\x72\x6f\x63\x65\x73\x73\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x70\x72\x6f\x63\x65\x73\x73\x3b\x76\x61\x72\x20\x50\x72\x6f\x6d\x69\x73\x65\x3d\x67\x6c\x6f\x62\x61\x6c\x2e\x50\x72\x6f\x6d\x69\x73\x65\x3b\x76\x61\x72\x20\x69\x73\x4e\x6f\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x29\x28\x70\x72\x6f\x63\x65\x73\x73\x29\x3d\x3d\x22\x70\x72\x6f\x63\x65\x73\x73\x22\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x68\x65\x61\x64\x2c\x6c\x61\x73\x74\x2c\x6e\x6f\x74\x69\x66\x79\x3b\x76\x61\x72\x20\x66\x6c\x75\x73\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x70\x61\x72\x65\x6e\x74\x2c\x66\x6e\x3b\x69\x66\x28\x69\x73\x4e\x6f\x64\x65\x26\x26\x28\x70\x61\x72\x65\x6e\x74\x3d\x70\x72\x6f\x63\x65\x73\x73\x2e\x64\x6f\x6d\x61\x69\x6e\x29\x29\x70\x61\x72\x65\x6e\x74\x2e\x65\x78\x69\x74\x28\x29\x3b\x77\x68\x69\x6c\x65\x28\x68\x65\x61\x64\x29\x7b\x66\x6e\x3d\x68\x65\x61\x64\x2e\x66\x6e\x3b\x68\x65\x61\x64\x3d\x68\x65\x61\x64\x2e\x6e\x65\x78\x74\x3b\x74\x72\x79\x7b\x66\x6e\x28\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x69\x66\x28\x68\x65\x61\x64\x29\x6e\x6f\x74\x69\x66\x79\x28\x29\x3b\x65\x6c\x73\x65\x20\x6c\x61\x73\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x72\x6f\x77\x20\x65\x7d\x7d\x6c\x61\x73\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x70\x61\x72\x65\x6e\x74\x29\x70\x61\x72\x65\x6e\x74\x2e\x65\x6e\x74\x65\x72\x28\x29\x7d\x3b\x69\x66\x28\x69\x73\x4e\x6f\x64\x65\x29\x7b\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x70\x72\x6f\x63\x65\x73\x73\x2e\x6e\x65\x78\x74\x54\x69\x63\x6b\x28\x66\x6c\x75\x73\x68\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x4f\x62\x73\x65\x72\x76\x65\x72\x26\x26\x21\x28\x67\x6c\x6f\x62\x61\x6c\x2e\x6e\x61\x76\x69\x67\x61\x74\x6f\x72\x26\x26\x67\x6c\x6f\x62\x61\x6c\x2e\x6e\x61\x76\x69\x67\x61\x74\x6f\x72\x2e\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x29\x29\x7b\x76\x61\x72\x20\x74\x6f\x67\x67\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x6e\x6f\x64\x65\x3d\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x54\x65\x78\x74\x4e\x6f\x64\x65\x28\x22\x22\x29\x3b\x6e\x65\x77\x20\x4f\x62\x73\x65\x72\x76\x65\x72\x28\x66\x6c\x75\x73\x68\x29\x2e\x6f\x62\x73\x65\x72\x76\x65\x28\x6e\x6f\x64\x65\x2c\x7b\x63\x68\x61\x72\x61\x63\x74\x65\x72\x44\x61\x74\x61\x3a\x74\x72\x75\x65\x7d\x29\x3b\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x6e\x6f\x64\x65\x2e\x64\x61\x74\x61\x3d\x74\x6f\x67\x67\x6c\x65\x3d\x21\x74\x6f\x67\x67\x6c\x65\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x50\x72\x6f\x6d\x69\x73\x65\x26\x26\x50\x72\x6f\x6d\x69\x73\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x3d\x50\x72\x6f\x6d\x69\x73\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x29\x3b\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x70\x72\x6f\x6d\x69\x73\x65\x2e\x74\x68\x65\x6e\x28\x66\x6c\x75\x73\x68\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x6e\x6f\x74\x69\x66\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x6d\x61\x63\x72\x6f\x74\x61\x73\x6b\x2e\x63\x61\x6c\x6c\x28\x67\x6c\x6f\x62\x61\x6c\x2c\x66\x6c\x75\x73\x68\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x29\x7b\x76\x61\x72\x20\x74\x61\x73\x6b\x3d\x7b\x66\x6e\x3a\x66\x6e\x2c\x6e\x65\x78\x74\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x3b\x69\x66\x28\x6c\x61\x73\x74\x29\x6c\x61\x73\x74\x2e\x6e\x65\x78\x74\x3d\x74\x61\x73\x6b\x3b\x69\x66\x28\x21\x68\x65\x61\x64\x29\x7b\x68\x65\x61\x64\x3d\x74\x61\x73\x6b\x3b\x6e\x6f\x74\x69\x66\x79\x28\x29\x7d\x6c\x61\x73\x74\x3d\x74\x61\x73\x6b\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x76\x61\x72\x20\x63\x6f\x72\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x37\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x30\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x52\x2c\x22\x50\x72\x6f\x6d\x69\x73\x65\x22\x2c\x7b\x66\x69\x6e\x61\x6c\x6c\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x29\x7b\x76\x61\x72\x20\x43\x3d\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x74\x68\x69\x73\x2c\x63\x6f\x72\x65\x2e\x50\x72\x6f\x6d\x69\x73\x65\x7c\x7c\x67\x6c\x6f\x62\x61\x6c\x2e\x50\x72\x6f\x6d\x69\x73\x65\x29\x3b\x76\x61\x72\x20\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x74\x79\x70\x65\x6f\x66\x20\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x74\x68\x65\x6e\x28\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x78\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x28\x43\x2c\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x28\x29\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x78\x7d\x29\x7d\x3a\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x2c\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x52\x65\x73\x6f\x6c\x76\x65\x28\x43\x2c\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x28\x29\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x68\x72\x6f\x77\x20\x65\x7d\x29\x7d\x3a\x6f\x6e\x46\x69\x6e\x61\x6c\x6c\x79\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x76\x61\x72\x20\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x38\x29\x3b\x76\x61\x72\x20\x70\x65\x72\x66\x6f\x72\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x39\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2c\x22\x50\x72\x6f\x6d\x69\x73\x65\x22\x2c\x7b\x74\x72\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x66\x6e\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x3d\x6e\x65\x77\x50\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x66\x28\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x70\x65\x72\x66\x6f\x72\x6d\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x66\x6e\x29\x3b\x28\x72\x65\x73\x75\x6c\x74\x2e\x65\x3f\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x6a\x65\x63\x74\x3a\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x72\x65\x73\x6f\x6c\x76\x65\x29\x28\x72\x65\x73\x75\x6c\x74\x2e\x76\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x72\x6f\x6d\x69\x73\x65\x43\x61\x70\x61\x62\x69\x6c\x69\x74\x79\x2e\x70\x72\x6f\x6d\x69\x73\x65\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x34\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x67\x65\x6e\x65\x72\x61\x74\x6f\x72\x2d\x72\x75\x6e\x74\x69\x6d\x65\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x6d\x69\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x36\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x6d\x69\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x6d\x69\x73\x65\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x67\x65\x6e\x3d\x66\x6e\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x5f\x70\x72\x6f\x6d\x69\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x72\x65\x73\x6f\x6c\x76\x65\x2c\x72\x65\x6a\x65\x63\x74\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x65\x70\x28\x6b\x65\x79\x2c\x61\x72\x67\x29\x7b\x74\x72\x79\x7b\x76\x61\x72\x20\x69\x6e\x66\x6f\x3d\x67\x65\x6e\x5b\x6b\x65\x79\x5d\x28\x61\x72\x67\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x69\x6e\x66\x6f\x2e\x76\x61\x6c\x75\x65\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x6f\x72\x29\x7b\x72\x65\x6a\x65\x63\x74\x28\x65\x72\x72\x6f\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x7d\x69\x66\x28\x69\x6e\x66\x6f\x2e\x64\x6f\x6e\x65\x29\x7b\x72\x65\x73\x6f\x6c\x76\x65\x28\x76\x61\x6c\x75\x65\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x70\x72\x6f\x6d\x69\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x76\x61\x6c\x75\x65\x29\x2e\x74\x68\x65\x6e\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x73\x74\x65\x70\x28\x22\x6e\x65\x78\x74\x22\x2c\x76\x61\x6c\x75\x65\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x73\x74\x65\x70\x28\x22\x74\x68\x72\x6f\x77\x22\x2c\x65\x72\x72\x29\x7d\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x22\x6e\x65\x78\x74\x22\x29\x7d\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x6c\x6f\x61\x64\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x37\x29\x3b\x76\x61\x72\x20\x64\x75\x6d\x70\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x28\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x46\x75\x6e\x63\x74\x69\x6f\x6e\x20\x22\x2b\x6e\x61\x6d\x65\x2b\x22\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x20\x61\x6e\x64\x20\x63\x61\x6e\x6e\x6f\x74\x20\x62\x65\x20\x75\x73\x65\x64\x2e\x22\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x63\x68\x65\x6d\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x46\x41\x49\x4c\x53\x41\x46\x45\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x30\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x53\x4f\x4e\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x34\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x43\x4f\x52\x45\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x44\x45\x46\x41\x55\x4c\x54\x5f\x53\x41\x46\x45\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x37\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x44\x45\x46\x41\x55\x4c\x54\x5f\x46\x55\x4c\x4c\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x34\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x61\x64\x3d\x6c\x6f\x61\x64\x65\x72\x2e\x6c\x6f\x61\x64\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x61\x64\x41\x6c\x6c\x3d\x6c\x6f\x61\x64\x65\x72\x2e\x6c\x6f\x61\x64\x41\x6c\x6c\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x66\x65\x4c\x6f\x61\x64\x3d\x6c\x6f\x61\x64\x65\x72\x2e\x73\x61\x66\x65\x4c\x6f\x61\x64\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x66\x65\x4c\x6f\x61\x64\x41\x6c\x6c\x3d\x6c\x6f\x61\x64\x65\x72\x2e\x73\x61\x66\x65\x4c\x6f\x61\x64\x41\x6c\x6c\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x75\x6d\x70\x3d\x64\x75\x6d\x70\x65\x72\x2e\x64\x75\x6d\x70\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x66\x65\x44\x75\x6d\x70\x3d\x64\x75\x6d\x70\x65\x72\x2e\x73\x61\x66\x65\x44\x75\x6d\x70\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x4d\x49\x4e\x49\x4d\x41\x4c\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x30\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x53\x41\x46\x45\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x37\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x44\x45\x46\x41\x55\x4c\x54\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x34\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x63\x61\x6e\x3d\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x28\x22\x73\x63\x61\x6e\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x70\x61\x72\x73\x65\x3d\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x28\x22\x70\x61\x72\x73\x65\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x63\x6f\x6d\x70\x6f\x73\x65\x3d\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x28\x22\x63\x6f\x6d\x70\x6f\x73\x65\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x61\x64\x64\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x28\x22\x61\x64\x64\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x6f\x6d\x6d\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x29\x3b\x76\x61\x72\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x36\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x38\x29\x3b\x76\x61\x72\x20\x44\x45\x46\x41\x55\x4c\x54\x5f\x53\x41\x46\x45\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x37\x29\x3b\x76\x61\x72\x20\x44\x45\x46\x41\x55\x4c\x54\x5f\x46\x55\x4c\x4c\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x34\x29\x3b\x76\x61\x72\x20\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x76\x61\x72\x20\x43\x4f\x4e\x54\x45\x58\x54\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x3d\x31\x3b\x76\x61\x72\x20\x43\x4f\x4e\x54\x45\x58\x54\x5f\x46\x4c\x4f\x57\x5f\x4f\x55\x54\x3d\x32\x3b\x76\x61\x72\x20\x43\x4f\x4e\x54\x45\x58\x54\x5f\x42\x4c\x4f\x43\x4b\x5f\x49\x4e\x3d\x33\x3b\x76\x61\x72\x20\x43\x4f\x4e\x54\x45\x58\x54\x5f\x42\x4c\x4f\x43\x4b\x5f\x4f\x55\x54\x3d\x34\x3b\x76\x61\x72\x20\x43\x48\x4f\x4d\x50\x49\x4e\x47\x5f\x43\x4c\x49\x50\x3d\x31\x3b\x76\x61\x72\x20\x43\x48\x4f\x4d\x50\x49\x4e\x47\x5f\x53\x54\x52\x49\x50\x3d\x32\x3b\x76\x61\x72\x20\x43\x48\x4f\x4d\x50\x49\x4e\x47\x5f\x4b\x45\x45\x50\x3d\x33\x3b\x76\x61\x72\x20\x50\x41\x54\x54\x45\x52\x4e\x5f\x4e\x4f\x4e\x5f\x50\x52\x49\x4e\x54\x41\x42\x4c\x45\x3d\x2f\x5b\x5c\x78\x30\x30\x2d\x5c\x78\x30\x38\x5c\x78\x30\x42\x5c\x78\x30\x43\x5c\x78\x30\x45\x2d\x5c\x78\x31\x46\x5c\x78\x37\x46\x2d\x5c\x78\x38\x34\x5c\x78\x38\x36\x2d\x5c\x78\x39\x46\x5c\x75\x46\x46\x46\x45\x5c\x75\x46\x46\x46\x46\x5d\x7c\x5b\x5c\x75\x44\x38\x30\x30\x2d\x5c\x75\x44\x42\x46\x46\x5d\x28\x3f\x21\x5b\x5c\x75\x44\x43\x30\x30\x2d\x5c\x75\x44\x46\x46\x46\x5d\x29\x7c\x28\x3f\x3a\x5b\x5e\x5c\x75\x44\x38\x30\x30\x2d\x5c\x75\x44\x42\x46\x46\x5d\x7c\x5e\x29\x5b\x5c\x75\x44\x43\x30\x30\x2d\x5c\x75\x44\x46\x46\x46\x5d\x2f\x3b\x76\x61\x72\x20\x50\x41\x54\x54\x45\x52\x4e\x5f\x4e\x4f\x4e\x5f\x41\x53\x43\x49\x49\x5f\x4c\x49\x4e\x45\x5f\x42\x52\x45\x41\x4b\x53\x3d\x2f\x5b\x5c\x78\x38\x35\x5c\x75\x32\x30\x32\x38\x5c\x75\x32\x30\x32\x39\x5d\x2f\x3b\x76\x61\x72\x20\x50\x41\x54\x54\x45\x52\x4e\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x44\x49\x43\x41\x54\x4f\x52\x53\x3d\x2f\x5b\x2c\x5c\x5b\x5c\x5d\x5c\x7b\x5c\x7d\x5d\x2f\x3b\x76\x61\x72\x20\x50\x41\x54\x54\x45\x52\x4e\x5f\x54\x41\x47\x5f\x48\x41\x4e\x44\x4c\x45\x3d\x2f\x5e\x28\x3f\x3a\x21\x7c\x21\x21\x7c\x21\x5b\x61\x2d\x7a\x5c\x2d\x5d\x2b\x21\x29\x24\x2f\x69\x3b\x76\x61\x72\x20\x50\x41\x54\x54\x45\x52\x4e\x5f\x54\x41\x47\x5f\x55\x52\x49\x3d\x2f\x5e\x28\x3f\x3a\x21\x7c\x5b\x5e\x2c\x5c\x5b\x5c\x5d\x5c\x7b\x5c\x7d\x5d\x29\x28\x3f\x3a\x25\x5b\x30\x2d\x39\x61\x2d\x66\x5d\x7b\x32\x7d\x7c\x5b\x30\x2d\x39\x61\x2d\x7a\x5c\x2d\x23\x3b\x5c\x2f\x5c\x3f\x3a\x40\x26\x3d\x5c\x2b\x5c\x24\x2c\x5f\x5c\x2e\x21\x7e\x5c\x2a\x27\x5c\x28\x5c\x29\x5c\x5b\x5c\x5d\x5d\x29\x2a\x24\x2f\x69\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x5f\x45\x4f\x4c\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x3d\x3d\x3d\x31\x30\x7c\x7c\x63\x3d\x3d\x3d\x31\x33\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x5f\x57\x48\x49\x54\x45\x5f\x53\x50\x41\x43\x45\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x3d\x3d\x3d\x39\x7c\x7c\x63\x3d\x3d\x3d\x33\x32\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x3d\x3d\x3d\x39\x7c\x7c\x63\x3d\x3d\x3d\x33\x32\x7c\x7c\x63\x3d\x3d\x3d\x31\x30\x7c\x7c\x63\x3d\x3d\x3d\x31\x33\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x44\x49\x43\x41\x54\x4f\x52\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x3d\x3d\x3d\x34\x34\x7c\x7c\x63\x3d\x3d\x3d\x39\x31\x7c\x7c\x63\x3d\x3d\x3d\x39\x33\x7c\x7c\x63\x3d\x3d\x3d\x31\x32\x33\x7c\x7c\x63\x3d\x3d\x3d\x31\x32\x35\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x48\x65\x78\x43\x6f\x64\x65\x28\x63\x29\x7b\x76\x61\x72\x20\x6c\x63\x3b\x69\x66\x28\x34\x38\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x35\x37\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x2d\x34\x38\x7d\x6c\x63\x3d\x63\x7c\x33\x32\x3b\x69\x66\x28\x39\x37\x3c\x3d\x6c\x63\x26\x26\x6c\x63\x3c\x3d\x31\x30\x32\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x63\x2d\x39\x37\x2b\x31\x30\x7d\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x73\x63\x61\x70\x65\x64\x48\x65\x78\x4c\x65\x6e\x28\x63\x29\x7b\x69\x66\x28\x63\x3d\x3d\x3d\x31\x32\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x32\x7d\x69\x66\x28\x63\x3d\x3d\x3d\x31\x31\x37\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x34\x7d\x69\x66\x28\x63\x3d\x3d\x3d\x38\x35\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x38\x7d\x72\x65\x74\x75\x72\x6e\x20\x30\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x44\x65\x63\x69\x6d\x61\x6c\x43\x6f\x64\x65\x28\x63\x29\x7b\x69\x66\x28\x34\x38\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x35\x37\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x2d\x34\x38\x7d\x72\x65\x74\x75\x72\x6e\x2d\x31\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x69\x6d\x70\x6c\x65\x45\x73\x63\x61\x70\x65\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x3d\x3d\x3d\x34\x38\x3f\x22\x5c\x30\x22\x3a\x63\x3d\x3d\x3d\x39\x37\x3f\x22\x07\x22\x3a\x63\x3d\x3d\x3d\x39\x38\x3f\x22\x5c\x62\x22\x3a\x63\x3d\x3d\x3d\x31\x31\x36\x3f\x22\x5c\x74\x22\x3a\x63\x3d\x3d\x3d\x39\x3f\x22\x5c\x74\x22\x3a\x63\x3d\x3d\x3d\x31\x31\x30\x3f\x22\x5c\x6e\x22\x3a\x63\x3d\x3d\x3d\x31\x31\x38\x3f\x22\x5c\x76\x22\x3a\x63\x3d\x3d\x3d\x31\x30\x32\x3f\x22\x5c\x66\x22\x3a\x63\x3d\x3d\x3d\x31\x31\x34\x3f\x22\x5c\x72\x22\x3a\x63\x3d\x3d\x3d\x31\x30\x31\x3f\x22\x1b\x22\x3a\x63\x3d\x3d\x3d\x33\x32\x3f\x22\x20\x22\x3a\x63\x3d\x3d\x3d\x33\x34\x3f\x27\x22\x27\x3a\x63\x3d\x3d\x3d\x34\x37\x3f\x22\x2f\x22\x3a\x63\x3d\x3d\x3d\x39\x32\x3f\x22\x5c\x5c\x22\x3a\x63\x3d\x3d\x3d\x37\x38\x3f\x22\xc2\x85\x22\x3a\x63\x3d\x3d\x3d\x39\x35\x3f\x22\xc2\xa0\x22\x3a\x63\x3d\x3d\x3d\x37\x36\x3f\x22\x5c\x75\x32\x30\x32\x38\x22\x3a\x63\x3d\x3d\x3d\x38\x30\x3f\x22\x5c\x75\x32\x30\x32\x39\x22\x3a\x22\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x61\x72\x46\x72\x6f\x6d\x43\x6f\x64\x65\x70\x6f\x69\x6e\x74\x28\x63\x29\x7b\x69\x66\x28\x63\x3c\x3d\x36\x35\x35\x33\x35\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x53\x74\x72\x69\x6e\x67\x2e\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x28\x63\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x53\x74\x72\x69\x6e\x67\x2e\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65\x28\x28\x63\x2d\x36\x35\x35\x33\x36\x3e\x3e\x31\x30\x29\x2b\x35\x35\x32\x39\x36\x2c\x28\x63\x2d\x36\x35\x35\x33\x36\x26\x31\x30\x32\x33\x29\x2b\x35\x36\x33\x32\x30\x29\x7d\x76\x61\x72\x20\x73\x69\x6d\x70\x6c\x65\x45\x73\x63\x61\x70\x65\x43\x68\x65\x63\x6b\x3d\x6e\x65\x77\x20\x41\x72\x72\x61\x79\x28\x32\x35\x36\x29\x3b\x76\x61\x72\x20\x73\x69\x6d\x70\x6c\x65\x45\x73\x63\x61\x70\x65\x4d\x61\x70\x3d\x6e\x65\x77\x20\x41\x72\x72\x61\x79\x28\x32\x35\x36\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x32\x35\x36\x3b\x69\x2b\x2b\x29\x7b\x73\x69\x6d\x70\x6c\x65\x45\x73\x63\x61\x70\x65\x43\x68\x65\x63\x6b\x5b\x69\x5d\x3d\x73\x69\x6d\x70\x6c\x65\x45\x73\x63\x61\x70\x65\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x69\x29\x3f\x31\x3a\x30\x3b\x73\x69\x6d\x70\x6c\x65\x45\x73\x63\x61\x70\x65\x4d\x61\x70\x5b\x69\x5d\x3d\x73\x69\x6d\x70\x6c\x65\x45\x73\x63\x61\x70\x65\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x69\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x74\x61\x74\x65\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x74\x68\x69\x73\x2e\x69\x6e\x70\x75\x74\x3d\x69\x6e\x70\x75\x74\x3b\x74\x68\x69\x73\x2e\x66\x69\x6c\x65\x6e\x61\x6d\x65\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x66\x69\x6c\x65\x6e\x61\x6d\x65\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x3b\x74\x68\x69\x73\x2e\x73\x63\x68\x65\x6d\x61\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x5d\x7c\x7c\x44\x45\x46\x41\x55\x4c\x54\x5f\x46\x55\x4c\x4c\x5f\x53\x43\x48\x45\x4d\x41\x3b\x74\x68\x69\x73\x2e\x6f\x6e\x57\x61\x72\x6e\x69\x6e\x67\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x6f\x6e\x57\x61\x72\x6e\x69\x6e\x67\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x3b\x74\x68\x69\x73\x2e\x6c\x65\x67\x61\x63\x79\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x6c\x65\x67\x61\x63\x79\x22\x5d\x7c\x7c\x66\x61\x6c\x73\x65\x3b\x74\x68\x69\x73\x2e\x6a\x73\x6f\x6e\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x6a\x73\x6f\x6e\x22\x5d\x7c\x7c\x66\x61\x6c\x73\x65\x3b\x74\x68\x69\x73\x2e\x6c\x69\x73\x74\x65\x6e\x65\x72\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x6c\x69\x73\x74\x65\x6e\x65\x72\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x3b\x74\x68\x69\x73\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x54\x79\x70\x65\x73\x3d\x74\x68\x69\x73\x2e\x73\x63\x68\x65\x6d\x61\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x49\x6d\x70\x6c\x69\x63\x69\x74\x3b\x74\x68\x69\x73\x2e\x74\x79\x70\x65\x4d\x61\x70\x3d\x74\x68\x69\x73\x2e\x73\x63\x68\x65\x6d\x61\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x54\x79\x70\x65\x4d\x61\x70\x3b\x74\x68\x69\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x69\x6e\x70\x75\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x74\x68\x69\x73\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x30\x3b\x74\x68\x69\x73\x2e\x6c\x69\x6e\x65\x3d\x30\x3b\x74\x68\x69\x73\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x3d\x30\x3b\x74\x68\x69\x73\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3d\x30\x3b\x74\x68\x69\x73\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x3d\x5b\x5d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x6e\x65\x72\x61\x74\x65\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x6d\x65\x73\x73\x61\x67\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x6d\x65\x73\x73\x61\x67\x65\x2c\x6e\x65\x77\x20\x4d\x61\x72\x6b\x28\x73\x74\x61\x74\x65\x2e\x66\x69\x6c\x65\x6e\x61\x6d\x65\x2c\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x6d\x65\x73\x73\x61\x67\x65\x29\x7b\x74\x68\x72\x6f\x77\x20\x67\x65\x6e\x65\x72\x61\x74\x65\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x6d\x65\x73\x73\x61\x67\x65\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x68\x72\x6f\x77\x57\x61\x72\x6e\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x6d\x65\x73\x73\x61\x67\x65\x29\x7b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6f\x6e\x57\x61\x72\x6e\x69\x6e\x67\x29\x7b\x73\x74\x61\x74\x65\x2e\x6f\x6e\x57\x61\x72\x6e\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x6e\x75\x6c\x6c\x2c\x67\x65\x6e\x65\x72\x61\x74\x65\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x6d\x65\x73\x73\x61\x67\x65\x29\x29\x7d\x7d\x76\x61\x72\x20\x64\x69\x72\x65\x63\x74\x69\x76\x65\x48\x61\x6e\x64\x6c\x65\x72\x73\x3d\x7b\x59\x41\x4d\x4c\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x6e\x64\x6c\x65\x59\x61\x6d\x6c\x44\x69\x72\x65\x63\x74\x69\x76\x65\x28\x73\x74\x61\x74\x65\x2c\x6e\x61\x6d\x65\x2c\x61\x72\x67\x73\x29\x7b\x76\x61\x72\x20\x6d\x61\x74\x63\x68\x2c\x6d\x61\x6a\x6f\x72\x2c\x6d\x69\x6e\x6f\x72\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x76\x65\x72\x73\x69\x6f\x6e\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x64\x75\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x20\x6f\x66\x20\x25\x59\x41\x4d\x4c\x20\x64\x69\x72\x65\x63\x74\x69\x76\x65\x22\x29\x7d\x69\x66\x28\x61\x72\x67\x73\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x31\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x59\x41\x4d\x4c\x20\x64\x69\x72\x65\x63\x74\x69\x76\x65\x20\x61\x63\x63\x65\x70\x74\x73\x20\x65\x78\x61\x63\x74\x6c\x79\x20\x6f\x6e\x65\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x22\x29\x7d\x6d\x61\x74\x63\x68\x3d\x2f\x5e\x28\x5b\x30\x2d\x39\x5d\x2b\x29\x5c\x2e\x28\x5b\x30\x2d\x39\x5d\x2b\x29\x24\x2f\x2e\x65\x78\x65\x63\x28\x61\x72\x67\x73\x5b\x30\x5d\x29\x3b\x69\x66\x28\x6d\x61\x74\x63\x68\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x69\x6c\x6c\x2d\x66\x6f\x72\x6d\x65\x64\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x20\x6f\x66\x20\x74\x68\x65\x20\x59\x41\x4d\x4c\x20\x64\x69\x72\x65\x63\x74\x69\x76\x65\x22\x29\x7d\x6d\x61\x6a\x6f\x72\x3d\x70\x61\x72\x73\x65\x49\x6e\x74\x28\x6d\x61\x74\x63\x68\x5b\x31\x5d\x2c\x31\x30\x29\x3b\x6d\x69\x6e\x6f\x72\x3d\x70\x61\x72\x73\x65\x49\x6e\x74\x28\x6d\x61\x74\x63\x68\x5b\x32\x5d\x2c\x31\x30\x29\x3b\x69\x66\x28\x6d\x61\x6a\x6f\x72\x21\x3d\x3d\x31\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x61\x63\x63\x65\x70\x74\x61\x62\x6c\x65\x20\x59\x41\x4d\x4c\x20\x76\x65\x72\x73\x69\x6f\x6e\x20\x6f\x66\x20\x74\x68\x65\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x22\x29\x7d\x73\x74\x61\x74\x65\x2e\x76\x65\x72\x73\x69\x6f\x6e\x3d\x61\x72\x67\x73\x5b\x30\x5d\x3b\x73\x74\x61\x74\x65\x2e\x63\x68\x65\x63\x6b\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x73\x3d\x6d\x69\x6e\x6f\x72\x3c\x32\x3b\x69\x66\x28\x6d\x69\x6e\x6f\x72\x21\x3d\x3d\x31\x26\x26\x6d\x69\x6e\x6f\x72\x21\x3d\x3d\x32\x29\x7b\x74\x68\x72\x6f\x77\x57\x61\x72\x6e\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x20\x59\x41\x4d\x4c\x20\x76\x65\x72\x73\x69\x6f\x6e\x20\x6f\x66\x20\x74\x68\x65\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x22\x29\x7d\x7d\x2c\x54\x41\x47\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x6e\x64\x6c\x65\x54\x61\x67\x44\x69\x72\x65\x63\x74\x69\x76\x65\x28\x73\x74\x61\x74\x65\x2c\x6e\x61\x6d\x65\x2c\x61\x72\x67\x73\x29\x7b\x76\x61\x72\x20\x68\x61\x6e\x64\x6c\x65\x2c\x70\x72\x65\x66\x69\x78\x3b\x69\x66\x28\x61\x72\x67\x73\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x32\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x54\x41\x47\x20\x64\x69\x72\x65\x63\x74\x69\x76\x65\x20\x61\x63\x63\x65\x70\x74\x73\x20\x65\x78\x61\x63\x74\x6c\x79\x20\x74\x77\x6f\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x22\x29\x7d\x68\x61\x6e\x64\x6c\x65\x3d\x61\x72\x67\x73\x5b\x30\x5d\x3b\x70\x72\x65\x66\x69\x78\x3d\x61\x72\x67\x73\x5b\x31\x5d\x3b\x69\x66\x28\x21\x50\x41\x54\x54\x45\x52\x4e\x5f\x54\x41\x47\x5f\x48\x41\x4e\x44\x4c\x45\x2e\x74\x65\x73\x74\x28\x68\x61\x6e\x64\x6c\x65\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x69\x6c\x6c\x2d\x66\x6f\x72\x6d\x65\x64\x20\x74\x61\x67\x20\x68\x61\x6e\x64\x6c\x65\x20\x28\x66\x69\x72\x73\x74\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x29\x20\x6f\x66\x20\x74\x68\x65\x20\x54\x41\x47\x20\x64\x69\x72\x65\x63\x74\x69\x76\x65\x22\x29\x7d\x69\x66\x28\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x4d\x61\x70\x2c\x68\x61\x6e\x64\x6c\x65\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x27\x74\x68\x65\x72\x65\x20\x69\x73\x20\x61\x20\x70\x72\x65\x76\x69\x6f\x75\x73\x6c\x79\x20\x64\x65\x63\x6c\x61\x72\x65\x64\x20\x73\x75\x66\x66\x69\x78\x20\x66\x6f\x72\x20\x22\x27\x2b\x68\x61\x6e\x64\x6c\x65\x2b\x27\x22\x20\x74\x61\x67\x20\x68\x61\x6e\x64\x6c\x65\x27\x29\x7d\x69\x66\x28\x21\x50\x41\x54\x54\x45\x52\x4e\x5f\x54\x41\x47\x5f\x55\x52\x49\x2e\x74\x65\x73\x74\x28\x70\x72\x65\x66\x69\x78\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x69\x6c\x6c\x2d\x66\x6f\x72\x6d\x65\x64\x20\x74\x61\x67\x20\x70\x72\x65\x66\x69\x78\x20\x28\x73\x65\x63\x6f\x6e\x64\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x29\x20\x6f\x66\x20\x74\x68\x65\x20\x54\x41\x47\x20\x64\x69\x72\x65\x63\x74\x69\x76\x65\x22\x29\x7d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x4d\x61\x70\x5b\x68\x61\x6e\x64\x6c\x65\x5d\x3d\x70\x72\x65\x66\x69\x78\x7d\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x61\x70\x74\x75\x72\x65\x53\x65\x67\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x2c\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x2c\x63\x68\x65\x63\x6b\x4a\x73\x6f\x6e\x29\x7b\x76\x61\x72\x20\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x5f\x6c\x65\x6e\x67\x74\x68\x2c\x5f\x63\x68\x61\x72\x61\x63\x74\x65\x72\x2c\x5f\x72\x65\x73\x75\x6c\x74\x3b\x69\x66\x28\x73\x74\x61\x72\x74\x3c\x65\x6e\x64\x29\x7b\x5f\x72\x65\x73\x75\x6c\x74\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x69\x66\x28\x63\x68\x65\x63\x6b\x4a\x73\x6f\x6e\x29\x7b\x66\x6f\x72\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x30\x2c\x5f\x6c\x65\x6e\x67\x74\x68\x3d\x5f\x72\x65\x73\x75\x6c\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3c\x5f\x6c\x65\x6e\x67\x74\x68\x3b\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x3d\x31\x29\x7b\x5f\x63\x68\x61\x72\x61\x63\x74\x65\x72\x3d\x5f\x72\x65\x73\x75\x6c\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x21\x28\x5f\x63\x68\x61\x72\x61\x63\x74\x65\x72\x3d\x3d\x3d\x39\x7c\x7c\x33\x32\x3c\x3d\x5f\x63\x68\x61\x72\x61\x63\x74\x65\x72\x26\x26\x5f\x63\x68\x61\x72\x61\x63\x74\x65\x72\x3c\x3d\x31\x31\x31\x34\x31\x31\x31\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x65\x78\x70\x65\x63\x74\x65\x64\x20\x76\x61\x6c\x69\x64\x20\x4a\x53\x4f\x4e\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x22\x29\x7d\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x50\x41\x54\x54\x45\x52\x4e\x5f\x4e\x4f\x4e\x5f\x50\x52\x49\x4e\x54\x41\x42\x4c\x45\x2e\x74\x65\x73\x74\x28\x5f\x72\x65\x73\x75\x6c\x74\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x74\x68\x65\x20\x73\x74\x72\x65\x61\x6d\x20\x63\x6f\x6e\x74\x61\x69\x6e\x73\x20\x6e\x6f\x6e\x2d\x70\x72\x69\x6e\x74\x61\x62\x6c\x65\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x73\x22\x29\x7d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x5f\x72\x65\x73\x75\x6c\x74\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x65\x72\x67\x65\x4d\x61\x70\x70\x69\x6e\x67\x73\x28\x73\x74\x61\x74\x65\x2c\x64\x65\x73\x74\x69\x6e\x61\x74\x69\x6f\x6e\x2c\x73\x6f\x75\x72\x63\x65\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x29\x7b\x76\x61\x72\x20\x73\x6f\x75\x72\x63\x65\x4b\x65\x79\x73\x2c\x6b\x65\x79\x2c\x69\x6e\x64\x65\x78\x2c\x71\x75\x61\x6e\x74\x69\x74\x79\x3b\x69\x66\x28\x21\x63\x6f\x6d\x6d\x6f\x6e\x2e\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x73\x6f\x75\x72\x63\x65\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x63\x61\x6e\x6e\x6f\x74\x20\x6d\x65\x72\x67\x65\x20\x6d\x61\x70\x70\x69\x6e\x67\x73\x3b\x20\x74\x68\x65\x20\x70\x72\x6f\x76\x69\x64\x65\x64\x20\x73\x6f\x75\x72\x63\x65\x20\x6f\x62\x6a\x65\x63\x74\x20\x69\x73\x20\x75\x6e\x61\x63\x63\x65\x70\x74\x61\x62\x6c\x65\x22\x29\x7d\x73\x6f\x75\x72\x63\x65\x4b\x65\x79\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x73\x6f\x75\x72\x63\x65\x29\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x71\x75\x61\x6e\x74\x69\x74\x79\x3d\x73\x6f\x75\x72\x63\x65\x4b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x71\x75\x61\x6e\x74\x69\x74\x79\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x6b\x65\x79\x3d\x73\x6f\x75\x72\x63\x65\x4b\x65\x79\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x21\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x64\x65\x73\x74\x69\x6e\x61\x74\x69\x6f\x6e\x2c\x6b\x65\x79\x29\x29\x7b\x64\x65\x73\x74\x69\x6e\x61\x74\x69\x6f\x6e\x5b\x6b\x65\x79\x5d\x3d\x73\x6f\x75\x72\x63\x65\x5b\x6b\x65\x79\x5d\x3b\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x5b\x6b\x65\x79\x5d\x3d\x74\x72\x75\x65\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x6f\x72\x65\x4d\x61\x70\x70\x69\x6e\x67\x50\x61\x69\x72\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x73\x75\x6c\x74\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x2c\x6b\x65\x79\x54\x61\x67\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x2c\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x2c\x73\x74\x61\x72\x74\x4c\x69\x6e\x65\x2c\x73\x74\x61\x72\x74\x50\x6f\x73\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x2c\x71\x75\x61\x6e\x74\x69\x74\x79\x3b\x6b\x65\x79\x4e\x6f\x64\x65\x3d\x53\x74\x72\x69\x6e\x67\x28\x6b\x65\x79\x4e\x6f\x64\x65\x29\x3b\x69\x66\x28\x5f\x72\x65\x73\x75\x6c\x74\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x5f\x72\x65\x73\x75\x6c\x74\x3d\x7b\x7d\x7d\x69\x66\x28\x6b\x65\x79\x54\x61\x67\x3d\x3d\x3d\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x6d\x65\x72\x67\x65\x22\x29\x7b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x29\x29\x7b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x71\x75\x61\x6e\x74\x69\x74\x79\x3d\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x71\x75\x61\x6e\x74\x69\x74\x79\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x6d\x65\x72\x67\x65\x4d\x61\x70\x70\x69\x6e\x67\x73\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x73\x75\x6c\x74\x2c\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x6d\x65\x72\x67\x65\x4d\x61\x70\x70\x69\x6e\x67\x73\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x73\x75\x6c\x74\x2c\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x21\x73\x74\x61\x74\x65\x2e\x6a\x73\x6f\x6e\x26\x26\x21\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x29\x26\x26\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x5f\x72\x65\x73\x75\x6c\x74\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x29\x29\x7b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3d\x73\x74\x61\x72\x74\x4c\x69\x6e\x65\x7c\x7c\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x73\x74\x61\x72\x74\x50\x6f\x73\x7c\x7c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x64\x20\x6d\x61\x70\x70\x69\x6e\x67\x20\x6b\x65\x79\x22\x29\x7d\x5f\x72\x65\x73\x75\x6c\x74\x5b\x6b\x65\x79\x4e\x6f\x64\x65\x5d\x3d\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x3b\x64\x65\x6c\x65\x74\x65\x20\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x5b\x6b\x65\x79\x4e\x6f\x64\x65\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x63\x68\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x31\x30\x29\x7b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x3d\x3d\x3d\x31\x33\x29\x7b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3d\x3d\x3d\x31\x30\x29\x7b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x7d\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x61\x20\x6c\x69\x6e\x65\x20\x62\x72\x65\x61\x6b\x20\x69\x73\x20\x65\x78\x70\x65\x63\x74\x65\x64\x22\x29\x7d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x2b\x3d\x31\x3b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x61\x6c\x6c\x6f\x77\x43\x6f\x6d\x6d\x65\x6e\x74\x73\x2c\x63\x68\x65\x63\x6b\x49\x6e\x64\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x6c\x69\x6e\x65\x42\x72\x65\x61\x6b\x73\x3d\x30\x2c\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x29\x7b\x77\x68\x69\x6c\x65\x28\x69\x73\x5f\x57\x48\x49\x54\x45\x5f\x53\x50\x41\x43\x45\x28\x63\x68\x29\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x69\x66\x28\x61\x6c\x6c\x6f\x77\x43\x6f\x6d\x6d\x65\x6e\x74\x73\x26\x26\x63\x68\x3d\x3d\x3d\x33\x35\x29\x7b\x64\x6f\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x31\x30\x26\x26\x63\x68\x21\x3d\x3d\x31\x33\x26\x26\x63\x68\x21\x3d\x3d\x30\x29\x7d\x69\x66\x28\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x72\x65\x61\x64\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x28\x73\x74\x61\x74\x65\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x6c\x69\x6e\x65\x42\x72\x65\x61\x6b\x73\x2b\x2b\x3b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3d\x30\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x3d\x3d\x3d\x33\x32\x29\x7b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x2b\x2b\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x62\x72\x65\x61\x6b\x7d\x7d\x69\x66\x28\x63\x68\x65\x63\x6b\x49\x6e\x64\x65\x6e\x74\x21\x3d\x3d\x2d\x31\x26\x26\x6c\x69\x6e\x65\x42\x72\x65\x61\x6b\x73\x21\x3d\x3d\x30\x26\x26\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3c\x63\x68\x65\x63\x6b\x49\x6e\x64\x65\x6e\x74\x29\x7b\x74\x68\x72\x6f\x77\x57\x61\x72\x6e\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x22\x64\x65\x66\x69\x63\x69\x65\x6e\x74\x20\x69\x6e\x64\x65\x6e\x74\x61\x74\x69\x6f\x6e\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6c\x69\x6e\x65\x42\x72\x65\x61\x6b\x73\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x65\x73\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x63\x68\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x28\x63\x68\x3d\x3d\x3d\x34\x35\x7c\x7c\x63\x68\x3d\x3d\x3d\x34\x36\x29\x26\x26\x63\x68\x3d\x3d\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x29\x26\x26\x63\x68\x3d\x3d\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x32\x29\x29\x7b\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x3d\x33\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x30\x7c\x7c\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x46\x6f\x6c\x64\x65\x64\x4c\x69\x6e\x65\x73\x28\x73\x74\x61\x74\x65\x2c\x63\x6f\x75\x6e\x74\x29\x7b\x69\x66\x28\x63\x6f\x75\x6e\x74\x3d\x3d\x3d\x31\x29\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x20\x22\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x6f\x75\x6e\x74\x3e\x31\x29\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x5c\x6e\x22\x2c\x63\x6f\x75\x6e\x74\x2d\x31\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x50\x6c\x61\x69\x6e\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x2c\x77\x69\x74\x68\x69\x6e\x46\x6c\x6f\x77\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x29\x7b\x76\x61\x72\x20\x70\x72\x65\x63\x65\x64\x69\x6e\x67\x2c\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x2c\x68\x61\x73\x50\x65\x6e\x64\x69\x6e\x67\x43\x6f\x6e\x74\x65\x6e\x74\x2c\x5f\x6c\x69\x6e\x65\x2c\x5f\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x2c\x5f\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x2c\x5f\x6b\x69\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x2c\x5f\x72\x65\x73\x75\x6c\x74\x3d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2c\x63\x68\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x63\x68\x29\x7c\x7c\x69\x73\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x44\x49\x43\x41\x54\x4f\x52\x28\x63\x68\x29\x7c\x7c\x63\x68\x3d\x3d\x3d\x33\x35\x7c\x7c\x63\x68\x3d\x3d\x3d\x33\x38\x7c\x7c\x63\x68\x3d\x3d\x3d\x34\x32\x7c\x7c\x63\x68\x3d\x3d\x3d\x33\x33\x7c\x7c\x63\x68\x3d\x3d\x3d\x31\x32\x34\x7c\x7c\x63\x68\x3d\x3d\x3d\x36\x32\x7c\x7c\x63\x68\x3d\x3d\x3d\x33\x39\x7c\x7c\x63\x68\x3d\x3d\x3d\x33\x34\x7c\x7c\x63\x68\x3d\x3d\x3d\x33\x37\x7c\x7c\x63\x68\x3d\x3d\x3d\x36\x34\x7c\x7c\x63\x68\x3d\x3d\x3d\x39\x36\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x69\x66\x28\x63\x68\x3d\x3d\x3d\x36\x33\x7c\x7c\x63\x68\x3d\x3d\x3d\x34\x35\x29\x7b\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x29\x3b\x69\x66\x28\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x29\x7c\x7c\x77\x69\x74\x68\x69\x6e\x46\x6c\x6f\x77\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x26\x26\x69\x73\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x44\x49\x43\x41\x54\x4f\x52\x28\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x3d\x22\x73\x63\x61\x6c\x61\x72\x22\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x3b\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x3d\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x68\x61\x73\x50\x65\x6e\x64\x69\x6e\x67\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x66\x61\x6c\x73\x65\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x29\x7b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x35\x38\x29\x7b\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x29\x3b\x69\x66\x28\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x29\x7c\x7c\x77\x69\x74\x68\x69\x6e\x46\x6c\x6f\x77\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x26\x26\x69\x73\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x44\x49\x43\x41\x54\x4f\x52\x28\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x29\x29\x7b\x62\x72\x65\x61\x6b\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x3d\x3d\x3d\x33\x35\x29\x7b\x70\x72\x65\x63\x65\x64\x69\x6e\x67\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2d\x31\x29\x3b\x69\x66\x28\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x70\x72\x65\x63\x65\x64\x69\x6e\x67\x29\x29\x7b\x62\x72\x65\x61\x6b\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x26\x26\x74\x65\x73\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x28\x73\x74\x61\x74\x65\x29\x7c\x7c\x77\x69\x74\x68\x69\x6e\x46\x6c\x6f\x77\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x26\x26\x69\x73\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x44\x49\x43\x41\x54\x4f\x52\x28\x63\x68\x29\x29\x7b\x62\x72\x65\x61\x6b\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x5f\x6c\x69\x6e\x65\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3b\x5f\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x3b\x5f\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x66\x61\x6c\x73\x65\x2c\x2d\x31\x29\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3e\x3d\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x68\x61\x73\x50\x65\x6e\x64\x69\x6e\x67\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x74\x72\x75\x65\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x65\x6c\x73\x65\x7b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3d\x5f\x6c\x69\x6e\x65\x3b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x3d\x5f\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x3b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3d\x5f\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3b\x62\x72\x65\x61\x6b\x7d\x7d\x69\x66\x28\x68\x61\x73\x50\x65\x6e\x64\x69\x6e\x67\x43\x6f\x6e\x74\x65\x6e\x74\x29\x7b\x63\x61\x70\x74\x75\x72\x65\x53\x65\x67\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x2c\x66\x61\x6c\x73\x65\x29\x3b\x77\x72\x69\x74\x65\x46\x6f\x6c\x64\x65\x64\x4c\x69\x6e\x65\x73\x28\x73\x74\x61\x74\x65\x2c\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x2d\x5f\x6c\x69\x6e\x65\x29\x3b\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x3d\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x68\x61\x73\x50\x65\x6e\x64\x69\x6e\x67\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x66\x61\x6c\x73\x65\x7d\x69\x66\x28\x21\x69\x73\x5f\x57\x48\x49\x54\x45\x5f\x53\x50\x41\x43\x45\x28\x63\x68\x29\x29\x7b\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x7d\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x63\x61\x70\x74\x75\x72\x65\x53\x65\x67\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x2c\x66\x61\x6c\x73\x65\x29\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x3d\x5f\x6b\x69\x6e\x64\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x5f\x72\x65\x73\x75\x6c\x74\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x53\x69\x6e\x67\x6c\x65\x51\x75\x6f\x74\x65\x64\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x63\x68\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x21\x3d\x3d\x33\x39\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x3d\x22\x73\x63\x61\x6c\x61\x72\x22\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x3d\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x77\x68\x69\x6c\x65\x28\x28\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x29\x21\x3d\x3d\x30\x29\x7b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x33\x39\x29\x7b\x63\x61\x70\x74\x75\x72\x65\x53\x65\x67\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x74\x72\x75\x65\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x33\x39\x29\x7b\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x63\x61\x70\x74\x75\x72\x65\x53\x65\x67\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x2c\x74\x72\x75\x65\x29\x3b\x77\x72\x69\x74\x65\x46\x6f\x6c\x64\x65\x64\x4c\x69\x6e\x65\x73\x28\x73\x74\x61\x74\x65\x2c\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x66\x61\x6c\x73\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x29\x3b\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x3d\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x26\x26\x74\x65\x73\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x28\x73\x74\x61\x74\x65\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x65\x78\x70\x65\x63\x74\x65\x64\x20\x65\x6e\x64\x20\x6f\x66\x20\x74\x68\x65\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x20\x77\x69\x74\x68\x69\x6e\x20\x61\x20\x73\x69\x6e\x67\x6c\x65\x20\x71\x75\x6f\x74\x65\x64\x20\x73\x63\x61\x6c\x61\x72\x22\x29\x7d\x65\x6c\x73\x65\x7b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x7d\x7d\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x65\x78\x70\x65\x63\x74\x65\x64\x20\x65\x6e\x64\x20\x6f\x66\x20\x74\x68\x65\x20\x73\x74\x72\x65\x61\x6d\x20\x77\x69\x74\x68\x69\x6e\x20\x61\x20\x73\x69\x6e\x67\x6c\x65\x20\x71\x75\x6f\x74\x65\x64\x20\x73\x63\x61\x6c\x61\x72\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x44\x6f\x75\x62\x6c\x65\x51\x75\x6f\x74\x65\x64\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x2c\x68\x65\x78\x4c\x65\x6e\x67\x74\x68\x2c\x68\x65\x78\x52\x65\x73\x75\x6c\x74\x2c\x74\x6d\x70\x2c\x63\x68\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x21\x3d\x3d\x33\x34\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x3d\x22\x73\x63\x61\x6c\x61\x72\x22\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x3d\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x77\x68\x69\x6c\x65\x28\x28\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x29\x21\x3d\x3d\x30\x29\x7b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x33\x34\x29\x7b\x63\x61\x70\x74\x75\x72\x65\x53\x65\x67\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x74\x72\x75\x65\x29\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x3d\x3d\x3d\x39\x32\x29\x7b\x63\x61\x70\x74\x75\x72\x65\x53\x65\x67\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x74\x72\x75\x65\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x66\x61\x6c\x73\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x3c\x32\x35\x36\x26\x26\x73\x69\x6d\x70\x6c\x65\x45\x73\x63\x61\x70\x65\x43\x68\x65\x63\x6b\x5b\x63\x68\x5d\x29\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x73\x69\x6d\x70\x6c\x65\x45\x73\x63\x61\x70\x65\x4d\x61\x70\x5b\x63\x68\x5d\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x28\x74\x6d\x70\x3d\x65\x73\x63\x61\x70\x65\x64\x48\x65\x78\x4c\x65\x6e\x28\x63\x68\x29\x29\x3e\x30\x29\x7b\x68\x65\x78\x4c\x65\x6e\x67\x74\x68\x3d\x74\x6d\x70\x3b\x68\x65\x78\x52\x65\x73\x75\x6c\x74\x3d\x30\x3b\x66\x6f\x72\x28\x3b\x68\x65\x78\x4c\x65\x6e\x67\x74\x68\x3e\x30\x3b\x68\x65\x78\x4c\x65\x6e\x67\x74\x68\x2d\x2d\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x28\x74\x6d\x70\x3d\x66\x72\x6f\x6d\x48\x65\x78\x43\x6f\x64\x65\x28\x63\x68\x29\x29\x3e\x3d\x30\x29\x7b\x68\x65\x78\x52\x65\x73\x75\x6c\x74\x3d\x28\x68\x65\x78\x52\x65\x73\x75\x6c\x74\x3c\x3c\x34\x29\x2b\x74\x6d\x70\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x65\x78\x70\x65\x63\x74\x65\x64\x20\x68\x65\x78\x61\x64\x65\x63\x69\x6d\x61\x6c\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x22\x29\x7d\x7d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x63\x68\x61\x72\x46\x72\x6f\x6d\x43\x6f\x64\x65\x70\x6f\x69\x6e\x74\x28\x68\x65\x78\x52\x65\x73\x75\x6c\x74\x29\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x6b\x6e\x6f\x77\x6e\x20\x65\x73\x63\x61\x70\x65\x20\x73\x65\x71\x75\x65\x6e\x63\x65\x22\x29\x7d\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x3d\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x63\x61\x70\x74\x75\x72\x65\x53\x65\x67\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x2c\x74\x72\x75\x65\x29\x3b\x77\x72\x69\x74\x65\x46\x6f\x6c\x64\x65\x64\x4c\x69\x6e\x65\x73\x28\x73\x74\x61\x74\x65\x2c\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x66\x61\x6c\x73\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x29\x3b\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x3d\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x26\x26\x74\x65\x73\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x28\x73\x74\x61\x74\x65\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x65\x78\x70\x65\x63\x74\x65\x64\x20\x65\x6e\x64\x20\x6f\x66\x20\x74\x68\x65\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x20\x77\x69\x74\x68\x69\x6e\x20\x61\x20\x64\x6f\x75\x62\x6c\x65\x20\x71\x75\x6f\x74\x65\x64\x20\x73\x63\x61\x6c\x61\x72\x22\x29\x7d\x65\x6c\x73\x65\x7b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x63\x61\x70\x74\x75\x72\x65\x45\x6e\x64\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x7d\x7d\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x65\x78\x70\x65\x63\x74\x65\x64\x20\x65\x6e\x64\x20\x6f\x66\x20\x74\x68\x65\x20\x73\x74\x72\x65\x61\x6d\x20\x77\x69\x74\x68\x69\x6e\x20\x61\x20\x64\x6f\x75\x62\x6c\x65\x20\x71\x75\x6f\x74\x65\x64\x20\x73\x63\x61\x6c\x61\x72\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x46\x6c\x6f\x77\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x72\x65\x61\x64\x4e\x65\x78\x74\x3d\x74\x72\x75\x65\x2c\x5f\x6c\x69\x6e\x65\x2c\x5f\x74\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2c\x5f\x72\x65\x73\x75\x6c\x74\x2c\x5f\x61\x6e\x63\x68\x6f\x72\x3d\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x2c\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x2c\x74\x65\x72\x6d\x69\x6e\x61\x74\x6f\x72\x2c\x69\x73\x50\x61\x69\x72\x2c\x69\x73\x45\x78\x70\x6c\x69\x63\x69\x74\x50\x61\x69\x72\x2c\x69\x73\x4d\x61\x70\x70\x69\x6e\x67\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x3d\x7b\x7d\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x2c\x6b\x65\x79\x54\x61\x67\x2c\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x2c\x63\x68\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x39\x31\x29\x7b\x74\x65\x72\x6d\x69\x6e\x61\x74\x6f\x72\x3d\x39\x33\x3b\x69\x73\x4d\x61\x70\x70\x69\x6e\x67\x3d\x66\x61\x6c\x73\x65\x3b\x5f\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x3d\x3d\x3d\x31\x32\x33\x29\x7b\x74\x65\x72\x6d\x69\x6e\x61\x74\x6f\x72\x3d\x31\x32\x35\x3b\x69\x73\x4d\x61\x70\x70\x69\x6e\x67\x3d\x74\x72\x75\x65\x3b\x5f\x72\x65\x73\x75\x6c\x74\x3d\x7b\x7d\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x4d\x61\x70\x5b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x5d\x3d\x5f\x72\x65\x73\x75\x6c\x74\x7d\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x29\x7b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x74\x65\x72\x6d\x69\x6e\x61\x74\x6f\x72\x29\x7b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x5f\x74\x61\x67\x3b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x3d\x5f\x61\x6e\x63\x68\x6f\x72\x3b\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x3d\x69\x73\x4d\x61\x70\x70\x69\x6e\x67\x3f\x22\x6d\x61\x70\x70\x69\x6e\x67\x22\x3a\x22\x73\x65\x71\x75\x65\x6e\x63\x65\x22\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x5f\x72\x65\x73\x75\x6c\x74\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x21\x72\x65\x61\x64\x4e\x65\x78\x74\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x6d\x69\x73\x73\x65\x64\x20\x63\x6f\x6d\x6d\x61\x20\x62\x65\x74\x77\x65\x65\x6e\x20\x66\x6c\x6f\x77\x20\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x20\x65\x6e\x74\x72\x69\x65\x73\x22\x29\x7d\x6b\x65\x79\x54\x61\x67\x3d\x6b\x65\x79\x4e\x6f\x64\x65\x3d\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x3d\x6e\x75\x6c\x6c\x3b\x69\x73\x50\x61\x69\x72\x3d\x69\x73\x45\x78\x70\x6c\x69\x63\x69\x74\x50\x61\x69\x72\x3d\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x36\x33\x29\x7b\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x29\x3b\x69\x66\x28\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x29\x29\x7b\x69\x73\x50\x61\x69\x72\x3d\x69\x73\x45\x78\x70\x6c\x69\x63\x69\x74\x50\x61\x69\x72\x3d\x74\x72\x75\x65\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7d\x7d\x5f\x6c\x69\x6e\x65\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3b\x63\x6f\x6d\x70\x6f\x73\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x2c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x2c\x66\x61\x6c\x73\x65\x2c\x74\x72\x75\x65\x29\x3b\x6b\x65\x79\x54\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3b\x6b\x65\x79\x4e\x6f\x64\x65\x3d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x28\x69\x73\x45\x78\x70\x6c\x69\x63\x69\x74\x50\x61\x69\x72\x7c\x7c\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3d\x3d\x3d\x5f\x6c\x69\x6e\x65\x29\x26\x26\x63\x68\x3d\x3d\x3d\x35\x38\x29\x7b\x69\x73\x50\x61\x69\x72\x3d\x74\x72\x75\x65\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x3b\x63\x6f\x6d\x70\x6f\x73\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x2c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x2c\x66\x61\x6c\x73\x65\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x3d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x7d\x69\x66\x28\x69\x73\x4d\x61\x70\x70\x69\x6e\x67\x29\x7b\x73\x74\x6f\x72\x65\x4d\x61\x70\x70\x69\x6e\x67\x50\x61\x69\x72\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x73\x75\x6c\x74\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x2c\x6b\x65\x79\x54\x61\x67\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x2c\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x73\x50\x61\x69\x72\x29\x7b\x5f\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x73\x74\x6f\x72\x65\x4d\x61\x70\x70\x69\x6e\x67\x50\x61\x69\x72\x28\x73\x74\x61\x74\x65\x2c\x6e\x75\x6c\x6c\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x2c\x6b\x65\x79\x54\x61\x67\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x2c\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x29\x29\x7d\x65\x6c\x73\x65\x7b\x5f\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x4e\x6f\x64\x65\x29\x7d\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x34\x34\x29\x7b\x72\x65\x61\x64\x4e\x65\x78\x74\x3d\x74\x72\x75\x65\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x61\x64\x4e\x65\x78\x74\x3d\x66\x61\x6c\x73\x65\x7d\x7d\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x65\x78\x70\x65\x63\x74\x65\x64\x20\x65\x6e\x64\x20\x6f\x66\x20\x74\x68\x65\x20\x73\x74\x72\x65\x61\x6d\x20\x77\x69\x74\x68\x69\x6e\x20\x61\x20\x66\x6c\x6f\x77\x20\x63\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x42\x6c\x6f\x63\x6b\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x66\x6f\x6c\x64\x69\x6e\x67\x2c\x63\x68\x6f\x6d\x70\x69\x6e\x67\x3d\x43\x48\x4f\x4d\x50\x49\x4e\x47\x5f\x43\x4c\x49\x50\x2c\x64\x69\x64\x52\x65\x61\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x66\x61\x6c\x73\x65\x2c\x64\x65\x74\x65\x63\x74\x65\x64\x49\x6e\x64\x65\x6e\x74\x3d\x66\x61\x6c\x73\x65\x2c\x74\x65\x78\x74\x49\x6e\x64\x65\x6e\x74\x3d\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x2c\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x3d\x30\x2c\x61\x74\x4d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x3d\x66\x61\x6c\x73\x65\x2c\x74\x6d\x70\x2c\x63\x68\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x31\x32\x34\x29\x7b\x66\x6f\x6c\x64\x69\x6e\x67\x3d\x66\x61\x6c\x73\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x3d\x3d\x3d\x36\x32\x29\x7b\x66\x6f\x6c\x64\x69\x6e\x67\x3d\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x3d\x22\x73\x63\x61\x6c\x61\x72\x22\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x34\x33\x7c\x7c\x63\x68\x3d\x3d\x3d\x34\x35\x29\x7b\x69\x66\x28\x43\x48\x4f\x4d\x50\x49\x4e\x47\x5f\x43\x4c\x49\x50\x3d\x3d\x3d\x63\x68\x6f\x6d\x70\x69\x6e\x67\x29\x7b\x63\x68\x6f\x6d\x70\x69\x6e\x67\x3d\x63\x68\x3d\x3d\x3d\x34\x33\x3f\x43\x48\x4f\x4d\x50\x49\x4e\x47\x5f\x4b\x45\x45\x50\x3a\x43\x48\x4f\x4d\x50\x49\x4e\x47\x5f\x53\x54\x52\x49\x50\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x72\x65\x70\x65\x61\x74\x20\x6f\x66\x20\x61\x20\x63\x68\x6f\x6d\x70\x69\x6e\x67\x20\x6d\x6f\x64\x65\x20\x69\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x22\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x28\x74\x6d\x70\x3d\x66\x72\x6f\x6d\x44\x65\x63\x69\x6d\x61\x6c\x43\x6f\x64\x65\x28\x63\x68\x29\x29\x3e\x3d\x30\x29\x7b\x69\x66\x28\x74\x6d\x70\x3d\x3d\x3d\x30\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x62\x61\x64\x20\x65\x78\x70\x6c\x69\x63\x69\x74\x20\x69\x6e\x64\x65\x6e\x74\x61\x74\x69\x6f\x6e\x20\x77\x69\x64\x74\x68\x20\x6f\x66\x20\x61\x20\x62\x6c\x6f\x63\x6b\x20\x73\x63\x61\x6c\x61\x72\x3b\x20\x69\x74\x20\x63\x61\x6e\x6e\x6f\x74\x20\x62\x65\x20\x6c\x65\x73\x73\x20\x74\x68\x61\x6e\x20\x6f\x6e\x65\x22\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x21\x64\x65\x74\x65\x63\x74\x65\x64\x49\x6e\x64\x65\x6e\x74\x29\x7b\x74\x65\x78\x74\x49\x6e\x64\x65\x6e\x74\x3d\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x2b\x74\x6d\x70\x2d\x31\x3b\x64\x65\x74\x65\x63\x74\x65\x64\x49\x6e\x64\x65\x6e\x74\x3d\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x72\x65\x70\x65\x61\x74\x20\x6f\x66\x20\x61\x6e\x20\x69\x6e\x64\x65\x6e\x74\x61\x74\x69\x6f\x6e\x20\x77\x69\x64\x74\x68\x20\x69\x64\x65\x6e\x74\x69\x66\x69\x65\x72\x22\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x62\x72\x65\x61\x6b\x7d\x7d\x69\x66\x28\x69\x73\x5f\x57\x48\x49\x54\x45\x5f\x53\x50\x41\x43\x45\x28\x63\x68\x29\x29\x7b\x64\x6f\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x77\x68\x69\x6c\x65\x28\x69\x73\x5f\x57\x48\x49\x54\x45\x5f\x53\x50\x41\x43\x45\x28\x63\x68\x29\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x33\x35\x29\x7b\x64\x6f\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x77\x68\x69\x6c\x65\x28\x21\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x26\x26\x63\x68\x21\x3d\x3d\x30\x29\x7d\x7d\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x29\x7b\x72\x65\x61\x64\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x28\x73\x74\x61\x74\x65\x29\x3b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3d\x30\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x77\x68\x69\x6c\x65\x28\x28\x21\x64\x65\x74\x65\x63\x74\x65\x64\x49\x6e\x64\x65\x6e\x74\x7c\x7c\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3c\x74\x65\x78\x74\x49\x6e\x64\x65\x6e\x74\x29\x26\x26\x63\x68\x3d\x3d\x3d\x33\x32\x29\x7b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x2b\x2b\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x69\x66\x28\x21\x64\x65\x74\x65\x63\x74\x65\x64\x49\x6e\x64\x65\x6e\x74\x26\x26\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3e\x74\x65\x78\x74\x49\x6e\x64\x65\x6e\x74\x29\x7b\x74\x65\x78\x74\x49\x6e\x64\x65\x6e\x74\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x7d\x69\x66\x28\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x2b\x2b\x3b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3c\x74\x65\x78\x74\x49\x6e\x64\x65\x6e\x74\x29\x7b\x69\x66\x28\x63\x68\x6f\x6d\x70\x69\x6e\x67\x3d\x3d\x3d\x43\x48\x4f\x4d\x50\x49\x4e\x47\x5f\x4b\x45\x45\x50\x29\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x5c\x6e\x22\x2c\x64\x69\x64\x52\x65\x61\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3f\x31\x2b\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x3a\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x6f\x6d\x70\x69\x6e\x67\x3d\x3d\x3d\x43\x48\x4f\x4d\x50\x49\x4e\x47\x5f\x43\x4c\x49\x50\x29\x7b\x69\x66\x28\x64\x69\x64\x52\x65\x61\x64\x43\x6f\x6e\x74\x65\x6e\x74\x29\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x5c\x6e\x22\x7d\x7d\x62\x72\x65\x61\x6b\x7d\x69\x66\x28\x66\x6f\x6c\x64\x69\x6e\x67\x29\x7b\x69\x66\x28\x69\x73\x5f\x57\x48\x49\x54\x45\x5f\x53\x50\x41\x43\x45\x28\x63\x68\x29\x29\x7b\x61\x74\x4d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x3d\x74\x72\x75\x65\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x5c\x6e\x22\x2c\x64\x69\x64\x52\x65\x61\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3f\x31\x2b\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x3a\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x61\x74\x4d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x29\x7b\x61\x74\x4d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x3d\x66\x61\x6c\x73\x65\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x5c\x6e\x22\x2c\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x2b\x31\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x3d\x3d\x3d\x30\x29\x7b\x69\x66\x28\x64\x69\x64\x52\x65\x61\x64\x43\x6f\x6e\x74\x65\x6e\x74\x29\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x20\x22\x7d\x7d\x65\x6c\x73\x65\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x5c\x6e\x22\x2c\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x2b\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x5c\x6e\x22\x2c\x64\x69\x64\x52\x65\x61\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3f\x31\x2b\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x3a\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x29\x7d\x64\x69\x64\x52\x65\x61\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x74\x72\x75\x65\x3b\x64\x65\x74\x65\x63\x74\x65\x64\x49\x6e\x64\x65\x6e\x74\x3d\x74\x72\x75\x65\x3b\x65\x6d\x70\x74\x79\x4c\x69\x6e\x65\x73\x3d\x30\x3b\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x77\x68\x69\x6c\x65\x28\x21\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x26\x26\x63\x68\x21\x3d\x3d\x30\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x63\x61\x70\x74\x75\x72\x65\x53\x65\x67\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x2c\x63\x61\x70\x74\x75\x72\x65\x53\x74\x61\x72\x74\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x66\x61\x6c\x73\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x42\x6c\x6f\x63\x6b\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x5f\x6c\x69\x6e\x65\x2c\x5f\x74\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2c\x5f\x61\x6e\x63\x68\x6f\x72\x3d\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x2c\x5f\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x2c\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x2c\x64\x65\x74\x65\x63\x74\x65\x64\x3d\x66\x61\x6c\x73\x65\x2c\x63\x68\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x4d\x61\x70\x5b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x5d\x3d\x5f\x72\x65\x73\x75\x6c\x74\x7d\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x29\x7b\x69\x66\x28\x63\x68\x21\x3d\x3d\x34\x35\x29\x7b\x62\x72\x65\x61\x6b\x7d\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x29\x3b\x69\x66\x28\x21\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x29\x29\x7b\x62\x72\x65\x61\x6b\x7d\x64\x65\x74\x65\x63\x74\x65\x64\x3d\x74\x72\x75\x65\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x2b\x3b\x69\x66\x28\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x29\x7b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3c\x3d\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x5f\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6e\x75\x6c\x6c\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x7d\x5f\x6c\x69\x6e\x65\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3b\x63\x6f\x6d\x70\x6f\x73\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x2c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x42\x4c\x4f\x43\x4b\x5f\x49\x4e\x2c\x66\x61\x6c\x73\x65\x2c\x74\x72\x75\x65\x29\x3b\x5f\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x29\x3b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3d\x3d\x3d\x5f\x6c\x69\x6e\x65\x7c\x7c\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3e\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x26\x26\x63\x68\x21\x3d\x3d\x30\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x62\x61\x64\x20\x69\x6e\x64\x65\x6e\x74\x61\x74\x69\x6f\x6e\x20\x6f\x66\x20\x61\x20\x73\x65\x71\x75\x65\x6e\x63\x65\x20\x65\x6e\x74\x72\x79\x22\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x62\x72\x65\x61\x6b\x7d\x7d\x69\x66\x28\x64\x65\x74\x65\x63\x74\x65\x64\x29\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x5f\x74\x61\x67\x3b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x3d\x5f\x61\x6e\x63\x68\x6f\x72\x3b\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x3d\x22\x73\x65\x71\x75\x65\x6e\x63\x65\x22\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x5f\x72\x65\x73\x75\x6c\x74\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x42\x6c\x6f\x63\x6b\x4d\x61\x70\x70\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x2c\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x2c\x61\x6c\x6c\x6f\x77\x43\x6f\x6d\x70\x61\x63\x74\x2c\x5f\x6c\x69\x6e\x65\x2c\x5f\x70\x6f\x73\x2c\x5f\x74\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2c\x5f\x61\x6e\x63\x68\x6f\x72\x3d\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x2c\x5f\x72\x65\x73\x75\x6c\x74\x3d\x7b\x7d\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x3d\x7b\x7d\x2c\x6b\x65\x79\x54\x61\x67\x3d\x6e\x75\x6c\x6c\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x3d\x6e\x75\x6c\x6c\x2c\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x3d\x6e\x75\x6c\x6c\x2c\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x3d\x66\x61\x6c\x73\x65\x2c\x64\x65\x74\x65\x63\x74\x65\x64\x3d\x66\x61\x6c\x73\x65\x2c\x63\x68\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x4d\x61\x70\x5b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x5d\x3d\x5f\x72\x65\x73\x75\x6c\x74\x7d\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x29\x7b\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x29\x3b\x5f\x6c\x69\x6e\x65\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3b\x5f\x70\x6f\x73\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x69\x66\x28\x28\x63\x68\x3d\x3d\x3d\x36\x33\x7c\x7c\x63\x68\x3d\x3d\x3d\x35\x38\x29\x26\x26\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x29\x29\x7b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x36\x33\x29\x7b\x69\x66\x28\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x29\x7b\x73\x74\x6f\x72\x65\x4d\x61\x70\x70\x69\x6e\x67\x50\x61\x69\x72\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x73\x75\x6c\x74\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x2c\x6b\x65\x79\x54\x61\x67\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x2c\x6e\x75\x6c\x6c\x29\x3b\x6b\x65\x79\x54\x61\x67\x3d\x6b\x65\x79\x4e\x6f\x64\x65\x3d\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x3d\x6e\x75\x6c\x6c\x7d\x64\x65\x74\x65\x63\x74\x65\x64\x3d\x74\x72\x75\x65\x3b\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x3d\x74\x72\x75\x65\x3b\x61\x6c\x6c\x6f\x77\x43\x6f\x6d\x70\x61\x63\x74\x3d\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x29\x7b\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x3d\x66\x61\x6c\x73\x65\x3b\x61\x6c\x6c\x6f\x77\x43\x6f\x6d\x70\x61\x63\x74\x3d\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x69\x6e\x63\x6f\x6d\x70\x6c\x65\x74\x65\x20\x65\x78\x70\x6c\x69\x63\x69\x74\x20\x6d\x61\x70\x70\x69\x6e\x67\x20\x70\x61\x69\x72\x3b\x20\x61\x20\x6b\x65\x79\x20\x6e\x6f\x64\x65\x20\x69\x73\x20\x6d\x69\x73\x73\x65\x64\x3b\x20\x6f\x72\x20\x66\x6f\x6c\x6c\x6f\x77\x65\x64\x20\x62\x79\x20\x61\x20\x6e\x6f\x6e\x2d\x74\x61\x62\x75\x6c\x61\x74\x65\x64\x20\x65\x6d\x70\x74\x79\x20\x6c\x69\x6e\x65\x22\x29\x7d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x3d\x31\x3b\x63\x68\x3d\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x6f\x6d\x70\x6f\x73\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x2c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x46\x4c\x4f\x57\x5f\x4f\x55\x54\x2c\x66\x61\x6c\x73\x65\x2c\x74\x72\x75\x65\x29\x29\x7b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3d\x3d\x3d\x5f\x6c\x69\x6e\x65\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x77\x68\x69\x6c\x65\x28\x69\x73\x5f\x57\x48\x49\x54\x45\x5f\x53\x50\x41\x43\x45\x28\x63\x68\x29\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x69\x66\x28\x63\x68\x3d\x3d\x3d\x35\x38\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x21\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x61\x20\x77\x68\x69\x74\x65\x73\x70\x61\x63\x65\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x20\x69\x73\x20\x65\x78\x70\x65\x63\x74\x65\x64\x20\x61\x66\x74\x65\x72\x20\x74\x68\x65\x20\x6b\x65\x79\x2d\x76\x61\x6c\x75\x65\x20\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x20\x77\x69\x74\x68\x69\x6e\x20\x61\x20\x62\x6c\x6f\x63\x6b\x20\x6d\x61\x70\x70\x69\x6e\x67\x22\x29\x7d\x69\x66\x28\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x29\x7b\x73\x74\x6f\x72\x65\x4d\x61\x70\x70\x69\x6e\x67\x50\x61\x69\x72\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x73\x75\x6c\x74\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x2c\x6b\x65\x79\x54\x61\x67\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x2c\x6e\x75\x6c\x6c\x29\x3b\x6b\x65\x79\x54\x61\x67\x3d\x6b\x65\x79\x4e\x6f\x64\x65\x3d\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x3d\x6e\x75\x6c\x6c\x7d\x64\x65\x74\x65\x63\x74\x65\x64\x3d\x74\x72\x75\x65\x3b\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x3d\x66\x61\x6c\x73\x65\x3b\x61\x6c\x6c\x6f\x77\x43\x6f\x6d\x70\x61\x63\x74\x3d\x66\x61\x6c\x73\x65\x3b\x6b\x65\x79\x54\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3b\x6b\x65\x79\x4e\x6f\x64\x65\x3d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x64\x65\x74\x65\x63\x74\x65\x64\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x63\x61\x6e\x20\x6e\x6f\x74\x20\x72\x65\x61\x64\x20\x61\x6e\x20\x69\x6d\x70\x6c\x69\x63\x69\x74\x20\x6d\x61\x70\x70\x69\x6e\x67\x20\x70\x61\x69\x72\x3b\x20\x61\x20\x63\x6f\x6c\x6f\x6e\x20\x69\x73\x20\x6d\x69\x73\x73\x65\x64\x22\x29\x7d\x65\x6c\x73\x65\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x5f\x74\x61\x67\x3b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x3d\x5f\x61\x6e\x63\x68\x6f\x72\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x64\x65\x74\x65\x63\x74\x65\x64\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x63\x61\x6e\x20\x6e\x6f\x74\x20\x72\x65\x61\x64\x20\x61\x20\x62\x6c\x6f\x63\x6b\x20\x6d\x61\x70\x70\x69\x6e\x67\x20\x65\x6e\x74\x72\x79\x3b\x20\x61\x20\x6d\x75\x6c\x74\x69\x6c\x69\x6e\x65\x20\x6b\x65\x79\x20\x6d\x61\x79\x20\x6e\x6f\x74\x20\x62\x65\x20\x61\x6e\x20\x69\x6d\x70\x6c\x69\x63\x69\x74\x20\x6b\x65\x79\x22\x29\x7d\x65\x6c\x73\x65\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x5f\x74\x61\x67\x3b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x3d\x5f\x61\x6e\x63\x68\x6f\x72\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x65\x6c\x73\x65\x7b\x62\x72\x65\x61\x6b\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x3d\x3d\x3d\x5f\x6c\x69\x6e\x65\x7c\x7c\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3e\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x69\x66\x28\x63\x6f\x6d\x70\x6f\x73\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x2c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x42\x4c\x4f\x43\x4b\x5f\x4f\x55\x54\x2c\x74\x72\x75\x65\x2c\x61\x6c\x6c\x6f\x77\x43\x6f\x6d\x70\x61\x63\x74\x29\x29\x7b\x69\x66\x28\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x29\x7b\x6b\x65\x79\x4e\x6f\x64\x65\x3d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x7d\x65\x6c\x73\x65\x7b\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x3d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x7d\x7d\x69\x66\x28\x21\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x29\x7b\x73\x74\x6f\x72\x65\x4d\x61\x70\x70\x69\x6e\x67\x50\x61\x69\x72\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x73\x75\x6c\x74\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x2c\x6b\x65\x79\x54\x61\x67\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x2c\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x2c\x5f\x6c\x69\x6e\x65\x2c\x5f\x70\x6f\x73\x29\x3b\x6b\x65\x79\x54\x61\x67\x3d\x6b\x65\x79\x4e\x6f\x64\x65\x3d\x76\x61\x6c\x75\x65\x4e\x6f\x64\x65\x3d\x6e\x75\x6c\x6c\x7d\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3e\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x26\x26\x63\x68\x21\x3d\x3d\x30\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x62\x61\x64\x20\x69\x6e\x64\x65\x6e\x74\x61\x74\x69\x6f\x6e\x20\x6f\x66\x20\x61\x20\x6d\x61\x70\x70\x69\x6e\x67\x20\x65\x6e\x74\x72\x79\x22\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3c\x6e\x6f\x64\x65\x49\x6e\x64\x65\x6e\x74\x29\x7b\x62\x72\x65\x61\x6b\x7d\x7d\x69\x66\x28\x61\x74\x45\x78\x70\x6c\x69\x63\x69\x74\x4b\x65\x79\x29\x7b\x73\x74\x6f\x72\x65\x4d\x61\x70\x70\x69\x6e\x67\x50\x61\x69\x72\x28\x73\x74\x61\x74\x65\x2c\x5f\x72\x65\x73\x75\x6c\x74\x2c\x6f\x76\x65\x72\x72\x69\x64\x61\x62\x6c\x65\x4b\x65\x79\x73\x2c\x6b\x65\x79\x54\x61\x67\x2c\x6b\x65\x79\x4e\x6f\x64\x65\x2c\x6e\x75\x6c\x6c\x29\x7d\x69\x66\x28\x64\x65\x74\x65\x63\x74\x65\x64\x29\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x5f\x74\x61\x67\x3b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x3d\x5f\x61\x6e\x63\x68\x6f\x72\x3b\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x3d\x22\x6d\x61\x70\x70\x69\x6e\x67\x22\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x5f\x72\x65\x73\x75\x6c\x74\x7d\x72\x65\x74\x75\x72\x6e\x20\x64\x65\x74\x65\x63\x74\x65\x64\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x54\x61\x67\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x69\x73\x56\x65\x72\x62\x61\x74\x69\x6d\x3d\x66\x61\x6c\x73\x65\x2c\x69\x73\x4e\x61\x6d\x65\x64\x3d\x66\x61\x6c\x73\x65\x2c\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x2c\x74\x61\x67\x4e\x61\x6d\x65\x2c\x63\x68\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x21\x3d\x3d\x33\x33\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x64\x75\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x20\x6f\x66\x20\x61\x20\x74\x61\x67\x20\x70\x72\x6f\x70\x65\x72\x74\x79\x22\x29\x7d\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x36\x30\x29\x7b\x69\x73\x56\x65\x72\x62\x61\x74\x69\x6d\x3d\x74\x72\x75\x65\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x3d\x3d\x3d\x33\x33\x29\x7b\x69\x73\x4e\x61\x6d\x65\x64\x3d\x74\x72\x75\x65\x3b\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x3d\x22\x21\x21\x22\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x65\x6c\x73\x65\x7b\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x3d\x22\x21\x22\x7d\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x69\x66\x28\x69\x73\x56\x65\x72\x62\x61\x74\x69\x6d\x29\x7b\x64\x6f\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x26\x26\x63\x68\x21\x3d\x3d\x36\x32\x29\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3c\x73\x74\x61\x74\x65\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x74\x61\x67\x4e\x61\x6d\x65\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x65\x78\x70\x65\x63\x74\x65\x64\x20\x65\x6e\x64\x20\x6f\x66\x20\x74\x68\x65\x20\x73\x74\x72\x65\x61\x6d\x20\x77\x69\x74\x68\x69\x6e\x20\x61\x20\x76\x65\x72\x62\x61\x74\x69\x6d\x20\x74\x61\x67\x22\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x26\x26\x21\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x33\x33\x29\x7b\x69\x66\x28\x21\x69\x73\x4e\x61\x6d\x65\x64\x29\x7b\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2d\x31\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x29\x3b\x69\x66\x28\x21\x50\x41\x54\x54\x45\x52\x4e\x5f\x54\x41\x47\x5f\x48\x41\x4e\x44\x4c\x45\x2e\x74\x65\x73\x74\x28\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x6e\x61\x6d\x65\x64\x20\x74\x61\x67\x20\x68\x61\x6e\x64\x6c\x65\x20\x63\x61\x6e\x6e\x6f\x74\x20\x63\x6f\x6e\x74\x61\x69\x6e\x20\x73\x75\x63\x68\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x73\x22\x29\x7d\x69\x73\x4e\x61\x6d\x65\x64\x3d\x74\x72\x75\x65\x3b\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x74\x61\x67\x20\x73\x75\x66\x66\x69\x78\x20\x63\x61\x6e\x6e\x6f\x74\x20\x63\x6f\x6e\x74\x61\x69\x6e\x20\x65\x78\x63\x6c\x61\x6d\x61\x74\x69\x6f\x6e\x20\x6d\x61\x72\x6b\x73\x22\x29\x7d\x7d\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x74\x61\x67\x4e\x61\x6d\x65\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x50\x41\x54\x54\x45\x52\x4e\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x44\x49\x43\x41\x54\x4f\x52\x53\x2e\x74\x65\x73\x74\x28\x74\x61\x67\x4e\x61\x6d\x65\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x74\x61\x67\x20\x73\x75\x66\x66\x69\x78\x20\x63\x61\x6e\x6e\x6f\x74\x20\x63\x6f\x6e\x74\x61\x69\x6e\x20\x66\x6c\x6f\x77\x20\x69\x6e\x64\x69\x63\x61\x74\x6f\x72\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x73\x22\x29\x7d\x7d\x69\x66\x28\x74\x61\x67\x4e\x61\x6d\x65\x26\x26\x21\x50\x41\x54\x54\x45\x52\x4e\x5f\x54\x41\x47\x5f\x55\x52\x49\x2e\x74\x65\x73\x74\x28\x74\x61\x67\x4e\x61\x6d\x65\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x74\x61\x67\x20\x6e\x61\x6d\x65\x20\x63\x61\x6e\x6e\x6f\x74\x20\x63\x6f\x6e\x74\x61\x69\x6e\x20\x73\x75\x63\x68\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x73\x3a\x20\x22\x2b\x74\x61\x67\x4e\x61\x6d\x65\x29\x7d\x69\x66\x28\x69\x73\x56\x65\x72\x62\x61\x74\x69\x6d\x29\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x74\x61\x67\x4e\x61\x6d\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x4d\x61\x70\x2c\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x29\x29\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x4d\x61\x70\x5b\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x5d\x2b\x74\x61\x67\x4e\x61\x6d\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x3d\x3d\x3d\x22\x21\x22\x29\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x22\x21\x22\x2b\x74\x61\x67\x4e\x61\x6d\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x3d\x3d\x3d\x22\x21\x21\x22\x29\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x22\x2b\x74\x61\x67\x4e\x61\x6d\x65\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x27\x75\x6e\x64\x65\x63\x6c\x61\x72\x65\x64\x20\x74\x61\x67\x20\x68\x61\x6e\x64\x6c\x65\x20\x22\x27\x2b\x74\x61\x67\x48\x61\x6e\x64\x6c\x65\x2b\x27\x22\x27\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x41\x6e\x63\x68\x6f\x72\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x63\x68\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x21\x3d\x3d\x33\x38\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x64\x75\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x20\x6f\x66\x20\x61\x6e\x20\x61\x6e\x63\x68\x6f\x72\x20\x70\x72\x6f\x70\x65\x72\x74\x79\x22\x29\x7d\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x26\x26\x21\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x63\x68\x29\x26\x26\x21\x69\x73\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x44\x49\x43\x41\x54\x4f\x52\x28\x63\x68\x29\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x6e\x61\x6d\x65\x20\x6f\x66\x20\x61\x6e\x20\x61\x6e\x63\x68\x6f\x72\x20\x6e\x6f\x64\x65\x20\x6d\x75\x73\x74\x20\x63\x6f\x6e\x74\x61\x69\x6e\x20\x61\x74\x20\x6c\x65\x61\x73\x74\x20\x6f\x6e\x65\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x22\x29\x7d\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x41\x6c\x69\x61\x73\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x61\x6c\x69\x61\x73\x2c\x63\x68\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x63\x68\x21\x3d\x3d\x34\x32\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x26\x26\x21\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x63\x68\x29\x26\x26\x21\x69\x73\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x44\x49\x43\x41\x54\x4f\x52\x28\x63\x68\x29\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x6e\x61\x6d\x65\x20\x6f\x66\x20\x61\x6e\x20\x61\x6c\x69\x61\x73\x20\x6e\x6f\x64\x65\x20\x6d\x75\x73\x74\x20\x63\x6f\x6e\x74\x61\x69\x6e\x20\x61\x74\x20\x6c\x65\x61\x73\x74\x20\x6f\x6e\x65\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x22\x29\x7d\x61\x6c\x69\x61\x73\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x21\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x4d\x61\x70\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x61\x6c\x69\x61\x73\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x27\x75\x6e\x69\x64\x65\x6e\x74\x69\x66\x69\x65\x64\x20\x61\x6c\x69\x61\x73\x20\x22\x27\x2b\x61\x6c\x69\x61\x73\x2b\x27\x22\x27\x29\x7d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x4d\x61\x70\x5b\x61\x6c\x69\x61\x73\x5d\x3b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x73\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x70\x61\x72\x65\x6e\x74\x49\x6e\x64\x65\x6e\x74\x2c\x6e\x6f\x64\x65\x43\x6f\x6e\x74\x65\x78\x74\x2c\x61\x6c\x6c\x6f\x77\x54\x6f\x53\x65\x65\x6b\x2c\x61\x6c\x6c\x6f\x77\x43\x6f\x6d\x70\x61\x63\x74\x29\x7b\x76\x61\x72\x20\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x53\x74\x79\x6c\x65\x73\x2c\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x53\x63\x61\x6c\x61\x72\x73\x2c\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x2c\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x31\x2c\x61\x74\x4e\x65\x77\x4c\x69\x6e\x65\x3d\x66\x61\x6c\x73\x65\x2c\x68\x61\x73\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x66\x61\x6c\x73\x65\x2c\x74\x79\x70\x65\x49\x6e\x64\x65\x78\x2c\x74\x79\x70\x65\x51\x75\x61\x6e\x74\x69\x74\x79\x2c\x74\x79\x70\x65\x2c\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x2c\x62\x6c\x6f\x63\x6b\x49\x6e\x64\x65\x6e\x74\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x73\x74\x65\x6e\x65\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x73\x74\x61\x74\x65\x2e\x6c\x69\x73\x74\x65\x6e\x65\x72\x28\x22\x6f\x70\x65\x6e\x22\x2c\x73\x74\x61\x74\x65\x29\x7d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x6e\x75\x6c\x6c\x3b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x3d\x6e\x75\x6c\x6c\x3b\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x3d\x6e\x75\x6c\x6c\x3b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x6e\x75\x6c\x6c\x3b\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x53\x74\x79\x6c\x65\x73\x3d\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x53\x63\x61\x6c\x61\x72\x73\x3d\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x3d\x43\x4f\x4e\x54\x45\x58\x54\x5f\x42\x4c\x4f\x43\x4b\x5f\x4f\x55\x54\x3d\x3d\x3d\x6e\x6f\x64\x65\x43\x6f\x6e\x74\x65\x78\x74\x7c\x7c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x42\x4c\x4f\x43\x4b\x5f\x49\x4e\x3d\x3d\x3d\x6e\x6f\x64\x65\x43\x6f\x6e\x74\x65\x78\x74\x3b\x69\x66\x28\x61\x6c\x6c\x6f\x77\x54\x6f\x53\x65\x65\x6b\x29\x7b\x69\x66\x28\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x29\x7b\x61\x74\x4e\x65\x77\x4c\x69\x6e\x65\x3d\x74\x72\x75\x65\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3e\x70\x61\x72\x65\x6e\x74\x49\x6e\x64\x65\x6e\x74\x29\x7b\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x31\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3d\x3d\x3d\x70\x61\x72\x65\x6e\x74\x49\x6e\x64\x65\x6e\x74\x29\x7b\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x30\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3c\x70\x61\x72\x65\x6e\x74\x49\x6e\x64\x65\x6e\x74\x29\x7b\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x2d\x31\x7d\x7d\x7d\x69\x66\x28\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x3d\x3d\x31\x29\x7b\x77\x68\x69\x6c\x65\x28\x72\x65\x61\x64\x54\x61\x67\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x73\x74\x61\x74\x65\x29\x7c\x7c\x72\x65\x61\x64\x41\x6e\x63\x68\x6f\x72\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x73\x74\x61\x74\x65\x29\x29\x7b\x69\x66\x28\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x29\x7b\x61\x74\x4e\x65\x77\x4c\x69\x6e\x65\x3d\x74\x72\x75\x65\x3b\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x3d\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x53\x74\x79\x6c\x65\x73\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3e\x70\x61\x72\x65\x6e\x74\x49\x6e\x64\x65\x6e\x74\x29\x7b\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x31\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3d\x3d\x3d\x70\x61\x72\x65\x6e\x74\x49\x6e\x64\x65\x6e\x74\x29\x7b\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x30\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3c\x70\x61\x72\x65\x6e\x74\x49\x6e\x64\x65\x6e\x74\x29\x7b\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x2d\x31\x7d\x7d\x65\x6c\x73\x65\x7b\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x3d\x66\x61\x6c\x73\x65\x7d\x7d\x7d\x69\x66\x28\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x29\x7b\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x3d\x61\x74\x4e\x65\x77\x4c\x69\x6e\x65\x7c\x7c\x61\x6c\x6c\x6f\x77\x43\x6f\x6d\x70\x61\x63\x74\x7d\x69\x66\x28\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x3d\x3d\x31\x7c\x7c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x42\x4c\x4f\x43\x4b\x5f\x4f\x55\x54\x3d\x3d\x3d\x6e\x6f\x64\x65\x43\x6f\x6e\x74\x65\x78\x74\x29\x7b\x69\x66\x28\x43\x4f\x4e\x54\x45\x58\x54\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x3d\x3d\x3d\x6e\x6f\x64\x65\x43\x6f\x6e\x74\x65\x78\x74\x7c\x7c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x46\x4c\x4f\x57\x5f\x4f\x55\x54\x3d\x3d\x3d\x6e\x6f\x64\x65\x43\x6f\x6e\x74\x65\x78\x74\x29\x7b\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x3d\x70\x61\x72\x65\x6e\x74\x49\x6e\x64\x65\x6e\x74\x7d\x65\x6c\x73\x65\x7b\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x3d\x70\x61\x72\x65\x6e\x74\x49\x6e\x64\x65\x6e\x74\x2b\x31\x7d\x62\x6c\x6f\x63\x6b\x49\x6e\x64\x65\x6e\x74\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x3b\x69\x66\x28\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x3d\x3d\x31\x29\x7b\x69\x66\x28\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x26\x26\x28\x72\x65\x61\x64\x42\x6c\x6f\x63\x6b\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x62\x6c\x6f\x63\x6b\x49\x6e\x64\x65\x6e\x74\x29\x7c\x7c\x72\x65\x61\x64\x42\x6c\x6f\x63\x6b\x4d\x61\x70\x70\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x62\x6c\x6f\x63\x6b\x49\x6e\x64\x65\x6e\x74\x2c\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x29\x29\x7c\x7c\x72\x65\x61\x64\x46\x6c\x6f\x77\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x2c\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x29\x29\x7b\x68\x61\x73\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x53\x63\x61\x6c\x61\x72\x73\x26\x26\x72\x65\x61\x64\x42\x6c\x6f\x63\x6b\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x29\x7c\x7c\x72\x65\x61\x64\x53\x69\x6e\x67\x6c\x65\x51\x75\x6f\x74\x65\x64\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x29\x7c\x7c\x72\x65\x61\x64\x44\x6f\x75\x62\x6c\x65\x51\x75\x6f\x74\x65\x64\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x29\x29\x7b\x68\x61\x73\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x72\x65\x61\x64\x41\x6c\x69\x61\x73\x28\x73\x74\x61\x74\x65\x29\x29\x7b\x68\x61\x73\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x74\x72\x75\x65\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x61\x6c\x69\x61\x73\x20\x6e\x6f\x64\x65\x20\x73\x68\x6f\x75\x6c\x64\x20\x6e\x6f\x74\x20\x68\x61\x76\x65\x20\x61\x6e\x79\x20\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x22\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x72\x65\x61\x64\x50\x6c\x61\x69\x6e\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x66\x6c\x6f\x77\x49\x6e\x64\x65\x6e\x74\x2c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x46\x4c\x4f\x57\x5f\x49\x4e\x3d\x3d\x3d\x6e\x6f\x64\x65\x43\x6f\x6e\x74\x65\x78\x74\x29\x29\x7b\x68\x61\x73\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x74\x72\x75\x65\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x22\x3f\x22\x7d\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x4d\x61\x70\x5b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x5d\x3d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x7d\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x69\x6e\x64\x65\x6e\x74\x53\x74\x61\x74\x75\x73\x3d\x3d\x3d\x30\x29\x7b\x68\x61\x73\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x61\x6c\x6c\x6f\x77\x42\x6c\x6f\x63\x6b\x43\x6f\x6c\x6c\x65\x63\x74\x69\x6f\x6e\x73\x26\x26\x72\x65\x61\x64\x42\x6c\x6f\x63\x6b\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x62\x6c\x6f\x63\x6b\x49\x6e\x64\x65\x6e\x74\x29\x7d\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x6e\x75\x6c\x6c\x26\x26\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x22\x21\x22\x29\x7b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x3d\x3d\x22\x3f\x22\x29\x7b\x66\x6f\x72\x28\x74\x79\x70\x65\x49\x6e\x64\x65\x78\x3d\x30\x2c\x74\x79\x70\x65\x51\x75\x61\x6e\x74\x69\x74\x79\x3d\x73\x74\x61\x74\x65\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x54\x79\x70\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x74\x79\x70\x65\x49\x6e\x64\x65\x78\x3c\x74\x79\x70\x65\x51\x75\x61\x6e\x74\x69\x74\x79\x3b\x74\x79\x70\x65\x49\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x74\x79\x70\x65\x3d\x73\x74\x61\x74\x65\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x54\x79\x70\x65\x73\x5b\x74\x79\x70\x65\x49\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x74\x79\x70\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x29\x29\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x74\x79\x70\x65\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x28\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x29\x3b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x74\x79\x70\x65\x2e\x74\x61\x67\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x4d\x61\x70\x5b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x5d\x3d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x7d\x62\x72\x65\x61\x6b\x7d\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x73\x74\x61\x74\x65\x2e\x74\x79\x70\x65\x4d\x61\x70\x5b\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x7c\x7c\x22\x66\x61\x6c\x6c\x62\x61\x63\x6b\x22\x5d\x2c\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x29\x29\x7b\x74\x79\x70\x65\x3d\x73\x74\x61\x74\x65\x2e\x74\x79\x70\x65\x4d\x61\x70\x5b\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x7c\x7c\x22\x66\x61\x6c\x6c\x62\x61\x63\x6b\x22\x5d\x5b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x5d\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x21\x3d\x3d\x6e\x75\x6c\x6c\x26\x26\x74\x79\x70\x65\x2e\x6b\x69\x6e\x64\x21\x3d\x3d\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x61\x63\x63\x65\x70\x74\x61\x62\x6c\x65\x20\x6e\x6f\x64\x65\x20\x6b\x69\x6e\x64\x20\x66\x6f\x72\x20\x21\x3c\x22\x2b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2b\x27\x3e\x20\x74\x61\x67\x3b\x20\x69\x74\x20\x73\x68\x6f\x75\x6c\x64\x20\x62\x65\x20\x22\x27\x2b\x74\x79\x70\x65\x2e\x6b\x69\x6e\x64\x2b\x27\x22\x2c\x20\x6e\x6f\x74\x20\x22\x27\x2b\x73\x74\x61\x74\x65\x2e\x6b\x69\x6e\x64\x2b\x27\x22\x27\x29\x7d\x69\x66\x28\x21\x74\x79\x70\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x29\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x63\x61\x6e\x6e\x6f\x74\x20\x72\x65\x73\x6f\x6c\x76\x65\x20\x61\x20\x6e\x6f\x64\x65\x20\x77\x69\x74\x68\x20\x21\x3c\x22\x2b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2b\x22\x3e\x20\x65\x78\x70\x6c\x69\x63\x69\x74\x20\x74\x61\x67\x22\x29\x7d\x65\x6c\x73\x65\x7b\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x3d\x74\x79\x70\x65\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x28\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x29\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x4d\x61\x70\x5b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x5d\x3d\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x7d\x7d\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x75\x6e\x6b\x6e\x6f\x77\x6e\x20\x74\x61\x67\x20\x21\x3c\x22\x2b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2b\x22\x3e\x22\x29\x7d\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x73\x74\x65\x6e\x65\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x73\x74\x61\x74\x65\x2e\x6c\x69\x73\x74\x65\x6e\x65\x72\x28\x22\x63\x6c\x6f\x73\x65\x22\x2c\x73\x74\x61\x74\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x21\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x68\x61\x73\x43\x6f\x6e\x74\x65\x6e\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x61\x64\x44\x6f\x63\x75\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x53\x74\x61\x72\x74\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x64\x69\x72\x65\x63\x74\x69\x76\x65\x4e\x61\x6d\x65\x2c\x64\x69\x72\x65\x63\x74\x69\x76\x65\x41\x72\x67\x73\x2c\x68\x61\x73\x44\x69\x72\x65\x63\x74\x69\x76\x65\x73\x3d\x66\x61\x6c\x73\x65\x2c\x63\x68\x3b\x73\x74\x61\x74\x65\x2e\x76\x65\x72\x73\x69\x6f\x6e\x3d\x6e\x75\x6c\x6c\x3b\x73\x74\x61\x74\x65\x2e\x63\x68\x65\x63\x6b\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x73\x3d\x73\x74\x61\x74\x65\x2e\x6c\x65\x67\x61\x63\x79\x3b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x4d\x61\x70\x3d\x7b\x7d\x3b\x73\x74\x61\x74\x65\x2e\x61\x6e\x63\x68\x6f\x72\x4d\x61\x70\x3d\x7b\x7d\x3b\x77\x68\x69\x6c\x65\x28\x28\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x29\x21\x3d\x3d\x30\x29\x7b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3e\x30\x7c\x7c\x63\x68\x21\x3d\x3d\x33\x37\x29\x7b\x62\x72\x65\x61\x6b\x7d\x68\x61\x73\x44\x69\x72\x65\x63\x74\x69\x76\x65\x73\x3d\x74\x72\x75\x65\x3b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x26\x26\x21\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x64\x69\x72\x65\x63\x74\x69\x76\x65\x4e\x61\x6d\x65\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x64\x69\x72\x65\x63\x74\x69\x76\x65\x41\x72\x67\x73\x3d\x5b\x5d\x3b\x69\x66\x28\x64\x69\x72\x65\x63\x74\x69\x76\x65\x4e\x61\x6d\x65\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x31\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x64\x69\x72\x65\x63\x74\x69\x76\x65\x20\x6e\x61\x6d\x65\x20\x6d\x75\x73\x74\x20\x6e\x6f\x74\x20\x62\x65\x20\x6c\x65\x73\x73\x20\x74\x68\x61\x6e\x20\x6f\x6e\x65\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x20\x69\x6e\x20\x6c\x65\x6e\x67\x74\x68\x22\x29\x7d\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x29\x7b\x77\x68\x69\x6c\x65\x28\x69\x73\x5f\x57\x48\x49\x54\x45\x5f\x53\x50\x41\x43\x45\x28\x63\x68\x29\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x69\x66\x28\x63\x68\x3d\x3d\x3d\x33\x35\x29\x7b\x64\x6f\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x26\x26\x21\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x3b\x62\x72\x65\x61\x6b\x7d\x69\x66\x28\x69\x73\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x62\x72\x65\x61\x6b\x3b\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x77\x68\x69\x6c\x65\x28\x63\x68\x21\x3d\x3d\x30\x26\x26\x21\x69\x73\x5f\x57\x53\x5f\x4f\x52\x5f\x45\x4f\x4c\x28\x63\x68\x29\x29\x7b\x63\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x2b\x2b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x7d\x64\x69\x72\x65\x63\x74\x69\x76\x65\x41\x72\x67\x73\x2e\x70\x75\x73\x68\x28\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x5f\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x29\x7d\x69\x66\x28\x63\x68\x21\x3d\x3d\x30\x29\x72\x65\x61\x64\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x28\x73\x74\x61\x74\x65\x29\x3b\x69\x66\x28\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x64\x69\x72\x65\x63\x74\x69\x76\x65\x48\x61\x6e\x64\x6c\x65\x72\x73\x2c\x64\x69\x72\x65\x63\x74\x69\x76\x65\x4e\x61\x6d\x65\x29\x29\x7b\x64\x69\x72\x65\x63\x74\x69\x76\x65\x48\x61\x6e\x64\x6c\x65\x72\x73\x5b\x64\x69\x72\x65\x63\x74\x69\x76\x65\x4e\x61\x6d\x65\x5d\x28\x73\x74\x61\x74\x65\x2c\x64\x69\x72\x65\x63\x74\x69\x76\x65\x4e\x61\x6d\x65\x2c\x64\x69\x72\x65\x63\x74\x69\x76\x65\x41\x72\x67\x73\x29\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x57\x61\x72\x6e\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x27\x75\x6e\x6b\x6e\x6f\x77\x6e\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x20\x64\x69\x72\x65\x63\x74\x69\x76\x65\x20\x22\x27\x2b\x64\x69\x72\x65\x63\x74\x69\x76\x65\x4e\x61\x6d\x65\x2b\x27\x22\x27\x29\x7d\x7d\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x3d\x3d\x3d\x30\x26\x26\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3d\x3d\x3d\x34\x35\x26\x26\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x31\x29\x3d\x3d\x3d\x34\x35\x26\x26\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x32\x29\x3d\x3d\x3d\x34\x35\x29\x7b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x3d\x33\x3b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x68\x61\x73\x44\x69\x72\x65\x63\x74\x69\x76\x65\x73\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x64\x69\x72\x65\x63\x74\x69\x76\x65\x73\x20\x65\x6e\x64\x20\x6d\x61\x72\x6b\x20\x69\x73\x20\x65\x78\x70\x65\x63\x74\x65\x64\x22\x29\x7d\x63\x6f\x6d\x70\x6f\x73\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x2d\x31\x2c\x43\x4f\x4e\x54\x45\x58\x54\x5f\x42\x4c\x4f\x43\x4b\x5f\x4f\x55\x54\x2c\x66\x61\x6c\x73\x65\x2c\x74\x72\x75\x65\x29\x3b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x63\x68\x65\x63\x6b\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x73\x26\x26\x50\x41\x54\x54\x45\x52\x4e\x5f\x4e\x4f\x4e\x5f\x41\x53\x43\x49\x49\x5f\x4c\x49\x4e\x45\x5f\x42\x52\x45\x41\x4b\x53\x2e\x74\x65\x73\x74\x28\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x53\x74\x61\x72\x74\x2c\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x29\x29\x7b\x74\x68\x72\x6f\x77\x57\x61\x72\x6e\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x22\x6e\x6f\x6e\x2d\x41\x53\x43\x49\x49\x20\x6c\x69\x6e\x65\x20\x62\x72\x65\x61\x6b\x73\x20\x61\x72\x65\x20\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x65\x64\x20\x61\x73\x20\x63\x6f\x6e\x74\x65\x6e\x74\x22\x29\x7d\x73\x74\x61\x74\x65\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x2e\x70\x75\x73\x68\x28\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x75\x6c\x74\x29\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x3d\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x53\x74\x61\x72\x74\x26\x26\x74\x65\x73\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x28\x73\x74\x61\x74\x65\x29\x29\x7b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3d\x3d\x3d\x34\x36\x29\x7b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x3d\x33\x3b\x73\x6b\x69\x70\x53\x65\x70\x61\x72\x61\x74\x69\x6f\x6e\x53\x70\x61\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x74\x72\x75\x65\x2c\x2d\x31\x29\x7d\x72\x65\x74\x75\x72\x6e\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3c\x73\x74\x61\x74\x65\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x29\x7b\x74\x68\x72\x6f\x77\x45\x72\x72\x6f\x72\x28\x73\x74\x61\x74\x65\x2c\x22\x65\x6e\x64\x20\x6f\x66\x20\x74\x68\x65\x20\x73\x74\x72\x65\x61\x6d\x20\x6f\x72\x20\x61\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x20\x73\x65\x70\x61\x72\x61\x74\x6f\x72\x20\x69\x73\x20\x65\x78\x70\x65\x63\x74\x65\x64\x22\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x6f\x61\x64\x44\x6f\x63\x75\x6d\x65\x6e\x74\x73\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x69\x6e\x70\x75\x74\x3d\x53\x74\x72\x69\x6e\x67\x28\x69\x6e\x70\x75\x74\x29\x3b\x6f\x70\x74\x69\x6f\x6e\x73\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x7c\x7c\x7b\x7d\x3b\x69\x66\x28\x69\x6e\x70\x75\x74\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x30\x29\x7b\x69\x66\x28\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x6e\x70\x75\x74\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x29\x21\x3d\x3d\x31\x30\x26\x26\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x6e\x70\x75\x74\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x29\x21\x3d\x3d\x31\x33\x29\x7b\x69\x6e\x70\x75\x74\x2b\x3d\x22\x5c\x6e\x22\x7d\x69\x66\x28\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x30\x29\x3d\x3d\x3d\x36\x35\x32\x37\x39\x29\x7b\x69\x6e\x70\x75\x74\x3d\x69\x6e\x70\x75\x74\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x7d\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x6e\x65\x77\x20\x53\x74\x61\x74\x65\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x3b\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2b\x3d\x22\x5c\x30\x22\x3b\x77\x68\x69\x6c\x65\x28\x73\x74\x61\x74\x65\x2e\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3d\x3d\x3d\x33\x32\x29\x7b\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x49\x6e\x64\x65\x6e\x74\x2b\x3d\x31\x3b\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2b\x3d\x31\x7d\x77\x68\x69\x6c\x65\x28\x73\x74\x61\x74\x65\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3c\x73\x74\x61\x74\x65\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x29\x7b\x72\x65\x61\x64\x44\x6f\x63\x75\x6d\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x6f\x61\x64\x41\x6c\x6c\x28\x69\x6e\x70\x75\x74\x2c\x69\x74\x65\x72\x61\x74\x6f\x72\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x76\x61\x72\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x3d\x6c\x6f\x61\x64\x44\x6f\x63\x75\x6d\x65\x6e\x74\x73\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x69\x74\x65\x72\x61\x74\x6f\x72\x21\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x7d\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x69\x74\x65\x72\x61\x74\x6f\x72\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x5b\x69\x6e\x64\x65\x78\x5d\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x6f\x61\x64\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x76\x61\x72\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x3d\x6c\x6f\x61\x64\x44\x6f\x63\x75\x6d\x65\x6e\x74\x73\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x3b\x69\x66\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x31\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x7d\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x65\x78\x70\x65\x63\x74\x65\x64\x20\x61\x20\x73\x69\x6e\x67\x6c\x65\x20\x64\x6f\x63\x75\x6d\x65\x6e\x74\x20\x69\x6e\x20\x74\x68\x65\x20\x73\x74\x72\x65\x61\x6d\x2c\x20\x62\x75\x74\x20\x66\x6f\x75\x6e\x64\x20\x6d\x6f\x72\x65\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x61\x66\x65\x4c\x6f\x61\x64\x41\x6c\x6c\x28\x69\x6e\x70\x75\x74\x2c\x6f\x75\x74\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6f\x75\x74\x70\x75\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x6c\x6f\x61\x64\x41\x6c\x6c\x28\x69\x6e\x70\x75\x74\x2c\x6f\x75\x74\x70\x75\x74\x2c\x63\x6f\x6d\x6d\x6f\x6e\x2e\x65\x78\x74\x65\x6e\x64\x28\x7b\x73\x63\x68\x65\x6d\x61\x3a\x44\x45\x46\x41\x55\x4c\x54\x5f\x53\x41\x46\x45\x5f\x53\x43\x48\x45\x4d\x41\x7d\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x6f\x61\x64\x41\x6c\x6c\x28\x69\x6e\x70\x75\x74\x2c\x63\x6f\x6d\x6d\x6f\x6e\x2e\x65\x78\x74\x65\x6e\x64\x28\x7b\x73\x63\x68\x65\x6d\x61\x3a\x44\x45\x46\x41\x55\x4c\x54\x5f\x53\x41\x46\x45\x5f\x53\x43\x48\x45\x4d\x41\x7d\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x29\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x61\x66\x65\x4c\x6f\x61\x64\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x6f\x61\x64\x28\x69\x6e\x70\x75\x74\x2c\x63\x6f\x6d\x6d\x6f\x6e\x2e\x65\x78\x74\x65\x6e\x64\x28\x7b\x73\x63\x68\x65\x6d\x61\x3a\x44\x45\x46\x41\x55\x4c\x54\x5f\x53\x41\x46\x45\x5f\x53\x43\x48\x45\x4d\x41\x7d\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x61\x64\x41\x6c\x6c\x3d\x6c\x6f\x61\x64\x41\x6c\x6c\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x6c\x6f\x61\x64\x3d\x6c\x6f\x61\x64\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x66\x65\x4c\x6f\x61\x64\x41\x6c\x6c\x3d\x73\x61\x66\x65\x4c\x6f\x61\x64\x41\x6c\x6c\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x66\x65\x4c\x6f\x61\x64\x3d\x73\x61\x66\x65\x4c\x6f\x61\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x6f\x6d\x6d\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x61\x72\x6b\x28\x6e\x61\x6d\x65\x2c\x62\x75\x66\x66\x65\x72\x2c\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x6c\x69\x6e\x65\x2c\x63\x6f\x6c\x75\x6d\x6e\x29\x7b\x74\x68\x69\x73\x2e\x6e\x61\x6d\x65\x3d\x6e\x61\x6d\x65\x3b\x74\x68\x69\x73\x2e\x62\x75\x66\x66\x65\x72\x3d\x62\x75\x66\x66\x65\x72\x3b\x74\x68\x69\x73\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x74\x68\x69\x73\x2e\x6c\x69\x6e\x65\x3d\x6c\x69\x6e\x65\x3b\x74\x68\x69\x73\x2e\x63\x6f\x6c\x75\x6d\x6e\x3d\x63\x6f\x6c\x75\x6d\x6e\x7d\x4d\x61\x72\x6b\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x67\x65\x74\x53\x6e\x69\x70\x70\x65\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x53\x6e\x69\x70\x70\x65\x74\x28\x69\x6e\x64\x65\x6e\x74\x2c\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x68\x65\x61\x64\x2c\x73\x74\x61\x72\x74\x2c\x74\x61\x69\x6c\x2c\x65\x6e\x64\x2c\x73\x6e\x69\x70\x70\x65\x74\x3b\x69\x66\x28\x21\x74\x68\x69\x73\x2e\x62\x75\x66\x66\x65\x72\x29\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x3b\x69\x6e\x64\x65\x6e\x74\x3d\x69\x6e\x64\x65\x6e\x74\x7c\x7c\x34\x3b\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x3d\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x7c\x7c\x37\x35\x3b\x68\x65\x61\x64\x3d\x22\x22\x3b\x73\x74\x61\x72\x74\x3d\x74\x68\x69\x73\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x77\x68\x69\x6c\x65\x28\x73\x74\x61\x72\x74\x3e\x30\x26\x26\x22\x5c\x30\x5c\x72\x5c\x6e\xc2\x85\x5c\x75\x32\x30\x32\x38\x5c\x75\x32\x30\x32\x39\x22\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x74\x68\x69\x73\x2e\x62\x75\x66\x66\x65\x72\x2e\x63\x68\x61\x72\x41\x74\x28\x73\x74\x61\x72\x74\x2d\x31\x29\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x73\x74\x61\x72\x74\x2d\x3d\x31\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2d\x73\x74\x61\x72\x74\x3e\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x2f\x32\x2d\x31\x29\x7b\x68\x65\x61\x64\x3d\x22\x20\x2e\x2e\x2e\x20\x22\x3b\x73\x74\x61\x72\x74\x2b\x3d\x35\x3b\x62\x72\x65\x61\x6b\x7d\x7d\x74\x61\x69\x6c\x3d\x22\x22\x3b\x65\x6e\x64\x3d\x74\x68\x69\x73\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3b\x77\x68\x69\x6c\x65\x28\x65\x6e\x64\x3c\x74\x68\x69\x73\x2e\x62\x75\x66\x66\x65\x72\x2e\x6c\x65\x6e\x67\x74\x68\x26\x26\x22\x5c\x30\x5c\x72\x5c\x6e\xc2\x85\x5c\x75\x32\x30\x32\x38\x5c\x75\x32\x30\x32\x39\x22\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x74\x68\x69\x73\x2e\x62\x75\x66\x66\x65\x72\x2e\x63\x68\x61\x72\x41\x74\x28\x65\x6e\x64\x29\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x65\x6e\x64\x2b\x3d\x31\x3b\x69\x66\x28\x65\x6e\x64\x2d\x74\x68\x69\x73\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3e\x6d\x61\x78\x4c\x65\x6e\x67\x74\x68\x2f\x32\x2d\x31\x29\x7b\x74\x61\x69\x6c\x3d\x22\x20\x2e\x2e\x2e\x20\x22\x3b\x65\x6e\x64\x2d\x3d\x35\x3b\x62\x72\x65\x61\x6b\x7d\x7d\x73\x6e\x69\x70\x70\x65\x74\x3d\x74\x68\x69\x73\x2e\x62\x75\x66\x66\x65\x72\x2e\x73\x6c\x69\x63\x65\x28\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x20\x22\x2c\x69\x6e\x64\x65\x6e\x74\x29\x2b\x68\x65\x61\x64\x2b\x73\x6e\x69\x70\x70\x65\x74\x2b\x74\x61\x69\x6c\x2b\x22\x5c\x6e\x22\x2b\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x20\x22\x2c\x69\x6e\x64\x65\x6e\x74\x2b\x74\x68\x69\x73\x2e\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2d\x73\x74\x61\x72\x74\x2b\x68\x65\x61\x64\x2e\x6c\x65\x6e\x67\x74\x68\x29\x2b\x22\x5e\x22\x7d\x3b\x4d\x61\x72\x6b\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x63\x6f\x6d\x70\x61\x63\x74\x29\x7b\x76\x61\x72\x20\x73\x6e\x69\x70\x70\x65\x74\x2c\x77\x68\x65\x72\x65\x3d\x22\x22\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x6e\x61\x6d\x65\x29\x7b\x77\x68\x65\x72\x65\x2b\x3d\x27\x69\x6e\x20\x22\x27\x2b\x74\x68\x69\x73\x2e\x6e\x61\x6d\x65\x2b\x27\x22\x20\x27\x7d\x77\x68\x65\x72\x65\x2b\x3d\x22\x61\x74\x20\x6c\x69\x6e\x65\x20\x22\x2b\x28\x74\x68\x69\x73\x2e\x6c\x69\x6e\x65\x2b\x31\x29\x2b\x22\x2c\x20\x63\x6f\x6c\x75\x6d\x6e\x20\x22\x2b\x28\x74\x68\x69\x73\x2e\x63\x6f\x6c\x75\x6d\x6e\x2b\x31\x29\x3b\x69\x66\x28\x21\x63\x6f\x6d\x70\x61\x63\x74\x29\x7b\x73\x6e\x69\x70\x70\x65\x74\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x6e\x69\x70\x70\x65\x74\x28\x29\x3b\x69\x66\x28\x73\x6e\x69\x70\x70\x65\x74\x29\x7b\x77\x68\x65\x72\x65\x2b\x3d\x22\x3a\x5c\x6e\x22\x2b\x73\x6e\x69\x70\x70\x65\x74\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x77\x68\x65\x72\x65\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x4d\x61\x72\x6b\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x73\x74\x72\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x61\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x61\x21\x3d\x3d\x6e\x75\x6c\x6c\x3f\x64\x61\x74\x61\x3a\x22\x22\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x73\x65\x71\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x65\x71\x75\x65\x6e\x63\x65\x22\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x61\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x61\x21\x3d\x3d\x6e\x75\x6c\x6c\x3f\x64\x61\x74\x61\x3a\x5b\x5d\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x6d\x61\x70\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x6d\x61\x70\x70\x69\x6e\x67\x22\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x61\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x61\x21\x3d\x3d\x6e\x75\x6c\x6c\x3f\x64\x61\x74\x61\x3a\x7b\x7d\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x4e\x75\x6c\x6c\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x6d\x61\x78\x3d\x64\x61\x74\x61\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x78\x3d\x3d\x3d\x31\x26\x26\x64\x61\x74\x61\x3d\x3d\x3d\x22\x7e\x22\x7c\x7c\x6d\x61\x78\x3d\x3d\x3d\x34\x26\x26\x28\x64\x61\x74\x61\x3d\x3d\x3d\x22\x6e\x75\x6c\x6c\x22\x7c\x7c\x64\x61\x74\x61\x3d\x3d\x3d\x22\x4e\x75\x6c\x6c\x22\x7c\x7c\x64\x61\x74\x61\x3d\x3d\x3d\x22\x4e\x55\x4c\x4c\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x4e\x75\x6c\x6c\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4e\x75\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x6e\x75\x6c\x6c\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x6e\x75\x6c\x6c\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x4e\x75\x6c\x6c\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x4e\x75\x6c\x6c\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3a\x69\x73\x4e\x75\x6c\x6c\x2c\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3a\x7b\x63\x61\x6e\x6f\x6e\x69\x63\x61\x6c\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x7e\x22\x7d\x2c\x6c\x6f\x77\x65\x72\x63\x61\x73\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x6e\x75\x6c\x6c\x22\x7d\x2c\x75\x70\x70\x65\x72\x63\x61\x73\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x4e\x55\x4c\x4c\x22\x7d\x2c\x63\x61\x6d\x65\x6c\x63\x61\x73\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x4e\x75\x6c\x6c\x22\x7d\x7d\x2c\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x79\x6c\x65\x3a\x22\x6c\x6f\x77\x65\x72\x63\x61\x73\x65\x22\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x42\x6f\x6f\x6c\x65\x61\x6e\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x6d\x61\x78\x3d\x64\x61\x74\x61\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x78\x3d\x3d\x3d\x34\x26\x26\x28\x64\x61\x74\x61\x3d\x3d\x3d\x22\x74\x72\x75\x65\x22\x7c\x7c\x64\x61\x74\x61\x3d\x3d\x3d\x22\x54\x72\x75\x65\x22\x7c\x7c\x64\x61\x74\x61\x3d\x3d\x3d\x22\x54\x52\x55\x45\x22\x29\x7c\x7c\x6d\x61\x78\x3d\x3d\x3d\x35\x26\x26\x28\x64\x61\x74\x61\x3d\x3d\x3d\x22\x66\x61\x6c\x73\x65\x22\x7c\x7c\x64\x61\x74\x61\x3d\x3d\x3d\x22\x46\x61\x6c\x73\x65\x22\x7c\x7c\x64\x61\x74\x61\x3d\x3d\x3d\x22\x46\x41\x4c\x53\x45\x22\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x42\x6f\x6f\x6c\x65\x61\x6e\x28\x64\x61\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x61\x3d\x3d\x3d\x22\x74\x72\x75\x65\x22\x7c\x7c\x64\x61\x74\x61\x3d\x3d\x3d\x22\x54\x72\x75\x65\x22\x7c\x7c\x64\x61\x74\x61\x3d\x3d\x3d\x22\x54\x52\x55\x45\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x42\x6f\x6f\x6c\x65\x61\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x29\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x42\x6f\x6f\x6c\x65\x61\x6e\x5d\x22\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x62\x6f\x6f\x6c\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x42\x6f\x6f\x6c\x65\x61\x6e\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x42\x6f\x6f\x6c\x65\x61\x6e\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3a\x69\x73\x42\x6f\x6f\x6c\x65\x61\x6e\x2c\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3a\x7b\x6c\x6f\x77\x65\x72\x63\x61\x73\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3f\x22\x74\x72\x75\x65\x22\x3a\x22\x66\x61\x6c\x73\x65\x22\x7d\x2c\x75\x70\x70\x65\x72\x63\x61\x73\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3f\x22\x54\x52\x55\x45\x22\x3a\x22\x46\x41\x4c\x53\x45\x22\x7d\x2c\x63\x61\x6d\x65\x6c\x63\x61\x73\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3f\x22\x54\x72\x75\x65\x22\x3a\x22\x46\x61\x6c\x73\x65\x22\x7d\x7d\x2c\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x79\x6c\x65\x3a\x22\x6c\x6f\x77\x65\x72\x63\x61\x73\x65\x22\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x6f\x6d\x6d\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x29\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x48\x65\x78\x43\x6f\x64\x65\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x34\x38\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x35\x37\x7c\x7c\x36\x35\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x37\x30\x7c\x7c\x39\x37\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x31\x30\x32\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x4f\x63\x74\x43\x6f\x64\x65\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x34\x38\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x35\x35\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x44\x65\x63\x43\x6f\x64\x65\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x34\x38\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x35\x37\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x49\x6e\x74\x65\x67\x65\x72\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x6d\x61\x78\x3d\x64\x61\x74\x61\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x69\x6e\x64\x65\x78\x3d\x30\x2c\x68\x61\x73\x44\x69\x67\x69\x74\x73\x3d\x66\x61\x6c\x73\x65\x2c\x63\x68\x3b\x69\x66\x28\x21\x6d\x61\x78\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x63\x68\x3d\x64\x61\x74\x61\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x2d\x22\x7c\x7c\x63\x68\x3d\x3d\x3d\x22\x2b\x22\x29\x7b\x63\x68\x3d\x64\x61\x74\x61\x5b\x2b\x2b\x69\x6e\x64\x65\x78\x5d\x7d\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x30\x22\x29\x7b\x69\x66\x28\x69\x6e\x64\x65\x78\x2b\x31\x3d\x3d\x3d\x6d\x61\x78\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x63\x68\x3d\x64\x61\x74\x61\x5b\x2b\x2b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x62\x22\x29\x7b\x69\x6e\x64\x65\x78\x2b\x2b\x3b\x66\x6f\x72\x28\x3b\x69\x6e\x64\x65\x78\x3c\x6d\x61\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x63\x68\x3d\x64\x61\x74\x61\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x5f\x22\x29\x63\x6f\x6e\x74\x69\x6e\x75\x65\x3b\x69\x66\x28\x63\x68\x21\x3d\x3d\x22\x30\x22\x26\x26\x63\x68\x21\x3d\x3d\x22\x31\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x68\x61\x73\x44\x69\x67\x69\x74\x73\x3d\x74\x72\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x44\x69\x67\x69\x74\x73\x26\x26\x63\x68\x21\x3d\x3d\x22\x5f\x22\x7d\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x78\x22\x29\x7b\x69\x6e\x64\x65\x78\x2b\x2b\x3b\x66\x6f\x72\x28\x3b\x69\x6e\x64\x65\x78\x3c\x6d\x61\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x63\x68\x3d\x64\x61\x74\x61\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x5f\x22\x29\x63\x6f\x6e\x74\x69\x6e\x75\x65\x3b\x69\x66\x28\x21\x69\x73\x48\x65\x78\x43\x6f\x64\x65\x28\x64\x61\x74\x61\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x6e\x64\x65\x78\x29\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x68\x61\x73\x44\x69\x67\x69\x74\x73\x3d\x74\x72\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x44\x69\x67\x69\x74\x73\x26\x26\x63\x68\x21\x3d\x3d\x22\x5f\x22\x7d\x66\x6f\x72\x28\x3b\x69\x6e\x64\x65\x78\x3c\x6d\x61\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x63\x68\x3d\x64\x61\x74\x61\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x5f\x22\x29\x63\x6f\x6e\x74\x69\x6e\x75\x65\x3b\x69\x66\x28\x21\x69\x73\x4f\x63\x74\x43\x6f\x64\x65\x28\x64\x61\x74\x61\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x6e\x64\x65\x78\x29\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x68\x61\x73\x44\x69\x67\x69\x74\x73\x3d\x74\x72\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x44\x69\x67\x69\x74\x73\x26\x26\x63\x68\x21\x3d\x3d\x22\x5f\x22\x7d\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x5f\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x66\x6f\x72\x28\x3b\x69\x6e\x64\x65\x78\x3c\x6d\x61\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x7b\x63\x68\x3d\x64\x61\x74\x61\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x5f\x22\x29\x63\x6f\x6e\x74\x69\x6e\x75\x65\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x3a\x22\x29\x62\x72\x65\x61\x6b\x3b\x69\x66\x28\x21\x69\x73\x44\x65\x63\x43\x6f\x64\x65\x28\x64\x61\x74\x61\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x6e\x64\x65\x78\x29\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x68\x61\x73\x44\x69\x67\x69\x74\x73\x3d\x74\x72\x75\x65\x7d\x69\x66\x28\x21\x68\x61\x73\x44\x69\x67\x69\x74\x73\x7c\x7c\x63\x68\x3d\x3d\x3d\x22\x5f\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x63\x68\x21\x3d\x3d\x22\x3a\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x2f\x5e\x28\x3a\x5b\x30\x2d\x35\x5d\x3f\x5b\x30\x2d\x39\x5d\x29\x2b\x24\x2f\x2e\x74\x65\x73\x74\x28\x64\x61\x74\x61\x2e\x73\x6c\x69\x63\x65\x28\x69\x6e\x64\x65\x78\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x49\x6e\x74\x65\x67\x65\x72\x28\x64\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x64\x61\x74\x61\x2c\x73\x69\x67\x6e\x3d\x31\x2c\x63\x68\x2c\x62\x61\x73\x65\x2c\x64\x69\x67\x69\x74\x73\x3d\x5b\x5d\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x5f\x22\x29\x21\x3d\x3d\x2d\x31\x29\x7b\x76\x61\x6c\x75\x65\x3d\x76\x61\x6c\x75\x65\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5f\x2f\x67\x2c\x22\x22\x29\x7d\x63\x68\x3d\x76\x61\x6c\x75\x65\x5b\x30\x5d\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x2d\x22\x7c\x7c\x63\x68\x3d\x3d\x3d\x22\x2b\x22\x29\x7b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x2d\x22\x29\x73\x69\x67\x6e\x3d\x2d\x31\x3b\x76\x61\x6c\x75\x65\x3d\x76\x61\x6c\x75\x65\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x3b\x63\x68\x3d\x76\x61\x6c\x75\x65\x5b\x30\x5d\x7d\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x30\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x30\x3b\x69\x66\x28\x63\x68\x3d\x3d\x3d\x22\x30\x22\x29\x7b\x69\x66\x28\x76\x61\x6c\x75\x65\x5b\x31\x5d\x3d\x3d\x3d\x22\x62\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x69\x67\x6e\x2a\x70\x61\x72\x73\x65\x49\x6e\x74\x28\x76\x61\x6c\x75\x65\x2e\x73\x6c\x69\x63\x65\x28\x32\x29\x2c\x32\x29\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x5b\x31\x5d\x3d\x3d\x3d\x22\x78\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x69\x67\x6e\x2a\x70\x61\x72\x73\x65\x49\x6e\x74\x28\x76\x61\x6c\x75\x65\x2c\x31\x36\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x69\x67\x6e\x2a\x70\x61\x72\x73\x65\x49\x6e\x74\x28\x76\x61\x6c\x75\x65\x2c\x38\x29\x7d\x69\x66\x28\x76\x61\x6c\x75\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x3a\x22\x29\x21\x3d\x3d\x2d\x31\x29\x7b\x76\x61\x6c\x75\x65\x2e\x73\x70\x6c\x69\x74\x28\x22\x3a\x22\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x64\x69\x67\x69\x74\x73\x2e\x75\x6e\x73\x68\x69\x66\x74\x28\x70\x61\x72\x73\x65\x49\x6e\x74\x28\x76\x2c\x31\x30\x29\x29\x7d\x29\x3b\x76\x61\x6c\x75\x65\x3d\x30\x3b\x62\x61\x73\x65\x3d\x31\x3b\x64\x69\x67\x69\x74\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x29\x7b\x76\x61\x6c\x75\x65\x2b\x3d\x64\x2a\x62\x61\x73\x65\x3b\x62\x61\x73\x65\x2a\x3d\x36\x30\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x69\x67\x6e\x2a\x76\x61\x6c\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x69\x67\x6e\x2a\x70\x61\x72\x73\x65\x49\x6e\x74\x28\x76\x61\x6c\x75\x65\x2c\x31\x30\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x49\x6e\x74\x65\x67\x65\x72\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x29\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4e\x75\x6d\x62\x65\x72\x5d\x22\x26\x26\x28\x6f\x62\x6a\x65\x63\x74\x25\x31\x3d\x3d\x3d\x30\x26\x26\x21\x63\x6f\x6d\x6d\x6f\x6e\x2e\x69\x73\x4e\x65\x67\x61\x74\x69\x76\x65\x5a\x65\x72\x6f\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x69\x6e\x74\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x49\x6e\x74\x65\x67\x65\x72\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x49\x6e\x74\x65\x67\x65\x72\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3a\x69\x73\x49\x6e\x74\x65\x67\x65\x72\x2c\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3a\x7b\x62\x69\x6e\x61\x72\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x3e\x3d\x30\x3f\x22\x30\x62\x22\x2b\x6f\x62\x6a\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x32\x29\x3a\x22\x2d\x30\x62\x22\x2b\x6f\x62\x6a\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x32\x29\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x2c\x6f\x63\x74\x61\x6c\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x3e\x3d\x30\x3f\x22\x30\x22\x2b\x6f\x62\x6a\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x38\x29\x3a\x22\x2d\x30\x22\x2b\x6f\x62\x6a\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x38\x29\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x2c\x64\x65\x63\x69\x6d\x61\x6c\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x31\x30\x29\x7d\x2c\x68\x65\x78\x61\x64\x65\x63\x69\x6d\x61\x6c\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x3e\x3d\x30\x3f\x22\x30\x78\x22\x2b\x6f\x62\x6a\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x31\x36\x29\x2e\x74\x6f\x55\x70\x70\x65\x72\x43\x61\x73\x65\x28\x29\x3a\x22\x2d\x30\x78\x22\x2b\x6f\x62\x6a\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x31\x36\x29\x2e\x74\x6f\x55\x70\x70\x65\x72\x43\x61\x73\x65\x28\x29\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x7d\x2c\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x79\x6c\x65\x3a\x22\x64\x65\x63\x69\x6d\x61\x6c\x22\x2c\x73\x74\x79\x6c\x65\x41\x6c\x69\x61\x73\x65\x73\x3a\x7b\x62\x69\x6e\x61\x72\x79\x3a\x5b\x32\x2c\x22\x62\x69\x6e\x22\x5d\x2c\x6f\x63\x74\x61\x6c\x3a\x5b\x38\x2c\x22\x6f\x63\x74\x22\x5d\x2c\x64\x65\x63\x69\x6d\x61\x6c\x3a\x5b\x31\x30\x2c\x22\x64\x65\x63\x22\x5d\x2c\x68\x65\x78\x61\x64\x65\x63\x69\x6d\x61\x6c\x3a\x5b\x31\x36\x2c\x22\x68\x65\x78\x22\x5d\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x6f\x6d\x6d\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x29\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x76\x61\x72\x20\x59\x41\x4d\x4c\x5f\x46\x4c\x4f\x41\x54\x5f\x50\x41\x54\x54\x45\x52\x4e\x3d\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x22\x5e\x28\x3f\x3a\x5b\x2d\x2b\x5d\x3f\x28\x3f\x3a\x30\x7c\x5b\x31\x2d\x39\x5d\x5b\x30\x2d\x39\x5f\x5d\x2a\x29\x28\x3f\x3a\x5c\x5c\x2e\x5b\x30\x2d\x39\x5f\x5d\x2a\x29\x3f\x28\x3f\x3a\x5b\x65\x45\x5d\x5b\x2d\x2b\x5d\x3f\x5b\x30\x2d\x39\x5d\x2b\x29\x3f\x22\x2b\x22\x7c\x5c\x5c\x2e\x5b\x30\x2d\x39\x5f\x5d\x2b\x28\x3f\x3a\x5b\x65\x45\x5d\x5b\x2d\x2b\x5d\x3f\x5b\x30\x2d\x39\x5d\x2b\x29\x3f\x22\x2b\x22\x7c\x5b\x2d\x2b\x5d\x3f\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5f\x5d\x2a\x28\x3f\x3a\x3a\x5b\x30\x2d\x35\x5d\x3f\x5b\x30\x2d\x39\x5d\x29\x2b\x5c\x5c\x2e\x5b\x30\x2d\x39\x5f\x5d\x2a\x22\x2b\x22\x7c\x5b\x2d\x2b\x5d\x3f\x5c\x5c\x2e\x28\x3f\x3a\x69\x6e\x66\x7c\x49\x6e\x66\x7c\x49\x4e\x46\x29\x22\x2b\x22\x7c\x5c\x5c\x2e\x28\x3f\x3a\x6e\x61\x6e\x7c\x4e\x61\x4e\x7c\x4e\x41\x4e\x29\x29\x24\x22\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x46\x6c\x6f\x61\x74\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x21\x59\x41\x4d\x4c\x5f\x46\x4c\x4f\x41\x54\x5f\x50\x41\x54\x54\x45\x52\x4e\x2e\x74\x65\x73\x74\x28\x64\x61\x74\x61\x29\x7c\x7c\x64\x61\x74\x61\x5b\x64\x61\x74\x61\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x5d\x3d\x3d\x3d\x22\x5f\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x46\x6c\x6f\x61\x74\x28\x64\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x2c\x73\x69\x67\x6e\x2c\x62\x61\x73\x65\x2c\x64\x69\x67\x69\x74\x73\x3b\x76\x61\x6c\x75\x65\x3d\x64\x61\x74\x61\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5f\x2f\x67\x2c\x22\x22\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x3b\x73\x69\x67\x6e\x3d\x76\x61\x6c\x75\x65\x5b\x30\x5d\x3d\x3d\x3d\x22\x2d\x22\x3f\x2d\x31\x3a\x31\x3b\x64\x69\x67\x69\x74\x73\x3d\x5b\x5d\x3b\x69\x66\x28\x22\x2b\x2d\x22\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x76\x61\x6c\x75\x65\x5b\x30\x5d\x29\x3e\x3d\x30\x29\x7b\x76\x61\x6c\x75\x65\x3d\x76\x61\x6c\x75\x65\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x2e\x69\x6e\x66\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x69\x67\x6e\x3d\x3d\x3d\x31\x3f\x4e\x75\x6d\x62\x65\x72\x2e\x50\x4f\x53\x49\x54\x49\x56\x45\x5f\x49\x4e\x46\x49\x4e\x49\x54\x59\x3a\x4e\x75\x6d\x62\x65\x72\x2e\x4e\x45\x47\x41\x54\x49\x56\x45\x5f\x49\x4e\x46\x49\x4e\x49\x54\x59\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x2e\x6e\x61\x6e\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4e\x61\x4e\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x76\x61\x6c\x75\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x3a\x22\x29\x3e\x3d\x30\x29\x7b\x76\x61\x6c\x75\x65\x2e\x73\x70\x6c\x69\x74\x28\x22\x3a\x22\x29\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x64\x69\x67\x69\x74\x73\x2e\x75\x6e\x73\x68\x69\x66\x74\x28\x70\x61\x72\x73\x65\x46\x6c\x6f\x61\x74\x28\x76\x2c\x31\x30\x29\x29\x7d\x29\x3b\x76\x61\x6c\x75\x65\x3d\x30\x3b\x62\x61\x73\x65\x3d\x31\x3b\x64\x69\x67\x69\x74\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x29\x7b\x76\x61\x6c\x75\x65\x2b\x3d\x64\x2a\x62\x61\x73\x65\x3b\x62\x61\x73\x65\x2a\x3d\x36\x30\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x69\x67\x6e\x2a\x76\x61\x6c\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x69\x67\x6e\x2a\x70\x61\x72\x73\x65\x46\x6c\x6f\x61\x74\x28\x76\x61\x6c\x75\x65\x2c\x31\x30\x29\x7d\x76\x61\x72\x20\x53\x43\x49\x45\x4e\x54\x49\x46\x49\x43\x5f\x57\x49\x54\x48\x4f\x55\x54\x5f\x44\x4f\x54\x3d\x2f\x5e\x5b\x2d\x2b\x5d\x3f\x5b\x30\x2d\x39\x5d\x2b\x65\x2f\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x59\x61\x6d\x6c\x46\x6c\x6f\x61\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x73\x74\x79\x6c\x65\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x3b\x69\x66\x28\x69\x73\x4e\x61\x4e\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x73\x74\x79\x6c\x65\x29\x7b\x63\x61\x73\x65\x22\x6c\x6f\x77\x65\x72\x63\x61\x73\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x22\x2e\x6e\x61\x6e\x22\x3b\x63\x61\x73\x65\x22\x75\x70\x70\x65\x72\x63\x61\x73\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x22\x2e\x4e\x41\x4e\x22\x3b\x63\x61\x73\x65\x22\x63\x61\x6d\x65\x6c\x63\x61\x73\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x22\x2e\x4e\x61\x4e\x22\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x4e\x75\x6d\x62\x65\x72\x2e\x50\x4f\x53\x49\x54\x49\x56\x45\x5f\x49\x4e\x46\x49\x4e\x49\x54\x59\x3d\x3d\x3d\x6f\x62\x6a\x65\x63\x74\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x73\x74\x79\x6c\x65\x29\x7b\x63\x61\x73\x65\x22\x6c\x6f\x77\x65\x72\x63\x61\x73\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x22\x2e\x69\x6e\x66\x22\x3b\x63\x61\x73\x65\x22\x75\x70\x70\x65\x72\x63\x61\x73\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x22\x2e\x49\x4e\x46\x22\x3b\x63\x61\x73\x65\x22\x63\x61\x6d\x65\x6c\x63\x61\x73\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x22\x2e\x49\x6e\x66\x22\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x4e\x75\x6d\x62\x65\x72\x2e\x4e\x45\x47\x41\x54\x49\x56\x45\x5f\x49\x4e\x46\x49\x4e\x49\x54\x59\x3d\x3d\x3d\x6f\x62\x6a\x65\x63\x74\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x73\x74\x79\x6c\x65\x29\x7b\x63\x61\x73\x65\x22\x6c\x6f\x77\x65\x72\x63\x61\x73\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x22\x2d\x2e\x69\x6e\x66\x22\x3b\x63\x61\x73\x65\x22\x75\x70\x70\x65\x72\x63\x61\x73\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x22\x2d\x2e\x49\x4e\x46\x22\x3b\x63\x61\x73\x65\x22\x63\x61\x6d\x65\x6c\x63\x61\x73\x65\x22\x3a\x72\x65\x74\x75\x72\x6e\x22\x2d\x2e\x49\x6e\x66\x22\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x6f\x6d\x6d\x6f\x6e\x2e\x69\x73\x4e\x65\x67\x61\x74\x69\x76\x65\x5a\x65\x72\x6f\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x2d\x30\x2e\x30\x22\x7d\x72\x65\x73\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x31\x30\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x53\x43\x49\x45\x4e\x54\x49\x46\x49\x43\x5f\x57\x49\x54\x48\x4f\x55\x54\x5f\x44\x4f\x54\x2e\x74\x65\x73\x74\x28\x72\x65\x73\x29\x3f\x72\x65\x73\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x22\x65\x22\x2c\x22\x2e\x65\x22\x29\x3a\x72\x65\x73\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x46\x6c\x6f\x61\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x29\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4e\x75\x6d\x62\x65\x72\x5d\x22\x26\x26\x28\x6f\x62\x6a\x65\x63\x74\x25\x31\x21\x3d\x3d\x30\x7c\x7c\x63\x6f\x6d\x6d\x6f\x6e\x2e\x69\x73\x4e\x65\x67\x61\x74\x69\x76\x65\x5a\x65\x72\x6f\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x66\x6c\x6f\x61\x74\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x46\x6c\x6f\x61\x74\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x46\x6c\x6f\x61\x74\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3a\x69\x73\x46\x6c\x6f\x61\x74\x2c\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3a\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x59\x61\x6d\x6c\x46\x6c\x6f\x61\x74\x2c\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x79\x6c\x65\x3a\x22\x6c\x6f\x77\x65\x72\x63\x61\x73\x65\x22\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x76\x61\x72\x20\x59\x41\x4d\x4c\x5f\x44\x41\x54\x45\x5f\x52\x45\x47\x45\x58\x50\x3d\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x22\x5e\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x29\x22\x2b\x22\x2d\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x29\x22\x2b\x22\x2d\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x29\x24\x22\x29\x3b\x76\x61\x72\x20\x59\x41\x4d\x4c\x5f\x54\x49\x4d\x45\x53\x54\x41\x4d\x50\x5f\x52\x45\x47\x45\x58\x50\x3d\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x22\x5e\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x29\x22\x2b\x22\x2d\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x3f\x29\x22\x2b\x22\x2d\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x3f\x29\x22\x2b\x22\x28\x3f\x3a\x5b\x54\x74\x5d\x7c\x5b\x20\x5c\x5c\x74\x5d\x2b\x29\x22\x2b\x22\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x3f\x29\x22\x2b\x22\x3a\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x29\x22\x2b\x22\x3a\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x29\x22\x2b\x22\x28\x3f\x3a\x5c\x5c\x2e\x28\x5b\x30\x2d\x39\x5d\x2a\x29\x29\x3f\x22\x2b\x22\x28\x3f\x3a\x5b\x20\x5c\x5c\x74\x5d\x2a\x28\x5a\x7c\x28\x5b\x2d\x2b\x5d\x29\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x3f\x29\x22\x2b\x22\x28\x3f\x3a\x3a\x28\x5b\x30\x2d\x39\x5d\x5b\x30\x2d\x39\x5d\x29\x29\x3f\x29\x29\x3f\x24\x22\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x54\x69\x6d\x65\x73\x74\x61\x6d\x70\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x59\x41\x4d\x4c\x5f\x44\x41\x54\x45\x5f\x52\x45\x47\x45\x58\x50\x2e\x65\x78\x65\x63\x28\x64\x61\x74\x61\x29\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x69\x66\x28\x59\x41\x4d\x4c\x5f\x54\x49\x4d\x45\x53\x54\x41\x4d\x50\x5f\x52\x45\x47\x45\x58\x50\x2e\x65\x78\x65\x63\x28\x64\x61\x74\x61\x29\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x54\x69\x6d\x65\x73\x74\x61\x6d\x70\x28\x64\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x6d\x61\x74\x63\x68\x2c\x79\x65\x61\x72\x2c\x6d\x6f\x6e\x74\x68\x2c\x64\x61\x79\x2c\x68\x6f\x75\x72\x2c\x6d\x69\x6e\x75\x74\x65\x2c\x73\x65\x63\x6f\x6e\x64\x2c\x66\x72\x61\x63\x74\x69\x6f\x6e\x3d\x30\x2c\x64\x65\x6c\x74\x61\x3d\x6e\x75\x6c\x6c\x2c\x74\x7a\x5f\x68\x6f\x75\x72\x2c\x74\x7a\x5f\x6d\x69\x6e\x75\x74\x65\x2c\x64\x61\x74\x65\x3b\x6d\x61\x74\x63\x68\x3d\x59\x41\x4d\x4c\x5f\x44\x41\x54\x45\x5f\x52\x45\x47\x45\x58\x50\x2e\x65\x78\x65\x63\x28\x64\x61\x74\x61\x29\x3b\x69\x66\x28\x6d\x61\x74\x63\x68\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x6d\x61\x74\x63\x68\x3d\x59\x41\x4d\x4c\x5f\x54\x49\x4d\x45\x53\x54\x41\x4d\x50\x5f\x52\x45\x47\x45\x58\x50\x2e\x65\x78\x65\x63\x28\x64\x61\x74\x61\x29\x3b\x69\x66\x28\x6d\x61\x74\x63\x68\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x44\x61\x74\x65\x20\x72\x65\x73\x6f\x6c\x76\x65\x20\x65\x72\x72\x6f\x72\x22\x29\x3b\x79\x65\x61\x72\x3d\x2b\x6d\x61\x74\x63\x68\x5b\x31\x5d\x3b\x6d\x6f\x6e\x74\x68\x3d\x2b\x6d\x61\x74\x63\x68\x5b\x32\x5d\x2d\x31\x3b\x64\x61\x79\x3d\x2b\x6d\x61\x74\x63\x68\x5b\x33\x5d\x3b\x69\x66\x28\x21\x6d\x61\x74\x63\x68\x5b\x34\x5d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x44\x61\x74\x65\x28\x44\x61\x74\x65\x2e\x55\x54\x43\x28\x79\x65\x61\x72\x2c\x6d\x6f\x6e\x74\x68\x2c\x64\x61\x79\x29\x29\x7d\x68\x6f\x75\x72\x3d\x2b\x6d\x61\x74\x63\x68\x5b\x34\x5d\x3b\x6d\x69\x6e\x75\x74\x65\x3d\x2b\x6d\x61\x74\x63\x68\x5b\x35\x5d\x3b\x73\x65\x63\x6f\x6e\x64\x3d\x2b\x6d\x61\x74\x63\x68\x5b\x36\x5d\x3b\x69\x66\x28\x6d\x61\x74\x63\x68\x5b\x37\x5d\x29\x7b\x66\x72\x61\x63\x74\x69\x6f\x6e\x3d\x6d\x61\x74\x63\x68\x5b\x37\x5d\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x33\x29\x3b\x77\x68\x69\x6c\x65\x28\x66\x72\x61\x63\x74\x69\x6f\x6e\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x33\x29\x7b\x66\x72\x61\x63\x74\x69\x6f\x6e\x2b\x3d\x22\x30\x22\x7d\x66\x72\x61\x63\x74\x69\x6f\x6e\x3d\x2b\x66\x72\x61\x63\x74\x69\x6f\x6e\x7d\x69\x66\x28\x6d\x61\x74\x63\x68\x5b\x39\x5d\x29\x7b\x74\x7a\x5f\x68\x6f\x75\x72\x3d\x2b\x6d\x61\x74\x63\x68\x5b\x31\x30\x5d\x3b\x74\x7a\x5f\x6d\x69\x6e\x75\x74\x65\x3d\x2b\x28\x6d\x61\x74\x63\x68\x5b\x31\x31\x5d\x7c\x7c\x30\x29\x3b\x64\x65\x6c\x74\x61\x3d\x28\x74\x7a\x5f\x68\x6f\x75\x72\x2a\x36\x30\x2b\x74\x7a\x5f\x6d\x69\x6e\x75\x74\x65\x29\x2a\x36\x65\x34\x3b\x69\x66\x28\x6d\x61\x74\x63\x68\x5b\x39\x5d\x3d\x3d\x3d\x22\x2d\x22\x29\x64\x65\x6c\x74\x61\x3d\x2d\x64\x65\x6c\x74\x61\x7d\x64\x61\x74\x65\x3d\x6e\x65\x77\x20\x44\x61\x74\x65\x28\x44\x61\x74\x65\x2e\x55\x54\x43\x28\x79\x65\x61\x72\x2c\x6d\x6f\x6e\x74\x68\x2c\x64\x61\x79\x2c\x68\x6f\x75\x72\x2c\x6d\x69\x6e\x75\x74\x65\x2c\x73\x65\x63\x6f\x6e\x64\x2c\x66\x72\x61\x63\x74\x69\x6f\x6e\x29\x29\x3b\x69\x66\x28\x64\x65\x6c\x74\x61\x29\x64\x61\x74\x65\x2e\x73\x65\x74\x54\x69\x6d\x65\x28\x64\x61\x74\x65\x2e\x67\x65\x74\x54\x69\x6d\x65\x28\x29\x2d\x64\x65\x6c\x74\x61\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x59\x61\x6d\x6c\x54\x69\x6d\x65\x73\x74\x61\x6d\x70\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x2e\x74\x6f\x49\x53\x4f\x53\x74\x72\x69\x6e\x67\x28\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x74\x69\x6d\x65\x73\x74\x61\x6d\x70\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x54\x69\x6d\x65\x73\x74\x61\x6d\x70\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x54\x69\x6d\x65\x73\x74\x61\x6d\x70\x2c\x69\x6e\x73\x74\x61\x6e\x63\x65\x4f\x66\x3a\x44\x61\x74\x65\x2c\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3a\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x59\x61\x6d\x6c\x54\x69\x6d\x65\x73\x74\x61\x6d\x70\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x4d\x65\x72\x67\x65\x28\x64\x61\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x61\x3d\x3d\x3d\x22\x3c\x3c\x22\x7c\x7c\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x6d\x65\x72\x67\x65\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x4d\x65\x72\x67\x65\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x69\x72\x65\x3b\x76\x61\x72\x20\x4e\x6f\x64\x65\x42\x75\x66\x66\x65\x72\x3b\x74\x72\x79\x7b\x76\x61\x72\x20\x5f\x72\x65\x71\x75\x69\x72\x65\x3d\x72\x65\x71\x75\x69\x72\x65\x3b\x4e\x6f\x64\x65\x42\x75\x66\x66\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x39\x29\x2e\x42\x75\x66\x66\x65\x72\x7d\x63\x61\x74\x63\x68\x28\x5f\x5f\x29\x7b\x7d\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x76\x61\x72\x20\x42\x41\x53\x45\x36\x34\x5f\x4d\x41\x50\x3d\x22\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x2b\x2f\x3d\x5c\x6e\x5c\x72\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x42\x69\x6e\x61\x72\x79\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x63\x6f\x64\x65\x2c\x69\x64\x78\x2c\x62\x69\x74\x6c\x65\x6e\x3d\x30\x2c\x6d\x61\x78\x3d\x64\x61\x74\x61\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6d\x61\x70\x3d\x42\x41\x53\x45\x36\x34\x5f\x4d\x41\x50\x3b\x66\x6f\x72\x28\x69\x64\x78\x3d\x30\x3b\x69\x64\x78\x3c\x6d\x61\x78\x3b\x69\x64\x78\x2b\x2b\x29\x7b\x63\x6f\x64\x65\x3d\x6d\x61\x70\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x64\x61\x74\x61\x2e\x63\x68\x61\x72\x41\x74\x28\x69\x64\x78\x29\x29\x3b\x69\x66\x28\x63\x6f\x64\x65\x3e\x36\x34\x29\x63\x6f\x6e\x74\x69\x6e\x75\x65\x3b\x69\x66\x28\x63\x6f\x64\x65\x3c\x30\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x62\x69\x74\x6c\x65\x6e\x2b\x3d\x36\x7d\x72\x65\x74\x75\x72\x6e\x20\x62\x69\x74\x6c\x65\x6e\x25\x38\x3d\x3d\x3d\x30\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x42\x69\x6e\x61\x72\x79\x28\x64\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x69\x64\x78\x2c\x74\x61\x69\x6c\x62\x69\x74\x73\x2c\x69\x6e\x70\x75\x74\x3d\x64\x61\x74\x61\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5b\x5c\x72\x5c\x6e\x3d\x5d\x2f\x67\x2c\x22\x22\x29\x2c\x6d\x61\x78\x3d\x69\x6e\x70\x75\x74\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6d\x61\x70\x3d\x42\x41\x53\x45\x36\x34\x5f\x4d\x41\x50\x2c\x62\x69\x74\x73\x3d\x30\x2c\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x66\x6f\x72\x28\x69\x64\x78\x3d\x30\x3b\x69\x64\x78\x3c\x6d\x61\x78\x3b\x69\x64\x78\x2b\x2b\x29\x7b\x69\x66\x28\x69\x64\x78\x25\x34\x3d\x3d\x3d\x30\x26\x26\x69\x64\x78\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x62\x69\x74\x73\x3e\x3e\x31\x36\x26\x32\x35\x35\x29\x3b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x62\x69\x74\x73\x3e\x3e\x38\x26\x32\x35\x35\x29\x3b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x62\x69\x74\x73\x26\x32\x35\x35\x29\x7d\x62\x69\x74\x73\x3d\x62\x69\x74\x73\x3c\x3c\x36\x7c\x6d\x61\x70\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x69\x6e\x70\x75\x74\x2e\x63\x68\x61\x72\x41\x74\x28\x69\x64\x78\x29\x29\x7d\x74\x61\x69\x6c\x62\x69\x74\x73\x3d\x6d\x61\x78\x25\x34\x2a\x36\x3b\x69\x66\x28\x74\x61\x69\x6c\x62\x69\x74\x73\x3d\x3d\x3d\x30\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x62\x69\x74\x73\x3e\x3e\x31\x36\x26\x32\x35\x35\x29\x3b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x62\x69\x74\x73\x3e\x3e\x38\x26\x32\x35\x35\x29\x3b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x62\x69\x74\x73\x26\x32\x35\x35\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x61\x69\x6c\x62\x69\x74\x73\x3d\x3d\x3d\x31\x38\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x62\x69\x74\x73\x3e\x3e\x31\x30\x26\x32\x35\x35\x29\x3b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x62\x69\x74\x73\x3e\x3e\x32\x26\x32\x35\x35\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x61\x69\x6c\x62\x69\x74\x73\x3d\x3d\x3d\x31\x32\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x62\x69\x74\x73\x3e\x3e\x34\x26\x32\x35\x35\x29\x7d\x69\x66\x28\x4e\x6f\x64\x65\x42\x75\x66\x66\x65\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4e\x6f\x64\x65\x42\x75\x66\x66\x65\x72\x2e\x66\x72\x6f\x6d\x3f\x4e\x6f\x64\x65\x42\x75\x66\x66\x65\x72\x2e\x66\x72\x6f\x6d\x28\x72\x65\x73\x75\x6c\x74\x29\x3a\x6e\x65\x77\x20\x4e\x6f\x64\x65\x42\x75\x66\x66\x65\x72\x28\x72\x65\x73\x75\x6c\x74\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x59\x61\x6d\x6c\x42\x69\x6e\x61\x72\x79\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x2c\x62\x69\x74\x73\x3d\x30\x2c\x69\x64\x78\x2c\x74\x61\x69\x6c\x2c\x6d\x61\x78\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6d\x61\x70\x3d\x42\x41\x53\x45\x36\x34\x5f\x4d\x41\x50\x3b\x66\x6f\x72\x28\x69\x64\x78\x3d\x30\x3b\x69\x64\x78\x3c\x6d\x61\x78\x3b\x69\x64\x78\x2b\x2b\x29\x7b\x69\x66\x28\x69\x64\x78\x25\x33\x3d\x3d\x3d\x30\x26\x26\x69\x64\x78\x29\x7b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3e\x3e\x31\x38\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3e\x3e\x31\x32\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3e\x3e\x36\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x26\x36\x33\x5d\x7d\x62\x69\x74\x73\x3d\x28\x62\x69\x74\x73\x3c\x3c\x38\x29\x2b\x6f\x62\x6a\x65\x63\x74\x5b\x69\x64\x78\x5d\x7d\x74\x61\x69\x6c\x3d\x6d\x61\x78\x25\x33\x3b\x69\x66\x28\x74\x61\x69\x6c\x3d\x3d\x3d\x30\x29\x7b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3e\x3e\x31\x38\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3e\x3e\x31\x32\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3e\x3e\x36\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x26\x36\x33\x5d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x61\x69\x6c\x3d\x3d\x3d\x32\x29\x7b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3e\x3e\x31\x30\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3e\x3e\x34\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3c\x3c\x32\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x36\x34\x5d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x61\x69\x6c\x3d\x3d\x3d\x31\x29\x7b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3e\x3e\x32\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x62\x69\x74\x73\x3c\x3c\x34\x26\x36\x33\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x36\x34\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6d\x61\x70\x5b\x36\x34\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x42\x69\x6e\x61\x72\x79\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4e\x6f\x64\x65\x42\x75\x66\x66\x65\x72\x26\x26\x4e\x6f\x64\x65\x42\x75\x66\x66\x65\x72\x2e\x69\x73\x42\x75\x66\x66\x65\x72\x28\x6f\x62\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x62\x69\x6e\x61\x72\x79\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x42\x69\x6e\x61\x72\x79\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x42\x69\x6e\x61\x72\x79\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3a\x69\x73\x42\x69\x6e\x61\x72\x79\x2c\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3a\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x59\x61\x6d\x6c\x42\x69\x6e\x61\x72\x79\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x62\x75\x66\x66\x65\x72\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x76\x61\x72\x20\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x76\x61\x72\x20\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x4f\x6d\x61\x70\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x73\x3d\x5b\x5d\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x70\x61\x69\x72\x2c\x70\x61\x69\x72\x4b\x65\x79\x2c\x70\x61\x69\x72\x48\x61\x73\x4b\x65\x79\x2c\x6f\x62\x6a\x65\x63\x74\x3d\x64\x61\x74\x61\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x70\x61\x69\x72\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x70\x61\x69\x72\x48\x61\x73\x4b\x65\x79\x3d\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x70\x61\x69\x72\x29\x21\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4f\x62\x6a\x65\x63\x74\x5d\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x66\x6f\x72\x28\x70\x61\x69\x72\x4b\x65\x79\x20\x69\x6e\x20\x70\x61\x69\x72\x29\x7b\x69\x66\x28\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x70\x61\x69\x72\x2c\x70\x61\x69\x72\x4b\x65\x79\x29\x29\x7b\x69\x66\x28\x21\x70\x61\x69\x72\x48\x61\x73\x4b\x65\x79\x29\x70\x61\x69\x72\x48\x61\x73\x4b\x65\x79\x3d\x74\x72\x75\x65\x3b\x65\x6c\x73\x65\x20\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x69\x66\x28\x21\x70\x61\x69\x72\x48\x61\x73\x4b\x65\x79\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x70\x61\x69\x72\x4b\x65\x79\x29\x3d\x3d\x3d\x2d\x31\x29\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x73\x2e\x70\x75\x73\x68\x28\x70\x61\x69\x72\x4b\x65\x79\x29\x3b\x65\x6c\x73\x65\x20\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x4f\x6d\x61\x70\x28\x64\x61\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x61\x21\x3d\x3d\x6e\x75\x6c\x6c\x3f\x64\x61\x74\x61\x3a\x5b\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x6f\x6d\x61\x70\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x65\x71\x75\x65\x6e\x63\x65\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x4f\x6d\x61\x70\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x4f\x6d\x61\x70\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x50\x61\x69\x72\x73\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x70\x61\x69\x72\x2c\x6b\x65\x79\x73\x2c\x72\x65\x73\x75\x6c\x74\x2c\x6f\x62\x6a\x65\x63\x74\x3d\x64\x61\x74\x61\x3b\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x70\x61\x69\x72\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x70\x61\x69\x72\x29\x21\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4f\x62\x6a\x65\x63\x74\x5d\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x6b\x65\x79\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x70\x61\x69\x72\x29\x3b\x69\x66\x28\x6b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x31\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x72\x65\x73\x75\x6c\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x5b\x6b\x65\x79\x73\x5b\x30\x5d\x2c\x70\x61\x69\x72\x5b\x6b\x65\x79\x73\x5b\x30\x5d\x5d\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x50\x61\x69\x72\x73\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x5b\x5d\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x70\x61\x69\x72\x2c\x6b\x65\x79\x73\x2c\x72\x65\x73\x75\x6c\x74\x2c\x6f\x62\x6a\x65\x63\x74\x3d\x64\x61\x74\x61\x3b\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x70\x61\x69\x72\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x6b\x65\x79\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x70\x61\x69\x72\x29\x3b\x72\x65\x73\x75\x6c\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x5b\x6b\x65\x79\x73\x5b\x30\x5d\x2c\x70\x61\x69\x72\x5b\x6b\x65\x79\x73\x5b\x30\x5d\x5d\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x70\x61\x69\x72\x73\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x65\x71\x75\x65\x6e\x63\x65\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x50\x61\x69\x72\x73\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x50\x61\x69\x72\x73\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x76\x61\x72\x20\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x53\x65\x74\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x6b\x65\x79\x2c\x6f\x62\x6a\x65\x63\x74\x3d\x64\x61\x74\x61\x3b\x66\x6f\x72\x28\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x29\x29\x7b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x5b\x6b\x65\x79\x5d\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x53\x65\x74\x28\x64\x61\x74\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x61\x74\x61\x21\x3d\x3d\x6e\x75\x6c\x6c\x3f\x64\x61\x74\x61\x3a\x7b\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x73\x65\x74\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x6d\x61\x70\x70\x69\x6e\x67\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x59\x61\x6d\x6c\x53\x65\x74\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x59\x61\x6d\x6c\x53\x65\x74\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x6a\x73\x2f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3a\x69\x73\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3a\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x55\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x52\x65\x67\x45\x78\x70\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x64\x61\x74\x61\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x72\x65\x67\x65\x78\x70\x3d\x64\x61\x74\x61\x2c\x74\x61\x69\x6c\x3d\x2f\x5c\x2f\x28\x5b\x67\x69\x6d\x5d\x2a\x29\x24\x2f\x2e\x65\x78\x65\x63\x28\x64\x61\x74\x61\x29\x2c\x6d\x6f\x64\x69\x66\x69\x65\x72\x73\x3d\x22\x22\x3b\x69\x66\x28\x72\x65\x67\x65\x78\x70\x5b\x30\x5d\x3d\x3d\x3d\x22\x2f\x22\x29\x7b\x69\x66\x28\x74\x61\x69\x6c\x29\x6d\x6f\x64\x69\x66\x69\x65\x72\x73\x3d\x74\x61\x69\x6c\x5b\x31\x5d\x3b\x69\x66\x28\x6d\x6f\x64\x69\x66\x69\x65\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x33\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x72\x65\x67\x65\x78\x70\x5b\x72\x65\x67\x65\x78\x70\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x6d\x6f\x64\x69\x66\x69\x65\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x5d\x21\x3d\x3d\x22\x2f\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x52\x65\x67\x45\x78\x70\x28\x64\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x72\x65\x67\x65\x78\x70\x3d\x64\x61\x74\x61\x2c\x74\x61\x69\x6c\x3d\x2f\x5c\x2f\x28\x5b\x67\x69\x6d\x5d\x2a\x29\x24\x2f\x2e\x65\x78\x65\x63\x28\x64\x61\x74\x61\x29\x2c\x6d\x6f\x64\x69\x66\x69\x65\x72\x73\x3d\x22\x22\x3b\x69\x66\x28\x72\x65\x67\x65\x78\x70\x5b\x30\x5d\x3d\x3d\x3d\x22\x2f\x22\x29\x7b\x69\x66\x28\x74\x61\x69\x6c\x29\x6d\x6f\x64\x69\x66\x69\x65\x72\x73\x3d\x74\x61\x69\x6c\x5b\x31\x5d\x3b\x72\x65\x67\x65\x78\x70\x3d\x72\x65\x67\x65\x78\x70\x2e\x73\x6c\x69\x63\x65\x28\x31\x2c\x72\x65\x67\x65\x78\x70\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x6d\x6f\x64\x69\x66\x69\x65\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x52\x65\x67\x45\x78\x70\x28\x72\x65\x67\x65\x78\x70\x2c\x6d\x6f\x64\x69\x66\x69\x65\x72\x73\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x52\x65\x67\x45\x78\x70\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x22\x2f\x22\x2b\x6f\x62\x6a\x65\x63\x74\x2e\x73\x6f\x75\x72\x63\x65\x2b\x22\x2f\x22\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x2e\x67\x6c\x6f\x62\x61\x6c\x29\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x67\x22\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x2e\x6d\x75\x6c\x74\x69\x6c\x69\x6e\x65\x29\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x6d\x22\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x2e\x69\x67\x6e\x6f\x72\x65\x43\x61\x73\x65\x29\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x69\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x52\x65\x67\x45\x78\x70\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x29\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x52\x65\x67\x45\x78\x70\x5d\x22\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x6a\x73\x2f\x72\x65\x67\x65\x78\x70\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x52\x65\x67\x45\x78\x70\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x52\x65\x67\x45\x78\x70\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3a\x69\x73\x52\x65\x67\x45\x78\x70\x2c\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3a\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x52\x65\x67\x45\x78\x70\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x65\x73\x70\x72\x69\x6d\x61\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x77\x69\x6e\x64\x6f\x77\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x65\x73\x70\x72\x69\x6d\x61\x3d\x77\x69\x6e\x64\x6f\x77\x2e\x65\x73\x70\x72\x69\x6d\x61\x3b\x76\x61\x72\x20\x54\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x73\x6f\x6c\x76\x65\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x61\x74\x61\x29\x7b\x69\x66\x28\x64\x61\x74\x61\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x74\x72\x79\x7b\x76\x61\x72\x20\x73\x6f\x75\x72\x63\x65\x3d\x22\x28\x22\x2b\x64\x61\x74\x61\x2b\x22\x29\x22\x2c\x61\x73\x74\x3d\x65\x73\x70\x72\x69\x6d\x61\x2e\x70\x61\x72\x73\x65\x28\x73\x6f\x75\x72\x63\x65\x2c\x7b\x72\x61\x6e\x67\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x69\x66\x28\x61\x73\x74\x2e\x74\x79\x70\x65\x21\x3d\x3d\x22\x50\x72\x6f\x67\x72\x61\x6d\x22\x7c\x7c\x61\x73\x74\x2e\x62\x6f\x64\x79\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x31\x7c\x7c\x61\x73\x74\x2e\x62\x6f\x64\x79\x5b\x30\x5d\x2e\x74\x79\x70\x65\x21\x3d\x3d\x22\x45\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x53\x74\x61\x74\x65\x6d\x65\x6e\x74\x22\x7c\x7c\x61\x73\x74\x2e\x62\x6f\x64\x79\x5b\x30\x5d\x2e\x65\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x2e\x74\x79\x70\x65\x21\x3d\x3d\x22\x41\x72\x72\x6f\x77\x46\x75\x6e\x63\x74\x69\x6f\x6e\x45\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x22\x26\x26\x61\x73\x74\x2e\x62\x6f\x64\x79\x5b\x30\x5d\x2e\x65\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x2e\x74\x79\x70\x65\x21\x3d\x3d\x22\x46\x75\x6e\x63\x74\x69\x6f\x6e\x45\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x61\x74\x61\x29\x7b\x76\x61\x72\x20\x73\x6f\x75\x72\x63\x65\x3d\x22\x28\x22\x2b\x64\x61\x74\x61\x2b\x22\x29\x22\x2c\x61\x73\x74\x3d\x65\x73\x70\x72\x69\x6d\x61\x2e\x70\x61\x72\x73\x65\x28\x73\x6f\x75\x72\x63\x65\x2c\x7b\x72\x61\x6e\x67\x65\x3a\x74\x72\x75\x65\x7d\x29\x2c\x70\x61\x72\x61\x6d\x73\x3d\x5b\x5d\x2c\x62\x6f\x64\x79\x3b\x69\x66\x28\x61\x73\x74\x2e\x74\x79\x70\x65\x21\x3d\x3d\x22\x50\x72\x6f\x67\x72\x61\x6d\x22\x7c\x7c\x61\x73\x74\x2e\x62\x6f\x64\x79\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x31\x7c\x7c\x61\x73\x74\x2e\x62\x6f\x64\x79\x5b\x30\x5d\x2e\x74\x79\x70\x65\x21\x3d\x3d\x22\x45\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x53\x74\x61\x74\x65\x6d\x65\x6e\x74\x22\x7c\x7c\x61\x73\x74\x2e\x62\x6f\x64\x79\x5b\x30\x5d\x2e\x65\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x2e\x74\x79\x70\x65\x21\x3d\x3d\x22\x41\x72\x72\x6f\x77\x46\x75\x6e\x63\x74\x69\x6f\x6e\x45\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x22\x26\x26\x61\x73\x74\x2e\x62\x6f\x64\x79\x5b\x30\x5d\x2e\x65\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x2e\x74\x79\x70\x65\x21\x3d\x3d\x22\x46\x75\x6e\x63\x74\x69\x6f\x6e\x45\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x22\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x46\x61\x69\x6c\x65\x64\x20\x74\x6f\x20\x72\x65\x73\x6f\x6c\x76\x65\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7d\x61\x73\x74\x2e\x62\x6f\x64\x79\x5b\x30\x5d\x2e\x65\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x2e\x70\x61\x72\x61\x6d\x73\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x29\x7b\x70\x61\x72\x61\x6d\x73\x2e\x70\x75\x73\x68\x28\x70\x61\x72\x61\x6d\x2e\x6e\x61\x6d\x65\x29\x7d\x29\x3b\x62\x6f\x64\x79\x3d\x61\x73\x74\x2e\x62\x6f\x64\x79\x5b\x30\x5d\x2e\x65\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x2e\x62\x6f\x64\x79\x2e\x72\x61\x6e\x67\x65\x3b\x69\x66\x28\x61\x73\x74\x2e\x62\x6f\x64\x79\x5b\x30\x5d\x2e\x65\x78\x70\x72\x65\x73\x73\x69\x6f\x6e\x2e\x62\x6f\x64\x79\x2e\x74\x79\x70\x65\x3d\x3d\x3d\x22\x42\x6c\x6f\x63\x6b\x53\x74\x61\x74\x65\x6d\x65\x6e\x74\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x73\x2c\x73\x6f\x75\x72\x63\x65\x2e\x73\x6c\x69\x63\x65\x28\x62\x6f\x64\x79\x5b\x30\x5d\x2b\x31\x2c\x62\x6f\x64\x79\x5b\x31\x5d\x2d\x31\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x73\x2c\x22\x72\x65\x74\x75\x72\x6e\x20\x22\x2b\x73\x6f\x75\x72\x63\x65\x2e\x73\x6c\x69\x63\x65\x28\x62\x6f\x64\x79\x5b\x30\x5d\x2c\x62\x6f\x64\x79\x5b\x31\x5d\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x29\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x75\x6e\x63\x74\x69\x6f\x6e\x5d\x22\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x65\x77\x20\x54\x79\x70\x65\x28\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x6a\x73\x2f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x2c\x7b\x6b\x69\x6e\x64\x3a\x22\x73\x63\x61\x6c\x61\x72\x22\x2c\x72\x65\x73\x6f\x6c\x76\x65\x3a\x72\x65\x73\x6f\x6c\x76\x65\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2c\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x3a\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3a\x69\x73\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2c\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x3a\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x4a\x61\x76\x61\x73\x63\x72\x69\x70\x74\x46\x75\x6e\x63\x74\x69\x6f\x6e\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x63\x6f\x6d\x6d\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x29\x3b\x76\x61\x72\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x36\x29\x3b\x76\x61\x72\x20\x44\x45\x46\x41\x55\x4c\x54\x5f\x46\x55\x4c\x4c\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x34\x29\x3b\x76\x61\x72\x20\x44\x45\x46\x41\x55\x4c\x54\x5f\x53\x41\x46\x45\x5f\x53\x43\x48\x45\x4d\x41\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x37\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x76\x61\x72\x20\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x54\x41\x42\x3d\x39\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x4c\x49\x4e\x45\x5f\x46\x45\x45\x44\x3d\x31\x30\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x53\x50\x41\x43\x45\x3d\x33\x32\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x45\x58\x43\x4c\x41\x4d\x41\x54\x49\x4f\x4e\x3d\x33\x33\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x44\x4f\x55\x42\x4c\x45\x5f\x51\x55\x4f\x54\x45\x3d\x33\x34\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x53\x48\x41\x52\x50\x3d\x33\x35\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x50\x45\x52\x43\x45\x4e\x54\x3d\x33\x37\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x41\x4d\x50\x45\x52\x53\x41\x4e\x44\x3d\x33\x38\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x53\x49\x4e\x47\x4c\x45\x5f\x51\x55\x4f\x54\x45\x3d\x33\x39\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x41\x53\x54\x45\x52\x49\x53\x4b\x3d\x34\x32\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x43\x4f\x4d\x4d\x41\x3d\x34\x34\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x4d\x49\x4e\x55\x53\x3d\x34\x35\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x43\x4f\x4c\x4f\x4e\x3d\x35\x38\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x47\x52\x45\x41\x54\x45\x52\x5f\x54\x48\x41\x4e\x3d\x36\x32\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x51\x55\x45\x53\x54\x49\x4f\x4e\x3d\x36\x33\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x43\x4f\x4d\x4d\x45\x52\x43\x49\x41\x4c\x5f\x41\x54\x3d\x36\x34\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x4c\x45\x46\x54\x5f\x53\x51\x55\x41\x52\x45\x5f\x42\x52\x41\x43\x4b\x45\x54\x3d\x39\x31\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x52\x49\x47\x48\x54\x5f\x53\x51\x55\x41\x52\x45\x5f\x42\x52\x41\x43\x4b\x45\x54\x3d\x39\x33\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x47\x52\x41\x56\x45\x5f\x41\x43\x43\x45\x4e\x54\x3d\x39\x36\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x4c\x45\x46\x54\x5f\x43\x55\x52\x4c\x59\x5f\x42\x52\x41\x43\x4b\x45\x54\x3d\x31\x32\x33\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x56\x45\x52\x54\x49\x43\x41\x4c\x5f\x4c\x49\x4e\x45\x3d\x31\x32\x34\x3b\x76\x61\x72\x20\x43\x48\x41\x52\x5f\x52\x49\x47\x48\x54\x5f\x43\x55\x52\x4c\x59\x5f\x42\x52\x41\x43\x4b\x45\x54\x3d\x31\x32\x35\x3b\x76\x61\x72\x20\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x3d\x7b\x7d\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x30\x5d\x3d\x22\x5c\x5c\x30\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x37\x5d\x3d\x22\x5c\x5c\x61\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x38\x5d\x3d\x22\x5c\x5c\x62\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x39\x5d\x3d\x22\x5c\x5c\x74\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x31\x30\x5d\x3d\x22\x5c\x5c\x6e\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x31\x31\x5d\x3d\x22\x5c\x5c\x76\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x31\x32\x5d\x3d\x22\x5c\x5c\x66\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x31\x33\x5d\x3d\x22\x5c\x5c\x72\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x32\x37\x5d\x3d\x22\x5c\x5c\x65\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x33\x34\x5d\x3d\x27\x5c\x5c\x22\x27\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x39\x32\x5d\x3d\x22\x5c\x5c\x5c\x5c\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x31\x33\x33\x5d\x3d\x22\x5c\x5c\x4e\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x31\x36\x30\x5d\x3d\x22\x5c\x5c\x5f\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x38\x32\x33\x32\x5d\x3d\x22\x5c\x5c\x4c\x22\x3b\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x38\x32\x33\x33\x5d\x3d\x22\x5c\x5c\x50\x22\x3b\x76\x61\x72\x20\x44\x45\x50\x52\x45\x43\x41\x54\x45\x44\x5f\x42\x4f\x4f\x4c\x45\x41\x4e\x53\x5f\x53\x59\x4e\x54\x41\x58\x3d\x5b\x22\x79\x22\x2c\x22\x59\x22\x2c\x22\x79\x65\x73\x22\x2c\x22\x59\x65\x73\x22\x2c\x22\x59\x45\x53\x22\x2c\x22\x6f\x6e\x22\x2c\x22\x4f\x6e\x22\x2c\x22\x4f\x4e\x22\x2c\x22\x6e\x22\x2c\x22\x4e\x22\x2c\x22\x6e\x6f\x22\x2c\x22\x4e\x6f\x22\x2c\x22\x4e\x4f\x22\x2c\x22\x6f\x66\x66\x22\x2c\x22\x4f\x66\x66\x22\x2c\x22\x4f\x46\x46\x22\x5d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x69\x6c\x65\x53\x74\x79\x6c\x65\x4d\x61\x70\x28\x73\x63\x68\x65\x6d\x61\x2c\x6d\x61\x70\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x2c\x6b\x65\x79\x73\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x74\x61\x67\x2c\x73\x74\x79\x6c\x65\x2c\x74\x79\x70\x65\x3b\x69\x66\x28\x6d\x61\x70\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x72\x65\x74\x75\x72\x6e\x7b\x7d\x3b\x72\x65\x73\x75\x6c\x74\x3d\x7b\x7d\x3b\x6b\x65\x79\x73\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x6d\x61\x70\x29\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6b\x65\x79\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x74\x61\x67\x3d\x6b\x65\x79\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x73\x74\x79\x6c\x65\x3d\x53\x74\x72\x69\x6e\x67\x28\x6d\x61\x70\x5b\x74\x61\x67\x5d\x29\x3b\x69\x66\x28\x74\x61\x67\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x32\x29\x3d\x3d\x3d\x22\x21\x21\x22\x29\x7b\x74\x61\x67\x3d\x22\x74\x61\x67\x3a\x79\x61\x6d\x6c\x2e\x6f\x72\x67\x2c\x32\x30\x30\x32\x3a\x22\x2b\x74\x61\x67\x2e\x73\x6c\x69\x63\x65\x28\x32\x29\x7d\x74\x79\x70\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x54\x79\x70\x65\x4d\x61\x70\x5b\x22\x66\x61\x6c\x6c\x62\x61\x63\x6b\x22\x5d\x5b\x74\x61\x67\x5d\x3b\x69\x66\x28\x74\x79\x70\x65\x26\x26\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x74\x79\x70\x65\x2e\x73\x74\x79\x6c\x65\x41\x6c\x69\x61\x73\x65\x73\x2c\x73\x74\x79\x6c\x65\x29\x29\x7b\x73\x74\x79\x6c\x65\x3d\x74\x79\x70\x65\x2e\x73\x74\x79\x6c\x65\x41\x6c\x69\x61\x73\x65\x73\x5b\x73\x74\x79\x6c\x65\x5d\x7d\x72\x65\x73\x75\x6c\x74\x5b\x74\x61\x67\x5d\x3d\x73\x74\x79\x6c\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x6e\x63\x6f\x64\x65\x48\x65\x78\x28\x63\x68\x61\x72\x61\x63\x74\x65\x72\x29\x7b\x76\x61\x72\x20\x73\x74\x72\x69\x6e\x67\x2c\x68\x61\x6e\x64\x6c\x65\x2c\x6c\x65\x6e\x67\x74\x68\x3b\x73\x74\x72\x69\x6e\x67\x3d\x63\x68\x61\x72\x61\x63\x74\x65\x72\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x31\x36\x29\x2e\x74\x6f\x55\x70\x70\x65\x72\x43\x61\x73\x65\x28\x29\x3b\x69\x66\x28\x63\x68\x61\x72\x61\x63\x74\x65\x72\x3c\x3d\x32\x35\x35\x29\x7b\x68\x61\x6e\x64\x6c\x65\x3d\x22\x78\x22\x3b\x6c\x65\x6e\x67\x74\x68\x3d\x32\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x61\x72\x61\x63\x74\x65\x72\x3c\x3d\x36\x35\x35\x33\x35\x29\x7b\x68\x61\x6e\x64\x6c\x65\x3d\x22\x75\x22\x3b\x6c\x65\x6e\x67\x74\x68\x3d\x34\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x68\x61\x72\x61\x63\x74\x65\x72\x3c\x3d\x34\x32\x39\x34\x39\x36\x37\x32\x39\x35\x29\x7b\x68\x61\x6e\x64\x6c\x65\x3d\x22\x55\x22\x3b\x6c\x65\x6e\x67\x74\x68\x3d\x38\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x63\x6f\x64\x65\x20\x70\x6f\x69\x6e\x74\x20\x77\x69\x74\x68\x69\x6e\x20\x61\x20\x73\x74\x72\x69\x6e\x67\x20\x6d\x61\x79\x20\x6e\x6f\x74\x20\x62\x65\x20\x67\x72\x65\x61\x74\x65\x72\x20\x74\x68\x61\x6e\x20\x30\x78\x46\x46\x46\x46\x46\x46\x46\x46\x22\x29\x7d\x72\x65\x74\x75\x72\x6e\x22\x5c\x5c\x22\x2b\x68\x61\x6e\x64\x6c\x65\x2b\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x30\x22\x2c\x6c\x65\x6e\x67\x74\x68\x2d\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x29\x2b\x73\x74\x72\x69\x6e\x67\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x74\x61\x74\x65\x28\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x74\x68\x69\x73\x2e\x73\x63\x68\x65\x6d\x61\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x5d\x7c\x7c\x44\x45\x46\x41\x55\x4c\x54\x5f\x46\x55\x4c\x4c\x5f\x53\x43\x48\x45\x4d\x41\x3b\x74\x68\x69\x73\x2e\x69\x6e\x64\x65\x6e\x74\x3d\x4d\x61\x74\x68\x2e\x6d\x61\x78\x28\x31\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x69\x6e\x64\x65\x6e\x74\x22\x5d\x7c\x7c\x32\x29\x3b\x74\x68\x69\x73\x2e\x73\x6b\x69\x70\x49\x6e\x76\x61\x6c\x69\x64\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x73\x6b\x69\x70\x49\x6e\x76\x61\x6c\x69\x64\x22\x5d\x7c\x7c\x66\x61\x6c\x73\x65\x3b\x74\x68\x69\x73\x2e\x66\x6c\x6f\x77\x4c\x65\x76\x65\x6c\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x69\x73\x4e\x6f\x74\x68\x69\x6e\x67\x28\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x66\x6c\x6f\x77\x4c\x65\x76\x65\x6c\x22\x5d\x29\x3f\x2d\x31\x3a\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x66\x6c\x6f\x77\x4c\x65\x76\x65\x6c\x22\x5d\x3b\x74\x68\x69\x73\x2e\x73\x74\x79\x6c\x65\x4d\x61\x70\x3d\x63\x6f\x6d\x70\x69\x6c\x65\x53\x74\x79\x6c\x65\x4d\x61\x70\x28\x74\x68\x69\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x73\x74\x79\x6c\x65\x73\x22\x5d\x7c\x7c\x6e\x75\x6c\x6c\x29\x3b\x74\x68\x69\x73\x2e\x73\x6f\x72\x74\x4b\x65\x79\x73\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x73\x6f\x72\x74\x4b\x65\x79\x73\x22\x5d\x7c\x7c\x66\x61\x6c\x73\x65\x3b\x74\x68\x69\x73\x2e\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x22\x5d\x7c\x7c\x38\x30\x3b\x74\x68\x69\x73\x2e\x6e\x6f\x52\x65\x66\x73\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x6e\x6f\x52\x65\x66\x73\x22\x5d\x7c\x7c\x66\x61\x6c\x73\x65\x3b\x74\x68\x69\x73\x2e\x6e\x6f\x43\x6f\x6d\x70\x61\x74\x4d\x6f\x64\x65\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x6e\x6f\x43\x6f\x6d\x70\x61\x74\x4d\x6f\x64\x65\x22\x5d\x7c\x7c\x66\x61\x6c\x73\x65\x3b\x74\x68\x69\x73\x2e\x63\x6f\x6e\x64\x65\x6e\x73\x65\x46\x6c\x6f\x77\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x5b\x22\x63\x6f\x6e\x64\x65\x6e\x73\x65\x46\x6c\x6f\x77\x22\x5d\x7c\x7c\x66\x61\x6c\x73\x65\x3b\x74\x68\x69\x73\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x54\x79\x70\x65\x73\x3d\x74\x68\x69\x73\x2e\x73\x63\x68\x65\x6d\x61\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x49\x6d\x70\x6c\x69\x63\x69\x74\x3b\x74\x68\x69\x73\x2e\x65\x78\x70\x6c\x69\x63\x69\x74\x54\x79\x70\x65\x73\x3d\x74\x68\x69\x73\x2e\x73\x63\x68\x65\x6d\x61\x2e\x63\x6f\x6d\x70\x69\x6c\x65\x64\x45\x78\x70\x6c\x69\x63\x69\x74\x3b\x74\x68\x69\x73\x2e\x74\x61\x67\x3d\x6e\x75\x6c\x6c\x3b\x74\x68\x69\x73\x2e\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x3b\x74\x68\x69\x73\x2e\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x3d\x5b\x5d\x3b\x74\x68\x69\x73\x2e\x75\x73\x65\x64\x44\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x3d\x6e\x75\x6c\x6c\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x64\x65\x6e\x74\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x2c\x73\x70\x61\x63\x65\x73\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x20\x22\x2c\x73\x70\x61\x63\x65\x73\x29\x2c\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x30\x2c\x6e\x65\x78\x74\x3d\x2d\x31\x2c\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x2c\x6c\x69\x6e\x65\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x6e\x65\x78\x74\x3d\x73\x74\x72\x69\x6e\x67\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x5c\x6e\x22\x2c\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x6e\x65\x78\x74\x3d\x3d\x3d\x2d\x31\x29\x7b\x6c\x69\x6e\x65\x3d\x73\x74\x72\x69\x6e\x67\x2e\x73\x6c\x69\x63\x65\x28\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x6c\x65\x6e\x67\x74\x68\x7d\x65\x6c\x73\x65\x7b\x6c\x69\x6e\x65\x3d\x73\x74\x72\x69\x6e\x67\x2e\x73\x6c\x69\x63\x65\x28\x70\x6f\x73\x69\x74\x69\x6f\x6e\x2c\x6e\x65\x78\x74\x2b\x31\x29\x3b\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x6e\x65\x78\x74\x2b\x31\x7d\x69\x66\x28\x6c\x69\x6e\x65\x2e\x6c\x65\x6e\x67\x74\x68\x26\x26\x6c\x69\x6e\x65\x21\x3d\x3d\x22\x5c\x6e\x22\x29\x72\x65\x73\x75\x6c\x74\x2b\x3d\x69\x6e\x64\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6c\x69\x6e\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x6e\x65\x72\x61\x74\x65\x4e\x65\x78\x74\x4c\x69\x6e\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x5c\x6e\x22\x2b\x63\x6f\x6d\x6d\x6f\x6e\x2e\x72\x65\x70\x65\x61\x74\x28\x22\x20\x22\x2c\x73\x74\x61\x74\x65\x2e\x69\x6e\x64\x65\x6e\x74\x2a\x6c\x65\x76\x65\x6c\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x65\x73\x74\x49\x6d\x70\x6c\x69\x63\x69\x74\x52\x65\x73\x6f\x6c\x76\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x73\x74\x72\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x74\x79\x70\x65\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x73\x74\x61\x74\x65\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x54\x79\x70\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x74\x79\x70\x65\x3d\x73\x74\x61\x74\x65\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x54\x79\x70\x65\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x74\x79\x70\x65\x2e\x72\x65\x73\x6f\x6c\x76\x65\x28\x73\x74\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x57\x68\x69\x74\x65\x73\x70\x61\x63\x65\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x3d\x3d\x3d\x43\x48\x41\x52\x5f\x53\x50\x41\x43\x45\x7c\x7c\x63\x3d\x3d\x3d\x43\x48\x41\x52\x5f\x54\x41\x42\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x50\x72\x69\x6e\x74\x61\x62\x6c\x65\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x33\x32\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x31\x32\x36\x7c\x7c\x31\x36\x31\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x35\x35\x32\x39\x35\x26\x26\x63\x21\x3d\x3d\x38\x32\x33\x32\x26\x26\x63\x21\x3d\x3d\x38\x32\x33\x33\x7c\x7c\x35\x37\x33\x34\x34\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x36\x35\x35\x33\x33\x26\x26\x63\x21\x3d\x3d\x36\x35\x32\x37\x39\x7c\x7c\x36\x35\x35\x33\x36\x3c\x3d\x63\x26\x26\x63\x3c\x3d\x31\x31\x31\x34\x31\x31\x31\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x50\x6c\x61\x69\x6e\x53\x61\x66\x65\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x50\x72\x69\x6e\x74\x61\x62\x6c\x65\x28\x63\x29\x26\x26\x63\x21\x3d\x3d\x36\x35\x32\x37\x39\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x43\x4f\x4d\x4d\x41\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x4c\x45\x46\x54\x5f\x53\x51\x55\x41\x52\x45\x5f\x42\x52\x41\x43\x4b\x45\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x52\x49\x47\x48\x54\x5f\x53\x51\x55\x41\x52\x45\x5f\x42\x52\x41\x43\x4b\x45\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x4c\x45\x46\x54\x5f\x43\x55\x52\x4c\x59\x5f\x42\x52\x41\x43\x4b\x45\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x52\x49\x47\x48\x54\x5f\x43\x55\x52\x4c\x59\x5f\x42\x52\x41\x43\x4b\x45\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x43\x4f\x4c\x4f\x4e\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x53\x48\x41\x52\x50\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x50\x6c\x61\x69\x6e\x53\x61\x66\x65\x46\x69\x72\x73\x74\x28\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x50\x72\x69\x6e\x74\x61\x62\x6c\x65\x28\x63\x29\x26\x26\x63\x21\x3d\x3d\x36\x35\x32\x37\x39\x26\x26\x21\x69\x73\x57\x68\x69\x74\x65\x73\x70\x61\x63\x65\x28\x63\x29\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x4d\x49\x4e\x55\x53\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x51\x55\x45\x53\x54\x49\x4f\x4e\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x43\x4f\x4c\x4f\x4e\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x43\x4f\x4d\x4d\x41\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x4c\x45\x46\x54\x5f\x53\x51\x55\x41\x52\x45\x5f\x42\x52\x41\x43\x4b\x45\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x52\x49\x47\x48\x54\x5f\x53\x51\x55\x41\x52\x45\x5f\x42\x52\x41\x43\x4b\x45\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x4c\x45\x46\x54\x5f\x43\x55\x52\x4c\x59\x5f\x42\x52\x41\x43\x4b\x45\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x52\x49\x47\x48\x54\x5f\x43\x55\x52\x4c\x59\x5f\x42\x52\x41\x43\x4b\x45\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x53\x48\x41\x52\x50\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x41\x4d\x50\x45\x52\x53\x41\x4e\x44\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x41\x53\x54\x45\x52\x49\x53\x4b\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x45\x58\x43\x4c\x41\x4d\x41\x54\x49\x4f\x4e\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x56\x45\x52\x54\x49\x43\x41\x4c\x5f\x4c\x49\x4e\x45\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x47\x52\x45\x41\x54\x45\x52\x5f\x54\x48\x41\x4e\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x53\x49\x4e\x47\x4c\x45\x5f\x51\x55\x4f\x54\x45\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x44\x4f\x55\x42\x4c\x45\x5f\x51\x55\x4f\x54\x45\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x50\x45\x52\x43\x45\x4e\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x43\x4f\x4d\x4d\x45\x52\x43\x49\x41\x4c\x5f\x41\x54\x26\x26\x63\x21\x3d\x3d\x43\x48\x41\x52\x5f\x47\x52\x41\x56\x45\x5f\x41\x43\x43\x45\x4e\x54\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x65\x65\x64\x49\x6e\x64\x65\x6e\x74\x49\x6e\x64\x69\x63\x61\x74\x6f\x72\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x76\x61\x72\x20\x6c\x65\x61\x64\x69\x6e\x67\x53\x70\x61\x63\x65\x52\x65\x3d\x2f\x5e\x5c\x6e\x2a\x20\x2f\x3b\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x61\x64\x69\x6e\x67\x53\x70\x61\x63\x65\x52\x65\x2e\x74\x65\x73\x74\x28\x73\x74\x72\x69\x6e\x67\x29\x7d\x76\x61\x72\x20\x53\x54\x59\x4c\x45\x5f\x50\x4c\x41\x49\x4e\x3d\x31\x2c\x53\x54\x59\x4c\x45\x5f\x53\x49\x4e\x47\x4c\x45\x3d\x32\x2c\x53\x54\x59\x4c\x45\x5f\x4c\x49\x54\x45\x52\x41\x4c\x3d\x33\x2c\x53\x54\x59\x4c\x45\x5f\x46\x4f\x4c\x44\x45\x44\x3d\x34\x2c\x53\x54\x59\x4c\x45\x5f\x44\x4f\x55\x42\x4c\x45\x3d\x35\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x68\x6f\x6f\x73\x65\x53\x63\x61\x6c\x61\x72\x53\x74\x79\x6c\x65\x28\x73\x74\x72\x69\x6e\x67\x2c\x73\x69\x6e\x67\x6c\x65\x4c\x69\x6e\x65\x4f\x6e\x6c\x79\x2c\x69\x6e\x64\x65\x6e\x74\x50\x65\x72\x4c\x65\x76\x65\x6c\x2c\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x2c\x74\x65\x73\x74\x41\x6d\x62\x69\x67\x75\x6f\x75\x73\x54\x79\x70\x65\x29\x7b\x76\x61\x72\x20\x69\x3b\x76\x61\x72\x20\x63\x68\x61\x72\x3b\x76\x61\x72\x20\x68\x61\x73\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x46\x6f\x6c\x64\x61\x62\x6c\x65\x4c\x69\x6e\x65\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x73\x68\x6f\x75\x6c\x64\x54\x72\x61\x63\x6b\x57\x69\x64\x74\x68\x3d\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x21\x3d\x3d\x2d\x31\x3b\x76\x61\x72\x20\x70\x72\x65\x76\x69\x6f\x75\x73\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x3d\x2d\x31\x3b\x76\x61\x72\x20\x70\x6c\x61\x69\x6e\x3d\x69\x73\x50\x6c\x61\x69\x6e\x53\x61\x66\x65\x46\x69\x72\x73\x74\x28\x73\x74\x72\x69\x6e\x67\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x30\x29\x29\x26\x26\x21\x69\x73\x57\x68\x69\x74\x65\x73\x70\x61\x63\x65\x28\x73\x74\x72\x69\x6e\x67\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x29\x29\x3b\x69\x66\x28\x73\x69\x6e\x67\x6c\x65\x4c\x69\x6e\x65\x4f\x6e\x6c\x79\x29\x7b\x66\x6f\x72\x28\x69\x3d\x30\x3b\x69\x3c\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x63\x68\x61\x72\x3d\x73\x74\x72\x69\x6e\x67\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x29\x3b\x69\x66\x28\x21\x69\x73\x50\x72\x69\x6e\x74\x61\x62\x6c\x65\x28\x63\x68\x61\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x53\x54\x59\x4c\x45\x5f\x44\x4f\x55\x42\x4c\x45\x7d\x70\x6c\x61\x69\x6e\x3d\x70\x6c\x61\x69\x6e\x26\x26\x69\x73\x50\x6c\x61\x69\x6e\x53\x61\x66\x65\x28\x63\x68\x61\x72\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x66\x6f\x72\x28\x69\x3d\x30\x3b\x69\x3c\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x63\x68\x61\x72\x3d\x73\x74\x72\x69\x6e\x67\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x29\x3b\x69\x66\x28\x63\x68\x61\x72\x3d\x3d\x3d\x43\x48\x41\x52\x5f\x4c\x49\x4e\x45\x5f\x46\x45\x45\x44\x29\x7b\x68\x61\x73\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x3d\x74\x72\x75\x65\x3b\x69\x66\x28\x73\x68\x6f\x75\x6c\x64\x54\x72\x61\x63\x6b\x57\x69\x64\x74\x68\x29\x7b\x68\x61\x73\x46\x6f\x6c\x64\x61\x62\x6c\x65\x4c\x69\x6e\x65\x3d\x68\x61\x73\x46\x6f\x6c\x64\x61\x62\x6c\x65\x4c\x69\x6e\x65\x7c\x7c\x69\x2d\x70\x72\x65\x76\x69\x6f\x75\x73\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x2d\x31\x3e\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x26\x26\x73\x74\x72\x69\x6e\x67\x5b\x70\x72\x65\x76\x69\x6f\x75\x73\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x2b\x31\x5d\x21\x3d\x3d\x22\x20\x22\x3b\x70\x72\x65\x76\x69\x6f\x75\x73\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x3d\x69\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x21\x69\x73\x50\x72\x69\x6e\x74\x61\x62\x6c\x65\x28\x63\x68\x61\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x53\x54\x59\x4c\x45\x5f\x44\x4f\x55\x42\x4c\x45\x7d\x70\x6c\x61\x69\x6e\x3d\x70\x6c\x61\x69\x6e\x26\x26\x69\x73\x50\x6c\x61\x69\x6e\x53\x61\x66\x65\x28\x63\x68\x61\x72\x29\x7d\x68\x61\x73\x46\x6f\x6c\x64\x61\x62\x6c\x65\x4c\x69\x6e\x65\x3d\x68\x61\x73\x46\x6f\x6c\x64\x61\x62\x6c\x65\x4c\x69\x6e\x65\x7c\x7c\x73\x68\x6f\x75\x6c\x64\x54\x72\x61\x63\x6b\x57\x69\x64\x74\x68\x26\x26\x28\x69\x2d\x70\x72\x65\x76\x69\x6f\x75\x73\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x2d\x31\x3e\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x26\x26\x73\x74\x72\x69\x6e\x67\x5b\x70\x72\x65\x76\x69\x6f\x75\x73\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x2b\x31\x5d\x21\x3d\x3d\x22\x20\x22\x29\x7d\x69\x66\x28\x21\x68\x61\x73\x4c\x69\x6e\x65\x42\x72\x65\x61\x6b\x26\x26\x21\x68\x61\x73\x46\x6f\x6c\x64\x61\x62\x6c\x65\x4c\x69\x6e\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x6c\x61\x69\x6e\x26\x26\x21\x74\x65\x73\x74\x41\x6d\x62\x69\x67\x75\x6f\x75\x73\x54\x79\x70\x65\x28\x73\x74\x72\x69\x6e\x67\x29\x3f\x53\x54\x59\x4c\x45\x5f\x50\x4c\x41\x49\x4e\x3a\x53\x54\x59\x4c\x45\x5f\x53\x49\x4e\x47\x4c\x45\x7d\x69\x66\x28\x69\x6e\x64\x65\x6e\x74\x50\x65\x72\x4c\x65\x76\x65\x6c\x3e\x39\x26\x26\x6e\x65\x65\x64\x49\x6e\x64\x65\x6e\x74\x49\x6e\x64\x69\x63\x61\x74\x6f\x72\x28\x73\x74\x72\x69\x6e\x67\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x53\x54\x59\x4c\x45\x5f\x44\x4f\x55\x42\x4c\x45\x7d\x72\x65\x74\x75\x72\x6e\x20\x68\x61\x73\x46\x6f\x6c\x64\x61\x62\x6c\x65\x4c\x69\x6e\x65\x3f\x53\x54\x59\x4c\x45\x5f\x46\x4f\x4c\x44\x45\x44\x3a\x53\x54\x59\x4c\x45\x5f\x4c\x49\x54\x45\x52\x41\x4c\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x73\x74\x72\x69\x6e\x67\x2c\x6c\x65\x76\x65\x6c\x2c\x69\x73\x6b\x65\x79\x29\x7b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x69\x66\x28\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3d\x3d\x3d\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x27\x27\x22\x7d\x69\x66\x28\x21\x73\x74\x61\x74\x65\x2e\x6e\x6f\x43\x6f\x6d\x70\x61\x74\x4d\x6f\x64\x65\x26\x26\x44\x45\x50\x52\x45\x43\x41\x54\x45\x44\x5f\x42\x4f\x4f\x4c\x45\x41\x4e\x53\x5f\x53\x59\x4e\x54\x41\x58\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x73\x74\x72\x69\x6e\x67\x29\x21\x3d\x3d\x2d\x31\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x27\x22\x2b\x73\x74\x72\x69\x6e\x67\x2b\x22\x27\x22\x7d\x76\x61\x72\x20\x69\x6e\x64\x65\x6e\x74\x3d\x73\x74\x61\x74\x65\x2e\x69\x6e\x64\x65\x6e\x74\x2a\x4d\x61\x74\x68\x2e\x6d\x61\x78\x28\x31\x2c\x6c\x65\x76\x65\x6c\x29\x3b\x76\x61\x72\x20\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x3d\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x3d\x3d\x3d\x2d\x31\x3f\x2d\x31\x3a\x4d\x61\x74\x68\x2e\x6d\x61\x78\x28\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x28\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x2c\x34\x30\x29\x2c\x73\x74\x61\x74\x65\x2e\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x2d\x69\x6e\x64\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x73\x69\x6e\x67\x6c\x65\x4c\x69\x6e\x65\x4f\x6e\x6c\x79\x3d\x69\x73\x6b\x65\x79\x7c\x7c\x73\x74\x61\x74\x65\x2e\x66\x6c\x6f\x77\x4c\x65\x76\x65\x6c\x3e\x2d\x31\x26\x26\x6c\x65\x76\x65\x6c\x3e\x3d\x73\x74\x61\x74\x65\x2e\x66\x6c\x6f\x77\x4c\x65\x76\x65\x6c\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x65\x73\x74\x41\x6d\x62\x69\x67\x75\x69\x74\x79\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x65\x73\x74\x49\x6d\x70\x6c\x69\x63\x69\x74\x52\x65\x73\x6f\x6c\x76\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x73\x74\x72\x69\x6e\x67\x29\x7d\x73\x77\x69\x74\x63\x68\x28\x63\x68\x6f\x6f\x73\x65\x53\x63\x61\x6c\x61\x72\x53\x74\x79\x6c\x65\x28\x73\x74\x72\x69\x6e\x67\x2c\x73\x69\x6e\x67\x6c\x65\x4c\x69\x6e\x65\x4f\x6e\x6c\x79\x2c\x73\x74\x61\x74\x65\x2e\x69\x6e\x64\x65\x6e\x74\x2c\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x2c\x74\x65\x73\x74\x41\x6d\x62\x69\x67\x75\x69\x74\x79\x29\x29\x7b\x63\x61\x73\x65\x20\x53\x54\x59\x4c\x45\x5f\x50\x4c\x41\x49\x4e\x3a\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x3b\x63\x61\x73\x65\x20\x53\x54\x59\x4c\x45\x5f\x53\x49\x4e\x47\x4c\x45\x3a\x72\x65\x74\x75\x72\x6e\x22\x27\x22\x2b\x73\x74\x72\x69\x6e\x67\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x27\x2f\x67\x2c\x22\x27\x27\x22\x29\x2b\x22\x27\x22\x3b\x63\x61\x73\x65\x20\x53\x54\x59\x4c\x45\x5f\x4c\x49\x54\x45\x52\x41\x4c\x3a\x72\x65\x74\x75\x72\x6e\x22\x7c\x22\x2b\x62\x6c\x6f\x63\x6b\x48\x65\x61\x64\x65\x72\x28\x73\x74\x72\x69\x6e\x67\x2c\x73\x74\x61\x74\x65\x2e\x69\x6e\x64\x65\x6e\x74\x29\x2b\x64\x72\x6f\x70\x45\x6e\x64\x69\x6e\x67\x4e\x65\x77\x6c\x69\x6e\x65\x28\x69\x6e\x64\x65\x6e\x74\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x2c\x69\x6e\x64\x65\x6e\x74\x29\x29\x3b\x63\x61\x73\x65\x20\x53\x54\x59\x4c\x45\x5f\x46\x4f\x4c\x44\x45\x44\x3a\x72\x65\x74\x75\x72\x6e\x22\x3e\x22\x2b\x62\x6c\x6f\x63\x6b\x48\x65\x61\x64\x65\x72\x28\x73\x74\x72\x69\x6e\x67\x2c\x73\x74\x61\x74\x65\x2e\x69\x6e\x64\x65\x6e\x74\x29\x2b\x64\x72\x6f\x70\x45\x6e\x64\x69\x6e\x67\x4e\x65\x77\x6c\x69\x6e\x65\x28\x69\x6e\x64\x65\x6e\x74\x53\x74\x72\x69\x6e\x67\x28\x66\x6f\x6c\x64\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x2c\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x29\x2c\x69\x6e\x64\x65\x6e\x74\x29\x29\x3b\x63\x61\x73\x65\x20\x53\x54\x59\x4c\x45\x5f\x44\x4f\x55\x42\x4c\x45\x3a\x72\x65\x74\x75\x72\x6e\x27\x22\x27\x2b\x65\x73\x63\x61\x70\x65\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x2c\x6c\x69\x6e\x65\x57\x69\x64\x74\x68\x29\x2b\x27\x22\x27\x3b\x64\x65\x66\x61\x75\x6c\x74\x3a\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x69\x6d\x70\x6f\x73\x73\x69\x62\x6c\x65\x20\x65\x72\x72\x6f\x72\x3a\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x73\x63\x61\x6c\x61\x72\x20\x73\x74\x79\x6c\x65\x22\x29\x7d\x7d\x28\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x6c\x6f\x63\x6b\x48\x65\x61\x64\x65\x72\x28\x73\x74\x72\x69\x6e\x67\x2c\x69\x6e\x64\x65\x6e\x74\x50\x65\x72\x4c\x65\x76\x65\x6c\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x6e\x74\x49\x6e\x64\x69\x63\x61\x74\x6f\x72\x3d\x6e\x65\x65\x64\x49\x6e\x64\x65\x6e\x74\x49\x6e\x64\x69\x63\x61\x74\x6f\x72\x28\x73\x74\x72\x69\x6e\x67\x29\x3f\x53\x74\x72\x69\x6e\x67\x28\x69\x6e\x64\x65\x6e\x74\x50\x65\x72\x4c\x65\x76\x65\x6c\x29\x3a\x22\x22\x3b\x76\x61\x72\x20\x63\x6c\x69\x70\x3d\x73\x74\x72\x69\x6e\x67\x5b\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x5d\x3d\x3d\x3d\x22\x5c\x6e\x22\x3b\x76\x61\x72\x20\x6b\x65\x65\x70\x3d\x63\x6c\x69\x70\x26\x26\x28\x73\x74\x72\x69\x6e\x67\x5b\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x32\x5d\x3d\x3d\x3d\x22\x5c\x6e\x22\x7c\x7c\x73\x74\x72\x69\x6e\x67\x3d\x3d\x3d\x22\x5c\x6e\x22\x29\x3b\x76\x61\x72\x20\x63\x68\x6f\x6d\x70\x3d\x6b\x65\x65\x70\x3f\x22\x2b\x22\x3a\x63\x6c\x69\x70\x3f\x22\x22\x3a\x22\x2d\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x64\x65\x6e\x74\x49\x6e\x64\x69\x63\x61\x74\x6f\x72\x2b\x63\x68\x6f\x6d\x70\x2b\x22\x5c\x6e\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x72\x6f\x70\x45\x6e\x64\x69\x6e\x67\x4e\x65\x77\x6c\x69\x6e\x65\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x5b\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x5d\x3d\x3d\x3d\x22\x5c\x6e\x22\x3f\x73\x74\x72\x69\x6e\x67\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x2d\x31\x29\x3a\x73\x74\x72\x69\x6e\x67\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x6f\x6c\x64\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x2c\x77\x69\x64\x74\x68\x29\x7b\x76\x61\x72\x20\x6c\x69\x6e\x65\x52\x65\x3d\x2f\x28\x5c\x6e\x2b\x29\x28\x5b\x5e\x5c\x6e\x5d\x2a\x29\x2f\x67\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x6e\x65\x78\x74\x4c\x46\x3d\x73\x74\x72\x69\x6e\x67\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x5c\x6e\x22\x29\x3b\x6e\x65\x78\x74\x4c\x46\x3d\x6e\x65\x78\x74\x4c\x46\x21\x3d\x3d\x2d\x31\x3f\x6e\x65\x78\x74\x4c\x46\x3a\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x6c\x69\x6e\x65\x52\x65\x2e\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x3d\x6e\x65\x78\x74\x4c\x46\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x6f\x6c\x64\x4c\x69\x6e\x65\x28\x73\x74\x72\x69\x6e\x67\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x6e\x65\x78\x74\x4c\x46\x29\x2c\x77\x69\x64\x74\x68\x29\x7d\x28\x29\x3b\x76\x61\x72\x20\x70\x72\x65\x76\x4d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x3d\x73\x74\x72\x69\x6e\x67\x5b\x30\x5d\x3d\x3d\x3d\x22\x5c\x6e\x22\x7c\x7c\x73\x74\x72\x69\x6e\x67\x5b\x30\x5d\x3d\x3d\x3d\x22\x20\x22\x3b\x76\x61\x72\x20\x6d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x3b\x76\x61\x72\x20\x6d\x61\x74\x63\x68\x3b\x77\x68\x69\x6c\x65\x28\x6d\x61\x74\x63\x68\x3d\x6c\x69\x6e\x65\x52\x65\x2e\x65\x78\x65\x63\x28\x73\x74\x72\x69\x6e\x67\x29\x29\x7b\x76\x61\x72\x20\x70\x72\x65\x66\x69\x78\x3d\x6d\x61\x74\x63\x68\x5b\x31\x5d\x2c\x6c\x69\x6e\x65\x3d\x6d\x61\x74\x63\x68\x5b\x32\x5d\x3b\x6d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x3d\x6c\x69\x6e\x65\x5b\x30\x5d\x3d\x3d\x3d\x22\x20\x22\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x70\x72\x65\x66\x69\x78\x2b\x28\x21\x70\x72\x65\x76\x4d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x26\x26\x21\x6d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x26\x26\x6c\x69\x6e\x65\x21\x3d\x3d\x22\x22\x3f\x22\x5c\x6e\x22\x3a\x22\x22\x29\x2b\x66\x6f\x6c\x64\x4c\x69\x6e\x65\x28\x6c\x69\x6e\x65\x2c\x77\x69\x64\x74\x68\x29\x3b\x70\x72\x65\x76\x4d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x3d\x6d\x6f\x72\x65\x49\x6e\x64\x65\x6e\x74\x65\x64\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x6f\x6c\x64\x4c\x69\x6e\x65\x28\x6c\x69\x6e\x65\x2c\x77\x69\x64\x74\x68\x29\x7b\x69\x66\x28\x6c\x69\x6e\x65\x3d\x3d\x3d\x22\x22\x7c\x7c\x6c\x69\x6e\x65\x5b\x30\x5d\x3d\x3d\x3d\x22\x20\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x6c\x69\x6e\x65\x3b\x76\x61\x72\x20\x62\x72\x65\x61\x6b\x52\x65\x3d\x2f\x20\x5b\x5e\x20\x5d\x2f\x67\x3b\x76\x61\x72\x20\x6d\x61\x74\x63\x68\x3b\x76\x61\x72\x20\x73\x74\x61\x72\x74\x3d\x30\x2c\x65\x6e\x64\x2c\x63\x75\x72\x72\x3d\x30\x2c\x6e\x65\x78\x74\x3d\x30\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x3b\x77\x68\x69\x6c\x65\x28\x6d\x61\x74\x63\x68\x3d\x62\x72\x65\x61\x6b\x52\x65\x2e\x65\x78\x65\x63\x28\x6c\x69\x6e\x65\x29\x29\x7b\x6e\x65\x78\x74\x3d\x6d\x61\x74\x63\x68\x2e\x69\x6e\x64\x65\x78\x3b\x69\x66\x28\x6e\x65\x78\x74\x2d\x73\x74\x61\x72\x74\x3e\x77\x69\x64\x74\x68\x29\x7b\x65\x6e\x64\x3d\x63\x75\x72\x72\x3e\x73\x74\x61\x72\x74\x3f\x63\x75\x72\x72\x3a\x6e\x65\x78\x74\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x5c\x6e\x22\x2b\x6c\x69\x6e\x65\x2e\x73\x6c\x69\x63\x65\x28\x73\x74\x61\x72\x74\x2c\x65\x6e\x64\x29\x3b\x73\x74\x61\x72\x74\x3d\x65\x6e\x64\x2b\x31\x7d\x63\x75\x72\x72\x3d\x6e\x65\x78\x74\x7d\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x5c\x6e\x22\x3b\x69\x66\x28\x6c\x69\x6e\x65\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x73\x74\x61\x72\x74\x3e\x77\x69\x64\x74\x68\x26\x26\x63\x75\x72\x72\x3e\x73\x74\x61\x72\x74\x29\x7b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6c\x69\x6e\x65\x2e\x73\x6c\x69\x63\x65\x28\x73\x74\x61\x72\x74\x2c\x63\x75\x72\x72\x29\x2b\x22\x5c\x6e\x22\x2b\x6c\x69\x6e\x65\x2e\x73\x6c\x69\x63\x65\x28\x63\x75\x72\x72\x2b\x31\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x6c\x69\x6e\x65\x2e\x73\x6c\x69\x63\x65\x28\x73\x74\x61\x72\x74\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x73\x63\x61\x70\x65\x53\x74\x72\x69\x6e\x67\x28\x73\x74\x72\x69\x6e\x67\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x3b\x76\x61\x72\x20\x63\x68\x61\x72\x2c\x6e\x65\x78\x74\x43\x68\x61\x72\x3b\x76\x61\x72\x20\x65\x73\x63\x61\x70\x65\x53\x65\x71\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x69\x3d\x30\x3b\x69\x3c\x73\x74\x72\x69\x6e\x67\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x2b\x2b\x29\x7b\x63\x68\x61\x72\x3d\x73\x74\x72\x69\x6e\x67\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x29\x3b\x69\x66\x28\x63\x68\x61\x72\x3e\x3d\x35\x35\x32\x39\x36\x26\x26\x63\x68\x61\x72\x3c\x3d\x35\x36\x33\x31\x39\x29\x7b\x6e\x65\x78\x74\x43\x68\x61\x72\x3d\x73\x74\x72\x69\x6e\x67\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x69\x2b\x31\x29\x3b\x69\x66\x28\x6e\x65\x78\x74\x43\x68\x61\x72\x3e\x3d\x35\x36\x33\x32\x30\x26\x26\x6e\x65\x78\x74\x43\x68\x61\x72\x3c\x3d\x35\x37\x33\x34\x33\x29\x7b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x65\x6e\x63\x6f\x64\x65\x48\x65\x78\x28\x28\x63\x68\x61\x72\x2d\x35\x35\x32\x39\x36\x29\x2a\x31\x30\x32\x34\x2b\x6e\x65\x78\x74\x43\x68\x61\x72\x2d\x35\x36\x33\x32\x30\x2b\x36\x35\x35\x33\x36\x29\x3b\x69\x2b\x2b\x3b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x7d\x65\x73\x63\x61\x70\x65\x53\x65\x71\x3d\x45\x53\x43\x41\x50\x45\x5f\x53\x45\x51\x55\x45\x4e\x43\x45\x53\x5b\x63\x68\x61\x72\x5d\x3b\x72\x65\x73\x75\x6c\x74\x2b\x3d\x21\x65\x73\x63\x61\x70\x65\x53\x65\x71\x26\x26\x69\x73\x50\x72\x69\x6e\x74\x61\x62\x6c\x65\x28\x63\x68\x61\x72\x29\x3f\x73\x74\x72\x69\x6e\x67\x5b\x69\x5d\x3a\x65\x73\x63\x61\x70\x65\x53\x65\x71\x7c\x7c\x65\x6e\x63\x6f\x64\x65\x48\x65\x78\x28\x63\x68\x61\x72\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x46\x6c\x6f\x77\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x2c\x5f\x74\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x69\x66\x28\x77\x72\x69\x74\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x6f\x62\x6a\x65\x63\x74\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x66\x61\x6c\x73\x65\x2c\x66\x61\x6c\x73\x65\x29\x29\x7b\x69\x66\x28\x69\x6e\x64\x65\x78\x21\x3d\x3d\x30\x29\x5f\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x2c\x22\x2b\x28\x21\x73\x74\x61\x74\x65\x2e\x63\x6f\x6e\x64\x65\x6e\x73\x65\x46\x6c\x6f\x77\x3f\x22\x20\x22\x3a\x22\x22\x29\x3b\x5f\x72\x65\x73\x75\x6c\x74\x2b\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x7d\x7d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x5f\x74\x61\x67\x3b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x22\x5b\x22\x2b\x5f\x72\x65\x73\x75\x6c\x74\x2b\x22\x5d\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x42\x6c\x6f\x63\x6b\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x63\x6f\x6d\x70\x61\x63\x74\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x2c\x5f\x74\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x69\x66\x28\x77\x72\x69\x74\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2b\x31\x2c\x6f\x62\x6a\x65\x63\x74\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x74\x72\x75\x65\x2c\x74\x72\x75\x65\x29\x29\x7b\x69\x66\x28\x21\x63\x6f\x6d\x70\x61\x63\x74\x7c\x7c\x69\x6e\x64\x65\x78\x21\x3d\x3d\x30\x29\x7b\x5f\x72\x65\x73\x75\x6c\x74\x2b\x3d\x67\x65\x6e\x65\x72\x61\x74\x65\x4e\x65\x78\x74\x4c\x69\x6e\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x29\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x26\x26\x43\x48\x41\x52\x5f\x4c\x49\x4e\x45\x5f\x46\x45\x45\x44\x3d\x3d\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x30\x29\x29\x7b\x5f\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x2d\x22\x7d\x65\x6c\x73\x65\x7b\x5f\x72\x65\x73\x75\x6c\x74\x2b\x3d\x22\x2d\x20\x22\x7d\x5f\x72\x65\x73\x75\x6c\x74\x2b\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x7d\x7d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x5f\x74\x61\x67\x3b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x5f\x72\x65\x73\x75\x6c\x74\x7c\x7c\x22\x5b\x5d\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x46\x6c\x6f\x77\x4d\x61\x70\x70\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x2c\x5f\x74\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2c\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x2c\x6f\x62\x6a\x65\x63\x74\x56\x61\x6c\x75\x65\x2c\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x3d\x73\x74\x61\x74\x65\x2e\x63\x6f\x6e\x64\x65\x6e\x73\x65\x46\x6c\x6f\x77\x3f\x27\x22\x27\x3a\x22\x22\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x21\x3d\x3d\x30\x29\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x22\x2c\x20\x22\x3b\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x3d\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x6f\x62\x6a\x65\x63\x74\x56\x61\x6c\x75\x65\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x5d\x3b\x69\x66\x28\x21\x77\x72\x69\x74\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x2c\x66\x61\x6c\x73\x65\x2c\x66\x61\x6c\x73\x65\x29\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x30\x32\x34\x29\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x22\x3f\x20\x22\x3b\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2b\x28\x73\x74\x61\x74\x65\x2e\x63\x6f\x6e\x64\x65\x6e\x73\x65\x46\x6c\x6f\x77\x3f\x27\x22\x27\x3a\x22\x22\x29\x2b\x22\x3a\x22\x2b\x28\x73\x74\x61\x74\x65\x2e\x63\x6f\x6e\x64\x65\x6e\x73\x65\x46\x6c\x6f\x77\x3f\x22\x22\x3a\x22\x20\x22\x29\x3b\x69\x66\x28\x21\x77\x72\x69\x74\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x6f\x62\x6a\x65\x63\x74\x56\x61\x6c\x75\x65\x2c\x66\x61\x6c\x73\x65\x2c\x66\x61\x6c\x73\x65\x29\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3b\x5f\x72\x65\x73\x75\x6c\x74\x2b\x3d\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x7d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x5f\x74\x61\x67\x3b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x22\x7b\x22\x2b\x5f\x72\x65\x73\x75\x6c\x74\x2b\x22\x7d\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x42\x6c\x6f\x63\x6b\x4d\x61\x70\x70\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x63\x6f\x6d\x70\x61\x63\x74\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x73\x75\x6c\x74\x3d\x22\x22\x2c\x5f\x74\x61\x67\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2c\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x2c\x6f\x62\x6a\x65\x63\x74\x56\x61\x6c\x75\x65\x2c\x65\x78\x70\x6c\x69\x63\x69\x74\x50\x61\x69\x72\x2c\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x3b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x73\x6f\x72\x74\x4b\x65\x79\x73\x3d\x3d\x3d\x74\x72\x75\x65\x29\x7b\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x2e\x73\x6f\x72\x74\x28\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x74\x61\x74\x65\x2e\x73\x6f\x72\x74\x4b\x65\x79\x73\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x2e\x73\x6f\x72\x74\x28\x73\x74\x61\x74\x65\x2e\x73\x6f\x72\x74\x4b\x65\x79\x73\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x73\x6f\x72\x74\x4b\x65\x79\x73\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x73\x6f\x72\x74\x4b\x65\x79\x73\x20\x6d\x75\x73\x74\x20\x62\x65\x20\x61\x20\x62\x6f\x6f\x6c\x65\x61\x6e\x20\x6f\x72\x20\x61\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7d\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x3d\x22\x22\x3b\x69\x66\x28\x21\x63\x6f\x6d\x70\x61\x63\x74\x7c\x7c\x69\x6e\x64\x65\x78\x21\x3d\x3d\x30\x29\x7b\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x67\x65\x6e\x65\x72\x61\x74\x65\x4e\x65\x78\x74\x4c\x69\x6e\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x29\x7d\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x3d\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x6f\x62\x6a\x65\x63\x74\x56\x61\x6c\x75\x65\x3d\x6f\x62\x6a\x65\x63\x74\x5b\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x5d\x3b\x69\x66\x28\x21\x77\x72\x69\x74\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2b\x31\x2c\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x2c\x74\x72\x75\x65\x2c\x74\x72\x75\x65\x2c\x74\x72\x75\x65\x29\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x65\x78\x70\x6c\x69\x63\x69\x74\x50\x61\x69\x72\x3d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x6e\x75\x6c\x6c\x26\x26\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x22\x3f\x22\x7c\x7c\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x26\x26\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x30\x32\x34\x3b\x69\x66\x28\x65\x78\x70\x6c\x69\x63\x69\x74\x50\x61\x69\x72\x29\x7b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x26\x26\x43\x48\x41\x52\x5f\x4c\x49\x4e\x45\x5f\x46\x45\x45\x44\x3d\x3d\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x30\x29\x29\x7b\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x22\x3f\x22\x7d\x65\x6c\x73\x65\x7b\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x22\x3f\x20\x22\x7d\x7d\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3b\x69\x66\x28\x65\x78\x70\x6c\x69\x63\x69\x74\x50\x61\x69\x72\x29\x7b\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x67\x65\x6e\x65\x72\x61\x74\x65\x4e\x65\x78\x74\x4c\x69\x6e\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x29\x7d\x69\x66\x28\x21\x77\x72\x69\x74\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2b\x31\x2c\x6f\x62\x6a\x65\x63\x74\x56\x61\x6c\x75\x65\x2c\x74\x72\x75\x65\x2c\x65\x78\x70\x6c\x69\x63\x69\x74\x50\x61\x69\x72\x29\x29\x7b\x63\x6f\x6e\x74\x69\x6e\x75\x65\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x26\x26\x43\x48\x41\x52\x5f\x4c\x49\x4e\x45\x5f\x46\x45\x45\x44\x3d\x3d\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2e\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74\x28\x30\x29\x29\x7b\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x22\x3a\x22\x7d\x65\x6c\x73\x65\x7b\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x22\x3a\x20\x22\x7d\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x2b\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3b\x5f\x72\x65\x73\x75\x6c\x74\x2b\x3d\x70\x61\x69\x72\x42\x75\x66\x66\x65\x72\x7d\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x5f\x74\x61\x67\x3b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x5f\x72\x65\x73\x75\x6c\x74\x7c\x7c\x22\x7b\x7d\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x74\x65\x63\x74\x54\x79\x70\x65\x28\x73\x74\x61\x74\x65\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x65\x78\x70\x6c\x69\x63\x69\x74\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x73\x75\x6c\x74\x2c\x74\x79\x70\x65\x4c\x69\x73\x74\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x2c\x74\x79\x70\x65\x2c\x73\x74\x79\x6c\x65\x3b\x74\x79\x70\x65\x4c\x69\x73\x74\x3d\x65\x78\x70\x6c\x69\x63\x69\x74\x3f\x73\x74\x61\x74\x65\x2e\x65\x78\x70\x6c\x69\x63\x69\x74\x54\x79\x70\x65\x73\x3a\x73\x74\x61\x74\x65\x2e\x69\x6d\x70\x6c\x69\x63\x69\x74\x54\x79\x70\x65\x73\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x74\x79\x70\x65\x4c\x69\x73\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x74\x79\x70\x65\x3d\x74\x79\x70\x65\x4c\x69\x73\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x28\x74\x79\x70\x65\x2e\x69\x6e\x73\x74\x61\x6e\x63\x65\x4f\x66\x7c\x7c\x74\x79\x70\x65\x2e\x70\x72\x65\x64\x69\x63\x61\x74\x65\x29\x26\x26\x28\x21\x74\x79\x70\x65\x2e\x69\x6e\x73\x74\x61\x6e\x63\x65\x4f\x66\x7c\x7c\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x6f\x62\x6a\x65\x63\x74\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x74\x79\x70\x65\x2e\x69\x6e\x73\x74\x61\x6e\x63\x65\x4f\x66\x29\x26\x26\x28\x21\x74\x79\x70\x65\x2e\x70\x72\x65\x64\x69\x63\x61\x74\x65\x7c\x7c\x74\x79\x70\x65\x2e\x70\x72\x65\x64\x69\x63\x61\x74\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x29\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x65\x78\x70\x6c\x69\x63\x69\x74\x3f\x74\x79\x70\x65\x2e\x74\x61\x67\x3a\x22\x3f\x22\x3b\x69\x66\x28\x74\x79\x70\x65\x2e\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x29\x7b\x73\x74\x79\x6c\x65\x3d\x73\x74\x61\x74\x65\x2e\x73\x74\x79\x6c\x65\x4d\x61\x70\x5b\x74\x79\x70\x65\x2e\x74\x61\x67\x5d\x7c\x7c\x74\x79\x70\x65\x2e\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x79\x6c\x65\x3b\x69\x66\x28\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x74\x79\x70\x65\x2e\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x29\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x75\x6e\x63\x74\x69\x6f\x6e\x5d\x22\x29\x7b\x5f\x72\x65\x73\x75\x6c\x74\x3d\x74\x79\x70\x65\x2e\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x73\x74\x79\x6c\x65\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x5f\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x74\x79\x70\x65\x2e\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x2c\x73\x74\x79\x6c\x65\x29\x29\x7b\x5f\x72\x65\x73\x75\x6c\x74\x3d\x74\x79\x70\x65\x2e\x72\x65\x70\x72\x65\x73\x65\x6e\x74\x5b\x73\x74\x79\x6c\x65\x5d\x28\x6f\x62\x6a\x65\x63\x74\x2c\x73\x74\x79\x6c\x65\x29\x7d\x65\x6c\x73\x65\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x21\x3c\x22\x2b\x74\x79\x70\x65\x2e\x74\x61\x67\x2b\x27\x3e\x20\x74\x61\x67\x20\x72\x65\x73\x6f\x6c\x76\x65\x72\x20\x61\x63\x63\x65\x70\x74\x73\x20\x6e\x6f\x74\x20\x22\x27\x2b\x73\x74\x79\x6c\x65\x2b\x27\x22\x20\x73\x74\x79\x6c\x65\x27\x29\x7d\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x5f\x72\x65\x73\x75\x6c\x74\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x72\x69\x74\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x62\x6c\x6f\x63\x6b\x2c\x63\x6f\x6d\x70\x61\x63\x74\x2c\x69\x73\x6b\x65\x79\x29\x7b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x3d\x6e\x75\x6c\x6c\x3b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x6f\x62\x6a\x65\x63\x74\x3b\x69\x66\x28\x21\x64\x65\x74\x65\x63\x74\x54\x79\x70\x65\x28\x73\x74\x61\x74\x65\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x66\x61\x6c\x73\x65\x29\x29\x7b\x64\x65\x74\x65\x63\x74\x54\x79\x70\x65\x28\x73\x74\x61\x74\x65\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x74\x72\x75\x65\x29\x7d\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x29\x3b\x69\x66\x28\x62\x6c\x6f\x63\x6b\x29\x7b\x62\x6c\x6f\x63\x6b\x3d\x73\x74\x61\x74\x65\x2e\x66\x6c\x6f\x77\x4c\x65\x76\x65\x6c\x3c\x30\x7c\x7c\x73\x74\x61\x74\x65\x2e\x66\x6c\x6f\x77\x4c\x65\x76\x65\x6c\x3e\x6c\x65\x76\x65\x6c\x7d\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x4f\x72\x41\x72\x72\x61\x79\x3d\x74\x79\x70\x65\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4f\x62\x6a\x65\x63\x74\x5d\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x72\x61\x79\x5d\x22\x2c\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x2c\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x4f\x72\x41\x72\x72\x61\x79\x29\x7b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x3d\x73\x74\x61\x74\x65\x2e\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x3d\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x21\x3d\x3d\x2d\x31\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x6e\x75\x6c\x6c\x26\x26\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x22\x3f\x22\x7c\x7c\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x7c\x7c\x73\x74\x61\x74\x65\x2e\x69\x6e\x64\x65\x6e\x74\x21\x3d\x3d\x32\x26\x26\x6c\x65\x76\x65\x6c\x3e\x30\x29\x7b\x63\x6f\x6d\x70\x61\x63\x74\x3d\x66\x61\x6c\x73\x65\x7d\x69\x66\x28\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x26\x26\x73\x74\x61\x74\x65\x2e\x75\x73\x65\x64\x44\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x5b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x5d\x29\x7b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x22\x2a\x72\x65\x66\x5f\x22\x2b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x4f\x72\x41\x72\x72\x61\x79\x26\x26\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x26\x26\x21\x73\x74\x61\x74\x65\x2e\x75\x73\x65\x64\x44\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x5b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x5d\x29\x7b\x73\x74\x61\x74\x65\x2e\x75\x73\x65\x64\x44\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x5b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x5d\x3d\x74\x72\x75\x65\x7d\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4f\x62\x6a\x65\x63\x74\x5d\x22\x29\x7b\x69\x66\x28\x62\x6c\x6f\x63\x6b\x26\x26\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x29\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x30\x29\x7b\x77\x72\x69\x74\x65\x42\x6c\x6f\x63\x6b\x4d\x61\x70\x70\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2c\x63\x6f\x6d\x70\x61\x63\x74\x29\x3b\x69\x66\x28\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x29\x7b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x22\x26\x72\x65\x66\x5f\x22\x2b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x2b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x7d\x7d\x65\x6c\x73\x65\x7b\x77\x72\x69\x74\x65\x46\x6c\x6f\x77\x4d\x61\x70\x70\x69\x6e\x67\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x29\x3b\x69\x66\x28\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x29\x7b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x22\x26\x72\x65\x66\x5f\x22\x2b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x2b\x22\x20\x22\x2b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x7d\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x72\x61\x79\x5d\x22\x29\x7b\x69\x66\x28\x62\x6c\x6f\x63\x6b\x26\x26\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x30\x29\x7b\x77\x72\x69\x74\x65\x42\x6c\x6f\x63\x6b\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2c\x63\x6f\x6d\x70\x61\x63\x74\x29\x3b\x69\x66\x28\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x29\x7b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x22\x26\x72\x65\x66\x5f\x22\x2b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x2b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x7d\x7d\x65\x6c\x73\x65\x7b\x77\x72\x69\x74\x65\x46\x6c\x6f\x77\x53\x65\x71\x75\x65\x6e\x63\x65\x28\x73\x74\x61\x74\x65\x2c\x6c\x65\x76\x65\x6c\x2c\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x29\x3b\x69\x66\x28\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x29\x7b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x22\x26\x72\x65\x66\x5f\x22\x2b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x49\x6e\x64\x65\x78\x2b\x22\x20\x22\x2b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x7d\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x74\x72\x69\x6e\x67\x5d\x22\x29\x7b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x22\x3f\x22\x29\x7b\x77\x72\x69\x74\x65\x53\x63\x61\x6c\x61\x72\x28\x73\x74\x61\x74\x65\x2c\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2c\x6c\x65\x76\x65\x6c\x2c\x69\x73\x6b\x65\x79\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x73\x6b\x69\x70\x49\x6e\x76\x61\x6c\x69\x64\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x3b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x59\x41\x4d\x4c\x45\x78\x63\x65\x70\x74\x69\x6f\x6e\x28\x22\x75\x6e\x61\x63\x63\x65\x70\x74\x61\x62\x6c\x65\x20\x6b\x69\x6e\x64\x20\x6f\x66\x20\x61\x6e\x20\x6f\x62\x6a\x65\x63\x74\x20\x74\x6f\x20\x64\x75\x6d\x70\x20\x22\x2b\x74\x79\x70\x65\x29\x7d\x69\x66\x28\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x6e\x75\x6c\x6c\x26\x26\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x21\x3d\x3d\x22\x3f\x22\x29\x7b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x3d\x22\x21\x3c\x22\x2b\x73\x74\x61\x74\x65\x2e\x74\x61\x67\x2b\x22\x3e\x20\x22\x2b\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x44\x75\x70\x6c\x69\x63\x61\x74\x65\x52\x65\x66\x65\x72\x65\x6e\x63\x65\x73\x28\x6f\x62\x6a\x65\x63\x74\x2c\x73\x74\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x73\x3d\x5b\x5d\x2c\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x49\x6e\x64\x65\x78\x65\x73\x3d\x5b\x5d\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x73\x70\x65\x63\x74\x4e\x6f\x64\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x62\x6a\x65\x63\x74\x73\x2c\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x49\x6e\x64\x65\x78\x65\x73\x29\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x49\x6e\x64\x65\x78\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x73\x74\x61\x74\x65\x2e\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x2e\x70\x75\x73\x68\x28\x6f\x62\x6a\x65\x63\x74\x73\x5b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x49\x6e\x64\x65\x78\x65\x73\x5b\x69\x6e\x64\x65\x78\x5d\x5d\x29\x7d\x73\x74\x61\x74\x65\x2e\x75\x73\x65\x64\x44\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x3d\x6e\x65\x77\x20\x41\x72\x72\x61\x79\x28\x6c\x65\x6e\x67\x74\x68\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x73\x70\x65\x63\x74\x4e\x6f\x64\x65\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6f\x62\x6a\x65\x63\x74\x73\x2c\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x49\x6e\x64\x65\x78\x65\x73\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x2c\x69\x6e\x64\x65\x78\x2c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x21\x3d\x3d\x6e\x75\x6c\x6c\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x7b\x69\x6e\x64\x65\x78\x3d\x6f\x62\x6a\x65\x63\x74\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x21\x3d\x3d\x2d\x31\x29\x7b\x69\x66\x28\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x49\x6e\x64\x65\x78\x65\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x69\x6e\x64\x65\x78\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x49\x6e\x64\x65\x78\x65\x73\x2e\x70\x75\x73\x68\x28\x69\x6e\x64\x65\x78\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x73\x2e\x70\x75\x73\x68\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x69\x6e\x73\x70\x65\x63\x74\x4e\x6f\x64\x65\x28\x6f\x62\x6a\x65\x63\x74\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x6f\x62\x6a\x65\x63\x74\x73\x2c\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x49\x6e\x64\x65\x78\x65\x73\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x66\x6f\x72\x28\x69\x6e\x64\x65\x78\x3d\x30\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x3b\x69\x6e\x64\x65\x78\x2b\x3d\x31\x29\x7b\x69\x6e\x73\x70\x65\x63\x74\x4e\x6f\x64\x65\x28\x6f\x62\x6a\x65\x63\x74\x5b\x6f\x62\x6a\x65\x63\x74\x4b\x65\x79\x4c\x69\x73\x74\x5b\x69\x6e\x64\x65\x78\x5d\x5d\x2c\x6f\x62\x6a\x65\x63\x74\x73\x2c\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x73\x49\x6e\x64\x65\x78\x65\x73\x29\x7d\x7d\x7d\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x75\x6d\x70\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x6f\x70\x74\x69\x6f\x6e\x73\x3d\x6f\x70\x74\x69\x6f\x6e\x73\x7c\x7c\x7b\x7d\x3b\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x6e\x65\x77\x20\x53\x74\x61\x74\x65\x28\x6f\x70\x74\x69\x6f\x6e\x73\x29\x3b\x69\x66\x28\x21\x73\x74\x61\x74\x65\x2e\x6e\x6f\x52\x65\x66\x73\x29\x67\x65\x74\x44\x75\x70\x6c\x69\x63\x61\x74\x65\x52\x65\x66\x65\x72\x65\x6e\x63\x65\x73\x28\x69\x6e\x70\x75\x74\x2c\x73\x74\x61\x74\x65\x29\x3b\x69\x66\x28\x77\x72\x69\x74\x65\x4e\x6f\x64\x65\x28\x73\x74\x61\x74\x65\x2c\x30\x2c\x69\x6e\x70\x75\x74\x2c\x74\x72\x75\x65\x2c\x74\x72\x75\x65\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x74\x65\x2e\x64\x75\x6d\x70\x2b\x22\x5c\x6e\x22\x3b\x72\x65\x74\x75\x72\x6e\x22\x22\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x61\x66\x65\x44\x75\x6d\x70\x28\x69\x6e\x70\x75\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x75\x6d\x70\x28\x69\x6e\x70\x75\x74\x2c\x63\x6f\x6d\x6d\x6f\x6e\x2e\x65\x78\x74\x65\x6e\x64\x28\x7b\x73\x63\x68\x65\x6d\x61\x3a\x44\x45\x46\x41\x55\x4c\x54\x5f\x53\x41\x46\x45\x5f\x53\x43\x48\x45\x4d\x41\x7d\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x75\x6d\x70\x3d\x64\x75\x6d\x70\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x2e\x73\x61\x66\x65\x44\x75\x6d\x70\x3d\x73\x61\x66\x65\x44\x75\x6d\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x29\x3b\x76\x61\x72\x20\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x74\x72\x69\x6e\x67\x5d\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x76\x61\x6c\x75\x65\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x7c\x7c\x21\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x3d\x3d\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x53\x74\x72\x69\x6e\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x2c\x6e\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x32\x39\x29\x2c\x74\x6f\x4e\x75\x6d\x62\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x30\x29\x3b\x76\x61\x72\x20\x46\x55\x4e\x43\x5f\x45\x52\x52\x4f\x52\x5f\x54\x45\x58\x54\x3d\x22\x45\x78\x70\x65\x63\x74\x65\x64\x20\x61\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x4d\x61\x78\x3d\x4d\x61\x74\x68\x2e\x6d\x61\x78\x2c\x6e\x61\x74\x69\x76\x65\x4d\x69\x6e\x3d\x4d\x61\x74\x68\x2e\x6d\x69\x6e\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x62\x6f\x75\x6e\x63\x65\x28\x66\x75\x6e\x63\x2c\x77\x61\x69\x74\x2c\x6f\x70\x74\x69\x6f\x6e\x73\x29\x7b\x76\x61\x72\x20\x6c\x61\x73\x74\x41\x72\x67\x73\x2c\x6c\x61\x73\x74\x54\x68\x69\x73\x2c\x6d\x61\x78\x57\x61\x69\x74\x2c\x72\x65\x73\x75\x6c\x74\x2c\x74\x69\x6d\x65\x72\x49\x64\x2c\x6c\x61\x73\x74\x43\x61\x6c\x6c\x54\x69\x6d\x65\x2c\x6c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x54\x69\x6d\x65\x3d\x30\x2c\x6c\x65\x61\x64\x69\x6e\x67\x3d\x66\x61\x6c\x73\x65\x2c\x6d\x61\x78\x69\x6e\x67\x3d\x66\x61\x6c\x73\x65\x2c\x74\x72\x61\x69\x6c\x69\x6e\x67\x3d\x74\x72\x75\x65\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x66\x75\x6e\x63\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x46\x55\x4e\x43\x5f\x45\x52\x52\x4f\x52\x5f\x54\x45\x58\x54\x29\x7d\x77\x61\x69\x74\x3d\x74\x6f\x4e\x75\x6d\x62\x65\x72\x28\x77\x61\x69\x74\x29\x7c\x7c\x30\x3b\x69\x66\x28\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x6f\x70\x74\x69\x6f\x6e\x73\x29\x29\x7b\x6c\x65\x61\x64\x69\x6e\x67\x3d\x21\x21\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x6c\x65\x61\x64\x69\x6e\x67\x3b\x6d\x61\x78\x69\x6e\x67\x3d\x22\x6d\x61\x78\x57\x61\x69\x74\x22\x69\x6e\x20\x6f\x70\x74\x69\x6f\x6e\x73\x3b\x6d\x61\x78\x57\x61\x69\x74\x3d\x6d\x61\x78\x69\x6e\x67\x3f\x6e\x61\x74\x69\x76\x65\x4d\x61\x78\x28\x74\x6f\x4e\x75\x6d\x62\x65\x72\x28\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x6d\x61\x78\x57\x61\x69\x74\x29\x7c\x7c\x30\x2c\x77\x61\x69\x74\x29\x3a\x6d\x61\x78\x57\x61\x69\x74\x3b\x74\x72\x61\x69\x6c\x69\x6e\x67\x3d\x22\x74\x72\x61\x69\x6c\x69\x6e\x67\x22\x69\x6e\x20\x6f\x70\x74\x69\x6f\x6e\x73\x3f\x21\x21\x6f\x70\x74\x69\x6f\x6e\x73\x2e\x74\x72\x61\x69\x6c\x69\x6e\x67\x3a\x74\x72\x61\x69\x6c\x69\x6e\x67\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x76\x6f\x6b\x65\x46\x75\x6e\x63\x28\x74\x69\x6d\x65\x29\x7b\x76\x61\x72\x20\x61\x72\x67\x73\x3d\x6c\x61\x73\x74\x41\x72\x67\x73\x2c\x74\x68\x69\x73\x41\x72\x67\x3d\x6c\x61\x73\x74\x54\x68\x69\x73\x3b\x6c\x61\x73\x74\x41\x72\x67\x73\x3d\x6c\x61\x73\x74\x54\x68\x69\x73\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x6c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x54\x69\x6d\x65\x3d\x74\x69\x6d\x65\x3b\x72\x65\x73\x75\x6c\x74\x3d\x66\x75\x6e\x63\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x41\x72\x67\x2c\x61\x72\x67\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x65\x61\x64\x69\x6e\x67\x45\x64\x67\x65\x28\x74\x69\x6d\x65\x29\x7b\x6c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x54\x69\x6d\x65\x3d\x74\x69\x6d\x65\x3b\x74\x69\x6d\x65\x72\x49\x64\x3d\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x74\x69\x6d\x65\x72\x45\x78\x70\x69\x72\x65\x64\x2c\x77\x61\x69\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x61\x64\x69\x6e\x67\x3f\x69\x6e\x76\x6f\x6b\x65\x46\x75\x6e\x63\x28\x74\x69\x6d\x65\x29\x3a\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x57\x61\x69\x74\x28\x74\x69\x6d\x65\x29\x7b\x76\x61\x72\x20\x74\x69\x6d\x65\x53\x69\x6e\x63\x65\x4c\x61\x73\x74\x43\x61\x6c\x6c\x3d\x74\x69\x6d\x65\x2d\x6c\x61\x73\x74\x43\x61\x6c\x6c\x54\x69\x6d\x65\x2c\x74\x69\x6d\x65\x53\x69\x6e\x63\x65\x4c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x3d\x74\x69\x6d\x65\x2d\x6c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x54\x69\x6d\x65\x2c\x74\x69\x6d\x65\x57\x61\x69\x74\x69\x6e\x67\x3d\x77\x61\x69\x74\x2d\x74\x69\x6d\x65\x53\x69\x6e\x63\x65\x4c\x61\x73\x74\x43\x61\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x6d\x61\x78\x69\x6e\x67\x3f\x6e\x61\x74\x69\x76\x65\x4d\x69\x6e\x28\x74\x69\x6d\x65\x57\x61\x69\x74\x69\x6e\x67\x2c\x6d\x61\x78\x57\x61\x69\x74\x2d\x74\x69\x6d\x65\x53\x69\x6e\x63\x65\x4c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x29\x3a\x74\x69\x6d\x65\x57\x61\x69\x74\x69\x6e\x67\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x68\x6f\x75\x6c\x64\x49\x6e\x76\x6f\x6b\x65\x28\x74\x69\x6d\x65\x29\x7b\x76\x61\x72\x20\x74\x69\x6d\x65\x53\x69\x6e\x63\x65\x4c\x61\x73\x74\x43\x61\x6c\x6c\x3d\x74\x69\x6d\x65\x2d\x6c\x61\x73\x74\x43\x61\x6c\x6c\x54\x69\x6d\x65\x2c\x74\x69\x6d\x65\x53\x69\x6e\x63\x65\x4c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x3d\x74\x69\x6d\x65\x2d\x6c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x54\x69\x6d\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x6c\x61\x73\x74\x43\x61\x6c\x6c\x54\x69\x6d\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7c\x7c\x74\x69\x6d\x65\x53\x69\x6e\x63\x65\x4c\x61\x73\x74\x43\x61\x6c\x6c\x3e\x3d\x77\x61\x69\x74\x7c\x7c\x74\x69\x6d\x65\x53\x69\x6e\x63\x65\x4c\x61\x73\x74\x43\x61\x6c\x6c\x3c\x30\x7c\x7c\x6d\x61\x78\x69\x6e\x67\x26\x26\x74\x69\x6d\x65\x53\x69\x6e\x63\x65\x4c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x3e\x3d\x6d\x61\x78\x57\x61\x69\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x69\x6d\x65\x72\x45\x78\x70\x69\x72\x65\x64\x28\x29\x7b\x76\x61\x72\x20\x74\x69\x6d\x65\x3d\x6e\x6f\x77\x28\x29\x3b\x69\x66\x28\x73\x68\x6f\x75\x6c\x64\x49\x6e\x76\x6f\x6b\x65\x28\x74\x69\x6d\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x61\x69\x6c\x69\x6e\x67\x45\x64\x67\x65\x28\x74\x69\x6d\x65\x29\x7d\x74\x69\x6d\x65\x72\x49\x64\x3d\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x74\x69\x6d\x65\x72\x45\x78\x70\x69\x72\x65\x64\x2c\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x57\x61\x69\x74\x28\x74\x69\x6d\x65\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x72\x61\x69\x6c\x69\x6e\x67\x45\x64\x67\x65\x28\x74\x69\x6d\x65\x29\x7b\x74\x69\x6d\x65\x72\x49\x64\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x74\x72\x61\x69\x6c\x69\x6e\x67\x26\x26\x6c\x61\x73\x74\x41\x72\x67\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x76\x6f\x6b\x65\x46\x75\x6e\x63\x28\x74\x69\x6d\x65\x29\x7d\x6c\x61\x73\x74\x41\x72\x67\x73\x3d\x6c\x61\x73\x74\x54\x68\x69\x73\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x61\x6e\x63\x65\x6c\x28\x29\x7b\x69\x66\x28\x74\x69\x6d\x65\x72\x49\x64\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x63\x6c\x65\x61\x72\x54\x69\x6d\x65\x6f\x75\x74\x28\x74\x69\x6d\x65\x72\x49\x64\x29\x7d\x6c\x61\x73\x74\x49\x6e\x76\x6f\x6b\x65\x54\x69\x6d\x65\x3d\x30\x3b\x6c\x61\x73\x74\x41\x72\x67\x73\x3d\x6c\x61\x73\x74\x43\x61\x6c\x6c\x54\x69\x6d\x65\x3d\x6c\x61\x73\x74\x54\x68\x69\x73\x3d\x74\x69\x6d\x65\x72\x49\x64\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x6c\x75\x73\x68\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x69\x6d\x65\x72\x49\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x72\x65\x73\x75\x6c\x74\x3a\x74\x72\x61\x69\x6c\x69\x6e\x67\x45\x64\x67\x65\x28\x6e\x6f\x77\x28\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x64\x65\x62\x6f\x75\x6e\x63\x65\x64\x28\x29\x7b\x76\x61\x72\x20\x74\x69\x6d\x65\x3d\x6e\x6f\x77\x28\x29\x2c\x69\x73\x49\x6e\x76\x6f\x6b\x69\x6e\x67\x3d\x73\x68\x6f\x75\x6c\x64\x49\x6e\x76\x6f\x6b\x65\x28\x74\x69\x6d\x65\x29\x3b\x6c\x61\x73\x74\x41\x72\x67\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x3b\x6c\x61\x73\x74\x54\x68\x69\x73\x3d\x74\x68\x69\x73\x3b\x6c\x61\x73\x74\x43\x61\x6c\x6c\x54\x69\x6d\x65\x3d\x74\x69\x6d\x65\x3b\x69\x66\x28\x69\x73\x49\x6e\x76\x6f\x6b\x69\x6e\x67\x29\x7b\x69\x66\x28\x74\x69\x6d\x65\x72\x49\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x61\x64\x69\x6e\x67\x45\x64\x67\x65\x28\x6c\x61\x73\x74\x43\x61\x6c\x6c\x54\x69\x6d\x65\x29\x7d\x69\x66\x28\x6d\x61\x78\x69\x6e\x67\x29\x7b\x74\x69\x6d\x65\x72\x49\x64\x3d\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x74\x69\x6d\x65\x72\x45\x78\x70\x69\x72\x65\x64\x2c\x77\x61\x69\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x76\x6f\x6b\x65\x46\x75\x6e\x63\x28\x6c\x61\x73\x74\x43\x61\x6c\x6c\x54\x69\x6d\x65\x29\x7d\x7d\x69\x66\x28\x74\x69\x6d\x65\x72\x49\x64\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x74\x69\x6d\x65\x72\x49\x64\x3d\x73\x65\x74\x54\x69\x6d\x65\x6f\x75\x74\x28\x74\x69\x6d\x65\x72\x45\x78\x70\x69\x72\x65\x64\x2c\x77\x61\x69\x74\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x64\x65\x62\x6f\x75\x6e\x63\x65\x64\x2e\x63\x61\x6e\x63\x65\x6c\x3d\x63\x61\x6e\x63\x65\x6c\x3b\x64\x65\x62\x6f\x75\x6e\x63\x65\x64\x2e\x66\x6c\x75\x73\x68\x3d\x66\x6c\x75\x73\x68\x3b\x72\x65\x74\x75\x72\x6e\x20\x64\x65\x62\x6f\x75\x6e\x63\x65\x64\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x64\x65\x62\x6f\x75\x6e\x63\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x6e\x6f\x77\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x6f\x6f\x74\x2e\x44\x61\x74\x65\x2e\x6e\x6f\x77\x28\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x6f\x77\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x53\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x3f\x6f\x62\x6a\x65\x63\x74\x3a\x62\x61\x73\x65\x53\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x32\x29\x2c\x63\x61\x73\x74\x50\x61\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x33\x29\x2c\x69\x73\x49\x6e\x64\x65\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x31\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x2c\x74\x6f\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x53\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x7d\x70\x61\x74\x68\x3d\x63\x61\x73\x74\x50\x61\x74\x68\x28\x70\x61\x74\x68\x2c\x6f\x62\x6a\x65\x63\x74\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x70\x61\x74\x68\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x3d\x6c\x65\x6e\x67\x74\x68\x2d\x31\x2c\x6e\x65\x73\x74\x65\x64\x3d\x6f\x62\x6a\x65\x63\x74\x3b\x77\x68\x69\x6c\x65\x28\x6e\x65\x73\x74\x65\x64\x21\x3d\x6e\x75\x6c\x6c\x26\x26\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x6b\x65\x79\x3d\x74\x6f\x4b\x65\x79\x28\x70\x61\x74\x68\x5b\x69\x6e\x64\x65\x78\x5d\x29\x2c\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x76\x61\x6c\x75\x65\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x21\x3d\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3d\x6e\x65\x73\x74\x65\x64\x5b\x6b\x65\x79\x5d\x3b\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x3f\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x28\x6f\x62\x6a\x56\x61\x6c\x75\x65\x2c\x6b\x65\x79\x2c\x6e\x65\x73\x74\x65\x64\x29\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x56\x61\x6c\x75\x65\x29\x3f\x6f\x62\x6a\x56\x61\x6c\x75\x65\x3a\x69\x73\x49\x6e\x64\x65\x78\x28\x70\x61\x74\x68\x5b\x69\x6e\x64\x65\x78\x2b\x31\x5d\x29\x3f\x5b\x5d\x3a\x7b\x7d\x7d\x7d\x61\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x28\x6e\x65\x73\x74\x65\x64\x2c\x6b\x65\x79\x2c\x6e\x65\x77\x56\x61\x6c\x75\x65\x29\x3b\x6e\x65\x73\x74\x65\x64\x3d\x6e\x65\x73\x74\x65\x64\x5b\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x53\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x4f\x62\x6a\x65\x63\x74\x2e\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x29\x3b\x76\x61\x72\x20\x24\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x34\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x30\x29\x28\x22\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x22\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x28\x69\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x28\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x69\x74\x29\x29\x7d\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x35\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x4f\x62\x6a\x65\x63\x74\x2e\x73\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2c\x22\x4f\x62\x6a\x65\x63\x74\x22\x2c\x7b\x73\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x37\x29\x2e\x73\x65\x74\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x76\x61\x72\x20\x61\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x39\x29\x3b\x76\x61\x72\x20\x63\x68\x65\x63\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4f\x2c\x70\x72\x6f\x74\x6f\x29\x7b\x61\x6e\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x70\x72\x6f\x74\x6f\x29\x26\x26\x70\x72\x6f\x74\x6f\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x70\x72\x6f\x74\x6f\x2b\x22\x3a\x20\x63\x61\x6e\x27\x74\x20\x73\x65\x74\x20\x61\x73\x20\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x21\x22\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x73\x65\x74\x3a\x4f\x62\x6a\x65\x63\x74\x2e\x73\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x7c\x7c\x28\x22\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x22\x69\x6e\x7b\x7d\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x65\x73\x74\x2c\x62\x75\x67\x67\x79\x2c\x73\x65\x74\x29\x7b\x74\x72\x79\x7b\x73\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x29\x28\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x63\x61\x6c\x6c\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x33\x29\x2e\x66\x28\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x22\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x22\x29\x2e\x73\x65\x74\x2c\x32\x29\x3b\x73\x65\x74\x28\x74\x65\x73\x74\x2c\x5b\x5d\x29\x3b\x62\x75\x67\x67\x79\x3d\x21\x28\x74\x65\x73\x74\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x41\x72\x72\x61\x79\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x62\x75\x67\x67\x79\x3d\x74\x72\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x28\x4f\x2c\x70\x72\x6f\x74\x6f\x29\x7b\x63\x68\x65\x63\x6b\x28\x4f\x2c\x70\x72\x6f\x74\x6f\x29\x3b\x69\x66\x28\x62\x75\x67\x67\x79\x29\x4f\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x3d\x70\x72\x6f\x74\x6f\x3b\x65\x6c\x73\x65\x20\x73\x65\x74\x28\x4f\x2c\x70\x72\x6f\x74\x6f\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x7d\x7d\x28\x7b\x7d\x2c\x66\x61\x6c\x73\x65\x29\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x2c\x63\x68\x65\x63\x6b\x3a\x63\x68\x65\x63\x6b\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x33\x39\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x30\x29\x3b\x76\x61\x72\x20\x24\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x4f\x62\x6a\x65\x63\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x72\x65\x61\x74\x65\x28\x50\x2c\x44\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x24\x4f\x62\x6a\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x28\x50\x2c\x44\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2c\x22\x4f\x62\x6a\x65\x63\x74\x22\x2c\x7b\x63\x72\x65\x61\x74\x65\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x32\x29\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x61\x63\x74\x2d\x64\x6f\x6d\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x61\x63\x74\x2d\x72\x65\x64\x75\x78\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x4d\x61\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x39\x29\x2c\x62\x61\x73\x65\x43\x6c\x6f\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x34\x29\x2c\x62\x61\x73\x65\x55\x6e\x73\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x36\x29\x2c\x63\x61\x73\x74\x50\x61\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x33\x29\x2c\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x38\x29\x2c\x63\x75\x73\x74\x6f\x6d\x4f\x6d\x69\x74\x43\x6c\x6f\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x39\x29\x2c\x66\x6c\x61\x74\x52\x65\x73\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x31\x29\x2c\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x32\x29\x3b\x76\x61\x72\x20\x43\x4c\x4f\x4e\x45\x5f\x44\x45\x45\x50\x5f\x46\x4c\x41\x47\x3d\x31\x2c\x43\x4c\x4f\x4e\x45\x5f\x46\x4c\x41\x54\x5f\x46\x4c\x41\x47\x3d\x32\x2c\x43\x4c\x4f\x4e\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x53\x5f\x46\x4c\x41\x47\x3d\x34\x3b\x76\x61\x72\x20\x6f\x6d\x69\x74\x3d\x66\x6c\x61\x74\x52\x65\x73\x74\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x73\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x7b\x7d\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x76\x61\x72\x20\x69\x73\x44\x65\x65\x70\x3d\x66\x61\x6c\x73\x65\x3b\x70\x61\x74\x68\x73\x3d\x61\x72\x72\x61\x79\x4d\x61\x70\x28\x70\x61\x74\x68\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x74\x68\x29\x7b\x70\x61\x74\x68\x3d\x63\x61\x73\x74\x50\x61\x74\x68\x28\x70\x61\x74\x68\x2c\x6f\x62\x6a\x65\x63\x74\x29\x3b\x69\x73\x44\x65\x65\x70\x7c\x7c\x28\x69\x73\x44\x65\x65\x70\x3d\x70\x61\x74\x68\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x74\x68\x7d\x29\x3b\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x72\x65\x73\x75\x6c\x74\x29\x3b\x69\x66\x28\x69\x73\x44\x65\x65\x70\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x62\x61\x73\x65\x43\x6c\x6f\x6e\x65\x28\x72\x65\x73\x75\x6c\x74\x2c\x43\x4c\x4f\x4e\x45\x5f\x44\x45\x45\x50\x5f\x46\x4c\x41\x47\x7c\x43\x4c\x4f\x4e\x45\x5f\x46\x4c\x41\x54\x5f\x46\x4c\x41\x47\x7c\x43\x4c\x4f\x4e\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x53\x5f\x46\x4c\x41\x47\x2c\x63\x75\x73\x74\x6f\x6d\x4f\x6d\x69\x74\x43\x6c\x6f\x6e\x65\x29\x7d\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x70\x61\x74\x68\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x2d\x2d\x29\x7b\x62\x61\x73\x65\x55\x6e\x73\x65\x74\x28\x72\x65\x73\x75\x6c\x74\x2c\x70\x61\x74\x68\x73\x5b\x6c\x65\x6e\x67\x74\x68\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6f\x6d\x69\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x74\x61\x63\x6b\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x31\x29\x2c\x61\x72\x72\x61\x79\x45\x61\x63\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x35\x29\x2c\x61\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x32\x29\x2c\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x36\x29\x2c\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x37\x29\x2c\x63\x6c\x6f\x6e\x65\x42\x75\x66\x66\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x30\x29\x2c\x63\x6f\x70\x79\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x31\x29\x2c\x63\x6f\x70\x79\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x32\x29\x2c\x63\x6f\x70\x79\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x33\x29\x2c\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x31\x29\x2c\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x32\x29\x2c\x67\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x32\x29\x2c\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x34\x29\x2c\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x42\x79\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x35\x29\x2c\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x30\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x2c\x69\x73\x42\x75\x66\x66\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x35\x29\x2c\x69\x73\x4d\x61\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x32\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x2c\x69\x73\x53\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x34\x29\x2c\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x29\x3b\x76\x61\x72\x20\x43\x4c\x4f\x4e\x45\x5f\x44\x45\x45\x50\x5f\x46\x4c\x41\x47\x3d\x31\x2c\x43\x4c\x4f\x4e\x45\x5f\x46\x4c\x41\x54\x5f\x46\x4c\x41\x47\x3d\x32\x2c\x43\x4c\x4f\x4e\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x53\x5f\x46\x4c\x41\x47\x3d\x34\x3b\x76\x61\x72\x20\x61\x72\x67\x73\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x5d\x22\x2c\x61\x72\x72\x61\x79\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x72\x61\x79\x5d\x22\x2c\x62\x6f\x6f\x6c\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x42\x6f\x6f\x6c\x65\x61\x6e\x5d\x22\x2c\x64\x61\x74\x65\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x44\x61\x74\x65\x5d\x22\x2c\x65\x72\x72\x6f\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x2c\x66\x75\x6e\x63\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x75\x6e\x63\x74\x69\x6f\x6e\x5d\x22\x2c\x67\x65\x6e\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x47\x65\x6e\x65\x72\x61\x74\x6f\x72\x46\x75\x6e\x63\x74\x69\x6f\x6e\x5d\x22\x2c\x6d\x61\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4d\x61\x70\x5d\x22\x2c\x6e\x75\x6d\x62\x65\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4e\x75\x6d\x62\x65\x72\x5d\x22\x2c\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4f\x62\x6a\x65\x63\x74\x5d\x22\x2c\x72\x65\x67\x65\x78\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x52\x65\x67\x45\x78\x70\x5d\x22\x2c\x73\x65\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x65\x74\x5d\x22\x2c\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x74\x72\x69\x6e\x67\x5d\x22\x2c\x73\x79\x6d\x62\x6f\x6c\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x79\x6d\x62\x6f\x6c\x5d\x22\x2c\x77\x65\x61\x6b\x4d\x61\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x57\x65\x61\x6b\x4d\x61\x70\x5d\x22\x3b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x5d\x22\x2c\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x44\x61\x74\x61\x56\x69\x65\x77\x5d\x22\x2c\x66\x6c\x6f\x61\x74\x33\x32\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x6c\x6f\x61\x74\x33\x32\x41\x72\x72\x61\x79\x5d\x22\x2c\x66\x6c\x6f\x61\x74\x36\x34\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x6c\x6f\x61\x74\x36\x34\x41\x72\x72\x61\x79\x5d\x22\x2c\x69\x6e\x74\x38\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x49\x6e\x74\x38\x41\x72\x72\x61\x79\x5d\x22\x2c\x69\x6e\x74\x31\x36\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x49\x6e\x74\x31\x36\x41\x72\x72\x61\x79\x5d\x22\x2c\x69\x6e\x74\x33\x32\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x49\x6e\x74\x33\x32\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x38\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x38\x43\x6c\x61\x6d\x70\x65\x64\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x38\x43\x6c\x61\x6d\x70\x65\x64\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x31\x36\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x31\x36\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x33\x32\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x33\x32\x41\x72\x72\x61\x79\x5d\x22\x3b\x76\x61\x72\x20\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x3d\x7b\x7d\x3b\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x61\x72\x67\x73\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x61\x72\x72\x61\x79\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x62\x6f\x6f\x6c\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x64\x61\x74\x65\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x66\x6c\x6f\x61\x74\x33\x32\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x66\x6c\x6f\x61\x74\x36\x34\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x69\x6e\x74\x38\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x69\x6e\x74\x31\x36\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x69\x6e\x74\x33\x32\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x6d\x61\x70\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x6e\x75\x6d\x62\x65\x72\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x72\x65\x67\x65\x78\x70\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x73\x65\x74\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x73\x79\x6d\x62\x6f\x6c\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x75\x69\x6e\x74\x38\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x75\x69\x6e\x74\x38\x43\x6c\x61\x6d\x70\x65\x64\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x75\x69\x6e\x74\x31\x36\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x75\x69\x6e\x74\x33\x32\x54\x61\x67\x5d\x3d\x74\x72\x75\x65\x3b\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x65\x72\x72\x6f\x72\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x66\x75\x6e\x63\x54\x61\x67\x5d\x3d\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x77\x65\x61\x6b\x4d\x61\x70\x54\x61\x67\x5d\x3d\x66\x61\x6c\x73\x65\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x43\x6c\x6f\x6e\x65\x28\x76\x61\x6c\x75\x65\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x6b\x65\x79\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x73\x74\x61\x63\x6b\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x2c\x69\x73\x44\x65\x65\x70\x3d\x62\x69\x74\x6d\x61\x73\x6b\x26\x43\x4c\x4f\x4e\x45\x5f\x44\x45\x45\x50\x5f\x46\x4c\x41\x47\x2c\x69\x73\x46\x6c\x61\x74\x3d\x62\x69\x74\x6d\x61\x73\x6b\x26\x43\x4c\x4f\x4e\x45\x5f\x46\x4c\x41\x54\x5f\x46\x4c\x41\x47\x2c\x69\x73\x46\x75\x6c\x6c\x3d\x62\x69\x74\x6d\x61\x73\x6b\x26\x43\x4c\x4f\x4e\x45\x5f\x53\x59\x4d\x42\x4f\x4c\x53\x5f\x46\x4c\x41\x47\x3b\x69\x66\x28\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x6f\x62\x6a\x65\x63\x74\x3f\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x28\x76\x61\x6c\x75\x65\x2c\x6b\x65\x79\x2c\x6f\x62\x6a\x65\x63\x74\x2c\x73\x74\x61\x63\x6b\x29\x3a\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x7d\x69\x66\x28\x72\x65\x73\x75\x6c\x74\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x76\x61\x72\x20\x69\x73\x41\x72\x72\x3d\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x69\x73\x41\x72\x72\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x21\x69\x73\x44\x65\x65\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x70\x79\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x2c\x72\x65\x73\x75\x6c\x74\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x76\x61\x72\x20\x74\x61\x67\x3d\x67\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x2c\x69\x73\x46\x75\x6e\x63\x3d\x74\x61\x67\x3d\x3d\x66\x75\x6e\x63\x54\x61\x67\x7c\x7c\x74\x61\x67\x3d\x3d\x67\x65\x6e\x54\x61\x67\x3b\x69\x66\x28\x69\x73\x42\x75\x66\x66\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6c\x6f\x6e\x65\x42\x75\x66\x66\x65\x72\x28\x76\x61\x6c\x75\x65\x2c\x69\x73\x44\x65\x65\x70\x29\x7d\x69\x66\x28\x74\x61\x67\x3d\x3d\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x7c\x7c\x74\x61\x67\x3d\x3d\x61\x72\x67\x73\x54\x61\x67\x7c\x7c\x69\x73\x46\x75\x6e\x63\x26\x26\x21\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x73\x75\x6c\x74\x3d\x69\x73\x46\x6c\x61\x74\x7c\x7c\x69\x73\x46\x75\x6e\x63\x3f\x7b\x7d\x3a\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x21\x69\x73\x44\x65\x65\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x46\x6c\x61\x74\x3f\x63\x6f\x70\x79\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x28\x76\x61\x6c\x75\x65\x2c\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x49\x6e\x28\x72\x65\x73\x75\x6c\x74\x2c\x76\x61\x6c\x75\x65\x29\x29\x3a\x63\x6f\x70\x79\x53\x79\x6d\x62\x6f\x6c\x73\x28\x76\x61\x6c\x75\x65\x2c\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x28\x72\x65\x73\x75\x6c\x74\x2c\x76\x61\x6c\x75\x65\x29\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x21\x63\x6c\x6f\x6e\x65\x61\x62\x6c\x65\x54\x61\x67\x73\x5b\x74\x61\x67\x5d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3f\x76\x61\x6c\x75\x65\x3a\x7b\x7d\x7d\x72\x65\x73\x75\x6c\x74\x3d\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x42\x79\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x2c\x74\x61\x67\x2c\x69\x73\x44\x65\x65\x70\x29\x7d\x7d\x73\x74\x61\x63\x6b\x7c\x7c\x28\x73\x74\x61\x63\x6b\x3d\x6e\x65\x77\x20\x53\x74\x61\x63\x6b\x29\x3b\x76\x61\x72\x20\x73\x74\x61\x63\x6b\x65\x64\x3d\x73\x74\x61\x63\x6b\x2e\x67\x65\x74\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x73\x74\x61\x63\x6b\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x61\x63\x6b\x65\x64\x7d\x73\x74\x61\x63\x6b\x2e\x73\x65\x74\x28\x76\x61\x6c\x75\x65\x2c\x72\x65\x73\x75\x6c\x74\x29\x3b\x69\x66\x28\x69\x73\x53\x65\x74\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x76\x61\x6c\x75\x65\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x75\x62\x56\x61\x6c\x75\x65\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x61\x64\x64\x28\x62\x61\x73\x65\x43\x6c\x6f\x6e\x65\x28\x73\x75\x62\x56\x61\x6c\x75\x65\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x73\x75\x62\x56\x61\x6c\x75\x65\x2c\x76\x61\x6c\x75\x65\x2c\x73\x74\x61\x63\x6b\x29\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x69\x66\x28\x69\x73\x4d\x61\x70\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x76\x61\x6c\x75\x65\x2e\x66\x6f\x72\x45\x61\x63\x68\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x75\x62\x56\x61\x6c\x75\x65\x2c\x6b\x65\x79\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x73\x65\x74\x28\x6b\x65\x79\x2c\x62\x61\x73\x65\x43\x6c\x6f\x6e\x65\x28\x73\x75\x62\x56\x61\x6c\x75\x65\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x2c\x73\x74\x61\x63\x6b\x29\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x76\x61\x72\x20\x6b\x65\x79\x73\x46\x75\x6e\x63\x3d\x69\x73\x46\x75\x6c\x6c\x3f\x69\x73\x46\x6c\x61\x74\x3f\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x49\x6e\x3a\x67\x65\x74\x41\x6c\x6c\x4b\x65\x79\x73\x3a\x69\x73\x46\x6c\x61\x74\x3f\x6b\x65\x79\x73\x49\x6e\x3a\x6b\x65\x79\x73\x3b\x76\x61\x72\x20\x70\x72\x6f\x70\x73\x3d\x69\x73\x41\x72\x72\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x6b\x65\x79\x73\x46\x75\x6e\x63\x28\x76\x61\x6c\x75\x65\x29\x3b\x61\x72\x72\x61\x79\x45\x61\x63\x68\x28\x70\x72\x6f\x70\x73\x7c\x7c\x76\x61\x6c\x75\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x75\x62\x56\x61\x6c\x75\x65\x2c\x6b\x65\x79\x29\x7b\x69\x66\x28\x70\x72\x6f\x70\x73\x29\x7b\x6b\x65\x79\x3d\x73\x75\x62\x56\x61\x6c\x75\x65\x3b\x73\x75\x62\x56\x61\x6c\x75\x65\x3d\x76\x61\x6c\x75\x65\x5b\x6b\x65\x79\x5d\x7d\x61\x73\x73\x69\x67\x6e\x56\x61\x6c\x75\x65\x28\x72\x65\x73\x75\x6c\x74\x2c\x6b\x65\x79\x2c\x62\x61\x73\x65\x43\x6c\x6f\x6e\x65\x28\x73\x75\x62\x56\x61\x6c\x75\x65\x2c\x62\x69\x74\x6d\x61\x73\x6b\x2c\x63\x75\x73\x74\x6f\x6d\x69\x7a\x65\x72\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x2c\x73\x74\x61\x63\x6b\x29\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x43\x6c\x6f\x6e\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x72\x72\x61\x79\x45\x61\x63\x68\x28\x61\x72\x72\x61\x79\x2c\x69\x74\x65\x72\x61\x74\x65\x65\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x69\x66\x28\x69\x74\x65\x72\x61\x74\x65\x65\x28\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x2c\x69\x6e\x64\x65\x78\x2c\x61\x72\x72\x61\x79\x29\x3d\x3d\x3d\x66\x61\x6c\x73\x65\x29\x7b\x62\x72\x65\x61\x6b\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x61\x79\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x72\x72\x61\x79\x45\x61\x63\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x38\x29\x2c\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x73\x6f\x75\x72\x63\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x26\x26\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x28\x73\x6f\x75\x72\x63\x65\x2c\x6b\x65\x79\x73\x28\x73\x6f\x75\x72\x63\x65\x29\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x38\x29\x2c\x6b\x65\x79\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x30\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x2c\x73\x6f\x75\x72\x63\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x26\x26\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x28\x73\x6f\x75\x72\x63\x65\x2c\x6b\x65\x79\x73\x49\x6e\x28\x73\x6f\x75\x72\x63\x65\x29\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x41\x73\x73\x69\x67\x6e\x49\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x2c\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x30\x29\x2c\x6e\x61\x74\x69\x76\x65\x4b\x65\x79\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x39\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x4b\x65\x79\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x61\x74\x69\x76\x65\x4b\x65\x79\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7d\x76\x61\x72\x20\x69\x73\x50\x72\x6f\x74\x6f\x3d\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x2c\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x6f\x62\x6a\x65\x63\x74\x29\x7b\x69\x66\x28\x21\x28\x6b\x65\x79\x3d\x3d\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x22\x26\x26\x28\x69\x73\x50\x72\x6f\x74\x6f\x7c\x7c\x21\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x6f\x62\x6a\x65\x63\x74\x2c\x6b\x65\x79\x29\x29\x29\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x4b\x65\x79\x73\x49\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x61\x74\x69\x76\x65\x4b\x65\x79\x73\x49\x6e\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x21\x3d\x6e\x75\x6c\x6c\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x6b\x65\x79\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6e\x61\x74\x69\x76\x65\x4b\x65\x79\x73\x49\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x29\x7b\x76\x61\x72\x20\x72\x6f\x6f\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x37\x29\x3b\x76\x61\x72\x20\x66\x72\x65\x65\x45\x78\x70\x6f\x72\x74\x73\x3d\x74\x79\x70\x65\x6f\x66\x20\x65\x78\x70\x6f\x72\x74\x73\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x65\x78\x70\x6f\x72\x74\x73\x26\x26\x21\x65\x78\x70\x6f\x72\x74\x73\x2e\x6e\x6f\x64\x65\x54\x79\x70\x65\x26\x26\x65\x78\x70\x6f\x72\x74\x73\x3b\x76\x61\x72\x20\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x3d\x66\x72\x65\x65\x45\x78\x70\x6f\x72\x74\x73\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x6d\x6f\x64\x75\x6c\x65\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x6d\x6f\x64\x75\x6c\x65\x26\x26\x21\x6d\x6f\x64\x75\x6c\x65\x2e\x6e\x6f\x64\x65\x54\x79\x70\x65\x26\x26\x6d\x6f\x64\x75\x6c\x65\x3b\x76\x61\x72\x20\x6d\x6f\x64\x75\x6c\x65\x45\x78\x70\x6f\x72\x74\x73\x3d\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x26\x26\x66\x72\x65\x65\x4d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x3d\x3d\x66\x72\x65\x65\x45\x78\x70\x6f\x72\x74\x73\x3b\x76\x61\x72\x20\x42\x75\x66\x66\x65\x72\x3d\x6d\x6f\x64\x75\x6c\x65\x45\x78\x70\x6f\x72\x74\x73\x3f\x72\x6f\x6f\x74\x2e\x42\x75\x66\x66\x65\x72\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x3d\x42\x75\x66\x66\x65\x72\x3f\x42\x75\x66\x66\x65\x72\x2e\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x6f\x6e\x65\x42\x75\x66\x66\x65\x72\x28\x62\x75\x66\x66\x65\x72\x2c\x69\x73\x44\x65\x65\x70\x29\x7b\x69\x66\x28\x69\x73\x44\x65\x65\x70\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x62\x75\x66\x66\x65\x72\x2e\x73\x6c\x69\x63\x65\x28\x29\x7d\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x62\x75\x66\x66\x65\x72\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x72\x65\x73\x75\x6c\x74\x3d\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x3f\x61\x6c\x6c\x6f\x63\x55\x6e\x73\x61\x66\x65\x28\x6c\x65\x6e\x67\x74\x68\x29\x3a\x6e\x65\x77\x20\x62\x75\x66\x66\x65\x72\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x62\x75\x66\x66\x65\x72\x2e\x63\x6f\x70\x79\x28\x72\x65\x73\x75\x6c\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6c\x6f\x6e\x65\x42\x75\x66\x66\x65\x72\x7d\x29\x2e\x63\x61\x6c\x6c\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x36\x29\x28\x6d\x6f\x64\x75\x6c\x65\x29\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x70\x79\x41\x72\x72\x61\x79\x28\x73\x6f\x75\x72\x63\x65\x2c\x61\x72\x72\x61\x79\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x73\x6f\x75\x72\x63\x65\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x61\x72\x72\x61\x79\x7c\x7c\x28\x61\x72\x72\x61\x79\x3d\x41\x72\x72\x61\x79\x28\x6c\x65\x6e\x67\x74\x68\x29\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x73\x6f\x75\x72\x63\x65\x5b\x69\x6e\x64\x65\x78\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x72\x61\x79\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6f\x70\x79\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x38\x29\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x33\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x70\x79\x53\x79\x6d\x62\x6f\x6c\x73\x28\x73\x6f\x75\x72\x63\x65\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x28\x73\x6f\x75\x72\x63\x65\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x28\x73\x6f\x75\x72\x63\x65\x29\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6f\x70\x79\x53\x79\x6d\x62\x6f\x6c\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x38\x29\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x70\x79\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x28\x73\x6f\x75\x72\x63\x65\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x63\x6f\x70\x79\x4f\x62\x6a\x65\x63\x74\x28\x73\x6f\x75\x72\x63\x65\x2c\x67\x65\x74\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x28\x73\x6f\x75\x72\x63\x65\x29\x2c\x6f\x62\x6a\x65\x63\x74\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6f\x70\x79\x53\x79\x6d\x62\x6f\x6c\x73\x49\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x28\x61\x72\x72\x61\x79\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x61\x72\x72\x61\x79\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x69\x66\x28\x6c\x65\x6e\x67\x74\x68\x26\x26\x74\x79\x70\x65\x6f\x66\x20\x61\x72\x72\x61\x79\x5b\x30\x5d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x26\x26\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x61\x72\x72\x61\x79\x2c\x22\x69\x6e\x64\x65\x78\x22\x29\x29\x7b\x72\x65\x73\x75\x6c\x74\x2e\x69\x6e\x64\x65\x78\x3d\x61\x72\x72\x61\x79\x2e\x69\x6e\x64\x65\x78\x3b\x72\x65\x73\x75\x6c\x74\x2e\x69\x6e\x70\x75\x74\x3d\x61\x72\x72\x61\x79\x2e\x69\x6e\x70\x75\x74\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x34\x29\x2c\x63\x6c\x6f\x6e\x65\x44\x61\x74\x61\x56\x69\x65\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x36\x29\x2c\x63\x6c\x6f\x6e\x65\x52\x65\x67\x45\x78\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x37\x29\x2c\x63\x6c\x6f\x6e\x65\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x38\x29\x2c\x63\x6c\x6f\x6e\x65\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x35\x39\x29\x3b\x76\x61\x72\x20\x62\x6f\x6f\x6c\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x42\x6f\x6f\x6c\x65\x61\x6e\x5d\x22\x2c\x64\x61\x74\x65\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x44\x61\x74\x65\x5d\x22\x2c\x6d\x61\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4d\x61\x70\x5d\x22\x2c\x6e\x75\x6d\x62\x65\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4e\x75\x6d\x62\x65\x72\x5d\x22\x2c\x72\x65\x67\x65\x78\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x52\x65\x67\x45\x78\x70\x5d\x22\x2c\x73\x65\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x65\x74\x5d\x22\x2c\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x74\x72\x69\x6e\x67\x5d\x22\x2c\x73\x79\x6d\x62\x6f\x6c\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x79\x6d\x62\x6f\x6c\x5d\x22\x3b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x5d\x22\x2c\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x44\x61\x74\x61\x56\x69\x65\x77\x5d\x22\x2c\x66\x6c\x6f\x61\x74\x33\x32\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x6c\x6f\x61\x74\x33\x32\x41\x72\x72\x61\x79\x5d\x22\x2c\x66\x6c\x6f\x61\x74\x36\x34\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x46\x6c\x6f\x61\x74\x36\x34\x41\x72\x72\x61\x79\x5d\x22\x2c\x69\x6e\x74\x38\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x49\x6e\x74\x38\x41\x72\x72\x61\x79\x5d\x22\x2c\x69\x6e\x74\x31\x36\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x49\x6e\x74\x31\x36\x41\x72\x72\x61\x79\x5d\x22\x2c\x69\x6e\x74\x33\x32\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x49\x6e\x74\x33\x32\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x38\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x38\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x38\x43\x6c\x61\x6d\x70\x65\x64\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x38\x43\x6c\x61\x6d\x70\x65\x64\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x31\x36\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x31\x36\x41\x72\x72\x61\x79\x5d\x22\x2c\x75\x69\x6e\x74\x33\x32\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x55\x69\x6e\x74\x33\x32\x41\x72\x72\x61\x79\x5d\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x42\x79\x54\x61\x67\x28\x6f\x62\x6a\x65\x63\x74\x2c\x74\x61\x67\x2c\x69\x73\x44\x65\x65\x70\x29\x7b\x76\x61\x72\x20\x43\x74\x6f\x72\x3d\x6f\x62\x6a\x65\x63\x74\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3b\x73\x77\x69\x74\x63\x68\x28\x74\x61\x67\x29\x7b\x63\x61\x73\x65\x20\x61\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x63\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x63\x61\x73\x65\x20\x62\x6f\x6f\x6c\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x64\x61\x74\x65\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x74\x6f\x72\x28\x2b\x6f\x62\x6a\x65\x63\x74\x29\x3b\x63\x61\x73\x65\x20\x64\x61\x74\x61\x56\x69\x65\x77\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x63\x6c\x6f\x6e\x65\x44\x61\x74\x61\x56\x69\x65\x77\x28\x6f\x62\x6a\x65\x63\x74\x2c\x69\x73\x44\x65\x65\x70\x29\x3b\x63\x61\x73\x65\x20\x66\x6c\x6f\x61\x74\x33\x32\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x66\x6c\x6f\x61\x74\x36\x34\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x69\x6e\x74\x38\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x69\x6e\x74\x31\x36\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x69\x6e\x74\x33\x32\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x75\x69\x6e\x74\x38\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x75\x69\x6e\x74\x38\x43\x6c\x61\x6d\x70\x65\x64\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x75\x69\x6e\x74\x31\x36\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x75\x69\x6e\x74\x33\x32\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x63\x6c\x6f\x6e\x65\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x28\x6f\x62\x6a\x65\x63\x74\x2c\x69\x73\x44\x65\x65\x70\x29\x3b\x63\x61\x73\x65\x20\x6d\x61\x70\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x74\x6f\x72\x3b\x63\x61\x73\x65\x20\x6e\x75\x6d\x62\x65\x72\x54\x61\x67\x3a\x63\x61\x73\x65\x20\x73\x74\x72\x69\x6e\x67\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x74\x6f\x72\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x63\x61\x73\x65\x20\x72\x65\x67\x65\x78\x70\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x63\x6c\x6f\x6e\x65\x52\x65\x67\x45\x78\x70\x28\x6f\x62\x6a\x65\x63\x74\x29\x3b\x63\x61\x73\x65\x20\x73\x65\x74\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x43\x74\x6f\x72\x3b\x63\x61\x73\x65\x20\x73\x79\x6d\x62\x6f\x6c\x54\x61\x67\x3a\x72\x65\x74\x75\x72\x6e\x20\x63\x6c\x6f\x6e\x65\x53\x79\x6d\x62\x6f\x6c\x28\x6f\x62\x6a\x65\x63\x74\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x42\x79\x54\x61\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x34\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x6f\x6e\x65\x44\x61\x74\x61\x56\x69\x65\x77\x28\x64\x61\x74\x61\x56\x69\x65\x77\x2c\x69\x73\x44\x65\x65\x70\x29\x7b\x76\x61\x72\x20\x62\x75\x66\x66\x65\x72\x3d\x69\x73\x44\x65\x65\x70\x3f\x63\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x28\x64\x61\x74\x61\x56\x69\x65\x77\x2e\x62\x75\x66\x66\x65\x72\x29\x3a\x64\x61\x74\x61\x56\x69\x65\x77\x2e\x62\x75\x66\x66\x65\x72\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x64\x61\x74\x61\x56\x69\x65\x77\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x62\x75\x66\x66\x65\x72\x2c\x64\x61\x74\x61\x56\x69\x65\x77\x2e\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x64\x61\x74\x61\x56\x69\x65\x77\x2e\x62\x79\x74\x65\x4c\x65\x6e\x67\x74\x68\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6c\x6f\x6e\x65\x44\x61\x74\x61\x56\x69\x65\x77\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x72\x65\x46\x6c\x61\x67\x73\x3d\x2f\x5c\x77\x2a\x24\x2f\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x6f\x6e\x65\x52\x65\x67\x45\x78\x70\x28\x72\x65\x67\x65\x78\x70\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x72\x65\x67\x65\x78\x70\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x72\x65\x67\x65\x78\x70\x2e\x73\x6f\x75\x72\x63\x65\x2c\x72\x65\x46\x6c\x61\x67\x73\x2e\x65\x78\x65\x63\x28\x72\x65\x67\x65\x78\x70\x29\x29\x3b\x72\x65\x73\x75\x6c\x74\x2e\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x3d\x72\x65\x67\x65\x78\x70\x2e\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6c\x6f\x6e\x65\x52\x65\x67\x45\x78\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x29\x3b\x76\x61\x72\x20\x73\x79\x6d\x62\x6f\x6c\x50\x72\x6f\x74\x6f\x3d\x53\x79\x6d\x62\x6f\x6c\x3f\x53\x79\x6d\x62\x6f\x6c\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x73\x79\x6d\x62\x6f\x6c\x56\x61\x6c\x75\x65\x4f\x66\x3d\x73\x79\x6d\x62\x6f\x6c\x50\x72\x6f\x74\x6f\x3f\x73\x79\x6d\x62\x6f\x6c\x50\x72\x6f\x74\x6f\x2e\x76\x61\x6c\x75\x65\x4f\x66\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x6f\x6e\x65\x53\x79\x6d\x62\x6f\x6c\x28\x73\x79\x6d\x62\x6f\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x79\x6d\x62\x6f\x6c\x56\x61\x6c\x75\x65\x4f\x66\x3f\x4f\x62\x6a\x65\x63\x74\x28\x73\x79\x6d\x62\x6f\x6c\x56\x61\x6c\x75\x65\x4f\x66\x2e\x63\x61\x6c\x6c\x28\x73\x79\x6d\x62\x6f\x6c\x29\x29\x3a\x7b\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6c\x6f\x6e\x65\x53\x79\x6d\x62\x6f\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x34\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x6f\x6e\x65\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x28\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x2c\x69\x73\x44\x65\x65\x70\x29\x7b\x76\x61\x72\x20\x62\x75\x66\x66\x65\x72\x3d\x69\x73\x44\x65\x65\x70\x3f\x63\x6c\x6f\x6e\x65\x41\x72\x72\x61\x79\x42\x75\x66\x66\x65\x72\x28\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x2e\x62\x75\x66\x66\x65\x72\x29\x3a\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x2e\x62\x75\x66\x66\x65\x72\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x62\x75\x66\x66\x65\x72\x2c\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x2e\x62\x79\x74\x65\x4f\x66\x66\x73\x65\x74\x2c\x74\x79\x70\x65\x64\x41\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6c\x6f\x6e\x65\x54\x79\x70\x65\x64\x41\x72\x72\x61\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x43\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x31\x29\x2c\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x33\x29\x2c\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x30\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x4f\x62\x6a\x65\x63\x74\x28\x6f\x62\x6a\x65\x63\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x6f\x62\x6a\x65\x63\x74\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x21\x69\x73\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x3f\x62\x61\x73\x65\x43\x72\x65\x61\x74\x65\x28\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x28\x6f\x62\x6a\x65\x63\x74\x29\x29\x3a\x7b\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x6e\x69\x74\x43\x6c\x6f\x6e\x65\x4f\x62\x6a\x65\x63\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x31\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x43\x72\x65\x61\x74\x65\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x63\x72\x65\x61\x74\x65\x3b\x76\x61\x72\x20\x62\x61\x73\x65\x43\x72\x65\x61\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x62\x6a\x65\x63\x74\x28\x29\x7b\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x74\x6f\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x70\x72\x6f\x74\x6f\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x7d\x7d\x69\x66\x28\x6f\x62\x6a\x65\x63\x74\x43\x72\x65\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x43\x72\x65\x61\x74\x65\x28\x70\x72\x6f\x74\x6f\x29\x7d\x6f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x70\x72\x6f\x74\x6f\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x6e\x65\x77\x20\x6f\x62\x6a\x65\x63\x74\x3b\x6f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x28\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x43\x72\x65\x61\x74\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x49\x73\x4d\x61\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x33\x29\x2c\x62\x61\x73\x65\x55\x6e\x61\x72\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x38\x29\x2c\x6e\x6f\x64\x65\x55\x74\x69\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x39\x29\x3b\x76\x61\x72\x20\x6e\x6f\x64\x65\x49\x73\x4d\x61\x70\x3d\x6e\x6f\x64\x65\x55\x74\x69\x6c\x26\x26\x6e\x6f\x64\x65\x55\x74\x69\x6c\x2e\x69\x73\x4d\x61\x70\x3b\x76\x61\x72\x20\x69\x73\x4d\x61\x70\x3d\x6e\x6f\x64\x65\x49\x73\x4d\x61\x70\x3f\x62\x61\x73\x65\x55\x6e\x61\x72\x79\x28\x6e\x6f\x64\x65\x49\x73\x4d\x61\x70\x29\x3a\x62\x61\x73\x65\x49\x73\x4d\x61\x70\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x4d\x61\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x32\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x29\x3b\x76\x61\x72\x20\x6d\x61\x70\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4d\x61\x70\x5d\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x49\x73\x4d\x61\x70\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x67\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x3d\x3d\x6d\x61\x70\x54\x61\x67\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x49\x73\x4d\x61\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x49\x73\x53\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x35\x29\x2c\x62\x61\x73\x65\x55\x6e\x61\x72\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x38\x29\x2c\x6e\x6f\x64\x65\x55\x74\x69\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x39\x29\x3b\x76\x61\x72\x20\x6e\x6f\x64\x65\x49\x73\x53\x65\x74\x3d\x6e\x6f\x64\x65\x55\x74\x69\x6c\x26\x26\x6e\x6f\x64\x65\x55\x74\x69\x6c\x2e\x69\x73\x53\x65\x74\x3b\x76\x61\x72\x20\x69\x73\x53\x65\x74\x3d\x6e\x6f\x64\x65\x49\x73\x53\x65\x74\x3f\x62\x61\x73\x65\x55\x6e\x61\x72\x79\x28\x6e\x6f\x64\x65\x49\x73\x53\x65\x74\x29\x3a\x62\x61\x73\x65\x49\x73\x53\x65\x74\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x53\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x32\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x53\x65\x74\x5d\x22\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x49\x73\x53\x65\x74\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x26\x26\x67\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x3d\x3d\x73\x65\x74\x54\x61\x67\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x49\x73\x53\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x61\x73\x74\x50\x61\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x33\x29\x2c\x6c\x61\x73\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x37\x29\x2c\x70\x61\x72\x65\x6e\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x38\x29\x2c\x74\x6f\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x36\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x55\x6e\x73\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x29\x7b\x70\x61\x74\x68\x3d\x63\x61\x73\x74\x50\x61\x74\x68\x28\x70\x61\x74\x68\x2c\x6f\x62\x6a\x65\x63\x74\x29\x3b\x6f\x62\x6a\x65\x63\x74\x3d\x70\x61\x72\x65\x6e\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x65\x63\x74\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x64\x65\x6c\x65\x74\x65\x20\x6f\x62\x6a\x65\x63\x74\x5b\x74\x6f\x4b\x65\x79\x28\x6c\x61\x73\x74\x28\x70\x61\x74\x68\x29\x29\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x55\x6e\x73\x65\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6c\x61\x73\x74\x28\x61\x72\x72\x61\x79\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x6e\x67\x74\x68\x3f\x61\x72\x72\x61\x79\x5b\x6c\x65\x6e\x67\x74\x68\x2d\x31\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6c\x61\x73\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x32\x29\x2c\x62\x61\x73\x65\x53\x6c\x69\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x39\x31\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x70\x61\x72\x65\x6e\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x70\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x74\x68\x2e\x6c\x65\x6e\x67\x74\x68\x3c\x32\x3f\x6f\x62\x6a\x65\x63\x74\x3a\x62\x61\x73\x65\x47\x65\x74\x28\x6f\x62\x6a\x65\x63\x74\x2c\x62\x61\x73\x65\x53\x6c\x69\x63\x65\x28\x70\x61\x74\x68\x2c\x30\x2c\x2d\x31\x29\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x70\x61\x72\x65\x6e\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x50\x6c\x61\x69\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x30\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x75\x73\x74\x6f\x6d\x4f\x6d\x69\x74\x43\x6c\x6f\x6e\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x50\x6c\x61\x69\x6e\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x76\x61\x6c\x75\x65\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x75\x73\x74\x6f\x6d\x4f\x6d\x69\x74\x43\x6c\x6f\x6e\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x36\x29\x2c\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x33\x29\x2c\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x35\x29\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x4f\x62\x6a\x65\x63\x74\x5d\x22\x3b\x76\x61\x72\x20\x66\x75\x6e\x63\x50\x72\x6f\x74\x6f\x3d\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x3d\x4f\x62\x6a\x65\x63\x74\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x66\x75\x6e\x63\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x66\x75\x6e\x63\x50\x72\x6f\x74\x6f\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x3b\x76\x61\x72\x20\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x6f\x62\x6a\x65\x63\x74\x50\x72\x6f\x74\x6f\x2e\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x3b\x76\x61\x72\x20\x6f\x62\x6a\x65\x63\x74\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x3d\x66\x75\x6e\x63\x54\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x4f\x62\x6a\x65\x63\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x50\x6c\x61\x69\x6e\x4f\x62\x6a\x65\x63\x74\x28\x76\x61\x6c\x75\x65\x29\x7b\x69\x66\x28\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x4c\x69\x6b\x65\x28\x76\x61\x6c\x75\x65\x29\x7c\x7c\x62\x61\x73\x65\x47\x65\x74\x54\x61\x67\x28\x76\x61\x6c\x75\x65\x29\x21\x3d\x6f\x62\x6a\x65\x63\x74\x54\x61\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x76\x61\x72\x20\x70\x72\x6f\x74\x6f\x3d\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x28\x76\x61\x6c\x75\x65\x29\x3b\x69\x66\x28\x70\x72\x6f\x74\x6f\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x7d\x76\x61\x72\x20\x43\x74\x6f\x72\x3d\x68\x61\x73\x4f\x77\x6e\x50\x72\x6f\x70\x65\x72\x74\x79\x2e\x63\x61\x6c\x6c\x28\x70\x72\x6f\x74\x6f\x2c\x22\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x22\x29\x26\x26\x70\x72\x6f\x74\x6f\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3b\x72\x65\x74\x75\x72\x6e\x20\x74\x79\x70\x65\x6f\x66\x20\x43\x74\x6f\x72\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x43\x74\x6f\x72\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x43\x74\x6f\x72\x26\x26\x66\x75\x6e\x63\x54\x6f\x53\x74\x72\x69\x6e\x67\x2e\x63\x61\x6c\x6c\x28\x43\x74\x6f\x72\x29\x3d\x3d\x6f\x62\x6a\x65\x63\x74\x43\x74\x6f\x72\x53\x74\x72\x69\x6e\x67\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x50\x6c\x61\x69\x6e\x4f\x62\x6a\x65\x63\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x66\x6c\x61\x74\x74\x65\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x32\x29\x2c\x6f\x76\x65\x72\x52\x65\x73\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x35\x29\x2c\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x6c\x61\x74\x52\x65\x73\x74\x28\x66\x75\x6e\x63\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x28\x6f\x76\x65\x72\x52\x65\x73\x74\x28\x66\x75\x6e\x63\x2c\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x66\x6c\x61\x74\x74\x65\x6e\x29\x2c\x66\x75\x6e\x63\x2b\x22\x22\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x6c\x61\x74\x52\x65\x73\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x46\x6c\x61\x74\x74\x65\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x33\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x6c\x61\x74\x74\x65\x6e\x28\x61\x72\x72\x61\x79\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x3d\x3d\x6e\x75\x6c\x6c\x3f\x30\x3a\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x20\x6c\x65\x6e\x67\x74\x68\x3f\x62\x61\x73\x65\x46\x6c\x61\x74\x74\x65\x6e\x28\x61\x72\x72\x61\x79\x2c\x31\x29\x3a\x5b\x5d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x6c\x61\x74\x74\x65\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x72\x72\x61\x79\x50\x75\x73\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x32\x29\x2c\x69\x73\x46\x6c\x61\x74\x74\x65\x6e\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x34\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x62\x61\x73\x65\x46\x6c\x61\x74\x74\x65\x6e\x28\x61\x72\x72\x61\x79\x2c\x64\x65\x70\x74\x68\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x69\x73\x53\x74\x72\x69\x63\x74\x2c\x72\x65\x73\x75\x6c\x74\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x72\x61\x79\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x70\x72\x65\x64\x69\x63\x61\x74\x65\x7c\x7c\x28\x70\x72\x65\x64\x69\x63\x61\x74\x65\x3d\x69\x73\x46\x6c\x61\x74\x74\x65\x6e\x61\x62\x6c\x65\x29\x3b\x72\x65\x73\x75\x6c\x74\x7c\x7c\x28\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x69\x66\x28\x64\x65\x70\x74\x68\x3e\x30\x26\x26\x70\x72\x65\x64\x69\x63\x61\x74\x65\x28\x76\x61\x6c\x75\x65\x29\x29\x7b\x69\x66\x28\x64\x65\x70\x74\x68\x3e\x31\x29\x7b\x62\x61\x73\x65\x46\x6c\x61\x74\x74\x65\x6e\x28\x76\x61\x6c\x75\x65\x2c\x64\x65\x70\x74\x68\x2d\x31\x2c\x70\x72\x65\x64\x69\x63\x61\x74\x65\x2c\x69\x73\x53\x74\x72\x69\x63\x74\x2c\x72\x65\x73\x75\x6c\x74\x29\x7d\x65\x6c\x73\x65\x7b\x61\x72\x72\x61\x79\x50\x75\x73\x68\x28\x72\x65\x73\x75\x6c\x74\x2c\x76\x61\x6c\x75\x65\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x21\x69\x73\x53\x74\x72\x69\x63\x74\x29\x7b\x72\x65\x73\x75\x6c\x74\x5b\x72\x65\x73\x75\x6c\x74\x2e\x6c\x65\x6e\x67\x74\x68\x5d\x3d\x76\x61\x6c\x75\x65\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x46\x6c\x61\x74\x74\x65\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x53\x79\x6d\x62\x6f\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x34\x29\x2c\x69\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x34\x29\x2c\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x31\x29\x3b\x76\x61\x72\x20\x73\x70\x72\x65\x61\x64\x61\x62\x6c\x65\x53\x79\x6d\x62\x6f\x6c\x3d\x53\x79\x6d\x62\x6f\x6c\x3f\x53\x79\x6d\x62\x6f\x6c\x2e\x69\x73\x43\x6f\x6e\x63\x61\x74\x53\x70\x72\x65\x61\x64\x61\x62\x6c\x65\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x73\x46\x6c\x61\x74\x74\x65\x6e\x61\x62\x6c\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x41\x72\x72\x61\x79\x28\x76\x61\x6c\x75\x65\x29\x7c\x7c\x69\x73\x41\x72\x67\x75\x6d\x65\x6e\x74\x73\x28\x76\x61\x6c\x75\x65\x29\x7c\x7c\x21\x21\x28\x73\x70\x72\x65\x61\x64\x61\x62\x6c\x65\x53\x79\x6d\x62\x6f\x6c\x26\x26\x76\x61\x6c\x75\x65\x26\x26\x76\x61\x6c\x75\x65\x5b\x73\x70\x72\x65\x61\x64\x61\x62\x6c\x65\x53\x79\x6d\x62\x6f\x6c\x5d\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x69\x73\x46\x6c\x61\x74\x74\x65\x6e\x61\x62\x6c\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x61\x70\x70\x6c\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x36\x29\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x4d\x61\x78\x3d\x4d\x61\x74\x68\x2e\x6d\x61\x78\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x76\x65\x72\x52\x65\x73\x74\x28\x66\x75\x6e\x63\x2c\x73\x74\x61\x72\x74\x2c\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x29\x7b\x73\x74\x61\x72\x74\x3d\x6e\x61\x74\x69\x76\x65\x4d\x61\x78\x28\x73\x74\x61\x72\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x66\x75\x6e\x63\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x31\x3a\x73\x74\x61\x72\x74\x2c\x30\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x61\x72\x67\x73\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2c\x69\x6e\x64\x65\x78\x3d\x2d\x31\x2c\x6c\x65\x6e\x67\x74\x68\x3d\x6e\x61\x74\x69\x76\x65\x4d\x61\x78\x28\x61\x72\x67\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2d\x73\x74\x61\x72\x74\x2c\x30\x29\x2c\x61\x72\x72\x61\x79\x3d\x41\x72\x72\x61\x79\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x61\x72\x72\x61\x79\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x61\x72\x67\x73\x5b\x73\x74\x61\x72\x74\x2b\x69\x6e\x64\x65\x78\x5d\x7d\x69\x6e\x64\x65\x78\x3d\x2d\x31\x3b\x76\x61\x72\x20\x6f\x74\x68\x65\x72\x41\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x73\x74\x61\x72\x74\x2b\x31\x29\x3b\x77\x68\x69\x6c\x65\x28\x2b\x2b\x69\x6e\x64\x65\x78\x3c\x73\x74\x61\x72\x74\x29\x7b\x6f\x74\x68\x65\x72\x41\x72\x67\x73\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x61\x72\x67\x73\x5b\x69\x6e\x64\x65\x78\x5d\x7d\x6f\x74\x68\x65\x72\x41\x72\x67\x73\x5b\x73\x74\x61\x72\x74\x5d\x3d\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x28\x61\x72\x72\x61\x79\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x70\x70\x6c\x79\x28\x66\x75\x6e\x63\x2c\x74\x68\x69\x73\x2c\x6f\x74\x68\x65\x72\x41\x72\x67\x73\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x6f\x76\x65\x72\x52\x65\x73\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x70\x70\x6c\x79\x28\x66\x75\x6e\x63\x2c\x74\x68\x69\x73\x41\x72\x67\x2c\x61\x72\x67\x73\x29\x7b\x73\x77\x69\x74\x63\x68\x28\x61\x72\x67\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x63\x61\x73\x65\x20\x30\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x41\x72\x67\x29\x3b\x63\x61\x73\x65\x20\x31\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x41\x72\x67\x2c\x61\x72\x67\x73\x5b\x30\x5d\x29\x3b\x63\x61\x73\x65\x20\x32\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x41\x72\x67\x2c\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x29\x3b\x63\x61\x73\x65\x20\x33\x3a\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x41\x72\x67\x2c\x61\x72\x67\x73\x5b\x30\x5d\x2c\x61\x72\x67\x73\x5b\x31\x5d\x2c\x61\x72\x67\x73\x5b\x32\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x41\x72\x67\x2c\x61\x72\x67\x73\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x61\x70\x70\x6c\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x62\x61\x73\x65\x53\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x38\x29\x2c\x73\x68\x6f\x72\x74\x4f\x75\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x38\x30\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x73\x68\x6f\x72\x74\x4f\x75\x74\x28\x62\x61\x73\x65\x53\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x73\x74\x61\x6e\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x39\x29\x2c\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x36\x29\x2c\x69\x64\x65\x6e\x74\x69\x74\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x39\x29\x3b\x76\x61\x72\x20\x62\x61\x73\x65\x53\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x3d\x21\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x3f\x69\x64\x65\x6e\x74\x69\x74\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x66\x75\x6e\x63\x2c\x73\x74\x72\x69\x6e\x67\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x66\x75\x6e\x63\x2c\x22\x74\x6f\x53\x74\x72\x69\x6e\x67\x22\x2c\x7b\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x66\x61\x6c\x73\x65\x2c\x76\x61\x6c\x75\x65\x3a\x63\x6f\x6e\x73\x74\x61\x6e\x74\x28\x73\x74\x72\x69\x6e\x67\x29\x2c\x77\x72\x69\x74\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x7d\x29\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x62\x61\x73\x65\x53\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6e\x73\x74\x61\x6e\x74\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x63\x6f\x6e\x73\x74\x61\x6e\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x76\x61\x72\x20\x48\x4f\x54\x5f\x43\x4f\x55\x4e\x54\x3d\x38\x30\x30\x2c\x48\x4f\x54\x5f\x53\x50\x41\x4e\x3d\x31\x36\x3b\x76\x61\x72\x20\x6e\x61\x74\x69\x76\x65\x4e\x6f\x77\x3d\x44\x61\x74\x65\x2e\x6e\x6f\x77\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x68\x6f\x72\x74\x4f\x75\x74\x28\x66\x75\x6e\x63\x29\x7b\x76\x61\x72\x20\x63\x6f\x75\x6e\x74\x3d\x30\x2c\x6c\x61\x73\x74\x43\x61\x6c\x6c\x65\x64\x3d\x30\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x73\x74\x61\x6d\x70\x3d\x6e\x61\x74\x69\x76\x65\x4e\x6f\x77\x28\x29\x2c\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x3d\x48\x4f\x54\x5f\x53\x50\x41\x4e\x2d\x28\x73\x74\x61\x6d\x70\x2d\x6c\x61\x73\x74\x43\x61\x6c\x6c\x65\x64\x29\x3b\x6c\x61\x73\x74\x43\x61\x6c\x6c\x65\x64\x3d\x73\x74\x61\x6d\x70\x3b\x69\x66\x28\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67\x3e\x30\x29\x7b\x69\x66\x28\x2b\x2b\x63\x6f\x75\x6e\x74\x3e\x3d\x48\x4f\x54\x5f\x43\x4f\x55\x4e\x54\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x7d\x7d\x65\x6c\x73\x65\x7b\x63\x6f\x75\x6e\x74\x3d\x30\x7d\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x7d\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x73\x68\x6f\x72\x74\x4f\x75\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x27\x2d\x2d\x2d\x5c\x6e\x75\x72\x6c\x3a\x20\x22\x68\x74\x74\x70\x73\x3a\x2f\x2f\x70\x65\x74\x73\x74\x6f\x72\x65\x2e\x73\x77\x61\x67\x67\x65\x72\x2e\x69\x6f\x2f\x76\x32\x2f\x73\x77\x61\x67\x67\x65\x72\x2e\x6a\x73\x6f\x6e\x22\x5c\x6e\x64\x6f\x6d\x5f\x69\x64\x3a\x20\x22\x23\x73\x77\x61\x67\x67\x65\x72\x2d\x75\x69\x22\x5c\x6e\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3a\x20\x22\x68\x74\x74\x70\x73\x3a\x2f\x2f\x6f\x6e\x6c\x69\x6e\x65\x2e\x73\x77\x61\x67\x67\x65\x72\x2e\x69\x6f\x2f\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x22\x27\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x7a\x65\x6e\x73\x63\x72\x6f\x6c\x6c\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x34\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x6f\x70\x49\x64\x3d\x5f\x73\x77\x61\x67\x67\x65\x72\x43\x6c\x69\x65\x6e\x74\x2e\x68\x65\x6c\x70\x65\x72\x73\x2e\x6f\x70\x49\x64\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x74\x61\x67\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x29\x3b\x69\x66\x28\x21\x69\x73\x53\x68\x6f\x77\x6e\x26\x26\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x5f\x74\x68\x69\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x29\x7d\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x2c\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x5d\x2c\x21\x69\x73\x53\x68\x6f\x77\x6e\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x3a\x21\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x7d\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x3a\x21\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x7d\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x56\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x45\x78\x65\x63\x75\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x65\x78\x65\x63\x75\x74\x65\x49\x6e\x50\x72\x6f\x67\x72\x65\x73\x73\x3a\x74\x72\x75\x65\x7d\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x3b\x69\x66\x28\x73\x70\x65\x63\x50\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x74\x6f\x4a\x53\x28\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x34\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x34\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x34\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x34\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x34\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x3b\x69\x66\x28\x73\x70\x65\x63\x50\x61\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x74\x6f\x4a\x53\x28\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x65\x78\x65\x63\x75\x74\x65\x49\x6e\x50\x72\x6f\x67\x72\x65\x73\x73\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x6d\x61\x70\x53\x74\x61\x74\x65\x54\x6f\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6d\x61\x70\x53\x74\x61\x74\x65\x54\x6f\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x53\x74\x61\x74\x65\x2c\x70\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x6f\x70\x3d\x70\x72\x6f\x70\x73\x2e\x6f\x70\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x2c\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x2c\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x2c\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x53\x75\x62\x6d\x69\x74\x4d\x65\x74\x68\x6f\x64\x73\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x53\x75\x62\x6d\x69\x74\x4d\x65\x74\x68\x6f\x64\x73\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x28\x29\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x6f\x70\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x22\x5f\x5f\x6f\x72\x69\x67\x69\x6e\x61\x6c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x22\x5d\x29\x7c\x7c\x6f\x70\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x22\x5d\x29\x7c\x7c\x6f\x70\x49\x64\x28\x6f\x70\x2e\x67\x65\x74\x28\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x29\x2c\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x29\x7c\x7c\x6f\x70\x2e\x67\x65\x74\x28\x22\x69\x64\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x3d\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x2c\x70\x72\x6f\x70\x73\x2e\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x5d\x3b\x76\x61\x72\x20\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x3d\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x26\x26\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x21\x3d\x3d\x22\x66\x61\x6c\x73\x65\x22\x3b\x76\x61\x72\x20\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3d\x73\x75\x70\x70\x6f\x72\x74\x65\x64\x53\x75\x62\x6d\x69\x74\x4d\x65\x74\x68\x6f\x64\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x29\x3e\x3d\x30\x26\x26\x28\x74\x79\x70\x65\x6f\x66\x20\x70\x72\x6f\x70\x73\x2e\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x46\x6f\x72\x28\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x29\x3a\x70\x72\x6f\x70\x73\x2e\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x29\x3b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x79\x3d\x6f\x70\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x22\x73\x65\x63\x75\x72\x69\x74\x79\x22\x5d\x29\x7c\x7c\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x3a\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x2c\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3a\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x2c\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3a\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3a\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3a\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x2c\x73\x65\x63\x75\x72\x69\x74\x79\x3a\x73\x65\x63\x75\x72\x69\x74\x79\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x28\x73\x65\x63\x75\x72\x69\x74\x79\x29\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3a\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x3d\x3d\x3d\x22\x66\x75\x6c\x6c\x22\x29\x2c\x6a\x75\x6d\x70\x54\x6f\x4b\x65\x79\x3a\x22\x70\x61\x74\x68\x73\x2e\x22\x2b\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2b\x22\x2e\x22\x2b\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3a\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x6f\x72\x28\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x29\x2c\x72\x65\x71\x75\x65\x73\x74\x3a\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x28\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x29\x3b\x69\x66\x28\x69\x73\x53\x68\x6f\x77\x6e\x26\x26\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x74\x68\x69\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x29\x3b\x69\x66\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x21\x3d\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x29\x7b\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x65\x78\x65\x63\x75\x74\x65\x49\x6e\x50\x72\x6f\x67\x72\x65\x73\x73\x3a\x66\x61\x6c\x73\x65\x7d\x29\x7d\x69\x66\x28\x69\x73\x53\x68\x6f\x77\x6e\x26\x26\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x74\x68\x69\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x75\x6e\x72\x65\x73\x6f\x6c\x76\x65\x64\x4f\x70\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x70\x2c\x74\x61\x67\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x74\x61\x67\x2c\x70\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x73\x65\x63\x75\x72\x69\x74\x79\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x2c\x6a\x75\x6d\x70\x54\x6f\x4b\x65\x79\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6a\x75\x6d\x70\x54\x6f\x4b\x65\x79\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x2c\x72\x65\x71\x75\x65\x73\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x2c\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x2c\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x66\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x6e\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x3d\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x6f\x70\x3a\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x2c\x74\x61\x67\x3a\x74\x61\x67\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x73\x75\x6d\x6d\x61\x72\x79\x3a\x75\x6e\x72\x65\x73\x6f\x6c\x76\x65\x64\x4f\x70\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x22\x73\x75\x6d\x6d\x61\x72\x79\x22\x5d\x29\x7c\x7c\x22\x22\x2c\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3a\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x2e\x67\x65\x74\x28\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x29\x7c\x7c\x75\x6e\x72\x65\x73\x6f\x6c\x76\x65\x64\x4f\x70\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x5d\x29\x7c\x7c\x66\x61\x6c\x73\x65\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x73\x65\x63\x75\x72\x69\x74\x79\x3a\x73\x65\x63\x75\x72\x69\x74\x79\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x6f\x72\x69\x67\x69\x6e\x61\x6c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3a\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x22\x5f\x5f\x6f\x72\x69\x67\x69\x6e\x61\x6c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x22\x5d\x29\x2c\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3a\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3a\x69\x73\x53\x68\x6f\x77\x6e\x2c\x6a\x75\x6d\x70\x54\x6f\x4b\x65\x79\x3a\x6a\x75\x6d\x70\x54\x6f\x4b\x65\x79\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3a\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x2c\x72\x65\x71\x75\x65\x73\x74\x3a\x72\x65\x71\x75\x65\x73\x74\x2c\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3a\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3a\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x2c\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x3a\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x2c\x65\x78\x65\x63\x75\x74\x65\x49\x6e\x50\x72\x6f\x67\x72\x65\x73\x73\x3a\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x65\x78\x65\x63\x75\x74\x65\x49\x6e\x50\x72\x6f\x67\x72\x65\x73\x73\x2c\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x3a\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x2c\x72\x65\x71\x75\x65\x73\x74\x3a\x72\x65\x71\x75\x65\x73\x74\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3a\x69\x73\x53\x68\x6f\x77\x6e\x2c\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x3a\x74\x68\x69\x73\x2e\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x2c\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x2c\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x2c\x6f\x6e\x45\x78\x65\x63\x75\x74\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x45\x78\x65\x63\x75\x74\x65\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3a\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3a\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x66\x6e\x3a\x66\x6e\x7d\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3a\x74\x72\x75\x65\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3a\x6e\x75\x6c\x6c\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3a\x74\x72\x75\x65\x2c\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3a\x66\x61\x6c\x73\x65\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x41\x70\x70\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x70\x70\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x70\x70\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x70\x70\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x41\x70\x70\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x70\x70\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x70\x70\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x4c\x61\x79\x6f\x75\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x4c\x61\x79\x6f\x75\x74\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x6c\x61\x79\x6f\x75\x74\x4e\x61\x6d\x65\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x28\x29\x3b\x76\x61\x72\x20\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x6c\x61\x79\x6f\x75\x74\x4e\x61\x6d\x65\x2c\x74\x72\x75\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x31\x22\x2c\x6e\x75\x6c\x6c\x2c\x27\x20\x4e\x6f\x20\x6c\x61\x79\x6f\x75\x74\x20\x64\x65\x66\x69\x6e\x65\x64\x20\x66\x6f\x72\x20\x22\x27\x2c\x6c\x61\x79\x6f\x75\x74\x4e\x61\x6d\x65\x2c\x27\x22\x20\x27\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x4c\x61\x79\x6f\x75\x74\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x4c\x61\x79\x6f\x75\x74\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x61\x79\x6f\x75\x74\x2c\x6e\x75\x6c\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x70\x70\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x70\x70\x3b\x41\x70\x70\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x63\x6c\x6f\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3b\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x66\x61\x6c\x73\x65\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x5f\x70\x72\x6f\x70\x73\x24\x66\x6e\x24\x41\x53\x54\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x6e\x2e\x41\x53\x54\x2c\x41\x53\x54\x3d\x5f\x70\x72\x6f\x70\x73\x24\x66\x6e\x24\x41\x53\x54\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x7b\x7d\x3a\x5f\x70\x72\x6f\x70\x73\x24\x66\x6e\x24\x41\x53\x54\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x68\x6f\x77\x6e\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x61\x75\x74\x68\x73\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x64\x69\x61\x6c\x6f\x67\x2d\x75\x78\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x61\x63\x6b\x64\x72\x6f\x70\x2d\x75\x78\x22\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x61\x6c\x2d\x75\x78\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x61\x6c\x2d\x64\x69\x61\x6c\x6f\x67\x2d\x75\x78\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x61\x6c\x2d\x75\x78\x2d\x69\x6e\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x61\x6c\x2d\x75\x78\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x33\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x76\x61\x69\x6c\x61\x62\x6c\x65\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x73\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x7b\x74\x79\x70\x65\x3a\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6c\x6f\x73\x65\x2d\x6d\x6f\x64\x61\x6c\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x63\x6c\x6f\x73\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x76\x67\x22\x2c\x7b\x77\x69\x64\x74\x68\x3a\x22\x32\x30\x22\x2c\x68\x65\x69\x67\x68\x74\x3a\x22\x32\x30\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x75\x73\x65\x22\x2c\x7b\x68\x72\x65\x66\x3a\x22\x23\x63\x6c\x6f\x73\x65\x22\x2c\x78\x6c\x69\x6e\x6b\x48\x72\x65\x66\x3a\x22\x23\x63\x6c\x6f\x73\x65\x22\x7d\x29\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x61\x6c\x2d\x75\x78\x2d\x63\x6f\x6e\x74\x65\x6e\x74\x22\x7d\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x73\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2c\x41\x53\x54\x3a\x41\x53\x54\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3a\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3a\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x29\x7d\x29\x29\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x73\x68\x6f\x77\x50\x6f\x70\x75\x70\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x68\x6f\x77\x50\x6f\x70\x75\x70\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x22\x2c\x74\x72\x75\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x61\x75\x74\x68\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x22\x62\x74\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x20\x6c\x6f\x63\x6b\x65\x64\x22\x3a\x22\x62\x74\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x20\x75\x6e\x6c\x6f\x63\x6b\x65\x64\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x6f\x6e\x43\x6c\x69\x63\x6b\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x76\x67\x22\x2c\x7b\x77\x69\x64\x74\x68\x3a\x22\x32\x30\x22\x2c\x68\x65\x69\x67\x68\x74\x3a\x22\x32\x30\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x75\x73\x65\x22\x2c\x7b\x68\x72\x65\x66\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x22\x23\x6c\x6f\x63\x6b\x65\x64\x22\x3a\x22\x23\x75\x6e\x6c\x6f\x63\x6b\x65\x64\x22\x2c\x78\x6c\x69\x6e\x6b\x48\x72\x65\x66\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x22\x23\x6c\x6f\x63\x6b\x65\x64\x22\x3a\x22\x23\x75\x6e\x6c\x6f\x63\x6b\x65\x64\x22\x7d\x29\x29\x29\x2c\x73\x68\x6f\x77\x50\x6f\x70\x75\x70\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x50\x6f\x70\x75\x70\x2c\x6e\x75\x6c\x6c\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x62\x6c\x65\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x54\x6f\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x28\x29\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x62\x6c\x65\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x29\x7d\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x21\x21\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x28\x29\x2e\x73\x69\x7a\x65\x2c\x73\x68\x6f\x77\x50\x6f\x70\x75\x70\x3a\x21\x21\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x68\x6f\x77\x6e\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x3a\x6e\x75\x6c\x6c\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x65\x2e\x73\x74\x6f\x70\x50\x72\x6f\x70\x61\x67\x61\x74\x69\x6f\x6e\x28\x29\x3b\x76\x61\x72\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x3b\x69\x66\x28\x6f\x6e\x43\x6c\x69\x63\x6b\x29\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7d\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x5f\x5f\x62\x74\x6e\x20\x6c\x6f\x63\x6b\x65\x64\x22\x3a\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x5f\x5f\x62\x74\x6e\x20\x75\x6e\x6c\x6f\x63\x6b\x65\x64\x22\x2c\x22\x61\x72\x69\x61\x2d\x6c\x61\x62\x65\x6c\x22\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x20\x62\x75\x74\x74\x6f\x6e\x20\x6c\x6f\x63\x6b\x65\x64\x22\x3a\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x20\x62\x75\x74\x74\x6f\x6e\x20\x75\x6e\x6c\x6f\x63\x6b\x65\x64\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x76\x67\x22\x2c\x7b\x77\x69\x64\x74\x68\x3a\x22\x32\x30\x22\x2c\x68\x65\x69\x67\x68\x74\x3a\x22\x32\x30\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x75\x73\x65\x22\x2c\x7b\x68\x72\x65\x66\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x22\x23\x6c\x6f\x63\x6b\x65\x64\x22\x3a\x22\x23\x75\x6e\x6c\x6f\x63\x6b\x65\x64\x22\x2c\x78\x6c\x69\x6e\x6b\x48\x72\x65\x66\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x22\x23\x6c\x6f\x63\x6b\x65\x64\x22\x3a\x22\x23\x75\x6e\x6c\x6f\x63\x6b\x65\x64\x22\x7d\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x41\x75\x74\x68\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x73\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x75\x74\x68\x73\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x75\x74\x68\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x41\x75\x74\x68\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x73\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x75\x74\x68\x29\x7b\x76\x61\x72\x20\x6e\x61\x6d\x65\x3d\x61\x75\x74\x68\x2e\x6e\x61\x6d\x65\x3b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6e\x61\x6d\x65\x2c\x61\x75\x74\x68\x29\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x73\x75\x62\x6d\x69\x74\x41\x75\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x65\x2e\x70\x72\x65\x76\x65\x6e\x74\x44\x65\x66\x61\x75\x6c\x74\x28\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3b\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x28\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x6c\x6f\x67\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x65\x2e\x70\x72\x65\x76\x65\x6e\x74\x44\x65\x66\x61\x75\x6c\x74\x28\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x73\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6b\x65\x79\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x3b\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6c\x6f\x67\x6f\x75\x74\x28\x61\x75\x74\x68\x73\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x63\x6c\x6f\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x65\x2e\x70\x72\x65\x76\x65\x6e\x74\x44\x65\x66\x61\x75\x6c\x74\x28\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3b\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x66\x61\x6c\x73\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x49\x74\x65\x6d\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x41\x75\x74\x68\x49\x74\x65\x6d\x22\x29\x3b\x76\x61\x72\x20\x4f\x61\x75\x74\x68\x32\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x6f\x61\x75\x74\x68\x32\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x42\x75\x74\x74\x6f\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x42\x75\x74\x74\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x28\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x41\x75\x74\x68\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2e\x67\x65\x74\x28\x6b\x65\x79\x29\x7d\x29\x3b\x76\x61\x72\x20\x6e\x6f\x6e\x4f\x61\x75\x74\x68\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x21\x3d\x3d\x22\x6f\x61\x75\x74\x68\x32\x22\x7d\x29\x3b\x76\x61\x72\x20\x6f\x61\x75\x74\x68\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3d\x3d\x3d\x22\x6f\x61\x75\x74\x68\x32\x22\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x61\x75\x74\x68\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x21\x21\x6e\x6f\x6e\x4f\x61\x75\x74\x68\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x73\x69\x7a\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x66\x6f\x72\x6d\x22\x2c\x7b\x6f\x6e\x53\x75\x62\x6d\x69\x74\x3a\x74\x68\x69\x73\x2e\x73\x75\x62\x6d\x69\x74\x41\x75\x74\x68\x7d\x2c\x6e\x6f\x6e\x4f\x61\x75\x74\x68\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x49\x74\x65\x6d\x2c\x7b\x6b\x65\x79\x3a\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x3a\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x61\x75\x74\x68\x2d\x62\x74\x6e\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x6e\x6f\x6e\x4f\x61\x75\x74\x68\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x73\x69\x7a\x65\x3d\x3d\x3d\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x41\x75\x74\x68\x2e\x73\x69\x7a\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x6d\x6f\x64\x61\x6c\x2d\x62\x74\x6e\x20\x61\x75\x74\x68\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x6c\x6f\x67\x6f\x75\x74\x43\x6c\x69\x63\x6b\x7d\x2c\x22\x4c\x6f\x67\x6f\x75\x74\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x74\x79\x70\x65\x3a\x22\x73\x75\x62\x6d\x69\x74\x22\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x6d\x6f\x64\x61\x6c\x2d\x62\x74\x6e\x20\x61\x75\x74\x68\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x22\x7d\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x6d\x6f\x64\x61\x6c\x2d\x62\x74\x6e\x20\x61\x75\x74\x68\x20\x62\x74\x6e\x2d\x64\x6f\x6e\x65\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x63\x6c\x6f\x73\x65\x7d\x2c\x22\x43\x6c\x6f\x73\x65\x22\x29\x29\x29\x2c\x6f\x61\x75\x74\x68\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x26\x26\x6f\x61\x75\x74\x68\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x73\x69\x7a\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x73\x63\x6f\x70\x65\x2d\x64\x65\x66\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x53\x63\x6f\x70\x65\x73\x20\x61\x72\x65\x20\x75\x73\x65\x64\x20\x74\x6f\x20\x67\x72\x61\x6e\x74\x20\x61\x6e\x20\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x20\x64\x69\x66\x66\x65\x72\x65\x6e\x74\x20\x6c\x65\x76\x65\x6c\x73\x20\x6f\x66\x20\x61\x63\x63\x65\x73\x73\x20\x74\x6f\x20\x64\x61\x74\x61\x20\x6f\x6e\x20\x62\x65\x68\x61\x6c\x66\x20\x6f\x66\x20\x74\x68\x65\x20\x65\x6e\x64\x20\x75\x73\x65\x72\x2e\x20\x45\x61\x63\x68\x20\x41\x50\x49\x20\x6d\x61\x79\x20\x64\x65\x63\x6c\x61\x72\x65\x20\x6f\x6e\x65\x20\x6f\x72\x20\x6d\x6f\x72\x65\x20\x73\x63\x6f\x70\x65\x73\x2e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x50\x49\x20\x72\x65\x71\x75\x69\x72\x65\x73\x20\x74\x68\x65\x20\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x20\x73\x63\x6f\x70\x65\x73\x2e\x20\x53\x65\x6c\x65\x63\x74\x20\x77\x68\x69\x63\x68\x20\x6f\x6e\x65\x73\x20\x79\x6f\x75\x20\x77\x61\x6e\x74\x20\x74\x6f\x20\x67\x72\x61\x6e\x74\x20\x74\x6f\x20\x53\x77\x61\x67\x67\x65\x72\x20\x55\x49\x2e\x22\x29\x29\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3d\x3d\x3d\x22\x6f\x61\x75\x74\x68\x32\x22\x7d\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6b\x65\x79\x3a\x6e\x61\x6d\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x61\x75\x74\x68\x32\x2c\x7b\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x7d\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x75\x74\x68\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x75\x74\x68\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x41\x75\x74\x68\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x73\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x75\x74\x68\x73\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x75\x74\x68\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x41\x75\x74\x68\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x73\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x61\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x22\x29\x3b\x76\x61\x72\x20\x42\x61\x73\x69\x63\x41\x75\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x62\x61\x73\x69\x63\x41\x75\x74\x68\x22\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x45\x6c\x3d\x76\x6f\x69\x64\x20\x30\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3b\x73\x77\x69\x74\x63\x68\x28\x74\x79\x70\x65\x29\x7b\x63\x61\x73\x65\x22\x61\x70\x69\x4b\x65\x79\x22\x3a\x61\x75\x74\x68\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x2c\x7b\x6b\x65\x79\x3a\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x7d\x29\x3b\x62\x72\x65\x61\x6b\x3b\x63\x61\x73\x65\x22\x62\x61\x73\x69\x63\x22\x3a\x61\x75\x74\x68\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x61\x73\x69\x63\x41\x75\x74\x68\x2c\x7b\x6b\x65\x79\x3a\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x6f\x6e\x41\x75\x74\x68\x43\x68\x61\x6e\x67\x65\x7d\x29\x3b\x62\x72\x65\x61\x6b\x3b\x64\x65\x66\x61\x75\x6c\x74\x3a\x61\x75\x74\x68\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6b\x65\x79\x3a\x6e\x61\x6d\x65\x7d\x2c\x22\x55\x6e\x6b\x6e\x6f\x77\x6e\x20\x73\x65\x63\x75\x72\x69\x74\x79\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x20\x74\x79\x70\x65\x20\x22\x2c\x74\x79\x70\x65\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6b\x65\x79\x3a\x6e\x61\x6d\x65\x2b\x22\x2d\x6a\x75\x6d\x70\x22\x7d\x2c\x61\x75\x74\x68\x45\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x75\x74\x68\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x75\x74\x68\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x65\x72\x72\x6f\x72\x3b\x76\x61\x72\x20\x6c\x65\x76\x65\x6c\x3d\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6c\x65\x76\x65\x6c\x22\x29\x3b\x76\x61\x72\x20\x6d\x65\x73\x73\x61\x67\x65\x3d\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x29\x3b\x76\x61\x72\x20\x73\x6f\x75\x72\x63\x65\x3d\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x73\x6f\x75\x72\x63\x65\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x73\x74\x79\x6c\x65\x3a\x7b\x62\x61\x63\x6b\x67\x72\x6f\x75\x6e\x64\x43\x6f\x6c\x6f\x72\x3a\x22\x23\x66\x66\x65\x65\x65\x65\x22\x2c\x63\x6f\x6c\x6f\x72\x3a\x22\x72\x65\x64\x22\x2c\x6d\x61\x72\x67\x69\x6e\x3a\x22\x31\x65\x6d\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x74\x65\x78\x74\x54\x72\x61\x6e\x73\x66\x6f\x72\x6d\x3a\x22\x63\x61\x70\x69\x74\x61\x6c\x69\x7a\x65\x22\x2c\x6d\x61\x72\x67\x69\x6e\x52\x69\x67\x68\x74\x3a\x22\x31\x65\x6d\x22\x7d\x7d\x2c\x73\x6f\x75\x72\x63\x65\x2c\x22\x20\x22\x2c\x6c\x65\x76\x65\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x6d\x65\x73\x73\x61\x67\x65\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x2e\x63\x61\x6c\x6c\x28\x5f\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x29\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x56\x61\x6c\x75\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x26\x26\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2e\x67\x65\x74\x49\x6e\x28\x5b\x6e\x61\x6d\x65\x2c\x22\x76\x61\x6c\x75\x65\x22\x5d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x63\x68\x65\x6d\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x49\x6e\x70\x75\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x70\x75\x74\x22\x29\x3b\x76\x61\x72\x20\x52\x6f\x77\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x52\x6f\x77\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x22\x29\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x61\x75\x74\x68\x45\x72\x72\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x29\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x28\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x49\x64\x22\x29\x3d\x3d\x3d\x6e\x61\x6d\x65\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x6e\x61\x6d\x65\x7c\x7c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x29\x2c\x22\xc2\xa0\x20\x28\x61\x70\x69\x4b\x65\x79\x29\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x7b\x70\x61\x74\x68\x3a\x5b\x22\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x7d\x29\x29\x2c\x76\x61\x6c\x75\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x36\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x4e\x61\x6d\x65\x3a\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x49\x6e\x3a\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x56\x61\x6c\x75\x65\x3a\x22\x29\x2c\x76\x61\x6c\x75\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x2a\x2a\x2a\x2a\x2a\x2a\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x74\x79\x70\x65\x3a\x22\x74\x65\x78\x74\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x65\x72\x72\x6f\x72\x73\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x2c\x7b\x65\x72\x72\x6f\x72\x3a\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x3a\x6b\x65\x79\x7d\x29\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x6e\x65\x77\x53\x74\x61\x74\x65\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x29\x3b\x5f\x74\x68\x69\x73\x32\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x6e\x65\x77\x53\x74\x61\x74\x65\x29\x3b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x6e\x65\x77\x53\x74\x61\x74\x65\x29\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x70\x69\x4b\x65\x79\x41\x75\x74\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x42\x61\x73\x69\x63\x41\x75\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x42\x61\x73\x69\x63\x41\x75\x74\x68\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x42\x61\x73\x69\x63\x41\x75\x74\x68\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x42\x61\x73\x69\x63\x41\x75\x74\x68\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x42\x61\x73\x69\x63\x41\x75\x74\x68\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x42\x61\x73\x69\x63\x41\x75\x74\x68\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x2e\x63\x61\x6c\x6c\x28\x5f\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x29\x3b\x76\x61\x72\x20\x75\x73\x65\x72\x6e\x61\x6d\x65\x3d\x76\x61\x6c\x75\x65\x2e\x75\x73\x65\x72\x6e\x61\x6d\x65\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x76\x61\x6c\x75\x65\x3a\x21\x75\x73\x65\x72\x6e\x61\x6d\x65\x3f\x7b\x7d\x3a\x7b\x75\x73\x65\x72\x6e\x61\x6d\x65\x3a\x75\x73\x65\x72\x6e\x61\x6d\x65\x7d\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x42\x61\x73\x69\x63\x41\x75\x74\x68\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x56\x61\x6c\x75\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x26\x26\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2e\x67\x65\x74\x49\x6e\x28\x5b\x6e\x61\x6d\x65\x2c\x22\x76\x61\x6c\x75\x65\x22\x5d\x29\x7c\x7c\x7b\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x63\x68\x65\x6d\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x6e\x61\x6d\x65\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x49\x6e\x70\x75\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x70\x75\x74\x22\x29\x3b\x76\x61\x72\x20\x52\x6f\x77\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x52\x6f\x77\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x22\x29\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x61\x75\x74\x68\x45\x72\x72\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x75\x73\x65\x72\x6e\x61\x6d\x65\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x56\x61\x6c\x75\x65\x28\x29\x2e\x75\x73\x65\x72\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x28\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x49\x64\x22\x29\x3d\x3d\x3d\x6e\x61\x6d\x65\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x42\x61\x73\x69\x63\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x7b\x70\x61\x74\x68\x3a\x5b\x22\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x7d\x29\x29\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x36\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x55\x73\x65\x72\x6e\x61\x6d\x65\x3a\x22\x29\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x22\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x2c\x22\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x74\x79\x70\x65\x3a\x22\x74\x65\x78\x74\x22\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x2c\x6e\x61\x6d\x65\x3a\x22\x75\x73\x65\x72\x6e\x61\x6d\x65\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x50\x61\x73\x73\x77\x6f\x72\x64\x3a\x22\x29\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x2a\x2a\x2a\x2a\x2a\x2a\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x2c\x61\x75\x74\x6f\x43\x6f\x6d\x70\x6c\x65\x74\x65\x3a\x22\x6e\x65\x77\x2d\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x6e\x61\x6d\x65\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x74\x79\x70\x65\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x65\x72\x72\x6f\x72\x73\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x2c\x7b\x65\x72\x72\x6f\x72\x3a\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x3a\x6b\x65\x79\x7d\x29\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x42\x61\x73\x69\x63\x41\x75\x74\x68\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3b\x76\x61\x72\x20\x5f\x65\x24\x74\x61\x72\x67\x65\x74\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x65\x24\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x2c\x6e\x61\x6d\x65\x3d\x5f\x65\x24\x74\x61\x72\x67\x65\x74\x2e\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x3b\x6e\x65\x77\x56\x61\x6c\x75\x65\x5b\x6e\x61\x6d\x65\x5d\x3d\x76\x61\x6c\x75\x65\x3b\x5f\x74\x68\x69\x73\x32\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x6e\x65\x77\x56\x61\x6c\x75\x65\x7d\x29\x3b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x29\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x42\x61\x73\x69\x63\x41\x75\x74\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x45\x78\x61\x6d\x70\x6c\x65\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x45\x78\x61\x6d\x70\x6c\x65\x28\x70\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x65\x78\x61\x6d\x70\x6c\x65\x3d\x70\x72\x6f\x70\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x2c\x73\x68\x6f\x77\x56\x61\x6c\x75\x65\x3d\x70\x72\x6f\x70\x73\x2e\x73\x68\x6f\x77\x56\x61\x6c\x75\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x22\x29\x3b\x69\x66\x28\x21\x65\x78\x61\x6d\x70\x6c\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x7d\x2c\x65\x78\x61\x6d\x70\x6c\x65\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x63\x74\x69\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x5f\x5f\x73\x65\x63\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x5f\x5f\x73\x65\x63\x74\x69\x6f\x6e\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x22\x45\x78\x61\x6d\x70\x6c\x65\x20\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x65\x78\x61\x6d\x70\x6c\x65\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x7d\x29\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x73\x68\x6f\x77\x56\x61\x6c\x75\x65\x26\x26\x65\x78\x61\x6d\x70\x6c\x65\x2e\x68\x61\x73\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x63\x74\x69\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x5f\x5f\x73\x65\x63\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x5f\x5f\x73\x65\x63\x74\x69\x6f\x6e\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x22\x45\x78\x61\x6d\x70\x6c\x65\x20\x56\x61\x6c\x75\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x65\x78\x61\x6d\x70\x6c\x65\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x29\x7d\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x6d\x61\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x36\x29\x3b\x76\x61\x72\x20\x5f\x6d\x61\x70\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6d\x61\x70\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x2c\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x2e\x63\x61\x6c\x6c\x28\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x53\x65\x6c\x65\x63\x74\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x73\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x76\x61\x72\x20\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x66\x69\x72\x73\x74\x28\x29\x3b\x76\x61\x72\x20\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x6b\x65\x79\x4f\x66\x28\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x29\x3b\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x53\x65\x6c\x65\x63\x74\x28\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x2c\x7b\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x3a\x74\x72\x75\x65\x7d\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x73\x3b\x69\x66\x28\x65\x78\x61\x6d\x70\x6c\x65\x73\x21\x3d\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x73\x26\x26\x21\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x68\x61\x73\x28\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x29\x29\x7b\x76\x61\x72\x20\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x66\x69\x72\x73\x74\x28\x29\x3b\x76\x61\x72\x20\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x6b\x65\x79\x4f\x66\x28\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x29\x3b\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x53\x65\x6c\x65\x63\x74\x28\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x2c\x7b\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x3a\x74\x72\x75\x65\x7d\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x65\x78\x61\x6d\x70\x6c\x65\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x2c\x69\x73\x56\x61\x6c\x75\x65\x4d\x6f\x64\x69\x66\x69\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x69\x73\x56\x61\x6c\x75\x65\x4d\x6f\x64\x69\x66\x69\x65\x64\x2c\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x41\x76\x61\x69\x6c\x61\x62\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x41\x76\x61\x69\x6c\x61\x62\x6c\x65\x2c\x73\x68\x6f\x77\x4c\x61\x62\x65\x6c\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x68\x6f\x77\x4c\x61\x62\x65\x6c\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x2d\x73\x65\x6c\x65\x63\x74\x22\x7d\x2c\x73\x68\x6f\x77\x4c\x61\x62\x65\x6c\x73\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x2d\x73\x65\x6c\x65\x63\x74\x5f\x5f\x73\x65\x63\x74\x69\x6f\x6e\x2d\x6c\x61\x62\x65\x6c\x22\x7d\x2c\x22\x45\x78\x61\x6d\x70\x6c\x65\x73\x3a\x20\x22\x29\x3a\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x6c\x65\x63\x74\x22\x2c\x7b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x44\x6f\x6d\x53\x65\x6c\x65\x63\x74\x2c\x76\x61\x6c\x75\x65\x3a\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x41\x76\x61\x69\x6c\x61\x62\x6c\x65\x26\x26\x69\x73\x56\x61\x6c\x75\x65\x4d\x6f\x64\x69\x66\x69\x65\x64\x3f\x22\x5f\x5f\x4d\x4f\x44\x49\x46\x49\x45\x44\x5f\x5f\x56\x41\x4c\x55\x45\x5f\x5f\x22\x3a\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x7c\x7c\x22\x22\x7d\x2c\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x41\x76\x61\x69\x6c\x61\x62\x6c\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x22\x5f\x5f\x4d\x4f\x44\x49\x46\x49\x45\x44\x5f\x5f\x56\x41\x4c\x55\x45\x5f\x5f\x22\x7d\x2c\x22\x5b\x4d\x6f\x64\x69\x66\x69\x65\x64\x20\x76\x61\x6c\x75\x65\x5d\x22\x29\x3a\x6e\x75\x6c\x6c\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x61\x6d\x70\x6c\x65\x2c\x65\x78\x61\x6d\x70\x6c\x65\x4e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x6b\x65\x79\x3a\x65\x78\x61\x6d\x70\x6c\x65\x4e\x61\x6d\x65\x2c\x76\x61\x6c\x75\x65\x3a\x65\x78\x61\x6d\x70\x6c\x65\x4e\x61\x6d\x65\x7d\x2c\x65\x78\x61\x6d\x70\x6c\x65\x2e\x67\x65\x74\x28\x22\x73\x75\x6d\x6d\x61\x72\x79\x22\x29\x7c\x7c\x65\x78\x61\x6d\x70\x6c\x65\x4e\x61\x6d\x65\x29\x7d\x29\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x65\x78\x61\x6d\x70\x6c\x65\x73\x3a\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4d\x61\x70\x28\x7b\x7d\x29\x2c\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x53\x65\x6c\x65\x63\x74\x28\x29\x7b\x76\x61\x72\x20\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x32\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x32\x29\x2c\x5f\x6b\x65\x79\x32\x3d\x30\x3b\x5f\x6b\x65\x79\x32\x3c\x5f\x6c\x65\x6e\x32\x3b\x5f\x6b\x65\x79\x32\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x7d\x72\x65\x74\x75\x72\x6e\x28\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x3d\x63\x6f\x6e\x73\x6f\x6c\x65\x29\x2e\x6c\x6f\x67\x2e\x61\x70\x70\x6c\x79\x28\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x2c\x5b\x22\x44\x45\x42\x55\x47\x3a\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x20\x77\x61\x73\x20\x6e\x6f\x74\x20\x67\x69\x76\x65\x6e\x20\x61\x6e\x20\x6f\x6e\x53\x65\x6c\x65\x63\x74\x20\x63\x61\x6c\x6c\x62\x61\x63\x6b\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x7d\x2c\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3a\x6e\x75\x6c\x6c\x2c\x73\x68\x6f\x77\x4c\x61\x62\x65\x6c\x73\x3a\x74\x72\x75\x65\x7d\x3b\x76\x61\x72\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x32\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x7b\x7d\x2c\x5f\x72\x65\x66\x32\x24\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x3d\x5f\x72\x65\x66\x32\x2e\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x2c\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x3d\x5f\x72\x65\x66\x32\x24\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x66\x61\x6c\x73\x65\x3a\x5f\x72\x65\x66\x32\x24\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x53\x65\x6c\x65\x63\x74\x28\x6b\x65\x79\x2c\x7b\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x3a\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x7d\x29\x7d\x7d\x3b\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x44\x6f\x6d\x53\x65\x6c\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x76\x61\x72\x20\x65\x6c\x65\x6d\x65\x6e\x74\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x4f\x70\x74\x69\x6f\x6e\x73\x5b\x30\x5d\x3b\x76\x61\x72\x20\x6b\x65\x79\x3d\x65\x6c\x65\x6d\x65\x6e\x74\x2e\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x3b\x5f\x74\x68\x69\x73\x32\x2e\x5f\x6f\x6e\x53\x65\x6c\x65\x63\x74\x28\x6b\x65\x79\x2c\x7b\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x3a\x66\x61\x6c\x73\x65\x7d\x29\x7d\x7d\x3b\x74\x68\x69\x73\x2e\x67\x65\x74\x43\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x33\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x65\x78\x61\x6d\x70\x6c\x65\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x50\x65\x72\x50\x72\x6f\x70\x73\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x67\x65\x74\x28\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x29\x3b\x76\x61\x72\x20\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x2e\x66\x69\x72\x73\x74\x28\x29\x3b\x76\x61\x72\x20\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x67\x65\x74\x28\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x50\x65\x72\x50\x72\x6f\x70\x73\x7c\x7c\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x7c\x7c\x28\x30\x2c\x5f\x6d\x61\x70\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x29\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x37\x29\x2c\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3a\x74\x72\x75\x65\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x37\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x31\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x38\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x34\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x37\x29\x3b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x39\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x29\x2e\x4d\x61\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x73\x74\x72\x6f\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x39\x39\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x36\x29\x3b\x76\x61\x72\x20\x4d\x41\x50\x3d\x22\x4d\x61\x70\x22\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x30\x29\x28\x4d\x41\x50\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x67\x65\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x61\x70\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x67\x65\x74\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x30\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x30\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7d\x7d\x2c\x7b\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3d\x73\x74\x72\x6f\x6e\x67\x2e\x67\x65\x74\x45\x6e\x74\x72\x79\x28\x76\x61\x6c\x69\x64\x61\x74\x65\x28\x74\x68\x69\x73\x2c\x4d\x41\x50\x29\x2c\x6b\x65\x79\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x65\x6e\x74\x72\x79\x26\x26\x65\x6e\x74\x72\x79\x2e\x76\x7d\x2c\x73\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x65\x74\x28\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x6f\x6e\x67\x2e\x64\x65\x66\x28\x76\x61\x6c\x69\x64\x61\x74\x65\x28\x74\x68\x69\x73\x2c\x4d\x41\x50\x29\x2c\x6b\x65\x79\x3d\x3d\x3d\x30\x3f\x30\x3a\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7d\x7d\x2c\x73\x74\x72\x6f\x6e\x67\x2c\x74\x72\x75\x65\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x64\x50\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x2e\x66\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x32\x29\x3b\x76\x61\x72\x20\x72\x65\x64\x65\x66\x69\x6e\x65\x41\x6c\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x39\x29\x3b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x29\x3b\x76\x61\x72\x20\x61\x6e\x49\x6e\x73\x74\x61\x6e\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x37\x29\x3b\x76\x61\x72\x20\x66\x6f\x72\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x35\x29\x3b\x76\x61\x72\x20\x24\x69\x74\x65\x72\x44\x65\x66\x69\x6e\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x37\x29\x3b\x76\x61\x72\x20\x73\x74\x65\x70\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x39\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x53\x70\x65\x63\x69\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x31\x29\x3b\x76\x61\x72\x20\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x3b\x76\x61\x72\x20\x66\x61\x73\x74\x4b\x65\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x34\x29\x2e\x66\x61\x73\x74\x4b\x65\x79\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x36\x29\x3b\x76\x61\x72\x20\x53\x49\x5a\x45\x3d\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x3f\x22\x5f\x73\x22\x3a\x22\x73\x69\x7a\x65\x22\x3b\x76\x61\x72\x20\x67\x65\x74\x45\x6e\x74\x72\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x68\x61\x74\x2c\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x66\x61\x73\x74\x4b\x65\x79\x28\x6b\x65\x79\x29\x3b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x21\x3d\x3d\x22\x46\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x61\x74\x2e\x5f\x69\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x66\x6f\x72\x28\x65\x6e\x74\x72\x79\x3d\x74\x68\x61\x74\x2e\x5f\x66\x3b\x65\x6e\x74\x72\x79\x3b\x65\x6e\x74\x72\x79\x3d\x65\x6e\x74\x72\x79\x2e\x6e\x29\x7b\x69\x66\x28\x65\x6e\x74\x72\x79\x2e\x6b\x3d\x3d\x6b\x65\x79\x29\x72\x65\x74\x75\x72\x6e\x20\x65\x6e\x74\x72\x79\x7d\x7d\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x7b\x67\x65\x74\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x77\x72\x61\x70\x70\x65\x72\x2c\x4e\x41\x4d\x45\x2c\x49\x53\x5f\x4d\x41\x50\x2c\x41\x44\x44\x45\x52\x29\x7b\x76\x61\x72\x20\x43\x3d\x77\x72\x61\x70\x70\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x68\x61\x74\x2c\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x7b\x61\x6e\x49\x6e\x73\x74\x61\x6e\x63\x65\x28\x74\x68\x61\x74\x2c\x43\x2c\x4e\x41\x4d\x45\x2c\x22\x5f\x69\x22\x29\x3b\x74\x68\x61\x74\x2e\x5f\x74\x3d\x4e\x41\x4d\x45\x3b\x74\x68\x61\x74\x2e\x5f\x69\x3d\x63\x72\x65\x61\x74\x65\x28\x6e\x75\x6c\x6c\x29\x3b\x74\x68\x61\x74\x2e\x5f\x66\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x61\x74\x2e\x5f\x6c\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x61\x74\x5b\x53\x49\x5a\x45\x5d\x3d\x30\x3b\x69\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x21\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x66\x6f\x72\x4f\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x49\x53\x5f\x4d\x41\x50\x2c\x74\x68\x61\x74\x5b\x41\x44\x44\x45\x52\x5d\x2c\x74\x68\x61\x74\x29\x7d\x29\x3b\x72\x65\x64\x65\x66\x69\x6e\x65\x41\x6c\x6c\x28\x43\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x7b\x63\x6c\x65\x61\x72\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6c\x65\x61\x72\x28\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x74\x68\x61\x74\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x28\x74\x68\x69\x73\x2c\x4e\x41\x4d\x45\x29\x2c\x64\x61\x74\x61\x3d\x74\x68\x61\x74\x2e\x5f\x69\x2c\x65\x6e\x74\x72\x79\x3d\x74\x68\x61\x74\x2e\x5f\x66\x3b\x65\x6e\x74\x72\x79\x3b\x65\x6e\x74\x72\x79\x3d\x65\x6e\x74\x72\x79\x2e\x6e\x29\x7b\x65\x6e\x74\x72\x79\x2e\x72\x3d\x74\x72\x75\x65\x3b\x69\x66\x28\x65\x6e\x74\x72\x79\x2e\x70\x29\x65\x6e\x74\x72\x79\x2e\x70\x3d\x65\x6e\x74\x72\x79\x2e\x70\x2e\x6e\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x64\x65\x6c\x65\x74\x65\x20\x64\x61\x74\x61\x5b\x65\x6e\x74\x72\x79\x2e\x69\x5d\x7d\x74\x68\x61\x74\x2e\x5f\x66\x3d\x74\x68\x61\x74\x2e\x5f\x6c\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x68\x61\x74\x5b\x53\x49\x5a\x45\x5d\x3d\x30\x7d\x2c\x64\x65\x6c\x65\x74\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x76\x61\x72\x20\x74\x68\x61\x74\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x28\x74\x68\x69\x73\x2c\x4e\x41\x4d\x45\x29\x3b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3d\x67\x65\x74\x45\x6e\x74\x72\x79\x28\x74\x68\x61\x74\x2c\x6b\x65\x79\x29\x3b\x69\x66\x28\x65\x6e\x74\x72\x79\x29\x7b\x76\x61\x72\x20\x6e\x65\x78\x74\x3d\x65\x6e\x74\x72\x79\x2e\x6e\x3b\x76\x61\x72\x20\x70\x72\x65\x76\x3d\x65\x6e\x74\x72\x79\x2e\x70\x3b\x64\x65\x6c\x65\x74\x65\x20\x74\x68\x61\x74\x2e\x5f\x69\x5b\x65\x6e\x74\x72\x79\x2e\x69\x5d\x3b\x65\x6e\x74\x72\x79\x2e\x72\x3d\x74\x72\x75\x65\x3b\x69\x66\x28\x70\x72\x65\x76\x29\x70\x72\x65\x76\x2e\x6e\x3d\x6e\x65\x78\x74\x3b\x69\x66\x28\x6e\x65\x78\x74\x29\x6e\x65\x78\x74\x2e\x70\x3d\x70\x72\x65\x76\x3b\x69\x66\x28\x74\x68\x61\x74\x2e\x5f\x66\x3d\x3d\x65\x6e\x74\x72\x79\x29\x74\x68\x61\x74\x2e\x5f\x66\x3d\x6e\x65\x78\x74\x3b\x69\x66\x28\x74\x68\x61\x74\x2e\x5f\x6c\x3d\x3d\x65\x6e\x74\x72\x79\x29\x74\x68\x61\x74\x2e\x5f\x6c\x3d\x70\x72\x65\x76\x3b\x74\x68\x61\x74\x5b\x53\x49\x5a\x45\x5d\x2d\x2d\x7d\x72\x65\x74\x75\x72\x6e\x21\x21\x65\x6e\x74\x72\x79\x7d\x2c\x66\x6f\x72\x45\x61\x63\x68\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x6f\x72\x45\x61\x63\x68\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x66\x6e\x29\x7b\x76\x61\x6c\x69\x64\x61\x74\x65\x28\x74\x68\x69\x73\x2c\x4e\x41\x4d\x45\x29\x3b\x76\x61\x72\x20\x66\x3d\x63\x74\x78\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x66\x6e\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x33\x29\x3b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3b\x77\x68\x69\x6c\x65\x28\x65\x6e\x74\x72\x79\x3d\x65\x6e\x74\x72\x79\x3f\x65\x6e\x74\x72\x79\x2e\x6e\x3a\x74\x68\x69\x73\x2e\x5f\x66\x29\x7b\x66\x28\x65\x6e\x74\x72\x79\x2e\x76\x2c\x65\x6e\x74\x72\x79\x2e\x6b\x2c\x74\x68\x69\x73\x29\x3b\x77\x68\x69\x6c\x65\x28\x65\x6e\x74\x72\x79\x26\x26\x65\x6e\x74\x72\x79\x2e\x72\x29\x65\x6e\x74\x72\x79\x3d\x65\x6e\x74\x72\x79\x2e\x70\x7d\x7d\x2c\x68\x61\x73\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x73\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x21\x21\x67\x65\x74\x45\x6e\x74\x72\x79\x28\x76\x61\x6c\x69\x64\x61\x74\x65\x28\x74\x68\x69\x73\x2c\x4e\x41\x4d\x45\x29\x2c\x6b\x65\x79\x29\x7d\x7d\x29\x3b\x69\x66\x28\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x29\x64\x50\x28\x43\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x22\x73\x69\x7a\x65\x22\x2c\x7b\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x69\x64\x61\x74\x65\x28\x74\x68\x69\x73\x2c\x4e\x41\x4d\x45\x29\x5b\x53\x49\x5a\x45\x5d\x7d\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x7d\x2c\x64\x65\x66\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x68\x61\x74\x2c\x6b\x65\x79\x2c\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3d\x67\x65\x74\x45\x6e\x74\x72\x79\x28\x74\x68\x61\x74\x2c\x6b\x65\x79\x29\x3b\x76\x61\x72\x20\x70\x72\x65\x76\x2c\x69\x6e\x64\x65\x78\x3b\x69\x66\x28\x65\x6e\x74\x72\x79\x29\x7b\x65\x6e\x74\x72\x79\x2e\x76\x3d\x76\x61\x6c\x75\x65\x7d\x65\x6c\x73\x65\x7b\x74\x68\x61\x74\x2e\x5f\x6c\x3d\x65\x6e\x74\x72\x79\x3d\x7b\x69\x3a\x69\x6e\x64\x65\x78\x3d\x66\x61\x73\x74\x4b\x65\x79\x28\x6b\x65\x79\x2c\x74\x72\x75\x65\x29\x2c\x6b\x3a\x6b\x65\x79\x2c\x76\x3a\x76\x61\x6c\x75\x65\x2c\x70\x3a\x70\x72\x65\x76\x3d\x74\x68\x61\x74\x2e\x5f\x6c\x2c\x6e\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x72\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x69\x66\x28\x21\x74\x68\x61\x74\x2e\x5f\x66\x29\x74\x68\x61\x74\x2e\x5f\x66\x3d\x65\x6e\x74\x72\x79\x3b\x69\x66\x28\x70\x72\x65\x76\x29\x70\x72\x65\x76\x2e\x6e\x3d\x65\x6e\x74\x72\x79\x3b\x74\x68\x61\x74\x5b\x53\x49\x5a\x45\x5d\x2b\x2b\x3b\x69\x66\x28\x69\x6e\x64\x65\x78\x21\x3d\x3d\x22\x46\x22\x29\x74\x68\x61\x74\x2e\x5f\x69\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x65\x6e\x74\x72\x79\x7d\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x61\x74\x7d\x2c\x67\x65\x74\x45\x6e\x74\x72\x79\x3a\x67\x65\x74\x45\x6e\x74\x72\x79\x2c\x73\x65\x74\x53\x74\x72\x6f\x6e\x67\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x2c\x4e\x41\x4d\x45\x2c\x49\x53\x5f\x4d\x41\x50\x29\x7b\x24\x69\x74\x65\x72\x44\x65\x66\x69\x6e\x65\x28\x43\x2c\x4e\x41\x4d\x45\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x61\x74\x65\x64\x2c\x6b\x69\x6e\x64\x29\x7b\x74\x68\x69\x73\x2e\x5f\x74\x3d\x76\x61\x6c\x69\x64\x61\x74\x65\x28\x69\x74\x65\x72\x61\x74\x65\x64\x2c\x4e\x41\x4d\x45\x29\x3b\x74\x68\x69\x73\x2e\x5f\x6b\x3d\x6b\x69\x6e\x64\x3b\x74\x68\x69\x73\x2e\x5f\x6c\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x74\x68\x61\x74\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x6b\x69\x6e\x64\x3d\x74\x68\x61\x74\x2e\x5f\x6b\x3b\x76\x61\x72\x20\x65\x6e\x74\x72\x79\x3d\x74\x68\x61\x74\x2e\x5f\x6c\x3b\x77\x68\x69\x6c\x65\x28\x65\x6e\x74\x72\x79\x26\x26\x65\x6e\x74\x72\x79\x2e\x72\x29\x65\x6e\x74\x72\x79\x3d\x65\x6e\x74\x72\x79\x2e\x70\x3b\x69\x66\x28\x21\x74\x68\x61\x74\x2e\x5f\x74\x7c\x7c\x21\x28\x74\x68\x61\x74\x2e\x5f\x6c\x3d\x65\x6e\x74\x72\x79\x3d\x65\x6e\x74\x72\x79\x3f\x65\x6e\x74\x72\x79\x2e\x6e\x3a\x74\x68\x61\x74\x2e\x5f\x74\x2e\x5f\x66\x29\x29\x7b\x74\x68\x61\x74\x2e\x5f\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x31\x29\x7d\x69\x66\x28\x6b\x69\x6e\x64\x3d\x3d\x22\x6b\x65\x79\x73\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x30\x2c\x65\x6e\x74\x72\x79\x2e\x6b\x29\x3b\x69\x66\x28\x6b\x69\x6e\x64\x3d\x3d\x22\x76\x61\x6c\x75\x65\x73\x22\x29\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x30\x2c\x65\x6e\x74\x72\x79\x2e\x76\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x65\x70\x28\x30\x2c\x5b\x65\x6e\x74\x72\x79\x2e\x6b\x2c\x65\x6e\x74\x72\x79\x2e\x76\x5d\x29\x7d\x2c\x49\x53\x5f\x4d\x41\x50\x3f\x22\x65\x6e\x74\x72\x69\x65\x73\x22\x3a\x22\x76\x61\x6c\x75\x65\x73\x22\x2c\x21\x49\x53\x5f\x4d\x41\x50\x2c\x74\x72\x75\x65\x29\x3b\x73\x65\x74\x53\x70\x65\x63\x69\x65\x73\x28\x4e\x41\x4d\x45\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x67\x6c\x6f\x62\x61\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x36\x29\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x76\x61\x72\x20\x6d\x65\x74\x61\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x32\x34\x29\x3b\x76\x61\x72\x20\x66\x61\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x30\x29\x3b\x76\x61\x72\x20\x68\x69\x64\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x36\x29\x3b\x76\x61\x72\x20\x72\x65\x64\x65\x66\x69\x6e\x65\x41\x6c\x6c\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x39\x29\x3b\x76\x61\x72\x20\x66\x6f\x72\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x35\x29\x3b\x76\x61\x72\x20\x61\x6e\x49\x6e\x73\x74\x61\x6e\x63\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x37\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x76\x61\x72\x20\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x35\x29\x3b\x76\x61\x72\x20\x64\x50\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x35\x29\x2e\x66\x3b\x76\x61\x72\x20\x65\x61\x63\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x31\x29\x28\x30\x29\x3b\x76\x61\x72\x20\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x30\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4e\x41\x4d\x45\x2c\x77\x72\x61\x70\x70\x65\x72\x2c\x6d\x65\x74\x68\x6f\x64\x73\x2c\x63\x6f\x6d\x6d\x6f\x6e\x2c\x49\x53\x5f\x4d\x41\x50\x2c\x49\x53\x5f\x57\x45\x41\x4b\x29\x7b\x76\x61\x72\x20\x42\x61\x73\x65\x3d\x67\x6c\x6f\x62\x61\x6c\x5b\x4e\x41\x4d\x45\x5d\x3b\x76\x61\x72\x20\x43\x3d\x42\x61\x73\x65\x3b\x76\x61\x72\x20\x41\x44\x44\x45\x52\x3d\x49\x53\x5f\x4d\x41\x50\x3f\x22\x73\x65\x74\x22\x3a\x22\x61\x64\x64\x22\x3b\x76\x61\x72\x20\x70\x72\x6f\x74\x6f\x3d\x43\x26\x26\x43\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x4f\x3d\x7b\x7d\x3b\x69\x66\x28\x21\x44\x45\x53\x43\x52\x49\x50\x54\x4f\x52\x53\x7c\x7c\x74\x79\x70\x65\x6f\x66\x20\x43\x21\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x7c\x7c\x21\x28\x49\x53\x5f\x57\x45\x41\x4b\x7c\x7c\x70\x72\x6f\x74\x6f\x2e\x66\x6f\x72\x45\x61\x63\x68\x26\x26\x21\x66\x61\x69\x6c\x73\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x28\x6e\x65\x77\x20\x43\x29\x2e\x65\x6e\x74\x72\x69\x65\x73\x28\x29\x2e\x6e\x65\x78\x74\x28\x29\x7d\x29\x29\x29\x7b\x43\x3d\x63\x6f\x6d\x6d\x6f\x6e\x2e\x67\x65\x74\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x77\x72\x61\x70\x70\x65\x72\x2c\x4e\x41\x4d\x45\x2c\x49\x53\x5f\x4d\x41\x50\x2c\x41\x44\x44\x45\x52\x29\x3b\x72\x65\x64\x65\x66\x69\x6e\x65\x41\x6c\x6c\x28\x43\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x6d\x65\x74\x68\x6f\x64\x73\x29\x3b\x6d\x65\x74\x61\x2e\x4e\x45\x45\x44\x3d\x74\x72\x75\x65\x7d\x65\x6c\x73\x65\x7b\x43\x3d\x77\x72\x61\x70\x70\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x72\x67\x65\x74\x2c\x69\x74\x65\x72\x61\x62\x6c\x65\x29\x7b\x61\x6e\x49\x6e\x73\x74\x61\x6e\x63\x65\x28\x74\x61\x72\x67\x65\x74\x2c\x43\x2c\x4e\x41\x4d\x45\x2c\x22\x5f\x63\x22\x29\x3b\x74\x61\x72\x67\x65\x74\x2e\x5f\x63\x3d\x6e\x65\x77\x20\x42\x61\x73\x65\x3b\x69\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x21\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x66\x6f\x72\x4f\x66\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x49\x53\x5f\x4d\x41\x50\x2c\x74\x61\x72\x67\x65\x74\x5b\x41\x44\x44\x45\x52\x5d\x2c\x74\x61\x72\x67\x65\x74\x29\x7d\x29\x3b\x65\x61\x63\x68\x28\x22\x61\x64\x64\x2c\x63\x6c\x65\x61\x72\x2c\x64\x65\x6c\x65\x74\x65\x2c\x66\x6f\x72\x45\x61\x63\x68\x2c\x67\x65\x74\x2c\x68\x61\x73\x2c\x73\x65\x74\x2c\x6b\x65\x79\x73\x2c\x76\x61\x6c\x75\x65\x73\x2c\x65\x6e\x74\x72\x69\x65\x73\x2c\x74\x6f\x4a\x53\x4f\x4e\x22\x2e\x73\x70\x6c\x69\x74\x28\x22\x2c\x22\x29\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4b\x45\x59\x29\x7b\x76\x61\x72\x20\x49\x53\x5f\x41\x44\x44\x45\x52\x3d\x4b\x45\x59\x3d\x3d\x22\x61\x64\x64\x22\x7c\x7c\x4b\x45\x59\x3d\x3d\x22\x73\x65\x74\x22\x3b\x69\x66\x28\x4b\x45\x59\x20\x69\x6e\x20\x70\x72\x6f\x74\x6f\x26\x26\x21\x28\x49\x53\x5f\x57\x45\x41\x4b\x26\x26\x4b\x45\x59\x3d\x3d\x22\x63\x6c\x65\x61\x72\x22\x29\x29\x68\x69\x64\x65\x28\x43\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x4b\x45\x59\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x61\x2c\x62\x29\x7b\x61\x6e\x49\x6e\x73\x74\x61\x6e\x63\x65\x28\x74\x68\x69\x73\x2c\x43\x2c\x4b\x45\x59\x29\x3b\x69\x66\x28\x21\x49\x53\x5f\x41\x44\x44\x45\x52\x26\x26\x49\x53\x5f\x57\x45\x41\x4b\x26\x26\x21\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x61\x29\x29\x72\x65\x74\x75\x72\x6e\x20\x4b\x45\x59\x3d\x3d\x22\x67\x65\x74\x22\x3f\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3a\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x74\x68\x69\x73\x2e\x5f\x63\x5b\x4b\x45\x59\x5d\x28\x61\x3d\x3d\x3d\x30\x3f\x30\x3a\x61\x2c\x62\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x49\x53\x5f\x41\x44\x44\x45\x52\x3f\x74\x68\x69\x73\x3a\x72\x65\x73\x75\x6c\x74\x7d\x29\x7d\x29\x3b\x49\x53\x5f\x57\x45\x41\x4b\x7c\x7c\x64\x50\x28\x43\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x22\x73\x69\x7a\x65\x22\x2c\x7b\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x5f\x63\x2e\x73\x69\x7a\x65\x7d\x7d\x29\x7d\x73\x65\x74\x54\x6f\x53\x74\x72\x69\x6e\x67\x54\x61\x67\x28\x43\x2c\x4e\x41\x4d\x45\x29\x3b\x4f\x5b\x4e\x41\x4d\x45\x5d\x3d\x43\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x47\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x57\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x46\x2c\x4f\x29\x3b\x69\x66\x28\x21\x49\x53\x5f\x57\x45\x41\x4b\x29\x63\x6f\x6d\x6d\x6f\x6e\x2e\x73\x65\x74\x53\x74\x72\x6f\x6e\x67\x28\x43\x2c\x4e\x41\x4d\x45\x2c\x49\x53\x5f\x4d\x41\x50\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x29\x3b\x76\x61\x72\x20\x49\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x30\x35\x29\x3b\x76\x61\x72\x20\x74\x6f\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x30\x29\x3b\x76\x61\x72\x20\x74\x6f\x4c\x65\x6e\x67\x74\x68\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x33\x29\x3b\x76\x61\x72\x20\x61\x73\x63\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x32\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x54\x59\x50\x45\x2c\x24\x63\x72\x65\x61\x74\x65\x29\x7b\x76\x61\x72\x20\x49\x53\x5f\x4d\x41\x50\x3d\x54\x59\x50\x45\x3d\x3d\x31\x3b\x76\x61\x72\x20\x49\x53\x5f\x46\x49\x4c\x54\x45\x52\x3d\x54\x59\x50\x45\x3d\x3d\x32\x3b\x76\x61\x72\x20\x49\x53\x5f\x53\x4f\x4d\x45\x3d\x54\x59\x50\x45\x3d\x3d\x33\x3b\x76\x61\x72\x20\x49\x53\x5f\x45\x56\x45\x52\x59\x3d\x54\x59\x50\x45\x3d\x3d\x34\x3b\x76\x61\x72\x20\x49\x53\x5f\x46\x49\x4e\x44\x5f\x49\x4e\x44\x45\x58\x3d\x54\x59\x50\x45\x3d\x3d\x36\x3b\x76\x61\x72\x20\x4e\x4f\x5f\x48\x4f\x4c\x45\x53\x3d\x54\x59\x50\x45\x3d\x3d\x35\x7c\x7c\x49\x53\x5f\x46\x49\x4e\x44\x5f\x49\x4e\x44\x45\x58\x3b\x76\x61\x72\x20\x63\x72\x65\x61\x74\x65\x3d\x24\x63\x72\x65\x61\x74\x65\x7c\x7c\x61\x73\x63\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x24\x74\x68\x69\x73\x2c\x63\x61\x6c\x6c\x62\x61\x63\x6b\x66\x6e\x2c\x74\x68\x61\x74\x29\x7b\x76\x61\x72\x20\x4f\x3d\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x24\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x73\x65\x6c\x66\x3d\x49\x4f\x62\x6a\x65\x63\x74\x28\x4f\x29\x3b\x76\x61\x72\x20\x66\x3d\x63\x74\x78\x28\x63\x61\x6c\x6c\x62\x61\x63\x6b\x66\x6e\x2c\x74\x68\x61\x74\x2c\x33\x29\x3b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x74\x6f\x4c\x65\x6e\x67\x74\x68\x28\x73\x65\x6c\x66\x2e\x6c\x65\x6e\x67\x74\x68\x29\x3b\x76\x61\x72\x20\x69\x6e\x64\x65\x78\x3d\x30\x3b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x49\x53\x5f\x4d\x41\x50\x3f\x63\x72\x65\x61\x74\x65\x28\x24\x74\x68\x69\x73\x2c\x6c\x65\x6e\x67\x74\x68\x29\x3a\x49\x53\x5f\x46\x49\x4c\x54\x45\x52\x3f\x63\x72\x65\x61\x74\x65\x28\x24\x74\x68\x69\x73\x2c\x30\x29\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x76\x61\x6c\x2c\x72\x65\x73\x3b\x66\x6f\x72\x28\x3b\x6c\x65\x6e\x67\x74\x68\x3e\x69\x6e\x64\x65\x78\x3b\x69\x6e\x64\x65\x78\x2b\x2b\x29\x69\x66\x28\x4e\x4f\x5f\x48\x4f\x4c\x45\x53\x7c\x7c\x69\x6e\x64\x65\x78\x20\x69\x6e\x20\x73\x65\x6c\x66\x29\x7b\x76\x61\x6c\x3d\x73\x65\x6c\x66\x5b\x69\x6e\x64\x65\x78\x5d\x3b\x72\x65\x73\x3d\x66\x28\x76\x61\x6c\x2c\x69\x6e\x64\x65\x78\x2c\x4f\x29\x3b\x69\x66\x28\x54\x59\x50\x45\x29\x7b\x69\x66\x28\x49\x53\x5f\x4d\x41\x50\x29\x72\x65\x73\x75\x6c\x74\x5b\x69\x6e\x64\x65\x78\x5d\x3d\x72\x65\x73\x3b\x65\x6c\x73\x65\x20\x69\x66\x28\x72\x65\x73\x29\x73\x77\x69\x74\x63\x68\x28\x54\x59\x50\x45\x29\x7b\x63\x61\x73\x65\x20\x33\x3a\x72\x65\x74\x75\x72\x6e\x20\x74\x72\x75\x65\x3b\x63\x61\x73\x65\x20\x35\x3a\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x3b\x63\x61\x73\x65\x20\x36\x3a\x72\x65\x74\x75\x72\x6e\x20\x69\x6e\x64\x65\x78\x3b\x63\x61\x73\x65\x20\x32\x3a\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x28\x76\x61\x6c\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x49\x53\x5f\x45\x56\x45\x52\x59\x29\x72\x65\x74\x75\x72\x6e\x20\x66\x61\x6c\x73\x65\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x49\x53\x5f\x46\x49\x4e\x44\x5f\x49\x4e\x44\x45\x58\x3f\x2d\x31\x3a\x49\x53\x5f\x53\x4f\x4d\x45\x7c\x7c\x49\x53\x5f\x45\x56\x45\x52\x59\x3f\x49\x53\x5f\x45\x56\x45\x52\x59\x3a\x72\x65\x73\x75\x6c\x74\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x72\x69\x67\x69\x6e\x61\x6c\x2c\x6c\x65\x6e\x67\x74\x68\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x28\x73\x70\x65\x63\x69\x65\x73\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x28\x6f\x72\x69\x67\x69\x6e\x61\x6c\x29\x29\x28\x6c\x65\x6e\x67\x74\x68\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x62\x6a\x65\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x29\x3b\x76\x61\x72\x20\x69\x73\x41\x72\x72\x61\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x38\x31\x29\x3b\x76\x61\x72\x20\x53\x50\x45\x43\x49\x45\x53\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x34\x29\x28\x22\x73\x70\x65\x63\x69\x65\x73\x22\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x72\x69\x67\x69\x6e\x61\x6c\x29\x7b\x76\x61\x72\x20\x43\x3b\x69\x66\x28\x69\x73\x41\x72\x72\x61\x79\x28\x6f\x72\x69\x67\x69\x6e\x61\x6c\x29\x29\x7b\x43\x3d\x6f\x72\x69\x67\x69\x6e\x61\x6c\x2e\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x43\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x26\x26\x28\x43\x3d\x3d\x3d\x41\x72\x72\x61\x79\x7c\x7c\x69\x73\x41\x72\x72\x61\x79\x28\x43\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x29\x29\x29\x43\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x69\x73\x4f\x62\x6a\x65\x63\x74\x28\x43\x29\x29\x7b\x43\x3d\x43\x5b\x53\x50\x45\x43\x49\x45\x53\x5d\x3b\x69\x66\x28\x43\x3d\x3d\x3d\x6e\x75\x6c\x6c\x29\x43\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x43\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x41\x72\x72\x61\x79\x3a\x43\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x50\x2b\x24\x65\x78\x70\x6f\x72\x74\x2e\x52\x2c\x22\x4d\x61\x70\x22\x2c\x7b\x74\x6f\x4a\x53\x4f\x4e\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x35\x29\x28\x22\x4d\x61\x70\x22\x29\x7d\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x6f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x35\x29\x3b\x76\x61\x72\x20\x66\x72\x6f\x6d\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x36\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x4e\x41\x4d\x45\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x4a\x53\x4f\x4e\x28\x29\x7b\x69\x66\x28\x63\x6c\x61\x73\x73\x6f\x66\x28\x74\x68\x69\x73\x29\x21\x3d\x4e\x41\x4d\x45\x29\x74\x68\x72\x6f\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6f\x72\x28\x4e\x41\x4d\x45\x2b\x22\x23\x74\x6f\x4a\x53\x4f\x4e\x20\x69\x73\x6e\x27\x74\x20\x67\x65\x6e\x65\x72\x69\x63\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x66\x72\x6f\x6d\x28\x74\x68\x69\x73\x29\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x66\x6f\x72\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x35\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x72\x2c\x49\x54\x45\x52\x41\x54\x4f\x52\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x75\x6c\x74\x3d\x5b\x5d\x3b\x66\x6f\x72\x4f\x66\x28\x69\x74\x65\x72\x2c\x66\x61\x6c\x73\x65\x2c\x72\x65\x73\x75\x6c\x74\x2e\x70\x75\x73\x68\x2c\x72\x65\x73\x75\x6c\x74\x2c\x49\x54\x45\x52\x41\x54\x4f\x52\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x72\x65\x73\x75\x6c\x74\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x30\x38\x29\x28\x22\x4d\x61\x70\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x4f\x4c\x4c\x45\x43\x54\x49\x4f\x4e\x29\x7b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2c\x43\x4f\x4c\x4c\x45\x43\x54\x49\x4f\x4e\x2c\x7b\x6f\x66\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x66\x28\x29\x7b\x76\x61\x72\x20\x6c\x65\x6e\x67\x74\x68\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3b\x76\x61\x72\x20\x41\x3d\x6e\x65\x77\x20\x41\x72\x72\x61\x79\x28\x6c\x65\x6e\x67\x74\x68\x29\x3b\x77\x68\x69\x6c\x65\x28\x6c\x65\x6e\x67\x74\x68\x2d\x2d\x29\x41\x5b\x6c\x65\x6e\x67\x74\x68\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x6c\x65\x6e\x67\x74\x68\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x74\x68\x69\x73\x28\x41\x29\x7d\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x30\x29\x28\x22\x4d\x61\x70\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x76\x61\x72\x20\x24\x65\x78\x70\x6f\x72\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x33\x29\x3b\x76\x61\x72\x20\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x29\x3b\x76\x61\x72\x20\x63\x74\x78\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x32\x29\x3b\x76\x61\x72\x20\x66\x6f\x72\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x35\x29\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x43\x4f\x4c\x4c\x45\x43\x54\x49\x4f\x4e\x29\x7b\x24\x65\x78\x70\x6f\x72\x74\x28\x24\x65\x78\x70\x6f\x72\x74\x2e\x53\x2c\x43\x4f\x4c\x4c\x45\x43\x54\x49\x4f\x4e\x2c\x7b\x66\x72\x6f\x6d\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x66\x72\x6f\x6d\x28\x73\x6f\x75\x72\x63\x65\x29\x7b\x76\x61\x72\x20\x6d\x61\x70\x46\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3b\x76\x61\x72\x20\x6d\x61\x70\x70\x69\x6e\x67\x2c\x41\x2c\x6e\x2c\x63\x62\x3b\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x68\x69\x73\x29\x3b\x6d\x61\x70\x70\x69\x6e\x67\x3d\x6d\x61\x70\x46\x6e\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x69\x66\x28\x6d\x61\x70\x70\x69\x6e\x67\x29\x61\x46\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x61\x70\x46\x6e\x29\x3b\x69\x66\x28\x73\x6f\x75\x72\x63\x65\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x74\x68\x69\x73\x3b\x41\x3d\x5b\x5d\x3b\x69\x66\x28\x6d\x61\x70\x70\x69\x6e\x67\x29\x7b\x6e\x3d\x30\x3b\x63\x62\x3d\x63\x74\x78\x28\x6d\x61\x70\x46\x6e\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x32\x5d\x2c\x32\x29\x3b\x66\x6f\x72\x4f\x66\x28\x73\x6f\x75\x72\x63\x65\x2c\x66\x61\x6c\x73\x65\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x65\x78\x74\x49\x74\x65\x6d\x29\x7b\x41\x2e\x70\x75\x73\x68\x28\x63\x62\x28\x6e\x65\x78\x74\x49\x74\x65\x6d\x2c\x6e\x2b\x2b\x29\x29\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x66\x6f\x72\x4f\x66\x28\x73\x6f\x75\x72\x63\x65\x2c\x66\x61\x6c\x73\x65\x2c\x41\x2e\x70\x75\x73\x68\x2c\x41\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x65\x77\x20\x74\x68\x69\x73\x28\x41\x29\x7d\x7d\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x55\x6e\x6c\x65\x73\x73\x4c\x69\x73\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x55\x6e\x6c\x65\x73\x73\x4c\x69\x73\x74\x28\x69\x6e\x70\x75\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x69\x6e\x70\x75\x74\x29\x3f\x69\x6e\x70\x75\x74\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x69\x6e\x70\x75\x74\x29\x7d\x3b\x76\x61\x72\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x28\x70\x72\x6f\x70\x73\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x29\x29\x3b\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x2e\x63\x61\x6c\x6c\x28\x5f\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x45\x78\x61\x6d\x70\x6c\x65\x3d\x5f\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x43\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x56\x61\x6c\x75\x65\x28\x29\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x3a\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x2c\x6c\x61\x73\x74\x44\x6f\x77\x6e\x73\x74\x72\x65\x61\x6d\x56\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x45\x78\x61\x6d\x70\x6c\x65\x2c\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x53\x65\x6c\x65\x63\x74\x65\x64\x3a\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x21\x3d\x3d\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x45\x78\x61\x6d\x70\x6c\x65\x7d\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x73\x2c\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x3d\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x28\x29\x2c\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x3d\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x2e\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x2c\x6c\x61\x73\x74\x44\x6f\x77\x6e\x73\x74\x72\x65\x61\x6d\x56\x61\x6c\x75\x65\x3d\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x2e\x6c\x61\x73\x74\x44\x6f\x77\x6e\x73\x74\x72\x65\x61\x6d\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x43\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x3d\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x56\x61\x6c\x75\x65\x46\x6f\x72\x45\x78\x61\x6d\x70\x6c\x65\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x4b\x65\x79\x2c\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x3b\x76\x61\x72\x20\x65\x78\x61\x6d\x70\x6c\x65\x4d\x61\x74\x63\x68\x69\x6e\x67\x4e\x65\x77\x56\x61\x6c\x75\x65\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x66\x69\x6e\x64\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x61\x6d\x70\x6c\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x78\x61\x6d\x70\x6c\x65\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x3d\x3d\x3d\x6e\x65\x77\x56\x61\x6c\x75\x65\x7c\x7c\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x65\x78\x61\x6d\x70\x6c\x65\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x29\x3d\x3d\x3d\x6e\x65\x77\x56\x61\x6c\x75\x65\x7d\x29\x3b\x69\x66\x28\x65\x78\x61\x6d\x70\x6c\x65\x4d\x61\x74\x63\x68\x69\x6e\x67\x4e\x65\x77\x56\x61\x6c\x75\x65\x29\x7b\x6f\x6e\x53\x65\x6c\x65\x63\x74\x28\x65\x78\x61\x6d\x70\x6c\x65\x73\x2e\x6b\x65\x79\x4f\x66\x28\x65\x78\x61\x6d\x70\x6c\x65\x4d\x61\x74\x63\x68\x69\x6e\x67\x4e\x65\x77\x56\x61\x6c\x75\x65\x29\x2c\x7b\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x3a\x74\x72\x75\x65\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x6e\x65\x77\x56\x61\x6c\x75\x65\x21\x3d\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x26\x26\x6e\x65\x77\x56\x61\x6c\x75\x65\x21\x3d\x3d\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x26\x26\x6e\x65\x77\x56\x61\x6c\x75\x65\x21\x3d\x3d\x6c\x61\x73\x74\x44\x6f\x77\x6e\x73\x74\x72\x65\x61\x6d\x56\x61\x6c\x75\x65\x29\x7b\x74\x68\x69\x73\x2e\x5f\x73\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x7b\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x3a\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x2c\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x53\x65\x6c\x65\x63\x74\x65\x64\x3a\x6e\x65\x77\x56\x61\x6c\x75\x65\x21\x3d\x3d\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x43\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x7d\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x4b\x65\x79\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x4b\x65\x79\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x32\x3d\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x28\x29\x2c\x6c\x61\x73\x74\x44\x6f\x77\x6e\x73\x74\x72\x65\x61\x6d\x56\x61\x6c\x75\x65\x3d\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x32\x2e\x6c\x61\x73\x74\x44\x6f\x77\x6e\x73\x74\x72\x65\x61\x6d\x56\x61\x6c\x75\x65\x2c\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x3d\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x32\x2e\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x2c\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x53\x65\x6c\x65\x63\x74\x65\x64\x3d\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x32\x2e\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x53\x65\x6c\x65\x63\x74\x65\x64\x3b\x76\x61\x72\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x2c\x7b\x65\x78\x61\x6d\x70\x6c\x65\x73\x3a\x65\x78\x61\x6d\x70\x6c\x65\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3a\x63\x75\x72\x72\x65\x6e\x74\x4b\x65\x79\x2c\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3a\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x2c\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x41\x76\x61\x69\x6c\x61\x62\x6c\x65\x3a\x21\x21\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x26\x26\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x21\x3d\x3d\x6c\x61\x73\x74\x44\x6f\x77\x6e\x73\x74\x72\x65\x61\x6d\x56\x61\x6c\x75\x65\x2c\x69\x73\x56\x61\x6c\x75\x65\x4d\x6f\x64\x69\x66\x69\x65\x64\x3a\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x53\x65\x6c\x65\x63\x74\x65\x64\x26\x26\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x21\x3d\x3d\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x43\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x56\x61\x6c\x75\x65\x28\x29\x7d\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x65\x78\x61\x6d\x70\x6c\x65\x73\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x7d\x29\x2c\x63\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3a\x22\x5f\x5f\x44\x45\x46\x41\x55\x4c\x54\x5f\x5f\x4e\x41\x4d\x45\x53\x50\x41\x43\x45\x5f\x5f\x22\x2c\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x53\x65\x6c\x65\x63\x74\x28\x29\x7b\x76\x61\x72\x20\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x28\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x3d\x63\x6f\x6e\x73\x6f\x6c\x65\x29\x2e\x6c\x6f\x67\x2e\x61\x70\x70\x6c\x79\x28\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x2c\x5b\x22\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x3a\x20\x6e\x6f\x20\x60\x6f\x6e\x53\x65\x6c\x65\x63\x74\x60\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x61\x73\x20\x70\x72\x6f\x76\x69\x64\x65\x64\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x7d\x2c\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x28\x29\x7b\x76\x61\x72\x20\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x32\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x32\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x32\x29\x2c\x5f\x6b\x65\x79\x32\x3d\x30\x3b\x5f\x6b\x65\x79\x32\x3c\x5f\x6c\x65\x6e\x32\x3b\x5f\x6b\x65\x79\x32\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x7d\x72\x65\x74\x75\x72\x6e\x28\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x32\x3d\x63\x6f\x6e\x73\x6f\x6c\x65\x29\x2e\x6c\x6f\x67\x2e\x61\x70\x70\x6c\x79\x28\x5f\x63\x6f\x6e\x73\x6f\x6c\x65\x32\x2c\x5b\x22\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x3a\x20\x6e\x6f\x20\x60\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x60\x20\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x61\x73\x20\x70\x72\x6f\x76\x69\x64\x65\x64\x22\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x7d\x7d\x3b\x76\x61\x72\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3b\x72\x65\x74\x75\x72\x6e\x28\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x5b\x63\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x5d\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x29\x2e\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x29\x7d\x3b\x74\x68\x69\x73\x2e\x5f\x73\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x62\x6a\x29\x7b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x2e\x5f\x73\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x28\x63\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x6f\x62\x6a\x29\x7d\x3b\x74\x68\x69\x73\x2e\x5f\x73\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x6f\x62\x6a\x29\x7b\x76\x61\x72\x20\x6f\x6c\x64\x53\x74\x61\x74\x65\x46\x6f\x72\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x5b\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x5d\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x3b\x76\x61\x72\x20\x6e\x65\x77\x53\x74\x61\x74\x65\x46\x6f\x72\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x3d\x6f\x6c\x64\x53\x74\x61\x74\x65\x46\x6f\x72\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x2e\x6d\x65\x72\x67\x65\x44\x65\x65\x70\x28\x6f\x62\x6a\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6e\x61\x6d\x65\x73\x70\x61\x63\x65\x2c\x6e\x65\x77\x53\x74\x61\x74\x65\x46\x6f\x72\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x29\x29\x7d\x3b\x74\x68\x69\x73\x2e\x5f\x69\x73\x43\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x53\x61\x6d\x65\x41\x73\x45\x78\x61\x6d\x70\x6c\x65\x56\x61\x6c\x75\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x45\x78\x61\x6d\x70\x6c\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x5f\x67\x65\x74\x43\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x56\x61\x6c\x75\x65\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x45\x78\x61\x6d\x70\x6c\x65\x3d\x3d\x3d\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x7d\x3b\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x56\x61\x6c\x75\x65\x46\x6f\x72\x45\x78\x61\x6d\x70\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x2c\x70\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3d\x70\x72\x6f\x70\x73\x7c\x7c\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x3d\x5f\x72\x65\x66\x2e\x65\x78\x61\x6d\x70\x6c\x65\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x55\x6e\x6c\x65\x73\x73\x4c\x69\x73\x74\x28\x28\x65\x78\x61\x6d\x70\x6c\x65\x73\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x7d\x29\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x65\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x2c\x22\x76\x61\x6c\x75\x65\x22\x5d\x29\x29\x7d\x3b\x74\x68\x69\x73\x2e\x5f\x67\x65\x74\x43\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x56\x61\x6c\x75\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x32\x3d\x70\x72\x6f\x70\x73\x7c\x7c\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x4b\x65\x79\x3d\x5f\x72\x65\x66\x32\x2e\x63\x75\x72\x72\x65\x6e\x74\x4b\x65\x79\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x2e\x5f\x67\x65\x74\x56\x61\x6c\x75\x65\x46\x6f\x72\x45\x78\x61\x6d\x70\x6c\x65\x28\x63\x75\x72\x72\x65\x6e\x74\x4b\x65\x79\x2c\x70\x72\x6f\x70\x73\x7c\x7c\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x29\x7d\x3b\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x33\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x6f\x74\x68\x65\x72\x41\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x33\x3e\x32\x3f\x5f\x6c\x65\x6e\x33\x2d\x32\x3a\x30\x29\x2c\x5f\x6b\x65\x79\x33\x3d\x32\x3b\x5f\x6b\x65\x79\x33\x3c\x5f\x6c\x65\x6e\x33\x3b\x5f\x6b\x65\x79\x33\x2b\x2b\x29\x7b\x6f\x74\x68\x65\x72\x41\x72\x67\x73\x5b\x5f\x6b\x65\x79\x33\x2d\x32\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x33\x5d\x7d\x76\x61\x72\x20\x5f\x72\x65\x66\x33\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x7b\x7d\x2c\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x3d\x5f\x72\x65\x66\x33\x2e\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x6f\x6e\x53\x65\x6c\x65\x63\x74\x2c\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x2c\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x33\x3d\x5f\x74\x68\x69\x73\x32\x2e\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x28\x29\x2c\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x3d\x5f\x67\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x33\x2e\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x45\x78\x61\x6d\x70\x6c\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x5f\x67\x65\x74\x56\x61\x6c\x75\x65\x46\x6f\x72\x45\x78\x61\x6d\x70\x6c\x65\x28\x6b\x65\x79\x29\x3b\x69\x66\x28\x6b\x65\x79\x3d\x3d\x3d\x22\x5f\x5f\x4d\x4f\x44\x49\x46\x49\x45\x44\x5f\x5f\x56\x41\x4c\x55\x45\x5f\x5f\x22\x29\x7b\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x28\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x55\x6e\x6c\x65\x73\x73\x4c\x69\x73\x74\x28\x6c\x61\x73\x74\x55\x73\x65\x72\x45\x64\x69\x74\x65\x64\x56\x61\x6c\x75\x65\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x2e\x5f\x73\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x28\x7b\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x53\x65\x6c\x65\x63\x74\x65\x64\x3a\x74\x72\x75\x65\x7d\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x6f\x6e\x53\x65\x6c\x65\x63\x74\x2e\x61\x70\x70\x6c\x79\x28\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x2c\x5b\x6b\x65\x79\x2c\x7b\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x3a\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x7d\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x6f\x74\x68\x65\x72\x41\x72\x67\x73\x29\x29\x7d\x5f\x74\x68\x69\x73\x32\x2e\x5f\x73\x65\x74\x53\x74\x61\x74\x65\x46\x6f\x72\x43\x75\x72\x72\x65\x6e\x74\x4e\x61\x6d\x65\x73\x70\x61\x63\x65\x28\x7b\x6c\x61\x73\x74\x44\x6f\x77\x6e\x73\x74\x72\x65\x61\x6d\x56\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x45\x78\x61\x6d\x70\x6c\x65\x2c\x69\x73\x4d\x6f\x64\x69\x66\x69\x65\x64\x56\x61\x6c\x75\x65\x53\x65\x6c\x65\x63\x74\x65\x64\x3a\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x26\x26\x21\x21\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x26\x26\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x21\x3d\x3d\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x45\x78\x61\x6d\x70\x6c\x65\x7d\x29\x3b\x69\x66\x28\x69\x73\x53\x79\x6e\x74\x68\x65\x74\x69\x63\x43\x68\x61\x6e\x67\x65\x29\x72\x65\x74\x75\x72\x6e\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x66\x75\x6e\x63\x74\x69\x6f\x6e\x22\x29\x7b\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x28\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x55\x6e\x6c\x65\x73\x73\x4c\x69\x73\x74\x28\x76\x61\x6c\x75\x65\x46\x72\x6f\x6d\x45\x78\x61\x6d\x70\x6c\x65\x29\x29\x7d\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x37\x29\x3b\x76\x61\x72\x20\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x6f\x61\x75\x74\x68\x32\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x31\x33\x29\x3b\x76\x61\x72\x20\x5f\x6f\x61\x75\x74\x68\x32\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x61\x75\x74\x68\x32\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x61\x75\x74\x68\x32\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x61\x75\x74\x68\x32\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x61\x75\x74\x68\x32\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x61\x75\x74\x68\x32\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x61\x75\x74\x68\x32\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x61\x75\x74\x68\x32\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x2e\x63\x61\x6c\x6c\x28\x5f\x74\x68\x69\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x3d\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x26\x26\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2e\x67\x65\x74\x28\x6e\x61\x6d\x65\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x7c\x7c\x7b\x7d\x3b\x76\x61\x72\x20\x75\x73\x65\x72\x6e\x61\x6d\x65\x3d\x61\x75\x74\x68\x26\x26\x61\x75\x74\x68\x2e\x67\x65\x74\x28\x22\x75\x73\x65\x72\x6e\x61\x6d\x65\x22\x29\x7c\x7c\x22\x22\x3b\x76\x61\x72\x20\x63\x6c\x69\x65\x6e\x74\x49\x64\x3d\x61\x75\x74\x68\x26\x26\x61\x75\x74\x68\x2e\x67\x65\x74\x28\x22\x63\x6c\x69\x65\x6e\x74\x49\x64\x22\x29\x7c\x7c\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x63\x6c\x69\x65\x6e\x74\x49\x64\x7c\x7c\x22\x22\x3b\x76\x61\x72\x20\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3d\x61\x75\x74\x68\x26\x26\x61\x75\x74\x68\x2e\x67\x65\x74\x28\x22\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x22\x29\x7c\x7c\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x7c\x7c\x22\x22\x3b\x76\x61\x72\x20\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x3d\x61\x75\x74\x68\x26\x26\x61\x75\x74\x68\x2e\x67\x65\x74\x28\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x22\x29\x7c\x7c\x22\x62\x61\x73\x69\x63\x22\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x61\x70\x70\x4e\x61\x6d\x65\x3a\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x61\x70\x70\x4e\x61\x6d\x65\x2c\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x73\x63\x6f\x70\x65\x73\x3a\x5b\x5d\x2c\x63\x6c\x69\x65\x6e\x74\x49\x64\x3a\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x3a\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x2c\x75\x73\x65\x72\x6e\x61\x6d\x65\x3a\x75\x73\x65\x72\x6e\x61\x6d\x65\x2c\x70\x61\x73\x73\x77\x6f\x72\x64\x3a\x22\x22\x2c\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x3a\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x61\x75\x74\x68\x32\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x49\x6e\x70\x75\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x70\x75\x74\x22\x29\x3b\x76\x61\x72\x20\x52\x6f\x77\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x52\x6f\x77\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x22\x29\x3b\x76\x61\x72\x20\x42\x75\x74\x74\x6f\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x42\x75\x74\x74\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x61\x75\x74\x68\x45\x72\x72\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x3b\x76\x61\x72\x20\x49\x4d\x50\x4c\x49\x43\x49\x54\x3d\x22\x69\x6d\x70\x6c\x69\x63\x69\x74\x22\x3b\x76\x61\x72\x20\x50\x41\x53\x53\x57\x4f\x52\x44\x3d\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x3b\x76\x61\x72\x20\x41\x43\x43\x45\x53\x53\x5f\x43\x4f\x44\x45\x3d\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x43\x6f\x64\x65\x22\x3a\x22\x61\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x22\x3b\x76\x61\x72\x20\x41\x50\x50\x4c\x49\x43\x41\x54\x49\x4f\x4e\x3d\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x22\x63\x6c\x69\x65\x6e\x74\x43\x72\x65\x64\x65\x6e\x74\x69\x61\x6c\x73\x22\x3a\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x22\x3b\x76\x61\x72\x20\x66\x6c\x6f\x77\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x66\x6c\x6f\x77\x22\x29\x3b\x76\x61\x72\x20\x73\x63\x6f\x70\x65\x73\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x61\x6c\x6c\x6f\x77\x65\x64\x53\x63\x6f\x70\x65\x73\x22\x29\x7c\x7c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x73\x63\x6f\x70\x65\x73\x22\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x41\x75\x74\x68\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x28\x29\x2e\x67\x65\x74\x28\x6e\x61\x6d\x65\x29\x3b\x76\x61\x72\x20\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x21\x21\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x41\x75\x74\x68\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x28\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x49\x64\x22\x29\x3d\x3d\x3d\x6e\x61\x6d\x65\x7d\x29\x3b\x76\x61\x72\x20\x69\x73\x56\x61\x6c\x69\x64\x3d\x21\x65\x72\x72\x6f\x72\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x73\x6f\x75\x72\x63\x65\x22\x29\x3d\x3d\x3d\x22\x76\x61\x6c\x69\x64\x61\x74\x69\x6f\x6e\x22\x7d\x29\x2e\x73\x69\x7a\x65\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x6e\x61\x6d\x65\x2c\x22\x20\x28\x4f\x41\x75\x74\x68\x32\x2c\x20\x22\x2c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x66\x6c\x6f\x77\x22\x29\x2c\x22\x29\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x7b\x70\x61\x74\x68\x3a\x5b\x22\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x7d\x29\x29\x2c\x21\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x61\x70\x70\x4e\x61\x6d\x65\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x35\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x3a\x20\x22\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x61\x70\x70\x4e\x61\x6d\x65\x2c\x22\x20\x22\x29\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x7d\x29\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x36\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x22\x29\x2c\x28\x66\x6c\x6f\x77\x3d\x3d\x3d\x49\x4d\x50\x4c\x49\x43\x49\x54\x7c\x7c\x66\x6c\x6f\x77\x3d\x3d\x3d\x41\x43\x43\x45\x53\x53\x5f\x43\x4f\x44\x45\x29\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x20\x55\x52\x4c\x3a\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x55\x72\x6c\x22\x29\x29\x29\x2c\x28\x66\x6c\x6f\x77\x3d\x3d\x3d\x50\x41\x53\x53\x57\x4f\x52\x44\x7c\x7c\x66\x6c\x6f\x77\x3d\x3d\x3d\x41\x43\x43\x45\x53\x53\x5f\x43\x4f\x44\x45\x7c\x7c\x66\x6c\x6f\x77\x3d\x3d\x3d\x41\x50\x50\x4c\x49\x43\x41\x54\x49\x4f\x4e\x29\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x54\x6f\x6b\x65\x6e\x20\x55\x52\x4c\x3a\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x22\x2c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x6f\x6b\x65\x6e\x55\x72\x6c\x22\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x66\x6c\x6f\x77\x22\x7d\x2c\x22\x46\x6c\x6f\x77\x3a\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x66\x6c\x6f\x77\x22\x29\x29\x29\x2c\x66\x6c\x6f\x77\x21\x3d\x3d\x50\x41\x53\x53\x57\x4f\x52\x44\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x7b\x68\x74\x6d\x6c\x46\x6f\x72\x3a\x22\x6f\x61\x75\x74\x68\x5f\x75\x73\x65\x72\x6e\x61\x6d\x65\x22\x7d\x2c\x22\x75\x73\x65\x72\x6e\x61\x6d\x65\x3a\x22\x29\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x22\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x75\x73\x65\x72\x6e\x61\x6d\x65\x2c\x22\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x74\x61\x62\x6c\x65\x74\x3a\x31\x30\x2c\x64\x65\x73\x6b\x74\x6f\x70\x3a\x31\x30\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6e\x70\x75\x74\x22\x2c\x7b\x69\x64\x3a\x22\x6f\x61\x75\x74\x68\x5f\x75\x73\x65\x72\x6e\x61\x6d\x65\x22\x2c\x74\x79\x70\x65\x3a\x22\x74\x65\x78\x74\x22\x2c\x22\x64\x61\x74\x61\x2d\x6e\x61\x6d\x65\x22\x3a\x22\x75\x73\x65\x72\x6e\x61\x6d\x65\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x49\x6e\x70\x75\x74\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x7b\x68\x74\x6d\x6c\x46\x6f\x72\x3a\x22\x6f\x61\x75\x74\x68\x5f\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x7d\x2c\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x3a\x22\x29\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x2a\x2a\x2a\x2a\x2a\x2a\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x74\x61\x62\x6c\x65\x74\x3a\x31\x30\x2c\x64\x65\x73\x6b\x74\x6f\x70\x3a\x31\x30\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6e\x70\x75\x74\x22\x2c\x7b\x69\x64\x3a\x22\x6f\x61\x75\x74\x68\x5f\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x74\x79\x70\x65\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x22\x64\x61\x74\x61\x2d\x6e\x61\x6d\x65\x22\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x49\x6e\x70\x75\x74\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x7b\x68\x74\x6d\x6c\x46\x6f\x72\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x5f\x74\x79\x70\x65\x22\x7d\x2c\x22\x43\x6c\x69\x65\x6e\x74\x20\x63\x72\x65\x64\x65\x6e\x74\x69\x61\x6c\x73\x20\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x3a\x22\x29\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x22\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x2c\x22\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x74\x61\x62\x6c\x65\x74\x3a\x31\x30\x2c\x64\x65\x73\x6b\x74\x6f\x70\x3a\x31\x30\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x6c\x65\x63\x74\x22\x2c\x7b\x69\x64\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x5f\x74\x79\x70\x65\x22\x2c\x22\x64\x61\x74\x61\x2d\x6e\x61\x6d\x65\x22\x3a\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x54\x79\x70\x65\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x49\x6e\x70\x75\x74\x43\x68\x61\x6e\x67\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x22\x62\x61\x73\x69\x63\x22\x7d\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x20\x68\x65\x61\x64\x65\x72\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x22\x72\x65\x71\x75\x65\x73\x74\x2d\x62\x6f\x64\x79\x22\x7d\x2c\x22\x52\x65\x71\x75\x65\x73\x74\x20\x62\x6f\x64\x79\x22\x29\x29\x29\x29\x29\x2c\x28\x66\x6c\x6f\x77\x3d\x3d\x3d\x41\x50\x50\x4c\x49\x43\x41\x54\x49\x4f\x4e\x7c\x7c\x66\x6c\x6f\x77\x3d\x3d\x3d\x49\x4d\x50\x4c\x49\x43\x49\x54\x7c\x7c\x66\x6c\x6f\x77\x3d\x3d\x3d\x41\x43\x43\x45\x53\x53\x5f\x43\x4f\x44\x45\x7c\x7c\x66\x6c\x6f\x77\x3d\x3d\x3d\x50\x41\x53\x53\x57\x4f\x52\x44\x29\x26\x26\x28\x21\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x7c\x7c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x26\x26\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x63\x6c\x69\x65\x6e\x74\x49\x64\x29\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x7b\x68\x74\x6d\x6c\x46\x6f\x72\x3a\x22\x63\x6c\x69\x65\x6e\x74\x5f\x69\x64\x22\x7d\x2c\x22\x63\x6c\x69\x65\x6e\x74\x5f\x69\x64\x3a\x22\x29\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x2a\x2a\x2a\x2a\x2a\x2a\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x74\x61\x62\x6c\x65\x74\x3a\x31\x30\x2c\x64\x65\x73\x6b\x74\x6f\x70\x3a\x31\x30\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6e\x70\x75\x74\x22\x2c\x7b\x69\x64\x3a\x22\x63\x6c\x69\x65\x6e\x74\x5f\x69\x64\x22\x2c\x74\x79\x70\x65\x3a\x22\x74\x65\x78\x74\x22\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x66\x6c\x6f\x77\x3d\x3d\x3d\x50\x41\x53\x53\x57\x4f\x52\x44\x2c\x76\x61\x6c\x75\x65\x3a\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x63\x6c\x69\x65\x6e\x74\x49\x64\x2c\x22\x64\x61\x74\x61\x2d\x6e\x61\x6d\x65\x22\x3a\x22\x63\x6c\x69\x65\x6e\x74\x49\x64\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x49\x6e\x70\x75\x74\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x28\x66\x6c\x6f\x77\x3d\x3d\x3d\x41\x50\x50\x4c\x49\x43\x41\x54\x49\x4f\x4e\x7c\x7c\x66\x6c\x6f\x77\x3d\x3d\x3d\x41\x43\x43\x45\x53\x53\x5f\x43\x4f\x44\x45\x7c\x7c\x66\x6c\x6f\x77\x3d\x3d\x3d\x50\x41\x53\x53\x57\x4f\x52\x44\x29\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x7b\x68\x74\x6d\x6c\x46\x6f\x72\x3a\x22\x63\x6c\x69\x65\x6e\x74\x5f\x73\x65\x63\x72\x65\x74\x22\x7d\x2c\x22\x63\x6c\x69\x65\x6e\x74\x5f\x73\x65\x63\x72\x65\x74\x3a\x22\x29\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x2a\x2a\x2a\x2a\x2a\x2a\x20\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x74\x61\x62\x6c\x65\x74\x3a\x31\x30\x2c\x64\x65\x73\x6b\x74\x6f\x70\x3a\x31\x30\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6e\x70\x75\x74\x22\x2c\x7b\x69\x64\x3a\x22\x63\x6c\x69\x65\x6e\x74\x5f\x73\x65\x63\x72\x65\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x2c\x74\x79\x70\x65\x3a\x22\x74\x65\x78\x74\x22\x2c\x22\x64\x61\x74\x61\x2d\x6e\x61\x6d\x65\x22\x3a\x22\x63\x6c\x69\x65\x6e\x74\x53\x65\x63\x72\x65\x74\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x49\x6e\x70\x75\x74\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x29\x2c\x21\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x26\x26\x73\x63\x6f\x70\x65\x73\x26\x26\x73\x63\x6f\x70\x65\x73\x2e\x73\x69\x7a\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x73\x63\x6f\x70\x65\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x32\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x53\x63\x6f\x70\x65\x73\x3a\x22\x29\x2c\x73\x63\x6f\x70\x65\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2c\x6e\x61\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x7b\x6b\x65\x79\x3a\x6e\x61\x6d\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x68\x65\x63\x6b\x62\x6f\x78\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x22\x64\x61\x74\x61\x2d\x76\x61\x6c\x75\x65\x22\x3a\x6e\x61\x6d\x65\x2c\x69\x64\x3a\x6e\x61\x6d\x65\x2b\x22\x2d\x22\x2b\x66\x6c\x6f\x77\x2b\x22\x2d\x63\x68\x65\x63\x6b\x62\x6f\x78\x2d\x22\x2b\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x2e\x6e\x61\x6d\x65\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x74\x79\x70\x65\x3a\x22\x63\x68\x65\x63\x6b\x62\x6f\x78\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x53\x63\x6f\x70\x65\x43\x68\x61\x6e\x67\x65\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x7b\x68\x74\x6d\x6c\x46\x6f\x72\x3a\x6e\x61\x6d\x65\x2b\x22\x2d\x22\x2b\x66\x6c\x6f\x77\x2b\x22\x2d\x63\x68\x65\x63\x6b\x62\x6f\x78\x2d\x22\x2b\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x2e\x6e\x61\x6d\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x74\x65\x6d\x22\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x65\x78\x74\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6e\x61\x6d\x65\x22\x7d\x2c\x6e\x61\x6d\x65\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x29\x29\x29\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x65\x72\x72\x6f\x72\x73\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x45\x72\x72\x6f\x72\x2c\x7b\x65\x72\x72\x6f\x72\x3a\x65\x72\x72\x6f\x72\x2c\x6b\x65\x79\x3a\x6b\x65\x79\x7d\x29\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x61\x75\x74\x68\x2d\x62\x74\x6e\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x69\x73\x56\x61\x6c\x69\x64\x26\x26\x28\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x6d\x6f\x64\x61\x6c\x2d\x62\x74\x6e\x20\x61\x75\x74\x68\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x6c\x6f\x67\x6f\x75\x74\x7d\x2c\x22\x4c\x6f\x67\x6f\x75\x74\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x6d\x6f\x64\x61\x6c\x2d\x62\x74\x6e\x20\x61\x75\x74\x68\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x7d\x2c\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x6d\x6f\x64\x61\x6c\x2d\x62\x74\x6e\x20\x61\x75\x74\x68\x20\x62\x74\x6e\x2d\x64\x6f\x6e\x65\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x63\x6c\x6f\x73\x65\x7d\x2c\x22\x43\x6c\x6f\x73\x65\x22\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x61\x75\x74\x68\x32\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x33\x3d\x74\x68\x69\x73\x3b\x74\x68\x69\x73\x2e\x63\x6c\x6f\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x65\x2e\x70\x72\x65\x76\x65\x6e\x74\x44\x65\x66\x61\x75\x6c\x74\x28\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x33\x2e\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3b\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x66\x61\x6c\x73\x65\x29\x7d\x3b\x74\x68\x69\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x5f\x74\x68\x69\x73\x33\x2e\x70\x72\x6f\x70\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x63\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x3b\x76\x61\x72\x20\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x28\x7b\x61\x75\x74\x68\x49\x64\x3a\x6e\x61\x6d\x65\x2c\x74\x79\x70\x65\x3a\x22\x61\x75\x74\x68\x22\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x61\x75\x74\x68\x22\x7d\x29\x3b\x28\x30\x2c\x5f\x6f\x61\x75\x74\x68\x32\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x61\x75\x74\x68\x3a\x5f\x74\x68\x69\x73\x33\x2e\x73\x74\x61\x74\x65\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3a\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3a\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x63\x6f\x6e\x66\x69\x67\x73\x3a\x63\x6f\x6e\x66\x69\x67\x73\x2c\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x3a\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x7d\x29\x7d\x3b\x74\x68\x69\x73\x2e\x6f\x6e\x53\x63\x6f\x70\x65\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x3b\x76\x61\x72\x20\x63\x68\x65\x63\x6b\x65\x64\x3d\x74\x61\x72\x67\x65\x74\x2e\x63\x68\x65\x63\x6b\x65\x64\x3b\x76\x61\x72\x20\x73\x63\x6f\x70\x65\x3d\x74\x61\x72\x67\x65\x74\x2e\x64\x61\x74\x61\x73\x65\x74\x2e\x76\x61\x6c\x75\x65\x3b\x69\x66\x28\x63\x68\x65\x63\x6b\x65\x64\x26\x26\x5f\x74\x68\x69\x73\x33\x2e\x73\x74\x61\x74\x65\x2e\x73\x63\x6f\x70\x65\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x73\x63\x6f\x70\x65\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x76\x61\x72\x20\x6e\x65\x77\x53\x63\x6f\x70\x65\x73\x3d\x5f\x74\x68\x69\x73\x33\x2e\x73\x74\x61\x74\x65\x2e\x73\x63\x6f\x70\x65\x73\x2e\x63\x6f\x6e\x63\x61\x74\x28\x5b\x73\x63\x6f\x70\x65\x5d\x29\x3b\x5f\x74\x68\x69\x73\x33\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x73\x63\x6f\x70\x65\x73\x3a\x6e\x65\x77\x53\x63\x6f\x70\x65\x73\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x21\x63\x68\x65\x63\x6b\x65\x64\x26\x26\x5f\x74\x68\x69\x73\x33\x2e\x73\x74\x61\x74\x65\x2e\x73\x63\x6f\x70\x65\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x73\x63\x6f\x70\x65\x29\x3e\x2d\x31\x29\x7b\x5f\x74\x68\x69\x73\x33\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x73\x63\x6f\x70\x65\x73\x3a\x5f\x74\x68\x69\x73\x33\x2e\x73\x74\x61\x74\x65\x2e\x73\x63\x6f\x70\x65\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x76\x61\x6c\x21\x3d\x3d\x73\x63\x6f\x70\x65\x7d\x29\x7d\x29\x7d\x7d\x3b\x74\x68\x69\x73\x2e\x6f\x6e\x49\x6e\x70\x75\x74\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x5f\x65\x24\x74\x61\x72\x67\x65\x74\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2c\x6e\x61\x6d\x65\x3d\x5f\x65\x24\x74\x61\x72\x67\x65\x74\x2e\x64\x61\x74\x61\x73\x65\x74\x2e\x6e\x61\x6d\x65\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x65\x24\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x28\x30\x2c\x5f\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6e\x61\x6d\x65\x2c\x76\x61\x6c\x75\x65\x29\x3b\x5f\x74\x68\x69\x73\x33\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x73\x74\x61\x74\x65\x29\x7d\x3b\x74\x68\x69\x73\x2e\x6c\x6f\x67\x6f\x75\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x65\x2e\x70\x72\x65\x76\x65\x6e\x74\x44\x65\x66\x61\x75\x6c\x74\x28\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x33\x3d\x5f\x74\x68\x69\x73\x33\x2e\x70\x72\x6f\x70\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x6e\x61\x6d\x65\x3b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x28\x7b\x61\x75\x74\x68\x49\x64\x3a\x6e\x61\x6d\x65\x2c\x74\x79\x70\x65\x3a\x22\x61\x75\x74\x68\x22\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x61\x75\x74\x68\x22\x7d\x29\x3b\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6c\x6f\x67\x6f\x75\x74\x28\x5b\x6e\x61\x6d\x65\x5d\x29\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x61\x75\x74\x68\x32\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x61\x75\x74\x68\x3d\x5f\x72\x65\x66\x2e\x61\x75\x74\x68\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x63\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x2e\x63\x6f\x6e\x66\x69\x67\x73\x2c\x5f\x72\x65\x66\x24\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x2e\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x2c\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x72\x65\x66\x24\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x7b\x7d\x3a\x5f\x72\x65\x66\x24\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x61\x75\x74\x68\x2e\x73\x63\x68\x65\x6d\x61\x2c\x73\x63\x6f\x70\x65\x73\x3d\x61\x75\x74\x68\x2e\x73\x63\x6f\x70\x65\x73\x2c\x6e\x61\x6d\x65\x3d\x61\x75\x74\x68\x2e\x6e\x61\x6d\x65\x2c\x63\x6c\x69\x65\x6e\x74\x49\x64\x3d\x61\x75\x74\x68\x2e\x63\x6c\x69\x65\x6e\x74\x49\x64\x3b\x76\x61\x72\x20\x66\x6c\x6f\x77\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x66\x6c\x6f\x77\x22\x29\x3b\x76\x61\x72\x20\x71\x75\x65\x72\x79\x3d\x5b\x5d\x3b\x73\x77\x69\x74\x63\x68\x28\x66\x6c\x6f\x77\x29\x7b\x63\x61\x73\x65\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x3a\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x50\x61\x73\x73\x77\x6f\x72\x64\x28\x61\x75\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x3b\x63\x61\x73\x65\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x22\x3a\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x28\x61\x75\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x3b\x63\x61\x73\x65\x22\x61\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x22\x3a\x71\x75\x65\x72\x79\x2e\x70\x75\x73\x68\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x5f\x74\x79\x70\x65\x3d\x63\x6f\x64\x65\x22\x29\x3b\x62\x72\x65\x61\x6b\x3b\x63\x61\x73\x65\x22\x69\x6d\x70\x6c\x69\x63\x69\x74\x22\x3a\x71\x75\x65\x72\x79\x2e\x70\x75\x73\x68\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x5f\x74\x79\x70\x65\x3d\x74\x6f\x6b\x65\x6e\x22\x29\x3b\x62\x72\x65\x61\x6b\x3b\x63\x61\x73\x65\x22\x63\x6c\x69\x65\x6e\x74\x43\x72\x65\x64\x65\x6e\x74\x69\x61\x6c\x73\x22\x3a\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x28\x61\x75\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x3b\x63\x61\x73\x65\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x43\x6f\x64\x65\x22\x3a\x71\x75\x65\x72\x79\x2e\x70\x75\x73\x68\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x5f\x74\x79\x70\x65\x3d\x63\x6f\x64\x65\x22\x29\x3b\x62\x72\x65\x61\x6b\x7d\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x63\x6c\x69\x65\x6e\x74\x49\x64\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x71\x75\x65\x72\x79\x2e\x70\x75\x73\x68\x28\x22\x63\x6c\x69\x65\x6e\x74\x5f\x69\x64\x3d\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x63\x6c\x69\x65\x6e\x74\x49\x64\x29\x29\x7d\x76\x61\x72\x20\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x3d\x63\x6f\x6e\x66\x69\x67\x73\x2e\x6f\x61\x75\x74\x68\x32\x52\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x28\x7b\x61\x75\x74\x68\x49\x64\x3a\x6e\x61\x6d\x65\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x76\x61\x6c\x69\x64\x61\x74\x69\x6f\x6e\x22\x2c\x6c\x65\x76\x65\x6c\x3a\x22\x65\x72\x72\x6f\x72\x22\x2c\x6d\x65\x73\x73\x61\x67\x65\x3a\x22\x6f\x61\x75\x74\x68\x32\x52\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x20\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x74\x69\x6f\x6e\x20\x69\x73\x20\x6e\x6f\x74\x20\x70\x61\x73\x73\x65\x64\x2e\x20\x4f\x61\x75\x74\x68\x32\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x20\x63\x61\x6e\x6e\x6f\x74\x20\x62\x65\x20\x70\x65\x72\x66\x6f\x72\x6d\x65\x64\x2e\x22\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x7d\x71\x75\x65\x72\x79\x2e\x70\x75\x73\x68\x28\x22\x72\x65\x64\x69\x72\x65\x63\x74\x5f\x75\x72\x69\x3d\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x29\x29\x3b\x69\x66\x28\x41\x72\x72\x61\x79\x2e\x69\x73\x41\x72\x72\x61\x79\x28\x73\x63\x6f\x70\x65\x73\x29\x26\x26\x30\x3c\x73\x63\x6f\x70\x65\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x73\x63\x6f\x70\x65\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x3d\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x63\x6f\x70\x65\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x7c\x7c\x22\x20\x22\x3b\x71\x75\x65\x72\x79\x2e\x70\x75\x73\x68\x28\x22\x73\x63\x6f\x70\x65\x3d\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x73\x63\x6f\x70\x65\x73\x2e\x6a\x6f\x69\x6e\x28\x73\x63\x6f\x70\x65\x53\x65\x70\x61\x72\x61\x74\x6f\x72\x29\x29\x29\x7d\x76\x61\x72\x20\x73\x74\x61\x74\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x62\x74\x6f\x61\x29\x28\x6e\x65\x77\x20\x44\x61\x74\x65\x29\x3b\x71\x75\x65\x72\x79\x2e\x70\x75\x73\x68\x28\x22\x73\x74\x61\x74\x65\x3d\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x73\x74\x61\x74\x65\x29\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x72\x65\x61\x6c\x6d\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x71\x75\x65\x72\x79\x2e\x70\x75\x73\x68\x28\x22\x72\x65\x61\x6c\x6d\x3d\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x72\x65\x61\x6c\x6d\x29\x29\x7d\x76\x61\x72\x20\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x3d\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x6b\x65\x79\x20\x69\x6e\x20\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x5b\x6b\x65\x79\x5d\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x71\x75\x65\x72\x79\x2e\x70\x75\x73\x68\x28\x5b\x6b\x65\x79\x2c\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x51\x75\x65\x72\x79\x53\x74\x72\x69\x6e\x67\x50\x61\x72\x61\x6d\x73\x5b\x6b\x65\x79\x5d\x5d\x2e\x6d\x61\x70\x28\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x3d\x22\x29\x29\x7d\x7d\x76\x61\x72\x20\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x55\x72\x6c\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x55\x72\x6c\x22\x29\x3b\x76\x61\x72\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x55\x72\x6c\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x55\x72\x6c\x29\x3b\x76\x61\x72\x20\x75\x72\x6c\x3d\x5b\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x55\x72\x6c\x2c\x71\x75\x65\x72\x79\x2e\x6a\x6f\x69\x6e\x28\x22\x26\x22\x29\x5d\x2e\x6a\x6f\x69\x6e\x28\x61\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e\x55\x72\x6c\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x3f\x22\x29\x3d\x3d\x3d\x2d\x31\x3f\x22\x3f\x22\x3a\x22\x26\x22\x29\x3b\x76\x61\x72\x20\x63\x61\x6c\x6c\x62\x61\x63\x6b\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x66\x6c\x6f\x77\x3d\x3d\x3d\x22\x69\x6d\x70\x6c\x69\x63\x69\x74\x22\x29\x7b\x63\x61\x6c\x6c\x62\x61\x63\x6b\x3d\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x70\x72\x65\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x49\x6d\x70\x6c\x69\x63\x69\x74\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x61\x75\x74\x68\x43\x6f\x6e\x66\x69\x67\x73\x2e\x75\x73\x65\x42\x61\x73\x69\x63\x41\x75\x74\x68\x65\x6e\x74\x69\x63\x61\x74\x69\x6f\x6e\x57\x69\x74\x68\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x47\x72\x61\x6e\x74\x29\x7b\x63\x61\x6c\x6c\x62\x61\x63\x6b\x3d\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x42\x61\x73\x69\x63\x41\x75\x74\x68\x65\x6e\x74\x69\x63\x61\x74\x69\x6f\x6e\x7d\x65\x6c\x73\x65\x7b\x63\x61\x6c\x6c\x62\x61\x63\x6b\x3d\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x41\x63\x63\x65\x73\x73\x43\x6f\x64\x65\x57\x69\x74\x68\x46\x6f\x72\x6d\x50\x61\x72\x61\x6d\x73\x7d\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x73\x77\x61\x67\x67\x65\x72\x55\x49\x52\x65\x64\x69\x72\x65\x63\x74\x4f\x61\x75\x74\x68\x32\x3d\x7b\x61\x75\x74\x68\x3a\x61\x75\x74\x68\x2c\x73\x74\x61\x74\x65\x3a\x73\x74\x61\x74\x65\x2c\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x3a\x72\x65\x64\x69\x72\x65\x63\x74\x55\x72\x6c\x2c\x63\x61\x6c\x6c\x62\x61\x63\x6b\x3a\x63\x61\x6c\x6c\x62\x61\x63\x6b\x2c\x65\x72\x72\x43\x62\x3a\x65\x72\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6e\x65\x77\x41\x75\x74\x68\x45\x72\x72\x7d\x3b\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6f\x70\x65\x6e\x28\x75\x72\x6c\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x43\x6c\x65\x61\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6c\x65\x61\x72\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x43\x6c\x65\x61\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x43\x6c\x65\x61\x72\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x43\x6c\x65\x61\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6c\x65\x61\x72\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x52\x65\x73\x70\x6f\x6e\x73\x65\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x6c\x65\x61\x72\x52\x65\x71\x75\x65\x73\x74\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6c\x65\x61\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x62\x74\x6e\x2d\x63\x6c\x65\x61\x72\x20\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x5f\x5f\x62\x74\x6e\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x7d\x2c\x22\x43\x6c\x65\x61\x72\x22\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x6c\x65\x61\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x43\x6c\x65\x61\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6b\x65\x79\x73\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x48\x65\x61\x64\x65\x72\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x48\x65\x61\x64\x65\x72\x73\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x68\x65\x61\x64\x65\x72\x73\x3d\x5f\x72\x65\x66\x2e\x68\x65\x61\x64\x65\x72\x73\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x35\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x52\x65\x73\x70\x6f\x6e\x73\x65\x20\x68\x65\x61\x64\x65\x72\x73\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x68\x65\x61\x64\x65\x72\x73\x29\x29\x7d\x3b\x76\x61\x72\x20\x44\x75\x72\x61\x74\x69\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x44\x75\x72\x61\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x64\x75\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x72\x65\x66\x32\x2e\x64\x75\x72\x61\x74\x69\x6f\x6e\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x35\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x52\x65\x71\x75\x65\x73\x74\x20\x64\x75\x72\x61\x74\x69\x6f\x6e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x64\x75\x72\x61\x74\x69\x6f\x6e\x2c\x22\x20\x6d\x73\x22\x29\x29\x7d\x3b\x76\x61\x72\x20\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x73\x68\x6f\x75\x6c\x64\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x55\x70\x64\x61\x74\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x68\x6f\x75\x6c\x64\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x55\x70\x64\x61\x74\x65\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x21\x3d\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x7c\x7c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x21\x3d\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x7c\x7c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x21\x3d\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x7c\x7c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x21\x3d\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x73\x68\x6f\x77\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x68\x6f\x77\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3b\x76\x61\x72\x20\x63\x75\x72\x6c\x52\x65\x71\x75\x65\x73\x74\x3d\x73\x68\x6f\x77\x4d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x3f\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6d\x75\x74\x61\x74\x65\x64\x52\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x46\x6f\x72\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x3b\x76\x61\x72\x20\x73\x74\x61\x74\x75\x73\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x73\x74\x61\x74\x75\x73\x22\x29\x3b\x76\x61\x72\x20\x75\x72\x6c\x3d\x63\x75\x72\x6c\x52\x65\x71\x75\x65\x73\x74\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x3b\x76\x61\x72\x20\x68\x65\x61\x64\x65\x72\x73\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x68\x65\x61\x64\x65\x72\x73\x22\x29\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x76\x61\x72\x20\x6e\x6f\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x65\x64\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x6e\x6f\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x65\x64\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x45\x72\x72\x6f\x72\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x22\x29\x3b\x76\x61\x72\x20\x62\x6f\x64\x79\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x74\x65\x78\x74\x22\x29\x3b\x76\x61\x72\x20\x64\x75\x72\x61\x74\x69\x6f\x6e\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x64\x75\x72\x61\x74\x69\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x68\x65\x61\x64\x65\x72\x73\x4b\x65\x79\x73\x3d\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x68\x65\x61\x64\x65\x72\x73\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x74\x79\x70\x65\x22\x5d\x7c\x7c\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x43\x6f\x6e\x74\x65\x6e\x74\x2d\x54\x79\x70\x65\x22\x5d\x3b\x76\x61\x72\x20\x43\x75\x72\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x63\x75\x72\x6c\x22\x29\x3b\x76\x61\x72\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x22\x29\x3b\x76\x61\x72\x20\x72\x65\x74\x75\x72\x6e\x4f\x62\x6a\x65\x63\x74\x3d\x68\x65\x61\x64\x65\x72\x73\x4b\x65\x79\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x6c\x69\x6e\x65\x22\x2c\x6b\x65\x79\x3a\x6b\x65\x79\x7d\x2c\x22\x20\x22\x2c\x6b\x65\x79\x2c\x22\x3a\x20\x22\x2c\x68\x65\x61\x64\x65\x72\x73\x5b\x6b\x65\x79\x5d\x2c\x22\x20\x22\x29\x7d\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x48\x65\x61\x64\x65\x72\x73\x3d\x72\x65\x74\x75\x72\x6e\x4f\x62\x6a\x65\x63\x74\x2e\x6c\x65\x6e\x67\x74\x68\x21\x3d\x3d\x30\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x63\x75\x72\x6c\x52\x65\x71\x75\x65\x73\x74\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x75\x72\x6c\x2c\x7b\x72\x65\x71\x75\x65\x73\x74\x3a\x63\x75\x72\x6c\x52\x65\x71\x75\x65\x73\x74\x7d\x29\x2c\x75\x72\x6c\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x52\x65\x71\x75\x65\x73\x74\x20\x55\x52\x4c\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x71\x75\x65\x73\x74\x2d\x75\x72\x6c\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x75\x72\x6c\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x53\x65\x72\x76\x65\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x61\x62\x6c\x65\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2d\x74\x61\x62\x6c\x65\x20\x6c\x69\x76\x65\x2d\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2d\x74\x61\x62\x6c\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x65\x61\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x63\x6f\x6c\x5f\x68\x65\x61\x64\x65\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x73\x74\x61\x74\x75\x73\x22\x7d\x2c\x22\x43\x6f\x64\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x63\x6f\x6c\x5f\x68\x65\x61\x64\x65\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x22\x44\x65\x74\x61\x69\x6c\x73\x22\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x62\x6f\x64\x79\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x73\x74\x61\x74\x75\x73\x22\x7d\x2c\x73\x74\x61\x74\x75\x73\x2c\x6e\x6f\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x75\x6e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x65\x64\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x55\x6e\x64\x6f\x63\x75\x6d\x65\x6e\x74\x65\x64\x20\x22\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x69\x73\x45\x72\x72\x6f\x72\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2b\x22\x3a\x20\x22\x2b\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x62\x6f\x64\x79\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x2c\x7b\x63\x6f\x6e\x74\x65\x6e\x74\x3a\x62\x6f\x64\x79\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x75\x72\x6c\x3a\x75\x72\x6c\x2c\x68\x65\x61\x64\x65\x72\x73\x3a\x68\x65\x61\x64\x65\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x68\x61\x73\x48\x65\x61\x64\x65\x72\x73\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x65\x61\x64\x65\x72\x73\x2c\x7b\x68\x65\x61\x64\x65\x72\x73\x3a\x72\x65\x74\x75\x72\x6e\x4f\x62\x6a\x65\x63\x74\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x26\x26\x64\x75\x72\x61\x74\x69\x6f\x6e\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x44\x75\x72\x61\x74\x69\x6f\x6e\x2c\x7b\x64\x75\x72\x61\x74\x69\x6f\x6e\x3a\x64\x75\x72\x61\x74\x69\x6f\x6e\x7d\x29\x3a\x6e\x75\x6c\x6c\x29\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x34\x29\x3b\x76\x61\x72\x20\x5f\x6b\x65\x79\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6b\x65\x79\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x38\x29\x3b\x76\x61\x72\x20\x5f\x74\x79\x70\x65\x6f\x66\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x79\x70\x65\x6f\x66\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x31\x29\x3b\x76\x61\x72\x20\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x55\x72\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x75\x72\x6c\x4f\x62\x6a\x65\x63\x74\x3d\x6e\x65\x77\x20\x5f\x75\x72\x6c\x50\x61\x72\x73\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x75\x72\x6c\x28\x29\x2c\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x75\x72\x6c\x4f\x62\x6a\x65\x63\x74\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7d\x3b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x75\x72\x6c\x3a\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x55\x72\x6c\x28\x29\x2c\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3a\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x68\x74\x74\x70\x73\x3a\x2f\x2f\x6f\x6e\x6c\x69\x6e\x65\x2e\x73\x77\x61\x67\x67\x65\x72\x2e\x69\x6f\x2f\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x22\x3a\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x32\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x32\x2e\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3b\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x75\x72\x6c\x3a\x74\x68\x69\x73\x2e\x67\x65\x74\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x55\x72\x6c\x28\x29\x2c\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3a\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x68\x74\x74\x70\x73\x3a\x2f\x2f\x6f\x6e\x6c\x69\x6e\x65\x2e\x73\x77\x61\x67\x67\x65\x72\x2e\x69\x6f\x2f\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x22\x3a\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x33\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x73\x70\x65\x63\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x33\x2e\x73\x70\x65\x63\x3b\x76\x61\x72\x20\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x29\x3b\x69\x66\x28\x28\x74\x79\x70\x65\x6f\x66\x20\x73\x70\x65\x63\x3d\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3f\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x3a\x28\x30\x2c\x5f\x74\x79\x70\x65\x6f\x66\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x70\x65\x63\x29\x29\x3d\x3d\x3d\x22\x6f\x62\x6a\x65\x63\x74\x22\x26\x26\x28\x30\x2c\x5f\x6b\x65\x79\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x70\x65\x63\x29\x2e\x6c\x65\x6e\x67\x74\x68\x29\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x3b\x69\x66\x28\x21\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x75\x72\x6c\x7c\x7c\x21\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x7c\x7c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x75\x72\x6c\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x6c\x6f\x63\x61\x6c\x68\x6f\x73\x74\x22\x29\x3e\x3d\x30\x7c\x7c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x75\x72\x6c\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x31\x32\x37\x2e\x30\x2e\x30\x2e\x31\x22\x29\x3e\x3d\x30\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x66\x6c\x6f\x61\x74\x3a\x22\x72\x69\x67\x68\x74\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x2c\x7b\x74\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x2c\x72\x65\x6c\x3a\x22\x6e\x6f\x6f\x70\x65\x6e\x65\x72\x20\x6e\x6f\x72\x65\x66\x65\x72\x72\x65\x72\x22\x2c\x68\x72\x65\x66\x3a\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x2b\x22\x2f\x64\x65\x62\x75\x67\x3f\x75\x72\x6c\x3d\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x75\x72\x6c\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x49\x6d\x61\x67\x65\x2c\x7b\x73\x72\x63\x3a\x73\x61\x6e\x69\x74\x69\x7a\x65\x64\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x55\x72\x6c\x2b\x22\x3f\x75\x72\x6c\x3d\x22\x2b\x65\x6e\x63\x6f\x64\x65\x55\x52\x49\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x75\x72\x6c\x29\x2c\x61\x6c\x74\x3a\x22\x4f\x6e\x6c\x69\x6e\x65\x20\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x20\x62\x61\x64\x67\x65\x22\x7d\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x6e\x6c\x69\x6e\x65\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x42\x61\x64\x67\x65\x3b\x76\x61\x72\x20\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x49\x6d\x61\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x49\x6d\x61\x67\x65\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x49\x6d\x61\x67\x65\x28\x70\x72\x6f\x70\x73\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x49\x6d\x61\x67\x65\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x49\x6d\x61\x67\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x49\x6d\x61\x67\x65\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x29\x29\x3b\x5f\x74\x68\x69\x73\x32\x2e\x73\x74\x61\x74\x65\x3d\x7b\x6c\x6f\x61\x64\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x65\x72\x72\x6f\x72\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x49\x6d\x61\x67\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x33\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x69\x6d\x67\x3d\x6e\x65\x77\x20\x49\x6d\x61\x67\x65\x3b\x69\x6d\x67\x2e\x6f\x6e\x6c\x6f\x61\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x5f\x74\x68\x69\x73\x33\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x6c\x6f\x61\x64\x65\x64\x3a\x74\x72\x75\x65\x7d\x29\x7d\x3b\x69\x6d\x67\x2e\x6f\x6e\x65\x72\x72\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x5f\x74\x68\x69\x73\x33\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x65\x72\x72\x6f\x72\x3a\x74\x72\x75\x65\x7d\x29\x7d\x3b\x69\x6d\x67\x2e\x73\x72\x63\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x72\x63\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x34\x3d\x74\x68\x69\x73\x3b\x69\x66\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x73\x72\x63\x21\x3d\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x72\x63\x29\x7b\x76\x61\x72\x20\x69\x6d\x67\x3d\x6e\x65\x77\x20\x49\x6d\x61\x67\x65\x3b\x69\x6d\x67\x2e\x6f\x6e\x6c\x6f\x61\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x5f\x74\x68\x69\x73\x34\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x6c\x6f\x61\x64\x65\x64\x3a\x74\x72\x75\x65\x7d\x29\x7d\x3b\x69\x6d\x67\x2e\x6f\x6e\x65\x72\x72\x6f\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x5f\x74\x68\x69\x73\x34\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x65\x72\x72\x6f\x72\x3a\x74\x72\x75\x65\x7d\x29\x7d\x3b\x69\x6d\x67\x2e\x73\x72\x63\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x73\x72\x63\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x69\x66\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x65\x72\x72\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6d\x67\x22\x2c\x7b\x61\x6c\x74\x3a\x22\x45\x72\x72\x6f\x72\x22\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x21\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x6c\x6f\x61\x64\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6d\x67\x22\x2c\x7b\x73\x72\x63\x3a\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x72\x63\x2c\x61\x6c\x74\x3a\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x61\x6c\x74\x7d\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x56\x61\x6c\x69\x64\x61\x74\x6f\x72\x49\x6d\x61\x67\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x53\x57\x41\x47\x47\x45\x52\x32\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x48\x4f\x44\x53\x3d\x5b\x22\x67\x65\x74\x22\x2c\x22\x70\x75\x74\x22\x2c\x22\x70\x6f\x73\x74\x22\x2c\x22\x64\x65\x6c\x65\x74\x65\x22\x2c\x22\x6f\x70\x74\x69\x6f\x6e\x73\x22\x2c\x22\x68\x65\x61\x64\x22\x2c\x22\x70\x61\x74\x63\x68\x22\x5d\x3b\x76\x61\x72\x20\x4f\x41\x53\x33\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x48\x4f\x44\x53\x3d\x53\x57\x41\x47\x47\x45\x52\x32\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x48\x4f\x44\x53\x2e\x63\x6f\x6e\x63\x61\x74\x28\x5b\x22\x74\x72\x61\x63\x65\x22\x5d\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x66\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x6e\x3b\x76\x61\x72\x20\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x74\x61\x67\x67\x65\x64\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x28\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x22\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x6d\x61\x78\x44\x69\x73\x70\x6c\x61\x79\x65\x64\x54\x61\x67\x73\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x6d\x61\x78\x44\x69\x73\x70\x6c\x61\x79\x65\x64\x54\x61\x67\x73\x3b\x76\x61\x72\x20\x66\x69\x6c\x74\x65\x72\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x46\x69\x6c\x74\x65\x72\x28\x29\x3b\x69\x66\x28\x66\x69\x6c\x74\x65\x72\x29\x7b\x69\x66\x28\x66\x69\x6c\x74\x65\x72\x21\x3d\x3d\x74\x72\x75\x65\x29\x7b\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x3d\x66\x6e\x2e\x6f\x70\x73\x46\x69\x6c\x74\x65\x72\x28\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x2c\x66\x69\x6c\x74\x65\x72\x29\x7d\x7d\x69\x66\x28\x6d\x61\x78\x44\x69\x73\x70\x6c\x61\x79\x65\x64\x54\x61\x67\x73\x26\x26\x21\x69\x73\x4e\x61\x4e\x28\x6d\x61\x78\x44\x69\x73\x70\x6c\x61\x79\x65\x64\x54\x61\x67\x73\x29\x26\x26\x6d\x61\x78\x44\x69\x73\x70\x6c\x61\x79\x65\x64\x54\x61\x67\x73\x3e\x3d\x30\x29\x7b\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x3d\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x6d\x61\x78\x44\x69\x73\x70\x6c\x61\x79\x65\x64\x54\x61\x67\x73\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x67\x4f\x62\x6a\x2c\x74\x61\x67\x29\x7b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x74\x61\x67\x4f\x62\x6a\x2e\x67\x65\x74\x28\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x2c\x7b\x6b\x65\x79\x3a\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2d\x22\x2b\x74\x61\x67\x2c\x74\x61\x67\x4f\x62\x6a\x3a\x74\x61\x67\x4f\x62\x6a\x2c\x74\x61\x67\x3a\x74\x61\x67\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3a\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x29\x7b\x76\x61\x72\x20\x70\x61\x74\x68\x3d\x6f\x70\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x3b\x76\x61\x72\x20\x6d\x65\x74\x68\x6f\x64\x3d\x6f\x70\x2e\x67\x65\x74\x28\x22\x6d\x65\x74\x68\x6f\x64\x22\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4c\x69\x73\x74\x28\x5b\x22\x70\x61\x74\x68\x73\x22\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x69\x64\x4d\x65\x74\x68\x6f\x64\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x4f\x41\x53\x33\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x48\x4f\x44\x53\x3a\x53\x57\x41\x47\x47\x45\x52\x32\x5f\x4f\x50\x45\x52\x41\x54\x49\x4f\x4e\x5f\x4d\x45\x54\x48\x4f\x44\x53\x3b\x69\x66\x28\x76\x61\x6c\x69\x64\x4d\x65\x74\x68\x6f\x64\x73\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x6d\x65\x74\x68\x6f\x64\x29\x3d\x3d\x3d\x2d\x31\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x7b\x6b\x65\x79\x3a\x70\x61\x74\x68\x2b\x22\x2d\x22\x2b\x6d\x65\x74\x68\x6f\x64\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x6f\x70\x3a\x6f\x70\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x74\x61\x67\x3a\x74\x61\x67\x7d\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x2c\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x2e\x73\x69\x7a\x65\x3c\x31\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x33\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x4e\x6f\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x20\x64\x65\x66\x69\x6e\x65\x64\x20\x69\x6e\x20\x73\x70\x65\x63\x21\x20\x22\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x74\x61\x67\x4f\x62\x6a\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x74\x61\x67\x4f\x62\x6a\x2c\x74\x61\x67\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x74\x61\x67\x2c\x63\x68\x69\x6c\x64\x72\x65\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x2c\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x3b\x76\x61\x72\x20\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x3d\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x26\x26\x64\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x21\x3d\x3d\x22\x66\x61\x6c\x73\x65\x22\x3b\x76\x61\x72\x20\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x6c\x61\x70\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x44\x65\x65\x70\x4c\x69\x6e\x6b\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x44\x65\x65\x70\x4c\x69\x6e\x6b\x22\x29\x3b\x76\x61\x72\x20\x4c\x69\x6e\x6b\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4c\x69\x6e\x6b\x22\x29\x3b\x76\x61\x72\x20\x74\x61\x67\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x74\x61\x67\x4f\x62\x6a\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x74\x61\x67\x44\x65\x74\x61\x69\x6c\x73\x22\x2c\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x5d\x2c\x6e\x75\x6c\x6c\x29\x3b\x76\x61\x72\x20\x74\x61\x67\x45\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x74\x61\x67\x4f\x62\x6a\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x74\x61\x67\x44\x65\x74\x61\x69\x6c\x73\x22\x2c\x22\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x22\x2c\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x5d\x29\x3b\x76\x61\x72\x20\x74\x61\x67\x45\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x55\x72\x6c\x3d\x74\x61\x67\x4f\x62\x6a\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x74\x61\x67\x44\x65\x74\x61\x69\x6c\x73\x22\x2c\x22\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x22\x2c\x22\x75\x72\x6c\x22\x5d\x29\x3b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x3d\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2d\x74\x61\x67\x22\x2c\x74\x61\x67\x5d\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x54\x61\x67\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x3d\x3d\x3d\x22\x66\x75\x6c\x6c\x22\x7c\x7c\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x3d\x3d\x3d\x22\x6c\x69\x73\x74\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x73\x68\x6f\x77\x54\x61\x67\x3f\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x61\x67\x2d\x73\x65\x63\x74\x69\x6f\x6e\x20\x69\x73\x2d\x6f\x70\x65\x6e\x22\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x61\x67\x2d\x73\x65\x63\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x21\x73\x68\x6f\x77\x54\x61\x67\x29\x7d\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x21\x74\x61\x67\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3f\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x61\x67\x20\x6e\x6f\x2d\x64\x65\x73\x63\x22\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x61\x67\x22\x2c\x69\x64\x3a\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x65\x73\x63\x61\x70\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x29\x28\x76\x29\x7d\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x2d\x22\x29\x2c\x22\x64\x61\x74\x61\x2d\x74\x61\x67\x22\x3a\x74\x61\x67\x2c\x22\x64\x61\x74\x61\x2d\x69\x73\x2d\x6f\x70\x65\x6e\x22\x3a\x73\x68\x6f\x77\x54\x61\x67\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x44\x65\x65\x70\x4c\x69\x6e\x6b\x2c\x7b\x65\x6e\x61\x62\x6c\x65\x64\x3a\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3a\x73\x68\x6f\x77\x54\x61\x67\x2c\x70\x61\x74\x68\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x63\x72\x65\x61\x74\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x29\x28\x74\x61\x67\x29\x2c\x74\x65\x78\x74\x3a\x74\x61\x67\x7d\x29\x2c\x21\x74\x61\x67\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x6e\x75\x6c\x6c\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x74\x61\x67\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x21\x74\x61\x67\x45\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x74\x61\x67\x45\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2c\x74\x61\x67\x45\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x55\x72\x6c\x3f\x22\x3a\x20\x22\x3a\x6e\x75\x6c\x6c\x2c\x74\x61\x67\x45\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x55\x72\x6c\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x6e\x6b\x2c\x7b\x68\x72\x65\x66\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x74\x61\x67\x45\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x55\x72\x6c\x29\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x2e\x73\x74\x6f\x70\x50\x72\x6f\x70\x61\x67\x61\x74\x69\x6f\x6e\x28\x29\x7d\x2c\x74\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x7d\x2c\x74\x61\x67\x45\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x55\x72\x6c\x29\x3a\x6e\x75\x6c\x6c\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x70\x61\x6e\x64\x2d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x74\x69\x74\x6c\x65\x3a\x73\x68\x6f\x77\x54\x61\x67\x3f\x22\x43\x6f\x6c\x6c\x61\x70\x73\x65\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x3a\x22\x45\x78\x70\x61\x6e\x64\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2c\x21\x73\x68\x6f\x77\x54\x61\x67\x29\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x76\x67\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x61\x72\x72\x6f\x77\x22\x2c\x77\x69\x64\x74\x68\x3a\x22\x32\x30\x22\x2c\x68\x65\x69\x67\x68\x74\x3a\x22\x32\x30\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x75\x73\x65\x22\x2c\x7b\x68\x72\x65\x66\x3a\x73\x68\x6f\x77\x54\x61\x67\x3f\x22\x23\x6c\x61\x72\x67\x65\x2d\x61\x72\x72\x6f\x77\x2d\x64\x6f\x77\x6e\x22\x3a\x22\x23\x6c\x61\x72\x67\x65\x2d\x61\x72\x72\x6f\x77\x22\x2c\x78\x6c\x69\x6e\x6b\x48\x72\x65\x66\x3a\x73\x68\x6f\x77\x54\x61\x67\x3f\x22\x23\x6c\x61\x72\x67\x65\x2d\x61\x72\x72\x6f\x77\x2d\x64\x6f\x77\x6e\x22\x3a\x22\x23\x6c\x61\x72\x67\x65\x2d\x61\x72\x72\x6f\x77\x22\x7d\x29\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x7b\x69\x73\x4f\x70\x65\x6e\x65\x64\x3a\x73\x68\x6f\x77\x54\x61\x67\x7d\x2c\x63\x68\x69\x6c\x64\x72\x65\x6e\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x74\x61\x67\x4f\x62\x6a\x3a\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x66\x72\x6f\x6d\x4a\x53\x28\x7b\x7d\x29\x2c\x74\x61\x67\x3a\x22\x22\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x54\x61\x67\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x2c\x72\x65\x71\x75\x65\x73\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x2c\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x2c\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x2c\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x2c\x6f\x6e\x45\x78\x65\x63\x75\x74\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x45\x78\x65\x63\x75\x74\x65\x2c\x66\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x69\x73\x53\x68\x6f\x77\x6e\x2c\x70\x61\x74\x68\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x70\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x6f\x70\x2c\x74\x61\x67\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x2c\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x2c\x65\x78\x65\x63\x75\x74\x65\x49\x6e\x50\x72\x6f\x67\x72\x65\x73\x73\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x65\x78\x65\x63\x75\x74\x65\x49\x6e\x50\x72\x6f\x67\x72\x65\x73\x73\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x6f\x70\x2e\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x3d\x6f\x70\x2e\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x2c\x73\x63\x68\x65\x6d\x65\x73\x3d\x6f\x70\x2e\x73\x63\x68\x65\x6d\x65\x73\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x6f\x70\x22\x5d\x29\x3b\x76\x61\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x4c\x69\x73\x74\x29\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x5d\x29\x3b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x3b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x3d\x5b\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x2c\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x5d\x3b\x76\x61\x72\x20\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x29\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x29\x3b\x76\x61\x72\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x29\x3b\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x3b\x76\x61\x72\x20\x45\x78\x65\x63\x75\x74\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x65\x78\x65\x63\x75\x74\x65\x22\x29\x3b\x76\x61\x72\x20\x43\x6c\x65\x61\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x63\x6c\x65\x61\x72\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x6c\x61\x70\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x65\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x73\x63\x68\x65\x6d\x65\x73\x22\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x22\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x22\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x22\x29\x3b\x76\x61\x72\x20\x4c\x69\x6e\x6b\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4c\x69\x6e\x6b\x22\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3b\x69\x66\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x26\x26\x72\x65\x73\x70\x6f\x6e\x73\x65\x26\x26\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x73\x69\x7a\x65\x3e\x30\x29\x7b\x76\x61\x72\x20\x6e\x6f\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x65\x64\x3d\x21\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x67\x65\x74\x28\x53\x74\x72\x69\x6e\x67\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x73\x74\x61\x74\x75\x73\x22\x29\x29\x29\x26\x26\x21\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x67\x65\x74\x28\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x29\x3b\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x73\x65\x74\x28\x22\x6e\x6f\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x65\x64\x22\x2c\x6e\x6f\x74\x44\x6f\x63\x75\x6d\x65\x6e\x74\x65\x64\x29\x7d\x76\x61\x72\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x3d\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3f\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x20\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x3a\x69\x73\x53\x68\x6f\x77\x6e\x3f\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x20\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x22\x2b\x6d\x65\x74\x68\x6f\x64\x2b\x22\x20\x69\x73\x2d\x6f\x70\x65\x6e\x22\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x20\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x22\x2b\x6d\x65\x74\x68\x6f\x64\x2c\x69\x64\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x65\x73\x63\x61\x70\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x29\x28\x69\x73\x53\x68\x6f\x77\x6e\x4b\x65\x79\x2e\x6a\x6f\x69\x6e\x28\x22\x2d\x22\x29\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x2c\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2c\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x3a\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3a\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x7b\x69\x73\x4f\x70\x65\x6e\x65\x64\x3a\x69\x73\x53\x68\x6f\x77\x6e\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x62\x6f\x64\x79\x22\x7d\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x26\x26\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x73\x69\x7a\x65\x7c\x7c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x3d\x3d\x6e\x75\x6c\x6c\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6d\x67\x22\x2c\x7b\x68\x65\x69\x67\x68\x74\x3a\x22\x33\x32\x70\x78\x22\x2c\x77\x69\x64\x74\x68\x3a\x22\x33\x32\x70\x78\x22\x2c\x73\x72\x63\x3a\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x37\x29\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x6c\x6f\x61\x64\x69\x6e\x67\x2d\x61\x6e\x69\x6d\x61\x74\x69\x6f\x6e\x22\x7d\x29\x2c\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x69\x74\x6c\x65\x5f\x6e\x6f\x72\x6d\x61\x6c\x22\x7d\x2c\x22\x20\x57\x61\x72\x6e\x69\x6e\x67\x3a\x20\x44\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x29\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x29\x29\x2c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x26\x26\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x2e\x75\x72\x6c\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x65\x78\x74\x65\x72\x6e\x61\x6c\x2d\x64\x6f\x63\x73\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x69\x74\x6c\x65\x5f\x6e\x6f\x72\x6d\x61\x6c\x22\x7d\x2c\x22\x46\x69\x6e\x64\x20\x6d\x6f\x72\x65\x20\x64\x65\x74\x61\x69\x6c\x73\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x65\x78\x74\x65\x72\x6e\x61\x6c\x2d\x64\x6f\x63\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x65\x78\x74\x65\x72\x6e\x61\x6c\x2d\x64\x6f\x63\x73\x5f\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x2e\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x6e\x6b\x2c\x7b\x74\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x65\x78\x74\x65\x72\x6e\x61\x6c\x2d\x64\x6f\x63\x73\x5f\x5f\x6c\x69\x6e\x6b\x22\x2c\x68\x72\x65\x66\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x2e\x75\x72\x6c\x29\x7d\x2c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x2e\x75\x72\x6c\x29\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x21\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x7c\x7c\x21\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x73\x69\x7a\x65\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x7b\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3a\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x3a\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x2c\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3a\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x2c\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x3a\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x2c\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x3a\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3a\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x2c\x66\x6e\x3a\x66\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x7d\x29\x2c\x21\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x2c\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x65\x72\x76\x65\x72\x73\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x73\x65\x72\x76\x65\x72\x73\x22\x29\x2c\x70\x61\x74\x68\x53\x65\x72\x76\x65\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x74\x68\x73\x28\x29\x2e\x67\x65\x74\x49\x6e\x28\x5b\x70\x61\x74\x68\x2c\x22\x73\x65\x72\x76\x65\x72\x73\x22\x5d\x29\x2c\x67\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x2c\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x53\x65\x6c\x65\x63\x74\x65\x64\x53\x65\x72\x76\x65\x72\x2c\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x2c\x67\x65\x74\x53\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x72\x76\x65\x72\x56\x61\x72\x69\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x2c\x67\x65\x74\x45\x66\x66\x65\x63\x74\x69\x76\x65\x53\x65\x72\x76\x65\x72\x56\x61\x6c\x75\x65\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x72\x76\x65\x72\x45\x66\x66\x65\x63\x74\x69\x76\x65\x56\x61\x6c\x75\x65\x7d\x29\x2c\x21\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x7c\x7c\x21\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3f\x6e\x75\x6c\x6c\x3a\x73\x63\x68\x65\x6d\x65\x73\x26\x26\x73\x63\x68\x65\x6d\x65\x73\x2e\x73\x69\x7a\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x63\x68\x65\x6d\x65\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x63\x68\x65\x6d\x65\x73\x2c\x7b\x73\x63\x68\x65\x6d\x65\x73\x3a\x73\x63\x68\x65\x6d\x65\x73\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x53\x63\x68\x65\x6d\x65\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x7d\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x21\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x7c\x7c\x21\x72\x65\x73\x70\x6f\x6e\x73\x65\x7c\x7c\x21\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3f\x22\x65\x78\x65\x63\x75\x74\x65\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x3a\x22\x62\x74\x6e\x2d\x67\x72\x6f\x75\x70\x22\x7d\x2c\x21\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x7c\x7c\x21\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x78\x65\x63\x75\x74\x65\x2c\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x6e\x45\x78\x65\x63\x75\x74\x65\x3a\x6f\x6e\x45\x78\x65\x63\x75\x74\x65\x7d\x29\x2c\x21\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x7c\x7c\x21\x72\x65\x73\x70\x6f\x6e\x73\x65\x7c\x7c\x21\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6c\x65\x61\x72\x2c\x7b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x7d\x29\x29\x2c\x65\x78\x65\x63\x75\x74\x65\x49\x6e\x50\x72\x6f\x67\x72\x65\x73\x73\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6c\x6f\x61\x64\x69\x6e\x67\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6c\x6f\x61\x64\x69\x6e\x67\x22\x7d\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x21\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x2c\x7b\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2c\x72\x65\x71\x75\x65\x73\x74\x3a\x72\x65\x71\x75\x65\x73\x74\x2c\x74\x72\x79\x49\x74\x4f\x75\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x70\x72\x6f\x64\x75\x63\x65\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x4f\x70\x74\x69\x6f\x6e\x73\x46\x6f\x72\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x2c\x70\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x50\x72\x6f\x64\x75\x63\x65\x73\x46\x6f\x72\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x29\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3a\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x2c\x66\x6e\x3a\x66\x6e\x7d\x29\x2c\x21\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x7c\x7c\x21\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2e\x73\x69\x7a\x65\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x2c\x7b\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3a\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x6e\x75\x6c\x6c\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3a\x6e\x75\x6c\x6c\x2c\x72\x65\x71\x75\x65\x73\x74\x3a\x6e\x75\x6c\x6c\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x2c\x73\x75\x6d\x6d\x61\x72\x79\x3a\x22\x22\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x2c\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2c\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x73\x75\x6d\x6d\x61\x72\x79\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x73\x75\x6d\x6d\x61\x72\x79\x2c\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x70\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x6f\x70\x2c\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x6f\x72\x69\x67\x69\x6e\x61\x6c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x6f\x72\x69\x67\x69\x6e\x61\x6c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3b\x76\x61\x72\x20\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x6d\x6d\x61\x72\x79\x3d\x6f\x70\x2e\x73\x75\x6d\x6d\x61\x72\x79\x3b\x76\x61\x72\x20\x73\x65\x63\x75\x72\x69\x74\x79\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2e\x67\x65\x74\x28\x22\x73\x65\x63\x75\x72\x69\x74\x79\x22\x29\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x61\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x22\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x22\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x22\x29\x3b\x76\x61\x72\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x22\x2c\x74\x72\x75\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x75\x6d\x6d\x61\x72\x79\x20\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x75\x6d\x6d\x61\x72\x79\x2d\x22\x2b\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x6e\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x2c\x7b\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x2c\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x7d\x29\x2c\x21\x73\x68\x6f\x77\x53\x75\x6d\x6d\x61\x72\x79\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x75\x6d\x6d\x61\x72\x79\x2d\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x28\x30\x2c\x5f\x74\x6f\x53\x74\x72\x69\x6e\x67\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x6d\x6d\x61\x72\x79\x7c\x7c\x73\x75\x6d\x6d\x61\x72\x79\x29\x29\x2c\x64\x69\x73\x70\x6c\x61\x79\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x26\x26\x28\x6f\x72\x69\x67\x69\x6e\x61\x6c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x7c\x7c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x75\x6d\x6d\x61\x72\x79\x2d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2d\x69\x64\x22\x7d\x2c\x6f\x72\x69\x67\x69\x6e\x61\x6c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x7c\x7c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x29\x3a\x6e\x75\x6c\x6c\x2c\x21\x73\x65\x63\x75\x72\x69\x74\x79\x7c\x7c\x21\x73\x65\x63\x75\x72\x69\x74\x79\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x42\x74\x6e\x2c\x7b\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x3a\x69\x73\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x64\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x76\x61\x72\x20\x61\x70\x70\x6c\x69\x63\x61\x62\x6c\x65\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x61\x75\x74\x68\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x46\x6f\x72\x52\x65\x71\x75\x69\x72\x65\x6d\x65\x6e\x74\x73\x28\x73\x65\x63\x75\x72\x69\x74\x79\x29\x3b\x61\x75\x74\x68\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x61\x70\x70\x6c\x69\x63\x61\x62\x6c\x65\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x29\x7d\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x7b\x70\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x3a\x6e\x75\x6c\x6c\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x2c\x73\x75\x6d\x6d\x61\x72\x79\x3a\x22\x22\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x2c\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x6d\x65\x74\x68\x6f\x64\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x75\x6d\x6d\x61\x72\x79\x2d\x6d\x65\x74\x68\x6f\x64\x22\x7d\x2c\x6d\x65\x74\x68\x6f\x64\x2e\x74\x6f\x55\x70\x70\x65\x72\x43\x61\x73\x65\x28\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x3a\x6e\x75\x6c\x6c\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x4d\x65\x74\x68\x6f\x64\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x2c\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x6f\x70\x79\x43\x61\x70\x74\x75\x72\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x65\x2e\x63\x6c\x69\x70\x62\x6f\x61\x72\x64\x44\x61\x74\x61\x2e\x73\x65\x74\x44\x61\x74\x61\x28\x22\x74\x65\x78\x74\x2f\x70\x6c\x61\x69\x6e\x22\x2c\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x29\x3b\x65\x2e\x70\x72\x65\x76\x65\x6e\x74\x44\x65\x66\x61\x75\x6c\x74\x28\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x3b\x76\x61\x72\x20\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x69\x73\x53\x68\x6f\x77\x6e\x2c\x70\x61\x74\x68\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x70\x61\x74\x68\x2c\x74\x61\x67\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x74\x61\x67\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x2c\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x3d\x5f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x50\x72\x6f\x70\x73\x24\x74\x6f\x4a\x53\x2e\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x3b\x76\x61\x72\x20\x44\x65\x65\x70\x4c\x69\x6e\x6b\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x44\x65\x65\x70\x4c\x69\x6e\x6b\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3f\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x75\x6d\x6d\x61\x72\x79\x2d\x70\x61\x74\x68\x5f\x5f\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x75\x6d\x6d\x61\x72\x79\x2d\x70\x61\x74\x68\x22\x2c\x6f\x6e\x43\x6f\x70\x79\x43\x61\x70\x74\x75\x72\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x6f\x70\x79\x43\x61\x70\x74\x75\x72\x65\x2c\x22\x64\x61\x74\x61\x2d\x70\x61\x74\x68\x22\x3a\x70\x61\x74\x68\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x44\x65\x65\x70\x4c\x69\x6e\x6b\x2c\x7b\x65\x6e\x61\x62\x6c\x65\x64\x3a\x69\x73\x44\x65\x65\x70\x4c\x69\x6e\x6b\x69\x6e\x67\x45\x6e\x61\x62\x6c\x65\x64\x2c\x69\x73\x53\x68\x6f\x77\x6e\x3a\x69\x73\x53\x68\x6f\x77\x6e\x2c\x70\x61\x74\x68\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x63\x72\x65\x61\x74\x65\x44\x65\x65\x70\x4c\x69\x6e\x6b\x50\x61\x74\x68\x29\x28\x74\x61\x67\x2b\x22\x2f\x22\x2b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x49\x64\x29\x2c\x74\x65\x78\x74\x3a\x70\x61\x74\x68\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5c\x2f\x2f\x67\x2c\x22\xe2\x80\x8b\x2f\x22\x29\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x75\x6d\x6d\x61\x72\x79\x50\x61\x74\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x5f\x72\x65\x66\x2e\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x52\x6f\x77\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x52\x6f\x77\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x6c\x65\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x61\x62\x6c\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x65\x61\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x63\x6f\x6c\x5f\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x22\x46\x69\x65\x6c\x64\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x63\x6f\x6c\x5f\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x22\x56\x61\x6c\x75\x65\x22\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x62\x6f\x64\x79\x22\x2c\x6e\x75\x6c\x6c\x2c\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x33\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x32\x2c\x32\x29\x2c\x6b\x3d\x5f\x72\x65\x66\x33\x5b\x30\x5d\x2c\x76\x3d\x5f\x72\x65\x66\x33\x5b\x31\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x52\x6f\x77\x2c\x7b\x6b\x65\x79\x3a\x6b\x2b\x22\x2d\x22\x2b\x76\x2c\x78\x4b\x65\x79\x3a\x6b\x2c\x78\x56\x61\x6c\x3a\x76\x7d\x29\x7d\x29\x29\x29\x29\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x52\x6f\x77\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x52\x6f\x77\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x52\x6f\x77\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x52\x6f\x77\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x78\x4b\x65\x79\x3d\x5f\x72\x65\x66\x2e\x78\x4b\x65\x79\x2c\x78\x56\x61\x6c\x3d\x5f\x72\x65\x66\x2e\x78\x56\x61\x6c\x3b\x76\x61\x72\x20\x78\x4e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x64\x56\x61\x6c\x75\x65\x3d\x21\x78\x56\x61\x6c\x3f\x6e\x75\x6c\x6c\x3a\x78\x56\x61\x6c\x2e\x74\x6f\x4a\x53\x3f\x78\x56\x61\x6c\x2e\x74\x6f\x4a\x53\x28\x29\x3a\x78\x56\x61\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x78\x4b\x65\x79\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x78\x4e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x64\x56\x61\x6c\x75\x65\x29\x29\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x45\x78\x74\x52\x6f\x77\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x6a\x73\x46\x69\x6c\x65\x44\x6f\x77\x6e\x6c\x6f\x61\x64\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x32\x36\x29\x3b\x76\x61\x72\x20\x5f\x6a\x73\x46\x69\x6c\x65\x44\x6f\x77\x6e\x6c\x6f\x61\x64\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6a\x73\x46\x69\x6c\x65\x44\x6f\x77\x6e\x6c\x6f\x61\x64\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x69\x6e\x69\x74\x69\x61\x6c\x69\x7a\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x63\x29\x7b\x5f\x74\x68\x69\x73\x2e\x65\x6c\x3d\x63\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x54\x65\x78\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x28\x30\x2c\x5f\x6a\x73\x46\x69\x6c\x65\x44\x6f\x77\x6e\x6c\x6f\x61\x64\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x2c\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x66\x69\x6c\x65\x4e\x61\x6d\x65\x7c\x7c\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x74\x78\x74\x22\x29\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x70\x72\x65\x76\x65\x6e\x74\x59\x53\x63\x72\x6f\x6c\x6c\x69\x6e\x67\x42\x65\x79\x6f\x6e\x64\x45\x6c\x65\x6d\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x3b\x76\x61\x72\x20\x64\x65\x6c\x74\x61\x59\x3d\x65\x2e\x6e\x61\x74\x69\x76\x65\x45\x76\x65\x6e\x74\x2e\x64\x65\x6c\x74\x61\x59\x3b\x76\x61\x72\x20\x63\x6f\x6e\x74\x65\x6e\x74\x48\x65\x69\x67\x68\x74\x3d\x74\x61\x72\x67\x65\x74\x2e\x73\x63\x72\x6f\x6c\x6c\x48\x65\x69\x67\x68\x74\x3b\x76\x61\x72\x20\x76\x69\x73\x69\x62\x6c\x65\x48\x65\x69\x67\x68\x74\x3d\x74\x61\x72\x67\x65\x74\x2e\x6f\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74\x3b\x76\x61\x72\x20\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x70\x3d\x74\x61\x72\x67\x65\x74\x2e\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x70\x3b\x76\x61\x72\x20\x73\x63\x72\x6f\x6c\x6c\x4f\x66\x66\x73\x65\x74\x3d\x76\x69\x73\x69\x62\x6c\x65\x48\x65\x69\x67\x68\x74\x2b\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x70\x3b\x76\x61\x72\x20\x69\x73\x45\x6c\x65\x6d\x65\x6e\x74\x53\x63\x72\x6f\x6c\x6c\x61\x62\x6c\x65\x3d\x63\x6f\x6e\x74\x65\x6e\x74\x48\x65\x69\x67\x68\x74\x3e\x76\x69\x73\x69\x62\x6c\x65\x48\x65\x69\x67\x68\x74\x3b\x76\x61\x72\x20\x69\x73\x53\x63\x72\x6f\x6c\x6c\x69\x6e\x67\x50\x61\x73\x74\x54\x6f\x70\x3d\x73\x63\x72\x6f\x6c\x6c\x54\x6f\x70\x3d\x3d\x3d\x30\x26\x26\x64\x65\x6c\x74\x61\x59\x3c\x30\x3b\x76\x61\x72\x20\x69\x73\x53\x63\x72\x6f\x6c\x6c\x69\x6e\x67\x50\x61\x73\x74\x42\x6f\x74\x74\x6f\x6d\x3d\x73\x63\x72\x6f\x6c\x6c\x4f\x66\x66\x73\x65\x74\x3e\x3d\x63\x6f\x6e\x74\x65\x6e\x74\x48\x65\x69\x67\x68\x74\x26\x26\x64\x65\x6c\x74\x61\x59\x3e\x30\x3b\x69\x66\x28\x69\x73\x45\x6c\x65\x6d\x65\x6e\x74\x53\x63\x72\x6f\x6c\x6c\x61\x62\x6c\x65\x26\x26\x28\x69\x73\x53\x63\x72\x6f\x6c\x6c\x69\x6e\x67\x50\x61\x73\x74\x54\x6f\x70\x7c\x7c\x69\x73\x53\x63\x72\x6f\x6c\x6c\x69\x6e\x67\x50\x61\x73\x74\x42\x6f\x74\x74\x6f\x6d\x29\x29\x7b\x65\x2e\x70\x72\x65\x76\x65\x6e\x74\x44\x65\x66\x61\x75\x6c\x74\x28\x29\x7d\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x29\x28\x74\x68\x69\x73\x2e\x65\x6c\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x55\x70\x64\x61\x74\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x55\x70\x64\x61\x74\x65\x28\x29\x7b\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x29\x28\x74\x68\x69\x73\x2e\x65\x6c\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x61\x62\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x61\x62\x6c\x65\x3b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x7c\x7c\x22\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x2d\x63\x6f\x64\x65\x22\x7d\x2c\x21\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x61\x62\x6c\x65\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x2d\x63\x6f\x6e\x74\x65\x6e\x74\x73\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x54\x65\x78\x74\x7d\x2c\x22\x44\x6f\x77\x6e\x6c\x6f\x61\x64\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x7b\x72\x65\x66\x3a\x74\x68\x69\x73\x2e\x69\x6e\x69\x74\x69\x61\x6c\x69\x7a\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6f\x6e\x57\x68\x65\x65\x6c\x3a\x74\x68\x69\x73\x2e\x70\x72\x65\x76\x65\x6e\x74\x59\x53\x63\x72\x6f\x6c\x6c\x69\x6e\x67\x42\x65\x79\x6f\x6e\x64\x45\x6c\x65\x6d\x65\x6e\x74\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2b\x22\x20\x6d\x69\x63\x72\x6f\x6c\x69\x67\x68\x74\x22\x7d\x2c\x76\x61\x6c\x75\x65\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x6a\x73\x2d\x66\x69\x6c\x65\x2d\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x50\x72\x6f\x64\x75\x63\x65\x73\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x68\x61\x6e\x67\x65\x50\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x28\x5b\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x76\x61\x6c\x29\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x52\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x3d\x5f\x72\x65\x66\x32\x2e\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x32\x2e\x76\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x69\x66\x28\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x29\x7b\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x7d\x29\x7d\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2c\x74\x72\x79\x49\x74\x4f\x75\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x74\x72\x79\x49\x74\x4f\x75\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x66\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x6e\x2c\x70\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x70\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x64\x65\x66\x61\x75\x6c\x74\x43\x6f\x64\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x53\x74\x61\x74\x75\x73\x43\x6f\x64\x65\x29\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x29\x3b\x76\x61\x72\x20\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x29\x3b\x76\x61\x72\x20\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x6c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x64\x75\x63\x65\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x26\x26\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x2e\x73\x69\x7a\x65\x3f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x3a\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x2e\x70\x72\x6f\x64\x75\x63\x65\x73\x3b\x76\x61\x72\x20\x69\x73\x53\x70\x65\x63\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3b\x76\x61\x72\x20\x61\x63\x63\x65\x70\x74\x43\x6f\x6e\x74\x72\x6f\x6c\x6c\x69\x6e\x67\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x69\x73\x53\x70\x65\x63\x4f\x41\x53\x33\x3f\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x41\x63\x63\x65\x70\x74\x43\x6f\x6e\x74\x72\x6f\x6c\x6c\x69\x6e\x67\x52\x65\x73\x70\x6f\x6e\x73\x65\x29\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x29\x3a\x6e\x75\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x29\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x52\x65\x73\x70\x6f\x6e\x73\x65\x20\x63\x6f\x6e\x74\x65\x6e\x74\x20\x74\x79\x70\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x70\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x50\x72\x6f\x64\x75\x63\x65\x73\x57\x72\x61\x70\x70\x65\x72\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x3a\x70\x72\x6f\x64\x75\x63\x65\x73\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x65\x63\x75\x74\x65\x2d\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x74\x79\x70\x65\x22\x7d\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2d\x69\x6e\x6e\x65\x72\x22\x7d\x2c\x21\x74\x72\x79\x49\x74\x4f\x75\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x76\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x7b\x72\x65\x73\x70\x6f\x6e\x73\x65\x3a\x74\x72\x79\x49\x74\x4f\x75\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x3a\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3a\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x61\x62\x6c\x65\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2d\x74\x61\x62\x6c\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x65\x61\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x63\x6f\x6c\x5f\x68\x65\x61\x64\x65\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x73\x74\x61\x74\x75\x73\x22\x7d\x2c\x22\x43\x6f\x64\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x63\x6f\x6c\x5f\x68\x65\x61\x64\x65\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x22\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x63\x6f\x6c\x5f\x68\x65\x61\x64\x65\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x6c\x69\x6e\x6b\x73\x22\x7d\x2c\x22\x4c\x69\x6e\x6b\x73\x22\x29\x3a\x6e\x75\x6c\x6c\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x62\x6f\x64\x79\x22\x2c\x6e\x75\x6c\x6c\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x34\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x33\x2c\x32\x29\x2c\x63\x6f\x64\x65\x3d\x5f\x72\x65\x66\x34\x5b\x30\x5d\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x5f\x72\x65\x66\x34\x5b\x31\x5d\x3b\x76\x61\x72\x20\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x74\x72\x79\x49\x74\x4f\x75\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x26\x26\x74\x72\x79\x49\x74\x4f\x75\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x73\x74\x61\x74\x75\x73\x22\x29\x3d\x3d\x63\x6f\x64\x65\x3f\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x5f\x63\x75\x72\x72\x65\x6e\x74\x22\x3a\x22\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x7b\x6b\x65\x79\x3a\x63\x6f\x64\x65\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x63\x6f\x64\x65\x29\x2c\x69\x73\x44\x65\x66\x61\x75\x6c\x74\x3a\x64\x65\x66\x61\x75\x6c\x74\x43\x6f\x64\x65\x3d\x3d\x3d\x63\x6f\x64\x65\x2c\x66\x6e\x3a\x66\x6e\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x63\x6f\x64\x65\x3a\x63\x6f\x64\x65\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x3d\x3d\x61\x63\x63\x65\x70\x74\x43\x6f\x6e\x74\x72\x6f\x6c\x6c\x69\x6e\x67\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x6f\x6e\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x3a\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x52\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x70\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x28\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x2c\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x2c\x63\x6f\x64\x65\x29\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x74\x72\x79\x49\x74\x4f\x75\x74\x52\x65\x73\x70\x6f\x6e\x73\x65\x3a\x6e\x75\x6c\x6c\x2c\x70\x72\x6f\x64\x75\x63\x65\x73\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x5b\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x6a\x73\x6f\x6e\x22\x5d\x29\x2c\x64\x69\x73\x70\x6c\x61\x79\x52\x65\x71\x75\x65\x73\x74\x44\x75\x72\x61\x74\x69\x6f\x6e\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x52\x65\x73\x70\x6f\x6e\x73\x65\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x39\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x29\x7b\x69\x66\x28\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x7d\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x3b\x76\x61\x72\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x52\x65\x73\x70\x6f\x6e\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x6e\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x2c\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x3b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x76\x61\x6c\x75\x65\x7d\x29\x3b\x6f\x6e\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x3a\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x7d\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x54\x61\x72\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x76\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x7c\x7c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x76\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x2c\x61\x63\x74\x69\x76\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x5d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x7d\x29\x29\x3b\x76\x61\x72\x20\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3d\x61\x63\x74\x69\x76\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x2c\x6e\x75\x6c\x6c\x29\x3b\x76\x61\x72\x20\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x2e\x66\x69\x72\x73\x74\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x7c\x7c\x66\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x22\x22\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x70\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x63\x6f\x64\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x6f\x64\x65\x2c\x72\x65\x73\x70\x6f\x6e\x73\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x66\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x3d\x66\x6e\x2e\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3b\x76\x61\x72\x20\x68\x65\x61\x64\x65\x72\x73\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x68\x65\x61\x64\x65\x72\x73\x22\x29\x3b\x76\x61\x72\x20\x6c\x69\x6e\x6b\x73\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x6c\x69\x6e\x6b\x73\x22\x29\x3b\x76\x61\x72\x20\x48\x65\x61\x64\x65\x72\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x68\x65\x61\x64\x65\x72\x73\x22\x29\x3b\x76\x61\x72\x20\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x22\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x6d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x22\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x29\x3b\x76\x61\x72\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x22\x29\x3b\x76\x61\x72\x20\x45\x78\x61\x6d\x70\x6c\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x45\x78\x61\x6d\x70\x6c\x65\x22\x29\x3b\x76\x61\x72\x20\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x57\x69\x74\x68\x50\x6f\x73\x73\x69\x62\x6c\x65\x53\x63\x68\x65\x6d\x61\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x76\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x7c\x7c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x76\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x2c\x61\x63\x74\x69\x76\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x5d\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x7d\x29\x29\x3b\x76\x61\x72\x20\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3d\x61\x63\x74\x69\x76\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x2c\x6e\x75\x6c\x6c\x29\x3b\x69\x66\x28\x69\x73\x4f\x41\x53\x33\x29\x7b\x76\x61\x72\x20\x6f\x61\x73\x33\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x61\x63\x74\x69\x76\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x7d\x29\x29\x3b\x73\x63\x68\x65\x6d\x61\x3d\x6f\x61\x73\x33\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3f\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x28\x6f\x61\x73\x33\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x74\x6f\x4a\x53\x28\x29\x29\x3a\x6e\x75\x6c\x6c\x3b\x73\x70\x65\x63\x50\x61\x74\x68\x57\x69\x74\x68\x50\x6f\x73\x73\x69\x62\x6c\x65\x53\x63\x68\x65\x6d\x61\x3d\x6f\x61\x73\x33\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3f\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x22\x73\x63\x68\x65\x6d\x61\x22\x5d\x29\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x7d\x65\x6c\x73\x65\x7b\x73\x63\x68\x65\x6d\x61\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x3b\x73\x70\x65\x63\x50\x61\x74\x68\x57\x69\x74\x68\x50\x6f\x73\x73\x69\x62\x6c\x65\x53\x63\x68\x65\x6d\x61\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x68\x61\x73\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x3f\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x7d\x69\x66\x28\x69\x73\x4f\x41\x53\x33\x29\x7b\x76\x61\x72\x20\x5f\x6f\x61\x73\x33\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x61\x63\x74\x69\x76\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x7d\x29\x29\x3b\x69\x66\x28\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x29\x7b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x54\x61\x72\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x28\x29\x3b\x76\x61\x72\x20\x74\x61\x72\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x3d\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x74\x61\x72\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x7d\x29\x29\x3b\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x74\x61\x72\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x61\x63\x74\x69\x76\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x29\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x61\x63\x74\x69\x76\x65\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x29\x29\x7d\x65\x6c\x73\x65\x7b\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x53\x61\x6d\x70\x6c\x65\x53\x63\x68\x65\x6d\x61\x29\x28\x5f\x6f\x61\x73\x33\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x7b\x69\x6e\x63\x6c\x75\x64\x65\x52\x65\x61\x64\x4f\x6e\x6c\x79\x3a\x74\x72\x75\x65\x7d\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x3d\x73\x63\x68\x65\x6d\x61\x3f\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x53\x61\x6d\x70\x6c\x65\x53\x63\x68\x65\x6d\x61\x29\x28\x73\x63\x68\x65\x6d\x61\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x61\x63\x74\x69\x76\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x7b\x69\x6e\x63\x6c\x75\x64\x65\x52\x65\x61\x64\x4f\x6e\x6c\x79\x3a\x74\x72\x75\x65\x2c\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x3a\x74\x72\x75\x65\x7d\x29\x3a\x6e\x75\x6c\x6c\x7d\x76\x61\x72\x20\x65\x78\x61\x6d\x70\x6c\x65\x3d\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x73\x61\x6d\x70\x6c\x65\x52\x65\x73\x70\x6f\x6e\x73\x65\x2c\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x20\x22\x2b\x28\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x7c\x7c\x22\x22\x29\x2c\x22\x64\x61\x74\x61\x2d\x63\x6f\x64\x65\x22\x3a\x63\x6f\x64\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x73\x74\x61\x74\x75\x73\x22\x7d\x2c\x63\x6f\x64\x65\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x5f\x5f\x69\x6e\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x7d\x29\x29\x2c\x69\x73\x4f\x41\x53\x33\x26\x26\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x63\x74\x69\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x2d\x6d\x65\x64\x69\x61\x2d\x74\x79\x70\x65\x22\x2c\x7b\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x2d\x6d\x65\x64\x69\x61\x2d\x74\x79\x70\x65\x2d\x2d\x61\x63\x63\x65\x70\x74\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x6c\x65\x72\x22\x3a\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x7d\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x2d\x6d\x65\x64\x69\x61\x2d\x74\x79\x70\x65\x5f\x5f\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x4d\x65\x64\x69\x61\x20\x74\x79\x70\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x72\x65\x73\x70\x6f\x6e\x73\x65\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x3a\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x29\x3f\x72\x65\x73\x70\x6f\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x29\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x53\x65\x71\x29\x28\x29\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x7d\x29\x2c\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x41\x63\x63\x65\x70\x74\x48\x65\x61\x64\x65\x72\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x2d\x6d\x65\x64\x69\x61\x2d\x74\x79\x70\x65\x5f\x5f\x61\x63\x63\x65\x70\x74\x2d\x6d\x65\x73\x73\x61\x67\x65\x22\x7d\x2c\x22\x43\x6f\x6e\x74\x72\x6f\x6c\x73\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x63\x63\x65\x70\x74\x22\x29\x2c\x22\x20\x68\x65\x61\x64\x65\x72\x2e\x22\x29\x3a\x6e\x75\x6c\x6c\x29\x2c\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x2d\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x2d\x65\x78\x61\x6d\x70\x6c\x65\x73\x5f\x5f\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x45\x78\x61\x6d\x70\x6c\x65\x73\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x2c\x7b\x65\x78\x61\x6d\x70\x6c\x65\x73\x3a\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2c\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3a\x74\x68\x69\x73\x2e\x67\x65\x74\x54\x61\x72\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x28\x29\x2c\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x53\x65\x6c\x65\x63\x74\x28\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x28\x7b\x6e\x61\x6d\x65\x3a\x6b\x65\x79\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x3a\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x73\x22\x2c\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x3a\x63\x6f\x64\x65\x7d\x29\x7d\x2c\x73\x68\x6f\x77\x4c\x61\x62\x65\x6c\x73\x3a\x66\x61\x6c\x73\x65\x7d\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x3a\x6e\x75\x6c\x6c\x2c\x65\x78\x61\x6d\x70\x6c\x65\x7c\x7c\x73\x63\x68\x65\x6d\x61\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x2c\x7b\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x57\x69\x74\x68\x50\x6f\x73\x73\x69\x62\x6c\x65\x53\x63\x68\x65\x6d\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x66\x72\x6f\x6d\x4a\x53\x4f\x72\x64\x65\x72\x65\x64\x29\x28\x73\x63\x68\x65\x6d\x61\x29\x2c\x65\x78\x61\x6d\x70\x6c\x65\x3a\x65\x78\x61\x6d\x70\x6c\x65\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x69\x73\x4f\x41\x53\x33\x26\x26\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x78\x61\x6d\x70\x6c\x65\x2c\x7b\x65\x78\x61\x6d\x70\x6c\x65\x3a\x65\x78\x61\x6d\x70\x6c\x65\x73\x46\x6f\x72\x4d\x65\x64\x69\x61\x54\x79\x70\x65\x2e\x67\x65\x74\x28\x74\x68\x69\x73\x2e\x67\x65\x74\x54\x61\x72\x67\x65\x74\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x28\x29\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x7b\x7d\x29\x29\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6f\x6d\x69\x74\x56\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x68\x65\x61\x64\x65\x72\x73\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x65\x61\x64\x65\x72\x73\x2c\x7b\x68\x65\x61\x64\x65\x72\x73\x3a\x68\x65\x61\x64\x65\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x3a\x6e\x75\x6c\x6c\x29\x2c\x69\x73\x4f\x41\x53\x33\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x2d\x63\x6f\x6c\x5f\x6c\x69\x6e\x6b\x73\x22\x7d\x2c\x6c\x69\x6e\x6b\x73\x3f\x6c\x69\x6e\x6b\x73\x2e\x74\x6f\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6c\x69\x6e\x6b\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2c\x6e\x61\x6d\x65\x3a\x6b\x65\x79\x2c\x6c\x69\x6e\x6b\x3a\x6c\x69\x6e\x6b\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x7d\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x4e\x6f\x20\x6c\x69\x6e\x6b\x73\x22\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x52\x65\x73\x70\x6f\x6e\x73\x65\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x72\x65\x73\x70\x6f\x6e\x73\x65\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x7d\x29\x2c\x6f\x6e\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x43\x68\x61\x6e\x67\x65\x28\x29\x7b\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x52\x65\x73\x70\x6f\x6e\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x78\x6d\x6c\x42\x75\x74\x50\x72\x65\x74\x74\x69\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x30\x29\x3b\x76\x61\x72\x20\x5f\x78\x6d\x6c\x42\x75\x74\x50\x72\x65\x74\x74\x69\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x78\x6d\x6c\x42\x75\x74\x50\x72\x65\x74\x74\x69\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x4c\x6f\x77\x65\x72\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x31\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x4c\x6f\x77\x65\x72\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x6f\x4c\x6f\x77\x65\x72\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x2c\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x70\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3a\x6e\x75\x6c\x6c\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x75\x70\x64\x61\x74\x65\x50\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x65\x76\x43\x6f\x6e\x74\x65\x6e\x74\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x74\x65\x6e\x74\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x3b\x69\x66\x28\x70\x72\x65\x76\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x3d\x3d\x63\x6f\x6e\x74\x65\x6e\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x69\x66\x28\x63\x6f\x6e\x74\x65\x6e\x74\x26\x26\x63\x6f\x6e\x74\x65\x6e\x74\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x42\x6c\x6f\x62\x29\x7b\x76\x61\x72\x20\x72\x65\x61\x64\x65\x72\x3d\x6e\x65\x77\x20\x46\x69\x6c\x65\x52\x65\x61\x64\x65\x72\x3b\x72\x65\x61\x64\x65\x72\x2e\x6f\x6e\x6c\x6f\x61\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x70\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3a\x72\x65\x61\x64\x65\x72\x2e\x72\x65\x73\x75\x6c\x74\x7d\x29\x7d\x3b\x72\x65\x61\x64\x65\x72\x2e\x72\x65\x61\x64\x41\x73\x54\x65\x78\x74\x28\x63\x6f\x6e\x74\x65\x6e\x74\x29\x7d\x65\x6c\x73\x65\x7b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x70\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3a\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x7d\x29\x7d\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x74\x68\x69\x73\x2e\x75\x70\x64\x61\x74\x65\x50\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x28\x6e\x75\x6c\x6c\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x55\x70\x64\x61\x74\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x55\x70\x64\x61\x74\x65\x28\x70\x72\x65\x76\x50\x72\x6f\x70\x73\x29\x7b\x74\x68\x69\x73\x2e\x75\x70\x64\x61\x74\x65\x50\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x28\x70\x72\x65\x76\x50\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x75\x72\x6c\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x75\x72\x6c\x2c\x5f\x70\x72\x6f\x70\x73\x24\x68\x65\x61\x64\x65\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x68\x65\x61\x64\x65\x72\x73\x2c\x68\x65\x61\x64\x65\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x24\x68\x65\x61\x64\x65\x72\x73\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x7b\x7d\x3a\x5f\x70\x72\x6f\x70\x73\x24\x68\x65\x61\x64\x65\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x70\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x70\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3b\x76\x61\x72\x20\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x22\x29\x3b\x76\x61\x72\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x4e\x61\x6d\x65\x3d\x22\x72\x65\x73\x70\x6f\x6e\x73\x65\x5f\x22\x2b\x28\x6e\x65\x77\x20\x44\x61\x74\x65\x29\x2e\x67\x65\x74\x54\x69\x6d\x65\x28\x29\x3b\x76\x61\x72\x20\x62\x6f\x64\x79\x3d\x76\x6f\x69\x64\x20\x30\x2c\x62\x6f\x64\x79\x45\x6c\x3d\x76\x6f\x69\x64\x20\x30\x3b\x75\x72\x6c\x3d\x75\x72\x6c\x7c\x7c\x22\x22\x3b\x69\x66\x28\x2f\x5e\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x5c\x2f\x6f\x63\x74\x65\x74\x2d\x73\x74\x72\x65\x61\x6d\x2f\x69\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x7c\x7c\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x43\x6f\x6e\x74\x65\x6e\x74\x2d\x44\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x22\x5d\x26\x26\x2f\x61\x74\x74\x61\x63\x68\x6d\x65\x6e\x74\x2f\x69\x2e\x74\x65\x73\x74\x28\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x43\x6f\x6e\x74\x65\x6e\x74\x2d\x44\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x22\x5d\x29\x7c\x7c\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x64\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x22\x5d\x26\x26\x2f\x61\x74\x74\x61\x63\x68\x6d\x65\x6e\x74\x2f\x69\x2e\x74\x65\x73\x74\x28\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x64\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x22\x5d\x29\x7c\x7c\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x43\x6f\x6e\x74\x65\x6e\x74\x2d\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x5d\x26\x26\x2f\x46\x69\x6c\x65\x20\x54\x72\x61\x6e\x73\x66\x65\x72\x2f\x69\x2e\x74\x65\x73\x74\x28\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x43\x6f\x6e\x74\x65\x6e\x74\x2d\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x5d\x29\x7c\x7c\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x5d\x26\x26\x2f\x46\x69\x6c\x65\x20\x54\x72\x61\x6e\x73\x66\x65\x72\x2f\x69\x2e\x74\x65\x73\x74\x28\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x5d\x29\x29\x7b\x69\x66\x28\x22\x42\x6c\x6f\x62\x22\x69\x6e\x20\x77\x69\x6e\x64\x6f\x77\x29\x7b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x7c\x7c\x22\x74\x65\x78\x74\x2f\x68\x74\x6d\x6c\x22\x3b\x76\x61\x72\x20\x62\x6c\x6f\x62\x3d\x63\x6f\x6e\x74\x65\x6e\x74\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x42\x6c\x6f\x62\x3f\x63\x6f\x6e\x74\x65\x6e\x74\x3a\x6e\x65\x77\x20\x42\x6c\x6f\x62\x28\x5b\x63\x6f\x6e\x74\x65\x6e\x74\x5d\x2c\x7b\x74\x79\x70\x65\x3a\x74\x79\x70\x65\x7d\x29\x3b\x76\x61\x72\x20\x68\x72\x65\x66\x3d\x77\x69\x6e\x64\x6f\x77\x2e\x55\x52\x4c\x2e\x63\x72\x65\x61\x74\x65\x4f\x62\x6a\x65\x63\x74\x55\x52\x4c\x28\x62\x6c\x6f\x62\x29\x3b\x76\x61\x72\x20\x66\x69\x6c\x65\x4e\x61\x6d\x65\x3d\x75\x72\x6c\x2e\x73\x75\x62\x73\x74\x72\x28\x75\x72\x6c\x2e\x6c\x61\x73\x74\x49\x6e\x64\x65\x78\x4f\x66\x28\x22\x2f\x22\x29\x2b\x31\x29\x3b\x76\x61\x72\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x3d\x5b\x74\x79\x70\x65\x2c\x66\x69\x6c\x65\x4e\x61\x6d\x65\x2c\x68\x72\x65\x66\x5d\x2e\x6a\x6f\x69\x6e\x28\x22\x3a\x22\x29\x3b\x76\x61\x72\x20\x64\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3d\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x64\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x22\x5d\x7c\x7c\x68\x65\x61\x64\x65\x72\x73\x5b\x22\x43\x6f\x6e\x74\x65\x6e\x74\x2d\x44\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x22\x5d\x3b\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x64\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x21\x3d\x3d\x22\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x22\x29\x7b\x76\x61\x72\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x65\x78\x74\x72\x61\x63\x74\x46\x69\x6c\x65\x4e\x61\x6d\x65\x46\x72\x6f\x6d\x43\x6f\x6e\x74\x65\x6e\x74\x44\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x48\x65\x61\x64\x65\x72\x29\x28\x64\x69\x73\x70\x6f\x73\x69\x74\x69\x6f\x6e\x29\x3b\x69\x66\x28\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x21\x3d\x3d\x6e\x75\x6c\x6c\x29\x7b\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x3d\x72\x65\x73\x70\x6f\x6e\x73\x65\x46\x69\x6c\x65\x6e\x61\x6d\x65\x7d\x7d\x69\x66\x28\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6e\x61\x76\x69\x67\x61\x74\x6f\x72\x26\x26\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6e\x61\x76\x69\x67\x61\x74\x6f\x72\x2e\x6d\x73\x53\x61\x76\x65\x4f\x72\x4f\x70\x65\x6e\x42\x6c\x6f\x62\x29\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x2c\x7b\x68\x72\x65\x66\x3a\x68\x72\x65\x66\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6e\x61\x76\x69\x67\x61\x74\x6f\x72\x2e\x6d\x73\x53\x61\x76\x65\x4f\x72\x4f\x70\x65\x6e\x42\x6c\x6f\x62\x28\x62\x6c\x6f\x62\x2c\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x29\x7d\x7d\x2c\x22\x44\x6f\x77\x6e\x6c\x6f\x61\x64\x20\x66\x69\x6c\x65\x22\x29\x29\x7d\x65\x6c\x73\x65\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x2c\x7b\x68\x72\x65\x66\x3a\x68\x72\x65\x66\x2c\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x3a\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x7d\x2c\x22\x44\x6f\x77\x6e\x6c\x6f\x61\x64\x20\x66\x69\x6c\x65\x22\x29\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x44\x6f\x77\x6e\x6c\x6f\x61\x64\x20\x68\x65\x61\x64\x65\x72\x73\x20\x64\x65\x74\x65\x63\x74\x65\x64\x20\x62\x75\x74\x20\x79\x6f\x75\x72\x20\x62\x72\x6f\x77\x73\x65\x72\x20\x64\x6f\x65\x73\x20\x6e\x6f\x74\x20\x73\x75\x70\x70\x6f\x72\x74\x20\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x69\x6e\x67\x20\x62\x69\x6e\x61\x72\x79\x20\x76\x69\x61\x20\x58\x48\x52\x20\x28\x42\x6c\x6f\x62\x29\x2e\x22\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x2f\x6a\x73\x6f\x6e\x2f\x69\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x29\x7b\x74\x72\x79\x7b\x62\x6f\x64\x79\x3d\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x53\x4f\x4e\x2e\x70\x61\x72\x73\x65\x28\x63\x6f\x6e\x74\x65\x6e\x74\x29\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x20\x22\x29\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x6f\x72\x29\x7b\x62\x6f\x64\x79\x3d\x22\x63\x61\x6e\x27\x74\x20\x70\x61\x72\x73\x65\x20\x4a\x53\x4f\x4e\x2e\x20\x20\x52\x61\x77\x20\x72\x65\x73\x75\x6c\x74\x3a\x5c\x6e\x5c\x6e\x22\x2b\x63\x6f\x6e\x74\x65\x6e\x74\x7d\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x66\x69\x6c\x65\x4e\x61\x6d\x65\x3a\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x4e\x61\x6d\x65\x2b\x22\x2e\x6a\x73\x6f\x6e\x22\x2c\x76\x61\x6c\x75\x65\x3a\x62\x6f\x64\x79\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x2f\x78\x6d\x6c\x2f\x69\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x29\x7b\x62\x6f\x64\x79\x3d\x28\x30\x2c\x5f\x78\x6d\x6c\x42\x75\x74\x50\x72\x65\x74\x74\x69\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x63\x6f\x6e\x74\x65\x6e\x74\x2c\x7b\x74\x65\x78\x74\x4e\x6f\x64\x65\x73\x4f\x6e\x53\x61\x6d\x65\x4c\x69\x6e\x65\x3a\x74\x72\x75\x65\x2c\x69\x6e\x64\x65\x6e\x74\x6f\x72\x3a\x22\x20\x20\x22\x7d\x29\x3b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x66\x69\x6c\x65\x4e\x61\x6d\x65\x3a\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x4e\x61\x6d\x65\x2b\x22\x2e\x78\x6d\x6c\x22\x2c\x76\x61\x6c\x75\x65\x3a\x62\x6f\x64\x79\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x28\x30\x2c\x5f\x74\x6f\x4c\x6f\x77\x65\x72\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x3d\x3d\x3d\x22\x74\x65\x78\x74\x2f\x68\x74\x6d\x6c\x22\x7c\x7c\x2f\x74\x65\x78\x74\x5c\x2f\x70\x6c\x61\x69\x6e\x2f\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x29\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x66\x69\x6c\x65\x4e\x61\x6d\x65\x3a\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x4e\x61\x6d\x65\x2b\x22\x2e\x68\x74\x6d\x6c\x22\x2c\x76\x61\x6c\x75\x65\x3a\x63\x6f\x6e\x74\x65\x6e\x74\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x2f\x5e\x69\x6d\x61\x67\x65\x5c\x2f\x2f\x69\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x29\x7b\x69\x66\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x69\x6e\x63\x6c\x75\x64\x65\x73\x28\x22\x73\x76\x67\x22\x29\x29\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x22\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x2c\x22\x20\x22\x29\x7d\x65\x6c\x73\x65\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6d\x67\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x6d\x61\x78\x57\x69\x64\x74\x68\x3a\x22\x31\x30\x30\x25\x22\x7d\x2c\x73\x72\x63\x3a\x77\x69\x6e\x64\x6f\x77\x2e\x55\x52\x4c\x2e\x63\x72\x65\x61\x74\x65\x4f\x62\x6a\x65\x63\x74\x55\x52\x4c\x28\x63\x6f\x6e\x74\x65\x6e\x74\x29\x7d\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x2f\x5e\x61\x75\x64\x69\x6f\x5c\x2f\x2f\x69\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x29\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x75\x64\x69\x6f\x22\x2c\x7b\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x3a\x74\x72\x75\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6f\x75\x72\x63\x65\x22\x2c\x7b\x73\x72\x63\x3a\x75\x72\x6c\x2c\x74\x79\x70\x65\x3a\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x7d\x29\x29\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x79\x70\x65\x6f\x66\x20\x63\x6f\x6e\x74\x65\x6e\x74\x3d\x3d\x3d\x22\x73\x74\x72\x69\x6e\x67\x22\x29\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x66\x69\x6c\x65\x4e\x61\x6d\x65\x3a\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x4e\x61\x6d\x65\x2b\x22\x2e\x74\x78\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x63\x6f\x6e\x74\x65\x6e\x74\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x63\x6f\x6e\x74\x65\x6e\x74\x2e\x73\x69\x7a\x65\x3e\x30\x29\x7b\x69\x66\x28\x70\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x29\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x22\x7d\x2c\x22\x55\x6e\x72\x65\x63\x6f\x67\x6e\x69\x7a\x65\x64\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x20\x74\x79\x70\x65\x3b\x20\x64\x69\x73\x70\x6c\x61\x79\x69\x6e\x67\x20\x63\x6f\x6e\x74\x65\x6e\x74\x20\x61\x73\x20\x74\x65\x78\x74\x2e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x66\x69\x6c\x65\x4e\x61\x6d\x65\x3a\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x4e\x61\x6d\x65\x2b\x22\x2e\x74\x78\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x70\x61\x72\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x7d\x29\x29\x7d\x65\x6c\x73\x65\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x22\x7d\x2c\x22\x55\x6e\x72\x65\x63\x6f\x67\x6e\x69\x7a\x65\x64\x20\x72\x65\x73\x70\x6f\x6e\x73\x65\x20\x74\x79\x70\x65\x3b\x20\x75\x6e\x61\x62\x6c\x65\x20\x74\x6f\x20\x64\x69\x73\x70\x6c\x61\x79\x2e\x22\x29\x7d\x7d\x65\x6c\x73\x65\x7b\x62\x6f\x64\x79\x45\x6c\x3d\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x21\x62\x6f\x64\x79\x45\x6c\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x35\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x52\x65\x73\x70\x6f\x6e\x73\x65\x20\x62\x6f\x64\x79\x22\x29\x2c\x62\x6f\x64\x79\x45\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x52\x65\x73\x70\x6f\x6e\x73\x65\x42\x6f\x64\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x78\x6d\x6c\x2d\x62\x75\x74\x2d\x70\x72\x65\x74\x74\x69\x65\x72\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x35\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x4c\x6f\x77\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x2e\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65\x28\x29\x7d\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x74\x6f\x4c\x6f\x77\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x33\x33\x29\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x7b\x65\x6e\x75\x6d\x65\x72\x61\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x67\x65\x74\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x29\x2e\x64\x65\x66\x61\x75\x6c\x74\x7d\x7d\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x65\x61\x63\x68\x4d\x61\x70\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x65\x61\x63\x68\x4d\x61\x70\x28\x69\x74\x65\x72\x61\x62\x6c\x65\x2c\x66\x6e\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x65\x72\x61\x62\x6c\x65\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x66\x69\x6c\x74\x65\x72\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x29\x2e\x6d\x61\x70\x28\x66\x6e\x29\x7d\x3b\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x28\x70\x72\x6f\x70\x73\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x2c\x76\x61\x6c\x75\x65\x2c\x69\x73\x58\x6d\x6c\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x63\x68\x61\x6e\x67\x65\x50\x61\x72\x61\x6d\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x68\x61\x6e\x67\x65\x50\x61\x72\x61\x6d\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x3b\x63\x68\x61\x6e\x67\x65\x50\x61\x72\x61\x6d\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x2c\x70\x61\x72\x61\x6d\x2c\x76\x61\x6c\x75\x65\x2c\x69\x73\x58\x6d\x6c\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x63\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x3b\x63\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x28\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x2c\x76\x61\x6c\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x74\x6f\x67\x67\x6c\x65\x54\x61\x62\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x62\x29\x7b\x69\x66\x28\x74\x61\x62\x3d\x3d\x3d\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x56\x69\x73\x69\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x63\x61\x6c\x6c\x62\x61\x63\x6b\x56\x69\x73\x69\x62\x6c\x65\x3a\x66\x61\x6c\x73\x65\x7d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x74\x61\x62\x3d\x3d\x3d\x22\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x63\x61\x6c\x6c\x62\x61\x63\x6b\x56\x69\x73\x69\x62\x6c\x65\x3a\x74\x72\x75\x65\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x56\x69\x73\x69\x62\x6c\x65\x3a\x66\x61\x6c\x73\x65\x7d\x29\x7d\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x63\x61\x6c\x6c\x62\x61\x63\x6b\x56\x69\x73\x69\x62\x6c\x65\x3a\x66\x61\x6c\x73\x65\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x56\x69\x73\x69\x62\x6c\x65\x3a\x74\x72\x75\x65\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x2c\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x2c\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x66\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3b\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x22\x29\x3b\x76\x61\x72\x20\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x29\x3b\x76\x61\x72\x20\x43\x61\x6c\x6c\x62\x61\x63\x6b\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x61\x6c\x6c\x62\x61\x63\x6b\x73\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3d\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x26\x26\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3d\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x69\x73\x4f\x41\x53\x33\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x2e\x74\x6f\x67\x67\x6c\x65\x54\x61\x62\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x7d\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x2d\x69\x74\x65\x6d\x20\x22\x2b\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x56\x69\x73\x69\x62\x6c\x65\x26\x26\x22\x61\x63\x74\x69\x76\x65\x22\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x29\x29\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x22\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x2e\x74\x6f\x67\x67\x6c\x65\x54\x61\x62\x28\x22\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x22\x29\x7d\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x2d\x69\x74\x65\x6d\x20\x22\x2b\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x63\x61\x6c\x6c\x62\x61\x63\x6b\x56\x69\x73\x69\x62\x6c\x65\x26\x26\x22\x61\x63\x74\x69\x76\x65\x22\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x43\x61\x6c\x6c\x62\x61\x63\x6b\x73\x22\x29\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x29\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x65\x6e\x61\x62\x6c\x65\x64\x3a\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x2c\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x3a\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x2c\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3a\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x7d\x29\x3a\x6e\x75\x6c\x6c\x29\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x56\x69\x73\x69\x62\x6c\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x21\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x4e\x6f\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x29\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x6c\x65\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x61\x62\x6c\x65\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x65\x61\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x63\x6f\x6c\x5f\x68\x65\x61\x64\x65\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2d\x63\x6f\x6c\x5f\x6e\x61\x6d\x65\x22\x7d\x2c\x22\x4e\x61\x6d\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x63\x6f\x6c\x5f\x68\x65\x61\x64\x65\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2d\x63\x6f\x6c\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x22\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x62\x6f\x64\x79\x22\x2c\x6e\x75\x6c\x6c\x2c\x65\x61\x63\x68\x4d\x61\x70\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2c\x69\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x2c\x7b\x66\x6e\x3a\x66\x6e\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x69\x2e\x74\x6f\x53\x74\x72\x69\x6e\x67\x28\x29\x29\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x72\x61\x77\x50\x61\x72\x61\x6d\x3a\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2c\x70\x61\x72\x61\x6d\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x29\x2c\x6b\x65\x79\x3a\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x2b\x22\x2e\x22\x2b\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x3a\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x57\x72\x61\x70\x70\x65\x72\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x3a\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3a\x69\x73\x45\x78\x65\x63\x75\x74\x65\x7d\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x29\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x63\x61\x6c\x6c\x62\x61\x63\x6b\x56\x69\x73\x69\x62\x6c\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x20\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x61\x6c\x6c\x62\x61\x63\x6b\x73\x2c\x7b\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2e\x67\x65\x74\x28\x22\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x22\x29\x29\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x2d\x31\x29\x2e\x70\x75\x73\x68\x28\x22\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x22\x29\x7d\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x69\x73\x4f\x41\x53\x33\x26\x26\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x26\x26\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x56\x69\x73\x69\x62\x6c\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x20\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x2d\x72\x65\x71\x75\x65\x73\x74\x2d\x62\x6f\x64\x79\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x73\x65\x63\x74\x69\x6f\x6e\x2d\x68\x65\x61\x64\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x74\x69\x74\x6c\x65\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x6e\x61\x6d\x65\x20\x22\x2b\x28\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x29\x26\x26\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x29\x7d\x2c\x22\x52\x65\x71\x75\x65\x73\x74\x20\x62\x6f\x64\x79\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x61\x70\x70\x6c\x79\x28\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x3a\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x2e\x6b\x65\x79\x53\x65\x71\x28\x29\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x75\x65\x29\x7b\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7d\x29\x7d\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x2d\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x74\x79\x70\x65\x22\x7d\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2c\x7b\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x2d\x31\x29\x2e\x70\x75\x73\x68\x28\x22\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x22\x29\x2c\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x3a\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x2c\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x2e\x61\x70\x70\x6c\x79\x28\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3a\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x2e\x61\x70\x70\x6c\x79\x28\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2e\x63\x6f\x6e\x63\x61\x74\x28\x5b\x22\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x22\x2c\x22\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x22\x5d\x29\x29\x2c\x75\x70\x64\x61\x74\x65\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x75\x70\x64\x61\x74\x65\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4b\x65\x79\x28\x6b\x65\x79\x29\x7b\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x28\x7b\x6e\x61\x6d\x65\x3a\x6b\x65\x79\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x3a\x22\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x22\x2c\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x3a\x22\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x22\x7d\x29\x7d\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x29\x7b\x69\x66\x28\x70\x61\x74\x68\x29\x7b\x76\x61\x72\x20\x6c\x61\x73\x74\x56\x61\x6c\x75\x65\x3d\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x2e\x61\x70\x70\x6c\x79\x28\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x3b\x76\x61\x72\x20\x75\x73\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x3d\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x6c\x61\x73\x74\x56\x61\x6c\x75\x65\x29\x3f\x6c\x61\x73\x74\x56\x61\x6c\x75\x65\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x28\x7b\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x76\x61\x6c\x75\x65\x3a\x75\x73\x61\x62\x6c\x65\x56\x61\x6c\x75\x65\x2e\x73\x65\x74\x49\x6e\x28\x70\x61\x74\x68\x2c\x76\x61\x6c\x75\x65\x29\x7d\x29\x7d\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x42\x6f\x64\x79\x56\x61\x6c\x75\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7d\x29\x7d\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x61\x70\x70\x6c\x79\x28\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x29\x7d\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3a\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x3a\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x74\x72\x79\x49\x74\x4f\x75\x74\x45\x6e\x61\x62\x6c\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x61\x6c\x6c\x6f\x77\x54\x72\x79\x49\x74\x4f\x75\x74\x3a\x74\x72\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x4b\x65\x79\x3a\x5b\x5d\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x5b\x5d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x78\x4b\x65\x79\x3d\x5f\x72\x65\x66\x2e\x78\x4b\x65\x79\x2c\x78\x56\x61\x6c\x3d\x5f\x72\x65\x66\x2e\x78\x56\x61\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x22\x7d\x2c\x78\x4b\x65\x79\x2c\x22\x3a\x20\x22\x2c\x53\x74\x72\x69\x6e\x67\x28\x78\x56\x61\x6c\x29\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x39\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x3d\x5f\x72\x65\x66\x2e\x70\x61\x72\x61\x6d\x2c\x69\x73\x49\x6e\x63\x6c\x75\x64\x65\x64\x3d\x5f\x72\x65\x66\x2e\x69\x73\x49\x6e\x63\x6c\x75\x64\x65\x64\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x72\x65\x66\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x3d\x5f\x72\x65\x66\x2e\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x3b\x76\x61\x72\x20\x6f\x6e\x43\x68\x65\x63\x6b\x62\x6f\x78\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x68\x65\x63\x6b\x62\x6f\x78\x43\x68\x61\x6e\x67\x65\x28\x65\x29\x7b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x63\x68\x65\x63\x6b\x65\x64\x29\x7d\x3b\x69\x66\x28\x21\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x61\x6c\x6c\x6f\x77\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x22\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x65\x6d\x70\x74\x79\x5f\x76\x61\x6c\x75\x65\x5f\x74\x6f\x67\x67\x6c\x65\x22\x2c\x7b\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x7d\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6e\x70\x75\x74\x22\x2c\x7b\x74\x79\x70\x65\x3a\x22\x63\x68\x65\x63\x6b\x62\x6f\x78\x22\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x2c\x63\x68\x65\x63\x6b\x65\x64\x3a\x21\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x26\x26\x69\x73\x49\x6e\x63\x6c\x75\x64\x65\x64\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x6f\x6e\x43\x68\x65\x63\x6b\x62\x6f\x78\x43\x68\x61\x6e\x67\x65\x7d\x29\x2c\x22\x53\x65\x6e\x64\x20\x65\x6d\x70\x74\x79\x20\x76\x61\x6c\x75\x65\x22\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x69\x73\x58\x6d\x6c\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3e\x31\x26\x26\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x31\x5d\x3a\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x72\x61\x77\x50\x61\x72\x61\x6d\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x72\x61\x77\x50\x61\x72\x61\x6d\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x46\x6f\x72\x55\x70\x73\x74\x72\x65\x61\x6d\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x76\x61\x6c\x75\x65\x3d\x3d\x3d\x22\x22\x7c\x7c\x76\x61\x6c\x75\x65\x26\x26\x76\x61\x6c\x75\x65\x2e\x73\x69\x7a\x65\x3d\x3d\x3d\x30\x29\x7b\x76\x61\x6c\x75\x65\x46\x6f\x72\x55\x70\x73\x74\x72\x65\x61\x6d\x3d\x6e\x75\x6c\x6c\x7d\x65\x6c\x73\x65\x7b\x76\x61\x6c\x75\x65\x46\x6f\x72\x55\x70\x73\x74\x72\x65\x61\x6d\x3d\x76\x61\x6c\x75\x65\x7d\x72\x65\x74\x75\x72\x6e\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x72\x61\x77\x50\x61\x72\x61\x6d\x2c\x76\x61\x6c\x75\x65\x46\x6f\x72\x55\x70\x73\x74\x72\x65\x61\x6d\x2c\x69\x73\x58\x6d\x6c\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x45\x78\x61\x6d\x70\x6c\x65\x53\x65\x6c\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6b\x65\x79\x29\x7b\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x41\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x28\x7b\x6e\x61\x6d\x65\x3a\x6b\x65\x79\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x63\x6f\x6e\x74\x65\x78\x74\x54\x79\x70\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x63\x6f\x6e\x74\x65\x78\x74\x4e\x61\x6d\x65\x3a\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x50\x61\x72\x61\x6d\x4b\x65\x79\x28\x29\x7d\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x65\x77\x56\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x70\x61\x72\x61\x6d\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x70\x61\x72\x61\x6d\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x32\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x49\x6e\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x45\x6d\x70\x74\x79\x50\x61\x72\x61\x6d\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x4e\x61\x6d\x65\x2c\x70\x61\x72\x61\x6d\x49\x6e\x2c\x6e\x65\x77\x56\x61\x6c\x75\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x72\x61\x77\x50\x61\x72\x61\x6d\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x72\x61\x77\x50\x61\x72\x61\x6d\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x33\x2e\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x72\x61\x77\x50\x61\x72\x61\x6d\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x3b\x69\x66\x28\x21\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x7c\x7c\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x69\x66\x28\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x21\x3d\x3d\x22\x62\x6f\x64\x79\x22\x29\x7b\x76\x61\x72\x20\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x28\x29\x29\x7b\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x78\x2d\x65\x78\x61\x6d\x70\x6c\x65\x22\x29\x7c\x7c\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x5d\x29\x7c\x7c\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x5d\x29\x7c\x7c\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x5d\x29\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x29\x7b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x3d\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x2e\x61\x70\x70\x6c\x79\x28\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2e\x63\x6f\x6e\x63\x61\x74\x28\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x50\x61\x72\x61\x6d\x4b\x65\x79\x28\x29\x5d\x29\x29\x3b\x6e\x65\x77\x56\x61\x6c\x75\x65\x3d\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x2c\x63\x75\x72\x72\x65\x6e\x74\x45\x78\x61\x6d\x70\x6c\x65\x4b\x65\x79\x2c\x22\x76\x61\x6c\x75\x65\x22\x5d\x29\x7c\x7c\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x29\x7c\x7c\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x5d\x29\x7c\x7c\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x5d\x29\x7d\x69\x66\x28\x6e\x65\x77\x56\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x57\x72\x61\x70\x70\x65\x72\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x6e\x65\x77\x56\x61\x6c\x75\x65\x29\x3f\x6e\x65\x77\x56\x61\x6c\x75\x65\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x28\x6e\x65\x77\x56\x61\x6c\x75\x65\x29\x29\x7d\x7d\x7d\x3b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x70\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x72\x61\x77\x50\x61\x72\x61\x6d\x3d\x70\x72\x6f\x70\x73\x2e\x72\x61\x77\x50\x61\x72\x61\x6d\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x72\x61\x77\x50\x61\x72\x61\x6d\x29\x7c\x7c\x6e\x65\x77\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x3b\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x69\x73\x45\x6d\x70\x74\x79\x28\x29\x3f\x72\x61\x77\x50\x61\x72\x61\x6d\x3a\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x69\x73\x4f\x41\x53\x33\x29\x7b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x3b\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x65\x6e\x75\x6d\x22\x29\x7d\x65\x6c\x73\x65\x7b\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x3d\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x3f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x65\x6e\x75\x6d\x22\x29\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x7d\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x3d\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x3f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x3a\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x76\x61\x6c\x75\x65\x3d\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x72\x61\x77\x50\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x29\x26\x26\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x26\x26\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x2e\x73\x69\x7a\x65\x29\x7b\x76\x61\x6c\x75\x65\x3d\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x2e\x66\x69\x72\x73\x74\x28\x29\x7d\x69\x66\x28\x76\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x76\x61\x6c\x75\x65\x21\x3d\x3d\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x29\x7b\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x57\x72\x61\x70\x70\x65\x72\x28\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x6e\x75\x6d\x62\x65\x72\x54\x6f\x53\x74\x72\x69\x6e\x67\x29\x28\x76\x61\x6c\x75\x65\x29\x29\x7d\x74\x68\x69\x73\x2e\x73\x65\x74\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x28\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x67\x65\x74\x50\x61\x72\x61\x6d\x4b\x65\x79\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x67\x65\x74\x50\x61\x72\x61\x6d\x4b\x65\x79\x28\x29\x7b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x70\x61\x72\x61\x6d\x3b\x69\x66\x28\x21\x70\x61\x72\x61\x6d\x29\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2b\x22\x2d\x22\x2b\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x70\x61\x72\x61\x6d\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x72\x61\x6d\x2c\x72\x61\x77\x50\x61\x72\x61\x6d\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x72\x61\x77\x50\x61\x72\x61\x6d\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x66\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x66\x6e\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2c\x73\x68\x6f\x77\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x68\x6f\x77\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3b\x69\x66\x28\x21\x70\x61\x72\x61\x6d\x29\x7b\x70\x61\x72\x61\x6d\x3d\x72\x61\x77\x50\x61\x72\x61\x6d\x7d\x69\x66\x28\x21\x72\x61\x77\x50\x61\x72\x61\x6d\x29\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x22\x29\x3b\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x22\x29\x3b\x76\x61\x72\x20\x69\x6e\x54\x79\x70\x65\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x3b\x76\x61\x72\x20\x62\x6f\x64\x79\x50\x61\x72\x61\x6d\x3d\x69\x6e\x54\x79\x70\x65\x21\x3d\x3d\x22\x62\x6f\x64\x79\x22\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x2c\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x66\x6e\x3a\x66\x6e\x2c\x70\x61\x72\x61\x6d\x3a\x70\x61\x72\x61\x6d\x2c\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x4f\x70\x74\x69\x6f\x6e\x73\x46\x6f\x72\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2c\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x73\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x29\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x57\x72\x61\x70\x70\x65\x72\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x3a\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3a\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3a\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x7d\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x6d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x22\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x22\x29\x3b\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x22\x29\x3b\x76\x61\x72\x20\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x22\x29\x3b\x76\x61\x72\x20\x45\x78\x61\x6d\x70\x6c\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x45\x78\x61\x6d\x70\x6c\x65\x22\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x72\x61\x77\x50\x61\x72\x61\x6d\x29\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x29\x28\x29\x3b\x76\x61\x72\x20\x66\x6f\x72\x6d\x61\x74\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x66\x6f\x72\x6d\x61\x74\x22\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x69\x73\x4f\x41\x53\x33\x3f\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x3a\x70\x61\x72\x61\x6d\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x46\x6f\x72\x6d\x44\x61\x74\x61\x3d\x69\x6e\x54\x79\x70\x65\x3d\x3d\x3d\x22\x66\x6f\x72\x6d\x44\x61\x74\x61\x22\x3b\x76\x61\x72\x20\x69\x73\x46\x6f\x72\x6d\x44\x61\x74\x61\x53\x75\x70\x70\x6f\x72\x74\x65\x64\x3d\x22\x46\x6f\x72\x6d\x44\x61\x74\x61\x22\x69\x6e\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x69\x72\x65\x64\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x29\x3b\x76\x61\x72\x20\x69\x74\x65\x6d\x54\x79\x70\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x69\x74\x65\x6d\x73\x22\x2c\x22\x74\x79\x70\x65\x22\x5d\x29\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x3f\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x3a\x22\x22\x3b\x76\x61\x72\x20\x63\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x3d\x73\x68\x6f\x77\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3f\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x29\x28\x70\x61\x72\x61\x6d\x29\x3a\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3f\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x29\x28\x70\x61\x72\x61\x6d\x29\x3a\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x49\x74\x65\x6d\x73\x3d\x76\x6f\x69\x64\x20\x30\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x45\x6e\x75\x6d\x3d\x76\x6f\x69\x64\x20\x30\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x45\x78\x61\x6d\x70\x6c\x65\x3d\x76\x6f\x69\x64\x20\x30\x3b\x76\x61\x72\x20\x69\x73\x44\x69\x73\x70\x6c\x61\x79\x50\x61\x72\x61\x6d\x45\x6e\x75\x6d\x3d\x66\x61\x6c\x73\x65\x3b\x69\x66\x28\x70\x61\x72\x61\x6d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x70\x61\x72\x61\x6d\x49\x74\x65\x6d\x73\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x69\x74\x65\x6d\x73\x22\x29\x7d\x69\x66\x28\x70\x61\x72\x61\x6d\x49\x74\x65\x6d\x73\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x70\x61\x72\x61\x6d\x45\x6e\x75\x6d\x3d\x70\x61\x72\x61\x6d\x49\x74\x65\x6d\x73\x2e\x67\x65\x74\x28\x22\x65\x6e\x75\x6d\x22\x29\x3b\x70\x61\x72\x61\x6d\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3d\x70\x61\x72\x61\x6d\x49\x74\x65\x6d\x73\x2e\x67\x65\x74\x28\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x29\x7d\x65\x6c\x73\x65\x7b\x70\x61\x72\x61\x6d\x45\x6e\x75\x6d\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x65\x6e\x75\x6d\x22\x29\x7d\x69\x66\x28\x70\x61\x72\x61\x6d\x45\x6e\x75\x6d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x26\x26\x70\x61\x72\x61\x6d\x45\x6e\x75\x6d\x2e\x73\x69\x7a\x65\x3e\x30\x29\x7b\x69\x73\x44\x69\x73\x70\x6c\x61\x79\x50\x61\x72\x61\x6d\x45\x6e\x75\x6d\x3d\x74\x72\x75\x65\x7d\x69\x66\x28\x70\x61\x72\x61\x6d\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x70\x61\x72\x61\x6d\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x66\x61\x75\x6c\x74\x22\x29\x3b\x70\x61\x72\x61\x6d\x45\x78\x61\x6d\x70\x6c\x65\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x29\x3b\x69\x66\x28\x70\x61\x72\x61\x6d\x45\x78\x61\x6d\x70\x6c\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x70\x61\x72\x61\x6d\x45\x78\x61\x6d\x70\x6c\x65\x3d\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x78\x2d\x65\x78\x61\x6d\x70\x6c\x65\x22\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x22\x64\x61\x74\x61\x2d\x70\x61\x72\x61\x6d\x2d\x6e\x61\x6d\x65\x22\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2c\x22\x64\x61\x74\x61\x2d\x70\x61\x72\x61\x6d\x2d\x69\x6e\x22\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2d\x63\x6f\x6c\x5f\x6e\x61\x6d\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x72\x65\x71\x75\x69\x72\x65\x64\x3f\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x6e\x61\x6d\x65\x20\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x6e\x61\x6d\x65\x22\x7d\x2c\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2c\x21\x72\x65\x71\x75\x69\x72\x65\x64\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x63\x6f\x6c\x6f\x72\x3a\x22\x72\x65\x64\x22\x7d\x7d\x2c\x22\xc2\xa0\x2a\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x74\x79\x70\x65\x22\x7d\x2c\x74\x79\x70\x65\x2c\x69\x74\x65\x6d\x54\x79\x70\x65\x26\x26\x22\x5b\x22\x2b\x69\x74\x65\x6d\x54\x79\x70\x65\x2b\x22\x5d\x22\x2c\x66\x6f\x72\x6d\x61\x74\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x72\x6f\x70\x2d\x66\x6f\x72\x6d\x61\x74\x22\x7d\x2c\x22\x28\x24\x22\x2c\x66\x6f\x72\x6d\x61\x74\x2c\x22\x29\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x7d\x2c\x69\x73\x4f\x41\x53\x33\x26\x26\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x29\x3f\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x3a\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x69\x6e\x22\x7d\x2c\x22\x28\x22\x2c\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x2c\x22\x29\x22\x29\x2c\x21\x73\x68\x6f\x77\x43\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x7c\x7c\x21\x63\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x2e\x73\x69\x7a\x65\x3f\x6e\x75\x6c\x6c\x3a\x63\x6f\x6d\x6d\x6f\x6e\x45\x78\x74\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2b\x22\x2d\x22\x2b\x76\x2c\x78\x4b\x65\x79\x3a\x6b\x65\x79\x2c\x78\x56\x61\x6c\x3a\x76\x7d\x29\x7d\x29\x2c\x21\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x7c\x7c\x21\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2e\x73\x69\x7a\x65\x3f\x6e\x75\x6c\x6c\x3a\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x45\x78\x74\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2b\x22\x2d\x22\x2b\x76\x2c\x78\x4b\x65\x79\x3a\x6b\x65\x79\x2c\x78\x56\x61\x6c\x3a\x76\x7d\x29\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6c\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x2d\x63\x6f\x6c\x5f\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x28\x62\x6f\x64\x79\x50\x61\x72\x61\x6d\x7c\x7c\x21\x69\x73\x45\x78\x65\x63\x75\x74\x65\x29\x26\x26\x69\x73\x44\x69\x73\x70\x6c\x61\x79\x50\x61\x72\x61\x6d\x45\x6e\x75\x6d\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x65\x6e\x75\x6d\x22\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x3c\x69\x3e\x41\x76\x61\x69\x6c\x61\x62\x6c\x65\x20\x76\x61\x6c\x75\x65\x73\x3c\x2f\x69\x3e\x20\x3a\x20\x22\x2b\x70\x61\x72\x61\x6d\x45\x6e\x75\x6d\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x6d\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x69\x74\x65\x6d\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x2c\x20\x22\x29\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x28\x62\x6f\x64\x79\x50\x61\x72\x61\x6d\x7c\x7c\x21\x69\x73\x45\x78\x65\x63\x75\x74\x65\x29\x26\x26\x70\x61\x72\x61\x6d\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x5f\x5f\x64\x65\x66\x61\x75\x6c\x74\x22\x2c\x73\x6f\x75\x72\x63\x65\x3a\x22\x3c\x69\x3e\x44\x65\x66\x61\x75\x6c\x74\x20\x76\x61\x6c\x75\x65\x3c\x2f\x69\x3e\x20\x3a\x20\x22\x2b\x70\x61\x72\x61\x6d\x44\x65\x66\x61\x75\x6c\x74\x56\x61\x6c\x75\x65\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x69\x73\x46\x6f\x72\x6d\x44\x61\x74\x61\x26\x26\x21\x69\x73\x46\x6f\x72\x6d\x44\x61\x74\x61\x53\x75\x70\x70\x6f\x72\x74\x65\x64\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x45\x72\x72\x6f\x72\x3a\x20\x79\x6f\x75\x72\x20\x62\x72\x6f\x77\x73\x65\x72\x20\x64\x6f\x65\x73\x20\x6e\x6f\x74\x20\x73\x75\x70\x70\x6f\x72\x74\x20\x46\x6f\x72\x6d\x44\x61\x74\x61\x22\x29\x2c\x69\x73\x4f\x41\x53\x33\x26\x26\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x63\x74\x69\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x78\x61\x6d\x70\x6c\x65\x73\x53\x65\x6c\x65\x63\x74\x56\x61\x6c\x75\x65\x52\x65\x74\x61\x69\x6e\x65\x72\x2c\x7b\x65\x78\x61\x6d\x70\x6c\x65\x73\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x29\x2c\x6f\x6e\x53\x65\x6c\x65\x63\x74\x3a\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x45\x78\x61\x6d\x70\x6c\x65\x53\x65\x6c\x65\x63\x74\x2c\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x57\x72\x61\x70\x70\x65\x72\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x64\x65\x66\x61\x75\x6c\x74\x54\x6f\x46\x69\x72\x73\x74\x45\x78\x61\x6d\x70\x6c\x65\x3a\x74\x72\x75\x65\x2c\x63\x75\x72\x72\x65\x6e\x74\x4b\x65\x79\x3a\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x2e\x61\x70\x70\x6c\x79\x28\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2e\x63\x6f\x6e\x63\x61\x74\x28\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x50\x61\x72\x61\x6d\x4b\x65\x79\x28\x29\x5d\x29\x29\x2c\x63\x75\x72\x72\x65\x6e\x74\x55\x73\x65\x72\x49\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x62\x6f\x64\x79\x50\x61\x72\x61\x6d\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x2c\x7b\x66\x6e\x3a\x66\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x72\x65\x71\x75\x69\x72\x65\x64\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x21\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3f\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2b\x22\x20\x2d\x20\x22\x2b\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3a\x22\x22\x2b\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x57\x72\x61\x70\x70\x65\x72\x2c\x65\x72\x72\x6f\x72\x73\x3a\x70\x61\x72\x61\x6d\x57\x69\x74\x68\x4d\x65\x74\x61\x2e\x67\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x29\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x7d\x29\x2c\x62\x6f\x64\x79\x50\x61\x72\x61\x6d\x26\x26\x73\x63\x68\x65\x6d\x61\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x2c\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3a\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x73\x63\x68\x65\x6d\x61\x22\x29\x2c\x65\x78\x61\x6d\x70\x6c\x65\x3a\x62\x6f\x64\x79\x50\x61\x72\x61\x6d\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x21\x62\x6f\x64\x79\x50\x61\x72\x61\x6d\x26\x26\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x2c\x7b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x49\x6e\x63\x6c\x75\x64\x65\x45\x6d\x70\x74\x79\x2c\x69\x73\x49\x6e\x63\x6c\x75\x64\x65\x64\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x49\x6e\x63\x6c\x75\x73\x69\x6f\x6e\x53\x65\x74\x74\x69\x6e\x67\x46\x6f\x72\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2c\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x29\x2c\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x3a\x76\x61\x6c\x75\x65\x26\x26\x76\x61\x6c\x75\x65\x2e\x73\x69\x7a\x65\x21\x3d\x3d\x30\x2c\x70\x61\x72\x61\x6d\x3a\x70\x61\x72\x61\x6d\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x69\x73\x4f\x41\x53\x33\x26\x26\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x78\x61\x6d\x70\x6c\x65\x2c\x7b\x65\x78\x61\x6d\x70\x6c\x65\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x65\x78\x61\x6d\x70\x6c\x65\x73\x22\x2c\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x63\x74\x69\x76\x65\x45\x78\x61\x6d\x70\x6c\x65\x73\x4d\x65\x6d\x62\x65\x72\x2e\x61\x70\x70\x6c\x79\x28\x6f\x61\x73\x33\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2e\x63\x6f\x6e\x63\x61\x74\x28\x5b\x22\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x73\x22\x2c\x74\x68\x69\x73\x2e\x67\x65\x74\x50\x61\x72\x61\x6d\x4b\x65\x79\x28\x29\x5d\x29\x29\x5d\x29\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x3a\x6e\x75\x6c\x6c\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x52\x6f\x77\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x45\x78\x65\x63\x75\x74\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x78\x65\x63\x75\x74\x65\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x45\x78\x65\x63\x75\x74\x65\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x45\x78\x65\x63\x75\x74\x65\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x45\x78\x65\x63\x75\x74\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x78\x65\x63\x75\x74\x65\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x50\x61\x72\x61\x6d\x73\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x3b\x69\x66\x28\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x76\x61\x6c\x69\x64\x61\x74\x65\x42\x65\x66\x6f\x72\x65\x45\x78\x65\x63\x75\x74\x65\x28\x5b\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x5d\x29\x29\x7b\x69\x66\x28\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x45\x78\x65\x63\x75\x74\x65\x29\x7b\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x45\x78\x65\x63\x75\x74\x65\x28\x29\x7d\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x65\x78\x65\x63\x75\x74\x65\x28\x7b\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x3a\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x7d\x29\x7d\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x50\x72\x6f\x64\x75\x63\x65\x73\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x63\x68\x61\x6e\x67\x65\x50\x72\x6f\x64\x75\x63\x65\x73\x56\x61\x6c\x75\x65\x28\x5b\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x5d\x2c\x76\x61\x6c\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x78\x65\x63\x75\x74\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x65\x78\x65\x63\x75\x74\x65\x20\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x63\x6f\x6e\x74\x72\x6f\x6c\x5f\x5f\x62\x74\x6e\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x7d\x2c\x22\x45\x78\x65\x63\x75\x74\x65\x22\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x45\x78\x65\x63\x75\x74\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x45\x78\x65\x63\x75\x74\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x3d\x7b\x63\x6f\x6c\x6f\x72\x3a\x22\x23\x39\x39\x39\x22\x2c\x66\x6f\x6e\x74\x53\x74\x79\x6c\x65\x3a\x22\x69\x74\x61\x6c\x69\x63\x22\x7d\x3b\x76\x61\x72\x20\x48\x65\x61\x64\x65\x72\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x48\x65\x61\x64\x65\x72\x73\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x48\x65\x61\x64\x65\x72\x73\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x48\x65\x61\x64\x65\x72\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x48\x65\x61\x64\x65\x72\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x48\x65\x61\x64\x65\x72\x73\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x48\x65\x61\x64\x65\x72\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x68\x65\x61\x64\x65\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x68\x65\x61\x64\x65\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x50\x72\x6f\x70\x65\x72\x74\x79\x22\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x69\x66\x28\x21\x68\x65\x61\x64\x65\x72\x73\x7c\x7c\x21\x68\x65\x61\x64\x65\x72\x73\x2e\x73\x69\x7a\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x73\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x73\x5f\x5f\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x48\x65\x61\x64\x65\x72\x73\x3a\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x61\x62\x6c\x65\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x65\x61\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x2d\x72\x6f\x77\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x2d\x63\x6f\x6c\x22\x7d\x2c\x22\x4e\x61\x6d\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x2d\x63\x6f\x6c\x22\x7d\x2c\x22\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x68\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x2d\x63\x6f\x6c\x22\x7d\x2c\x22\x54\x79\x70\x65\x22\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x62\x6f\x64\x79\x22\x2c\x6e\x75\x6c\x6c\x2c\x68\x65\x61\x64\x65\x72\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x32\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x32\x5b\x30\x5d\x2c\x68\x65\x61\x64\x65\x72\x3d\x5f\x72\x65\x66\x32\x5b\x31\x5d\x3b\x69\x66\x28\x21\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x68\x65\x61\x64\x65\x72\x29\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x68\x65\x61\x64\x65\x72\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x68\x65\x61\x64\x65\x72\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x5d\x29\x3f\x68\x65\x61\x64\x65\x72\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x22\x74\x79\x70\x65\x22\x5d\x29\x3a\x68\x65\x61\x64\x65\x72\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x74\x79\x70\x65\x22\x5d\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x45\x78\x61\x6d\x70\x6c\x65\x3d\x68\x65\x61\x64\x65\x72\x2e\x67\x65\x74\x49\x6e\x28\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x2d\x63\x6f\x6c\x22\x7d\x2c\x6b\x65\x79\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x2d\x63\x6f\x6c\x22\x7d\x2c\x21\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x68\x65\x61\x64\x65\x72\x2d\x63\x6f\x6c\x22\x7d\x2c\x74\x79\x70\x65\x2c\x22\x20\x22\x2c\x73\x63\x68\x65\x6d\x61\x45\x78\x61\x6d\x70\x6c\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x72\x6f\x70\x65\x72\x74\x79\x2c\x7b\x70\x72\x6f\x70\x4b\x65\x79\x3a\x22\x45\x78\x61\x6d\x70\x6c\x65\x22\x2c\x70\x72\x6f\x70\x56\x61\x6c\x3a\x73\x63\x68\x65\x6d\x61\x45\x78\x61\x6d\x70\x6c\x65\x2c\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x3a\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x7d\x29\x3a\x6e\x75\x6c\x6c\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x48\x65\x61\x64\x65\x72\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x48\x65\x61\x64\x65\x72\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x45\x72\x72\x6f\x72\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x72\x72\x6f\x72\x73\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x45\x72\x72\x6f\x72\x73\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x45\x72\x72\x6f\x72\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x45\x72\x72\x6f\x72\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x72\x72\x6f\x72\x73\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x45\x72\x72\x6f\x72\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x65\x64\x69\x74\x6f\x72\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x64\x69\x74\x6f\x72\x41\x63\x74\x69\x6f\x6e\x73\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x6c\x61\x70\x73\x65\x22\x29\x3b\x69\x66\x28\x65\x64\x69\x74\x6f\x72\x41\x63\x74\x69\x6f\x6e\x73\x26\x26\x65\x64\x69\x74\x6f\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x29\x7b\x76\x61\x72\x20\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3d\x65\x64\x69\x74\x6f\x72\x41\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x7d\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x28\x29\x3b\x76\x61\x72\x20\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x54\x6f\x44\x69\x73\x70\x6c\x61\x79\x3d\x65\x72\x72\x6f\x72\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3d\x3d\x3d\x22\x74\x68\x72\x6f\x77\x6e\x22\x3f\x74\x72\x75\x65\x3a\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x6c\x65\x76\x65\x6c\x22\x29\x3d\x3d\x3d\x22\x65\x72\x72\x6f\x72\x22\x7d\x29\x3b\x69\x66\x28\x21\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x54\x6f\x44\x69\x73\x70\x6c\x61\x79\x7c\x7c\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x54\x6f\x44\x69\x73\x70\x6c\x61\x79\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3c\x31\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x76\x61\x72\x20\x69\x73\x56\x69\x73\x69\x62\x6c\x65\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x28\x5b\x22\x65\x72\x72\x6f\x72\x50\x61\x6e\x65\x22\x5d\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x74\x6f\x67\x67\x6c\x65\x56\x69\x73\x69\x62\x69\x6c\x69\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x67\x67\x6c\x65\x56\x69\x73\x69\x62\x69\x6c\x69\x74\x79\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x5b\x22\x65\x72\x72\x6f\x72\x50\x61\x6e\x65\x22\x5d\x2c\x21\x69\x73\x56\x69\x73\x69\x62\x6c\x65\x29\x7d\x3b\x76\x61\x72\x20\x73\x6f\x72\x74\x65\x64\x4a\x53\x45\x72\x72\x6f\x72\x73\x3d\x61\x6c\x6c\x45\x72\x72\x6f\x72\x73\x54\x6f\x44\x69\x73\x70\x6c\x61\x79\x2e\x73\x6f\x72\x74\x42\x79\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x6c\x69\x6e\x65\x22\x29\x7d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x72\x72\x6f\x72\x73\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x67\x72\x6f\x75\x70\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x72\x72\x6f\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x72\x72\x6f\x72\x73\x5f\x5f\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x45\x72\x72\x6f\x72\x73\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x65\x72\x72\x6f\x72\x73\x5f\x5f\x63\x6c\x65\x61\x72\x2d\x62\x74\x6e\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x6f\x67\x67\x6c\x65\x56\x69\x73\x69\x62\x69\x6c\x69\x74\x79\x7d\x2c\x69\x73\x56\x69\x73\x69\x62\x6c\x65\x3f\x22\x48\x69\x64\x65\x22\x3a\x22\x53\x68\x6f\x77\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x7b\x69\x73\x4f\x70\x65\x6e\x65\x64\x3a\x69\x73\x56\x69\x73\x69\x62\x6c\x65\x2c\x61\x6e\x69\x6d\x61\x74\x65\x64\x3a\x74\x72\x75\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x72\x72\x6f\x72\x73\x22\x7d\x2c\x73\x6f\x72\x74\x65\x64\x4a\x53\x45\x72\x72\x6f\x72\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x2c\x69\x29\x7b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x74\x68\x72\x6f\x77\x6e\x22\x7c\x7c\x74\x79\x70\x65\x3d\x3d\x3d\x22\x61\x75\x74\x68\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x6f\x72\x49\x74\x65\x6d\x2c\x7b\x6b\x65\x79\x3a\x69\x2c\x65\x72\x72\x6f\x72\x3a\x65\x72\x72\x2e\x67\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x22\x29\x7c\x7c\x65\x72\x72\x2c\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3a\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x7d\x29\x7d\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x73\x70\x65\x63\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x70\x65\x63\x45\x72\x72\x6f\x72\x49\x74\x65\x6d\x2c\x7b\x6b\x65\x79\x3a\x69\x2c\x65\x72\x72\x6f\x72\x3a\x65\x72\x72\x2c\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3a\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x7d\x29\x7d\x7d\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x45\x72\x72\x6f\x72\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x45\x72\x72\x6f\x72\x73\x3b\x76\x61\x72\x20\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x6f\x72\x49\x74\x65\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x6f\x72\x49\x74\x65\x6d\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x3d\x5f\x72\x65\x66\x2e\x65\x72\x72\x6f\x72\x2c\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3d\x5f\x72\x65\x66\x2e\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3b\x69\x66\x28\x21\x65\x72\x72\x6f\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x4c\x69\x6e\x65\x3d\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6c\x69\x6e\x65\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x72\x72\x6f\x72\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x21\x65\x72\x72\x6f\x72\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x73\x6f\x75\x72\x63\x65\x22\x29\x26\x26\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6c\x65\x76\x65\x6c\x22\x29\x3f\x74\x6f\x54\x69\x74\x6c\x65\x43\x61\x73\x65\x28\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x73\x6f\x75\x72\x63\x65\x22\x29\x29\x2b\x22\x20\x22\x2b\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6c\x65\x76\x65\x6c\x22\x29\x3a\x22\x22\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x61\x74\x20\x22\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65\x3a\x22\x70\x72\x65\x2d\x6c\x69\x6e\x65\x22\x2c\x6d\x61\x78\x57\x69\x64\x74\x68\x3a\x22\x31\x30\x30\x25\x22\x7d\x7d\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x22\x74\x65\x78\x74\x2d\x64\x65\x63\x6f\x72\x61\x74\x69\x6f\x6e\x22\x3a\x22\x75\x6e\x64\x65\x72\x6c\x69\x6e\x65\x22\x2c\x63\x75\x72\x73\x6f\x72\x3a\x22\x70\x6f\x69\x6e\x74\x65\x72\x22\x7d\x7d\x2c\x65\x72\x72\x6f\x72\x4c\x69\x6e\x65\x26\x26\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x65\x72\x72\x6f\x72\x4c\x69\x6e\x65\x29\x7d\x2c\x22\x4a\x75\x6d\x70\x20\x74\x6f\x20\x6c\x69\x6e\x65\x20\x22\x2c\x65\x72\x72\x6f\x72\x4c\x69\x6e\x65\x29\x3a\x6e\x75\x6c\x6c\x29\x29\x29\x7d\x3b\x76\x61\x72\x20\x53\x70\x65\x63\x45\x72\x72\x6f\x72\x49\x74\x65\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x70\x65\x63\x45\x72\x72\x6f\x72\x49\x74\x65\x6d\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x3d\x5f\x72\x65\x66\x32\x2e\x65\x72\x72\x6f\x72\x2c\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3d\x5f\x72\x65\x66\x32\x2e\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3b\x76\x61\x72\x20\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x4d\x65\x73\x73\x61\x67\x65\x3d\x6e\x75\x6c\x6c\x3b\x69\x66\x28\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x29\x7b\x69\x66\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x29\x29\x7b\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x4d\x65\x73\x73\x61\x67\x65\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x61\x74\x20\x22\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x2e\x22\x29\x29\x7d\x65\x6c\x73\x65\x7b\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x4d\x65\x73\x73\x61\x67\x65\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x61\x74\x20\x22\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x70\x61\x74\x68\x22\x29\x29\x7d\x7d\x65\x6c\x73\x65\x20\x69\x66\x28\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6c\x69\x6e\x65\x22\x29\x26\x26\x21\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x29\x7b\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x4d\x65\x73\x73\x61\x67\x65\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x6f\x6e\x20\x6c\x69\x6e\x65\x20\x22\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6c\x69\x6e\x65\x22\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x65\x72\x72\x6f\x72\x2d\x77\x72\x61\x70\x70\x65\x72\x22\x7d\x2c\x21\x65\x72\x72\x6f\x72\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x74\x6f\x54\x69\x74\x6c\x65\x43\x61\x73\x65\x28\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x73\x6f\x75\x72\x63\x65\x22\x29\x29\x2b\x22\x20\x22\x2b\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6c\x65\x76\x65\x6c\x22\x29\x2c\x22\xc2\xa0\x22\x2c\x6c\x6f\x63\x61\x74\x69\x6f\x6e\x4d\x65\x73\x73\x61\x67\x65\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65\x3a\x22\x70\x72\x65\x2d\x6c\x69\x6e\x65\x22\x7d\x7d\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x22\x74\x65\x78\x74\x2d\x64\x65\x63\x6f\x72\x61\x74\x69\x6f\x6e\x22\x3a\x22\x75\x6e\x64\x65\x72\x6c\x69\x6e\x65\x22\x2c\x63\x75\x72\x73\x6f\x72\x3a\x22\x70\x6f\x69\x6e\x74\x65\x72\x22\x7d\x7d\x2c\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x2e\x62\x69\x6e\x64\x28\x6e\x75\x6c\x6c\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6c\x69\x6e\x65\x22\x29\x29\x7d\x2c\x22\x4a\x75\x6d\x70\x20\x74\x6f\x20\x6c\x69\x6e\x65\x20\x22\x2c\x65\x72\x72\x6f\x72\x2e\x67\x65\x74\x28\x22\x6c\x69\x6e\x65\x22\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x29\x29\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x54\x69\x74\x6c\x65\x43\x61\x73\x65\x28\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x28\x73\x74\x72\x7c\x7c\x22\x22\x29\x2e\x73\x70\x6c\x69\x74\x28\x22\x20\x22\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x75\x62\x73\x74\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x73\x75\x62\x73\x74\x72\x5b\x30\x5d\x2e\x74\x6f\x55\x70\x70\x65\x72\x43\x61\x73\x65\x28\x29\x2b\x73\x75\x62\x73\x74\x72\x2e\x73\x6c\x69\x63\x65\x28\x31\x29\x7d\x29\x2e\x6a\x6f\x69\x6e\x28\x22\x20\x22\x29\x7d\x54\x68\x72\x6f\x77\x6e\x45\x72\x72\x6f\x72\x49\x74\x65\x6d\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x6a\x75\x6d\x70\x54\x6f\x4c\x69\x6e\x65\x3a\x6e\x75\x6c\x6c\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x6e\x6f\x6f\x70\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x6f\x6f\x70\x28\x29\x7b\x7d\x3b\x76\x61\x72\x20\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x69\x66\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x29\x7b\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x2e\x66\x69\x72\x73\x74\x28\x29\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x21\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x7c\x7c\x21\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x2e\x73\x69\x7a\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x69\x66\x28\x21\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x2e\x69\x6e\x63\x6c\x75\x64\x65\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x29\x29\x7b\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x2e\x66\x69\x72\x73\x74\x28\x29\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x3b\x69\x66\x28\x21\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x7c\x7c\x21\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x2e\x73\x69\x7a\x65\x29\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x74\x79\x70\x65\x2d\x77\x72\x61\x70\x70\x65\x72\x20\x22\x2b\x28\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x7c\x7c\x22\x22\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x6c\x65\x63\x74\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x74\x79\x70\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7c\x7c\x22\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x57\x72\x61\x70\x70\x65\x72\x7d\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x6b\x65\x79\x3a\x76\x61\x6c\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x7d\x2c\x76\x61\x6c\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x6e\x6f\x6f\x70\x2c\x76\x61\x6c\x75\x65\x3a\x6e\x75\x6c\x6c\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x5b\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x6a\x73\x6f\x6e\x22\x5d\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x6c\x61\x79\x6f\x75\x74\x55\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x36\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4f\x76\x65\x72\x76\x69\x65\x77\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x76\x65\x72\x76\x69\x65\x77\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x76\x65\x72\x76\x69\x65\x77\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x76\x65\x72\x76\x69\x65\x77\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x4f\x76\x65\x72\x76\x69\x65\x77\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x76\x65\x72\x76\x69\x65\x77\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x54\x61\x67\x53\x68\x6f\x77\x6e\x3d\x5f\x74\x68\x69\x73\x2e\x5f\x73\x65\x74\x54\x61\x67\x53\x68\x6f\x77\x6e\x2e\x62\x69\x6e\x64\x28\x5f\x74\x68\x69\x73\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x76\x65\x72\x76\x69\x65\x77\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x5f\x73\x65\x74\x54\x61\x67\x53\x68\x6f\x77\x6e\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x73\x65\x74\x54\x61\x67\x53\x68\x6f\x77\x6e\x28\x73\x68\x6f\x77\x54\x61\x67\x49\x64\x2c\x73\x68\x6f\x77\x6e\x29\x7b\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x73\x68\x6f\x77\x54\x61\x67\x49\x64\x2c\x73\x68\x6f\x77\x6e\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x73\x68\x6f\x77\x4f\x70\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x73\x68\x6f\x77\x4f\x70\x28\x6b\x65\x79\x2c\x73\x68\x6f\x77\x6e\x29\x7b\x76\x61\x72\x20\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3b\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x6b\x65\x79\x2c\x73\x68\x6f\x77\x6e\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x74\x61\x67\x67\x65\x64\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x28\x29\x3b\x76\x61\x72\x20\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x6c\x61\x70\x73\x65\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x76\x65\x72\x76\x69\x65\x77\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x4f\x76\x65\x72\x76\x69\x65\x77\x22\x29\x2c\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x74\x61\x67\x4f\x62\x6a\x2c\x74\x61\x67\x29\x7b\x76\x61\x72\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x74\x61\x67\x4f\x62\x6a\x2e\x67\x65\x74\x28\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x29\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x54\x61\x67\x49\x64\x3d\x5b\x22\x6f\x76\x65\x72\x76\x69\x65\x77\x2d\x74\x61\x67\x73\x22\x2c\x74\x61\x67\x5d\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x54\x61\x67\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x28\x73\x68\x6f\x77\x54\x61\x67\x49\x64\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x73\x68\x6f\x77\x54\x61\x67\x49\x64\x2c\x21\x73\x68\x6f\x77\x54\x61\x67\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6b\x65\x79\x3a\x22\x6f\x76\x65\x72\x76\x69\x65\x77\x2d\x22\x2b\x74\x61\x67\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x6f\x67\x67\x6c\x65\x53\x68\x6f\x77\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6c\x69\x6e\x6b\x20\x6f\x76\x65\x72\x76\x69\x65\x77\x2d\x74\x61\x67\x22\x7d\x2c\x22\x20\x22\x2c\x73\x68\x6f\x77\x54\x61\x67\x3f\x22\x2d\x22\x3a\x22\x2b\x22\x2c\x74\x61\x67\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x7b\x69\x73\x4f\x70\x65\x6e\x65\x64\x3a\x73\x68\x6f\x77\x54\x61\x67\x2c\x61\x6e\x69\x6d\x61\x74\x65\x64\x3a\x74\x72\x75\x65\x7d\x2c\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6f\x70\x29\x7b\x76\x61\x72\x20\x5f\x6f\x70\x24\x74\x6f\x4f\x62\x6a\x65\x63\x74\x3d\x6f\x70\x2e\x74\x6f\x4f\x62\x6a\x65\x63\x74\x28\x29\x2c\x70\x61\x74\x68\x3d\x5f\x6f\x70\x24\x74\x6f\x4f\x62\x6a\x65\x63\x74\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x6f\x70\x24\x74\x6f\x4f\x62\x6a\x65\x63\x74\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x69\x64\x3d\x5f\x6f\x70\x24\x74\x6f\x4f\x62\x6a\x65\x63\x74\x2e\x69\x64\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x4f\x70\x49\x64\x50\x72\x65\x66\x69\x78\x3d\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x4f\x70\x49\x64\x3d\x69\x64\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x6e\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x28\x5b\x73\x68\x6f\x77\x4f\x70\x49\x64\x50\x72\x65\x66\x69\x78\x2c\x73\x68\x6f\x77\x4f\x70\x49\x64\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x2c\x7b\x6b\x65\x79\x3a\x69\x64\x2c\x70\x61\x74\x68\x3a\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3a\x6d\x65\x74\x68\x6f\x64\x2c\x69\x64\x3a\x70\x61\x74\x68\x2b\x22\x2d\x22\x2b\x6d\x65\x74\x68\x6f\x64\x2c\x73\x68\x6f\x77\x6e\x3a\x73\x68\x6f\x77\x6e\x2c\x73\x68\x6f\x77\x4f\x70\x49\x64\x3a\x73\x68\x6f\x77\x4f\x70\x49\x64\x2c\x73\x68\x6f\x77\x4f\x70\x49\x64\x50\x72\x65\x66\x69\x78\x3a\x73\x68\x6f\x77\x4f\x70\x49\x64\x50\x72\x65\x66\x69\x78\x2c\x68\x72\x65\x66\x3a\x22\x23\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2d\x22\x2b\x73\x68\x6f\x77\x4f\x70\x49\x64\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x7d\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x2c\x74\x61\x67\x67\x65\x64\x4f\x70\x73\x2e\x73\x69\x7a\x65\x3c\x31\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x33\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x20\x4e\x6f\x20\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x20\x64\x65\x66\x69\x6e\x65\x64\x20\x69\x6e\x20\x73\x70\x65\x63\x21\x20\x22\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x76\x65\x72\x76\x69\x65\x77\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x76\x65\x72\x76\x69\x65\x77\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x28\x70\x72\x6f\x70\x73\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x29\x29\x3b\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x3d\x5f\x74\x68\x69\x73\x32\x2e\x5f\x6f\x6e\x43\x6c\x69\x63\x6b\x2e\x62\x69\x6e\x64\x28\x5f\x74\x68\x69\x73\x32\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x5f\x6f\x6e\x43\x6c\x69\x63\x6b\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x68\x6f\x77\x4f\x70\x49\x64\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x68\x6f\x77\x4f\x70\x49\x64\x2c\x73\x68\x6f\x77\x4f\x70\x49\x64\x50\x72\x65\x66\x69\x78\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x68\x6f\x77\x4f\x70\x49\x64\x50\x72\x65\x66\x69\x78\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x2c\x73\x68\x6f\x77\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x68\x6f\x77\x6e\x3b\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x5b\x73\x68\x6f\x77\x4f\x70\x49\x64\x50\x72\x65\x66\x69\x78\x2c\x73\x68\x6f\x77\x4f\x70\x49\x64\x5d\x2c\x21\x73\x68\x6f\x77\x6e\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x33\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x69\x64\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x69\x64\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x73\x68\x6f\x77\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x73\x68\x6f\x77\x6e\x2c\x68\x72\x65\x66\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x68\x72\x65\x66\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x5f\x6c\x61\x79\x6f\x75\x74\x55\x74\x69\x6c\x73\x2e\x4c\x69\x6e\x6b\x2c\x7b\x68\x72\x65\x66\x3a\x68\x72\x65\x66\x2c\x73\x74\x79\x6c\x65\x3a\x7b\x66\x6f\x6e\x74\x57\x65\x69\x67\x68\x74\x3a\x73\x68\x6f\x77\x6e\x3f\x22\x62\x6f\x6c\x64\x22\x3a\x22\x6e\x6f\x72\x6d\x61\x6c\x22\x7d\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x6c\x69\x63\x6b\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6c\x6f\x63\x6b\x20\x6f\x70\x62\x6c\x6f\x63\x6b\x2d\x6c\x69\x6e\x6b\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x6c\x64\x2d\x6c\x61\x62\x65\x6c\x2d\x22\x2b\x6d\x65\x74\x68\x6f\x64\x7d\x2c\x6d\x65\x74\x68\x6f\x64\x2e\x74\x6f\x55\x70\x70\x65\x72\x43\x61\x73\x65\x28\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x6c\x64\x2d\x6c\x61\x62\x65\x6c\x22\x7d\x2c\x69\x64\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x4c\x69\x6e\x6b\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x49\x6e\x66\x6f\x55\x72\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x68\x6f\x73\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x68\x6f\x73\x74\x2c\x62\x61\x73\x65\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x62\x61\x73\x65\x50\x61\x74\x68\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x61\x73\x65\x2d\x75\x72\x6c\x22\x7d\x2c\x22\x5b\x20\x42\x61\x73\x65\x20\x55\x52\x4c\x3a\x20\x22\x2c\x68\x6f\x73\x74\x2c\x62\x61\x73\x65\x50\x61\x74\x68\x2c\x22\x20\x5d\x22\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x43\x6f\x6e\x74\x61\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6e\x74\x61\x63\x74\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x43\x6f\x6e\x74\x61\x63\x74\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x43\x6f\x6e\x74\x61\x63\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x43\x6f\x6e\x74\x61\x63\x74\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6e\x74\x61\x63\x74\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x6f\x6e\x74\x61\x63\x74\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x64\x61\x74\x61\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x64\x61\x74\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x6e\x61\x6d\x65\x3d\x64\x61\x74\x61\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x7c\x7c\x22\x74\x68\x65\x20\x64\x65\x76\x65\x6c\x6f\x70\x65\x72\x22\x3b\x76\x61\x72\x20\x75\x72\x6c\x3d\x64\x61\x74\x61\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x3b\x76\x61\x72\x20\x65\x6d\x61\x69\x6c\x3d\x64\x61\x74\x61\x2e\x67\x65\x74\x28\x22\x65\x6d\x61\x69\x6c\x22\x29\x3b\x76\x61\x72\x20\x4c\x69\x6e\x6b\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4c\x69\x6e\x6b\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x66\x6f\x5f\x5f\x63\x6f\x6e\x74\x61\x63\x74\x22\x7d\x2c\x75\x72\x6c\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x6e\x6b\x2c\x7b\x68\x72\x65\x66\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x75\x72\x6c\x29\x2c\x74\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x7d\x2c\x6e\x61\x6d\x65\x2c\x22\x20\x2d\x20\x57\x65\x62\x73\x69\x74\x65\x22\x29\x29\x2c\x65\x6d\x61\x69\x6c\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x6e\x6b\x2c\x7b\x68\x72\x65\x66\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x22\x6d\x61\x69\x6c\x74\x6f\x3a\x22\x2b\x65\x6d\x61\x69\x6c\x29\x7d\x2c\x75\x72\x6c\x3f\x22\x53\x65\x6e\x64\x20\x65\x6d\x61\x69\x6c\x20\x74\x6f\x20\x22\x2b\x6e\x61\x6d\x65\x3a\x22\x43\x6f\x6e\x74\x61\x63\x74\x20\x22\x2b\x6e\x61\x6d\x65\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x6f\x6e\x74\x61\x63\x74\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x4c\x69\x63\x65\x6e\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x33\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4c\x69\x63\x65\x6e\x73\x65\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x33\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4c\x69\x63\x65\x6e\x73\x65\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4c\x69\x63\x65\x6e\x73\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4c\x69\x63\x65\x6e\x73\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4c\x69\x63\x65\x6e\x73\x65\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4c\x69\x63\x65\x6e\x73\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x33\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6c\x69\x63\x65\x6e\x73\x65\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x6c\x69\x63\x65\x6e\x73\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x4c\x69\x6e\x6b\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4c\x69\x6e\x6b\x22\x29\x3b\x76\x61\x72\x20\x6e\x61\x6d\x65\x3d\x6c\x69\x63\x65\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x7c\x7c\x22\x4c\x69\x63\x65\x6e\x73\x65\x22\x3b\x76\x61\x72\x20\x75\x72\x6c\x3d\x6c\x69\x63\x65\x6e\x73\x65\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x66\x6f\x5f\x5f\x6c\x69\x63\x65\x6e\x73\x65\x22\x7d\x2c\x75\x72\x6c\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x6e\x6b\x2c\x7b\x74\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x2c\x68\x72\x65\x66\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x75\x72\x6c\x29\x7d\x2c\x6e\x61\x6d\x65\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x6e\x61\x6d\x65\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4c\x69\x63\x65\x6e\x73\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x49\x6e\x66\x6f\x55\x72\x6c\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x49\x6e\x66\x6f\x55\x72\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x55\x72\x6c\x2c\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x49\x6e\x66\x6f\x55\x72\x6c\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x49\x6e\x66\x6f\x55\x72\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x49\x6e\x66\x6f\x55\x72\x6c\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x55\x72\x6c\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x55\x72\x6c\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x34\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x75\x72\x6c\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x75\x72\x6c\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x4c\x69\x6e\x6b\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4c\x69\x6e\x6b\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x6e\x6b\x2c\x7b\x74\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x2c\x68\x72\x65\x66\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x75\x72\x6c\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x75\x72\x6c\x22\x7d\x2c\x22\x20\x22\x2c\x75\x72\x6c\x2c\x22\x20\x22\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x49\x6e\x66\x6f\x55\x72\x6c\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x76\x61\x72\x20\x49\x6e\x66\x6f\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x34\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x34\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x49\x6e\x66\x6f\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x49\x6e\x66\x6f\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x49\x6e\x66\x6f\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x35\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x69\x6e\x66\x6f\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x69\x6e\x66\x6f\x2c\x75\x72\x6c\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x75\x72\x6c\x2c\x68\x6f\x73\x74\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x68\x6f\x73\x74\x2c\x62\x61\x73\x65\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x62\x61\x73\x65\x50\x61\x74\x68\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x3b\x76\x61\x72\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x69\x6e\x66\x6f\x2e\x67\x65\x74\x28\x22\x76\x65\x72\x73\x69\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x69\x6e\x66\x6f\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x74\x69\x74\x6c\x65\x3d\x69\x6e\x66\x6f\x2e\x67\x65\x74\x28\x22\x74\x69\x74\x6c\x65\x22\x29\x3b\x76\x61\x72\x20\x74\x65\x72\x6d\x73\x4f\x66\x53\x65\x72\x76\x69\x63\x65\x3d\x69\x6e\x66\x6f\x2e\x67\x65\x74\x28\x22\x74\x65\x72\x6d\x73\x4f\x66\x53\x65\x72\x76\x69\x63\x65\x22\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x74\x61\x63\x74\x3d\x69\x6e\x66\x6f\x2e\x67\x65\x74\x28\x22\x63\x6f\x6e\x74\x61\x63\x74\x22\x29\x3b\x76\x61\x72\x20\x6c\x69\x63\x65\x6e\x73\x65\x3d\x69\x6e\x66\x6f\x2e\x67\x65\x74\x28\x22\x6c\x69\x63\x65\x6e\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x4a\x53\x3d\x28\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x7c\x7c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x7d\x29\x29\x2e\x74\x6f\x4a\x53\x28\x29\x2c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x55\x72\x6c\x3d\x5f\x74\x6f\x4a\x53\x2e\x75\x72\x6c\x2c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x5f\x74\x6f\x4a\x53\x2e\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x4c\x69\x6e\x6b\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4c\x69\x6e\x6b\x22\x29\x3b\x76\x61\x72\x20\x56\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x56\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x22\x29\x3b\x76\x61\x72\x20\x49\x6e\x66\x6f\x55\x72\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x66\x6f\x55\x72\x6c\x22\x29\x3b\x76\x61\x72\x20\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x66\x6f\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x67\x72\x6f\x75\x70\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x61\x69\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x32\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x69\x74\x6c\x65\x22\x7d\x2c\x74\x69\x74\x6c\x65\x2c\x76\x65\x72\x73\x69\x6f\x6e\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x56\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x2c\x7b\x76\x65\x72\x73\x69\x6f\x6e\x3a\x76\x65\x72\x73\x69\x6f\x6e\x7d\x29\x29\x2c\x68\x6f\x73\x74\x7c\x7c\x62\x61\x73\x65\x50\x61\x74\x68\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x66\x6f\x42\x61\x73\x65\x50\x61\x74\x68\x2c\x7b\x68\x6f\x73\x74\x3a\x68\x6f\x73\x74\x2c\x62\x61\x73\x65\x50\x61\x74\x68\x3a\x62\x61\x73\x65\x50\x61\x74\x68\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x75\x72\x6c\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x66\x6f\x55\x72\x6c\x2c\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x75\x72\x6c\x3a\x75\x72\x6c\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x29\x2c\x74\x65\x72\x6d\x73\x4f\x66\x53\x65\x72\x76\x69\x63\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x66\x6f\x5f\x5f\x74\x6f\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x6e\x6b\x2c\x7b\x74\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x2c\x68\x72\x65\x66\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x74\x65\x72\x6d\x73\x4f\x66\x53\x65\x72\x76\x69\x63\x65\x29\x7d\x2c\x22\x54\x65\x72\x6d\x73\x20\x6f\x66\x20\x73\x65\x72\x76\x69\x63\x65\x22\x29\x29\x2c\x63\x6f\x6e\x74\x61\x63\x74\x26\x26\x63\x6f\x6e\x74\x61\x63\x74\x2e\x73\x69\x7a\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6e\x74\x61\x63\x74\x2c\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x64\x61\x74\x61\x3a\x63\x6f\x6e\x74\x61\x63\x74\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x6c\x69\x63\x65\x6e\x73\x65\x26\x26\x6c\x69\x63\x65\x6e\x73\x65\x2e\x73\x69\x7a\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x63\x65\x6e\x73\x65\x2c\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6c\x69\x63\x65\x6e\x73\x65\x3a\x6c\x69\x63\x65\x6e\x73\x65\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x55\x72\x6c\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4c\x69\x6e\x6b\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x66\x6f\x5f\x5f\x65\x78\x74\x64\x6f\x63\x73\x22\x2c\x74\x61\x72\x67\x65\x74\x3a\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x2c\x68\x72\x65\x66\x3a\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x73\x61\x6e\x69\x74\x69\x7a\x65\x55\x72\x6c\x29\x28\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x55\x72\x6c\x29\x7d\x2c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7c\x7c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x55\x72\x6c\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x49\x6e\x66\x6f\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x49\x6e\x66\x6f\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x69\x6e\x66\x6f\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x6e\x66\x6f\x28\x29\x3b\x76\x61\x72\x20\x75\x72\x6c\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x75\x72\x6c\x28\x29\x3b\x76\x61\x72\x20\x62\x61\x73\x65\x50\x61\x74\x68\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x62\x61\x73\x65\x50\x61\x74\x68\x28\x29\x3b\x76\x61\x72\x20\x68\x6f\x73\x74\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x68\x6f\x73\x74\x28\x29\x3b\x76\x61\x72\x20\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x28\x29\x3b\x76\x61\x72\x20\x49\x6e\x66\x6f\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x69\x6e\x66\x6f\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x69\x6e\x66\x6f\x26\x26\x69\x6e\x66\x6f\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x66\x6f\x2c\x7b\x69\x6e\x66\x6f\x3a\x69\x6e\x66\x6f\x2c\x75\x72\x6c\x3a\x75\x72\x6c\x2c\x68\x6f\x73\x74\x3a\x68\x6f\x73\x74\x2c\x62\x61\x73\x65\x50\x61\x74\x68\x3a\x62\x61\x73\x65\x50\x61\x74\x68\x2c\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x3a\x65\x78\x74\x65\x72\x6e\x61\x6c\x44\x6f\x63\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x46\x6f\x6f\x74\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x46\x6f\x6f\x74\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x46\x6f\x6f\x74\x65\x72\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x46\x6f\x6f\x74\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x46\x6f\x6f\x74\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x46\x6f\x6f\x74\x65\x72\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x46\x6f\x6f\x74\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x66\x6f\x6f\x74\x65\x72\x22\x7d\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x46\x6f\x6f\x74\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x46\x6f\x6f\x74\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x46\x69\x6c\x74\x65\x72\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x3b\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x75\x70\x64\x61\x74\x65\x46\x69\x6c\x74\x65\x72\x28\x76\x61\x6c\x75\x65\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x43\x6f\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x4c\x6f\x61\x64\x69\x6e\x67\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x29\x3d\x3d\x3d\x22\x6c\x6f\x61\x64\x69\x6e\x67\x22\x3b\x76\x61\x72\x20\x69\x73\x46\x61\x69\x6c\x65\x64\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x29\x3d\x3d\x3d\x22\x66\x61\x69\x6c\x65\x64\x22\x3b\x76\x61\x72\x20\x66\x69\x6c\x74\x65\x72\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x46\x69\x6c\x74\x65\x72\x28\x29\x3b\x76\x61\x72\x20\x69\x6e\x70\x75\x74\x53\x74\x79\x6c\x65\x3d\x7b\x7d\x3b\x69\x66\x28\x69\x73\x46\x61\x69\x6c\x65\x64\x29\x69\x6e\x70\x75\x74\x53\x74\x79\x6c\x65\x2e\x63\x6f\x6c\x6f\x72\x3d\x22\x72\x65\x64\x22\x3b\x69\x66\x28\x69\x73\x4c\x6f\x61\x64\x69\x6e\x67\x29\x69\x6e\x70\x75\x74\x53\x74\x79\x6c\x65\x2e\x63\x6f\x6c\x6f\x72\x3d\x22\x23\x61\x61\x61\x22\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x66\x69\x6c\x74\x65\x72\x3d\x3d\x3d\x6e\x75\x6c\x6c\x7c\x7c\x66\x69\x6c\x74\x65\x72\x3d\x3d\x3d\x66\x61\x6c\x73\x65\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x66\x69\x6c\x74\x65\x72\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x66\x69\x6c\x74\x65\x72\x20\x77\x72\x61\x70\x70\x65\x72\x22\x2c\x6d\x6f\x62\x69\x6c\x65\x3a\x31\x32\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x69\x6e\x70\x75\x74\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2d\x66\x69\x6c\x74\x65\x72\x2d\x69\x6e\x70\x75\x74\x22\x2c\x70\x6c\x61\x63\x65\x68\x6f\x6c\x64\x65\x72\x3a\x22\x46\x69\x6c\x74\x65\x72\x20\x62\x79\x20\x74\x61\x67\x22\x2c\x74\x79\x70\x65\x3a\x22\x74\x65\x78\x74\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x46\x69\x6c\x74\x65\x72\x43\x68\x61\x6e\x67\x65\x2c\x76\x61\x6c\x75\x65\x3a\x66\x69\x6c\x74\x65\x72\x3d\x3d\x3d\x74\x72\x75\x65\x7c\x7c\x66\x69\x6c\x74\x65\x72\x3d\x3d\x3d\x22\x74\x72\x75\x65\x22\x3f\x22\x22\x3a\x66\x69\x6c\x74\x65\x72\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x69\x73\x4c\x6f\x61\x64\x69\x6e\x67\x2c\x73\x74\x79\x6c\x65\x3a\x69\x6e\x70\x75\x74\x53\x74\x79\x6c\x65\x7d\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4e\x4f\x4f\x50\x3d\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x3b\x76\x61\x72\x20\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x2c\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x2e\x63\x61\x6c\x6c\x28\x5f\x74\x68\x69\x73\x29\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3a\x66\x61\x6c\x73\x65\x2c\x76\x61\x6c\x75\x65\x3a\x22\x22\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x74\x68\x69\x73\x2e\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x73\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x74\x68\x69\x73\x2e\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x73\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x2c\x70\x61\x72\x61\x6d\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x72\x61\x6d\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x42\x75\x74\x74\x6f\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x42\x75\x74\x74\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x54\x65\x78\x74\x41\x72\x65\x61\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x54\x65\x78\x74\x41\x72\x65\x61\x22\x29\x3b\x76\x61\x72\x20\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3f\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x57\x69\x74\x68\x4d\x65\x74\x61\x42\x79\x49\x64\x65\x6e\x74\x69\x74\x79\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x2c\x70\x61\x72\x61\x6d\x29\x3a\x70\x61\x72\x61\x6d\x3b\x76\x61\x72\x20\x65\x72\x72\x6f\x72\x73\x3d\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2e\x67\x65\x74\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x56\x61\x6c\x75\x65\x73\x28\x70\x61\x74\x68\x4d\x65\x74\x68\x6f\x64\x29\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x65\x73\x74\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x22\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x26\x26\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x2e\x73\x69\x7a\x65\x3f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3a\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3b\x76\x61\x72\x20\x5f\x73\x74\x61\x74\x65\x3d\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x2c\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3d\x5f\x73\x74\x61\x74\x65\x2e\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x22\x2c\x22\x64\x61\x74\x61\x2d\x70\x61\x72\x61\x6d\x2d\x6e\x61\x6d\x65\x22\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x6e\x61\x6d\x65\x22\x29\x2c\x22\x64\x61\x74\x61\x2d\x70\x61\x72\x61\x6d\x2d\x69\x6e\x22\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x69\x6e\x22\x29\x7d\x2c\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x26\x26\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x54\x65\x78\x74\x41\x72\x65\x61\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x5f\x5f\x74\x65\x78\x74\x22\x2b\x28\x65\x72\x72\x6f\x72\x73\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3f\x22\x20\x69\x6e\x76\x61\x6c\x69\x64\x22\x3a\x22\x22\x29\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x68\x61\x6e\x64\x6c\x65\x4f\x6e\x43\x68\x61\x6e\x67\x65\x7d\x29\x3a\x76\x61\x6c\x75\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x5f\x5f\x65\x78\x61\x6d\x70\x6c\x65\x22\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x2d\x6f\x70\x74\x69\x6f\x6e\x73\x22\x7d\x2c\x21\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x2d\x65\x64\x69\x74\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3f\x22\x62\x74\x6e\x20\x63\x61\x6e\x63\x65\x6c\x20\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x5f\x5f\x65\x78\x61\x6d\x70\x6c\x65\x2d\x65\x64\x69\x74\x22\x3a\x22\x62\x74\x6e\x20\x65\x64\x69\x74\x20\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x5f\x5f\x65\x78\x61\x6d\x70\x6c\x65\x2d\x65\x64\x69\x74\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x74\x6f\x67\x67\x6c\x65\x49\x73\x45\x64\x69\x74\x42\x6f\x78\x7d\x2c\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3f\x22\x43\x61\x6e\x63\x65\x6c\x22\x3a\x22\x45\x64\x69\x74\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x7b\x68\x74\x6d\x6c\x46\x6f\x72\x3a\x22\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x50\x61\x72\x61\x6d\x65\x74\x65\x72\x20\x63\x6f\x6e\x74\x65\x6e\x74\x20\x74\x79\x70\x65\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x54\x79\x70\x65\x73\x3a\x63\x6f\x6e\x73\x75\x6d\x65\x73\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x6f\x64\x79\x2d\x70\x61\x72\x61\x6d\x2d\x63\x6f\x6e\x74\x65\x6e\x74\x2d\x74\x79\x70\x65\x22\x7d\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x3d\x7b\x63\x6f\x6e\x73\x75\x6d\x65\x73\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x5b\x22\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x2f\x6a\x73\x6f\x6e\x22\x5d\x29\x2c\x70\x61\x72\x61\x6d\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x7b\x7d\x29\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x4e\x4f\x4f\x50\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x43\x6f\x6e\x73\x75\x6d\x65\x73\x3a\x4e\x4f\x4f\x50\x7d\x3b\x76\x61\x72\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x69\x74\x69\x61\x6c\x69\x73\x65\x50\x72\x6f\x70\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x74\x68\x69\x73\x2e\x75\x70\x64\x61\x74\x65\x56\x61\x6c\x75\x65\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x70\x72\x6f\x70\x73\x29\x7b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x3d\x70\x72\x6f\x70\x73\x2e\x70\x61\x72\x61\x6d\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3d\x70\x72\x6f\x70\x73\x2e\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x5f\x70\x72\x6f\x70\x73\x24\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3d\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x2c\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x24\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x22\x3a\x5f\x70\x72\x6f\x70\x73\x24\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x69\x73\x58\x6d\x6c\x3d\x2f\x78\x6d\x6c\x2f\x69\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x29\x3b\x76\x61\x72\x20\x69\x73\x4a\x73\x6f\x6e\x3d\x2f\x6a\x73\x6f\x6e\x2f\x69\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x29\x3b\x76\x61\x72\x20\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x3d\x69\x73\x58\x6d\x6c\x3f\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x5f\x78\x6d\x6c\x22\x29\x3a\x70\x61\x72\x61\x6d\x2e\x67\x65\x74\x28\x22\x76\x61\x6c\x75\x65\x22\x29\x3b\x69\x66\x28\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x21\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x3d\x21\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x26\x26\x69\x73\x4a\x73\x6f\x6e\x3f\x22\x7b\x7d\x22\x3a\x70\x61\x72\x61\x6d\x56\x61\x6c\x75\x65\x3b\x5f\x74\x68\x69\x73\x32\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x7d\x29\x3b\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x2c\x7b\x69\x73\x58\x6d\x6c\x3a\x69\x73\x58\x6d\x6c\x2c\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3a\x69\x73\x45\x78\x65\x63\x75\x74\x65\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x69\x66\x28\x69\x73\x58\x6d\x6c\x29\x7b\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x5f\x74\x68\x69\x73\x32\x2e\x73\x61\x6d\x70\x6c\x65\x28\x22\x78\x6d\x6c\x22\x29\x2c\x7b\x69\x73\x58\x6d\x6c\x3a\x69\x73\x58\x6d\x6c\x2c\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3a\x69\x73\x45\x78\x65\x63\x75\x74\x65\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x5f\x74\x68\x69\x73\x32\x2e\x73\x61\x6d\x70\x6c\x65\x28\x29\x2c\x7b\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3a\x69\x73\x45\x78\x65\x63\x75\x74\x65\x7d\x29\x7d\x7d\x7d\x3b\x74\x68\x69\x73\x2e\x73\x61\x6d\x70\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x78\x6d\x6c\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2c\x70\x61\x72\x61\x6d\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x70\x61\x72\x61\x6d\x2c\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x66\x6e\x2e\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x28\x70\x61\x72\x61\x6d\x2e\x74\x6f\x4a\x53\x28\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x53\x61\x6d\x70\x6c\x65\x53\x63\x68\x65\x6d\x61\x29\x28\x73\x63\x68\x65\x6d\x61\x2c\x78\x6d\x6c\x2c\x7b\x69\x6e\x63\x6c\x75\x64\x65\x57\x72\x69\x74\x65\x4f\x6e\x6c\x79\x3a\x74\x72\x75\x65\x7d\x29\x7d\x3b\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x2c\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3d\x5f\x72\x65\x66\x2e\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x2c\x69\x73\x58\x6d\x6c\x3d\x5f\x72\x65\x66\x2e\x69\x73\x58\x6d\x6c\x3b\x5f\x74\x68\x69\x73\x32\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3a\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x7d\x29\x3b\x5f\x74\x68\x69\x73\x32\x2e\x5f\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x75\x65\x2c\x69\x73\x58\x6d\x6c\x29\x7d\x3b\x74\x68\x69\x73\x2e\x5f\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x2c\x69\x73\x58\x6d\x6c\x29\x7b\x28\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x7c\x7c\x4e\x4f\x4f\x50\x29\x28\x76\x61\x6c\x2c\x69\x73\x58\x6d\x6c\x29\x7d\x3b\x74\x68\x69\x73\x2e\x68\x61\x6e\x64\x6c\x65\x4f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x69\x73\x58\x6d\x6c\x3d\x2f\x78\x6d\x6c\x2f\x69\x2e\x74\x65\x73\x74\x28\x63\x6f\x6e\x73\x75\x6d\x65\x73\x56\x61\x6c\x75\x65\x29\x3b\x76\x61\x72\x20\x69\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x3b\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x69\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x2c\x7b\x69\x73\x58\x6d\x6c\x3a\x69\x73\x58\x6d\x6c\x7d\x29\x7d\x3b\x74\x68\x69\x73\x2e\x74\x6f\x67\x67\x6c\x65\x49\x73\x45\x64\x69\x74\x42\x6f\x78\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x3a\x21\x73\x74\x61\x74\x65\x2e\x69\x73\x45\x64\x69\x74\x42\x6f\x78\x7d\x7d\x29\x7d\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x50\x61\x72\x61\x6d\x42\x6f\x64\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x63\x75\x72\x6c\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x34\x39\x29\x3b\x76\x61\x72\x20\x5f\x63\x75\x72\x6c\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x75\x72\x6c\x69\x66\x79\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x43\x75\x72\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x75\x72\x6c\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x43\x75\x72\x6c\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x43\x75\x72\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x43\x75\x72\x6c\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x75\x72\x6c\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x43\x75\x72\x6c\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x68\x61\x6e\x64\x6c\x65\x46\x6f\x63\x75\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x68\x61\x6e\x64\x6c\x65\x46\x6f\x63\x75\x73\x28\x65\x29\x7b\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x73\x65\x6c\x65\x63\x74\x28\x29\x3b\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x65\x78\x65\x63\x43\x6f\x6d\x6d\x61\x6e\x64\x28\x22\x63\x6f\x70\x79\x22\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x72\x65\x71\x75\x65\x73\x74\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x3b\x76\x61\x72\x20\x63\x75\x72\x6c\x3d\x28\x30\x2c\x5f\x63\x75\x72\x6c\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x71\x75\x65\x73\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x43\x75\x72\x6c\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x6f\x70\x79\x2d\x70\x61\x73\x74\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x65\x78\x74\x61\x72\x65\x61\x22\x2c\x7b\x6f\x6e\x46\x6f\x63\x75\x73\x3a\x74\x68\x69\x73\x2e\x68\x61\x6e\x64\x6c\x65\x46\x6f\x63\x75\x73\x2c\x72\x65\x61\x64\x4f\x6e\x6c\x79\x3a\x22\x74\x72\x75\x65\x22\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x63\x75\x72\x6c\x22\x2c\x73\x74\x79\x6c\x65\x3a\x7b\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65\x3a\x22\x6e\x6f\x72\x6d\x61\x6c\x22\x7d\x2c\x76\x61\x6c\x75\x65\x3a\x63\x75\x72\x6c\x7d\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x43\x75\x72\x6c\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x43\x75\x72\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x30\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x32\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x63\x75\x72\x6c\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x33\x29\x3b\x76\x61\x72\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x77\x69\x6e\x64\x6f\x77\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x75\x72\x6c\x28\x72\x65\x71\x75\x65\x73\x74\x29\x7b\x76\x61\x72\x20\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x3d\x5b\x5d\x3b\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x22\x22\x3b\x76\x61\x72\x20\x68\x65\x61\x64\x65\x72\x73\x3d\x72\x65\x71\x75\x65\x73\x74\x2e\x67\x65\x74\x28\x22\x68\x65\x61\x64\x65\x72\x73\x22\x29\x3b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x22\x63\x75\x72\x6c\x22\x29\x3b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x22\x2d\x58\x22\x2c\x72\x65\x71\x75\x65\x73\x74\x2e\x67\x65\x74\x28\x22\x6d\x65\x74\x68\x6f\x64\x22\x29\x29\x3b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x27\x22\x27\x2b\x72\x65\x71\x75\x65\x73\x74\x2e\x67\x65\x74\x28\x22\x75\x72\x6c\x22\x29\x2b\x27\x22\x27\x29\x3b\x69\x66\x28\x68\x65\x61\x64\x65\x72\x73\x26\x26\x68\x65\x61\x64\x65\x72\x73\x2e\x73\x69\x7a\x65\x29\x7b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x72\x79\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x3d\x28\x30\x2c\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x71\x75\x65\x73\x74\x2e\x67\x65\x74\x28\x22\x68\x65\x61\x64\x65\x72\x73\x22\x29\x2e\x65\x6e\x74\x72\x69\x65\x73\x28\x29\x29\x2c\x5f\x73\x74\x65\x70\x3b\x21\x28\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x3d\x28\x5f\x73\x74\x65\x70\x3d\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x6e\x65\x78\x74\x28\x29\x29\x2e\x64\x6f\x6e\x65\x29\x3b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x3d\x74\x72\x75\x65\x29\x7b\x76\x61\x72\x20\x70\x3d\x5f\x73\x74\x65\x70\x2e\x76\x61\x6c\x75\x65\x3b\x76\x61\x72\x20\x5f\x70\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x70\x2c\x32\x29\x2c\x68\x3d\x5f\x70\x5b\x30\x5d\x2c\x76\x3d\x5f\x70\x5b\x31\x5d\x3b\x74\x79\x70\x65\x3d\x76\x3b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x22\x2d\x48\x20\x22\x29\x3b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x27\x22\x27\x2b\x68\x2b\x22\x3a\x20\x22\x2b\x76\x2b\x27\x22\x27\x29\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x29\x7b\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x74\x72\x75\x65\x3b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x3d\x65\x72\x72\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x74\x72\x79\x7b\x69\x66\x28\x21\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x26\x26\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x72\x65\x74\x75\x72\x6e\x29\x7b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x2e\x72\x65\x74\x75\x72\x6e\x28\x29\x7d\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x29\x7b\x74\x68\x72\x6f\x77\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x7d\x7d\x7d\x7d\x69\x66\x28\x72\x65\x71\x75\x65\x73\x74\x2e\x67\x65\x74\x28\x22\x62\x6f\x64\x79\x22\x29\x29\x7b\x69\x66\x28\x74\x79\x70\x65\x3d\x3d\x3d\x22\x6d\x75\x6c\x74\x69\x70\x61\x72\x74\x2f\x66\x6f\x72\x6d\x2d\x64\x61\x74\x61\x22\x26\x26\x72\x65\x71\x75\x65\x73\x74\x2e\x67\x65\x74\x28\x22\x6d\x65\x74\x68\x6f\x64\x22\x29\x3d\x3d\x3d\x22\x50\x4f\x53\x54\x22\x29\x7b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x32\x3d\x74\x72\x75\x65\x3b\x76\x61\x72\x20\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x32\x3d\x66\x61\x6c\x73\x65\x3b\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x32\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x74\x72\x79\x7b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x32\x3d\x28\x30\x2c\x5f\x67\x65\x74\x49\x74\x65\x72\x61\x74\x6f\x72\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x71\x75\x65\x73\x74\x2e\x67\x65\x74\x28\x22\x62\x6f\x64\x79\x22\x29\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x29\x2c\x5f\x73\x74\x65\x70\x32\x3b\x21\x28\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x32\x3d\x28\x5f\x73\x74\x65\x70\x32\x3d\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x32\x2e\x6e\x65\x78\x74\x28\x29\x29\x2e\x64\x6f\x6e\x65\x29\x3b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x32\x3d\x74\x72\x75\x65\x29\x7b\x76\x61\x72\x20\x5f\x73\x74\x65\x70\x32\x24\x76\x61\x6c\x75\x65\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x73\x74\x65\x70\x32\x2e\x76\x61\x6c\x75\x65\x2c\x32\x29\x2c\x6b\x3d\x5f\x73\x74\x65\x70\x32\x24\x76\x61\x6c\x75\x65\x5b\x30\x5d\x2c\x76\x3d\x5f\x73\x74\x65\x70\x32\x24\x76\x61\x6c\x75\x65\x5b\x31\x5d\x3b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x22\x2d\x46\x22\x29\x3b\x69\x66\x28\x76\x20\x69\x6e\x73\x74\x61\x6e\x63\x65\x6f\x66\x20\x5f\x77\x69\x6e\x64\x6f\x77\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x46\x69\x6c\x65\x29\x7b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x27\x22\x27\x2b\x6b\x2b\x22\x3d\x40\x22\x2b\x76\x2e\x6e\x61\x6d\x65\x2b\x28\x76\x2e\x74\x79\x70\x65\x3f\x22\x3b\x74\x79\x70\x65\x3d\x22\x2b\x76\x2e\x74\x79\x70\x65\x3a\x22\x22\x29\x2b\x27\x22\x27\x29\x7d\x65\x6c\x73\x65\x7b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x27\x22\x27\x2b\x6b\x2b\x22\x3d\x22\x2b\x76\x2b\x27\x22\x27\x29\x7d\x7d\x7d\x63\x61\x74\x63\x68\x28\x65\x72\x72\x29\x7b\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x32\x3d\x74\x72\x75\x65\x3b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x32\x3d\x65\x72\x72\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x74\x72\x79\x7b\x69\x66\x28\x21\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x4e\x6f\x72\x6d\x61\x6c\x43\x6f\x6d\x70\x6c\x65\x74\x69\x6f\x6e\x32\x26\x26\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x32\x2e\x72\x65\x74\x75\x72\x6e\x29\x7b\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x32\x2e\x72\x65\x74\x75\x72\x6e\x28\x29\x7d\x7d\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x5f\x64\x69\x64\x49\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x32\x29\x7b\x74\x68\x72\x6f\x77\x20\x5f\x69\x74\x65\x72\x61\x74\x6f\x72\x45\x72\x72\x6f\x72\x32\x7d\x7d\x7d\x7d\x65\x6c\x73\x65\x7b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x22\x2d\x64\x22\x29\x3b\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x70\x75\x73\x68\x28\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x72\x65\x71\x75\x65\x73\x74\x2e\x67\x65\x74\x28\x22\x62\x6f\x64\x79\x22\x29\x29\x2e\x72\x65\x70\x6c\x61\x63\x65\x28\x2f\x5c\x5c\x6e\x2f\x67\x2c\x22\x22\x29\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x63\x75\x72\x6c\x69\x66\x69\x65\x64\x2e\x6a\x6f\x69\x6e\x28\x22\x20\x22\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x65\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x63\x68\x65\x6d\x65\x73\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x63\x68\x65\x6d\x65\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x53\x63\x68\x65\x6d\x65\x73\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x53\x63\x68\x65\x6d\x65\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x63\x68\x65\x6d\x65\x73\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x63\x68\x65\x6d\x65\x28\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x29\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x63\x68\x65\x6d\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x70\x61\x74\x68\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x6d\x65\x74\x68\x6f\x64\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3b\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x65\x74\x53\x63\x68\x65\x6d\x65\x28\x76\x61\x6c\x75\x65\x2c\x70\x61\x74\x68\x2c\x6d\x65\x74\x68\x6f\x64\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x63\x68\x65\x6d\x65\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x65\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x3b\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x63\x68\x65\x6d\x65\x28\x73\x63\x68\x65\x6d\x65\x73\x2e\x66\x69\x72\x73\x74\x28\x29\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x21\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x63\x68\x65\x6d\x65\x7c\x7c\x21\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x2e\x69\x6e\x63\x6c\x75\x64\x65\x73\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x63\x68\x65\x6d\x65\x29\x29\x7b\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x63\x68\x65\x6d\x65\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x2e\x66\x69\x72\x73\x74\x28\x29\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x2c\x63\x75\x72\x72\x65\x6e\x74\x53\x63\x68\x65\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x63\x75\x72\x72\x65\x6e\x74\x53\x63\x68\x65\x6d\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x61\x62\x65\x6c\x22\x2c\x7b\x68\x74\x6d\x6c\x46\x6f\x72\x3a\x22\x73\x63\x68\x65\x6d\x65\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x73\x63\x68\x65\x6d\x65\x73\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x53\x63\x68\x65\x6d\x65\x73\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x6c\x65\x63\x74\x22\x2c\x7b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x76\x61\x6c\x75\x65\x3a\x63\x75\x72\x72\x65\x6e\x74\x53\x63\x68\x65\x6d\x65\x7d\x2c\x73\x63\x68\x65\x6d\x65\x73\x2e\x76\x61\x6c\x75\x65\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x63\x68\x65\x6d\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x70\x74\x69\x6f\x6e\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x73\x63\x68\x65\x6d\x65\x2c\x6b\x65\x79\x3a\x73\x63\x68\x65\x6d\x65\x7d\x2c\x73\x63\x68\x65\x6d\x65\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x53\x63\x68\x65\x6d\x65\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x53\x63\x68\x65\x6d\x65\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x63\x75\x72\x72\x65\x6e\x74\x53\x63\x68\x65\x6d\x65\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x53\x63\x68\x65\x6d\x65\x28\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x65\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x28\x29\x3b\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x65\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x73\x63\x68\x65\x6d\x65\x73\x22\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x65\x73\x41\x72\x65\x50\x72\x65\x73\x65\x6e\x74\x3d\x73\x63\x68\x65\x6d\x65\x73\x26\x26\x73\x63\x68\x65\x6d\x65\x73\x2e\x73\x69\x7a\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x73\x63\x68\x65\x6d\x65\x73\x41\x72\x65\x50\x72\x65\x73\x65\x6e\x74\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x63\x68\x65\x6d\x65\x73\x2c\x7b\x63\x75\x72\x72\x65\x6e\x74\x53\x63\x68\x65\x6d\x65\x3a\x63\x75\x72\x72\x65\x6e\x74\x53\x63\x68\x65\x6d\x65\x2c\x73\x63\x68\x65\x6d\x65\x73\x3a\x73\x63\x68\x65\x6d\x65\x73\x2c\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x3a\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x7d\x29\x3a\x6e\x75\x6c\x6c\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x74\x6f\x67\x67\x6c\x65\x43\x6f\x6c\x6c\x61\x70\x73\x65\x64\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x69\x66\x28\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x29\x7b\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x28\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6d\x6f\x64\x65\x6c\x4e\x61\x6d\x65\x2c\x21\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x29\x7d\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x65\x78\x70\x61\x6e\x64\x65\x64\x3a\x21\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x7d\x29\x7d\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x65\x78\x70\x61\x6e\x64\x65\x64\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x2c\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3b\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x65\x78\x70\x61\x6e\x64\x65\x64\x3a\x65\x78\x70\x61\x6e\x64\x65\x64\x2c\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3a\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x7c\x7c\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x2e\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x68\x69\x64\x65\x53\x65\x6c\x66\x4f\x6e\x45\x78\x70\x61\x6e\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x68\x69\x64\x65\x53\x65\x6c\x66\x4f\x6e\x45\x78\x70\x61\x6e\x64\x2c\x65\x78\x70\x61\x6e\x64\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x2c\x6d\x6f\x64\x65\x6c\x4e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6d\x6f\x64\x65\x6c\x4e\x61\x6d\x65\x3b\x69\x66\x28\x68\x69\x64\x65\x53\x65\x6c\x66\x4f\x6e\x45\x78\x70\x61\x6e\x64\x26\x26\x65\x78\x70\x61\x6e\x64\x65\x64\x29\x7b\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x28\x6d\x6f\x64\x65\x6c\x4e\x61\x6d\x65\x2c\x65\x78\x70\x61\x6e\x64\x65\x64\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x21\x3d\x3d\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x29\x7b\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x65\x78\x70\x61\x6e\x64\x65\x64\x3a\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x7d\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x74\x69\x74\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x74\x69\x74\x6c\x65\x2c\x63\x6c\x61\x73\x73\x65\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x63\x6c\x61\x73\x73\x65\x73\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x29\x7b\x69\x66\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x68\x69\x64\x65\x53\x65\x6c\x66\x4f\x6e\x45\x78\x70\x61\x6e\x64\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x63\x6c\x61\x73\x73\x65\x73\x7c\x7c\x22\x22\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x29\x7d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x63\x6c\x61\x73\x73\x65\x73\x7c\x7c\x22\x22\x7d\x2c\x74\x69\x74\x6c\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x74\x6f\x67\x67\x6c\x65\x43\x6f\x6c\x6c\x61\x70\x73\x65\x64\x2c\x73\x74\x79\x6c\x65\x3a\x7b\x63\x75\x72\x73\x6f\x72\x3a\x22\x70\x6f\x69\x6e\x74\x65\x72\x22\x7d\x7d\x2c\x74\x69\x74\x6c\x65\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x74\x6f\x67\x67\x6c\x65\x43\x6f\x6c\x6c\x61\x70\x73\x65\x64\x2c\x73\x74\x79\x6c\x65\x3a\x7b\x63\x75\x72\x73\x6f\x72\x3a\x22\x70\x6f\x69\x6e\x74\x65\x72\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x74\x6f\x67\x67\x6c\x65\x22\x2b\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x3f\x22\x22\x3a\x22\x20\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x22\x29\x7d\x29\x29\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x3f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x3a\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3a\x22\x7b\x2e\x2e\x2e\x7d\x22\x2c\x65\x78\x70\x61\x6e\x64\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x74\x69\x74\x6c\x65\x3a\x6e\x75\x6c\x6c\x2c\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x28\x29\x7b\x7d\x2c\x68\x69\x64\x65\x53\x65\x6c\x66\x4f\x6e\x45\x78\x70\x61\x6e\x64\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x74\x68\x69\x73\x2e\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x6e\x61\x6d\x65\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x64\x61\x74\x61\x73\x65\x74\x2e\x6e\x61\x6d\x65\x3b\x5f\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3a\x6e\x61\x6d\x65\x7d\x29\x7d\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3d\x5f\x74\x68\x69\x73\x24\x70\x72\x6f\x70\x73\x2e\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x52\x65\x6e\x64\x65\x72\x69\x6e\x67\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x52\x65\x6e\x64\x65\x72\x69\x6e\x67\x3b\x76\x61\x72\x20\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3d\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x52\x65\x6e\x64\x65\x72\x69\x6e\x67\x3b\x69\x66\x28\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x52\x65\x6e\x64\x65\x72\x69\x6e\x67\x21\x3d\x3d\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x26\x26\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x52\x65\x6e\x64\x65\x72\x69\x6e\x67\x21\x3d\x3d\x22\x6d\x6f\x64\x65\x6c\x22\x29\x7b\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3d\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x7d\x69\x66\x28\x69\x73\x45\x78\x65\x63\x75\x74\x65\x29\x7b\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3d\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x7d\x5f\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x3d\x7b\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3a\x61\x63\x74\x69\x76\x65\x54\x61\x62\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x6e\x65\x78\x74\x50\x72\x6f\x70\x73\x2e\x69\x73\x45\x78\x65\x63\x75\x74\x65\x26\x26\x21\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x69\x73\x45\x78\x65\x63\x75\x74\x65\x26\x26\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x29\x7b\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x7d\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x65\x78\x61\x6d\x70\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x78\x61\x6d\x70\x6c\x65\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x45\x78\x65\x63\x75\x74\x65\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x32\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x22\x29\x3b\x76\x61\x72\x20\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x68\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x65\x78\x61\x6d\x70\x6c\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x75\x6c\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x69\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x69\x74\x65\x6d\x22\x2b\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3d\x3d\x3d\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x3f\x22\x20\x61\x63\x74\x69\x76\x65\x22\x3a\x22\x22\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x6c\x69\x6e\x6b\x73\x22\x2c\x22\x64\x61\x74\x61\x2d\x6e\x61\x6d\x65\x22\x3a\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x61\x63\x74\x69\x76\x65\x54\x61\x62\x7d\x2c\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3f\x22\x45\x64\x69\x74\x20\x56\x61\x6c\x75\x65\x22\x3a\x22\x45\x78\x61\x6d\x70\x6c\x65\x20\x56\x61\x6c\x75\x65\x22\x29\x29\x2c\x73\x63\x68\x65\x6d\x61\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6c\x69\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x69\x74\x65\x6d\x22\x2b\x28\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3d\x3d\x3d\x22\x6d\x6f\x64\x65\x6c\x22\x3f\x22\x20\x61\x63\x74\x69\x76\x65\x22\x3a\x22\x22\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x61\x62\x6c\x69\x6e\x6b\x73\x22\x2b\x28\x69\x73\x45\x78\x65\x63\x75\x74\x65\x3f\x22\x20\x69\x6e\x61\x63\x74\x69\x76\x65\x22\x3a\x22\x22\x29\x2c\x22\x64\x61\x74\x61\x2d\x6e\x61\x6d\x65\x22\x3a\x22\x6d\x6f\x64\x65\x6c\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x61\x63\x74\x69\x76\x65\x54\x61\x62\x7d\x2c\x69\x73\x4f\x41\x53\x33\x3f\x22\x53\x63\x68\x65\x6d\x61\x22\x3a\x22\x4d\x6f\x64\x65\x6c\x22\x29\x29\x3a\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3d\x3d\x3d\x22\x65\x78\x61\x6d\x70\x6c\x65\x22\x3f\x65\x78\x61\x6d\x70\x6c\x65\x3f\x65\x78\x61\x6d\x70\x6c\x65\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x48\x69\x67\x68\x6c\x69\x67\x68\x74\x43\x6f\x64\x65\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x22\x28\x6e\x6f\x20\x65\x78\x61\x6d\x70\x6c\x65\x20\x61\x76\x61\x69\x6c\x61\x62\x6c\x65\x29\x22\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x61\x63\x74\x69\x76\x65\x54\x61\x62\x3d\x3d\x3d\x22\x6d\x6f\x64\x65\x6c\x22\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x2c\x7b\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3a\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x7d\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4d\x6f\x64\x65\x6c\x45\x78\x61\x6d\x70\x6c\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x2c\x69\x73\x53\x68\x6f\x77\x6e\x29\x7b\x69\x66\x28\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x29\x7b\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x5b\x22\x6d\x6f\x64\x65\x6c\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x2c\x69\x73\x53\x68\x6f\x77\x6e\x29\x7d\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x22\x29\x3b\x76\x61\x72\x20\x65\x78\x70\x61\x6e\x64\x65\x64\x3d\x76\x6f\x69\x64\x20\x30\x3b\x69\x66\x28\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x29\x7b\x65\x78\x70\x61\x6e\x64\x65\x64\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x28\x5b\x22\x6d\x6f\x64\x65\x6c\x73\x22\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x5d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x62\x6f\x78\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x65\x78\x70\x61\x6e\x64\x65\x64\x3a\x65\x78\x70\x61\x6e\x64\x65\x64\x2c\x64\x65\x70\x74\x68\x3a\x31\x2c\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x2c\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3a\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x7c\x7c\x30\x7d\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x61\x63\x74\x2d\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2d\x70\x75\x72\x65\x2d\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x37\x29\x3b\x76\x61\x72\x20\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x73\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4d\x6f\x64\x65\x6c\x73\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4d\x6f\x64\x65\x6c\x73\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x4d\x6f\x64\x65\x6c\x73\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x73\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x29\x2c\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x63\x68\x65\x6d\x61\x42\x61\x73\x65\x50\x61\x74\x68\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x73\x4f\x41\x53\x33\x3f\x5b\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x22\x2c\x22\x73\x63\x68\x65\x6d\x61\x73\x22\x5d\x3a\x5b\x22\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x22\x5d\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x43\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x22\x20\x22\x7d\x2c\x5f\x74\x68\x69\x73\x2e\x68\x61\x6e\x64\x6c\x65\x54\x6f\x67\x67\x6c\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6e\x61\x6d\x65\x2c\x69\x73\x45\x78\x70\x61\x6e\x64\x65\x64\x29\x7b\x76\x61\x72\x20\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3b\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x5b\x22\x6d\x6f\x64\x65\x6c\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x2c\x69\x73\x45\x78\x70\x61\x6e\x64\x65\x64\x29\x3b\x69\x66\x28\x69\x73\x45\x78\x70\x61\x6e\x64\x65\x64\x29\x7b\x5f\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x5b\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x63\x68\x65\x6d\x61\x42\x61\x73\x65\x50\x61\x74\x68\x28\x29\x29\x2c\x5b\x6e\x61\x6d\x65\x5d\x29\x29\x7d\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4d\x6f\x64\x65\x6c\x73\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x32\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3b\x76\x61\x72\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x2c\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x73\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x73\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3b\x69\x66\x28\x21\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x73\x69\x7a\x65\x7c\x7c\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x73\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3c\x30\x29\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x73\x68\x6f\x77\x4d\x6f\x64\x65\x6c\x73\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x28\x22\x6d\x6f\x64\x65\x6c\x73\x22\x2c\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x73\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3e\x30\x26\x26\x64\x6f\x63\x45\x78\x70\x61\x6e\x73\x69\x6f\x6e\x21\x3d\x3d\x22\x6e\x6f\x6e\x65\x22\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x50\x61\x74\x68\x42\x61\x73\x65\x3d\x74\x68\x69\x73\x2e\x67\x65\x74\x53\x63\x68\x65\x6d\x61\x42\x61\x73\x65\x50\x61\x74\x68\x28\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x6c\x61\x70\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x65\x63\x74\x69\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x73\x68\x6f\x77\x4d\x6f\x64\x65\x6c\x73\x3f\x22\x6d\x6f\x64\x65\x6c\x73\x20\x69\x73\x2d\x6f\x70\x65\x6e\x22\x3a\x22\x6d\x6f\x64\x65\x6c\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x2e\x73\x68\x6f\x77\x28\x22\x6d\x6f\x64\x65\x6c\x73\x22\x2c\x21\x73\x68\x6f\x77\x4d\x6f\x64\x65\x6c\x73\x29\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x69\x73\x4f\x41\x53\x33\x3f\x22\x53\x63\x68\x65\x6d\x61\x73\x22\x3a\x22\x4d\x6f\x64\x65\x6c\x73\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x76\x67\x22\x2c\x7b\x77\x69\x64\x74\x68\x3a\x22\x32\x30\x22\x2c\x68\x65\x69\x67\x68\x74\x3a\x22\x32\x30\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x75\x73\x65\x22\x2c\x7b\x78\x6c\x69\x6e\x6b\x48\x72\x65\x66\x3a\x73\x68\x6f\x77\x4d\x6f\x64\x65\x6c\x73\x3f\x22\x23\x6c\x61\x72\x67\x65\x2d\x61\x72\x72\x6f\x77\x2d\x64\x6f\x77\x6e\x22\x3a\x22\x23\x6c\x61\x72\x67\x65\x2d\x61\x72\x72\x6f\x77\x22\x7d\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x7b\x69\x73\x4f\x70\x65\x6e\x65\x64\x3a\x73\x68\x6f\x77\x4d\x6f\x64\x65\x6c\x73\x7d\x2c\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x32\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x33\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x32\x2c\x31\x29\x2c\x6e\x61\x6d\x65\x3d\x5f\x72\x65\x66\x33\x5b\x30\x5d\x3b\x76\x61\x72\x20\x66\x75\x6c\x6c\x50\x61\x74\x68\x3d\x5b\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x70\x65\x63\x50\x61\x74\x68\x42\x61\x73\x65\x29\x2c\x5b\x6e\x61\x6d\x65\x5d\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x56\x61\x6c\x75\x65\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x66\x75\x6c\x6c\x50\x61\x74\x68\x29\x3b\x76\x61\x72\x20\x72\x61\x77\x53\x63\x68\x65\x6d\x61\x56\x61\x6c\x75\x65\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x4a\x73\x6f\x6e\x28\x29\x2e\x67\x65\x74\x49\x6e\x28\x66\x75\x6c\x6c\x50\x61\x74\x68\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x73\x63\x68\x65\x6d\x61\x56\x61\x6c\x75\x65\x29\x3f\x73\x63\x68\x65\x6d\x61\x56\x61\x6c\x75\x65\x3a\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4d\x61\x70\x28\x29\x3b\x76\x61\x72\x20\x72\x61\x77\x53\x63\x68\x65\x6d\x61\x3d\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4d\x61\x70\x2e\x69\x73\x4d\x61\x70\x28\x72\x61\x77\x53\x63\x68\x65\x6d\x61\x56\x61\x6c\x75\x65\x29\x3f\x72\x61\x77\x53\x63\x68\x65\x6d\x61\x56\x61\x6c\x75\x65\x3a\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4d\x61\x70\x28\x29\x3b\x76\x61\x72\x20\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x69\x74\x6c\x65\x22\x29\x7c\x7c\x72\x61\x77\x53\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x69\x74\x6c\x65\x22\x29\x7c\x7c\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x69\x73\x53\x68\x6f\x77\x6e\x3d\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x68\x6f\x77\x6e\x28\x5b\x22\x6d\x6f\x64\x65\x6c\x73\x22\x2c\x6e\x61\x6d\x65\x5d\x2c\x66\x61\x6c\x73\x65\x29\x3b\x69\x66\x28\x69\x73\x53\x68\x6f\x77\x6e\x26\x26\x73\x63\x68\x65\x6d\x61\x2e\x73\x69\x7a\x65\x3d\x3d\x3d\x30\x26\x26\x72\x61\x77\x53\x63\x68\x65\x6d\x61\x2e\x73\x69\x7a\x65\x3e\x30\x29\x7b\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x41\x63\x74\x69\x6f\x6e\x73\x2e\x72\x65\x71\x75\x65\x73\x74\x52\x65\x73\x6f\x6c\x76\x65\x64\x53\x75\x62\x74\x72\x65\x65\x28\x5b\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x32\x2e\x67\x65\x74\x53\x63\x68\x65\x6d\x61\x42\x61\x73\x65\x50\x61\x74\x68\x28\x29\x29\x2c\x5b\x6e\x61\x6d\x65\x5d\x29\x29\x7d\x76\x61\x72\x20\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4c\x69\x73\x74\x28\x5b\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x28\x30\x2c\x5f\x74\x6f\x43\x6f\x6e\x73\x75\x6d\x61\x62\x6c\x65\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x73\x70\x65\x63\x50\x61\x74\x68\x42\x61\x73\x65\x29\x2c\x5b\x6e\x61\x6d\x65\x5d\x29\x29\x3b\x76\x61\x72\x20\x63\x6f\x6e\x74\x65\x6e\x74\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x57\x72\x61\x70\x70\x65\x72\x2c\x7b\x6e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3a\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x73\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x7c\x7c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x4d\x61\x70\x28\x29\x2c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3a\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3a\x6c\x61\x79\x6f\x75\x74\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x3a\x6c\x61\x79\x6f\x75\x74\x41\x63\x74\x69\x6f\x6e\x73\x7d\x29\x3b\x76\x61\x72\x20\x74\x69\x74\x6c\x65\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x62\x6f\x78\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x20\x6d\x6f\x64\x65\x6c\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x69\x64\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x22\x2b\x6e\x61\x6d\x65\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x2c\x6b\x65\x79\x3a\x22\x6d\x6f\x64\x65\x6c\x73\x2d\x73\x65\x63\x74\x69\x6f\x6e\x2d\x22\x2b\x6e\x61\x6d\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x73\x2d\x6a\x75\x6d\x70\x2d\x74\x6f\x2d\x70\x61\x74\x68\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x7b\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x7b\x63\x6c\x61\x73\x73\x65\x73\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x62\x6f\x78\x22\x2c\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3a\x5f\x74\x68\x69\x73\x32\x2e\x67\x65\x74\x43\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x28\x6e\x61\x6d\x65\x29\x2c\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x3a\x5f\x74\x68\x69\x73\x32\x2e\x68\x61\x6e\x64\x6c\x65\x54\x6f\x67\x67\x6c\x65\x2c\x74\x69\x74\x6c\x65\x3a\x74\x69\x74\x6c\x65\x2c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3a\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x2c\x6d\x6f\x64\x65\x6c\x4e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x68\x69\x64\x65\x53\x65\x6c\x66\x4f\x6e\x45\x78\x70\x61\x6e\x64\x3a\x74\x72\x75\x65\x2c\x65\x78\x70\x61\x6e\x64\x65\x64\x3a\x64\x65\x66\x61\x75\x6c\x74\x4d\x6f\x64\x65\x6c\x73\x45\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3e\x30\x26\x26\x69\x73\x53\x68\x6f\x77\x6e\x7d\x2c\x63\x6f\x6e\x74\x65\x6e\x74\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4d\x6f\x64\x65\x6c\x73\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4d\x6f\x64\x65\x6c\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x45\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x45\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x2e\x76\x61\x6c\x75\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x72\x65\x66\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x41\x72\x72\x61\x79\x20\x5b\x20\x22\x2c\x76\x61\x6c\x75\x65\x2e\x63\x6f\x75\x6e\x74\x28\x29\x2c\x22\x20\x5d\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x72\x6f\x70\x2d\x65\x6e\x75\x6d\x22\x7d\x2c\x22\x45\x6e\x75\x6d\x3a\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x72\x22\x2c\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x7b\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3a\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x7d\x2c\x22\x5b\x20\x22\x2c\x76\x61\x6c\x75\x65\x2e\x6a\x6f\x69\x6e\x28\x22\x2c\x20\x22\x29\x2c\x22\x20\x5d\x22\x29\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x45\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x33\x29\x3b\x76\x61\x72\x20\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x34\x29\x3b\x76\x61\x72\x20\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x62\x72\x61\x63\x65\x4f\x70\x65\x6e\x3d\x22\x7b\x22\x3b\x76\x61\x72\x20\x62\x72\x61\x63\x65\x43\x6c\x6f\x73\x65\x3d\x22\x7d\x22\x3b\x76\x61\x72\x20\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x2c\x69\x73\x52\x65\x66\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x52\x65\x66\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x64\x65\x70\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x65\x70\x74\x68\x2c\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x2c\x65\x78\x70\x61\x6e\x64\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x65\x64\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x2c\x6f\x74\x68\x65\x72\x50\x72\x6f\x70\x73\x3d\x28\x30\x2c\x5f\x6f\x62\x6a\x65\x63\x74\x57\x69\x74\x68\x6f\x75\x74\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x70\x72\x6f\x70\x73\x2c\x5b\x22\x73\x63\x68\x65\x6d\x61\x22\x2c\x22\x6e\x61\x6d\x65\x22\x2c\x22\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x22\x2c\x22\x69\x73\x52\x65\x66\x22\x2c\x22\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x22\x2c\x22\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x22\x2c\x22\x64\x65\x70\x74\x68\x22\x2c\x22\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x22\x2c\x22\x65\x78\x70\x61\x6e\x64\x65\x64\x22\x2c\x22\x73\x70\x65\x63\x50\x61\x74\x68\x22\x5d\x29\x3b\x76\x61\x72\x20\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x6f\x74\x68\x65\x72\x50\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3d\x6f\x74\x68\x65\x72\x50\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x3b\x69\x66\x28\x21\x73\x63\x68\x65\x6d\x61\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6e\x75\x6c\x6c\x7d\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x22\x29\x3b\x76\x61\x72\x20\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x22\x29\x3b\x76\x61\x72\x20\x74\x69\x74\x6c\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x69\x74\x6c\x65\x22\x29\x7c\x7c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x7c\x7c\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x72\x65\x71\x75\x69\x72\x65\x64\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x29\x3b\x76\x61\x72\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x22\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x53\x65\x63\x74\x69\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x53\x65\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x6a\x75\x6d\x70\x2d\x74\x6f\x2d\x70\x61\x74\x68\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x2c\x7b\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x7d\x29\x29\x7d\x3b\x76\x61\x72\x20\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x62\x72\x61\x63\x65\x4f\x70\x65\x6e\x29\x2c\x22\x2e\x2e\x2e\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x62\x72\x61\x63\x65\x43\x6c\x6f\x73\x65\x29\x2c\x69\x73\x52\x65\x66\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x53\x65\x63\x74\x69\x6f\x6e\x2c\x6e\x75\x6c\x6c\x29\x3a\x22\x22\x29\x3b\x76\x61\x72\x20\x61\x6e\x79\x4f\x66\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x61\x6e\x79\x4f\x66\x22\x29\x3a\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x6f\x6e\x65\x4f\x66\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x6f\x6e\x65\x4f\x66\x22\x29\x3a\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x6e\x6f\x74\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3f\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x6e\x6f\x74\x22\x29\x3a\x6e\x75\x6c\x6c\x3b\x76\x61\x72\x20\x74\x69\x74\x6c\x65\x45\x6c\x3d\x74\x69\x74\x6c\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x69\x73\x52\x65\x66\x26\x26\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x24\x24\x72\x65\x66\x22\x29\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x68\x69\x6e\x74\x22\x7d\x2c\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x24\x24\x72\x65\x66\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x74\x69\x74\x6c\x65\x5f\x5f\x74\x65\x78\x74\x22\x7d\x2c\x74\x69\x74\x6c\x65\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x7b\x6d\x6f\x64\x65\x6c\x4e\x61\x6d\x65\x3a\x6e\x61\x6d\x65\x2c\x74\x69\x74\x6c\x65\x3a\x74\x69\x74\x6c\x65\x45\x6c\x2c\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x3a\x6f\x6e\x54\x6f\x67\x67\x6c\x65\x2c\x65\x78\x70\x61\x6e\x64\x65\x64\x3a\x65\x78\x70\x61\x6e\x64\x65\x64\x3f\x74\x72\x75\x65\x3a\x64\x65\x70\x74\x68\x3c\x3d\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x2c\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3a\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x72\x61\x63\x65\x2d\x6f\x70\x65\x6e\x20\x6f\x62\x6a\x65\x63\x74\x22\x7d\x2c\x62\x72\x61\x63\x65\x4f\x70\x65\x6e\x29\x2c\x21\x69\x73\x52\x65\x66\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x75\x6d\x70\x54\x6f\x50\x61\x74\x68\x53\x65\x63\x74\x69\x6f\x6e\x2c\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x6e\x65\x72\x2d\x6f\x62\x6a\x65\x63\x74\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x61\x62\x6c\x65\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x62\x6f\x64\x79\x22\x2c\x6e\x75\x6c\x6c\x2c\x21\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x63\x6f\x6c\x6f\x72\x3a\x22\x23\x36\x36\x36\x22\x2c\x66\x6f\x6e\x74\x57\x65\x69\x67\x68\x74\x3a\x22\x6e\x6f\x72\x6d\x61\x6c\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x66\x6f\x6e\x74\x57\x65\x69\x67\x68\x74\x3a\x22\x62\x6f\x6c\x64\x22\x7d\x7d\x2c\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3a\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x29\x29\x2c\x21\x28\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x26\x26\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x73\x69\x7a\x65\x29\x3f\x6e\x75\x6c\x6c\x3a\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x32\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x32\x5b\x30\x5d\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x32\x5b\x31\x5d\x3b\x76\x61\x72\x20\x69\x73\x44\x65\x70\x72\x65\x63\x61\x74\x65\x64\x3d\x69\x73\x4f\x41\x53\x33\x28\x29\x26\x26\x76\x61\x6c\x75\x65\x2e\x67\x65\x74\x28\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x29\x3b\x76\x61\x72\x20\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x3d\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x72\x65\x71\x75\x69\x72\x65\x64\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x29\x26\x26\x72\x65\x71\x75\x69\x72\x65\x64\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x63\x6f\x6e\x74\x61\x69\x6e\x73\x28\x6b\x65\x79\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x70\x65\x72\x74\x79\x53\x74\x79\x6c\x65\x3d\x7b\x76\x65\x72\x74\x69\x63\x61\x6c\x41\x6c\x69\x67\x6e\x3a\x22\x74\x6f\x70\x22\x2c\x70\x61\x64\x64\x69\x6e\x67\x52\x69\x67\x68\x74\x3a\x22\x30\x2e\x32\x65\x6d\x22\x7d\x3b\x69\x66\x28\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x29\x7b\x70\x72\x6f\x70\x65\x72\x74\x79\x53\x74\x79\x6c\x65\x2e\x66\x6f\x6e\x74\x57\x65\x69\x67\x68\x74\x3d\x22\x62\x6f\x6c\x64\x22\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x69\x73\x44\x65\x70\x72\x65\x63\x61\x74\x65\x64\x26\x26\x22\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x70\x72\x6f\x70\x65\x72\x74\x79\x53\x74\x79\x6c\x65\x7d\x2c\x6b\x65\x79\x2c\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x63\x6f\x6c\x6f\x72\x3a\x22\x72\x65\x64\x22\x7d\x7d\x2c\x22\x2a\x22\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x76\x65\x72\x74\x69\x63\x61\x6c\x41\x6c\x69\x67\x6e\x3a\x22\x74\x6f\x70\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x6b\x65\x79\x3a\x22\x6f\x62\x6a\x65\x63\x74\x2d\x22\x2b\x6e\x61\x6d\x65\x2b\x22\x2d\x22\x2b\x6b\x65\x79\x2b\x22\x5f\x22\x2b\x76\x61\x6c\x75\x65\x7d\x2c\x6f\x74\x68\x65\x72\x50\x72\x6f\x70\x73\x2c\x7b\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x22\x2c\x6b\x65\x79\x29\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x76\x61\x6c\x75\x65\x2c\x64\x65\x70\x74\x68\x3a\x64\x65\x70\x74\x68\x2b\x31\x7d\x29\x29\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x2c\x21\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\xc2\xa0\x22\x29\x2c\x21\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3f\x6e\x75\x6c\x6c\x3a\x73\x63\x68\x65\x6d\x61\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x34\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x33\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x34\x5b\x30\x5d\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x72\x65\x66\x34\x5b\x31\x5d\x3b\x69\x66\x28\x6b\x65\x79\x2e\x73\x6c\x69\x63\x65\x28\x30\x2c\x32\x29\x21\x3d\x3d\x22\x78\x2d\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x7d\x76\x61\x72\x20\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x64\x56\x61\x6c\x75\x65\x3d\x21\x76\x61\x6c\x75\x65\x3f\x6e\x75\x6c\x6c\x3a\x76\x61\x6c\x75\x65\x2e\x74\x6f\x4a\x53\x3f\x76\x61\x6c\x75\x65\x2e\x74\x6f\x4a\x53\x28\x29\x3a\x76\x61\x6c\x75\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2c\x73\x74\x79\x6c\x65\x3a\x7b\x63\x6f\x6c\x6f\x72\x3a\x22\x23\x37\x37\x37\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x6b\x65\x79\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x7b\x76\x65\x72\x74\x69\x63\x61\x6c\x41\x6c\x69\x67\x6e\x3a\x22\x74\x6f\x70\x22\x7d\x7d\x2c\x28\x30\x2c\x5f\x73\x74\x72\x69\x6e\x67\x69\x66\x79\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x6e\x6f\x72\x6d\x61\x6c\x69\x7a\x65\x64\x56\x61\x6c\x75\x65\x29\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x2c\x21\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x7c\x7c\x21\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x73\x69\x7a\x65\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x3c\x20\x2a\x20\x3e\x3a\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6f\x74\x68\x65\x72\x50\x72\x6f\x70\x73\x2c\x7b\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x22\x29\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x61\x64\x64\x69\x74\x69\x6f\x6e\x61\x6c\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2c\x64\x65\x70\x74\x68\x3a\x64\x65\x70\x74\x68\x2b\x31\x7d\x29\x29\x29\x29\x2c\x21\x61\x6e\x79\x4f\x66\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x61\x6e\x79\x4f\x66\x20\x2d\x3e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x61\x6e\x79\x4f\x66\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x63\x68\x65\x6d\x61\x2c\x6b\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6b\x65\x79\x3a\x6b\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6f\x74\x68\x65\x72\x50\x72\x6f\x70\x73\x2c\x7b\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x61\x6e\x79\x4f\x66\x22\x2c\x6b\x29\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x64\x65\x70\x74\x68\x3a\x64\x65\x70\x74\x68\x2b\x31\x7d\x29\x29\x29\x7d\x29\x29\x29\x2c\x21\x6f\x6e\x65\x4f\x66\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x6f\x6e\x65\x4f\x66\x20\x2d\x3e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x6f\x6e\x65\x4f\x66\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x63\x68\x65\x6d\x61\x2c\x6b\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6b\x65\x79\x3a\x6b\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6f\x74\x68\x65\x72\x50\x72\x6f\x70\x73\x2c\x7b\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x6f\x6e\x65\x4f\x66\x22\x2c\x6b\x29\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x64\x65\x70\x74\x68\x3a\x64\x65\x70\x74\x68\x2b\x31\x7d\x29\x29\x29\x7d\x29\x29\x29\x2c\x21\x6e\x6f\x74\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x72\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x6e\x6f\x74\x20\x2d\x3e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x74\x64\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x6f\x74\x68\x65\x72\x50\x72\x6f\x70\x73\x2c\x7b\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x6e\x6f\x74\x22\x29\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3a\x6e\x6f\x74\x2c\x64\x65\x70\x74\x68\x3a\x64\x65\x70\x74\x68\x2b\x31\x7d\x29\x29\x29\x29\x29\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x72\x61\x63\x65\x2d\x63\x6c\x6f\x73\x65\x22\x7d\x2c\x62\x72\x61\x63\x65\x43\x6c\x6f\x73\x65\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x4f\x62\x6a\x65\x63\x74\x4d\x6f\x64\x65\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x3d\x7b\x63\x6f\x6c\x6f\x72\x3a\x22\x23\x39\x39\x39\x22\x2c\x66\x6f\x6e\x74\x53\x74\x79\x6c\x65\x3a\x22\x69\x74\x61\x6c\x69\x63\x22\x7d\x3b\x76\x61\x72\x20\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x64\x65\x70\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x65\x70\x74\x68\x2c\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x50\x61\x74\x68\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x69\x74\x65\x6d\x73\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x69\x74\x65\x6d\x73\x22\x29\x3b\x76\x61\x72\x20\x74\x69\x74\x6c\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x69\x74\x6c\x65\x22\x29\x7c\x7c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x7c\x7c\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x73\x63\x68\x65\x6d\x61\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x22\x74\x79\x70\x65\x22\x2c\x22\x69\x74\x65\x6d\x73\x22\x2c\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x2c\x22\x24\x24\x72\x65\x66\x22\x5d\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x6b\x65\x79\x29\x3d\x3d\x3d\x2d\x31\x7d\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x22\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x22\x29\x3b\x76\x61\x72\x20\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x50\x72\x6f\x70\x65\x72\x74\x79\x22\x29\x3b\x76\x61\x72\x20\x74\x69\x74\x6c\x65\x45\x6c\x3d\x74\x69\x74\x6c\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x74\x69\x74\x6c\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x2d\x74\x69\x74\x6c\x65\x5f\x5f\x74\x65\x78\x74\x22\x7d\x2c\x74\x69\x74\x6c\x65\x29\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x43\x6f\x6c\x6c\x61\x70\x73\x65\x2c\x7b\x74\x69\x74\x6c\x65\x3a\x74\x69\x74\x6c\x65\x45\x6c\x2c\x65\x78\x70\x61\x6e\x64\x65\x64\x3a\x64\x65\x70\x74\x68\x3c\x3d\x65\x78\x70\x61\x6e\x64\x44\x65\x70\x74\x68\x2c\x63\x6f\x6c\x6c\x61\x70\x73\x65\x64\x43\x6f\x6e\x74\x65\x6e\x74\x3a\x22\x5b\x2e\x2e\x2e\x5d\x22\x7d\x2c\x22\x5b\x22\x2c\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x73\x69\x7a\x65\x3f\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x32\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x32\x5b\x30\x5d\x2c\x76\x3d\x5f\x72\x65\x66\x32\x5b\x31\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x72\x6f\x70\x65\x72\x74\x79\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2b\x22\x2d\x22\x2b\x76\x2c\x70\x72\x6f\x70\x4b\x65\x79\x3a\x6b\x65\x79\x2c\x70\x72\x6f\x70\x56\x61\x6c\x3a\x76\x2c\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x3a\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x7d\x29\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x21\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3f\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x73\x69\x7a\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x7d\x29\x3a\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3a\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x73\x70\x65\x63\x50\x61\x74\x68\x3a\x73\x70\x65\x63\x50\x61\x74\x68\x2e\x70\x75\x73\x68\x28\x22\x69\x74\x65\x6d\x73\x22\x29\x2c\x6e\x61\x6d\x65\x3a\x6e\x75\x6c\x6c\x2c\x73\x63\x68\x65\x6d\x61\x3a\x69\x74\x65\x6d\x73\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x64\x65\x70\x74\x68\x3a\x64\x65\x70\x74\x68\x2b\x31\x7d\x29\x29\x29\x2c\x22\x5d\x22\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x41\x72\x72\x61\x79\x4d\x6f\x64\x65\x6c\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x35\x29\x3b\x76\x61\x72\x20\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x75\x74\x69\x6c\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x38\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x3d\x7b\x63\x6f\x6c\x6f\x72\x3a\x22\x23\x36\x62\x36\x62\x36\x62\x22\x2c\x66\x6f\x6e\x74\x53\x74\x79\x6c\x65\x3a\x22\x69\x74\x61\x6c\x69\x63\x22\x7d\x3b\x76\x61\x72\x20\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2c\x6e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6e\x61\x6d\x65\x2c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x2c\x64\x65\x70\x74\x68\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x65\x70\x74\x68\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x3d\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x28\x29\x2c\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x5f\x67\x65\x74\x43\x6f\x6e\x66\x69\x67\x73\x2e\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3b\x69\x66\x28\x21\x73\x63\x68\x65\x6d\x61\x7c\x7c\x21\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x29\x7d\x76\x61\x72\x20\x74\x79\x70\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x79\x70\x65\x22\x29\x3b\x76\x61\x72\x20\x66\x6f\x72\x6d\x61\x74\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x66\x6f\x72\x6d\x61\x74\x22\x29\x3b\x76\x61\x72\x20\x78\x6d\x6c\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x78\x6d\x6c\x22\x29\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x41\x72\x72\x61\x79\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x65\x6e\x75\x6d\x22\x29\x3b\x76\x61\x72\x20\x74\x69\x74\x6c\x65\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x74\x69\x74\x6c\x65\x22\x29\x7c\x7c\x64\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65\x7c\x7c\x6e\x61\x6d\x65\x3b\x76\x61\x72\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x73\x63\x68\x65\x6d\x61\x2e\x67\x65\x74\x28\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x3d\x28\x30\x2c\x5f\x75\x74\x69\x6c\x73\x2e\x67\x65\x74\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x29\x28\x73\x63\x68\x65\x6d\x61\x29\x3b\x76\x61\x72\x20\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x3d\x73\x63\x68\x65\x6d\x61\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x5b\x22\x65\x6e\x75\x6d\x22\x2c\x22\x74\x79\x70\x65\x22\x2c\x22\x66\x6f\x72\x6d\x61\x74\x22\x2c\x22\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x22\x2c\x22\x24\x24\x72\x65\x66\x22\x5d\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x6b\x65\x79\x29\x3d\x3d\x3d\x2d\x31\x7d\x29\x2e\x66\x69\x6c\x74\x65\x72\x4e\x6f\x74\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x2c\x6b\x65\x79\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2e\x68\x61\x73\x28\x6b\x65\x79\x29\x7d\x29\x3b\x76\x61\x72\x20\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x22\x29\x3b\x76\x61\x72\x20\x45\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x45\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x22\x29\x3b\x76\x61\x72\x20\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x50\x72\x6f\x70\x65\x72\x74\x79\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6d\x6f\x64\x65\x6c\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x72\x6f\x70\x22\x7d\x2c\x6e\x61\x6d\x65\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x28\x64\x65\x70\x74\x68\x3d\x3d\x3d\x31\x26\x26\x22\x6d\x6f\x64\x65\x6c\x2d\x74\x69\x74\x6c\x65\x22\x29\x2b\x22\x20\x70\x72\x6f\x70\x2d\x6e\x61\x6d\x65\x22\x7d\x2c\x74\x69\x74\x6c\x65\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x72\x6f\x70\x2d\x74\x79\x70\x65\x22\x7d\x2c\x74\x79\x70\x65\x29\x2c\x66\x6f\x72\x6d\x61\x74\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x70\x72\x6f\x70\x2d\x66\x6f\x72\x6d\x61\x74\x22\x7d\x2c\x22\x28\x24\x22\x2c\x66\x6f\x72\x6d\x61\x74\x2c\x22\x29\x22\x29\x2c\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x73\x69\x7a\x65\x3f\x70\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x32\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x32\x5b\x30\x5d\x2c\x76\x3d\x5f\x72\x65\x66\x32\x5b\x31\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x72\x6f\x70\x65\x72\x74\x79\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2b\x22\x2d\x22\x2b\x76\x2c\x70\x72\x6f\x70\x4b\x65\x79\x3a\x6b\x65\x79\x2c\x70\x72\x6f\x70\x56\x61\x6c\x3a\x76\x2c\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x3a\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x7d\x29\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x73\x68\x6f\x77\x45\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x26\x26\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2e\x73\x69\x7a\x65\x3f\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x33\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x34\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x33\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x34\x5b\x30\x5d\x2c\x76\x3d\x5f\x72\x65\x66\x34\x5b\x31\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x50\x72\x6f\x70\x65\x72\x74\x79\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2b\x22\x2d\x22\x2b\x76\x2c\x70\x72\x6f\x70\x4b\x65\x79\x3a\x6b\x65\x79\x2c\x70\x72\x6f\x70\x56\x61\x6c\x3a\x76\x2c\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x3a\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x7d\x29\x7d\x29\x3a\x6e\x75\x6c\x6c\x2c\x21\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3f\x6e\x75\x6c\x6c\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x61\x72\x6b\x64\x6f\x77\x6e\x2c\x7b\x73\x6f\x75\x72\x63\x65\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x7d\x29\x2c\x78\x6d\x6c\x26\x26\x78\x6d\x6c\x2e\x73\x69\x7a\x65\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x72\x22\x2c\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x7d\x2c\x22\x78\x6d\x6c\x3a\x22\x29\x2c\x78\x6d\x6c\x2e\x65\x6e\x74\x72\x79\x53\x65\x71\x28\x29\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x72\x65\x66\x35\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x36\x3d\x28\x30\x2c\x5f\x73\x6c\x69\x63\x65\x64\x54\x6f\x41\x72\x72\x61\x79\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x72\x65\x66\x35\x2c\x32\x29\x2c\x6b\x65\x79\x3d\x5f\x72\x65\x66\x36\x5b\x30\x5d\x2c\x76\x3d\x5f\x72\x65\x66\x36\x5b\x31\x5d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x6b\x65\x79\x3a\x6b\x65\x79\x2b\x22\x2d\x22\x2b\x76\x2c\x73\x74\x79\x6c\x65\x3a\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x72\x22\x2c\x6e\x75\x6c\x6c\x29\x2c\x22\xc2\xa0\xc2\xa0\xc2\xa0\x22\x2c\x6b\x65\x79\x2c\x22\x3a\x20\x22\x2c\x53\x74\x72\x69\x6e\x67\x28\x76\x29\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x65\x6e\x75\x6d\x41\x72\x72\x61\x79\x26\x26\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x6e\x75\x6d\x4d\x6f\x64\x65\x6c\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x65\x6e\x75\x6d\x41\x72\x72\x61\x79\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x7d\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x50\x72\x69\x6d\x69\x74\x69\x76\x65\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x50\x72\x6f\x70\x65\x72\x74\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x70\x72\x6f\x70\x4b\x65\x79\x3d\x5f\x72\x65\x66\x2e\x70\x72\x6f\x70\x4b\x65\x79\x2c\x70\x72\x6f\x70\x56\x61\x6c\x3d\x5f\x72\x65\x66\x2e\x70\x72\x6f\x70\x56\x61\x6c\x2c\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x3d\x5f\x72\x65\x66\x2e\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x7b\x73\x74\x79\x6c\x65\x3a\x70\x72\x6f\x70\x53\x74\x79\x6c\x65\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x72\x22\x2c\x6e\x75\x6c\x6c\x29\x2c\x70\x72\x6f\x70\x4b\x65\x79\x2c\x22\x3a\x20\x22\x2c\x53\x74\x72\x69\x6e\x67\x28\x70\x72\x6f\x70\x56\x61\x6c\x29\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x50\x72\x6f\x70\x65\x72\x74\x79\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x2c\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x2c\x65\x6e\x61\x62\x6c\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x6e\x61\x62\x6c\x65\x64\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x72\x79\x2d\x6f\x75\x74\x22\x7d\x2c\x65\x6e\x61\x62\x6c\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x74\x72\x79\x2d\x6f\x75\x74\x5f\x5f\x62\x74\x6e\x20\x63\x61\x6e\x63\x65\x6c\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x7d\x2c\x22\x43\x61\x6e\x63\x65\x6c\x22\x29\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x62\x75\x74\x74\x6f\x6e\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x74\x72\x79\x2d\x6f\x75\x74\x5f\x5f\x62\x74\x6e\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x7d\x2c\x22\x54\x72\x79\x20\x69\x74\x20\x6f\x75\x74\x20\x22\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x6f\x6e\x54\x72\x79\x6f\x75\x74\x43\x6c\x69\x63\x6b\x3a\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x6f\x6e\x43\x61\x6e\x63\x65\x6c\x43\x6c\x69\x63\x6b\x3a\x46\x75\x6e\x63\x74\x69\x6f\x6e\x2e\x70\x72\x6f\x74\x6f\x74\x79\x70\x65\x2c\x65\x6e\x61\x62\x6c\x65\x64\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x54\x72\x79\x49\x74\x4f\x75\x74\x42\x75\x74\x74\x6f\x6e\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x2c\x5f\x52\x65\x61\x63\x74\x24\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x62\x79\x70\x61\x73\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x62\x79\x70\x61\x73\x73\x2c\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x2c\x69\x73\x4f\x41\x53\x33\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x69\x73\x4f\x41\x53\x33\x2c\x61\x6c\x73\x6f\x53\x68\x6f\x77\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x61\x6c\x73\x6f\x53\x68\x6f\x77\x3b\x69\x66\x28\x62\x79\x70\x61\x73\x73\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x29\x7d\x69\x66\x28\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x26\x26\x69\x73\x4f\x41\x53\x33\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x76\x65\x72\x73\x69\x6f\x6e\x2d\x70\x72\x61\x67\x6d\x61\x22\x7d\x2c\x61\x6c\x73\x6f\x53\x68\x6f\x77\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x76\x65\x72\x73\x69\x6f\x6e\x2d\x70\x72\x61\x67\x6d\x61\x5f\x5f\x6d\x65\x73\x73\x61\x67\x65\x20\x76\x65\x72\x73\x69\x6f\x6e\x2d\x70\x72\x61\x67\x6d\x61\x5f\x5f\x6d\x65\x73\x73\x61\x67\x65\x2d\x2d\x61\x6d\x62\x69\x67\x75\x6f\x75\x73\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x33\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x55\x6e\x61\x62\x6c\x65\x20\x74\x6f\x20\x72\x65\x6e\x64\x65\x72\x20\x74\x68\x69\x73\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x73\x77\x61\x67\x67\x65\x72\x22\x29\x2c\x22\x20\x61\x6e\x64\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x6f\x70\x65\x6e\x61\x70\x69\x22\x29\x2c\x22\x20\x66\x69\x65\x6c\x64\x73\x20\x63\x61\x6e\x6e\x6f\x74\x20\x62\x65\x20\x70\x72\x65\x73\x65\x6e\x74\x20\x69\x6e\x20\x74\x68\x65\x20\x73\x61\x6d\x65\x20\x53\x77\x61\x67\x67\x65\x72\x20\x6f\x72\x20\x4f\x70\x65\x6e\x41\x50\x49\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x20\x50\x6c\x65\x61\x73\x65\x20\x72\x65\x6d\x6f\x76\x65\x20\x6f\x6e\x65\x20\x6f\x66\x20\x74\x68\x65\x20\x66\x69\x65\x6c\x64\x73\x2e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x53\x75\x70\x70\x6f\x72\x74\x65\x64\x20\x76\x65\x72\x73\x69\x6f\x6e\x20\x66\x69\x65\x6c\x64\x73\x20\x61\x72\x65\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x73\x77\x61\x67\x67\x65\x72\x3a\x20\x22\x2c\x27\x22\x32\x2e\x30\x22\x27\x29\x2c\x22\x20\x61\x6e\x64\x20\x74\x68\x6f\x73\x65\x20\x74\x68\x61\x74\x20\x6d\x61\x74\x63\x68\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x6f\x70\x65\x6e\x61\x70\x69\x3a\x20\x33\x2e\x30\x2e\x6e\x22\x29\x2c\x22\x20\x28\x66\x6f\x72\x20\x65\x78\x61\x6d\x70\x6c\x65\x2c\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x6f\x70\x65\x6e\x61\x70\x69\x3a\x20\x33\x2e\x30\x2e\x30\x22\x29\x2c\x22\x29\x2e\x22\x29\x29\x29\x29\x7d\x69\x66\x28\x21\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x26\x26\x21\x69\x73\x4f\x41\x53\x33\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x76\x65\x72\x73\x69\x6f\x6e\x2d\x70\x72\x61\x67\x6d\x61\x22\x7d\x2c\x61\x6c\x73\x6f\x53\x68\x6f\x77\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x76\x65\x72\x73\x69\x6f\x6e\x2d\x70\x72\x61\x67\x6d\x61\x5f\x5f\x6d\x65\x73\x73\x61\x67\x65\x20\x76\x65\x72\x73\x69\x6f\x6e\x2d\x70\x72\x61\x67\x6d\x61\x5f\x5f\x6d\x65\x73\x73\x61\x67\x65\x2d\x2d\x6d\x69\x73\x73\x69\x6e\x67\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x33\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x55\x6e\x61\x62\x6c\x65\x20\x74\x6f\x20\x72\x65\x6e\x64\x65\x72\x20\x74\x68\x69\x73\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x54\x68\x65\x20\x70\x72\x6f\x76\x69\x64\x65\x64\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x20\x64\x6f\x65\x73\x20\x6e\x6f\x74\x20\x73\x70\x65\x63\x69\x66\x79\x20\x61\x20\x76\x61\x6c\x69\x64\x20\x76\x65\x72\x73\x69\x6f\x6e\x20\x66\x69\x65\x6c\x64\x2e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x50\x6c\x65\x61\x73\x65\x20\x69\x6e\x64\x69\x63\x61\x74\x65\x20\x61\x20\x76\x61\x6c\x69\x64\x20\x53\x77\x61\x67\x67\x65\x72\x20\x6f\x72\x20\x4f\x70\x65\x6e\x41\x50\x49\x20\x76\x65\x72\x73\x69\x6f\x6e\x20\x66\x69\x65\x6c\x64\x2e\x20\x53\x75\x70\x70\x6f\x72\x74\x65\x64\x20\x76\x65\x72\x73\x69\x6f\x6e\x20\x66\x69\x65\x6c\x64\x73\x20\x61\x72\x65\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x73\x77\x61\x67\x67\x65\x72\x3a\x20\x22\x2c\x27\x22\x32\x2e\x30\x22\x27\x29\x2c\x22\x20\x61\x6e\x64\x20\x74\x68\x6f\x73\x65\x20\x74\x68\x61\x74\x20\x6d\x61\x74\x63\x68\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x6f\x70\x65\x6e\x61\x70\x69\x3a\x20\x33\x2e\x30\x2e\x6e\x22\x29\x2c\x22\x20\x28\x66\x6f\x72\x20\x65\x78\x61\x6d\x70\x6c\x65\x2c\x20\x22\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x63\x6f\x64\x65\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x6f\x70\x65\x6e\x61\x70\x69\x3a\x20\x33\x2e\x30\x2e\x30\x22\x29\x2c\x22\x29\x2e\x22\x29\x29\x29\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2e\x63\x68\x69\x6c\x64\x72\x65\x6e\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x61\x6c\x73\x6f\x53\x68\x6f\x77\x3a\x6e\x75\x6c\x6c\x2c\x63\x68\x69\x6c\x64\x72\x65\x6e\x3a\x6e\x75\x6c\x6c\x2c\x62\x79\x70\x61\x73\x73\x3a\x66\x61\x6c\x73\x65\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x56\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x56\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x5f\x72\x65\x66\x2e\x76\x65\x72\x73\x69\x6f\x6e\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x6d\x61\x6c\x6c\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x72\x65\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x76\x65\x72\x73\x69\x6f\x6e\x22\x7d\x2c\x22\x20\x22\x2c\x76\x65\x72\x73\x69\x6f\x6e\x2c\x22\x20\x22\x29\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x56\x65\x72\x73\x69\x6f\x6e\x53\x74\x61\x6d\x70\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x44\x65\x65\x70\x4c\x69\x6e\x6b\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x44\x65\x65\x70\x4c\x69\x6e\x6b\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x44\x65\x65\x70\x4c\x69\x6e\x6b\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x44\x65\x65\x70\x4c\x69\x6e\x6b\x28\x5f\x72\x65\x66\x29\x7b\x76\x61\x72\x20\x65\x6e\x61\x62\x6c\x65\x64\x3d\x5f\x72\x65\x66\x2e\x65\x6e\x61\x62\x6c\x65\x64\x2c\x70\x61\x74\x68\x3d\x5f\x72\x65\x66\x2e\x70\x61\x74\x68\x2c\x74\x65\x78\x74\x3d\x5f\x72\x65\x66\x2e\x74\x65\x78\x74\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x61\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6e\x6f\x73\x74\x79\x6c\x65\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x65\x6e\x61\x62\x6c\x65\x64\x3f\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x2e\x70\x72\x65\x76\x65\x6e\x74\x44\x65\x66\x61\x75\x6c\x74\x28\x29\x7d\x3a\x6e\x75\x6c\x6c\x2c\x68\x72\x65\x66\x3a\x65\x6e\x61\x62\x6c\x65\x64\x3f\x22\x23\x2f\x22\x2b\x70\x61\x74\x68\x3a\x6e\x75\x6c\x6c\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x70\x61\x6e\x22\x2c\x6e\x75\x6c\x6c\x2c\x74\x65\x78\x74\x29\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x44\x65\x65\x70\x4c\x69\x6e\x6b\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x53\x76\x67\x41\x73\x73\x65\x74\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x53\x76\x67\x41\x73\x73\x65\x74\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x76\x67\x22\x2c\x7b\x78\x6d\x6c\x6e\x73\x3a\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\x2c\x78\x6d\x6c\x6e\x73\x58\x6c\x69\x6e\x6b\x3a\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\x33\x2e\x6f\x72\x67\x2f\x31\x39\x39\x39\x2f\x78\x6c\x69\x6e\x6b\x22\x2c\x73\x74\x79\x6c\x65\x3a\x7b\x70\x6f\x73\x69\x74\x69\x6f\x6e\x3a\x22\x61\x62\x73\x6f\x6c\x75\x74\x65\x22\x2c\x77\x69\x64\x74\x68\x3a\x30\x2c\x68\x65\x69\x67\x68\x74\x3a\x30\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x65\x66\x73\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x79\x6d\x62\x6f\x6c\x22\x2c\x7b\x76\x69\x65\x77\x42\x6f\x78\x3a\x22\x30\x20\x30\x20\x32\x30\x20\x32\x30\x22\x2c\x69\x64\x3a\x22\x75\x6e\x6c\x6f\x63\x6b\x65\x64\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x61\x74\x68\x22\x2c\x7b\x64\x3a\x22\x4d\x31\x35\x2e\x38\x20\x38\x48\x31\x34\x56\x35\x2e\x36\x43\x31\x34\x20\x32\x2e\x37\x30\x33\x20\x31\x32\x2e\x36\x36\x35\x20\x31\x20\x31\x30\x20\x31\x20\x37\x2e\x33\x33\x34\x20\x31\x20\x36\x20\x32\x2e\x37\x30\x33\x20\x36\x20\x35\x2e\x36\x56\x36\x68\x32\x76\x2d\x2e\x38\x30\x31\x43\x38\x20\x33\x2e\x37\x35\x34\x20\x38\x2e\x37\x39\x37\x20\x33\x20\x31\x30\x20\x33\x63\x31\x2e\x32\x30\x33\x20\x30\x20\x32\x20\x2e\x37\x35\x34\x20\x32\x20\x32\x2e\x31\x39\x39\x56\x38\x48\x34\x63\x2d\x2e\x35\x35\x33\x20\x30\x2d\x31\x20\x2e\x36\x34\x36\x2d\x31\x20\x31\x2e\x31\x39\x39\x56\x31\x37\x63\x30\x20\x2e\x35\x34\x39\x2e\x34\x32\x38\x20\x31\x2e\x31\x33\x39\x2e\x39\x35\x31\x20\x31\x2e\x33\x30\x37\x6c\x31\x2e\x31\x39\x37\x2e\x33\x38\x37\x43\x35\x2e\x36\x37\x32\x20\x31\x38\x2e\x38\x36\x31\x20\x36\x2e\x35\x35\x20\x31\x39\x20\x37\x2e\x31\x20\x31\x39\x68\x35\x2e\x38\x63\x2e\x35\x34\x39\x20\x30\x20\x31\x2e\x34\x32\x38\x2d\x2e\x31\x33\x39\x20\x31\x2e\x39\x35\x31\x2d\x2e\x33\x30\x37\x6c\x31\x2e\x31\x39\x36\x2d\x2e\x33\x38\x37\x63\x2e\x35\x32\x34\x2d\x2e\x31\x36\x37\x2e\x39\x35\x33\x2d\x2e\x37\x35\x37\x2e\x39\x35\x33\x2d\x31\x2e\x33\x30\x36\x56\x39\x2e\x31\x39\x39\x43\x31\x37\x20\x38\x2e\x36\x34\x36\x20\x31\x36\x2e\x33\x35\x32\x20\x38\x20\x31\x35\x2e\x38\x20\x38\x7a\x22\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x79\x6d\x62\x6f\x6c\x22\x2c\x7b\x76\x69\x65\x77\x42\x6f\x78\x3a\x22\x30\x20\x30\x20\x32\x30\x20\x32\x30\x22\x2c\x69\x64\x3a\x22\x6c\x6f\x63\x6b\x65\x64\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x61\x74\x68\x22\x2c\x7b\x64\x3a\x22\x4d\x31\x35\x2e\x38\x20\x38\x48\x31\x34\x56\x35\x2e\x36\x43\x31\x34\x20\x32\x2e\x37\x30\x33\x20\x31\x32\x2e\x36\x36\x35\x20\x31\x20\x31\x30\x20\x31\x20\x37\x2e\x33\x33\x34\x20\x31\x20\x36\x20\x32\x2e\x37\x30\x33\x20\x36\x20\x35\x2e\x36\x56\x38\x48\x34\x63\x2d\x2e\x35\x35\x33\x20\x30\x2d\x31\x20\x2e\x36\x34\x36\x2d\x31\x20\x31\x2e\x31\x39\x39\x56\x31\x37\x63\x30\x20\x2e\x35\x34\x39\x2e\x34\x32\x38\x20\x31\x2e\x31\x33\x39\x2e\x39\x35\x31\x20\x31\x2e\x33\x30\x37\x6c\x31\x2e\x31\x39\x37\x2e\x33\x38\x37\x43\x35\x2e\x36\x37\x32\x20\x31\x38\x2e\x38\x36\x31\x20\x36\x2e\x35\x35\x20\x31\x39\x20\x37\x2e\x31\x20\x31\x39\x68\x35\x2e\x38\x63\x2e\x35\x34\x39\x20\x30\x20\x31\x2e\x34\x32\x38\x2d\x2e\x31\x33\x39\x20\x31\x2e\x39\x35\x31\x2d\x2e\x33\x30\x37\x6c\x31\x2e\x31\x39\x36\x2d\x2e\x33\x38\x37\x63\x2e\x35\x32\x34\x2d\x2e\x31\x36\x37\x2e\x39\x35\x33\x2d\x2e\x37\x35\x37\x2e\x39\x35\x33\x2d\x31\x2e\x33\x30\x36\x56\x39\x2e\x31\x39\x39\x43\x31\x37\x20\x38\x2e\x36\x34\x36\x20\x31\x36\x2e\x33\x35\x32\x20\x38\x20\x31\x35\x2e\x38\x20\x38\x7a\x4d\x31\x32\x20\x38\x48\x38\x56\x35\x2e\x31\x39\x39\x43\x38\x20\x33\x2e\x37\x35\x34\x20\x38\x2e\x37\x39\x37\x20\x33\x20\x31\x30\x20\x33\x63\x31\x2e\x32\x30\x33\x20\x30\x20\x32\x20\x2e\x37\x35\x34\x20\x32\x20\x32\x2e\x31\x39\x39\x56\x38\x7a\x22\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x79\x6d\x62\x6f\x6c\x22\x2c\x7b\x76\x69\x65\x77\x42\x6f\x78\x3a\x22\x30\x20\x30\x20\x32\x30\x20\x32\x30\x22\x2c\x69\x64\x3a\x22\x63\x6c\x6f\x73\x65\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x61\x74\x68\x22\x2c\x7b\x64\x3a\x22\x4d\x31\x34\x2e\x33\x34\x38\x20\x31\x34\x2e\x38\x34\x39\x63\x2d\x2e\x34\x36\x39\x2e\x34\x36\x39\x2d\x31\x2e\x32\x32\x39\x2e\x34\x36\x39\x2d\x31\x2e\x36\x39\x37\x20\x30\x4c\x31\x30\x20\x31\x31\x2e\x38\x31\x39\x6c\x2d\x32\x2e\x36\x35\x31\x20\x33\x2e\x30\x32\x39\x63\x2d\x2e\x34\x36\x39\x2e\x34\x36\x39\x2d\x31\x2e\x32\x32\x39\x2e\x34\x36\x39\x2d\x31\x2e\x36\x39\x37\x20\x30\x2d\x2e\x34\x36\x39\x2d\x2e\x34\x36\x39\x2d\x2e\x34\x36\x39\x2d\x31\x2e\x32\x32\x39\x20\x30\x2d\x31\x2e\x36\x39\x37\x6c\x32\x2e\x37\x35\x38\x2d\x33\x2e\x31\x35\x2d\x32\x2e\x37\x35\x39\x2d\x33\x2e\x31\x35\x32\x63\x2d\x2e\x34\x36\x39\x2d\x2e\x34\x36\x39\x2d\x2e\x34\x36\x39\x2d\x31\x2e\x32\x32\x38\x20\x30\x2d\x31\x2e\x36\x39\x37\x2e\x34\x36\x39\x2d\x2e\x34\x36\x39\x20\x31\x2e\x32\x32\x38\x2d\x2e\x34\x36\x39\x20\x31\x2e\x36\x39\x37\x20\x30\x4c\x31\x30\x20\x38\x2e\x31\x38\x33\x6c\x32\x2e\x36\x35\x31\x2d\x33\x2e\x30\x33\x31\x63\x2e\x34\x36\x39\x2d\x2e\x34\x36\x39\x20\x31\x2e\x32\x32\x38\x2d\x2e\x34\x36\x39\x20\x31\x2e\x36\x39\x37\x20\x30\x20\x2e\x34\x36\x39\x2e\x34\x36\x39\x2e\x34\x36\x39\x20\x31\x2e\x32\x32\x39\x20\x30\x20\x31\x2e\x36\x39\x37\x6c\x2d\x32\x2e\x37\x35\x38\x20\x33\x2e\x31\x35\x32\x20\x32\x2e\x37\x35\x38\x20\x33\x2e\x31\x35\x63\x2e\x34\x36\x39\x2e\x34\x36\x39\x2e\x34\x36\x39\x20\x31\x2e\x32\x32\x39\x20\x30\x20\x31\x2e\x36\x39\x38\x7a\x22\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x79\x6d\x62\x6f\x6c\x22\x2c\x7b\x76\x69\x65\x77\x42\x6f\x78\x3a\x22\x30\x20\x30\x20\x32\x30\x20\x32\x30\x22\x2c\x69\x64\x3a\x22\x6c\x61\x72\x67\x65\x2d\x61\x72\x72\x6f\x77\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x61\x74\x68\x22\x2c\x7b\x64\x3a\x22\x4d\x31\x33\x2e\x32\x35\x20\x31\x30\x4c\x36\x2e\x31\x30\x39\x20\x32\x2e\x35\x38\x63\x2d\x2e\x32\x36\x38\x2d\x2e\x32\x37\x2d\x2e\x32\x36\x38\x2d\x2e\x37\x30\x37\x20\x30\x2d\x2e\x39\x37\x39\x2e\x32\x36\x38\x2d\x2e\x32\x37\x2e\x37\x30\x31\x2d\x2e\x32\x37\x2e\x39\x36\x39\x20\x30\x6c\x37\x2e\x38\x33\x20\x37\x2e\x39\x30\x38\x63\x2e\x32\x36\x38\x2e\x32\x37\x31\x2e\x32\x36\x38\x2e\x37\x30\x39\x20\x30\x20\x2e\x39\x37\x39\x6c\x2d\x37\x2e\x38\x33\x20\x37\x2e\x39\x30\x38\x63\x2d\x2e\x32\x36\x38\x2e\x32\x37\x31\x2d\x2e\x37\x30\x31\x2e\x32\x37\x2d\x2e\x39\x36\x39\x20\x30\x2d\x2e\x32\x36\x38\x2d\x2e\x32\x36\x39\x2d\x2e\x32\x36\x38\x2d\x2e\x37\x30\x37\x20\x30\x2d\x2e\x39\x37\x39\x4c\x31\x33\x2e\x32\x35\x20\x31\x30\x7a\x22\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x79\x6d\x62\x6f\x6c\x22\x2c\x7b\x76\x69\x65\x77\x42\x6f\x78\x3a\x22\x30\x20\x30\x20\x32\x30\x20\x32\x30\x22\x2c\x69\x64\x3a\x22\x6c\x61\x72\x67\x65\x2d\x61\x72\x72\x6f\x77\x2d\x64\x6f\x77\x6e\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x61\x74\x68\x22\x2c\x7b\x64\x3a\x22\x4d\x31\x37\x2e\x34\x31\x38\x20\x36\x2e\x31\x30\x39\x63\x2e\x32\x37\x32\x2d\x2e\x32\x36\x38\x2e\x37\x30\x39\x2d\x2e\x32\x36\x38\x2e\x39\x37\x39\x20\x30\x73\x2e\x32\x37\x31\x2e\x37\x30\x31\x20\x30\x20\x2e\x39\x36\x39\x6c\x2d\x37\x2e\x39\x30\x38\x20\x37\x2e\x38\x33\x63\x2d\x2e\x32\x37\x2e\x32\x36\x38\x2d\x2e\x37\x30\x37\x2e\x32\x36\x38\x2d\x2e\x39\x37\x39\x20\x30\x6c\x2d\x37\x2e\x39\x30\x38\x2d\x37\x2e\x38\x33\x63\x2d\x2e\x32\x37\x2d\x2e\x32\x36\x38\x2d\x2e\x32\x37\x2d\x2e\x37\x30\x31\x20\x30\x2d\x2e\x39\x36\x39\x2e\x32\x37\x31\x2d\x2e\x32\x36\x38\x2e\x37\x30\x39\x2d\x2e\x32\x36\x38\x2e\x39\x37\x39\x20\x30\x4c\x31\x30\x20\x31\x33\x2e\x32\x35\x6c\x37\x2e\x34\x31\x38\x2d\x37\x2e\x31\x34\x31\x7a\x22\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x79\x6d\x62\x6f\x6c\x22\x2c\x7b\x76\x69\x65\x77\x42\x6f\x78\x3a\x22\x30\x20\x30\x20\x32\x34\x20\x32\x34\x22\x2c\x69\x64\x3a\x22\x6a\x75\x6d\x70\x2d\x74\x6f\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x61\x74\x68\x22\x2c\x7b\x64\x3a\x22\x4d\x31\x39\x20\x37\x76\x34\x48\x35\x2e\x38\x33\x6c\x33\x2e\x35\x38\x2d\x33\x2e\x35\x39\x4c\x38\x20\x36\x6c\x2d\x36\x20\x36\x20\x36\x20\x36\x20\x31\x2e\x34\x31\x2d\x31\x2e\x34\x31\x4c\x35\x2e\x38\x33\x20\x31\x33\x48\x32\x31\x56\x37\x7a\x22\x7d\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x73\x79\x6d\x62\x6f\x6c\x22\x2c\x7b\x76\x69\x65\x77\x42\x6f\x78\x3a\x22\x30\x20\x30\x20\x32\x34\x20\x32\x34\x22\x2c\x69\x64\x3a\x22\x65\x78\x70\x61\x6e\x64\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x61\x74\x68\x22\x2c\x7b\x64\x3a\x22\x4d\x31\x30\x20\x31\x38\x68\x34\x76\x2d\x32\x68\x2d\x34\x76\x32\x7a\x4d\x33\x20\x36\x76\x32\x68\x31\x38\x56\x36\x48\x33\x7a\x6d\x33\x20\x37\x68\x31\x32\x76\x2d\x32\x48\x36\x76\x32\x7a\x22\x7d\x29\x29\x29\x29\x29\x7d\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x53\x76\x67\x41\x73\x73\x65\x74\x73\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x64\x6f\x6d\x70\x75\x72\x69\x66\x79\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x2c\x5f\x52\x65\x61\x63\x74\x24\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3b\x76\x61\x72\x20\x53\x76\x67\x41\x73\x73\x65\x74\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x53\x76\x67\x41\x73\x73\x65\x74\x73\x22\x29\x3b\x76\x61\x72\x20\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x22\x29\x3b\x76\x61\x72\x20\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x4d\x6f\x64\x65\x6c\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4d\x6f\x64\x65\x6c\x73\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x52\x6f\x77\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x52\x6f\x77\x22\x29\x3b\x76\x61\x72\x20\x43\x6f\x6c\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x43\x6f\x6c\x22\x29\x3b\x76\x61\x72\x20\x45\x72\x72\x6f\x72\x73\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x65\x72\x72\x6f\x72\x73\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x2c\x74\x72\x75\x65\x29\x3b\x76\x61\x72\x20\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x28\x29\x3b\x76\x61\x72\x20\x69\x73\x4f\x41\x53\x33\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x69\x73\x4f\x41\x53\x33\x28\x29\x3b\x76\x61\x72\x20\x69\x73\x53\x70\x65\x63\x45\x6d\x70\x74\x79\x3d\x21\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x70\x65\x63\x53\x74\x72\x28\x29\x3b\x76\x61\x72\x20\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x28\x29\x3b\x76\x61\x72\x20\x6c\x6f\x61\x64\x69\x6e\x67\x4d\x65\x73\x73\x61\x67\x65\x3d\x6e\x75\x6c\x6c\x3b\x69\x66\x28\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x3d\x3d\x3d\x22\x6c\x6f\x61\x64\x69\x6e\x67\x22\x29\x7b\x6c\x6f\x61\x64\x69\x6e\x67\x4d\x65\x73\x73\x61\x67\x65\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x66\x6f\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6c\x6f\x61\x64\x69\x6e\x67\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6c\x6f\x61\x64\x69\x6e\x67\x22\x7d\x29\x29\x29\x7d\x69\x66\x28\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x3d\x3d\x3d\x22\x66\x61\x69\x6c\x65\x64\x22\x29\x7b\x6c\x6f\x61\x64\x69\x6e\x67\x4d\x65\x73\x73\x61\x67\x65\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x66\x6f\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6c\x6f\x61\x64\x69\x6e\x67\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x46\x61\x69\x6c\x65\x64\x20\x74\x6f\x20\x6c\x6f\x61\x64\x20\x41\x50\x49\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x2e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x72\x72\x6f\x72\x73\x2c\x6e\x75\x6c\x6c\x29\x29\x29\x7d\x69\x66\x28\x6c\x6f\x61\x64\x69\x6e\x67\x53\x74\x61\x74\x75\x73\x3d\x3d\x3d\x22\x66\x61\x69\x6c\x65\x64\x43\x6f\x6e\x66\x69\x67\x22\x29\x7b\x76\x61\x72\x20\x6c\x61\x73\x74\x45\x72\x72\x3d\x65\x72\x72\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6c\x61\x73\x74\x45\x72\x72\x6f\x72\x28\x29\x3b\x76\x61\x72\x20\x6c\x61\x73\x74\x45\x72\x72\x4d\x73\x67\x3d\x6c\x61\x73\x74\x45\x72\x72\x3f\x6c\x61\x73\x74\x45\x72\x72\x2e\x67\x65\x74\x28\x22\x6d\x65\x73\x73\x61\x67\x65\x22\x29\x3a\x22\x22\x3b\x6c\x6f\x61\x64\x69\x6e\x67\x4d\x65\x73\x73\x61\x67\x65\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x66\x6f\x22\x2c\x73\x74\x79\x6c\x65\x3a\x7b\x6d\x61\x78\x57\x69\x64\x74\x68\x3a\x22\x38\x38\x30\x70\x78\x22\x2c\x6d\x61\x72\x67\x69\x6e\x4c\x65\x66\x74\x3a\x22\x61\x75\x74\x6f\x22\x2c\x6d\x61\x72\x67\x69\x6e\x52\x69\x67\x68\x74\x3a\x22\x61\x75\x74\x6f\x22\x2c\x74\x65\x78\x74\x41\x6c\x69\x67\x6e\x3a\x22\x63\x65\x6e\x74\x65\x72\x22\x7d\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6c\x6f\x61\x64\x69\x6e\x67\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x74\x69\x74\x6c\x65\x22\x7d\x2c\x22\x46\x61\x69\x6c\x65\x64\x20\x74\x6f\x20\x6c\x6f\x61\x64\x20\x72\x65\x6d\x6f\x74\x65\x20\x63\x6f\x6e\x66\x69\x67\x75\x72\x61\x74\x69\x6f\x6e\x2e\x22\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x70\x22\x2c\x6e\x75\x6c\x6c\x2c\x6c\x61\x73\x74\x45\x72\x72\x4d\x73\x67\x29\x29\x29\x7d\x69\x66\x28\x21\x6c\x6f\x61\x64\x69\x6e\x67\x4d\x65\x73\x73\x61\x67\x65\x26\x26\x69\x73\x53\x70\x65\x63\x45\x6d\x70\x74\x79\x29\x7b\x6c\x6f\x61\x64\x69\x6e\x67\x4d\x65\x73\x73\x61\x67\x65\x3d\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x68\x34\x22\x2c\x6e\x75\x6c\x6c\x2c\x22\x4e\x6f\x20\x41\x50\x49\x20\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x20\x70\x72\x6f\x76\x69\x64\x65\x64\x2e\x22\x29\x7d\x69\x66\x28\x6c\x6f\x61\x64\x69\x6e\x67\x4d\x65\x73\x73\x61\x67\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x73\x77\x61\x67\x67\x65\x72\x2d\x75\x69\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6c\x6f\x61\x64\x69\x6e\x67\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x6c\x6f\x61\x64\x69\x6e\x67\x4d\x65\x73\x73\x61\x67\x65\x29\x29\x7d\x76\x61\x72\x20\x73\x65\x72\x76\x65\x72\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x72\x76\x65\x72\x73\x28\x29\x3b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x65\x73\x3d\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x63\x68\x65\x6d\x65\x73\x28\x29\x3b\x76\x61\x72\x20\x68\x61\x73\x53\x65\x72\x76\x65\x72\x73\x3d\x73\x65\x72\x76\x65\x72\x73\x26\x26\x73\x65\x72\x76\x65\x72\x73\x2e\x73\x69\x7a\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x53\x63\x68\x65\x6d\x65\x73\x3d\x73\x63\x68\x65\x6d\x65\x73\x26\x26\x73\x63\x68\x65\x6d\x65\x73\x2e\x73\x69\x7a\x65\x3b\x76\x61\x72\x20\x68\x61\x73\x53\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3d\x21\x21\x73\x70\x65\x63\x53\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x73\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x28\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x73\x77\x61\x67\x67\x65\x72\x2d\x75\x69\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x76\x67\x41\x73\x73\x65\x74\x73\x2c\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x56\x65\x72\x73\x69\x6f\x6e\x50\x72\x61\x67\x6d\x61\x46\x69\x6c\x74\x65\x72\x2c\x7b\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x3a\x69\x73\x53\x77\x61\x67\x67\x65\x72\x32\x2c\x69\x73\x4f\x41\x53\x33\x3a\x69\x73\x4f\x41\x53\x33\x2c\x61\x6c\x73\x6f\x53\x68\x6f\x77\x3a\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x72\x72\x6f\x72\x73\x2c\x6e\x75\x6c\x6c\x29\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x45\x72\x72\x6f\x72\x73\x2c\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x69\x6e\x66\x6f\x72\x6d\x61\x74\x69\x6f\x6e\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x6d\x6f\x62\x69\x6c\x65\x3a\x31\x32\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x66\x6f\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x6e\x75\x6c\x6c\x29\x29\x29\x2c\x68\x61\x73\x53\x65\x72\x76\x65\x72\x73\x7c\x7c\x68\x61\x73\x53\x63\x68\x65\x6d\x65\x73\x7c\x7c\x68\x61\x73\x53\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x73\x63\x68\x65\x6d\x65\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x73\x63\x68\x65\x6d\x65\x73\x20\x77\x72\x61\x70\x70\x65\x72\x22\x2c\x6d\x6f\x62\x69\x6c\x65\x3a\x31\x32\x7d\x2c\x68\x61\x73\x53\x65\x72\x76\x65\x72\x73\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x65\x72\x76\x65\x72\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x6e\x75\x6c\x6c\x29\x3a\x6e\x75\x6c\x6c\x2c\x68\x61\x73\x53\x63\x68\x65\x6d\x65\x73\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x63\x68\x65\x6d\x65\x73\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x6e\x75\x6c\x6c\x29\x3a\x6e\x75\x6c\x6c\x2c\x68\x61\x73\x53\x65\x63\x75\x72\x69\x74\x79\x44\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x73\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x41\x75\x74\x68\x6f\x72\x69\x7a\x65\x42\x74\x6e\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x6e\x75\x6c\x6c\x29\x3a\x6e\x75\x6c\x6c\x29\x29\x3a\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x46\x69\x6c\x74\x65\x72\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2c\x6e\x75\x6c\x6c\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x6d\x6f\x62\x69\x6c\x65\x3a\x31\x32\x2c\x64\x65\x73\x6b\x74\x6f\x70\x3a\x31\x32\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4f\x70\x65\x72\x61\x74\x69\x6f\x6e\x73\x2c\x6e\x75\x6c\x6c\x29\x29\x29\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x52\x6f\x77\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6c\x2c\x7b\x6d\x6f\x62\x69\x6c\x65\x3a\x31\x32\x2c\x64\x65\x73\x6b\x74\x6f\x70\x3a\x31\x32\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4d\x6f\x64\x65\x6c\x73\x2c\x6e\x75\x6c\x6c\x29\x29\x29\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x7d\x28\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x64\x65\x66\x61\x75\x6c\x74\x3d\x42\x61\x73\x65\x4c\x61\x79\x6f\x75\x74\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x22\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74\x22\x3b\x4f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x79\x28\x65\x78\x70\x6f\x72\x74\x73\x2c\x22\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x22\x2c\x7b\x76\x61\x6c\x75\x65\x3a\x74\x72\x75\x65\x7d\x29\x3b\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x30\x29\x3b\x76\x61\x72\x20\x5f\x61\x73\x73\x69\x67\x6e\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x61\x73\x73\x69\x67\x6e\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x32\x29\x3b\x76\x61\x72\x20\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x65\x78\x74\x65\x6e\x64\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x34\x29\x3b\x76\x61\x72\x20\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x32\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x33\x29\x3b\x76\x61\x72\x20\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x35\x29\x3b\x76\x61\x72\x20\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x32\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x29\x3b\x76\x61\x72\x20\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x32\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x31\x29\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x37\x39\x29\x3b\x76\x61\x72\x20\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x39\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x44\x65\x62\x6f\x75\x6e\x63\x65\x49\x6e\x70\x75\x74\x3d\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x36\x37\x30\x29\x3b\x76\x61\x72\x20\x5f\x72\x65\x61\x63\x74\x44\x65\x62\x6f\x75\x6e\x63\x65\x49\x6e\x70\x75\x74\x32\x3d\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x5f\x72\x65\x61\x63\x74\x44\x65\x62\x6f\x75\x6e\x63\x65\x49\x6e\x70\x75\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x5f\x69\x6e\x74\x65\x72\x6f\x70\x52\x65\x71\x75\x69\x72\x65\x44\x65\x66\x61\x75\x6c\x74\x28\x6f\x62\x6a\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x6f\x62\x6a\x26\x26\x6f\x62\x6a\x2e\x5f\x5f\x65\x73\x4d\x6f\x64\x75\x6c\x65\x3f\x6f\x62\x6a\x3a\x7b\x64\x65\x66\x61\x75\x6c\x74\x3a\x6f\x62\x6a\x7d\x7d\x76\x61\x72\x20\x6e\x6f\x6f\x70\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6e\x6f\x6f\x70\x28\x29\x7b\x7d\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x50\x72\x6f\x70\x53\x68\x61\x70\x65\x3d\x7b\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x66\x75\x6e\x63\x2e\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x2c\x76\x61\x6c\x75\x65\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x61\x6e\x79\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x66\x75\x6e\x63\x2c\x6b\x65\x79\x4e\x61\x6d\x65\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x61\x6e\x79\x2c\x66\x6e\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6f\x62\x6a\x65\x63\x74\x2e\x69\x73\x52\x65\x71\x75\x69\x72\x65\x64\x2c\x73\x63\x68\x65\x6d\x61\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6f\x62\x6a\x65\x63\x74\x2c\x65\x72\x72\x6f\x72\x73\x3a\x5f\x72\x65\x61\x63\x74\x49\x6d\x6d\x75\x74\x61\x62\x6c\x65\x50\x72\x6f\x70\x74\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x6c\x69\x73\x74\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x62\x6f\x6f\x6c\x2c\x64\x69\x73\x70\x61\x74\x63\x68\x49\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x62\x6f\x6f\x6c\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x61\x6e\x79\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x5f\x70\x72\x6f\x70\x54\x79\x70\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x62\x6f\x6f\x6c\x7d\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x44\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x7b\x76\x61\x6c\x75\x65\x3a\x22\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x6e\x6f\x6f\x70\x2c\x73\x63\x68\x65\x6d\x61\x3a\x7b\x7d\x2c\x6b\x65\x79\x4e\x61\x6d\x65\x3a\x22\x22\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3a\x66\x61\x6c\x73\x65\x2c\x65\x72\x72\x6f\x72\x73\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x7d\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x29\x3b\x72\x65\x74\x75\x72\x6e\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x29\x29\x2e\x61\x70\x70\x6c\x79\x28\x74\x68\x69\x73\x2c\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x29\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x44\x69\x64\x4d\x6f\x75\x6e\x74\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x64\x69\x73\x70\x61\x74\x63\x68\x49\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x64\x69\x73\x70\x61\x74\x63\x68\x49\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3b\x69\x66\x28\x64\x69\x73\x70\x61\x74\x63\x68\x49\x6e\x69\x74\x69\x61\x6c\x56\x61\x6c\x75\x65\x29\x7b\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x75\x65\x29\x7d\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x32\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x73\x63\x68\x65\x6d\x61\x2c\x65\x72\x72\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x65\x72\x72\x6f\x72\x73\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x76\x61\x6c\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x66\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x66\x6e\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x32\x2e\x64\x69\x73\x61\x62\x6c\x65\x64\x3b\x69\x66\x28\x73\x63\x68\x65\x6d\x61\x2e\x74\x6f\x4a\x53\x29\x73\x63\x68\x65\x6d\x61\x3d\x73\x63\x68\x65\x6d\x61\x2e\x74\x6f\x4a\x53\x28\x29\x3b\x76\x61\x72\x20\x5f\x73\x63\x68\x65\x6d\x61\x3d\x73\x63\x68\x65\x6d\x61\x2c\x74\x79\x70\x65\x3d\x5f\x73\x63\x68\x65\x6d\x61\x2e\x74\x79\x70\x65\x2c\x5f\x73\x63\x68\x65\x6d\x61\x24\x66\x6f\x72\x6d\x61\x74\x3d\x5f\x73\x63\x68\x65\x6d\x61\x2e\x66\x6f\x72\x6d\x61\x74\x2c\x66\x6f\x72\x6d\x61\x74\x3d\x5f\x73\x63\x68\x65\x6d\x61\x24\x66\x6f\x72\x6d\x61\x74\x3d\x3d\x3d\x75\x6e\x64\x65\x66\x69\x6e\x65\x64\x3f\x22\x22\x3a\x5f\x73\x63\x68\x65\x6d\x61\x24\x66\x6f\x72\x6d\x61\x74\x3b\x76\x61\x72\x20\x43\x6f\x6d\x70\x3d\x28\x66\x6f\x72\x6d\x61\x74\x3f\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x22\x2b\x74\x79\x70\x65\x2b\x22\x5f\x22\x2b\x66\x6f\x72\x6d\x61\x74\x29\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x22\x2b\x74\x79\x70\x65\x29\x29\x7c\x7c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x43\x6f\x6d\x70\x2c\x28\x30\x2c\x5f\x65\x78\x74\x65\x6e\x64\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x7b\x65\x72\x72\x6f\x72\x73\x3a\x65\x72\x72\x6f\x72\x73\x2c\x66\x6e\x3a\x66\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x64\x69\x73\x61\x62\x6c\x65\x64\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x44\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x2c\x5f\x74\x68\x69\x73\x32\x2c\x5f\x72\x65\x74\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x29\x2c\x5f\x6b\x65\x79\x3d\x30\x3b\x5f\x6b\x65\x79\x3c\x5f\x6c\x65\x6e\x3b\x5f\x6b\x65\x79\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x3d\x28\x5f\x74\x65\x6d\x70\x3d\x28\x5f\x74\x68\x69\x73\x32\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x3d\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x32\x29\x2c\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x73\x63\x68\x65\x6d\x61\x5b\x22\x74\x79\x70\x65\x22\x5d\x3d\x3d\x3d\x22\x66\x69\x6c\x65\x22\x3f\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x66\x69\x6c\x65\x73\x5b\x30\x5d\x3a\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x3b\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x75\x65\x2c\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6b\x65\x79\x4e\x61\x6d\x65\x29\x7d\x2c\x5f\x74\x68\x69\x73\x32\x2e\x6f\x6e\x45\x6e\x75\x6d\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x32\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x32\x2c\x5f\x72\x65\x74\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x33\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x76\x61\x6c\x75\x65\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x73\x63\x68\x65\x6d\x61\x2c\x65\x72\x72\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x65\x72\x72\x6f\x72\x73\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x72\x65\x71\x75\x69\x72\x65\x64\x2c\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x33\x2e\x64\x69\x73\x61\x62\x6c\x65\x64\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x3d\x73\x63\x68\x65\x6d\x61\x5b\x22\x65\x6e\x75\x6d\x22\x5d\x3b\x65\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x6f\x72\x73\x2e\x74\x6f\x4a\x53\x3f\x65\x72\x72\x6f\x72\x73\x2e\x74\x6f\x4a\x53\x28\x29\x3a\x5b\x5d\x3b\x69\x66\x28\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x53\x65\x6c\x65\x63\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x53\x65\x6c\x65\x63\x74\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x65\x6c\x65\x63\x74\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x22\x69\x6e\x76\x61\x6c\x69\x64\x22\x3a\x22\x22\x2c\x74\x69\x74\x6c\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x65\x72\x72\x6f\x72\x73\x3a\x22\x22\x2c\x61\x6c\x6c\x6f\x77\x65\x64\x56\x61\x6c\x75\x65\x73\x3a\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x61\x6c\x6c\x6f\x77\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x3a\x21\x72\x65\x71\x75\x69\x72\x65\x64\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x45\x6e\x75\x6d\x43\x68\x61\x6e\x67\x65\x7d\x29\x7d\x76\x61\x72\x20\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x3d\x64\x69\x73\x61\x62\x6c\x65\x64\x7c\x7c\x73\x63\x68\x65\x6d\x61\x5b\x22\x69\x6e\x22\x5d\x3d\x3d\x3d\x22\x66\x6f\x72\x6d\x44\x61\x74\x61\x22\x26\x26\x21\x28\x22\x46\x6f\x72\x6d\x44\x61\x74\x61\x22\x69\x6e\x20\x77\x69\x6e\x64\x6f\x77\x29\x3b\x76\x61\x72\x20\x49\x6e\x70\x75\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x49\x6e\x70\x75\x74\x22\x29\x3b\x69\x66\x28\x73\x63\x68\x65\x6d\x61\x5b\x22\x74\x79\x70\x65\x22\x5d\x3d\x3d\x3d\x22\x66\x69\x6c\x65\x22\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x49\x6e\x70\x75\x74\x2c\x7b\x74\x79\x70\x65\x3a\x22\x66\x69\x6c\x65\x22\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x22\x69\x6e\x76\x61\x6c\x69\x64\x22\x3a\x22\x22\x2c\x74\x69\x74\x6c\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x65\x72\x72\x6f\x72\x73\x3a\x22\x22\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x7d\x29\x7d\x65\x6c\x73\x65\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x5f\x72\x65\x61\x63\x74\x44\x65\x62\x6f\x75\x6e\x63\x65\x49\x6e\x70\x75\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2c\x7b\x74\x79\x70\x65\x3a\x73\x63\x68\x65\x6d\x61\x2e\x66\x6f\x72\x6d\x61\x74\x3d\x3d\x3d\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x3f\x22\x70\x61\x73\x73\x77\x6f\x72\x64\x22\x3a\x22\x74\x65\x78\x74\x22\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x22\x69\x6e\x76\x61\x6c\x69\x64\x22\x3a\x22\x22\x2c\x74\x69\x74\x6c\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x65\x72\x72\x6f\x72\x73\x3a\x22\x22\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x6d\x69\x6e\x4c\x65\x6e\x67\x74\x68\x3a\x30\x2c\x64\x65\x62\x6f\x75\x6e\x63\x65\x54\x69\x6d\x65\x6f\x75\x74\x3a\x33\x35\x30\x2c\x70\x6c\x61\x63\x65\x68\x6f\x6c\x64\x65\x72\x3a\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6f\x6e\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x69\x73\x44\x69\x73\x61\x62\x6c\x65\x64\x7d\x29\x7d\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x73\x74\x72\x69\x6e\x67\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x44\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x2c\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x28\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x33\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x2c\x70\x72\x6f\x70\x73\x2c\x63\x6f\x6e\x74\x65\x78\x74\x29\x29\x3b\x5f\x74\x68\x69\x73\x33\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x33\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x5f\x74\x68\x69\x73\x33\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x33\x2e\x6f\x6e\x49\x74\x65\x6d\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x6d\x56\x61\x6c\x2c\x69\x29\x7b\x5f\x74\x68\x69\x73\x33\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x2e\x73\x65\x74\x28\x69\x2c\x69\x74\x65\x6d\x56\x61\x6c\x29\x7d\x7d\x2c\x5f\x74\x68\x69\x73\x33\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x33\x2e\x72\x65\x6d\x6f\x76\x65\x49\x74\x65\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x29\x7b\x5f\x74\x68\x69\x73\x33\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x2e\x72\x65\x6d\x6f\x76\x65\x28\x69\x29\x7d\x7d\x2c\x5f\x74\x68\x69\x73\x33\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x33\x2e\x61\x64\x64\x49\x74\x65\x6d\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x5f\x74\x68\x69\x73\x33\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x73\x74\x61\x74\x65\x29\x7b\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x3d\x76\x61\x6c\x75\x65\x4f\x72\x45\x6d\x70\x74\x79\x4c\x69\x73\x74\x28\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x29\x3b\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x2e\x70\x75\x73\x68\x28\x22\x22\x29\x7d\x7d\x2c\x5f\x74\x68\x69\x73\x33\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x33\x2e\x6f\x6e\x45\x6e\x75\x6d\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x5f\x74\x68\x69\x73\x33\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x7d\x7d\x2c\x5f\x74\x68\x69\x73\x33\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x33\x2e\x73\x74\x61\x74\x65\x3d\x7b\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x4f\x72\x45\x6d\x70\x74\x79\x4c\x69\x73\x74\x28\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x33\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x57\x69\x6c\x6c\x52\x65\x63\x65\x69\x76\x65\x50\x72\x6f\x70\x73\x28\x70\x72\x6f\x70\x73\x29\x7b\x69\x66\x28\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x21\x3d\x3d\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x29\x74\x68\x69\x73\x2e\x73\x65\x74\x53\x74\x61\x74\x65\x28\x7b\x76\x61\x6c\x75\x65\x3a\x70\x72\x6f\x70\x73\x2e\x76\x61\x6c\x75\x65\x7d\x29\x7d\x7d\x2c\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x34\x3d\x74\x68\x69\x73\x3b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x34\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x72\x65\x71\x75\x69\x72\x65\x64\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x73\x63\x68\x65\x6d\x61\x2c\x65\x72\x72\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x65\x72\x72\x6f\x72\x73\x2c\x66\x6e\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x66\x6e\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x34\x2e\x64\x69\x73\x61\x62\x6c\x65\x64\x3b\x65\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x6f\x72\x73\x2e\x74\x6f\x4a\x53\x3f\x65\x72\x72\x6f\x72\x73\x2e\x74\x6f\x4a\x53\x28\x29\x3a\x5b\x5d\x3b\x76\x61\x72\x20\x69\x74\x65\x6d\x53\x63\x68\x65\x6d\x61\x3d\x66\x6e\x2e\x69\x6e\x66\x65\x72\x53\x63\x68\x65\x6d\x61\x28\x73\x63\x68\x65\x6d\x61\x2e\x69\x74\x65\x6d\x73\x29\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x22\x29\x3b\x76\x61\x72\x20\x42\x75\x74\x74\x6f\x6e\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x42\x75\x74\x74\x6f\x6e\x22\x29\x3b\x76\x61\x72\x20\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x3d\x69\x74\x65\x6d\x53\x63\x68\x65\x6d\x61\x5b\x22\x65\x6e\x75\x6d\x22\x5d\x3b\x76\x61\x72\x20\x76\x61\x6c\x75\x65\x3d\x74\x68\x69\x73\x2e\x73\x74\x61\x74\x65\x2e\x76\x61\x6c\x75\x65\x3b\x69\x66\x28\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x29\x7b\x76\x61\x72\x20\x53\x65\x6c\x65\x63\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x53\x65\x6c\x65\x63\x74\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x65\x6c\x65\x63\x74\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x22\x69\x6e\x76\x61\x6c\x69\x64\x22\x3a\x22\x22\x2c\x74\x69\x74\x6c\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x65\x72\x72\x6f\x72\x73\x3a\x22\x22\x2c\x6d\x75\x6c\x74\x69\x70\x6c\x65\x3a\x74\x72\x75\x65\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x64\x69\x73\x61\x62\x6c\x65\x64\x2c\x61\x6c\x6c\x6f\x77\x65\x64\x56\x61\x6c\x75\x65\x73\x3a\x65\x6e\x75\x6d\x56\x61\x6c\x75\x65\x2c\x61\x6c\x6c\x6f\x77\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x3a\x21\x72\x65\x71\x75\x69\x72\x65\x64\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x45\x6e\x75\x6d\x43\x68\x61\x6e\x67\x65\x7d\x29\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6a\x73\x6f\x6e\x2d\x73\x63\x68\x65\x6d\x61\x2d\x61\x72\x72\x61\x79\x22\x7d\x2c\x21\x76\x61\x6c\x75\x65\x7c\x7c\x21\x76\x61\x6c\x75\x65\x2e\x63\x6f\x75\x6e\x74\x7c\x7c\x76\x61\x6c\x75\x65\x2e\x63\x6f\x75\x6e\x74\x28\x29\x3c\x31\x3f\x6e\x75\x6c\x6c\x3a\x76\x61\x6c\x75\x65\x2e\x6d\x61\x70\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x69\x74\x65\x6d\x2c\x69\x29\x7b\x76\x61\x72\x20\x73\x63\x68\x65\x6d\x61\x3d\x28\x30\x2c\x5f\x61\x73\x73\x69\x67\x6e\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x7d\x2c\x69\x74\x65\x6d\x53\x63\x68\x65\x6d\x61\x29\x3b\x69\x66\x28\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x29\x7b\x76\x61\x72\x20\x65\x72\x72\x3d\x65\x72\x72\x6f\x72\x73\x2e\x66\x69\x6c\x74\x65\x72\x28\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x72\x72\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x65\x72\x72\x2e\x69\x6e\x64\x65\x78\x3d\x3d\x3d\x69\x7d\x29\x3b\x69\x66\x28\x65\x72\x72\x2e\x6c\x65\x6e\x67\x74\x68\x29\x65\x72\x72\x6f\x72\x73\x3d\x5b\x65\x72\x72\x5b\x30\x5d\x2e\x65\x72\x72\x6f\x72\x2b\x69\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x7b\x6b\x65\x79\x3a\x69\x2c\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x6a\x73\x6f\x6e\x2d\x73\x63\x68\x65\x6d\x61\x2d\x66\x6f\x72\x6d\x2d\x69\x74\x65\x6d\x22\x7d\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x46\x6f\x72\x6d\x2c\x7b\x66\x6e\x3a\x66\x6e\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3a\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x76\x61\x6c\x75\x65\x3a\x69\x74\x65\x6d\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x34\x2e\x6f\x6e\x49\x74\x65\x6d\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x2c\x69\x29\x7d\x2c\x73\x63\x68\x65\x6d\x61\x3a\x73\x63\x68\x65\x6d\x61\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x64\x69\x73\x61\x62\x6c\x65\x64\x7d\x29\x2c\x21\x64\x69\x73\x61\x62\x6c\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x62\x74\x6e\x2d\x73\x6d\x20\x6a\x73\x6f\x6e\x2d\x73\x63\x68\x65\x6d\x61\x2d\x66\x6f\x72\x6d\x2d\x69\x74\x65\x6d\x2d\x72\x65\x6d\x6f\x76\x65\x22\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x6f\x6e\x43\x6c\x69\x63\x6b\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x34\x2e\x72\x65\x6d\x6f\x76\x65\x49\x74\x65\x6d\x28\x69\x29\x7d\x7d\x2c\x22\x20\x2d\x20\x22\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x29\x2e\x74\x6f\x41\x72\x72\x61\x79\x28\x29\x2c\x21\x64\x69\x73\x61\x62\x6c\x65\x64\x3f\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x42\x75\x74\x74\x6f\x6e\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x22\x62\x74\x6e\x20\x62\x74\x6e\x2d\x73\x6d\x20\x6a\x73\x6f\x6e\x2d\x73\x63\x68\x65\x6d\x61\x2d\x66\x6f\x72\x6d\x2d\x69\x74\x65\x6d\x2d\x61\x64\x64\x20\x22\x2b\x28\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x22\x69\x6e\x76\x61\x6c\x69\x64\x22\x3a\x6e\x75\x6c\x6c\x29\x2c\x6f\x6e\x43\x6c\x69\x63\x6b\x3a\x74\x68\x69\x73\x2e\x61\x64\x64\x49\x74\x65\x6d\x7d\x2c\x22\x41\x64\x64\x20\x69\x74\x65\x6d\x22\x29\x3a\x6e\x75\x6c\x6c\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x61\x72\x72\x61\x79\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x44\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x33\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x2c\x5f\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x33\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x28\x29\x7b\x76\x61\x72\x20\x5f\x72\x65\x66\x32\x3b\x76\x61\x72\x20\x5f\x74\x65\x6d\x70\x32\x2c\x5f\x74\x68\x69\x73\x35\x2c\x5f\x72\x65\x74\x32\x3b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x29\x3b\x66\x6f\x72\x28\x76\x61\x72\x20\x5f\x6c\x65\x6e\x32\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x2e\x6c\x65\x6e\x67\x74\x68\x2c\x61\x72\x67\x73\x3d\x41\x72\x72\x61\x79\x28\x5f\x6c\x65\x6e\x32\x29\x2c\x5f\x6b\x65\x79\x32\x3d\x30\x3b\x5f\x6b\x65\x79\x32\x3c\x5f\x6c\x65\x6e\x32\x3b\x5f\x6b\x65\x79\x32\x2b\x2b\x29\x7b\x61\x72\x67\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x3d\x61\x72\x67\x75\x6d\x65\x6e\x74\x73\x5b\x5f\x6b\x65\x79\x32\x5d\x7d\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x74\x32\x3d\x28\x5f\x74\x65\x6d\x70\x32\x3d\x28\x5f\x74\x68\x69\x73\x35\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x5f\x72\x65\x66\x32\x3d\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x29\x29\x2e\x63\x61\x6c\x6c\x2e\x61\x70\x70\x6c\x79\x28\x5f\x72\x65\x66\x32\x2c\x5b\x74\x68\x69\x73\x5d\x2e\x63\x6f\x6e\x63\x61\x74\x28\x61\x72\x67\x73\x29\x29\x29\x2c\x5f\x74\x68\x69\x73\x35\x29\x2c\x5f\x74\x68\x69\x73\x35\x2e\x6f\x6e\x45\x6e\x75\x6d\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x35\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x29\x7d\x2c\x5f\x74\x65\x6d\x70\x32\x29\x2c\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x5f\x74\x68\x69\x73\x35\x2c\x5f\x72\x65\x74\x32\x29\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x35\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x76\x61\x6c\x75\x65\x2c\x65\x72\x72\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x65\x72\x72\x6f\x72\x73\x2c\x73\x63\x68\x65\x6d\x61\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x73\x63\x68\x65\x6d\x61\x2c\x72\x65\x71\x75\x69\x72\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x72\x65\x71\x75\x69\x72\x65\x64\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x35\x2e\x64\x69\x73\x61\x62\x6c\x65\x64\x3b\x65\x72\x72\x6f\x72\x73\x3d\x65\x72\x72\x6f\x72\x73\x2e\x74\x6f\x4a\x53\x3f\x65\x72\x72\x6f\x72\x73\x2e\x74\x6f\x4a\x53\x28\x29\x3a\x5b\x5d\x3b\x76\x61\x72\x20\x53\x65\x6c\x65\x63\x74\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x53\x65\x6c\x65\x63\x74\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x53\x65\x6c\x65\x63\x74\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x22\x69\x6e\x76\x61\x6c\x69\x64\x22\x3a\x22\x22\x2c\x74\x69\x74\x6c\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x6c\x65\x6e\x67\x74\x68\x3f\x65\x72\x72\x6f\x72\x73\x3a\x22\x22\x2c\x76\x61\x6c\x75\x65\x3a\x53\x74\x72\x69\x6e\x67\x28\x76\x61\x6c\x75\x65\x29\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x64\x69\x73\x61\x62\x6c\x65\x64\x2c\x61\x6c\x6c\x6f\x77\x65\x64\x56\x61\x6c\x75\x65\x73\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x66\x72\x6f\x6d\x4a\x53\x29\x28\x73\x63\x68\x65\x6d\x61\x2e\x65\x6e\x75\x6d\x7c\x7c\x5b\x22\x74\x72\x75\x65\x22\x2c\x22\x66\x61\x6c\x73\x65\x22\x5d\x29\x2c\x61\x6c\x6c\x6f\x77\x45\x6d\x70\x74\x79\x56\x61\x6c\x75\x65\x3a\x21\x73\x63\x68\x65\x6d\x61\x2e\x65\x6e\x75\x6d\x7c\x7c\x21\x72\x65\x71\x75\x69\x72\x65\x64\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x6f\x6e\x45\x6e\x75\x6d\x43\x68\x61\x6e\x67\x65\x7d\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x62\x6f\x6f\x6c\x65\x61\x6e\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x44\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3b\x76\x61\x72\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x3d\x65\x78\x70\x6f\x72\x74\x73\x2e\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x7b\x28\x30\x2c\x5f\x69\x6e\x68\x65\x72\x69\x74\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x2c\x5f\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x32\x29\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x28\x29\x7b\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x43\x61\x6c\x6c\x43\x68\x65\x63\x6b\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x29\x3b\x76\x61\x72\x20\x5f\x74\x68\x69\x73\x36\x3d\x28\x30\x2c\x5f\x70\x6f\x73\x73\x69\x62\x6c\x65\x43\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72\x52\x65\x74\x75\x72\x6e\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x74\x68\x69\x73\x2c\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x2e\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f\x7c\x7c\x28\x30\x2c\x5f\x67\x65\x74\x50\x72\x6f\x74\x6f\x74\x79\x70\x65\x4f\x66\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x29\x29\x2e\x63\x61\x6c\x6c\x28\x74\x68\x69\x73\x29\x29\x3b\x5f\x74\x68\x69\x73\x36\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x76\x61\x6c\x75\x65\x29\x7b\x5f\x74\x68\x69\x73\x36\x2e\x70\x72\x6f\x70\x73\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x76\x61\x6c\x75\x65\x29\x7d\x3b\x5f\x74\x68\x69\x73\x36\x2e\x68\x61\x6e\x64\x6c\x65\x4f\x6e\x43\x68\x61\x6e\x67\x65\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x65\x29\x7b\x76\x61\x72\x20\x69\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x3d\x65\x2e\x74\x61\x72\x67\x65\x74\x2e\x76\x61\x6c\x75\x65\x3b\x5f\x74\x68\x69\x73\x36\x2e\x6f\x6e\x43\x68\x61\x6e\x67\x65\x28\x69\x6e\x70\x75\x74\x56\x61\x6c\x75\x65\x29\x7d\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x74\x68\x69\x73\x36\x7d\x28\x30\x2c\x5f\x63\x72\x65\x61\x74\x65\x43\x6c\x61\x73\x73\x33\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x2c\x5b\x7b\x6b\x65\x79\x3a\x22\x72\x65\x6e\x64\x65\x72\x22\x2c\x76\x61\x6c\x75\x65\x3a\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x72\x65\x6e\x64\x65\x72\x28\x29\x7b\x76\x61\x72\x20\x5f\x70\x72\x6f\x70\x73\x36\x3d\x74\x68\x69\x73\x2e\x70\x72\x6f\x70\x73\x2c\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x3d\x5f\x70\x72\x6f\x70\x73\x36\x2e\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x2c\x76\x61\x6c\x75\x65\x3d\x5f\x70\x72\x6f\x70\x73\x36\x2e\x76\x61\x6c\x75\x65\x2c\x65\x72\x72\x6f\x72\x73\x3d\x5f\x70\x72\x6f\x70\x73\x36\x2e\x65\x72\x72\x6f\x72\x73\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3d\x5f\x70\x72\x6f\x70\x73\x36\x2e\x64\x69\x73\x61\x62\x6c\x65\x64\x3b\x76\x61\x72\x20\x54\x65\x78\x74\x41\x72\x65\x61\x3d\x67\x65\x74\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x28\x22\x54\x65\x78\x74\x41\x72\x65\x61\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x64\x69\x76\x22\x2c\x6e\x75\x6c\x6c\x2c\x5f\x72\x65\x61\x63\x74\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x54\x65\x78\x74\x41\x72\x65\x61\x2c\x7b\x63\x6c\x61\x73\x73\x4e\x61\x6d\x65\x3a\x28\x30\x2c\x5f\x63\x6c\x61\x73\x73\x6e\x61\x6d\x65\x73\x32\x2e\x64\x65\x66\x61\x75\x6c\x74\x29\x28\x7b\x69\x6e\x76\x61\x6c\x69\x64\x3a\x65\x72\x72\x6f\x72\x73\x2e\x73\x69\x7a\x65\x7d\x29\x2c\x74\x69\x74\x6c\x65\x3a\x65\x72\x72\x6f\x72\x73\x2e\x73\x69\x7a\x65\x3f\x65\x72\x72\x6f\x72\x73\x2e\x6a\x6f\x69\x6e\x28\x22\x2c\x20\x22\x29\x3a\x22\x22\x2c\x76\x61\x6c\x75\x65\x3a\x76\x61\x6c\x75\x65\x2c\x64\x69\x73\x61\x62\x6c\x65\x64\x3a\x64\x69\x73\x61\x62\x6c\x65\x64\x2c\x6f\x6e\x43\x68\x61\x6e\x67\x65\x3a\x74\x68\x69\x73\x2e\x68\x61\x6e\x64\x6c\x65\x4f\x6e\x43\x68\x61\x6e\x67\x65\x7d\x29\x29\x7d\x7d\x5d\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x7d\x28\x5f\x72\x65\x61\x63\x74\x2e\x50\x75\x72\x65\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x29\x3b\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x5f\x6f\x62\x6a\x65\x63\x74\x2e\x64\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3d\x4a\x73\x6f\x6e\x53\x63\x68\x65\x6d\x61\x44\x65\x66\x61\x75\x6c\x74\x50\x72\x6f\x70\x73\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x76\x61\x6c\x75\x65\x4f\x72\x45\x6d\x70\x74\x79\x4c\x69\x73\x74\x28\x76\x61\x6c\x75\x65\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x2e\x69\x73\x4c\x69\x73\x74\x28\x76\x61\x6c\x75\x65\x29\x3f\x76\x61\x6c\x75\x65\x3a\x28\x30\x2c\x5f\x69\x6d\x6d\x75\x74\x61\x62\x6c\x65\x2e\x4c\x69\x73\x74\x29\x28\x29\x7d\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x29\x7b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x72\x65\x71\x75\x69\x72\x65\x28\x22\x72\x65\x61\x63\x74\x2d\x64\x65\x62\x6f\x75\x6e\x63\x65\x2d\x69\x6e\x70\x75\x74\x22\x29\x7d\x2c\x66\x75\x6e\x63\x74\x69\x6f\x6e\x28\x6d\x6f\x64\x75\x6c\x65\x2c\x65\x78\x70\x6f\x72\x74\x73\x2c\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x29\x7b\x76\x61\x72\x20\x6d\x61\x70\x3d\x7b\x22\x2e\x2f\x61\x6c\x6c\x2e\x6a\x73\x22\x3a\x32\x39\x34\x2c\x22\x2e\x2f\x61\x75\x74\x68\x2f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x31\x35\x35\x2c\x22\x2e\x2f\x61\x75\x74\x68\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x34\x38\x2c\x22\x2e\x2f\x61\x75\x74\x68\x2f\x72\x65\x64\x75\x63\x65\x72\x73\x2e\x6a\x73\x22\x3a\x32\x34\x39\x2c\x22\x2e\x2f\x61\x75\x74\x68\x2f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6a\x73\x22\x3a\x32\x35\x30\x2c\x22\x2e\x2f\x61\x75\x74\x68\x2f\x73\x70\x65\x63\x2d\x77\x72\x61\x70\x2d\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x32\x35\x31\x2c\x22\x2e\x2f\x63\x6f\x6e\x66\x69\x67\x73\x2f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x31\x35\x37\x2c\x22\x2e\x2f\x63\x6f\x6e\x66\x69\x67\x73\x2f\x68\x65\x6c\x70\x65\x72\x73\x2e\x6a\x73\x22\x3a\x31\x35\x36\x2c\x22\x2e\x2f\x63\x6f\x6e\x66\x69\x67\x73\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x35\x34\x2c\x22\x2e\x2f\x63\x6f\x6e\x66\x69\x67\x73\x2f\x72\x65\x64\x75\x63\x65\x72\x73\x2e\x6a\x73\x22\x3a\x32\x35\x37\x2c\x22\x2e\x2f\x63\x6f\x6e\x66\x69\x67\x73\x2f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6a\x73\x22\x3a\x32\x35\x36\x2c\x22\x2e\x2f\x63\x6f\x6e\x66\x69\x67\x73\x2f\x73\x70\x65\x63\x2d\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x32\x35\x35\x2c\x22\x2e\x2f\x64\x65\x65\x70\x2d\x6c\x69\x6e\x6b\x69\x6e\x67\x2f\x68\x65\x6c\x70\x65\x72\x73\x2e\x6a\x73\x22\x3a\x32\x36\x30\x2c\x22\x2e\x2f\x64\x65\x65\x70\x2d\x6c\x69\x6e\x6b\x69\x6e\x67\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x35\x38\x2c\x22\x2e\x2f\x64\x65\x65\x70\x2d\x6c\x69\x6e\x6b\x69\x6e\x67\x2f\x6c\x61\x79\x6f\x75\x74\x2e\x6a\x73\x22\x3a\x32\x35\x39\x2c\x22\x2e\x2f\x64\x65\x65\x70\x2d\x6c\x69\x6e\x6b\x69\x6e\x67\x2f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2d\x74\x61\x67\x2d\x77\x72\x61\x70\x70\x65\x72\x2e\x6a\x73\x78\x22\x3a\x32\x36\x32\x2c\x22\x2e\x2f\x64\x65\x65\x70\x2d\x6c\x69\x6e\x6b\x69\x6e\x67\x2f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2d\x77\x72\x61\x70\x70\x65\x72\x2e\x6a\x73\x78\x22\x3a\x32\x36\x31\x2c\x22\x2e\x2f\x64\x6f\x77\x6e\x6c\x6f\x61\x64\x2d\x75\x72\x6c\x2e\x6a\x73\x22\x3a\x32\x35\x33\x2c\x22\x2e\x2f\x65\x72\x72\x2f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x39\x34\x2c\x22\x2e\x2f\x65\x72\x72\x2f\x65\x72\x72\x6f\x72\x2d\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x73\x2f\x68\x6f\x6f\x6b\x2e\x6a\x73\x22\x3a\x32\x31\x34\x2c\x22\x2e\x2f\x65\x72\x72\x2f\x65\x72\x72\x6f\x72\x2d\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x73\x2f\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x73\x2f\x6e\x6f\x74\x2d\x6f\x66\x2d\x74\x79\x70\x65\x2e\x6a\x73\x22\x3a\x32\x31\x35\x2c\x22\x2e\x2f\x65\x72\x72\x2f\x65\x72\x72\x6f\x72\x2d\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x73\x2f\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x65\x72\x73\x2f\x70\x61\x72\x61\x6d\x65\x74\x65\x72\x2d\x6f\x6e\x65\x6f\x66\x2e\x6a\x73\x22\x3a\x32\x31\x36\x2c\x22\x2e\x2f\x65\x72\x72\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x31\x32\x2c\x22\x2e\x2f\x65\x72\x72\x2f\x72\x65\x64\x75\x63\x65\x72\x73\x2e\x6a\x73\x22\x3a\x32\x31\x33\x2c\x22\x2e\x2f\x65\x72\x72\x2f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6a\x73\x22\x3a\x32\x31\x37\x2c\x22\x2e\x2f\x66\x69\x6c\x74\x65\x72\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x36\x33\x2c\x22\x2e\x2f\x66\x69\x6c\x74\x65\x72\x2f\x6f\x70\x73\x46\x69\x6c\x74\x65\x72\x2e\x6a\x73\x22\x3a\x32\x36\x34\x2c\x22\x2e\x2f\x6c\x61\x79\x6f\x75\x74\x2f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x31\x34\x35\x2c\x22\x2e\x2f\x6c\x61\x79\x6f\x75\x74\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x31\x38\x2c\x22\x2e\x2f\x6c\x61\x79\x6f\x75\x74\x2f\x72\x65\x64\x75\x63\x65\x72\x73\x2e\x6a\x73\x22\x3a\x32\x31\x39\x2c\x22\x2e\x2f\x6c\x61\x79\x6f\x75\x74\x2f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6a\x73\x22\x3a\x32\x32\x30\x2c\x22\x2e\x2f\x6c\x6f\x67\x73\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x34\x34\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x31\x35\x38\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x61\x75\x74\x68\x2d\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2f\x77\x72\x61\x70\x2d\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6a\x73\x22\x3a\x32\x37\x34\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x63\x61\x6c\x6c\x62\x61\x63\x6b\x73\x2e\x6a\x73\x78\x22\x3a\x32\x37\x37\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x68\x74\x74\x70\x2d\x61\x75\x74\x68\x2e\x6a\x73\x78\x22\x3a\x32\x38\x33\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x37\x36\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2d\x6c\x69\x6e\x6b\x2e\x6a\x73\x78\x22\x3a\x32\x37\x39\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x6f\x70\x65\x72\x61\x74\x69\x6f\x6e\x2d\x73\x65\x72\x76\x65\x72\x73\x2e\x6a\x73\x78\x22\x3a\x32\x38\x34\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x72\x65\x71\x75\x65\x73\x74\x2d\x62\x6f\x64\x79\x2d\x65\x64\x69\x74\x6f\x72\x2e\x6a\x73\x78\x22\x3a\x32\x38\x32\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x72\x65\x71\x75\x65\x73\x74\x2d\x62\x6f\x64\x79\x2e\x6a\x73\x78\x22\x3a\x32\x37\x38\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x73\x65\x72\x76\x65\x72\x73\x2d\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x2e\x6a\x73\x78\x22\x3a\x32\x38\x31\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x73\x65\x72\x76\x65\x72\x73\x2e\x6a\x73\x78\x22\x3a\x32\x38\x30\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x68\x65\x6c\x70\x65\x72\x73\x2e\x6a\x73\x78\x22\x3a\x32\x38\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x37\x32\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x72\x65\x64\x75\x63\x65\x72\x73\x2e\x6a\x73\x22\x3a\x32\x39\x33\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6a\x73\x22\x3a\x32\x39\x32\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x73\x70\x65\x63\x2d\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6a\x73\x22\x3a\x32\x37\x35\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x73\x70\x65\x63\x2d\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x73\x2f\x77\x72\x61\x70\x2d\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6a\x73\x22\x3a\x32\x37\x33\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x77\x72\x61\x70\x2d\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x61\x75\x74\x68\x2d\x69\x74\x65\x6d\x2e\x6a\x73\x78\x22\x3a\x32\x38\x37\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x77\x72\x61\x70\x2d\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x38\x35\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x77\x72\x61\x70\x2d\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x6a\x73\x6f\x6e\x2d\x73\x63\x68\x65\x6d\x61\x2d\x73\x74\x72\x69\x6e\x67\x2e\x6a\x73\x78\x22\x3a\x32\x39\x31\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x77\x72\x61\x70\x2d\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x6d\x61\x72\x6b\x64\x6f\x77\x6e\x2e\x6a\x73\x78\x22\x3a\x32\x38\x36\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x77\x72\x61\x70\x2d\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x6d\x6f\x64\x65\x6c\x2e\x6a\x73\x78\x22\x3a\x32\x39\x30\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x77\x72\x61\x70\x2d\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x6f\x6e\x6c\x69\x6e\x65\x2d\x76\x61\x6c\x69\x64\x61\x74\x6f\x72\x2d\x62\x61\x64\x67\x65\x2e\x6a\x73\x22\x3a\x32\x38\x39\x2c\x22\x2e\x2f\x6f\x61\x73\x33\x2f\x77\x72\x61\x70\x2d\x63\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x73\x2f\x76\x65\x72\x73\x69\x6f\x6e\x2d\x73\x74\x61\x6d\x70\x2e\x6a\x73\x78\x22\x3a\x32\x38\x38\x2c\x22\x2e\x2f\x6f\x6e\x2d\x63\x6f\x6d\x70\x6c\x65\x74\x65\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x36\x35\x2c\x22\x2e\x2f\x73\x61\x6d\x70\x6c\x65\x73\x2f\x66\x6e\x2e\x6a\x73\x22\x3a\x31\x34\x34\x2c\x22\x2e\x2f\x73\x61\x6d\x70\x6c\x65\x73\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x34\x33\x2c\x22\x2e\x2f\x73\x70\x65\x63\x2f\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x31\x34\x36\x2c\x22\x2e\x2f\x73\x70\x65\x63\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x32\x34\x2c\x22\x2e\x2f\x73\x70\x65\x63\x2f\x72\x65\x64\x75\x63\x65\x72\x73\x2e\x6a\x73\x22\x3a\x32\x32\x35\x2c\x22\x2e\x2f\x73\x70\x65\x63\x2f\x73\x65\x6c\x65\x63\x74\x6f\x72\x73\x2e\x6a\x73\x22\x3a\x31\x30\x33\x2c\x22\x2e\x2f\x73\x70\x65\x63\x2f\x77\x72\x61\x70\x2d\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x32\x33\x37\x2c\x22\x2e\x2f\x73\x77\x61\x67\x67\x65\x72\x2d\x6a\x73\x2f\x63\x6f\x6e\x66\x69\x67\x73\x2d\x77\x72\x61\x70\x2d\x61\x63\x74\x69\x6f\x6e\x73\x2e\x6a\x73\x22\x3a\x32\x34\x37\x2c\x22\x2e\x2f\x73\x77\x61\x67\x67\x65\x72\x2d\x6a\x73\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x34\x35\x2c\x22\x2e\x2f\x75\x74\x69\x6c\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x35\x32\x2c\x22\x2e\x2f\x76\x69\x65\x77\x2f\x69\x6e\x64\x65\x78\x2e\x6a\x73\x22\x3a\x32\x33\x38\x2c\x22\x2e\x2f\x76\x69\x65\x77\x2f\x72\x6f\x6f\x74\x2d\x69\x6e\x6a\x65\x63\x74\x73\x2e\x6a\x73\x78\x22\x3a\x32\x33\x39\x7d\x3b\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x65\x62\x70\x61\x63\x6b\x43\x6f\x6e\x74\x65\x78\x74\x28\x72\x65\x71\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x5f\x5f\x77\x65\x62\x70\x61\x63\x6b\x5f\x72\x65\x71\x75\x69\x72\x65\x5f\x5f\x28\x77\x65\x62\x70\x61\x63\x6b\x43\x6f\x6e\x74\x65\x78\x74\x52\x65\x73\x6f\x6c\x76\x65\x28\x72\x65\x71\x29\x29\x7d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x65\x62\x70\x61\x63\x6b\x43\x6f\x6e\x74\x65\x78\x74\x52\x65\x73\x6f\x6c\x76\x65\x28\x72\x65\x71\x29\x7b\x76\x61\x72\x20\x69\x64\x3d\x6d\x61\x70\x5b\x72\x65\x71\x5d\x3b\x69\x66\x28\x21\x28\x69\x64\x2b\x31\x29\x29\x74\x68\x72\x6f\x77\x20\x6e\x65\x77\x20\x45\x72\x72\x6f\x72\x28\x22\x43\x61\x6e\x6e\x6f\x74\x20\x66\x69\x6e\x64\x20\x6d\x6f\x64\x75\x6c\x65\x20\x27\x22\x2b\x72\x65\x71\x2b\x22\x27\x2e\x22\x29\x3b\x72\x65\x74\x75\x72\x6e\x20\x69\x64\x7d\x77\x65\x62\x70\x61\x63\x6b\x43\x6f\x6e\x74\x65\x78\x74\x2e\x6b\x65\x79\x73\x3d\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x77\x65\x62\x70\x61\x63\x6b\x43\x6f\x6e\x74\x65\x78\x74\x4b\x65\x79\x73\x28\x29\x7b\x72\x65\x74\x75\x72\x6e\x20\x4f\x62\x6a\x65\x63\x74\x2e\x6b\x65\x79\x73\x28\x6d\x61\x70\x29\x7d\x3b\x77\x65\x62\x70\x61\x63\x6b\x43\x6f\x6e\x74\x65\x78\x74\x2e\x72\x65\x73\x6f\x6c\x76\x65\x3d\x77\x65\x62\x70\x61\x63\x6b\x43\x6f\x6e\x74\x65\x78\x74\x52\x65\x73\x6f\x6c\x76\x65\x3b\x6d\x6f\x64\x75\x6c\x65\x2e\x65\x78\x70\x6f\x72\x74\x73\x3d\x77\x65\x62\x70\x61\x63\x6b\x43\x6f\x6e\x74\x65\x78\x74\x3b\x77\x65\x62\x70\x61\x63\x6b\x43\x6f\x6e\x74\x65\x78\x74\x2e\x69\x64\x3d\x36\x37\x31\x7d\x5d\x29\x7d\x29\x3b\x0a\x2f\x2f\x23\x20\x73\x6f\x75\x72\x63\x65\x4d\x61\x70\x70\x69\x6e\x67\x55\x52\x4c\x3d\x73\x77\x61\x67\x67\x65\x72\x2d\x75\x69\x2e\x6a\x73\x2e\x6d\x61\x70")
  10. func init() {
  11. f, err := FS.OpenFile(CTX, "/swagger-ui.js", os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0777)
  12. if err != nil {
  13. panic(err)
  14. }
  15. _, err = f.Write(FileSwaggerUIJs)
  16. if err != nil {
  17. panic(err)
  18. }
  19. err = f.Close()
  20. if err != nil {
  21. panic(err)
  22. }
  23. }