MS4xMS4wLWJldGEuMS1jbmktaW5zdGFsbC55YW1sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMDA2NDQAgAAAAHDG4zGAAAAAcMbjMTAwMDAwMDE1MzQwADE0MDc2MTcxNjcxADAyMTAyNQAgMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhciAgAGJpYW5wZW5neXVhbl9nb29nbGVfY29tAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABhcGlWZXJzaW9uOiB2MQpraW5kOiBTZXJ2aWNlQWNjb3VudAptZXRhZGF0YToKICBuYW1lOiBpc3Rpby1jbmkKICBuYW1lc3BhY2U6IGt1YmUtc3lzdGVtCiAgbGFiZWxzOgogICAgYXBwOiBpc3Rpby1jbmkKICAgIHJlbGVhc2U6IGlzdGlvCiAgICBpc3Rpby5pby9yZXY6IGRlZmF1bHQKICAgIGluc3RhbGwub3BlcmF0b3IuaXN0aW8uaW8vb3duaW5nLXJlc291cmNlOiB1bmtub3duCiAgICBvcGVyYXRvci5pc3Rpby5pby9jb21wb25lbnQ6ICJDbmkiCi0tLQphcGlWZXJzaW9uOiByYmFjLmF1dGhvcml6YXRpb24uazhzLmlvL3YxCmtpbmQ6IENsdXN0ZXJSb2xlCm1ldGFkYXRhOgogIG5hbWU6IGlzdGlvLWNuaQogIGxhYmVsczoKICAgIGFwcDogaXN0aW8tY25pCiAgICByZWxlYXNlOiBpc3RpbwogICAgaXN0aW8uaW8vcmV2OiBkZWZhdWx0CiAgICBpbnN0YWxsLm9wZXJhdG9yLmlzdGlvLmlvL293bmluZy1yZXNvdXJjZTogdW5rbm93bgogICAgb3BlcmF0b3IuaXN0aW8uaW8vY29tcG9uZW50OiAiQ25pIgpydWxlczoKLSBhcGlHcm91cHM6IFsiIl0KICByZXNvdXJjZXM6CiAgLSBwb2RzCiAgLSBub2RlcwogIHZlcmJzOgogIC0gZ2V0Ci0tLQphcGlWZXJzaW9uOiByYmFjLmF1dGhvcml6YXRpb24uazhzLmlvL3YxCmtpbmQ6IENsdXN0ZXJSb2xlCm1ldGFkYXRhOgogIG5hbWU6IGlzdGlvLWNuaS1yZXBhaXItcm9sZQogIGxhYmVsczoKICAgIGFwcDogaXN0aW8tY25pCiAgICByZWxlYXNlOiBpc3RpbwogICAgaXN0aW8uaW8vcmV2OiBkZWZhdWx0CiAgICBpbnN0YWxsLm9wZXJhdG9yLmlzdGlvLmlvL293bmluZy1yZXNvdXJjZTogdW5rbm93bgogICAgb3BlcmF0b3IuaXN0aW8uaW8vY29tcG9uZW50OiAiQ25pIgpydWxlczoKLSBhcGlHcm91cHM6IFsiIl0KICByZXNvdXJjZXM6IFsicG9kcyJdCiAgdmVyYnM6IFsiZ2V0IiwgImxpc3QiLCAid2F0Y2giLCAiZGVsZXRlIiwgInBhdGNoIiwgInVwZGF0ZSIgXQotIGFwaUdyb3VwczogWyIiXQogIHJlc291cmNlczogWyJldmVudHMiXQogIHZlcmJzOiBbImdldCIsICJsaXN0IiwgIndhdGNoIiwgImRlbGV0ZSIsICJwYXRjaCIsICJ1cGRhdGUiLCAiY3JlYXRlIiBdCi0tLQphcGlWZXJzaW9uOiByYmFjLmF1dGhvcml6YXRpb24uazhzLmlvL3YxCmtpbmQ6IENsdXN0ZXJSb2xlQmluZGluZwptZXRhZGF0YToKICBuYW1lOiBpc3Rpby1jbmkKICBsYWJlbHM6CiAgICBhcHA6IGlzdGlvLWNuaQogICAgcmVsZWFzZTogaXN0aW8KICAgIGlzdGlvLmlvL3JldjogZGVmYXVsdAogICAgaW5zdGFsbC5vcGVyYXRvci5pc3Rpby5pby9vd25pbmctcmVzb3VyY2U6IHVua25vd24KICAgIG9wZXJhdG9yLmlzdGlvLmlvL2NvbXBvbmVudDogIkNuaSIKcm9sZVJlZjoKICBhcGlHcm91cDogcmJhYy5hdXRob3JpemF0aW9uLms4cy5pbwogIGtpbmQ6IENsdXN0ZXJSb2xlCiAgbmFtZTogaXN0aW8tY25pCnN1YmplY3RzOgotIGtpbmQ6IFNlcnZpY2VBY2NvdW50CiAgbmFtZTogaXN0aW8tY25pCiAgbmFtZXNwYWNlOiBrdWJlLXN5c3RlbQotLS0KYXBpVmVyc2lvbjogcmJhYy5hdXRob3JpemF0aW9uLms4cy5pby92MQpraW5kOiBDbHVzdGVyUm9sZUJpbmRpbmcKbWV0YWRhdGE6CiAgbmFtZTogaXN0aW8tY25pLXJlcGFpci1yb2xlYmluZGluZwogIGxhYmVsczoKICAgIGs4cy1hcHA6IGlzdGlvLWNuaS1yZXBhaXIKICAgIGlzdGlvLmlvL3JldjogZGVmYXVsdAogICAgaW5zdGFsbC5vcGVyYXRvci5pc3Rpby5pby9vd25pbmctcmVzb3VyY2U6IHVua25vd24KICAgIG9wZXJhdG9yLmlzdGlvLmlvL2NvbXBvbmVudDogIkNuaSIKc3ViamVjdHM6Ci0ga2luZDogU2VydmljZUFjY291bnQKICBuYW1lOiBpc3Rpby1jbmkKICBuYW1lc3BhY2U6IGt1YmUtc3lzdGVtCnJvbGVSZWY6CiAgYXBpR3JvdXA6IHJiYWMuYXV0aG9yaXphdGlvbi5rOHMuaW8KICBraW5kOiBDbHVzdGVyUm9sZQogIG5hbWU6IGlzdGlvLWNuaS1yZXBhaXItcm9sZQotLS0Ka2luZDogQ29uZmlnTWFwCmFwaVZlcnNpb246IHYxCm1ldGFkYXRhOgogIG5hbWU6IGlzdGlvLWNuaS1jb25maWcKICBuYW1lc3BhY2U6IGt1YmUtc3lzdGVtCiAgbGFiZWxzOgogICAgYXBwOiBpc3Rpby1jbmkKICAgIHJlbGVhc2U6IGlzdGlvCiAgICBpc3Rpby5pby9yZXY6IGRlZmF1bHQKICAgIGluc3RhbGwub3BlcmF0b3IuaXN0aW8uaW8vb3duaW5nLXJlc291cmNlOiB1bmtub3duCiAgICBvcGVyYXRvci5pc3Rpby5pby9jb21wb25lbnQ6ICJDbmkiCmRhdGE6CiAgIyBUaGUgQ05JIG5ldHdvcmsgY29uZmlndXJhdGlvbiB0byBhZGQgdG8gdGhlIHBsdWdpbiBjaGFpbiBvbiBlYWNoIG5vZGUuICBUaGUgc3BlY2lhbAogICMgdmFsdWVzIGluIHRoaXMgY29uZmlnIHdpbGwgYmUgYXV0b21hdGljYWxseSBwb3B1bGF0ZWQuCiAgY25pX25ldHdvcmtfY29uZmlnOiB8LQogICAgICAgIHsKICAgICAgICAgICJjbmlWZXJzaW9uIjogIjAuMy4xIiwKICAgICAgICAgICJuYW1lIjogImlzdGlvLWNuaSIsCiAgICAgICAgICAidHlwZSI6ICJpc3Rpby1jbmkiLAogICAgICAgICAgImxvZ19sZXZlbCI6ICJpbmZvIiwKICAgICAgICAgICJsb2dfdWRzX2FkZHJlc3MiOiAiX19MT0dfVURTX0FERFJFU1NfXyIsIAogICAgICAgICAgImt1YmVybmV0ZXMiOiB7CiAgICAgICAgICAgICAgImt1YmVjb25maWciOiAiX19LVUJFQ09ORklHX0ZJTEVQQVRIX18iLAogICAgICAgICAgICAgICJjbmlfYmluX2RpciI6ICIvb3B0L2NuaS9iaW4iLAogICAgICAgICAgICAgICJleGNsdWRlX25hbWVzcGFjZXMiOiBbICJpc3Rpby1zeXN0ZW0iIF0KICAgICAgICAgIH0KICAgICAgICB9Ci0tLQpraW5kOiBEYWVtb25TZXQKYXBpVmVyc2lvbjogYXBwcy92MQptZXRhZGF0YToKICBuYW1lOiBpc3Rpby1jbmktbm9kZQogIG5hbWVzcGFjZToga3ViZS1zeXN0ZW0KICBsYWJlbHM6CiAgICBrOHMtYXBwOiBpc3Rpby1jbmktbm9kZQogICAgcmVsZWFzZTogaXN0aW8KICAgIGlzdGlvLmlvL3JldjogZGVmYXVsdAogICAgaW5zdGFsbC5vcGVyYXRvci5pc3Rpby5pby9vd25pbmctcmVzb3VyY2U6IHVua25vd24KICAgIG9wZXJhdG9yLmlzdGlvLmlvL2NvbXBvbmVudDogIkNuaSIKc3BlYzoKICBzZWxlY3RvcjoKICAgIG1hdGNoTGFiZWxzOgogICAgICBrOHMtYXBwOiBpc3Rpby1jbmktbm9kZQogIHVwZGF0ZVN0cmF0ZWd5OgogICAgdHlwZTogUm9sbGluZ1VwZGF0ZQogICAgcm9sbGluZ1VwZGF0ZToKICAgICAgbWF4VW5hdmFpbGFibGU6IDEKICB0ZW1wbGF0ZToKICAgIG1ldGFkYXRhOgogICAgICBsYWJlbHM6CiAgICAgICAgazhzLWFwcDogaXN0aW8tY25pLW5vZGUKICAgICAgICBzaWRlY2FyLmlzdGlvLmlvL2luamVjdDogImZhbHNlIgogICAgICBhbm5vdGF0aW9uczoKICAgICAgICAjIFRoaXMsIGFsb25nIHdpdGggdGhlIENyaXRpY2FsQWRkb25zT25seSB0b2xlcmF0aW9uIGJlbG93LAogICAgICAgICMgbWFya3MgdGhlIHBvZCBhcyBhIGNyaXRpY2FsIGFkZC1vbiwgZW5zdXJpbmcgaXQgZ2V0cwogICAgICAgICMgcHJpb3JpdHkgc2NoZWR1bGluZyBhbmQgdGhhdCBpdHMgcmVzb3VyY2VzIGFyZSByZXNlcnZlZAogICAgICAgICMgaWYgaXQgZXZlciBnZXRzIGV2aWN0ZWQuCiAgICAgICAgc2NoZWR1bGVyLmFscGhhLmt1YmVybmV0ZXMuaW8vY3JpdGljYWwtcG9kOiAnJwogICAgICAgIHNpZGVjYXIuaXN0aW8uaW8vaW5qZWN0OiAiZmFsc2UiCiAgICAgICAgIyBBZGQgUHJvbWV0aGV1cyBTY3JhcGUgYW5ub3RhdGlvbnMKICAgICAgICBwcm9tZXRoZXVzLmlvL3NjcmFwZTogJ3RydWUnCiAgICAgICAgcHJvbWV0aGV1cy5pby9wb3J0OiAiMTUwMTQiCiAgICAgICAgcHJvbWV0aGV1cy5pby9wYXRoOiAnL21ldHJpY3MnCiAgICAgICAgIyBDdXN0b20gYW5ub3RhdGlvbnMKICAgIHNwZWM6CiAgICAgIG5vZGVTZWxlY3RvcjoKICAgICAgICBrdWJlcm5ldGVzLmlvL29zOiBsaW51eAogICAgICB0b2xlcmF0aW9uczoKICAgICAgICAjIE1ha2Ugc3VyZSBpc3Rpby1jbmktbm9kZSBnZXRzIHNjaGVkdWxlZCBvbiBhbGwgbm9kZXMuCiAgICAgICAgLSBlZmZlY3Q6IE5vU2NoZWR1bGUKICAgICAgICAgIG9wZXJhdG9yOiBFeGlzdHMKICAgICAgICAjIE1hcmsgdGhlIHBvZCBhcyBhIGNyaXRpY2FsIGFkZC1vbiBmb3IgcmVzY2hlZHVsaW5nLgogICAgICAgIC0ga2V5OiBDcml0aWNhbEFkZG9uc09ubHkKICAgICAgICAgIG9wZXJhdG9yOiBFeGlzdHMKICAgICAgICAtIGVmZmVjdDogTm9FeGVjdXRlCiAgICAgICAgICBvcGVyYXRvcjogRXhpc3RzCiAgICAgIHByaW9yaXR5Q2xhc3NOYW1lOiBzeXN0ZW0tbm9kZS1jcml0aWNhbAogICAgICBzZXJ2aWNlQWNjb3VudE5hbWU6IGlzdGlvLWNuaQogICAgICAjIE1pbmltaXplIGRvd250aW1lIGR1cmluZyBhIHJvbGxpbmcgdXBncmFkZSBvciBkZWxldGlvbjsgdGVsbCBLdWJlcm5ldGVzIHRvIGRvIGEgImZvcmNlCiAgICAgICMgZGVsZXRpb24iOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy93b3JrbG9hZHMvcG9kcy9wb2QvI3Rlcm1pbmF0aW9uLW9mLXBvZHMuCiAgICAgIHRlcm1pbmF0aW9uR3JhY2VQZXJpb2RTZWNvbmRzOiA1CiAgICAgIGNvbnRhaW5lcnM6CiAgICAgICAgIyBUaGlzIGNvbnRhaW5lciBpbnN0YWxscyB0aGUgSXN0aW8gQ05JIGJpbmFyaWVzCiAgICAgICAgIyBhbmQgQ05JIG5ldHdvcmsgY29uZmlnIGZpbGUgb24gZWFjaCBub2RlLgogICAgICAgIC0gbmFtZTogaW5zdGFsbC1jbmkKICAgICAgICAgIGltYWdlOiAiZ2NyLmlvL2lzdGlvLXJlbGVhc2UvaW5zdGFsbC1jbmk6MS4xMS4wLWJldGEuMSIKICAgICAgICAgIGxpdmVuZXNzUHJvYmU6CiAgICAgICAgICAgIGh0dHBHZXQ6CiAgICAgICAgICAgICAgcGF0aDogL2hlYWx0aHoKICAgICAgICAgICAgICBwb3J0OiA4MDAwCiAgICAgICAgICAgIGluaXRpYWxEZWxheVNlY29uZHM6IDUKICAgICAgICAgIHJlYWRpbmVzc1Byb2JlOgogICAgICAgICAgICBodHRwR2V0OgogICAgICAgICAgICAgIHBhdGg6IC9yZWFkeXoKICAgICAgICAgICAgICBwb3J0OiA4MDAwCiAgICAgICAgICBjb21tYW5kOiBbImluc3RhbGwtY25pIl0KICAgICAgICAgIGVudjoKICAgICAgICAgICAgIyBUaGUgQ05JIG5ldHdvcmsgY29uZmlnIHRvIGluc3RhbGwgb24gZWFjaCBub2RlLgogICAgICAgICAgICAtIG5hbWU6IENOSV9ORVRXT1JLX0NPTkZJRwogICAgICAgICAgICAgIHZhbHVlRnJvbToKICAgICAgICAgICAgICAgIGNvbmZpZ01hcEtleVJlZjoKICAgICAgICAgICAgICAgICAgbmFtZTogaXN0aW8tY25pLWNvbmZpZwogICAgICAgICAgICAgICAgICBrZXk6IGNuaV9uZXR3b3JrX2NvbmZpZwogICAgICAgICAgICAtIG5hbWU6IENOSV9ORVRfRElSCiAgICAgICAgICAgICAgdmFsdWU6IC9ldGMvY25pL25ldC5kCiAgICAgICAgICAgICMgRGVwbG95IGFzIGEgc3RhbmRhbG9uZSBDTkkgcGx1Z2luIG9yIGFzIGNoYWluZWQ/CiAgICAgICAgICAgIC0gbmFtZTogQ0hBSU5FRF9DTklfUExVR0lOCiAgICAgICAgICAgICAgdmFsdWU6ICJ0cnVlIgogICAgICAgICAgICAtIG5hbWU6IFJFUEFJUl9FTkFCTEVECiAgICAgICAgICAgICAgdmFsdWU6ICJ0cnVlIgogICAgICAgICAgICAtIG5hbWU6IFJFUEFJUl9OT0RFX05BTUUKICAgICAgICAgICAgICB2YWx1ZUZyb206CiAgICAgICAgICAgICAgICBmaWVsZFJlZjoKICAgICAgICAgICAgICAgICAgZmllbGRQYXRoOiBzcGVjLm5vZGVOYW1lCiAgICAgICAgICAgIC0gbmFtZTogUkVQQUlSX0xBQkVMX1BPRFMKICAgICAgICAgICAgICB2YWx1ZTogInRydWUiCiAgICAgICAgICAgICMgU2V0IHRvIHRydWUgdG8gZW5hYmxlIHBvZCBkZWxldGlvbgogICAgICAgICAgICAtIG5hbWU6IFJFUEFJUl9ERUxFVEVfUE9EUwogICAgICAgICAgICAgIHZhbHVlOiAidHJ1ZSIKICAgICAgICAgICAgLSBuYW1lOiBSRVBBSVJfUlVOX0FTX0RBRU1PTgogICAgICAgICAgICAgIHZhbHVlOiAidHJ1ZSIKICAgICAgICAgICAgLSBuYW1lOiBSRVBBSVJfU0lERUNBUl9BTk5PVEFUSU9OCiAgICAgICAgICAgICAgdmFsdWU6ICJzaWRlY2FyLmlzdGlvLmlvL3N0YXR1cyIKICAgICAgICAgICAgLSBuYW1lOiBSRVBBSVJfSU5JVF9DT05UQUlORVJfTkFNRQogICAgICAgICAgICAgIHZhbHVlOiAiaXN0aW8tdmFsaWRhdGlvbiIKICAgICAgICAgICAgLSBuYW1lOiBSRVBBSVJfQlJPS0VOX1BPRF9MQUJFTF9LRVkKICAgICAgICAgICAgICB2YWx1ZTogImNuaS5pc3Rpby5pby91bmluaXRpYWxpemVkIgogICAgICAgICAgICAtIG5hbWU6IFJFUEFJUl9CUk9LRU5fUE9EX0xBQkVMX1ZBTFVFCiAgICAgICAgICAgICAgdmFsdWU6ICJ0cnVlIgogICAgICAgICAgdm9sdW1lTW91bnRzOgogICAgICAgICAgICAtIG1vdW50UGF0aDogL2hvc3Qvb3B0L2NuaS9iaW4KICAgICAgICAgICAgICBuYW1lOiBjbmktYmluLWRpcgogICAgICAgICAgICAtIG1vdW50UGF0aDogL2hvc3QvZXRjL2NuaS9uZXQuZAogICAgICAgICAgICAgIG5hbWU6IGNuaS1uZXQtZGlyCiAgICAgICAgICAgIC0gbW91bnRQYXRoOiAvdmFyL3J1bi9pc3Rpby1jbmkKICAgICAgICAgICAgICBuYW1lOiBjbmktbG9nLWRpcgogICAgICB2b2x1bWVzOgogICAgICAgICMgVXNlZCB0byBpbnN0YWxsIENOSS4KICAgICAgICAtIG5hbWU6IGNuaS1iaW4tZGlyCiAgICAgICAgICBob3N0UGF0aDoKICAgICAgICAgICAgcGF0aDogL29wdC9jbmkvYmluCiAgICAgICAgLSBuYW1lOiBjbmktbmV0LWRpcgogICAgICAgICAgaG9zdFBhdGg6CiAgICAgICAgICAgIHBhdGg6IC9ldGMvY25pL25ldC5kCiAgICAgICAgIyBVc2VkIGZvciBVRFMgbG9nCiAgICAgICAgLSBuYW1lOiBjbmktbG9nLWRpcgogICAgICAgICAgaG9zdFBhdGg6CiAgICAgICAgICAgIHBhdGg6IC92YXIvcnVuL2lzdGlvLWNuaQotLS0KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==