From 74600e2e9938a8e9d4275a9fe1af3c795de57e41 Mon Sep 17 00:00:00 2001 From: Anthony Bernabeu Date: Tue, 5 May 2026 16:41:18 +0200 Subject: [PATCH] Update demo (#1150) * added full example of enterprise mcp platform with policy engine mcp server filtering based on user_tag, guardrail for PII data * fixed linting * fixed linting * fixing lint * fixing lint * fixinf ruff * FIXING RUFF * fixing ruff * fixed stack added missing lib files * fixing ruff * fixing ruff * Added scopes, audiences on MCP gateway Added ALB headers conditions Added ALB S3 logging Added ACG VPCe with Resource Based Policy Updated architecture diagram Updated readme Fixed interceptors * auto delete objets in s3 added dependency on VPCe * added path based routing updated cdk context remove print and use logger * fixed ruff * fixing ruff * enfore association --------- Signed-off-by: Anthony Bernabeu Co-authored-by: brnaba-aws --- .../04-enterprise-mcp-demo/README.MD | 150 +-- .../assets/architecture.png | Bin 224547 -> 193208 bytes .../04-enterprise-mcp-demo/cdk/README.md | 129 ++- .../cdk/bin/enterprise-mcp-infra.ts | 14 +- .../cdk/cdk.context.json | 7 +- .../cdk/lambda/interceptor/interceptor.py | 140 ++- .../cdk/lambda/mcp_proxy_lambda.py | 208 ++++- .../cdk/lambda/pre_token_generation_lambda.py | 30 +- .../cdk/lib/agentcore-policy-engine.ts | 7 + .../cdk/lib/enterprise-mcp-infra-stack.ts | 884 +++++++++++++----- 10 files changed, 1193 insertions(+), 376 deletions(-) diff --git a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/README.MD b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/README.MD index 6b9a03da..366bd10e 100644 --- a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/README.MD +++ b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/README.MD @@ -12,8 +12,8 @@ This CDK infrastructure deploys a complete MCP gateway solution that enables VS - **Policy-Based Access Control** with custom Cedar policies - **Request/Response Interception** for logging and transformation - **PII Protection** using Bedrock Guardrails -- **Flexible Deployment Options** (ALB or API Gateway) - **Custom Domain Support** with SSL/TLS +- **ALB Access Logging** to S3 with encryption and lifecycle management ## Architecture @@ -25,10 +25,8 @@ This CDK infrastructure deploys a complete MCP gateway solution that enables VS - **OAuth Clients**: - VS Code Client (Authorization Code Grant with PKCE) -#### 2. **API Gateway Layer** -Choose between two deployment options: -- **Application Load Balancer (ALB)**: Production-grade with custom domains and SSL/TLS -- **API Gateway HTTP API**: Serverless, cost-effective for development/testing +#### 2. **Application Load Balancer** +Production-grade internet-facing ALB with custom domain, SSL/TLS, WAF, and access logging. #### 3. **MCP Proxy Lambda** Central component that handles: @@ -90,12 +88,12 @@ Example Lambda functions that implement MCP tools: | Amazon Cognito | OAuth 2.0 authentication and user management | | AWS Lambda | Serverless compute for proxy, MCP servers, and policy engine | | Amazon Bedrock AgentCore | MCP gateway and protocol handling | -| Application Load Balancer | Production routing with custom domains (optional) | -| API Gateway HTTP API | Serverless API endpoint (optional) | -| Amazon VPC | Network isolation for ALB deployment | +| Application Load Balancer | Internet-facing ALB with TLS, WAF, and access logging | +| Amazon VPC | Network isolation with private subnets and VPC endpoints | | AWS IAM | Identity and access management | | Amazon Route53 | DNS management for custom domains | | AWS Certificate Manager | SSL/TLS certificates | +| Amazon S3 | ALB access log storage (encrypted, 90-day lifecycle) | | Bedrock Guardrails | Content filtering and PII protection | ## Prerequisites @@ -116,7 +114,7 @@ Example Lambda functions that implement MCP tools: ### 1. Install Dependencies ```bash -cd enterprise-mcp-infra/cdk +cd cdk npm install ``` @@ -130,11 +128,8 @@ cdk bootstrap aws://ACCOUNT-ID/REGION Edit `cdk/cdk.context.json` to configure your deployment: -#### Option A: ALB Deployment with Custom Domain - ```json { - "deploymentType": "ALB", "domainName": "enterprise-mcp", "hostedZoneName": "example.com", "hostedZoneId": "Z1234567890ABC", @@ -142,39 +137,14 @@ Edit `cdk/cdk.context.json` to configure your deployment: } ``` -#### Option B: API Gateway Deployment (Default URL) - -```json -{ - "deploymentType": "API_GATEWAY", - "domainName": "", - "hostedZoneName": "", - "hostedZoneId": "", - "certificateArn": "" -} -``` - -#### Option C: API Gateway with Custom Domain - -```json -{ - "deploymentType": "API_GATEWAY", - "domainName": "enterprise-mcp.example.com", - "hostedZoneName": "example.com", - "hostedZoneId": "Z1234567890ABC", - "certificateArn": "arn:aws:acm:region:account:certificate/xxx" -} -``` - **Configuration Parameters:** | Parameter | Description | Required | Default | |-----------|-------------|----------|---------| -| `deploymentType` | Deployment type: `ALB` or `API_GATEWAY` | Yes | `ALB` | -| `domainName` | Custom domain name (e.g., `enterprise-mcp` for ALB, or full domain for API Gateway) | No (API Gateway only) | `""` | -| `hostedZoneName` | Route53 hosted zone name (e.g., `example.com`) | Only with custom domain | `""` | -| `hostedZoneId` | Route53 hosted zone ID (e.g., `Z1234567890ABC`) | Only with custom domain | `""` | -| `certificateArn` | ACM certificate ARN for HTTPS | Only with custom domain | `""` | +| `domainName` | Custom domain name (e.g., `enterprise-mcp`) | Yes | `""` | +| `hostedZoneName` | Route53 hosted zone name (e.g., `example.com`) | Yes | `""` | +| `hostedZoneId` | Route53 hosted zone ID (e.g., `Z1234567890ABC`) | Yes | `""` | +| `certificateArn` | ACM certificate ARN for HTTPS | Yes | `""` | ### 4. Deploy the Stack @@ -182,11 +152,7 @@ Edit `cdk/cdk.context.json` to configure your deployment: cdk deploy ``` -You can also override context values via command line: - -```bash -cdk deploy -c deploymentType=API_GATEWAY -``` +> **Note:** The stack is pinned to `us-east-1` in `cdk/bin/enterprise-mcp-infra.ts`. Update the `region` value there if you need a different region. ### 5. Save CDK Outputs @@ -208,25 +174,26 @@ EnterpriseMcpInfraStack.Gateway = agentcore-mcp-gateway-xxxxx #### Using the Automated Script (Recommended) -1. **Edit** `enterprise-mcp-infra/scripts/script.py`: +1. **Edit** `scripts/script.py`: - Replace the `output` variable content with your actual CDK outputs (from step 4) - Customize the users list with your desired email addresses and passwords 2. **Run the script** to create users: ```bash -cd enterprise-mcp-infra/scripts +cd scripts python script.py ``` The script will: - Parse the CDK outputs to extract the User Pool ID -- Create two default users: `vscode-admin@example.com` and `vscode-user@example.com` +- Create three default users (admin, regular, and read-only) - Set permanent passwords (no need for password reset on first login) - Skip users that already exist **Default Users Created:** - `vscode-admin@example.com` / `TempPassword123!` - `vscode-user@example.com` / `TempPassword1234!` +- `vscode-readonly@example.com` / `TempPassword1235!` #### Manual User Creation (Alternative) @@ -374,15 +341,26 @@ cdk deploy ### Lambda Logs +The CDK stack outputs the function names for the two most commonly debugged Lambdas (`ProxyLambdaName`, `PreTokenGenerationLambdaName`). For the others, look up the auto-generated name in the AWS Console (Lambda → Functions, filter by stack name) or use the AWS CLI: + ```bash -# MCP Proxy Lambda -aws logs tail /aws/lambda/ --follow +# MCP Proxy Lambda – name from CDK output: EnterpriseMcpInfraStack.ProxyLambdaName +aws logs tail /aws/lambda/$(aws cloudformation describe-stacks \ + --stack-name EnterpriseMcpInfraStack \ + --query "Stacks[0].Outputs[?OutputKey=='ProxyLambdaName'].OutputValue" \ + --output text) --follow -# Policy Engine Lambda -aws logs tail /aws/lambda/ --follow +# Pre-Token Generation Lambda – name from CDK output: EnterpriseMcpInfraStack.PreTokenGenerationLambdaName +aws logs tail /aws/lambda/$(aws cloudformation describe-stacks \ + --stack-name EnterpriseMcpInfraStack \ + --query "Stacks[0].Outputs[?OutputKey=='PreTokenGenerationLambdaName'].OutputValue" \ + --output text) --follow -# Interceptor Lambda -aws logs tail /aws/lambda/ --follow +# Interceptor Lambda – look up name in AWS Console (filter by stack: EnterpriseMcpInfraStack) +# aws logs tail /aws/lambda/ --follow + +# Policy Engine Lambda – look up name in AWS Console (filter by stack: EnterpriseMcpInfraStack) +# aws logs tail /aws/lambda/ --follow ``` ### CloudWatch Insights Queries @@ -401,24 +379,66 @@ fields @timestamp, method, path, statusCode | sort @timestamp desc ``` -## Security Considerations +## Security Posture -### Authentication +### Implemented + +| Feature | Details | +|---|---| +| Cognito User Pool | Admin-only sign-up, strong password policy, Pre-Token Generation Lambda for audience/role claims | +| OAuth 2.0 | Authorization Code Grant with custom scopes (`mcp.read`, `mcp.write`) | +| JWT audience validation | Proxy Lambda validates `aud` claim before forwarding to AgentCore | +| AgentCore Cognito authorizer | Token verified a second time by AWS at the gateway level | +| Cedar policy engine | Fine-grained per-user tool access in ENFORCE mode | +| Bedrock Guardrails | PII masking (address, name, email) and blocking (credit card numbers) via interceptor | +| Lambda-in-VPC proxy | Private subnet, NAT egress only | +| VPC Interface Endpoint | AgentCore traffic stays on AWS private network, never crosses public internet | +| ALB TLS termination | TLS 1.2+ on custom domain via ACM certificate | +| ALB `dropInvalidHeaderFields` | Rejects malformed headers (request-smuggling mitigation) | +| ALB Host-header gating | Every forwarding rule requires Host header match; raw `*.elb` DNS returns 404 | +| HTTP → HTTPS redirect | Permanent redirect on port 80 | +| WAF WebACL | IP rate limit (1,000 req/5 min), AWS IP Reputation list, Core Rule Set (OWASP Top 10), Known Bad Inputs | +| WAF Bot Control | COMMON level in COUNT mode (switch to BLOCK after traffic validation) | +| Reserved Lambda concurrency | Caps on all functions to limit DoS blast radius | +| Gateway resource policy | Restricts `InvokeGateway` to the VPC | +| Shield Standard | Automatic L3/L4 DDoS protection on public ALBs | +| ALB access logging | S3 bucket with SSE, public access blocked, SSL enforced, 90-day lifecycle expiration | +| Redirect URI allowlist | `handle_callback` validates `redirect_uri` against registered Cognito callback URLs before issuing 302 redirects (prevents open-redirect / auth code theft) | +| Per-Lambda IAM roles | Four dedicated least-privilege roles: `preTokenLambdaRole` (Cognito trigger), `proxyLambdaRole` (VPC + AgentCore invoke), `interceptorLambdaRole` (Bedrock Guardrails only), `toolLambdaRole` (CloudWatch Logs only) | + +### Not Implemented – Consider Before Production + +| Feature | Details | +|---|---| +| Shield Advanced | L7 DDoS protection, SRT access, cost protection (subscription required) | +| Bot Control TARGETED | Higher inspection level for WAF Bot Control (additional cost) | +| CloudTrail / Security Hub | Centralized audit and security findings | +| ALB access-log Athena workgroup | Query access logs via Athena for forensic analysis | +| GuardDuty findings | Threat detection integration | +| MFA enforcement | Cognito User Pool is MFA-ready but not enforced (`mfa: cognito.Mfa.REQUIRED`) | +| Scoped IAM resources | Several policies use `Resource: "*"` — scope to specific ARNs | +| PKCE enforcement | Verify PKCE is enforced on the Cognito public client (no client secret) | +| Log encryption | Lambda CloudWatch logs use default settings (no KMS CMK encryption) | +| Log retention policy | Lambda CloudWatch log retention is indefinite by default | + +### Additional Security Details + +#### Authentication - OAuth 2.0 with PKCE (Proof Key for Code Exchange) - JWT tokens with custom claims - Secure token storage in VS Code -### Authorization +#### Authorization - Policy-based access control using Cedar - User attribute injection via Lambda triggers - Gateway-level authorization enforcement -### Data Protection +#### Data Protection - SSL/TLS encryption in transit - PII anonymization via Bedrock Guardrails -- VPC isolation for ALB deployments +- VPC isolation with private subnets and VPC endpoints -### Secrets Management +#### Secrets Management - Client secrets stored in environment variables - OAuth tokens never exposed to logs - IAM role-based access for Lambda functions @@ -452,10 +472,12 @@ cdk destroy ## Architecture Decisions -### Why Two Deployment Options? +### Why ALB? -- **ALB**: Production environments requiring custom domains, SSL/TLS, and fine-grained routing -- **API Gateway**: Development/testing, serverless preference, cost optimization +- Production-grade with custom domains, SSL/TLS, and fine-grained routing +- WAF WebACL integration for OWASP Top 10, rate limiting, and bot control +- Access logging to S3 for forensic analysis +- VPC integration for network isolation ### Why Lambda for MCP Servers? diff --git a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/assets/architecture.png b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/assets/architecture.png index cfe24cee3189c992557773b5ed8f19bdb7c384b6..15ae2ce19b9d4b165cdc50d5c95e391caf97dd6d 100644 GIT binary patch literal 193208 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

4j|v zRLip0SdCbE07Je&{NyeOfPN@cV(^OJ;wuuNt`@d?y^7~QBcS(p32K;-)}PW z-+3F|C$@No>Hl_oa6o|=>Uaa6fAPIrJAeal%}v3Ysrw8@yyc z2600>O1=U!991R;bw@Vh6PcNaIhSzl&j`x$`3VToM`%=Ss=lm4B<*+}Etv>ZTb7nZ zBMMDup#R7m0NMnz5_>@B~=ZLLY(MmxXBD(6*F>km=sBA3E(7t@WxQG=>Le9(Yq zTKTHrw_owixB44i@8`%V!Z~|n+==PQ`tm}lWJ4?7-B?GLAT%LJus}!U#N#+OryYH? z>cyY5-6?`PTfC>EfCkFjd_zOh2?AbPXyB2RAR@sQ9ZzC-W1_021ce;cGuEb~LGs>& z3=j2Hwn}9(y{)!i7=*r|nLfu8Fad`9M~e}pdyF|MUw&1+BOX=9iO~#rQja#R`SqdY z^R_#%Yzj`h{P9QcZpv_p@)bU@ptKARP}zQexKq(FYR_(e*;rkrm!2$C#~@IZy4yrx zry>!#u0&nAW#3X{eN7j$d|xl2A9(CR;Lw54x~KQn@B4S?#98jpOL7P~{LYY)zk{n! zLNT;Zh|{w?+ob;NMI<%&ETlxSLhns`Z@M_4n0TBiB)cc`^`K7 z{@aklhUuV3$1Emx$sojfqDj5#GND6~$oYDg)z$5Kt@)1Qm3i>R&Qc@4Zi@9GIf4{tM!jv!%9|@$u_%-*V=p8V8s?Yxve@TW%b!ki zF7l4DgOJHi^u6$Lr*6)W@-sVGw})gjR?`iUGvq11NmXL6^BP}7^XDY3;o;(|qmq8i z^67Ykjul36KBA>A*lrlt+9+uZ(RQ=E1<9G`R&9NvS*A>S88Xkr8 zU?MjqO2Y zb8G3?ieFP-T9xBYU4D$>cH$xG4bGt@$V2$+9JVglkJBF2|KJ||JsrvNkc_L>RXH$- ztLa3n@RUqFq&WjEsA-!k5_eR@TI*9O#?(Wp5F*j%i#(d(Au3&{TPr>LZ@KUDxn7{(o-7a7?Ar6^{ zV|NA(?nk*d#^x#TJ}|Lv5&;Dx7vl{%z|g69%pI{Ck!jYEp!d?s47AUn z>Bm9-`?^xDyC_m7gi9IHcYr%-S;G?pI@AZnNUj@-t|K>z+UIzVO5f>xTEZPZWA^_T z`wOV3yRHowhhb=hp+Op?B&8&zB_sqyr9nYjT0m+j=@J1+9VG;%OFE^yOG>&!8V2~E z@xI^px$o!ye(U?zn&kr5FmulS?S1WQ$2q%>(-|tXNJb^z*eYw8#^93>wccSoG;r^` z``T^@wL2R83-i%(JK<^a+hl0K6!UVx?VK2so@>}W|1w>4`&CK3Zpxv>^F2GRc7Z~0 zp7FOYGEo%XF_PU@i@b-im#Uy)BfvGd+p~NB@~h-31S$IV;qg+5lAHxEEWdYFv*x8A zVp9U)-MOulXY|N&$7VBbOxn9kIZYehJiXadZ+(H|p47f>eKMyZ>8PgIt%{e9*x zuW+4C*En;nc{}>=*^Gm334U2Q2F3v!Dta0J9=t=z_MR={-I>%z!;ZAl!m13hlO317 zl-qtlEx`eA9Bb>`mvww+A{=oQ1SK( zyKIA!@oNKEi>@kUUPm=^%PpF2Z}HO&N?7{s*77F^(mnKn-7@CP(J?+A%2(xCFqxP@ z4a1^vJGF9JKg72-(H+)Tn2j1S*_#pt+g|Fs*6&@8a2p+x89A!(bF41l5mAZV6ye{v zEJ|}U776|4gcb<+LNa6!5rr$wx4u5Y+goglo~hGNjQdHP^+tNSk}0Bg=!y(5{x6!u zJ~IBlZokEg)Rsi04S>u*&i-jcE4cA}+|Q@RZF{Io`$hHnFUSQ>b;j!T`Q-_P+H#{L z>CVAq)b5wd2BWp%>?=9*X&HZdvNf0J$-o+gkfoJkrXoWV7p1G3MLbH8z^1qXKKtPJI}aF?h2k z!uW;fEjMGf5|5qh)rtxH=EyP#5f_g?^|$J{P!bJ&=6bQ3nvh=(fkS7v$oCD!(nGzTRp@ebr!F5be-{YHFBm-|w%$5L? z6zRM+BDLT9ndFg`@y*?0Ny}kOTs(rO{!*(+f#j^Q&uKZ7j6xcnSJKKyrkyxk#_oTH z{U7?YDiJRtUl`Y^NEp`i zI{AH{Qpz#YP)1t~hvy<)>XdYF`4j zre5`miBzzt;5NLJDz|1rAWqMiWbtc^NGZf>ZigOgKAXU6@pDR3>X*Lu2Gg3?l+I83 zK=ypn&nNY+!%7M(m&=(fBLizS{nhU9Nde1i+`fxc9pF$7$I=bWQ&jj-dVp09^PycT;a!Wd}Ji(MUCT5qcl1Tr;R3GYr>l6t*VI-Ww( z>WhI$TH)68M@}?&CLVTJ%N8CeetsRyaSD-!7>^m30AHiiK3MY&@%!VmB+a6jsW0Ji zW%6~9J?&Ad_PRF(Xs0~UmNp$+WSMakom8E*o|yA@wOLq!f<`FDrSvPd0WV#Pq4_Bf z;=@z#j2~CNJIl_}&SUs~FKYPl)RK!jIy2~YQnDTaLppBHLl(VjJui>O0Z##Qu?D^s z8dN--_PxGb2&SmIxQ*X1A&`CFGfNKV(VgR_uO1w73xP{c!PRYcedTvkJ*sZNjFPpS*`*q*cv59 zeWz3i4$>9!Alhz2p_GN+b*#-y`W=i??O3^At?`6>j$oe#qWI7wm~IB zY5`S*NlHy6EwifkJlZ&o9&mnycUb&KKmEGBAv&fn?SGZL@lA7(O387p4hYp)sI*^1|=`To_-WGJ6Ht3S5BzPPtW?(-e)ZM zfJn514{PVZda(opaHI#A=SgPo4+{&6r>;J+K;Qq-#AkU}Y`V&q@lk0;%Pc7b2!I<&dRHcSYIo=uXVsig{BE&FT<-E}MKf80P6rB3tZ9rnDAZzd3{ zR;H+5WS5a2j--RC(Q|2t(wedfL{No2K>vH+kMQ_4DYn?lJ2gjN&6dNX#1(IVYqR)v zev-c(AV-rn&J~%+z41}o%hgAt`qLe1mU2E1aIfKQru%q}{aM0Mw~jtWg-d{G1SUwY zBC~cvr@eVur_;UX#bDgme+21oWz-}v_bE9dy{b{d{+B>S%rtX;A#aJX4oz_fXF>}( za4P6DRI8iY7)19Ncj_;8zMO+r%V9qsn!EOgb|3RT_7Z_GKWQg@w3{M&b~$?f#vSD# zq_=EcgYWr?oFqM!(m^msbhQuHKs#-z1HvVyzxOllT87xC6uEzDtIHV4V(`S80i}zH z5irhb`VLutT9p2MwlVklzC9bl@+^c{b88_{nlQ^Pg{3HFD4)Ujz)K{J80{<}3=^$E zKztQk{^G~5ZiUhLXq!ywQagNRrm&?CZuD6yKp98b`ye|TI^(YXJ*m*wu`Et*e#-_kO+?ZZI&EF{e?pj?h+)G+fl?HgbAoCRy%<2Hz(J zy&i=#@dodWy_YH2Tx8uW3{|6hc?^TOzo&e^Sh1c?*c6FK@U5QA4Xa`#XzW)Nc^m+V zd(w#27KGyr_zd0@tM6*x2d3V4W94U`A@G=OF^To05o%d@yqj@xNmca~MrD5%;m6TW zGV5X%H&R}e$6m-MkV;G6!Wq)m#^D|xPaB2ecU~17Xg&#ibON%KpxyIdI(URzS(yH; zH#PhNMRyAq``X=dql?PW<&i`h2QYpZxe;?df+iiFbb~_`^X#hwW)n5YZr#L0#!7x= z6fb!Y;PdK8on$_P?wq5u*5Ts2r^p(s5;xjuxk5%gxNB_6Yz)h1QYz4*pBGGn+DuK9 z=qjIF`-#wt!I*l<_+e7y7Gjvlq_I$4-r6kGL>tw0Dg{otER?4@cMnAr(!S8Kxzle* zmQ}e*`_r(JK<_2b{zGT{YNMk@X3MaS=L8%BD9bI7j#yCqeilo!cThg|=AyoGnShUD zpu%?~5W-5vA=%FTOB-QUxiYYl7Pm!k_JhPF+R(JGt5;t2a!{j7)D&b+K)cgFQUUon z{ojp#0Vh)wFzNP~&&@!Mq42RpANrO7ZR+DG-W_UIAQxZkFF2=KBQG^o35(QxRB!Dm znL`avZU-)o9w>N zRboasneDxCsy%vQ{KcDwWrq@A#G?*in*Vf+4-gY|h3{mjExyYp&z&9LZ9zE9z9^IX zo(n0i0o!-s(x`?nGnlyOG!H)m(FLZeNF|mwCXxg8{R47MkGCW8{3+?A3@7yX0R0l@ z(@*iayGB3X;T?5ed>1M1|GCxm6&#G8$hlDgyk5fu7>-eH)R_Mgq+xCspQeyLJ`7W* zVdUI4cqyi$3^G{zyXfHlqU|r!B}*X4daY|i4A8YVsQYc}*z_)I1=X}LJ-7*!PWX@r z^BiR`N48H+*F>bxv5-YBCa<{%O)K%@)658Uf`r~X9q5ua3a+LJmFTsbN8!TWCzU$8 zXptMfnv{sQ1e`1uG}`_N7Nd5N=?@oF<<{N7k( zwoU+2*&tI0AdYH=8KO>&dXHts=q-a}KW>`VwGG~+b-#rUjZAj5(g4vmFr|$+v+6S5 z=c+gS7%pRc&zYN^=e(F?mX&|j>K3V=8ecUxRW;}*prLvcILlb{p zJHLBdfBgIKhpE{UscZ&2pdoHUA|@tZbcz0#*)A>QRype0pvM@H@d%4lI8v8Pq#Vr5 zzXZ*v+D?ZzFgJ97bVgT_dt;>k(XVxz$(+Dlh5%uRw)eecPPtR4TZ7>}q~d_wW8AH& z(ir`7c>nm19BYmqo@U z6A7!Ulc!F@N*)|l_Kb*m>@iF&q+*+}5GUDvWd0h^7u5bvXf1s6#{>7Du7^D%LIo$J z53zxp%e?*Mo91#?0;iamSlSno^aA7-SwT|x#!2lRrWM-0TS_9;v}NMg^h?*4Q2{UP z;w|sm%{P~&f1|NG*wwiDkVAy53BGU=+`8aAN-F5L|M}h)!TtD^1v*4Ovzu1$G_3RZJQGAKIhW7&C2`x)KLp6h;0Jmj@4e{pHtf@mEY-^c_cN=(y} z@p&q;2l~xYc&69mO%45dvEB!R^!SiQKCP!W4-WDCmFem?hzKy~)WmyRyFTX(`*a`I zdOBJQ@p6H<55B=gC^jnONCeqeVtmWbJ7#gyiawU&lxOl7o9AbNPZh~Rz3zq3^ICtL z`!+GuIoGcrRFs5>O#RfGbfLk8vM_xgKB2*V{#hGAwB=KNi)nB8w+sPvni0((LGxI0 z)`DZxN9ovZ|CE6L9viGHoMDU@5vR+BW()t7PY;Fv+CPx9!$FqiGV(|j^E2x{i|x2u z@5?UTuu&<@kpcHGteU)OjJBz-=qk$du33scm0F7-h70_(6N3STbJ8xXXOr0i@xY(R zhaJj=HD|JFUtL|J-67@wtC;hA3j$#`8|#Fgg9DP`+Fc4 zF%*7E<|p$4_x{4(sPYTSg10@~SyspS^ch!tLq)*H`O9k295tRpmANGnB(ZtWH~q6nx4j`t0!GuoFFf0kUXWNbH1J8zY6PyvS60 zFv-?>tMl~d$;%Iev-~7pPcz^wOx$H7OVspHs~{)llMj>A*NJwb~Xqs|}6^ecHz1toYZ zf_xsO{eVys3fQY1=zsgUSUnbZO$UWvshLV*LZmmjIFd1Qsa2LJ^LT$xv%^%T+gWg4 zG!0x1wi*+`PFrVFp0^aMGm?Z9dO8{81U_I7Q!I5jx)(`kmEq%P{VK`k7)@95?vdpG z>Wd7xxA9BFEa>;s26tOnuMcHCu5q)|FE$Ngo!Ibr(XHce<9b}U`=!z0u-0UKuR=%I zY-f1M_c6cD9;JaWISd^=hBUN=es~e5nf~JkpS;1VzOLDy%8XQDlDYMB$~gExj2TTZ zCN69^<>s@O{i$%k1;r5QyE&ef>bkoJdkYg(H}g&>{eo}bQ9$GM+UB8z!jCIGzEVKp zO*-=W0eI$v8gqCNR+&Lu*1Zo**wS7zenuET#3}Zc_w{B<%oN_Pu8&pb@xN*8$IGAK z;A*ugnzyv8yH)Y5eBw!=-Y@$ix3{a@=z_M`{$GSwV5fSES-f=)b5hl>_n8wowS$Mg zsOR=IOX5Ip%^&~DjV3&6w=IAOP14+zAR(o(Y-H8#Nt0ES@lS3j%__a_&FER(~FnS<+G?* z=a1qnL4;Sa6x_SRi5#AUlRS%UXXSqK}9(6BxEE5-4WeTiieR;Y;Z4 z=MPKsBa@Jwr%a2}Dxl_agq=~xMi{3cYq4q2TYQ?TgKmn|v7Hb+BXG)!-tZ<}W{M5;6`(`*AWM2kt3JgSa-p-7v z0Xv;E_?juJBX{MC7mJYmZa;E!a?N?b;>=yNkP=XYzf|sqKOzNdr0D#nh#qqPD zty7GI2#Y!YwwCqtAAiZ~D!4{Ubcx{mc?X97DWl_z>-d@ai@o_Kp%)#nhF9z)U&pX84hl-BxVo4M_pv;V8XBab@uev%Hl$%sN2Pkde6wC;%2b+jYcY4U z5yIuB;Qjj`mnlf@=}))ndr@=tX>zzr_Q^uS4itNrF7A;8_l+6m?K9Ku2 z_7j%Jivt;2CUywV-18odm}GY1=NK1A@#(%pWfVndkl_koE7azAe%#7FEm*!!=EYk= z$iBQ^tCM^PA#43Nj9q!%wRWBC<^W9mHClB7bPZq%mah#;_u43H7?_;NMX4-RsC+NcB zvXyWD5+DC&72OJdSiN^cNP<4`$w>`2)IP)l^4xVHght7lp-N zMvVb%(rsRTBmYnk0f|QkS~LG;VE1r+SZ*RQK0ed`sDmYD0CY~Ov8u!mWEwI z^>3(r^1esvXd6S_-}BmD@j|zTuX9bo^XYM#;>G=%#i9}m#e)iFwX&f^QgdKMkKX*- zik<;0s{HL3v-NYKNy|*x0vBpvqH8InO1x|u1<(k~_zn&dQW};(3ml;dC+F$n$DZmV zSJgGkCll=p2wn2SbsY+bv}Ei=jH=U3Kp*m1Bf_&-2W5CC|XaUGf%gs~1Tz-oUVSIMq&*-2;LE5Lt*4zQ~ z+sRFXnd0O3D#5I59=VC}ELBRMyWbZc;vorrF7ED2v)KCF6a7BX{uuzvLO28CTMp>- zlv$gEG>d=g%w_VRaevpxVXJ-{ckZWS>J5p11QJ7P4#?5}C6I$=PXsn)Putu1FXLE3 zkHhdGMJuZfk+9PDJJAo`gyE8~D>VK95G)$6ws`nSoCfGm(f@xwdY#&6O0;=72A0`W!m(0Oz*vQcD5}HI2 zvazu40T{867F7(%9~7+=x~Wtd@?CUE=z>#53>L}}(WWB9q=-*eyt-A)3ZkDD71~vApSI1h@KpHw6 z2}kfFE_-y3O1TaNxwZtk*l>knbd_TO3-aFUe;WHPF3t?y_HjFoKce)M>9@=K?3uBp zRq@9@p%-$*0*OTa2(gD8n2?9Wj*ELw99&r*El63A^w#I+gI5Dyzoh0906^v0xx3{}Oa$s$sC0)O!ng9$EpwjAfe%3q^kHx5K_2h6udL|0X_o+Urcrk)9GASU;+1_-$rtk3u? z(Qi1UP!T&WmgH2S)FBrM0FtHkLG-8;-T)laXY&UP%1`02&*?pz`I z7`V{!dHF6Xb)P9g4xGhrif_tvScOAEKBqr(Q(oub~!= z)3VH@j2Tu|V}E|fMIv@>eB(910+PUgV}Wj}WB+C`rjwIs(ZVXTp%9%QbiO1J2hxyq zR*6N+0fnOv-e>(0IS``&2LXW!H}npkMIJ<-81Lp0aRk^^>%uoohEg*5Kg46yFcg_b z;_~HQrNoax8!q5ES%ZHw!syYniA;{hL|(u872ej++;x=Id0VF-4R-t_Pgg5$=hc0lz3%sg zkkO6W=0}t#ODYN{OKQXn&H4z|R~%_F(6m`#1mZ0ICY2Wgojq3lmI~b2bES&SDIW)u zSOyDUSR97~Lm>ONA+%2c0&0f8u;2*11u<_*G$-U`tHVZhDXwiV5s=1t%5^u?F0lsF?@qgd_;4N zeI3;o29PgXgCTioDxsaFz2(CjlGCrP-k2^kGDsqH5Qqz*v!5ibhmWV5oa7VESQ8{V zUMM6u-uG1WQsjcj)^w*c2v(4W!Sf?20W;qEWKEU z7)Z0Amo1a@4-1>XVrrGKZkc(@57ah(GNRBlzzi7Fepfb=M<#zT5V{bNP|WzVdsB;7 zx-|B40Ppn8GyTzU_|Yjwi-8O1ND~vZo2gFNsamD?d2i;llX_h|pve#(|2lMq&!|u% z_-%g-4v9?TP1N=$_0>O>mR1|k$PgrmcxtguOD4n56)&Xz7``yc*kNQFZD->1LxQLU z5XXF#`F9+X*DC{Q5Xe#;*m7_4dRa#GP!uo*{1Ez$Hm<+HurhUac(f!;%=L8lraP(H z9xl*!8U{2$d-o`d=7m@uDK1}c^+OmwMA|rmNj^9<>zxj96OlaR5iKTVUGQt#2X8w1 zi6euf{PLOJhqBAfTQYcnoR2j)bnyyQO>S#`^1BSy6#R@M>UwJPil6!`My1s;-A)K= z3W$DvLcEe9<@+3^iE{uXYWOwi(BN)k5z*&)pST6c@oOQfFPD~HEJ%_;aQysAp=r}* zv+;GBhWN-szHgP~A%rL#a6sX}#rjZ8@=sj%2H+4CkBR^-_%Cv;iGqU9t)T;&0afdg zB@U`@6#eaG8V#Tet>%39eP+)MtHf>sN|3qf{nH`{4m&<8jUo3(TzABhgaUf*-yxc6 zuMpZcrZ~Bg^Ga}MOL-wfIJW`uysCf36-5S2{w4zt>FX`>rX~eB>R#WYS4O6%y-U zN31K^R$Ym+ii7> zqjWs^%19R4I>NzO@p1w zj!+^HH+pU#%g+ChzFvwaa#hqjVX?RnLb1w2&obDp@NjE;IX6NqcLQjevq?|AN?k9Rxv!G z7(Zgu1%X>a`_jplhci<70O#^iV^{yT2R(8lj!f^ifCJH;(Cf~HV={Sv-0*FV8;P)AYt!?F{(A}mn9{9V>%F|ZT@U1zoT!~ z&_OYv%JIbXv!}?$aJVubt^c!}V$80)=LOHrd;F(dndtxmDf}COh|2X)8N3YtnlV2s zQ*oB0#+dw*;tmwD`Q?C2ON*&AAC%%C0jV+2eu4w?Stc)iu`+3T;t(dR6mJ=!Y~X*M zi4>=>C};!exM6OGB45Axee&dm63xu)sbKYTU<3ChJeWhE#1<%q&+OlU$_H_N@X#W$ zbSm;cRtmFc1gch?Phw=`|qCw?|`OSJ`6ns)e?3j6JIAlgBLkWgt8B0(G z)|MM#T&LR?R+p6gWbA|{;wdsOa*}|w#vB;cyZ`d9nyLO!ILy<-D%Ow+Z)^rL$4Y<~ z_x`XspW$xXvQk&^1KIgiDixt6C-4Y8y!~GifagFnK>Lk((!h>atHsvsjn7s%C9g+5 zJiVC@uqdBkNw4EfpNnIyM~_IBdyywKaEr(rKzd!V zC57R>Pw|y?*z_sWUIeY}A(;^bq$%P;@Dpx7Vg63xhsskVHwBnDKD1xaFJEDACn=PZ zmS~m&NGesilz@otFb03f?Qn<%5%q4hYbYdHr>r#{x2Yi6=DCYQ1Dz7fEYn>i@GVlKSRx$ zIes+ID~LYCUhg0t%@t z#hK5di$eG2bK#-^K8@JNa`P7D1v*`-ATip08$)+H;_5aCYc7QwaY!Q22u(t;Uk z5Q@#PMIOsC?&Iv8IIX{I_IB^^s4l?_gt~aL1jJFP5Wt zpJYp!;v&zZzW>38?*G3{1>zzZfB)`at`Z^uOM^sMEPg~YIM@_gwwgG2p=I*5cD<#c zh(;a*_W_9e-xwahNfUy?_bax5w%Mw0>mMxY6%FuI?9R!nYkS!~l2v30@_DM@Q_}gm z+>~RLl1m4Kx#n5?eXp7PevH4?d*IN65t25miyaAp%AlcM>FVGyG;+ZTFzXt5Li(J( zIn)VD?ue0?O87Ly!YHsZP+W`f-&{)x#kE-QiG!X$+s;6vGitkmF2U=i*Q4`WT9#ps z#ZRUZ<$x0zH`-BP3%L{?CN9WG|k! zX8yzo`T13WXF@~}aiBV*=(0lGKz9i68Eyxn;rM}<%rvZ#e)u(K6!%)|yCW$vE*4wQ zSlCbMKiRvqiYwGwasGR)1QxB^9rZl))U3h3u>3!GNwFIHW}t0GDL#IS1-XLCRc!@r z8u?l%J4FL0*jIdCbrygUqGG(gZw=t8Jdc1Yh#{VL*Eamv;nxq4=3Kzn8DK|mq$|Aj zD<81NS$(2NwkzEEJ>jcy(RYF^OqRE-Gxz`tM7{QS(YNkIjkj^)d$#3cYq(bbk*?(b zN|zZG(h>akivLHtP|{P^-HG68cYB&3ts4w&7Gy!EE#ElnZA|-FZ+?i^~gsRqvDw7*LF2;ynyMfgClh!;UdC7C+nr z{G(9e|0G^O`k&wbJnCF{JM7xB_D8XSZkq<69VcCNXI6Y_XN^AL+b|gjBJ-Jhh`WCX z)-KF`>78!gO5|m-9YPL~<{@g4X}p2*!?L3+c37mR37kgFEEz5Q)69*`(iv#@@IU$j zq%g~jQjal=45t{dft}*0r`^DHMR>oyRD85XIjfvM{(cPe;EnZ@0nh%N=ZWAwZk@y+ zcZ)D$9&h<&%UoE0;L^^NeV{hT{70$La9WswmXznN2ygm4#6?Ett&5F*fB#8@A~gH^ zQA5vQoq1>~jcgl`aih*!&hmCXLqJe-&t7$_Qr6O4h)~3qgT?!N{F`hzou+i;?jomwG2GKG!};47ij@Iy z+U8o^D#6#$b<01RclYe}f2f-;xN+y^Q)J|uAVo9$_Y^zg&vtXO@c*5uh!sJ+oC|c@ zIU8ZgXyUJx`{dOwGE(PaP)LBi_!n;Qqbh&sWVc#b{XwSNZn{!y&+->k&Jld{{NL0J4+OshAo^F@J2cqR$&YXu0rg%05D7TC;v}2 z;-~Y!@n;fLY=)lXADsr_XUZInxc_3!szgxnKEMtKu;Kvrx- zsJQ`Pj(4yXI$&GixsrXR>a%oWh(N+*WYnJlWem$dWkSI=8qRB!8O$2dME2;RY~9Ss z1dxf)R-ew!&OS)!k1@u*h#v~&{H%3*8b%2R5KPWl?NwDKhHUEP-0lUbdQgX6j86hz_D&qX(7#4{4Hs}Qna&cd|Jv|BK361UGHPlL;Y}(8}agw}y zF=nuDhFV!IN#y;|U%wk?b!w{rOK)vlnwQqgHsgGXmR3IthmC3Kj*RDP(}Z56m!qvw zqD+b#wpZP_dl=iud;@>@z7`Ayy?s|>+nNNVNet*w^&dHFpz6Nh8J!8r;^9<2Xv_^M zwC|&~t5HG=N!uw_=>7{v8DXl>+RFA9#WU)Y_zG(CmbZ2yls0{SyI9})6!C^!deS#1 zcMy~%@fCXYr9ds@^=BcR2_~>#I-8t7di>YN@RID6H1@YzXIR7bZlQu29{j)G?B^#9 zen%!V{)Ghp1BYM>Bnf`nrm}oE$Y%2RtD%7>(HA1g5KX*V_UfT)!RY`b%IGdvz32XuX%4sR2{^x^WsA_JrU&uGc zd4AL$(LqY{CSN=jaINfMjnbr`7ir)Gv-$MQU zI0QO<1_3JD*JlVS1;H%(=>E@8R7DZn;~!s%3AUqvE?y1wXM_e5P%}F(3o8%4=?`e+ z`y~xQLxVgg1s+$bxhsJSBmh#^z(nT9pJdQ4ZUDjkXBmH~{Tn~+^jhWWHTC=8`7WB? z$~*`lm(FmKooCnSO$PYW=Xjrs5f%xIqiKzi=x<5}o>RIEV0$Q!36>R&stOTDT0x;C zDd3IAi43SnPm}aN?*@M$)0hfP11U)xx52Vcl)d$%-bax3?sj*4ow^Ny*m@AY`z!$8 z)=wqr2R`GJ;6DrXYe!W%i!qxV!N;hfwkC9&42llJK`jC8nc6M+c}oaM_<#Q3&(2!N z{B=oB*IVr<$27j+Z?Y-9@esOrsxhE!MPGg=3jfcd{}!j;DsIcW#(w1qiUJzl zQhc)B`lz-XN*cwV;S5l?V(!vQz-Rh?-?s&22=IL@x0NyeP%spr`g5TCPWaxSFyN57 zs3-mxr#uDAu)H<{isa*#gZm$42U2I8SBDhe+8d6TA{q2VAjzn42{Wu)L2y?kuww+2 zCx!=1bOxMU`T+!$^Zfg@hXa)KUI~l}3vALH=#idcFdq0caq#21pKfShnpoV!G*Q`^ z8h22$7SPKHOGkazKVPWtW!@7cDP#S1Bz5*+2%rA%@4fwhes8ECcS9EFOP4FrpqNb z$gh}9H?Xf#2wTL0ng#*&C@y(KWyuVisC3FWz3BW?8z6n&^}LrD(onSbSpaMe#e7bw z{!1souga*k4@XRrOnM>=Yf$Y-+WoVeFs{?9_ZAz?H_)M;oh-HF1Q~Y~+PjP}F7SjS5)zt4N&Ue($DUF{q-|?8ZvrDh zfZwmw-a`H@ax_So3M1%uP#n8pX5ACqka+YSL*9oi>b~nBpcq2$9mTR#5JA5WO&IXx zo0sJ06Zuu6!W3h{XKB5ODFDd^nMQR8xJx?Gu^Y6sunyiZD5-J$1<6uLP#NZlxSG&M z5IlJBU?g1u9|w60W+=;uhgu-y)hk>GI?A=7srkJC6+1s!lxVGiXp$9!0{*2GKtW(9 zP*d4?>`fnk>0smH1#Ewld12?<*bwP#<#amO-(}&qfBeH8jZdnHyf?eOYTS3f3}va> zt{j~%#tb(H;U|(yN@oeiq+6VuTT*p!{=4HEL(` zP7oTAm!G~p$-SLHE9QLb1{J?dm`Rm$5GWgFw9p9K+y_@L!JH_%izi~_uaIY7Urv@R z7++14S`y{!mxqIU3%E?V{I^z4K-YN&m$urUwB5t2a zBlj@!jqCKoz*)Og`pk&&hp101AIPKMNH*?+g&k8P=_;k!+*ZePGr!`6aKmN@16(=g-tW+N1r)zfSDqMq?<=r6fTM7a>%Bc#>utw*tFNyv z6p*0LY6RS09)+gKxmMGeESL?u-q#hAnP=ypSE2=;g^!SeSUZ#kf~;@`qo^K#eZ&eb zDO8^B>CO)W5KW<1h7Spo2QYVGJ5y?@F;(Hfz{<)RwySb%AgBHx-1`dv_ps3U@R85z z`ll^hlnp7ZRRa~xaCBZI-S(mA8uqOd!@!$uqP+%E0TtGgC9% z5=NTvun!@vkt}FQu@ApIA6y&ENVrD<`J$TmumuAb*%n2k)Gu|B_lSLD{1 z`W>4j{9iu&byDMKu1@RPqb!x>Us|SC|1`vh#DH^YIMl_g(iT|taNqTri>2sErpxB0 z{NwdH6C8K({1IL+2L%8WqKHQ2O_C(3O^oxE5$hkdY8B?0Uid57Uij1Mle-LW`T0Tw-~D3!a+^V*%dOYfr53&ESC<#v8$w>kFKs4EvO<3npI(9! zt*szzIU!nep9$iI!m4Ayol|wf&I!sVCC=8jR@W`USGuTrLJEV?p8F=d$N8rhbtYi zfqfq&*xQDyU2RkDm|^*V6Jaf5yDxN0Uf=>H)llqIo^N;PnsfYdLnRr&-4JSS0`NgC zA^89~GUwnI>PtGH=ou6*lYURqW~HtV2ty=`4P{bySD7cTjw z-(n_Kp|hYUUNF0ooxV`@s}J@&97Y%~ z$`!Cu(H!wzA@L2Yft^_lFG&dP72DXfwps3od!A1~bub(8DIqud_^iGaixK zaMDRX{>)t`=oCq^N(0w&?@%oqd`He;Gjv3}vl&z`+2VqmeA3ixez>q#EO7I1s=@uP z&2Y(s0f97+!&6+(vgf&Pmn&s1+ieE+C=u-uN?)u#!~Vlfp=|R{{1LMO^!<#6O}fwU zrqV$3D_vN*uF#*j$}WE^J{WXa36G$o+XB=pZR7f-qUz6JV3wnEL2Q22U{bGULU);R zymLLxzH(-idGP!^em`S9`eg;za;+QaY8`(HT?`{bcl+91;3|gdrFr$M8S~fqceD2B zE|_kT`$6wrE+-a$2FsQ1#F%IX>4Nx08v8h+IM8Y#3r@IE2FSUhOF*Rc5DJ_UZd;!& zFHVMIS(Mh|G^9SqNMGq%M1Vl#CT(a7I(R5ZN-aF()k#C@4WhZe57)8BzE_z0P0ZL7 z1$Me;viD7-PQeXYInO$~(yu3XYh^*VKJ4V-^?aR9*l*!Lk#0zXlUZ=M0Me^W=lYjy zs{jweN;&ZSh+v9MK(>(pe14B+_@#ggC3l7_OFREnDsg$;)1Pmpwz;M76Zy$E~{f~Ej{@bTNVQnn=m$g@=wQ|{?6-cP5B?eI57 z7pGh(^(g-Eeq}NU;C5x6uHnKC8DaiWs9ANQzn|2#3BQdRA>2LE+@oZY(dkI%m!YbkL$Egmwjb*FYM0489M5 z*)9dT42PR*4N$;JV`V+_P$_2L<;=$2hX{kVnD>4Ae0wHcwxroZ2D?2J#d_LpT9eo+ zSlpYh6f>dl-+S?x!i$PTchVHw3 zhI%SYGMvp-a^vE?W)Z)oo?z8AIy4&yhF&|Zja)tOY-67_V+s{7+N(KU%wKQmbWr&H z+e7fpPvhtuO!$Sn_lq^=s|a}$tq8Z7*13`))`%gmVfJsSCp9|wNJ#ItB_iSH*oTkW zhPVt9RquzUU&WaiDE|pQ?=ud7{vS`!HL9k5bo|pHTOoo%>+JWkdP0Rk4q#km?z_fX zGi%9}Gj1R9PFg8VG=DV*C9q8n_kvqEvRj-0r+ zeNg^^hnn{;(2q@!viwK?`%NXgV3O0$uY|PXDJy)&oaq}O)&dBlu@B-t!Gv^TDmn$o z2SK|$GTt(U6qiV3H>@;jWDS^+2>>Jvd$ddaVun!DOj6 z3Kx`VCH>?DUXXhb=>Iwp|oC9NOzv-jlEd4R^NOw#It_Io(j`(V{u*|H(B?U zvbCfhnqxK$-kPjI^m+UCov`iCJkEJ`^~rvxCo)0eeC6lxtL1)aPRnD7wYF6I%nvmu zL%^eJ^UN7ESEM-FWl;+;MP{Z9{1 zfAxU5K(5ky z4~1KgDgl9t7jv=b1vO7??Pi~QsGN&0c`qLFRA&3?dRp;#Ys$D1@uZ@yfr!Z0)o|+p zuQ4*{_fj9{F{|Q^cZ1aajmzE!X&*1bS+5+7UFz2+&WllZAAK|wTSF2_4{1mnJ)VA7 z>@~fhfInzde;GYx6P7F)Tg{N+#W~?s`N+d_GfGQQLCCr=(ktRipLa~;8vz?*qyTn9 zp8qG-BBw>g1z+xzd0(6+T)=13H0~|Y@9R1HZtZ8cJl35aII5y-aWAuo+8iA4uS0%W z3vP^&c&?>*$^IzMPR-jDD*5P$si8g=mWm?Xy{7g z>a)AP=leIc?hX(MLZl0FuYR&4;(iNuMo3=+u3P&=mu9uW47)*8t<`&H1%KKnaVRU< zGS1hqN^b7s`NNT4tM4i-JM%_XQ@eeUvU4BKjJ=6|d0!PY`*%ATGQg`HW8uhkNLIBJ zx$)`X4_R8!EyWFa3Wb+s{2j%<7}*CV9?hZ<$OzL$R^JeWxksh4&)uAH7IJ@I?jc6UqMp?Tt0 z3((_6=o;dhcD-t7X06H_v^qLPln#sr(o!xf#ELQsy>z@{m_cH$)x=n)r5K?4%IM{E;lDkbU`Q>daVxbxBO5niJiEEj}_8%y6l3Tfa4!?Q9Uj8EsN zC-M7x9z(MzUGkbEKl$$~7@wOea{=V1gQKx$WWp6ww3(ba~x7T`eEd`-pU zaOM0t7o)FsxnESwvKu5+B|kFUN1Pc-Z2S;3n$ijp=@o`tLRz(3n33+4isdRPw{6Gl z$?W#w78k);x7xEgmm>1?g(6M|-UUud#&XauwMR}e4CLsrpSArA@RTN6B~1 zobPJ3rGe<^Y4`{;w%ce@Q%i(O|2=8lO7goTY^rZ+q$ZVker9bkVdxRXn>$6JQr4|w zp3ln|8F2x;_q%$fOq7UR+f5|b8ZOc&c6T@2KvrbxCxkB~C+g4NT@7p%dNs0{ZY|ib zIQOB{kM|VHglu-$PI;mrSqf>;VOJwAfL9GAB5u*tJ96JVyyWNF`-$9tXfr3QFwtSZ zG+DQ|H|Q|1bwY`UzR+-u@mG_BSUCAY3j)J@?>3lHbOqZHCA!-f9JD{B0{>FVz6suycbW5vQ=#CJ^X8bzQ@^`#kC41uQby0AU(QQP@>Aui z)uN01IAGeb49fErPTg)B19gQQaa@*e-yVO?vy$*Q5Mkn2A~^b7ac_i#+*|te`P2`h zgpA>OU|KsDYPVdb+C~o&?waLCC(y(~r0rF!>lY3a@aM>hc+Tk2p*3kr( z6*b0eBZRBOFSgO)Xk+wnEhDCjIkN(J0zVdQHfOI2BHpW--Jb(ZAL)9z4TMsoF(-e%&?8U!Smjc z{Be9{YY^VXU%h{|@pAeCrwE)eLH78PftqOlZ3@+^%aggs`>~1(HHJip+!lK}gSaW@ zq0Dhb&7+X=_lKFGfvcPGjWImw?jCM_r}P~QZ;5;geh&ZtD0>U2D7)_qSP%t4BqT(U zl1`;Tx)hWK>5!C?ZWv0GMg&15hED007?duD?hfg07~s2)@B8cj_pSA$9Nf&??g28+GkyBEeU-Itv7~FBH>+%3%^tTV47}-&ac!}y zEHIFZ=Q35pfSs9pSd|IKlSl0}!qamJIk zXfWs=hrwk)i10~JP8SE>?h7f1Bt$h!ga&Rl15RjaAL^@Fs5cpxzUQkxAb$EP9e! z1%M$c{I9;C$-dRX!tP<*1AumF4$WOhf6&EukX9}H&$g!hU>2ZwmX|i7*Br9^#>TEc z!%JVvA0f!@@mlAxUkaP?LA-qEd2p9x^+b$*jN#pjrE_%7jV1f}0zKGl^9NDOIG6NR z1=`A(Hk$&S%Z6esUfVtgkJqCtX&f$i>V+>Y?2)1wPX!wc)>+{5BHIki1_dGvOcq|x z58tF`zoRM!GP#4JlepF2397)M=|!lEp2zu}D?BU$IMGJ#4Vag&sQI{C%RI6&$uq~f zjmZ9*4zAI1@(m$okpXnTy$6v* z>#NdUpnT30a^J((*?S=;rvl{O0D#3wr2@4uYfv-PY($YNVx!zBADfS3$ou7A>1Gyr z(eV8~y7bSKXl{G^Bew1;!ojWO{KlnDH+t1^mSV5wnEI7o90!3NCP-3rlYNjRtXlE5 z7DrEQ@wZt_ioY{_It(i;5Ii8_cyVvZe!OgIJT#yN6aZu-uk$-Z&n9pAY&qU)eaSDR zkEkrxwAQ5lahH0h>orq8@v2r4LQ(O&r{cC@UXVN^x z!tM)I19HK%x_2!z;nQB;w8Ts?G{0XRhn|muhOWUz;X|3^QH()!1W#zR7kX9vd_0vW z!p&XN=f*Fj$hsrSHJ~Z&I17uVcpGVuM{u%RR?Rlya_hFW63#!o0Px5*=7$xOa8NF^ z9Q(I`#`*_`E-K!|rxY%7ptYo5^+cNX2T6UciyQMB4NJe7Mf>y|-7yupQ_;(6iF46& z|H{o#Nv`E?(p8kVFM`zWW14h>InGQ`n3o?mC@I`1ESJYo}>haLeN>_qn?jOmJOvzR`R!-9@=!l+%|v{dnvq%9HuZ0T53%mtguD% zX_N!?2QhR}59 zzrez|-7hy&Yl~38iF&f_D(%SqlI3r>DJm6+cbfH!j2VlP}R>SP8_#DqhA zSJ}Row&2A*tsR}Xx)$?`*C{!fF6j&tD#!r5$WiAYZ7iymfKnlYCCR6&m5~E~pF`0T z9TA`RG%B+~e@>#_bm_Vd*~#1w&_m2180ZuN;L|cLIsZp}k5xJ?*4fW9cC1>!6k?h0 z?&(|rpdrB4M~e7}DDGEK>+ylQTnf_yuxHRkuhgT#2l6YT%JJi^m=UI_t4jvXv3}K> zyu;>;9a2x#0U4&P2Gbs3do>bgV6ee780(V+iP|XEgS+RZ^Uk% zrjfL{zSUJAv+bcOBjO87G#v7W_doZ2KyrfXnaWqfV({(+FfR;H-{{OfX<{6pBLJ$+ zqT9q7c>U=JGy7y5tAV7qzL#uW<9CZ5bffh_4!7(Qnx+kOo$=a_8KPk-UaU!vFDy{ubz7TSgYtr zlRxBAs8rKT)xN&#ovps#wi+nH1a5-avWxfqojmKgP913tq^a~F-%rq>G*E#69L(w- z&<$ad-v@NR08FrxwInhaxS)2~_w%h+M zV^Bn&VXMp@gECneF1k8o z!Q6NG!TRG+|CK?h57yo>HQQFQA8DQS zVZyLnwta@(GOCrZQG@6r&hGSqR(kJCyuBuewS%7vSEIG$f6O8$32#GGxQ#T z7?mzMYch*!R#^XSL^%KJpBQw74NSV##h^W8q4(V>RW_PF*cw*mg*w@Vd?=MCnRDJ8S2r$+ocT)5{pMq<^W$21LsA^_zZzHxd!AyIs-R5=63VZ3(Nr@r zCZWC`@F?kF0edBFDy(RBr;f|Nlw(mB`(f*9O_ejydnD3 zlSbY=ubmj4KUIo1Lj1wK{<~{R#HKcLjVQ=e$Ne*YD*qYqW zeMuOL>pmTb{ad5oE?VLm3F@0S;U5$`R<5ifo%8d05cPUX|Jt?{YqjV6u9d`^9qUO+ zP|XL$;%|3Q!aMI2xqrsa`=D0++l^SBA6jNtld8qFcw0k|;^p_g>5fOKHDQ5 zDS7OIqd9T=ktC{P%WJ1*zKC>L`nBv#?657Qs37PpaqCT;ph-r<#3dH*^jv%2{Q?AMjVyEr=x5~t7XT$kcUsa@*Z%9kMoqunM3HyR z14SqjdQU5{3P6LIzgUXuB*1iQUZRs8Fo2rh;O0?s6A9*!eldt^;N1H`pwJgw2dHr$x~gp-mA`Exok^X_1dN{ z-~)FRou3RfkVk71G2Vb(e;<~0CzmZT0Vgv5T;EhU?y~R*eafX8%;`27|5cl z{M{oCfV>xeeEGTu4zRD>7G7I-Z5MS0z-K)dKBuZ}`NaSQ`E}OP*==eWactE6!Ccw& z4|u&qCHvMYQ@$qc7D892Wix~`0fVLyUe1XWR+HMapxF{EccvesU;CQN*?a3ol-Y1+ z;dl8z^er()^j9}vz%r5K)oQgKjN}{awYV*D5ikPac3x96#R6oD0Q`YmI3H*_LXu)) zgV^{V0cRk$m~NHJqtUNg=_aDgmf@<%gn;zjYWF3F7tt|V>h=?N13Uv*dzhSUMvIB z3Bd6Ygh(6ZUjGATFj?oT*JJMn zLqb)gNPxxAvksF3U-?Qpy*X#gD_Y@^O$+H+(x5KDS;~DIU703`a|^NG)3K&m14!-; zH|%aeytL*&Fo8#xBn!ayzaOAlSS)6Hi8K~jej_u`Pxt#LZ*;xs4Jr}8LAAFNh1X2- zE1u@-ZTg)AKq>Gzt&si73s?~wTfu|-r4Ag&Y!AoFQ{EXrOT;lOM&zs@oJ23a=K`~M7BZ{f`r`e3_v5k=rd|ZE_-#_hi>qAx^ zzF>093Y(`8HA?u?Wc?#9Qvyv^P;pfbwvn9kZ_Mlx?7rZ<01&l%uFTf{5W1+#Sl22! zaIO)rGJDRkb^Rh|AR`>#E8n159i%1O<#&RpK0i;!9B%%~2y&CTxY@z@WZWFB3* z*(HMZvOa6`owH7SY@J7Pt4GSqxWsXxv6!>tH91hT-X*bbvJYgPXeEXiV_^{9Ri_a( z2XzV||ITmI_S3zol7VfcN5d+`h9Pef2DDJEB)cYtU9KBF((l#tU-j8kP0{P)$5~h} zDYC5?Be^XVRexZ>M6Xa>nTkG}+epAZ$pwQ@N-YFIYtFRit9tN$&!b48wCV@!+U1NT zwX+!+v_>WH+d^A}baL&C4@F^#)f{&=vf|jzSM?5<1Fvf5NLL&e+fx-~08rfsL6k4W zBnSq;?LCn8p9I(NbY9R|$f|!DCxf`m`f_^CMX!=eC@t&#vFsOvL)Ye0wPDQ4>Lzj9 z&Gn8WBvzGu!Bk2=%uAK+P*3=9=@_fO9*$VK~4_17{$Hrc^4a3LvXjVkkcw-F! zyRM8Q3M^dGt?xtN2vXP0IVO3^Sm7g;4>b9A*Qe)ko7%3r=ofI#< z2GjI9udnn_vS(OpT};Iy4a)s*-g)roD|Yj<8N7Ka{J*5A%`V^1Tv>ETivSon^X?bS zCs`AtJ@wggz_V1lspLLm+1XP535;luMlwGke048=@q(LbHzBzep+>8U!UYhbBsG;@ob< z88k0Zfr#rj^Gg^`DEeTramhq0D&>6ll=MUH>-}u$wSD2IeFFsvq34=}Cu8osOi#k@ zaV4A8SBc5Ad^UIobM0J*acp&exj+l|;8~)htJK!7)5TSW^;x^L9KbaSA+G(Ky!0;c`!h;!H3K0--R~mr`D#(5Ev(+(6+paP?^b#Q;T+}G{}V4kzEb&W1i-et#aml-uKjyAxR^d8_qrOc zW9G`{|MGABh=x=KU?q>q;7P|lKbNl3Yk!f#)R(YjS?}}I4MlG#O zt1!K~3S(W>yI7{oyOMgkdy|8beU~~qs!{Q%W%KP{RnUhG30+ZbMEv(dIe`^}gJ~jW zm7El#ACWlsv_cGzNj84_Q|9!*mT`Bbe}NEcgN6En4g}NJuxKHkB5FjJ0u=~VhNRJL z;c0oFy9W3~;`Bi2a5p@{dsRB`e1#{DIq@VwG033MQaB13%Q~8Ne^6Q!Q{cNq{obUQfaiWyF4Gd(e6j?E(P47^55UdO|AN&xJwl7ENkJkxas zmbACjBMBAU72)qf5`U23jqSZ=th~ZSBgMx8#SbFI&4|~rdp&wJ$#sTw0goQz?O@t< zZ;u*;JjuHY+@#)dPp4gJ$NH*?*ZR}NQS6C&dYM#U~sTy)9ux32< zxfH6f9#bJZ1kfChO)+Dn-bwOPSB02cv^&Nl4Nw+5K9>M^X*gANoKeyn8(;Mvf|jdv znK_a~R;9Onz5zH7GqsFmS_|R+PU#JZBR1)>V=AzS4zK=#2!P!e?G~ z43vyM-t!OU(8G_}<}*W2x!w)kseJSEEsy(Fop}d*o4t=F()Guu&&|VF0>v+8rjbrW z#{h8nJDqS{&n@8Kd8?E#n&+PK*zuQ_$Li->G@e_vwkjP)(%k5xmm;61k88P=W`WGa zwHU09(Z@a!tIf5Ywk6S(lMdUJr1))|C)CS_Ytw#$m9;J(v)LohM;}3{GEczYtUoa- zznQ-f;^mk-2j}j8c7Ap78QsH(NU|p%^MuqCHagrX&nvb~6Q~~<+@%oXzZ!eHnd^A| z%8NyU734@l35(|WJZlvxls@078j8SOFqmtb61(Xcv|Mrf_2K+j%yyv=li1~X2gmgi zJC&OkI76Hd{}6oa{C&0jW{e|+v+S$7B~(SEDy2$r$^k&7E?Z7P;Z^5u4`g>JpTH|O4y0K*nk7bZi7f#eDktqx zk7(pWFb)r0Hpis_7Z{-u+2R9o3Q0fo8*c#30fvs)Tj~mJ03K~cgZX;3yak#i5)e;c ztdShVy>5F6CP?i(;P5{QMrI?jJ7${vm{2`mS6np)FFG@Uo}@?JZ3p&x%62)~dmfF5 z6lUJf(){Y|AQg%8$f6?zPrCGS4$gXhz8#lq77#m+tEON~ZS?zPRbRG#`6qfq?*bJEqW6vQyY2TaaS)c&oqY=oD}C=r?w}|N z)sin=9ks{nT@j^`y*lJ(yA!_D>Cyvrksa%0H)*bZbzKgkiz*mv7;UJ8T@T&JQn)WE zu+>hF;o@>EmG)!^&%!=3y84PxM58_qb|JqSHxQi_o{cF-ysR^R(E)3b=V-&3(eW*v zP7Z9~canvG_rHc-38fAXlFV7?ZKq|RHpznV`Xb6-HKmcgIe$>j zKA7&tbxRzW-&%*0g@qb6%EY7C3eX9>=NA<^aWsB((s1xXJS3l_lWV6Szx;`o>2jJM$UtI+b3<^YZsRmB3%l zFSy~Ldr=p?@K@473nd*B!ro`){X#hNqbf6CXYs`DYNA?c_%F{>FE3jBD>GljF)y>( zHk{If%_?tU3y4U~ul703e|^g+F?nLEpedaua-a%A9iiFGc)iTno)!xF?jY#Ln+JYMg@V2*#(yK^K%ToR&Znc9qnpYqyz3_186})B z*L{jcsna+Y;Osn$spy@&$@)z&XJD!R40qMqvqtoi)$7=ykVVwV~4Anq87 z&(%qH)#MOruJ9iOPK$&FR)KbxvFSJ6Y*TB~WG{@DKdvsW0N}5>!2?N3{P-o3GKXEo=bkS&>F4=jG8z-0w}#uV4atd zw8N?%r>sRB2K5S9AytJs-@K}@xr^uv1aVllP_>8AZ24~jk%X4pXie9NM=~OPOz#bS z(~tK!B72!H(y!gEL~4?{Cw#iE9B%pf9S?&u#g;Low<$rq{~~Tg$nS7q<*~6#G?zTC z&OUJOXpdj+YwdGifOpXk_!mJLfasA~S@4y4%=)y*spXk;A|m_U+1pIDW?U#5jZ&qM4#r!|gFz*! z)AgRAX&%RwfUB1YvFm|A!J_FsuAC$5qVc-dh=GqVfOtP^q8KEBrfW6o8AU2Ea2;r) z^kI!|8478PWDz=DjE;$knO6>35TbB-ggP8C7yzwE0ohv{H~C-0vNlV!0%^|O&;t|0 zbr@g+J|el1*92x{KuQ-7_OD~!!Lm=CmY}X>Gn;!296yJ8Ah{G3Brx-D6pw|(WfoEY z={A!lFN%(;90JU_fw}ZHDg9p?t|v7UhxsN?=DNomolf$N5B53Y7_DNv=X=ywc}J{O zH(a(yccbTL;Zr+Hh;#PNWHuH(U|IE*KBF-b?_{hKLuYy7cuf3kYMDKRGD4QxFY6QY ze6yx{&m0Mqy@*l$g7){c|6cODDes4uYy21M=aExGdownNI&){!MY^Y|8@Qt?SaGJx z2E}%#k)kWLTr;YI@ajOerQCpMPa2U#}rk6`@9gusZb_@e#bWgFvbb5M7qJyub{VNUB^YS zEB0s<8!m_f>JDzR?tAw|CTE!WLw}EA>lf347+Z%*u$qT8G!fbx>ky2Lmk3&46xCZfI@cl zWOqT%-F^Sp(`_X%Z^|U*&O<>dFxIh%(455^2-%0x~P0qiCcdN=ZnIgtHcer&dGCD%Way%Y3i}G=R_CzjexpZCZuF z`%~(crrK;-VPG8JSH8p1aIv1RJb_FXMlB&V{Z&IUA8;SYpm?b;U7k|SP$lx) z)AS_pDP}BpM1L?tCbMl#T|(nszVcX+c%Q9imxFOHz!QKCqDHBen#clUK5_t$^=wiz zZekjx6E)&u@r!}K3X>}B7QP(>#te%A!?SQwIq>(MK>85)EtNk!Ihhtl z>*LZ+p0Tq(@5$egg1-3Ii|P(ItfZKsE2&K28rK5`H~+?BS1%_!#sCBfS(cG++2=2a zvw=h;0f>k1N(>20@#$KzMY!%Y5M** zdAiRW;3L6Pq;^0rhPms;U(5oA%Jug&#@;dT+~ipU$#d^p;M~dHIR$hw;#~q!WI^F~ zZPIb^KZ1i5O$(q{Tl{;RCPDXt>O73qrpa#ruL51tFl-DX=zJb&!~a; zKlGyqkn#p96!kujWYIChVWao&%3Ow7Yzdok_qr`+t=WBn9Ja2!p zf#l7hxc~K-A)gK3kj9o!(p5;zsG6;it8#s&RJ|^iO^5jgg%8SJyV@=_i0|#BW=Tpm zk=-2q#~`+TbcBAr$E~^Kc&1lH`bi{g+EN=wqdoXR;R)Vpo6VqnGMFzAFuRSu3lIea zF#hSjj*$jAf}C#vN(lhMp#A+nuMOz=0-Y5GS{Yawt{2!#(DyXb`_(uus{mzL%($Y^ zE=Ea94YG(wVQ@DsVr7CQh4rmJ6E<+sAJ3;A z<4~>-sAFU`_E2Of^BXB1yneMhZZ?;&`H{;%>qbK(&mm z?oJl=WR(BPeE?X5%HTle>ee{CXZILW2Yvt_r1eO~N=6kZLH}J6?zMO8A-|n3sP4^~ zRWgE3+Ds4khetl|0$PJcnE0=R0gx5Tf_}$G>E_SpOnTqT={EteO;eFS4dhlyvFv(s zaPOn|dv}*hs!QMWrKwfD)sxq9mV7nV{ykd}o&|JZp$(915?Bo58=GWx-vjhVh`)ZD zE(Y9+J2W7Q)KxRzyNlHfh0~29$lx7vc>o#Df4_XaL0U0p{^2W?A!Hk4CYwtBCo!T; zAw2=>7ER$cizaUccx*HztsT8}?v7_WO?bH=esIb@WLv|0X z?h$~D`m(vVGmZ7o$F^u@b!IyG=^Qq4hxW+0I}8qnAWQdXs3anzXK3}#eFRSNY!iUceosU^0#!nZDnT7P3#q? z-k&A2t(K@G3}649muF((ka-@iWi}7-S(iixhI3AO?f3i)nFA<+BDiY#h$cEpy-eq* zLovZ(vV7VseZ6Y}%CJHC^Qp3-7O;|ED@|5Lt`QQx2M_XA+29vOtUvZJ^KWIJP~!(d zjk1kL+hb)6fcB(8Tv4{O^$`{|uh2z$gpY;_CHw3se zOZ0$MWAO$jR#x*=mC)|`KkR^L@q-A_NRsd#3dVq8E>e>3ZwL1?8fEK%9KyWdu?qeU zGgvA}98dZ`$K}rfx(5Z#FE}dV!08VEL_qeg4P;6K?oifV)zD*fqI8fWU_a5#RmqH@ zu_P^LO#^6X@+b3Wvu&}P;7eKMKhk~x2hf&_&GjNgVbE0dM>0PHD8&RiEE1d2>P@f! zF(Td`nRq0_J&6LU!DTPzJ-2F}1+UuzTEYwC)-dHy#~Wjkmh^Hmz6l0C7oXk8IR|r; zB^S`+*)FGmB8K*cI~bPt^a*LL^#KW{R?29Dw`ZR)4))lml#S4qND!cc$$ zvOdS~%fbJMSQy)+zN(kP0-XZHtk*{zkd;C9BdKJm82|S=xIvetzBX}ypqBVAQ{Xyj#ma= zyMct}>mbcFQ=6|wLxYm811UgVSOK>+@;)#z`EO&N{|=gec7a+PpBO|bM*7bKcnRHk?@gLTZ(0*7Bi%)UFJh;8Oa_rb9fuxMC5aAB;=3Kx#k=p~G z&jpUOazcaQ)25Ggx>a#5t3|5DzG-n~GLeWR3%U1`KmhyzFr)ugPQ3Oz!L}h4Tv>t4 z?@<_#3nw~*F|mHn-628d*K zg9g@X#p)vUy7bxIm>y;S$?e@Pj9@^CO<|1$`OhYmEL_FjM*=VLbs9;4>%Hox`V6CxA^?YN0FM$O+yQ)b+x*3kPRuxc9%x zj^MEvU<}a@(#{~nx(ToVqQABG$?r8OCdk2DP1ru7q1X{b}Jy&?&p~$)Q*P|Z#ivU$n^HeJO`uOZ@ z6I^=x8|}gTTO})SBAtUp`P`_*m8xl|8d%%9nNO7X${qcl?)%_42NCp>`lF zaZbcp0k*f?2NIlp0)xpo_&^+s#xFx5{W>?1x%dy1*H->|gxAm>`iacXl%32}oXk`y zfhZ&K{u<3mFv2+>R%nX@~ z5mMR_>?=!SiCkplD;c}_`_lMg!9p;S!Gh0)gSQ-5^&kL2W$1~4{{wmUl;A4pWpZ-z z-qrfaRV1`5f4``>vF`c6fS3=!`-31C@QxEt5=9alkYt0+LuekHt67qU+DPEa3i2WO z>?kk+awd!0!@JA#sN-ZDQg(dvE&_wuSSGvET#m#F@Rr%MH7YEJR(!6`DFG&8VAeZ_ zjBkk>$ORNxA}+I+0^1-Efg+h0U`>divN^jsw z7NHWj4pxCtM!EC)tD4x&{JqnC^D$%?|5Jqsask?Oz^Y=n1p#%6e*O%ISp$qXZPsgt8s`31?Jy~AlwzOPDv za+?E;quVr-xdK_qzomAJ6Iuz5UyjW`huO|FEUlUmM})QYflu@w?^aQ^U{c-W6$pU~ zSRX7KUmq?du<*NnsG1?d8x;Fy_VInHlt@wwW5&P!W=P$#>`Q?yJ=T%HO!)rLWZC zJ|;%1>HhB?k-Dm{={}_#^Ev^oFVJlep2xpFc=t~9kGKO7o;m$yal4`v&VehN50z1# zX4Cu4AY09|d)X|n8XPIR`gQ0)2$<bZcSBqm$1Yc;$%CH{Br1 zf;SzRw}12ldGo`R2lEpj57vfQLWr0?z4T7tw>Jtnoo_;m$L4+YO*7_+u?$3QpYiQI?=^#xS0AzGVV6L>M2)0cRpOMjTP{}`1#kc#e zLmd;Hi_Nbm4s5#QyLmU}%j*Cx^-)AR{JwgY^6UXZ7cWP%OD2eONuTCEm1)N(=`7Kp zy9^3qI>BUw?0n31`P|YG%>a#kQ;X(zX7z#fz*F;nT6hW6ZvjB&w#xWk zHU0^N$1E)u05zD}i$(J~popNm6w;9@eWY-lkL@$vlj}+;8ZuHWh4|tPC{!QSEsWvY%-CFzi^%jejIDgCaf^ z$inmJgP*%_TMjZ7Oy#Mw5Hi_TR1%&9zhvX~I9Q>&$r5w zz3zxaG6OIu6|gLG=xe@zR{=fbiX-4{^xUMB+Sm_NdNmo0DpS`n(R#0hm87^bz#z6a zE{MMIM^3_59KL-Te>vVs?3O)KXO!6&aNFMEUs0?zMZLgmaCeX5+Chzxz$U5 zq2YeIh8vzBq*|GHx%SL{lNGC}wV-yTy+l>5!CE#?xx)VmMZnQMDTl?8zo|CmjBz2k zRz+oQC!syw@s?p724sIr*T_m|#RCV0*q3CCo|WB$4eG|7 z(JUX}&gMviw1TJJEeo)l(wH-*?++|;rFMVD2%2K6s`ipXUdA}rS4R7{pdI0=5pn&W zY1OD8NTjVV-p|5?2@LJw0RaI-$2GOJ69at(g1|1})$1l2aLOR7V5i4Q5Doe7*8}>; z#;vykvm%vTS*%WRGkQHs2eN`K} zox7{{9X&nr&I2IhsSwmSpb;llNAml_Lql<#x2N@V%vrw}_oa1~FTfik%UYVl$W+Ue zfz#YL7>hN`o2^o$FU+PwZJxWkx5ug3I%a(k@4}Bx^9-N+$Q4iy)C#nDY}h6`q873> zv!Fbv{Ee~=3WRy65-hN((|;g#1LGyW;Sat2qxzMtdQ5s5AD04`B{9Ndvbkj5mBOt4?L%;=8-e2b6Hrh}duk(%+N7x4(pII4l1mwWL z{>)5Gr+=WxGe$9qz^t(8YhS!4C<)mmr*=K49b*7bX=8ud-tym`61bjl4esccJ%x&O zmnHC_6{ifq<0z;WVbok1Q9+~SR*Jha#V}N502*+94wcQ*m9hL(_+Lj;$WzQ_^{qq zf~ji2n@Mo7*1Vt5ZkdGvd#0F}#hY~ADNJ7Ln&Ob@gY&pEkqsO5#W=!$X^||JBT>8s z`-*v;dY6z0$cN{ckeft2mTJ+3o1@;oXSW^tTf+c}qt$w_lx1qKfn~XPwhWfE79%OO zxiE7)iIjN8Go9}EU~Q-($xM-B$Jo#4V5P6T#qn)>%?Dg0Cq0R^?@sXI*dJ=E*iui264Hh6 z!dVi3)yo9%YD=}-SjDxM*9&Elp6Ky6#2KxoW$p2kDvV6lc`E`xTP|YuFOjd!J0s=g}{VojQ ze`eTJhE^Dw8NU|~xICf-E=%}}q=E@yQkLh(+u5Kbd_x~5?J745jY`!nHuOt`gp-h^ zZe=S%?m6)7N6wTOKXYd{76tyQ5&J{d;F>l>m_;%V`X4OPkW!iI~ zPnk2$(<#H2Cl{8&wLr!dP4|ZDRIRR-k;d>i%5=sHhjuX9x1u8$6yXC$Q|A`_2Q@LY z_B7+g4kFT#BuSs>Wi!Tj3-95eKG7;L9vx-vlNPD$naD~VAgp6Jr8yT&wa>RMJ~&OS zlL&jE-l@{#!Fyon_0ogkmqx}*+%crZCjo4@{_HWTuYCF`X^JXc0GYdqH%FU5T? z5`2%~;~wu4_CPnv#ja@8tv2Jcz4;|8kMpgEbP6#_4bQZE-Inr5O-U+GMXF6YKmLmB zjXD>=rr&Ogx~rP~@`s-GlVkJW4bNpSR_G_$DwO2uT>MkkoZq2{& zESjk!-o9d)H$S)qy15@tE=x^&q@EZz_a5QM-2i;>-X?AQ#}MK7xBXAne?Gv2+@NZNd?tB$-%j$+x4+lrH?;>BxkX=^^mw%#n~=|? zmq6A{5QzbiQ3Z^USLGHbF%s+c0slG(NEL0X>+W4 zj|&;xE{0H4B18DWqvt5pDNadFNIJtB&N-Q?RQ*EEhs60xpY2~~uSK1`-?cUf3-+tU z-B7W1`RSb??xCw+ZQ7=P|FKE=LE!fLZ8eS^pisFh5S~DPtXa_qo zBvjdE&X&oj8Ym_6>^Q-6^0yl?pfUXMYk#4lT2MC_a z$7x5umpLp{2R3qz%U6QWp1fEGnTg!(eep&IC{g)!o8@0M3zZa9)~30=CdXi{@0(nh>5yZeH?(t+%Y1iiuQR3$5hN5MXyj7wP=9RUFEPQ=2Bv@>WWq=1xS05qa- zrTiw}PFCB01U&8JM_ai+(M2M-+tUQtSzm1o<;UG0PDULUgR5KwzmBUx&wLKySaos757*$=HKzH+;lyF2`JF znDtX1msaA?H$6o`&&y9l&7VorWPUrIj^m!412d2(@K9u18V^#ktzxi}nRBLCyq*rv zJH(g-KbE+`p_wOAvY}6|25A$;WlC~sH%C+@|E?&mP&dwoM954I9-)vdP?Qvo$x3`; zqg&&<#Kv!nWYIAJqavNg<&-BRwi7!8umvC#S&+x?g-`MLX+?@_4X34T%NA~Edk?opOexKCvLsZKsQ7uXzbsT6Erk}V8zR%fUD^rKA`8Y zu)PMXMelbLN3ASQ0@&s}sNMUfai{*?Vh8RS7;jjHcsnH+@T5ZK3Q$Tjd9OhC@8-UA zr?yQP3&3o-?)d;Hkauf--so|w=ZcNb`BBfapi5MD-+9`a1V-+dIxCz_at0Fg zT?Pp$2~LrQ;X$+60MIz6lk&c~AGTShN5H1c_Tw%FIvtgihX{>j0;>C~Xw@s9cPmKq zNg`7C)VYw?be*?(e+0gj#eO6?pVv%q4s86(^Q63jBDLE1jhW(>W7nH_c1gztW5waT z94Xins<6HNy&?D&ytyH^P**VmnOG~u^(bw?!s_TDN@sn!6D_i7e6+6Rt;0)1TS>Gz z?(Z_a={U07pX8qv+Y~Pnua?#|df^V=7F{-#KZzRFe6U|cqe5V{FYRG?x=px|4HMNre`Tk7Y4F{l$9#09qjaj_ z{8~@>^BR`(?s^8B)WTAa3lbYjf}Y+F$c#%NkG(kH9c3&3`NI@rxls&+w-vLBL%rhSFutnQKRwemhW=vc8QEK8(Gl z`y0bhrlug3YuboUm%GeyOhRyr)n*{~N`%v@&oF8x1jT?agu`}dECNJd8XO4&;G zCVR_BGLvkw%9hYDla-ylvS+djMfN5mdxp%c{^#kIy1)N@-Fxe~Utizv^L)lR=X1{c zecn(C6QNVe4S9Ou(p&+fl4RlrKSaUxWDHmuJRubPlj;SA;y(N>)S(Sp=VaI1iI=mk zc=~J9wFJ6Db@#L30p#z7cR{qmBM{vm`lZBtK$ZFN-v2X4H(^eeX976o?T-;GQQo*M z2KezqbI``*l%*u0n9rLg34HFGlKh*bP=Kx1H7R%h{!N6{T@nRF;q+REKtOyrjqJ0y z%?{BcvMGlz-I^zRr9gjb7pRf!mw@7P`Vu~Qdbr}Diow*#;A(_{viwDvFKVLQg_24XWK z=un0?!0C#FPwZ&yxoTbY23c!_fc4_05>%+xpb-SM%xOV;5}| z@(}Or$KL8?(u@?SO9#$QL&S;jnsj1WB<_hr({OtH)6Z+3a`_-Vx1ik*8h`bx`inof z$EsYeNdz*gPhXS|mrY0G;a0&!T>x+E2*n!tXwEdnOL0u<7mM8q8YEmIA<;~b|1p#v zgF)`a`(7U6Ejs~Y{LyHe@fsz-%h1tYOih&w)46jpOuX*pi45rSa((-o>7WFmB;)~j zWKXwjM6taTZwxq)=g_Z7e?hb)f6n+ZZmI-bZk8SC6&q$sQJ2V;h@+s{jyRepTTHG? zeR&u6d2B|dd>#kUD@RpYuMikt^&H+KtY+TI^6Xv)w*B5~zi>fQp5YRUB*lQ3;^#hb z4W0#}O(qNeTU>Wv6ff7@Z;BW3-%OWk*-c-WZP)2zzTWsPZH7PW(#C#qQ|()OLe@(I z90q(o{zONb{hF>fL`DKnD;KH!nDkf`adJ3Nzn}XcRtCuf9@J_^uDG;MeH2eU#ltS- zRoiS7puYKaY+5=?J>!*oBePtXLwZOG){J{kkweT4W#P}c#w_;BW8RN{#-Y|%WV=Rc zZh1wc-b^eT7%Z@1so*x^8j>j#aw#j`^^#=#JPL${VHTH0?twiW%6$VsmT!k zt@$Z6fIebsp|bA2bzM1?J6?6ozk1O5#rtRTgY|5V5Vl)%SH|AlC;AW-+s__LKgaCd zw;Sri1i1mKw*zX6;Y?=^@bG)gz6H9(08{%0kp)kv!+jfF>6@G;mtS_^5MM1@_9TiL=y3+hO>+FDw`m;u#zNPQ} z723-m+(=0n_?CLh__tO^hnxprtvF5b^jY+3Z5KlF#+Ehxjv7M%aYi7yG+pi$B9JDuX*_;Qbd6*G?0L8K9KZ^}QauO0Drm@jkb6y6W>7USgey4!nXP~)DKaPqO7 zUHanGrTyz~+(|7|%TGbSIRnu7U{!t>OfPID`tA{F_p#dkmq; zQSACvvJ_6r5qn!pJ@B9AITi41muc!yYlb$WTH;y4Ss48Ej^12(@Wno6u}JLf+f^Nf zomJ7~{&?CYc3Q1Bu3I6`f>_bDN33j^rr}J0tY^p(# zIHqJl*;I;4l2|u_7e6RuN8JzI?Z^I6yr=E3`2Fvf*2u5iXU^4qJCu#-$+|Wr>p@W% zf*mk;|0}<&&yx^dysy!KDZoFhNNknsSP8!@?tXJ;)z8n5^)l^KAf||-b*azVc z+iSNXHv=?2PBXR79POwH%)5k3G8etCiUx*&#~WaO1SiTOOvEk_RBdGkSHv zvIL=?+ZA>_2&c&AeR1(KF~55KflH?BPz>kZ%&*)Yh2Z^3#e&06=l5GD>rZ}tvap(R z>4L-I?(3|StQUCu=xK0vBXrfqMx8|h;ytdgwwsKo~ru}8PnG^YqQa~diZKMn=Ddd+rJ#fJ-oQ}y<>e$V^-hE)B9G?DVj$z6w7DRqWbJV@No3KRokKCH zQS|H_L+Uqfves=${Jz(DPi^jI-^1#W4fXU4CL~4`4Yp739%GLcjrS*En{U=+Ff+a~ z_=f)NOhw`9xZm#AZ<-uBMeaB&pO^M;(#ednsJ$+zMXmjnXyW|#rR!uYjyB^ZXKMCO z3-Ne_MSOt)UJJgO0(zG8yM^cTGM^6a$feTWkLJ{o?h|y}OeHj8rcIwrQfYRZ+~mh+ z$}isxn#+1q^lsjdzt6H?ZTsv$35l?+=O7aHor(ABn3wFxgOy8j`~fC6c9e6o9+You zq|1AdE`+4W*b~aBHxB9>LW72S-IppkcX94u&EMDCms7hW^Y#u3W7Lz71hkQkKrTl8 zK#v(uVqPi%`$ut2Dp3z!hrG(_zqtqM3DU{x$Pa!VAZD3 zmQBBull|7+`qJl?y58VyEe*UIkF4L`kMOXEbox1VflyQTi z5M)Cgl-|)af2$nS!et(~`ch{TGC$0EZ)&V`Sk|T*ugNGyHq^igvIW!Ub4JK{GboLi zTG3xWOD*c6wfDyLBWoCwZ>`7v6W48O<`k-;QQ_E8M&rkhx}Xvhy(G$d%lGH`((sX3vPLL= zeFqweBLZIj`(H7$bAzjPFDvM_zQ2Z^I#WvK}l7Xi`pKk}`F1n0tl8 zGTXWi8L1wqnHAOCAEKC)HPY4o%xjsz^5&_i?q)+_0l_Yte%a$Dl`SHx!iOP#?%Aw* zg$YfH_K|H70eYGD>fK9z=E2_I7%aE!v2TgHQXQjQUbT9C%Qg4REbyY`H=EDtSGg-i zEOCV`Yv18%H!mQR`8EhyX_J=zj1GO(2!9jv*=e=UY{=A3C#$TtG&G2uj8CNrYkowx zCg?iJRl4vws_jDqljV-h&7>GkB94sdKAE+t`h6$?HtHyqx}1~2rNsz!3GVrbA^pC1}g?ope7-N~~Xaf}EA8)2HswID* z4PI_GkK*6rl6gJ-Awrx9L|*-<`X9j|4Dw+i=kETQ60uCMxE#Hz#`JiY;V_ZjbPZ^~ zgQ?@F>Yod5Ol2`C2lZyfXu9aYQ`=gp0o5-1!Gsy>+7JbqwRI1Le~sd@U!3bO$Xr}y zyVIinl~FI5kwNLj%l2oEH4pqc0~C;YoI!_jQ9Fkb!`f7)ecw`fG6pWSf&s*~5!W;1 z#d&R9dLk@&?<9&4&;~4I_nPO$2Q|7dy||R3a3jxhlAD+-PiHduS++)u7EdID`YD~u zmUL-y5zwD}RFS?(Il}GW1rIk7LD!d;Y}hRo_k2tB$fM3V%r&?TSanKoL`dBx?M_Qm zH{~!pTB~}6dB7K=YlMFo)U#>-WwSJ{Ns9h?7+&T@D=+nayG)CZUzkiGEL?z~Zvp%T%$Asw8k3_1K323LbO@BWE0&qc5t zlD8$AGtN%g<&&3xG(X@H@Ytr~#lgZBm%-ilVGiFXWl&S<3^>V=FgRx`Z^k_yHz!CN zIbF;cn&^px%_f8U!v|}&BgLt>!mhnxW?IO!us?$tNq>8LR9=6CwyqhasMN-k4d+4W zDVekVdqFIFnNNN8cV3mTk&&u|u1xGkt3Cd1`XHtiHKu&mbW@7EsiBGXq$@!pQzlZ$ zA$aeKhlyBH@2d@G{%k-@L_X1v*~aP=Dhh$2cVbxBIp`iADIItoe?s@nZ%CIm!97RE zR7ik?#m17SL8Ap$z520#Jn-?K_~9pH-b{S}WP)%y06|(xawxV~Eh7~PMfE?QP&u4l zaQIf~a?5}I`UM4f3UoH8(xT*@&JkCB=5}p&Pv_}8-xhm79S}s#yD61nEQOuR6KLlZT55;;anT5_CyA$5}W{u#mbc8Vd1zMYAK=r3-3UhCPirw{#a zHwB8^Lh zG$Z4Zi;IgIFofua*Y6z{+PyJlCm@cLs3T~m;WkDSx)_Z1D`3S>fH}lJ^0yNsM-;bl zbWwGGqhVlHe^NoXRDYtJe@*gb1T#3R+CcGp(!C2VtgTPU#PB;@jOVj^gizT!5=EoF zu0@^uHrJs7(6clkOFl^p7$iTgNMj)u0R=}vtWE;C!aUP+3?C4qNku9n-M&WDzu$fW zjSlH?MK=~dDfw#@Ao7Y6aPo&@vc%Zf7z$Mmz@?|*>;x_A&)!Sm_W>SQGDKq^vVaDb z4v?>y;xi7%=7$w&L+Mv{nG)h}xFYH-K>PDm5-;HSXyr)C{<@>vNKx|k7>n}nFdyH$ z4rx>Xy{_+4rvY=m#G;ScpMt+=$Wl=$5MYP>04%Xu94^g45N*G{mj=<=C2?mpI*oRK zH23kkgGBJZp{+)6Qmnm<8e;v|*HS=$%0Xd3rTc6Ay)hLhVACLUKG)r~r28#EAVfqA z8Ewa^5Wu57;D-U3WI3gKv&@PVx>0q%>gYZN!4APY_g}MB5DZV(Z}*NFufP|sekSja z=Nl8zefC4WV}*ixmtbvejppcG^64X=ztj4^Z zk-Rv;2f;a;Evwe+T2V9y!D5t-c~t~dFxJ(nSwGHU~n~*vUN(CLGxF! zEFZ*lOgj?#n#j1!#0qaWzE}YaxBOd+0^kA-zgZoxPwAB3N&!GJtlSg6? z{mhxJr*^X5Ytd7#wlrT~Urz!6JZb88Zj%&1h$0G}#n90{IhM=(1=Cd>Y8mo7p|lyK z!RIao_je?Vn3|dnL2t@TLh5XB;(Y{Y$Ad6$P7}O!T#x|PY!VO{RMQosdmX(Jb8h6P z1COldmAH>tgYW6#D%eTtpsQ=L56B?|q;LHikVssB|H}=+`gH*CMd-p30bJXKrm!=H zHddyVk2fq2B7GfOMa*ZCfjnVPKy%@LJfY$QF!GTu18wbaVgBJcEo6^Z$ExXx*P@wE zpSu`78b=k?GmzaN!9!eY*PjFBhScg6!>!{ z+4?3NH}Z7fPhGkF{&|CNFmWbUMqOJJ2X!Avalq`-zU7ZtgK`xj0vu}DtLw>(pHf&6 znzGyn>c21+5}@oc5P9z{RK(t!`?=&Y%S(P(@ZvWqV1}?HELqgX!NRDW?^O%z?o0sx zWIy|dGXRMzWc5qnaPt%yBZIL%Gc|ua7-h&{j8u_0nl?F@n4URnrz!WPFjz|cyDon>~&%3ftRb*gYs#Xwuk zd4Jm)Obm%;zP=v$ZCd&amajb-A;jzXP??UI2yOQIK10G5ZwIQ%AT*L|?*WCy8U4?U z(3HuJ%#fWm5|Tl$UuS@ofDSk^Ff5VQRlm-MVrGbA;4(Mna07XX#Og7jc4)}*&o(eb z8VD2*<#-$4M-W+pRgM%t5m^mPD9Qud+bg$7vn~Q2{mUldy<@*fLx(?DVMmXUgax}1 zIwLT!bVhW&6Lr?0@($+xQgHU%%8C+2;a8|9SZIs1;qMlH=mg;DEndfY)!g<7@I~g< zM7bgKCzn{^t!#~F+h0dnntNNpj+ju7 zRC^u@PzpJ#N>ge~xq6QS24)^u_}8y(E)QM3okX9pSna%?y!>OML-g5P((e(_2ABc| zYo@V^8{*TdNBP>Jrt)h9Hjokc&hp6TzVt&WPu)#(+dCNgzr11HW6U+L3_d0DAM{r; zGOj_c`j;Dm(%e0e5RV?y`ks{hC2Jcv5=?5zlG#~O`RbI+kEqLmK*6Ct;<>vfjuY!1 zL%+rX27p+qBNbmS!~a9G9)*!g+Q|d~r))yf%8ClvLdyLc&@SN33wo??75=Pz9(#_9 zqi@S8rmi|%s7J>p{!r${0VOyf3B{9Bu^@xW8?9!y~cUdV2Gbyu<0T zd#8xl4lK1R9tw-oG$8J|!QjeS%->IpH-@IPFx7s|#JbK0JjgQpBU$hk(JS~_!Y?g0> z0}1d4YjzcV9rCJ%`Wa3{M4z7 zX`Z)&43_!YM7;&(Z-V`YVOdoJ@3T|4_bYy(~a(qX8~ znPu(t@7L@MQ%zk~1k1cE?obkaqNhVb-B05SV`ABs8VpI%-mI{G>) zC=bcr*GmRKj&h>BK zC^V6s4_&3yl!Sgg9!)P2tSo*gOrk`9(q}m+Wqu|$k*!x?jTrUq!#cs=8xdZULSCE9 zt-Eym+Qqu8JENaJAJk3sRu9rrGDW40qvg<8}z6=-qz z0UMiA9BVz;C;5ZeGQI;okI8OW&n5@cy{ZOA4YB(=)vl$)9wGa0Ml0-$^I95iOA)gz zVh5nW0#JfRFnthjxPx5fdpdD;psvycf6c&>!KL85gQ-{Jep8yT*I}Zhnwh&G#vn-o z9qDIc(Q@f3#CfUW)MURFBHl2vlC38PJE)MfU`ToJ)jvc5F7Rnqd#)2dn|%DUK?g6O z+_-V0(rqU%@Nw7$IfB?teC6Z()8HkPVE+M-y%{btQFwTQ&%_$43fx@@1iMJvhPb#m zRNb6YAV4RVmnA>Vl)hX7!=yIr(?_NXb35+x6UpW!6 zYCngFmwtqmhZPFVJWWIlN9yr=Tvgc}y20! zPy{x}q;G!wZ!d#b*}9+28%K6dt}X{WlxKLa7W#Q~bY*FckL}<2&7ZkWv~wuIugmX! zks$q|OwF$nZQ2!ITzs|gVKBOfu70hj(lY{vWI)2JH3w6gL${bBgX)44`9Pg}-yo(5 z5xdmYyPux7fzFqDxy>lj8qDG)NTmq|QwcNIQY5LY=UlW87gHvuV7h*xk0FtSUH26# zI+mHo9$^)Q=5zWp*|+2FM(uycCI#EYx%O<}-UU(5`w-5tMNPhkPdB$FmbVWV_i)*q z$4^s^*BSTw&ARhNm>v?8{5&PskhS_HZR*3Z{V7vIf|43)XHx@YpXcv4nIG@-o2pmj4p<`)gUZoTWTXcH#paczGpfv%+m9n*gh%l8 z-GZa$_w^|ZI97+`8PqC6JunHF=huOA&8SmiW+7i7>Y^edns^E9diW(3Dt`cX-`po; z)6qDG5hFik8HxY94D4-)fKe`=^yA073~kXwY)K4-$S7(r-NTaX%3EnfE=?9gMO z&Og=TW2XtFL~_(7ric7(_ux$Pu8DLRM3;VgVI=pqVE76Pl@>W*;-O*}ACC`>AsY@P3GSk9iDYJ9R)pGC>anIL6X1b|#&KgA~Inlk>ld2;Qnl zr9LyMN%}sp%R~ih+$kuJ{Q(bRSz>ok^N-h+SY0IYT5I{q@jtKqKKO{yOd^5fQq$uL&&>E1< zZiGpF>(5{vuZF)a1`#xY)sg>%AsWp@e%XkZCOC1tsWZdvBqS5(% z%o`*`)@$HtzU>9`&n8affKli&qQyiLgpYVc$@Dur``4!*-!xoE(!i}ry=r~0W)&&+ z5Vcl^+q3*;^Oy5~9(NGSd$N`&Mbq;0qc%$TNF0VU-hZ)o|8oX^y@>Zy!N;3}M5Y*l zL=1h>ti%63LEdXfQFhJMVT~LO74dcxftP`>j5s(R%!^BYlVrWw3mXUx5o^B#@IZeECxa_wOGd*LbYR{SXIUMulWN z+@qM#dBk1=<_HfcVPtDEqI=bzl>X$r?2S+Hec1IYBx?uE@m!S+k$5i$3Hyn7SpW7m zn9^`p==6#&|92P%{sEm=H$yVz=4Ht!@75{aFyGlGaP8T*^k#?zzYy-F|>yU?mnY4JdLz&raA}D2Ix# zJTZ`@L~Suv5$3z1%9f!dfyvmM$)E99e^&IM#PH?eSqA%z zhlb1`3RUEzhe79lQe#gRR&YhGbV@z9!^&Jn ztxtoF2dNl9CbW^c)U37=B<4)GD-}!u5XP++H@Ho=g<|+Ti>md=Au;d;>7VswZ*M{f z6Ah9gwI|jM|7r00_kQ~Ox~?5@qI0$u{l{LL>wBWDUF+G38x<3zNEN*wU6Za zyZ&ACwwQz+KQr@}OFDiLAIY@if0ehRA-{k(`ExgP)p;5-Y5JGEmtY`n1upvI&;6fL zf^J3bi*uTPqHB4rxQ-mGr_l8DfSr2&o-s~IbuQk$gu$}9AD)!7Si zqXrA7T0AO_K$OkXZ02)g7?-`SL2fQHcMebLcCK5`4vtqtrM)q?=3NZ(@u z%Qml^bID;rfjSq@^GLyxx3W7RN+nBSABB)!T5(d4 zoUi1ZUZs80v{wA^R!R%eqUxjFXBR|8#+yS{%~!qIO6r_qgjhK4gwDD0s@M@H4`E;Q z=PqTk{VHLPOPn)S?G<};zT11O#?9KE+EOrPd&o+!$L-xfww` z|ASAd3zelYhZa4%xU!69J>T76M=xvE9P-{os%GF<_%B8Ntc2AL?$svoQuONs0$g4JZ(z_E; zsGa}TWCLyH5WB53Jc#`}!2Ekp9ADE^Au(~)==lSj5HtymiRR=tvq6Fip>a%nPeLeP zCDFT`Ka*>)&dVSd7bxQHeCfT?x>8>J?4;za2e11f(K*V|=&bWZG{Q|HurJ*~Ni>CZ z-m*V4W!a$Es1WaY>BiM3jpk0|QJs6a{3HENmlzZHdLSA1tWl`RPwKAm#Y1t7&*kK} zYI}~+ADt3xe>COVY`W#nUL4}nXwAxPd%=Xk_OevYG6$>J`0-K1%^ofFJc{p!*@zo=yvu$KR5hr$ZM<(%#My|bZ@ocTvkH|%?qc%gE z2DE492^+5R2|^L#wKesta-O#KU*_+*mFquu`tdbLDsbg(Uy@A7YO9O5hj~|O0Abvo z>D=l&H}l<>W1f#q741{pU9i3{%$@bLee;Rj^ty)SN4Ff=r0ZOEo2YM^tE9rx*7}^^ z4fPDjuCr`p>k5h_5|D{}yIW7Y_SSAcyW)pgH#D=_XZLO9FLCgdWbpEKFL7Bq zW$rrMOFAty%5b5~TM3-&pOa7l3S#%`80ye}hcbWSyuV+GMRLb&`ZyE;VrZyDyN5Bg zd`>Hu#i(Ef;*_|I$lsh})MN9*d)8X1q+mW?pIeltUu4=wk8be!E=u@DT$khg2N7D0 zRtcZIps-K??sL$l3w%p_=|2KsEvH~@9*3{m-)bCu`0TZl47|dU%WmWwe2{e$dV(EL zs$J2T1`e6Cg=|1@$D$557X+B(rCoXij&h&@_vgl}hYyzZWlT9JGIrMquJ_5;w#wRV z#YRN3ycUin*e%2-7FDvNQf^jpQJwkblLQ=rxZaPAmk*I;gGO=ap2x`wNze@30GrpmS>XxS?;Vn zJmTO)&cTUx=Wp&&LE+rR`4wv=Piy$x>d|hG)ehK*v&9yDxXLN)b>vG{&Yu6>SP4>1 z4!4AFNVdCO6BfXYOy?7ro+f>F$5*)KDm!aSuguvveiQVWkD98%g)|)|W7_yLtE?vN zFM}+!EHAWc2Rsg1G`~L4955Ie_Vm^6^ujgLg+lkC#cpC5tmVF1zt+*o&krl)Vfq2RH@zkhPdVI6I$gEOSln$4_8($IewfS5r(byPs zR4wytt8m&aPrvy3`vw`0!p-VZw+(*M`n9B|$%94LxT~2+xu2tlx{o(0O7zHBdf6`E zo*PE3T|d`+ed;1k8n*CT!R~Eq!OgF)AlNgU0uxcZj{V4u22T=|UOMnOaqrcqvjrf$ z_R~H{_=>%;pZU6%F``U z@t@TG&|jh?b<#)=&co(Avm2cLqZ=eDS#~TK*5uW7`KzzW9F?CgYeWl-MR>LuC`!|_ z7zjr#@;EO_N$#25KNS{8=ITuyu+O)}n8Dpg5n7YUU*0sY)w3&1& zxRlOw8z^t^mE6Lb*tFc+rVua9=8e>AdZc_PL7eNie;-&3$Sz~LQ`S)yo@0c&ewt8;5M?%%ETXAG1jFtr# zy~gOcJSI7Zn!9La0vxONZZEi5zJI=;QKmuUGOL3V&~+))Mu$kbcI54d>QL{vli7ae z!ReN(CD5Xl;KD2U2$s&5b}5qb%k$R_4=iiw=u9@7UsZ&ZLR^uAbhS}E6}}^;*|Z=EKv;CAqOdc@JJ|~%q+&% zf=HnKosLVA5~634+nKz_=Q^mfqz~!r^IXk`N?1xQ`xJOw0_V<0y}~-+vDTwa!66&b zTzM6zbov0A9FuEisf$I2cbva+yE{+Gl;KkFr{+mUkFJ1%ucB+|{qYv_Puj9$>DQKq zoG|;&sqIv--r|1}$@<`IZyAC6`gI~4Ic(Bp0x!BwDpju~2HJuEHTu76rS(%KH{-(X8oMn5H^sedcU|GA?naTmF z#r}+}1JY2+qpEoi?ZUevE?A*y%!_l@!@g;Rf?5=$F3-_lBXg;cxEGE7lvPs0q$`ds zoaq|RcdE|X=4&G|Gb*YH4s#vJz{Qn22Y`&Evnv7^jd6*k4DtukEL!_m94>3XlyzL1 zWh3KsJ|8dQ(bVCNOxqw2Op?{U=LF@Si2FE6ApN(a_;p<%jQEwY__~y*GBlECp3$6l zGo*@nW0e%BnUtY=@Mh6vXpaXp-2()MFy}3UYqSuEX zUd-f8z2A03PC~qE$J`fNp0Acc^>~uE8q>0MTa(M9Uv_H7yDVa!?G>gcMNn``cUFV> zZCh;G&qEu{=53D~-!u6J1rRuq?!;Oc7I9c{A1Zi@7Ya4z8h#T~iq5Pt_k-#}=%qjeM47 zLB~Fn&l$*j9!f(0Y;!ju&Ge zCUg79d2>PatngWkCi(S&V6P7)<*s3IHZH5)ZCp;Xm`py@-EJI;}=3< zi|QTNQOaF|A5Y?3zZ61w<%uVYma?+T&QVZ|#kcR0CToR~Dgm%CDK6M^vTDpS-&hVTuher*B&Mz1W8cL@ z-A0HuZk5(?M1Q8iDhy6wWiA|RSbttSHl1`x;ec)rXUe@y4B15AH;9uK&UvV-uOL-c;S{ND$SR47-&blZtkqVkKX?xGAj@-`+os>RofD<0UI5~+WJEc3rnBx;PM7Ife8dc|TFt8_H=8V}J)?`sLX8twPypK0SLI(aCh2Y+9b)LrR(_Vi zj#TQ1<;ArgEtF%A5owFQs~Bq@je@X6Fx6o+{g^zh&Z5%F|0)+hO`&`9cHgs}R+87( z?mq|d&x=sC0270>2YkoojfcN`B`BV}Llv?^&w2*6NYqB5$A}GaDmY}%{Lwg9r!689 zZfo_>1Q9pF`I0A2r8+?8Fy6oe!bCnJoECqWr6F)U67>j&!E548Q671%S7~`-F_u-B*_}PJA}x?Q7u^=?SI!i{#bZ6!@;>~Ir_Y*+i1NH}p; zA%03TvsrjV`7?5e$i3@x`~BhG?OaR++jkV+28mSfm_|9G&61Y5D(zRQ%Bq~Zin!W8 z^7efT%fNk#es?dqefx0#K}@wFs`ck@SBGyxTH`5cF<-9dM)&4StLfqOfJJfW{3A`S zMb+IsS`>11F1T-dZm0bvezEyMcs-=!GL{EGaeC_gLaljcXS+Q}k#j!!NCA0EI4-S+ zla<>)KNNTQk{EC{m(sj3#swHbT5W{b)4Frkmx5_NhVC=>e=?s;hW*<3Chily8??$oo*Oc=KuWxT%YWz-bz747@$~ZdVeZzb5 z+Pj(KQJLRIzEPZ$6ghD?Wcck>txUJ){NH){(1Gk<-YR>P}7$~!fy zxMNRnQE4x(O-*$?7?Qntb*@*|{pi~>?Gwbj%DPPcliqMZxt{2qTgop^v|E@I#Dc4y zEGfqo%N)Uk-S4_>nYWeWpN1-`Z`w8#j;Xw|G&OZC(f2t=FrGY9Xm7hPxmma4yUlc= zaWZ`33^_nt6b%PMlf)qDrhU&JN20l2BkiT{7fjwLk`+J4B4K4(io@ETYJNb-YlB+I zlf66@)pc$UNpu6mPYOFKeVu;JVyDGY)Z>UoDuDHcdfHu|WN4L%(O0rds^M)=Bjjhc z_ueEX@n8)4r3g0$Q_4(Tb-aTs;J*BDvrT)VIo`d@>*(-eNBY^zR*oD3j_-N>6BgkV z0)Fy#CwS@ihJa3%oI8;>K+8j-Ftk z(lW0ZpRm5QoeWtj{ES2{c8V>lkM^d+)wW?gsoiz<+3LzJ*&Gopz3KIbmp|O;# z)Z?Q)V*-=bm|OlS;W)t;25T%Sp^wkXt(|mYrOFRw{7kNW5(*vAc5R@Fogg5-JN@G; z#gB84i{f%Sg}{!pH#+NXz={RAfzG&c zGfuGL!_Km0>S+gl>4CQ-54hNW?2p$veqZD#yPR50_<=MecI4~08)0AO@I(C?S81GE z;bE;Wu{Vs=r~)=BmPhWZVQr_s4NPSdbf*_+L0JcEEpv>}UHrorJSmIa2_aPDQ6kxd z#c(K2d<$5iQ&!r`ycQCod;4qpZPKdDtYQ@0y?&F;D)Y@}0*v{I@|aKZGz}gT6dg~4%r7Non;~RLGIEceK zWwQJi8}dJ97VoFBg}&`s&nK5qY1!A*FKcgVW{TM{1y}CW#pYp$-V&3bDPXZM$;q?+D)SWU3fj6|LXI(I4*Ey_^|m+9MgFDxh_< z(x)9risg-0oWEdX@+ww`k5*{c>`Uk)lf6ouoXmTn4c){6SkP}?A%V(E{YTA7pGJ{D zIIa02daV+{Y^*+F+UKD3`xn8b|Er!-;q&LujDUMOYJd0pQ2swB zbu^^G<)g5RR^AWIQIkLwr@Go>iwyf>@MhPtJFB=!u1cdNp6NE_FZdN|EpE)9B zTbpgWMQ4AfbZtV!9S!9zLZQ+#5Iy@BpMXdF-}OtL*tOHj|MS)V{I8@t%)HcrVAJV$ z2p1&D83Psq-Ll~@7L++qPhTZICmYSo0KLzG^=n;~Sid1y&HqG;VZi4MyL+*#)gf!`FLIFWNRM`CI!LVEKM|HZ zKP=+;;e{j`(FHj|6g7L*xS=c^YpGyZE#TpE#3P9S38EpYqR-fS)iT zKS>)(&QH2f;Cbl!#`CZeWP0SU1ARh6Pt<<;DTR=8=O)6auLvNap9csb*ik^pCH-@TQip^sg6o{EX^a5a8GMhu& zD}cWFHey>FtuEzH7)DViye?F<13K3|(yByw$M@4Q1HT`97YiP5{Ef+-Bm7-Z zcA5zhJ-TdE2Ayr9qx1pd2OYhww}CfhBVl^95cI$n^tGbhA?=jDekswN4#e1eo5@$- zu8N$i+i+h0aS5>e9FPsYM>+*6FRWnjB4wytBx{cLETcxaH+MmSQ5FO$blXR8$6S}# z76uDbHo_mHgR+@XuxWc76MT8aM$A_;%r2}$b3;3jU0@&Bs#^?ui~*ExrjL}Gc|&+& zCs5G->kqnH(BSk=hiJ-9$O#nDAAB3czutyvjDqTEB=qJ?8wV;t8Y6hDho3&4z1tRJ zGDi9dMKm|=0mwcIT3Za{u>se`k!s|@>xYS_NLC_tf$q;BdbFETY!1lZJJ9{DUEWXY zWxMdigOy=!^X}AVpr_URImf7qjN9Vny$QfM&AeT$aS(BUcI=$aYld^{qYuW}fGP3< zR2)Bm_P|%6e8B)>HUi2grRIJOKmoYq%fqO6I{<{1ERZ{Z$mE=cssA>DPM2ONXV};CP!fQU*nDQ8UUG@Fn@v z?eVwd!x?Fz)sLgO8(@?8?IwM1e&YskU$Vk-9%zz-!~z3Ao$sG+Sm>@IySOx7Tig5k zruvxk6plK-@@mfm^EwqD2S5WmxHQAlwsn{9S>-C;0BXpanaEqZ!xRFJA6SJ!8B4!7 zZW%~)cc4Sr-7FoPu?0bbBH;4Kdjd_tWwm-o5x~Uzw&&uO02N-++(^7uOa_qnapy(O zYEbUDk|B(KP_l?L37>}5(VcsXmz38gZVNL?h5If1Vo-?IT93SErTIfu7SzS`FCXDe zu^xxUnmd+*1xcUc1#bW=f`RN}Ng41jAu|xqU3kRKR?pj2mIB!aA$3=#(0@9Qb1SleB z+hPT&L3WM%W{vwB_wO@N-&$DmKY+|s+<>FZwI^C;Z8H+A7%-qbn%_&FJ)Q>U2oqom ziBvS#OM-Y&YB8wYRY9!J_{^3|r3=>XP|nT*XFc?==e8C;1laU5QUj2TN(Jgf`m@LE zw$)o&#rX=~`?ED$msdf#hjg%KEq(i@FxUn2Sy}QRD&gTxxp#3GxKvy_>lpuSArPy9 z>gkSwC+iA-%h`S+|7AyLKA~go`h7>cDn$RPwMOU5)m)7XqH(S>=|)1Mj#=6`Ul;D8 zAAItj3Sk$7QqIlqAn#@ZV&k(V>`Eihck~>YZlzp+ayILk6&dX~a#(?e%Q<>V6`Kjmvy zWUdI#zVAYNN0h$nN3=a?oO%(MH7`K2Ob%>}=~s1JoV}s)3RKU^l6*}RJJ6!*1~|0C z+l+^a+!z8Pl%^6q@lUpv1_G*!61fck)B6G>DPozu$tru9{dAJl%AZhsYQy|p0@YkX zz2uiT$avB0qCvM*vxcEP(WvfpC31JlRGGhB$j{Y=7l~|6dmU1Z=ZIS@I-Ml=d)vCg zPb6&H=j{&Afd0k-BF<57Jmy9?DNPz^jL!hxn6P4ChWi#B`}2DzviNa+3otA zXl?29o8tLz<^9_oqCZ|PJ|fHPVeoWPT(n|~U1FLT00=xVw}R)39hr>x%RtKIoK{I< z@ivP_=ERvRXDRqPKgmD?ajBexg>+3^?#)bvv!G^L3>*=XXduXC4QF^u=Z<9_cH1pc zKxe4;u3U*f2S@yZYN>^$dbMU$A%{k$D&AIL-v2X;Vtm*zo^wMcR`qnSm9_6a^8D?g zKOi1@C@W=3A1jcYSD8yJLv!N@lx)l%m~+=cQ}d7etF^X~KBdeJ=4MJ!1EtLC3qd3t z`i@#eI^{O;S<9wu!sIvVI&iTt?kIzzCxR=lwfOJIe ztvH2E0Tt&#wM)6D%rvQbFD9URYH8ntBXw7#e4ctnaMq*wFY9-ij9B<8K=h^SUZM>^ zy*U-u7K^IM#zu-wL$Z>0L1ZuXa`GvulIq7yxh=i|KlX$TuOWUOQv`NuJ@2JW%>UWa z-m-W!6C|gLKb=3x2IJLvwQe8(pU8k_8rjSTgq#og&>Wd`^{x-77bx5InV3KaR(72g zYiOw6j^zot>?mNiNV`=MY3#$eC~fiCo`fv)9BxcfV*M<*ODI1-sc7)MqOB5l|n_Q4jg;ja>XWquBzxHn!B7qE2{VS z*G}ex5kQ}->SX!fK&e3wVx)?W%Tw5=ka4|?y@~Q`TqShiC$cKk@jDWASdj}w1(iat z_aTzyjlOL32z2V|(NJ=+Jb|Of*}7U;KEUANWNu(RQ0ZjZb1{#>wX{VSI5ll4%dIQJ ziPoAk#S(5>b+%w4lZn1A$GU;%eMXjDY`gt1kv$~`rJ;fchsxqa*YN9y}-F z5%9jdvi(2}AT636M=Y3(yTzj665;~^`1)`AbR2z1B4+^1XtT$psxSs9Gb)u)qPpeL z8mu?kswPHp4I&OPlC$l&tb66B!L9J~w|)QIZ-;|#*asxO(@3=tb|1uV-!-qQy??MkajWvv zLRwc&?x)VPM|)3R$Cc28Kam^97o#}?QM_OM1x{aW^w(G(V8+AC$NrD8w+?Ii@BYUH zky6A!eS@S5N+aE1A|Rl2gVNnGVt}BiNJvd2rqZo+r+~CDx&{)Hj==_u_&r~~)%*VF z{k^W=KU`z5y`FjEaUSO!FHYT2z_5O)8Hid#Jgdv`Hv+i`ce3Zp9W)7`^Q8i?VXG*& z0V}MDWJ%D{LgS!N1`qJC59iih^$N{H)j{!oupu63->aaPR)L6!2Iz7We^v9JHQ>yA z=wDdU16{9XN=EGk(%F>WUI9JxuD7GCk4fQy{Rodzk>2^7AnlFIDO5<}Jqm{m1dyR0 z@A0`n1+~4C=;?L~rt5>tvH8AZ;PTOP$&kAm10(ekg9{YmgJu zB>0u$&*OVZ8648jN@7P(`hz_@@{TYaGcBhQMF>F%<VT^4 ztf1O>)WX(F@ouum>75<+&RRP+=lYGRw%^9bue4fqsla>^mh?(TQ@y1I zLnB|6T0|y~Qn!w7J*(8m&P@(Tmdd}kZkkz`%`P~Yj+q#HJVN83eYe-Fi)dcR&fJ;OTd; zlRgH+BpQGAjnNro=e+aO6@*>%U1 zU{1}tu!96m=pnDv;S${kkVTi=E_U*Vo%KY{7?d6;07m55dxOT37yov1CaJ-VJa{n2 z@R|q6^!v3$FQ~R>yJA$*sxO?QEFvSh6&K=f)KRFFtaU51kKKB>A^;}QJoa_DjZ*?0 z5uK^lhFcYGOJ|sHt9-kCix~bwWQKyAd6EhGQl~lYfU`qIR#9W1>2=!CmHstX9W4WK z%|;(Oj(hRKxdM~vBH9}Ju7^M%o5$%IG?d(Xed&Y7D#&YO(=09r@3w=NMVZM98)ou} z;>E)<@Vzq22UDFQXhB7i#Y)fvm>DpB_y<8bgiE@i%AB1-b|dQ2ge3u&2}+U*ybf;# zZ;y@r^Qmr-(+d?&5Yz(h6ZbJnnzbR-Y!XmPPduxGv+tcB5o4mDq zmq6O2;|c=E@+A?FeP`%7b*#`e-@6Xbh!3J5wFqicm=Ql!k=lwj{Sr|hw2*_b{^t{b zQ|5GPD7T@a0?j}*W=-T8R1QdvqL>I}pnwAxFlg~s$7FodpJ83~D^7f}*L|1|lxtc6 z@)>n5He7P!xh3C2#DE+1_Pj6DNfq*}JUWLYxg~75J9F#=?+w-Z`Hh?XFf#rpqEH8L zpl`ZRM8Ke?|2H2;y+72&1`y0KCW}jJz$^KOFy-D`i z-nRv&b9>(s#OWX%L=JRNg1FF#&{ zH;cbW_^a#)01r4JNTsk^GX&Jzcmn#-P9&gaZG~>X0e!|@Y^gKm&(wmu77G%mMOOzC z0ZP-VW#nr{>_6}{n9=JVXzgW9>@Q^9_fa{%8~A!(M9@B$f!B};`XP+XzTKY$dk7kW zm%dSOcj7M0jv;lZTo!hz?AHtop)>Deed=cQ$f2~xm(cd*_2oNMZu&SSr7f6leRtMJ z3j<)eMtth$n^5GfHf`{}s+_=Q@^R#Qx(3xlyikTtj`sC&w_)jnZ4=OA;i*`u*OoPG zGJs4!&*k@l`^)47C{4{#@+;Lql&6TC{BrTknKkbZRuWbNWySLjFQYTBm^_Q`Ja~E> zGuxYbyvr#;+C@RPIDb_#X}#VfQrf_4XJ@dO-}XK)21ZamL^LY^mgCIWj!W+cJ3E)m z$K}?&*^3Vf(a8>av|lkotuTy1S{au+y1Y@5w0Kv(c~qdaXF1q(XAzq^ z&>nilB`+tE3&y{*y2q-s-t42Z-*pM$o#a!SJX0l;FNR=iREp$R>hqJ8!K?J~+iFhB z46HLPQ>t03^=sV?l$oSh3M*AYg?WhK%F^z@=lcR#iaR7dQb@`@P*}j+Y8<%e z@}Mi{oug);{KMiM&ANO5MDV*UsP}locjvFRMzcpzOj>>E_C+y6-A8X{Z_f8t;>;|@ zM?spZ0VsiM`NXQi2z1C&d&md+nyx4{?rI0ZE3T{pOyvr&Vm~~(X`qSt;c@I+jKw;zcUC@8kKR-|t(^x4v+KR*cm{5E`S(H1|EGOWsXD8**1Rr%wXaBxrut%<=O*NsV5){on=glJoo5TCWxm}#){#K%zO)D1_Lm&bvoDG; z8r9@&Q|m;!ND9PNm%I3Fjj(Qj)+=2m_>)@l*E57T#ydWf>bg3L$Rh)e21a~iGFM!#rXFTjayH@DBefvm&@de=A zED78`+~b~PT*KlCFs8q?Z^7#2E55vPTeNY_cL)8I}Pp8=Y(@d*@ ztl`RaRp+s|QT@eL^6gwFlKmXJcP5fzD;<{)#bP&>$M%~e9WRsBUe>X%R_aQU;2t-! zHxUZQ&4>FN&0-esy%uNfsKnGr-U_n~eamEUQ>)RfqSFgrplBv3WudW#+RsMhe|b`m zY&ViPjLza6K=@G82nW;(_#q>;+N*PvI%4O$^cc=<^S{~Ou*+)q4Q-3_rJ5TqEo|v} zL+S0MjOeSLPNMH>UpB8b?XtR4zxvE?3c$D{9=Tl>cEBwR7n;E0c0FJuA>pWpjZOK_C~Z zb}eD>cDO>L8)_onB1yp3RYj*j(pn~sjQ0&TWXx4fcZV?a&}yRKtzu!ES}nrXW5$sS z>-}&+lJ1-#iWKLMuDu%8Zla>;Jb{peQO3!52T~9cowz8*-s!+F#VToBu}j0wZJ=h% z?27@RnW6RME}M$z(T05Cw`Oput)^i6T@pOw}>k17{!D*K)6UbklRRcJvz3-I2<@0&NLYcVum? zZ)N>(iWgokMFHV8ryb~b(LB%H&;)W6$d7^5de5i0*@Fbo(_Ut0<-c&=^E1qoEh4`h z+n*30kTt|CV4+SeR0;F~i|5YBD{rxhZPGn2HwLyXYZ>#T37|I$i}D!9;NI?WLUx&A zhvRso){Md3Hvpcc-c~~Hl=y5vR6i%1T|Wswo4OJBP=h>skkdMLzTXUv=t5h+T^gy@ zC=!2PeBYs9=3#q{yEojQrlzvYDj&aN?VWMgZGO{-3^P4}+za4(bC`$~jgZi+TkRbV z;r}*a&ts6;Tb`%B+EbT+vKeXi#ah&@wxzc77p)!VF}N2aT)a6dUf(er))a4QPVo4t zS4k?tjvFIcb}0JXTFUeW-OA`rH!sDJqO0ncfGFnNvYdiN6``7L(I%fQF| zRfrgXM@$Sq&DTmn``G6wyyEln1*Uw#eBFx2H76MQ8<%SP?8^Fb`-hf995f6L4hYW+ zCBR8h+(*W2$y93Ec^3>9ZrH}Jr1@s!wmJ*yb~YxsnX0y8u(VFgWwio%xc6S;l-v82 zhi~rZh}W6@!y2y<{VW+NjA_dg)N7f)?AVc3@S> z+v8DO?{eWPjOVfQQtMISBn*oH8=7)$IN#=uZ0?DSQU6E0U$TTkQk6UJ_EvhUZ!049 zsy*kQ?8jOXx~0)WW)x^ks)m`Mb88Y6`w>+J4rT2b3WAx;;bC@GT}l}nFCh&)Tfw+3 zFzI2scw?Pra&f;sJCeu6OU!pOrAl+^Zfc8V;w%)aI~4>D?Gs1U?`M8V_EV3*JC|%5 zXnB6U^Gm|tfFQwpY)|Zipr!bjG!aD2!$MR$BE%Sj@O~x8%K#*?n8(ViD)Dc(TqM_X z-*5DbAj@38Fs^xj(mFo8H`>iJ7%w@Zn&ijB@x8yCaJImWaJPJQf}j6Uhg{k?8H%m# zm5NTA#`T-*llbnM+Sx7ZqXu)j)VubyyjJ{US6c7~tPYZb*GAlwAuFz)3k>ItMR3jU zsKjfQuf;Z6!(~p%z~Q?E{8C!lK=bIooR3qE;G7X5iN#M5K~pu3Jj;I@h>6cb69u00 zgN9P(J%jOAG_v{%Z19?pp*Chzl>@SX?^p|!sQ_bbZsP>lEwv*b^)Law?+&KtlElMf z`C^DbQ13FjbKJ6vTVGP{ZusKjMn{U|HSLf7eR+EAJ1qPja?>?&?YhhLL2+^QnxI#=rK^ah$oPYI+jBt>kBAw_M|XslkyM1@;|=@ z9Dxq$DariMYtXe58lRvRR(cz6I;B?>8mez@*PVLS1&+u4I< zMf#QQ{V;BJ4=?;YD}#86N6ok7OqAKAKTFrN?8+74Nv%9HjZBfUa@vM%h5gx?_kLA$ z%1EW@nY4IR8xlO%J3K6Gi;)xb+?mLcQa_k*yKJhpG}YU?8Co)TAQW|>{ln=(6JJdq zo|+xpqG~?e0KDS0|K?u8vkZAU2l> zz+QH`9HBWM@U}PY&IK`7&)O6Jj5NWF9(y#1O(L>QrLFL0(d&@aKH;z9Y}~l&6zQhJ zf3IM!@>ZTvB~OT4=WC>l0r!P&{WVV{2nx@ws+rSHC|dBgbq?FV?m|;X3(h<6chka* zJbJJ-BOvas5Qzb9p)Hu&W7HHK@p}lmF2aOQ{28wQb@9osSQ&jIMLNo#v8X-wRV^otKuFh ztRkn;MVKjU<%hM2;@RegfMg`>U+;Zyr(z+ha?vs)zcHk9=1Wf?dx@Zyl0r-dGt3!-V1nzPH~HAT|EPk?F_X~V zt|XEQz;b+BSYmu+E~r4C3?mGVx3 zY3mvLMia@u)k+GuP)}SRf7jH8By0Bki9O?j@z=LpUl=0U%nCj0R? z=mV_*N(Qoks+Q3=pHd$4_L%?MEem=9ZY*Eiy=SNUpiy~w-As0Yictk;Npn4=qc1@)R= ztzw+J_JL5YyywY8c4<;%YRhTEIQ6CT&c?Y+o$9azsYO`%_qA9HSAd=V0%U(Z_XzPP zu*4xs!8ZSS=jW>kb@1Rwg;>lb$6NmXXsYA5GuI--T+YXBbcxKZT$ZD5?VZKWV8u}1 zd~}?M!KLp*-Bn-`Piz`_L8R;XX9&_f>&g}i-D6dc>|1= zjOG_33sNc?;2ooK810{y68WByzdw`FF_K6_F#Fz%Skj-@fZPR~^+(e6C;l~xA@_j@ zyu-pL?|S+_s`+C+5LJ57#%VXI`|!^hHhUudvYVWCs1tNHXL-~ zKp3qHt)+tJ8Ch>|{ST28kOGE@P%n_Y5O5I;(_Z`IZ!7=GJ+K~6hRP@cBA{6B85E6R z;+4q@f@-JFGq6lvIFI_m{9C5|{^o#>&{e^ybsPzl1s^|kpV;81X%X-hL{Kh_VC7a% zKUV^OvK7~N0so8PX>fWBLEv}8z5jHOpik}r_qyAtx9Vynkg#_)mIT~?J`3REL^4Re zjZ-8~G>yN$yOHKFVDZ&GI_#J}`0~1R<{WXbJUMA7-oQ-V;w+Fla?^cfjQuI)xs7%S z7{%XP_WvUC_~##mFACd6r;k=Mhxg^O)0W#*_e}p6|?$Xzu%dGT;#l z8Eu~b$p>5k3xb&We0q!chhZvB%k^`L ze=hWM2y5_s(nB9W0?c5=BXp&|;aztyCU+_v^mShVP3=Ot3zFvY)ky?R*3|xeFkGqH zS111*o-y=~IRdw88=yNN+R0{e<6p4`ii3eOMJ~a62mJo?I?CVkcn-y?jbz1D>Uf!# zs%ZZFy64atST`a%vIn$EH}#hQ&!$GVczGaoI{EULH~T~6w^pb?Jdl&Wyywlf z4D*+jFA1F4lHzk#sBGR!r5Kc)3W*MNV4*}R((}Pe-or6h`<@IjXIuQ~LZkP~w<7bu zjhi3F!v)UH%GdFVVv-CY{dfSy1Rd7b;7kDcNkXUmGY%-EW`HyeQBr`*pr~5)#NyI# zWAgVF^*{i~@b?orPv3BHz9mY+0pA(cwND&^pDlO_dGmunTPHu3{cn^bHK%P3YgE6eBJW8s@Mu=OZ&_pvXw3WN%Gm&yaYBAx~5b$a$x9R#N3 zw+2wv5^^~ycE-1JU7V^ie#U##`T?B({e*!>0$QbDJPMV7+}IW!F17cdS9!U^PgMKH zuI!0y#&JOR(g)3|*>ulY0U`Zfntm7g8B&4&h&C{SgW15AF!evyo`nO5h1*xd?1Q7h z6^eMvvnp|sl0}q3>C+`vR-4$-&bqh2Q-67$orPrY4C7k+TbX#*9r(NTqG0Wg7upAX z-}@hM0NhMB=oUFg?0bck-eW1t7^(YF#Y|kUpElM!&n?I5R@Zl?>bGajX>-;yjBE#E zbu*T$3b0f?d>K+cbk-(oCAB1bRWUEC4Q~30e3I$+)1uhk>3%E1aw-grzrjf}%Kko> zN0;y!>1^ZknCM)21J&Tk(k50&kN}n zj-FdnjFpUoDAsuf)#ojkmZ@CJ^&E)Zao%SN{q*XWdSMUMMIBIDGObJYYE@qPFm)N!XmQ z*EG-t=g#v6LEPdYxg!A(jXNY?+qCrRSE8?HEi*{@RQiEiIb3hRc4Ok= z!}i3JAbeI}UVRG+2CTFh$f~BflJw>2$0Ff|-20?%&gI?WYg%=@dN|vS&ML71o7tA) z#guleK_ZBnWq!r6WTI+cz@mL=``%VxYz<_vj>7_6H`ZYnzO+#>=OD#-=fJ3bb!#DT zX5Ay{EY;wfBZIS?fGA_fk1hAmzj<%B>gBTa8_X3ClFVLn1qvsIA>~q+!-VU|0p!1dG#_IIg>fRK*$Gm!na$T{3%+$e zRdp~HX!Vq1b1^`#H_oh@^^c;(Mn^q1rM7~lS?*Y)dD$Hl%!rlgHhbZWyIa(8D3`Yh z(q6sr5SLn0EZNNaq=zgLQsv)5cQ#ORoC$-~!=G+S?{-~J^=jQYi>WGC+C309>`kea z?_!kTHfhHJR3&kmK!=EOEj8z>7xo=&Qp1>`65M`Jfn0j+wjAYOb3EnpUAEboEo9P9 zB1Bw%p#4GTju-*Y4#T{D%`><;xf1+RaXdhY6_r@}wk{zFl>Rdk^!d$=RgW#4#aXltj{nuxaRgKsjPZ z7I|~NH5rV##p+fexX}_`Ig_M|7i)gg+p#!vH#v27^8&+-K8X%2K5v4Bsn}!wKwJv`W% z&bP#D-3~9l-05M{nr+n1EoOgie?O(0PH1&kBC&s63JCYo7VmMDW?Uugov%`lUl9}S zYS|rrOdE$5!(ra;)IMvNm<&s?p*>e-Z`%3&n)?ny@+WP#$M@IghDOn$&uF~&M0 z+g*B@lW@)>bYM1Nifrn06TxUL+nD*> zt70lL;w7okma6q2Y#R0~>>16{Qq`DUKVLbk#d(a=eF?fZaq2eDvCi4Fyb8eBiZ`LU zWp$1puheMm;;rH#!`Nb<#*BdHyY422gS%6nBLuZ6$zY@>&dV@!5-Q2hg}2odku9plOfvCKWMGK+w&f6>mMYnXa0@Ht&a zA=%!N-8dd?$ESMIL2Obo_eS*v1oidzf*ASHuxDA)miz;=NjJPF_}|Ow2^22Q6VAkE z0t|}5hPtBW3Q?^-D^@;Ur84fw2ZFCx&Lh+d4MQi*?hd1QMj+Mu z22ewH&#$iN-_-I;-qj1WLJ<(6#P5Jjb%<`?!%4JLI=-D3lR=Ycz)|0sO4PXG<`Sjy2-Pd4%#ihFK1e~_3!?H zUVvZEK%i((kmQj72-9kkr+G`2HQ*1NIIuGim43eL2 z`kY%U>>J22xRlLs2*~&k8FRF6WohJH?q57t%v0&(b#YDc`%n&I=kg??^xL>D?G@W=l79_}@(bCz$N{BbZzk z+9%eh4)%S>*{6s(ThWkeCNgAV9 zT#`mp%91Y`565aKH5D<0IFL-hZ_6V>oP5TI3tyuf{!3Sdgs&Ti!Ea4Pq&MQ86jNR^G4*_V5Li8>_~D)Sjx`(uLq` zyW{Y4xoxrOwl~yR_?Nlo%~U({nW_t}UtvZq*Q-kM)O~1ckZgi*(P5pi6vt(V-#+2Q? z)fOMtPP9Ff#;n6KPuwo(b68C=47lN%?0rg{tk(S%TrdZOdDO@YU2TXy%t>Y4BsRV& zz29l+c8luUxF&PF*dc239KSB zn2qV^)Hy?{?aWlo&wD#4p)lhK#ukU|Cp7Nro8F$=Q4jl%GCcbH8b7{m7k`n#Pmsi; z(#lVqs3HPGvOFNj+e1A$2~?BPDiW{Gw<}iCsM}e>Te0?#%T0!PRB}EWUiI zE2fg|12THr@)X| zX2SotYd!#N?JiA{q#{xQcC%#W?KLqY(mm1>-ZwOJb(TKFacEeB)Sl*oPq>f?(!C}8 z6;m{DHG?)4R{<@146)XKD(PH8+{6Oaj_+)VWq#{VXGP4x=o!E6t_9vpkH~vL+U6DRLpf+028@F&=EwT z?z5KOx_B7T8rtlMRbbc0O2fWYpG?c;Nv>=tnaSEGg0;~^SV)IZ@*XT}S8R2T+*(F- z*6)Wie>FDUog0&i=Z9goB5pe5KZgi zB6&ErK>pnN>5cJ|2L)OaezrMSiVCh3MVW9X&A1}J(p3(vuMey9E3GOmw%m8V&tFtL zX453IU-KQ`Y`D`4LD6|ad^WU0qdG+Q2@cxTZWML~Sp&W(S;xij@cEU>C0;K0T)$Sn7hwa-l5ny_{yTRGp4%yPJXp6&P>dE&-H#Ib_Yfb zm%ch101O1#dz3*p>r@c=xqVz_2{lu6YlWnYls9CE;RCko^B@`}0J-DAWMR z6r-q=^wi%1I2TC0hOi!JRvMntuGg<~91Xup=>QYJtBt0r>jjLn&< zQ~nGfq+3&!?mjzb8<*NLaym^5*Jg~f-<6oedu`p==w|X8u4LA1lAs!R#f=(;wa@M+G8B6#aN#j2f5d`f7TXHcP+mOkFv z@%~X$Izu|cnLCA7GSa<^ZW^>6${a55HqL%8xs~+xjsybOKmOxU_m9;mVtCp-<+OVl z9be+kP+zU0+P2!NS3drM*qBZnwHD`#VznRj9d1wPU9eN6XSp{HNb@3L3wCtQsJ57J z2@c%6xoPIOXxT&z$zeiky(&RoiFvw4y4G#>Wi+fJn`qd%ttG zOZhmVoxwv+gSUum&w9&_i&|0-RkXF4m?1Oc#J-r3kQu)vRZ6x;dckwThsib5)PP?H z^Z53s49ai=Em4l6;#tIKLEizRX|)%zlIeavX}}6+el}@M+O9tPT}YD zQXo#MVm>hZ1#@nzLg8Q`*m>e4pxt5aFNO*M%eQmiJ?*}yKvq_4>6-(}ZP+MMwx|$F zZ<~F$m-xZ0o-&9#el3>^Dat$I=100$baUXHPY+>eCB!f?TV49>%R&w>E4kvVSk1u# zVXE8v#rqK;g0BW@Z48;131r(nmUd$wfseA?d#TQ@)FhN!HP>lQou5mvEbm|v`#&XMCxj$y9oDKA?ZDNrvzN>(hJ8tA zKu0Yf_Y1|z+MK}g#h;ri$htRj%S!W$@+}x$7s~Nl2EqGY2zz3xu|{{hhn#ojbdW~% z+SDVJdvWO;@oc)8UDY>}s-07|?CthuOy!Qrb^?)=MGT%ehWw@--Z!AxijoLAphc{YUb`e|a9v{{FmR=XX@2ELbK17>%?* zJeOL`_D2WF-!fgPid%QSGU;LRVgh3AMcjPYZZL8>mrvvVxivr$D&%doT1`IJw?UJ@ zv9%qjT8TC>hdm%jRlNG%%TkeZ`C3UUI<>1O?oO z^7}Euxz1^iGTxM|$h?ZUKP({8XnnodMaBVa`ce42L#J^p$-s^~TA5yw2e=p)a>vf2 z=IrY7D;o3K4wof0%260m6r&L~&QdW<ucp{wh)BP;3Kv5$cOGphxSY8Px9Os~hyn?RAtN4EH0?wHRRpGvy4lCA ztK(N3p5A0DOKE@OHKHJ#eeJ2uIL6YWGzCz_hHoSM`%{g5%eMeQu4;O-Cu&3Y>BVy- zCf;(fRUTiCE0V>rO#}t~Ox&T(wSHu~`qf7BRI3_!Hb67390uaQ065aja_WMlv;skA zE>qz{%v8Z#?X8?FN8IdVsqyc2b=`~#A?);GmaBSm)i`TAKuLxzq>Eq}8AeqB{mc06 zN%kQzUD-a$cUDKe>+<_wT~N~QQahzFdOi<^lw3C?8y7maRa9UI44eH@rD%04wGdK* zximg+$(@8ImmBtShV5ErOZ}NOED*apY*!``KencHDoSG`^fHYty4SQ!e%Jnm?s?I? z*|25&&ST_nPR&PH3FNh;sEQ_WRbI zW3|KMX4d#jrv?@5zi_}B;a$r&myMNqDJID?WT5!8Q5zg61U6?8=R72A1+r}`hS08 za(sIj{TeXztfT;$-^t^oi&9nQNRe3e3yaDQ?19`n5u>0e#_#PgS_Zymp&WME=QV{zg7< zkrx!(tTT`{9_GCA_J#A_CqIkje&XE47dy7=n^BP_G)sH zQvYWJ5SuV>@CC_T$5*;~EB%j?@B?A(*s1oh`({WqI2eXoy}7D|(F5$^$bb{Or`NEe ztO>XO_Qy|=^8=IahA@lkRW5L!pUxJs`8-&yIe1FLp{>rNFUq?`CwDA1C%tofQliz# z!rtW#I3VWX#jnGbKg5>#nBB9`sU9ee8Ow2^;nJ2p&#hz3(3T|SoqAVjkS`hg0qFtK zD^Qe=blLBhnw_P;@!>@tQS_TL z=s3hC$%OKotkE!UY=SJ3vidLS9jUg0Np5J$!iU*07{UHFQXLJ?8hqPCZt^PIQLJE+WE=vx`|3lkN+4 zya7=Gmp0%Za70qc$=G$}BR{Fu_%^x8ujg?-QD+?M{C?WAy7jzzuM>Km3}vu6 zOzB)P$8JfB5C)jC7g8C?Zq@Nh*T#Pa$6=!qxN4HzXY(FCqM}+nk1FV$drW+==VV-p z%`3F%ZmYiYVZsE&)uDth*=;C-Un{26cKR5I-wYWeXHQ#!q};K3`pwIe7M*AQ&1e5V z(&NAApie_UB*-yNo+&ihA-_kp&`Z5P>sW|+dy0o#+YZ(u)nL&cVpesPUb$1pyJ~Q3 zwz0HUcy$~9*@;#vFCPj#U=wRbC@}s=I*5pQ_5_N<8B6NJp@-SGjcpI@0N0z zOoK9M=<%J-L0xdXC*YfTY_(~?YS*>Z#_u<(cl(Y5rP^t>f@*WrW$79zdOTvcQ`m|( z!L-#I;dIkeA8b9|=p%cmxRWI6sL!SjYl3ywoJIQ^eF|1oM2U>NmE&TRl5?ficM#?@ z&9u9!$-oS9G3Pq%dKc4sBBx5?mGr!YB&6QgfCxj6`suOaO%V*XBA=EgZl$VUol;+P z^SF+PUECFwB>f~O^-d^oi~=QN(%;ttqvMnTzvfXNFN4x}{hOrx-rxd zWO{CUE?!0mYO*C4i)K+=3JIzlSDWYG%2m&FLmBY4?z-|_~@CXkVbl_q%Dp)1Du0qQ&= zS$}S?@17r`BB(&K$|rk;&*FKBCbD@$mhg6NXZPw?qT1~P`!i?PQ0vWjNcPO{<5J%* zqg&PFl)sd{^eukT4J-xe)k=AMa6Z>r7KOzheSN#~omX z{|UkUdPV*#(SchZgrc9e-`};QFGVLAm@DZm_>6$c6|*4WGLqj+L5_U>?d5loWBQ6O z{gKk!%M^tvYvWCctEKJ}o)$qJNfP7Y_xmi$$o7&vO9N^0+>oeym4}M`T6U zaeImC0SRL3um!h)v?<GivelZ;s@OakLAwlnwjrCgI(2)05^uo9ZMrTZYepB*|s{IRy z*f^EjcH-mRp0$BIBT#7trenaPP52P6sZ=@lJzZBPUb7a(;W;q3>W`F)PV@a*_g?cx z5eHsp-(e*)& zQuQ^LjgNt{Ly+{TWLN4X0yr&Z(HME`%si1yJIfDCGe>9Y?62eVUu0qCH$W#H!!CU- z{Yi0|Z*+qAzOXzy6*apyuO+k})9Y{o{DGm`->`z1v?#a(>!qp2gHRk zrluY`CH&Ut)Q9wBtx@R_Ec;g#;#8>>7WzbpZ|lmhwdYH}oVH)(0jx-s8Y5g{;rhyW ztzvHQf_V7R^5k=--!BTegbzqMq)5Vfx)Jd zq%miaE=O0=IV|UJ`|iDt3Ul9qp9BDgm+7g>xgj1goR$slURAh2)&j?&3j?XzGR1Ai zkcTP!Nuw@go<%n_ADFrK-6ZkCbQOf}^MkXW>!*1TIUi%(RFB5h<`0?QboCg#W>5UG z@nw~zf$)vWJkDS-jzcr|olsq>qK$7LoGm)0y5;uox-1ge&WX>M<;KyCvj;)+-&f~8QP?F+ ziTFMvRT1glZxu@)s9f%@Exkc&wP~$rL5`|$#|>HSeB2Q&6#V4I1ML0}?eh!tRBeN; z32@JhX$jPaf&?kJZgcFsU6-5gSEH3{3Ab=L6ZUiZD%M9d{UkJnZlk`g%lXNvArp)_ zSgjpb5#8{J@@j{mIH{-CbG^r9mfx4$@J92a!!;bZ1vLbg?T`s$4<&s|fv&Wg)J`jp zHi?@9e4I9$bGvT_t3J9$KvZ0c!UYf6Qld(FMOKN1S1XSmRG&ve{!{v4%~!v}p~f^i z9O2tjYSU3-^ix7ncucl>q!mi0&!CWd2cB8vJtwyK)#nUERRCo?0p;z2CMs?wP`=II zNEL`o8e(|t?LLbiR(g3Cg`CrI+p)5TAPtorRDg;CJ@}e^k8=OX!2-8{3Cckrx)d(^ zlmBpMVfGcReQYl)Qv^tcZZ9}@e5P;y>}!SkvT>3n;JN|$a8mX42wss=?&AZ*jFjKE zgi(gPV7e$7@)+1SnFq}s4eP;xlk?GPK3qsHO# zStas$q_1E5V*iJR9H(*2e8sZ}=a?>DkMr%^=_iqnTpm>|r~O~I$QU=E3x6m%gjr zTeG(WWf1`0DRj-QKJ!R__3J5<12W3?r%{+0e9Y*~SgrhYhD&0p4~u*ZPccQE6(5gw zNzk6X&#;FBTm&R2;Z15HH5~jb8lrU#)+f8Y4Pp;*W@tkO5nV=`-XY12x5?Iz=Obrl zKiB5fS`ou*XfQhDBuM{fd#>4lu(vZqO?;gKvQ#nyeFs1+Rp(6Jzjm@q;_;!fy zjP^}AI$)^mtT1c${t7AEx9~BX(l9VA9PE>+h##>;d_{-WlC81>+Ol+xVWqw^sF!Cb zv^u)eTaF6pF;uMMrK7kCjt5BfS~CM|#d>L*572;865__p_60Qq+6z1KJ0SI6yRB?lIK@n}6=P$}oE-FK3`53e1Gf$)BQ zkH`pQ>M<-8vH^9@dYX_f69_?M+gleTP77KB=`$`=Xh@Oz)5%FaRaM9OZ^w5DPz9zr?ZaWdZphBvl$ zx22dV^v4kXnqq4Um?|j~fplfNq8aGT|0{b(^|t zb}kQDR0Cv=_4UW@9}4x%T&n@a**D^DSxcj(DiyBtmq67u`Jr27e{+^k{r{kQlJf?D zno5eGbjT+zOn zW`Nz)*4g;K$h=Q}ae~Rc!MZ(?X*zN0*SbOVk5rFieL#;(a336T@3+l~;Q>e?=*Lm7 zzd4lPXz75HdC8`R*3K9hvB#PdOMlY+WdDJ7C%M)18hIIb<#Ke2PZK=u)5iAfB_f$x zKJ1x)_v#OUo&dfsfo6$0!W263uVTr5vhHM4AlVTeXP)pHD)V^8LTbu{Z4%)qVKfdF zQY%vOf0w&k1%rZNZgY~HxePva-D@o5*VPvVe_0ojWv)5~YDAclTKYc2Thbc*OM>ne z!2=j7^s)+tQUCxD+FqXHGzA2G)r<%4ztWRb{}n?Fh=3^Z&T4mqZ#@7jNUlt0@biBH zCLuMakG|QAN_R2@~hBIJYLaM|pKL2^&NxdzAj%rvK*dgYZ@*&NgZW6dV9$CjpL`%)io4!S6Tm z4VwoNW91DU_5546Maz4PAgtN;LN*QkY8){uqN;O-Cn zfOdr#l%tCYy(rT5idNtXDCjyRt>652u<*aqS^c$$WX^#~J5L4eCT`yiqcfKUHB5Ny z^kgm$h@SXO6JNUv)ToF;(G6z7KT|Dlx}4e^aR5g}Ka*nn1%;?;efO4k{pr6nF_;dt z&Byb1Oa<%NC*A707Y=yi2NdTzO22e5NB~nhI2Yyfo3DEsN<(^_o)iE|E0FF%EZ>Ty zDNtPNlJVyg*RMm5+aljSz2>ri*D>hVwfZle@ry`HtM-xNv&3Ynb0>dm3}-t10rsQh zgZBy_LxX=MO&lSHLmX@mXT#_IXt0Mnq2gSIG|EIW2Eus%X(qhgp@Wt|?0ElT#b#c* z-E2-fPr94fxMY)RSpw>)kxU@~@OV~@Ul?9E`EQY>KV-_OwM-~W!Fhv^M3NF3iO(!P z5|bzCJhOH>Q@f_1CD{4QFERZ5mo5?dnIM1FzG{kQ%_YAEAxe8Vp3Bm3{#I{U6$t+w zC;Od<^nWJ5tq%6-M{JN0i1D8q_=o761XW&SR&y<1$YwyhP)vK=){kQQ*nkmQxej!V zlcoN1+>kE2^lt`}NHWzc*{Y*(MFekT)y@Whk}jlJPJIiQ7jl5I0)Bk*CpnJP;6_~w z*d3n}baUaCLCO>b+rN2J0e>nw3Vk_Gfxk}4ZHSZo{H;CdMdkocvOV*zw=BC%pWLz^ z=9YlEOCqucnBrdoOV$w*L1D0W7oe;14pLiQq#598wC~6QXfpn9$_J&XmM3T^{$D2q zT9w-o;A!M~M?tU^HgGpljnWYe$D$}&SwQbl?| z%Ap>T>}xJJj@8z66G@RnNKD-@*8EQqa0$x!xY8|cf=58>IP%E?X>)ZMX~PMst-9f` zAXz}Q%=kLy`ma)+{{PW9(A<{5f)mQ zwMh}vA!aL3HV3MfMcdTRsWtn#^{i@|>C?%7&Q<^R;P-$^>kc2Pf|8)f9|J8JfTaId z<(?9Sek;Uu{+jx)qjtLh%=2E7Z}SQ-v~0R1)+~X+Ck6Kjpny%PQ)Ai&9^JCnZ!`gA zAOBc!l0@)N=oN6vG!^VCjeeC#aWU~5T=HJeI69*Z+P&`K92$eDvjRB7Z&3Roy z|EQVJcL%Hp#9%>&Pz5h)@b`_GK)UvW{(L z7{hz~YNoo?{XFmIy`O*H_pLu_n)&_C<$E5>_c+e2RpP?7I|iJ3{rx}~CK_V$SN&QOdZPG4fnvC{ zmd`&5H;K}>Y(@`pL`n7{*e2dL$6kx^_`vS}+R8-RX-#CDj(i)e|BfF4f|ifHlHeF; zIKl16r{M2YNd(zVR=WGP0Y3xQwOoAgmWxpHG+VKu!VInD_QXYO49@`D~9nVpllhf_jGR&SVhh%&|p|N(hnH5D45+qJn>fOroAXKaaIoY6QZv ztyRB2>U%eG`rV65o?P5rrX|>>%jKuROwz&ek;kK12aD(ejPjTesnT7u7l?)IsMz;& zhrc5Kb9RlY(2<9mQMS(*f-{IWFkcey;fQ*jM@uw0ZxQ|h({AvWj0R$wY*&aRap?>9 zmFJDb!`ip=zDud2+2uVGu*yu}w6X~@f>nkajX3hf8Rv6|$#<#dD;6+D*viMM$cSJG zl`4`x?Ij#^T6*Bz{_jjh0G1p@qBNb6Ee@rIvWw^9l>+ZA60R#3e?7XXx?Q_S3`wHvE7f6;MefbOZ9%-CujUN{;vpy&0H@A}vw1;3G8Kdj}SA{I0KucaoB z^5KJ`Y>!#H*&f-xGTC2QR%n4%*12=X{`x0VcJAN%QCBqY?H73Y=);z`i5u2jyvTKR z&F(vEQZnY9-n4>yaVrU%n)&2ma$)ilG}&ti->zjycA*F-pa*9B!g{<1SD+Gi5u}{+ z<(|2`atV9SjnAQ4SEsgJp_H^SyO{EhtfOf$lN9Gk32Mry*6w{EAW!dD!o(bGzmrAz z!}%@n;WHP^nJ-^+ZtX!ER0(lpRW6*Nfcz|rh3|_3#*O{w5TKhyc@3f zq%RS@hl@<;EVKydvUj(8jm@|l*T#(I9Y30|Er36!xM7`+X5&=gsN)e2*GCfz)a&mF zR|JI8rS%Vs*7A>uictG1JI{Tq{d+ScS3!0A=}<%UQslF}vcwTXnQA|g~Nf$hHV zzeEqhdb^5a*DuONIiJHP@k|AZ4oXS-2X|=Hda1RZ{i1kgYEE>(_|dyhx1OnPUqp>L zUmtpTzLm>U-pmS>ZDw*?L!)=##RavbCBQpUqMB54a-PrX(N@Ta(x`Yy^f zFTrNavB@g2>3?YYoM_H`3I`&Gepv6~oA#-x=9W7ZvvW6WTK#DRkg5oGczLESr~3~d zfc_fXuBzYlZFoLF10ofPH3EOZ2eUPPa_1Y|hcVJcZHef*x%e_+`u2D3dbKSlWolyr zXkDxmodqYHc&F~%gn(#v9Vk8M+eChE1nMrR%iX{;><3U1@V#}SX8>w956{#dlShkU zKb2TdEiGKG@Y(F6KV{bi=Da~?38xleikjeHIh`+XDmn*)3u&adgcC5*nq;HNyz^*z zi{{1O2b1&RuT{|K8%3@M7E5mGpugH!`{0;u8oTR+blzzus}IK-ERh(>?;~Y&4>AMy zYIyl+9&g@1SEg_^>d0S!$&N*ZL4gjr!RYQW3tm?8QmWJ?7xb7^V{LVojj)FGl)oa$mOw^H`VNAxq^caVUYxgn5)UM z#h)!e129ia$eNAH_)tM9$+489CD@LzvpM6nI=vs)9X2a;?!js#^ek({X3ar69*8l{ z>fy%E6|)xQ^!P`el3F0pSF_%W5)MJtX~$aS*&6rPN&rQq$W~y}qKjN)Fi?SR_2%-= zUYm74hU+cVY)^-;5sXG+YjnA6NI~J-|&o3YAQY!6ato8AR zOP#4%wd>5tOO=JA)f#9rbDe!!AEQEp^u|L` zd!`0Q5;fAB_@FgtY3Fy%s817aGRdHp3etz3iOm*IS$Tjf_K2H7;uaVLuClf42NESf zD7|ja|Aabnl5iryHIysn#M38-v`fo#tG8-ZPljzNAjp+zzLYEt?tDV1)Sn&>C*)XDn5>n0OgHsjk)6D zj_Q==tV6zGA6SGf6-IGOdq!UANCc`_XPR}V_3O+VRc|_WU29N-Np7fCZ&_#M`7z>5 zcBov@nHnwoFeV&DdhjsV8fF{0FTJpIk7C;UA)BI;<1@~1dWBZ2FTIV`tdjkDYv(2T z_|G^Mn^?F?!!}%(cB`ADMw9=N9kx(+Y~SJ2FIF*eU6*HT@0IJIvPKzCR=t*$?P&1t zgoxv-_`Vhd*(%=0dq!3@8U2Dn{MI4|S3%NYT|f zsa)jpLwMzNMOD~O9p=sjA4{KI679*S^v^u#s_}fOT-Yz|WH+b(g?vIRB0N&a0k1v$ z{pAu8XrJMJG9m7n3)<)5@GVu_t?#V)>=Io%oc)G%F^=yAZ@=4|o>`?}3wKIES3sCnCq=#uLyGpH+U@uE;pWhE7_mYMsz4qNhg}S zD7RznLSrO?7S77HG+Fpu7n4iVKtPFk`As{vQ@A_u7$8az~1V$s^aaxC?{s zn(kX^o|Nb}`wCfg&2F2G26VZ|(HF?G9Tbeoj-99y?Ah4RYq>BQ&Et7+cLUZmzCJ2-1l_3K`XN0V> zz+Z1F{uRi5^S}~qIQT;Pr7{?5+Wcs^Y6j`(KE$9`MZ7=9FS3S!5@Mtk4n8T1KIH(h zzo}rhun@i6KFIG(JmVogTl95`#&pkarHqEb!W>#C>+E6$M;~I$X!Onj>wkl;sh9{g z#o>5bN+e?Ml9qnj%He0gmqs@N7$_}X6Cp224nzfbt3-*gvuzx=jj002j0Un!ww_} zFmkZ>SFs=bNgIApJ4q`LEEgH$Zl(feWEN|b-eMNswX6VmzK=pygZdX=z? z!~5d+8N#bRaH{^75&=XhbK~MgCs%`H7?yLC8$|#C;_Z@(hR&A(!HNmhP=$NOQ{h~I zNYVzOCK_6dilOW=_>C=CAqQ<)e0fqKEdowkD|sHD zv#o@<`pq7t~m9V6dzz1Lyk)o;29Q@km^E2EOdywA$r3f;d z>L+boLS!tx1&7zn(rXl=TBqt-9D<<>iWO~-*uN8Q!uLw2bP%~S1~VmwUd~1C!W@}5 z>wReUDd@|6Q*4UT4iE`R++7Yp7SM{Ed&5Z2bd{hLKAymEiG(FTC=y4o?g34VJXD;P zD+$tdv^8`OdrVIv`hBfpE`kgQGJ5#qBB~;3-ie=(WMg~fCj4wMp4)sBWbd-8h5|<} z@5A>7OBVv3uirtB$|HCF0pbr3|AP{75N-gPKl#a=7#O4Md!N!>M%FSW_cfQlx@)r_ zT!-p4upza0fRRzJ-rd`fbG>nOu9HslK$dwT@o|C&9t_%oqKKC95;b*8%fj=<%}1;n zJ!*#s)EmOsg8h@IqvSw<12UvGtp_c6Hs876n<}D)Kt0Ftp|2n>%v}xQKbZm(QR_N1 zRf`(YN#hazXpEFG;-`Nyl%O46;LM3Q2iw(kh~sf~N(=c`cRq zWjo~IABoOiNGU3j6D^NN!%IZdXFlKRA$$NoeQicy4v>R;&}f#R{C`-6Ddf&{`s%39 zYta~sOFNf)6jNB`H=|N0ZUaY;6nc=`atCsy8hehu3=_sUZA@1W=pPcWBsUIit_{w~ zTSmc7o$L@T_PpE&$<i*f3}LAQ zw;KV%rg?)TGxV|Wgl9)O7E~I2)-d2AE0030jTD|I%ke?ybNAl zv8MewjG<&0;+n^Hd;)54)%CsL>=uH5aR)q`Bi@Fg=zwNhi|2KAH?9N&?#ii~SAmrt zgr5pT7ivLaSN>W0%XmXQ`=JSoKE7WTYIWERj5nbbemX6`{50f}K$mpimIfI+nW2K{rto(Cz9E zH3W1!ff5Pt#2#xGqe?B=S^S%!K4}IhTCW}8KZ~evahwK+85F>)A4`*wKWF2Eb~d2~zuw;uf8R+*8Ai^6%)n0=nf*Qc-|z*&@jo{^;0BBpVYxHI+ks zK9{)A-omNao1xM3rNJ5KeRx$qYu++K@EwRaT61!j$#hXFR@5t7xSug(+q<@+-etd$ zw7Wp!G#uW~+jAHamz`afo4-lg>lmoM*jyqD_-@HQ?iI_Z7-^NEj0DJOxqJ8I>_a>1 zsy3SSZ2>0Msq%|5p-f@4lP%2qdXa>qO>$rX2fs-erzs&AhJ8kaPMEwxIR@FuXXj9L zO7Yxyr#JRnNcjiQIu-$wOT91WJo)n0Y$-O!*O`x;o3x3eNt~h}LO^0Ul+QMK2qhy8 zla$y2`x-=H%@vNvgK&ISQH}LS_n#Udbu?PEg!ECqh?uPqqlr>6!fiE1zH=#I+H~D! zIyw)M6AAtllxf4S8c@6jMkd&F{ljD+VWw$!>bHFpsvAfycWhPm9B!V)Vv^1!#0v4b z$Agu$-4B*QXVh3teuV<#JFQT8O9VZfNhGx@_@p^(QWdA&yvcce{w}l|&RU&m9%crT787f;t2$ ztw}1&*EgDJV>e;l;>{irU3K7h;htFyhh`NcVw)1No~VF;lN4Rg4yg`qg~}Em&jw1p z_^;>M9SyrSzqKXbfN)(Ftr9r76tk|Q;ZY~di_QWg(F{b#D`&$eQ$%zWOy602GXsP@ zfRX8)5b-VksB_$RmryYumR-s~^0UVU#?|Uge-4y>=sb!Dsy^;;{8h>x=&Wh-gB&(4 z5fGrH{If*q+#CWA?`1&F1SdsH;q7qnt%f9|i2gRq+!g6|Ae&<`?pBp0lx3!9XJZQfF~vkJE#Mnuk05eEuc|t^2q?sw z*BCBx#p1I|X$Ep2skccL(E|U8EU55JEq(dMsF9cqg0m3N-Tj}STeX;qS+_SU11XR2yiag*OH z$?``ng>g9bzDXe%Y_4KGirCM7Djk6LnKobMu) z_zVhJr5v9Wi9}+X?r+%ttr}S|82p0@PH{Z^2lv7+4q{5~x?sU4rC`!{R!b6f;aOU2 z_TOwK;2Ft&3m8U~IcG&Okule(AASDg)*AMXof(6x()*a$7r_-PwFS$%3 z0U=3VXzYHJ(Mf(dUgEM-(ht#OE9PSG{So;d4{VmggKuwC!CWIkMhFK1RgiM>d8e;2Z{8uOnE2+MUu z?t82h@vm@zM>z_$ES9K!ZvdS!i#CaZGu)BJUbzgQDn#TOK|&FnomtLh@j|e6M_Hll zguo9CmVF%$&w3kKEMoJ;B2MP&IV8+g_zqeFKt~Ybx`RvWHgXK0LhgMIX5Zj|I`^!D zTDrQTyiUP`dk!dwvd7K@qJM+?Z|isaqw3(72UJ3#SEu$I zzw_+@lmdX7bg+4|fXE{xrl?b}==Xw%eq4j?{C^TPls7y(pml0Hn<$RLyzJLfWcdJX z>3wd%DGB>QTBLYCTnL2zJ!-tk$t--Qq-!2SEti7rd+#IpkG)BTY)8FoJAfLo$5Nh) z+Z6hnVzE8g8m^9cJiX&rFLu%x#9dcDjb8{!kZO9ha}?qOh(+YwWMu$Ibw2kDt^spb z^|GAF;=`v$8gJahaAv}O(!o`5m71dM8^eOL(6{@FQ37nmFa__M;uVkvmz2+jlKss- zVd%8O`!@<+me88KK09|dqUWF_0r9qLoKc!J67c$;O8>z7T_I%u2ojLE{|S{TUPV2R z!3yQEJ`7SHXt2B)V|v~~n+rDDTm2R9NyFI&(3M4V8$ZnLd|)}q-_YjqGI2=AN3+4| zOhCDWwdT~P&YgUEOUJw}m5U2&V`n<4twYlyM*2PHZaVcW*VkKD-vINmEVIKj@=fQa z8YD;hle73{CIcb*)9~4*DRIkRupfvTCH9mulWu@jDl@~n3Pqc2KoT9nZMXU~J87j(ax_gs; zC`xCom5!a4IzD!%_D&(W<+u+|ZA&i{w46#8{++Q}2DI0W|AE%mX@V!HQ8-uho7FZ3 z1E%9Pz84`Ab9nF4M2fn~Fc)^u*oL`BKb^50Ana9zNTd7qoM^ zZxMwhpMYQetc|C8m_R3rid#_ASn-wC6MDJT;w)~w6gJ<+qjGU@T?>mf1Q+qbVuN;= zg!X$mXgtB7b-rU7CFQwtW?O#f0q~sX5I2Oz-jCLFjSrs=5aP=kXqz3Fg{C^b+(w6`|ym+^!VR^0%y`86|h9vUb7 zpnC}$zQj4uChph5h|{~kn=DBU{#Z29iz$5?B$HrDOE&Kbx*zFfUuv5BE5+gBomqjwvm^D|`2qf0`;va;I)K|npk1Mw zNecvCA(JP3m!#OTNjM5#pY6*{L?1bnU?-RK1iY&)P*vQFbDNbWD+ZZt9Yf#K7go~a9I%6KedUOz~x0t<3DPbjsb&Xnh=% z<5-9cPpw{Y?Q+{HXYFjq21ZAG!nBUh*&gE)dGlIahs?;HnvO+vM&^YZjbp?Qp~rp4 zoo&3ne5AfhU}5veX@#Y{kyba`(8ovaxeSMV8CN&@Ro#G){;{oCIqgFVOgH2bO>oAxTKWQ-F5f zyJ2=#SQfTv_@lW#2Lk;^m42s6fT6D@Wf>8=PB zT%Y>+XKmsz7g;~3Vk$Hg1q(v4oWS9=9SEN8A(3}-P<}aYl{B@mqaTV(F--ReSoa&& zgBn7jXJ@BZshi==x}^INY;6$(9+$F9P6>&aRw0~j_iaN?LhontxDa{&$bQ45)9`+T zViGTV#n*9QT8iGh)d}$aM^Jl3v*K4s-glNvqEwLlhl$#&`^oUWXN-`KU_>uRpl%08mgAFAs^TZy&fs02oj*ko0@+&Hn9lN_H zC$KX3O+H70mu2<^*JvrFJ{h?@ZvT5lu!d&68CSQ6hGw3sZ%h8>c?ip)M}3`Lx0e0_ z$ajcPFt189>b!t*hF1&T^ddkYoqHVz5{Pqd|II8nXIv%!)cSun!h|=X9ky%#D!CUiv58N(p^XRyYys^Ia)OdhIv|a)xy`Z#3e5y8MtgwAiy_N4r5u#MMB9XMZl?k4k z_fvu-t=+DtVy9Ca+Pf^gtQs8O;LL0GkM8gKijdCDRP^Km4-;4594VkFMM7?^xt zQuvc}!xd}P6eFdydpIO{n5TY%y_RStBqt+Jb}Gfd{TaN|W559-8k+8rXuh;owP!OH z%dXcmj(BtikaN7O$mCM*NP&k&+6wEYXnA!*%k;)aJ2Ms27l5zZmH(;ApqC!B`4XYD zTTesR%C(Np=k#QtJ|@6U&l@GF?cSd_(Co<=7@AhqnSOS__9Hz_WHph|?r!rY@Vn0a z_(0$W12P|_aSSnwFCtpcu@%<_%wpg8{3y6PglC6QM<0dZuG!1D-nXn`*|0OC{rH)F zk{M>7AftQ^B|0VTVBs%zW4G~%!oG4iWW_b$W9h0M-^a`I`&M_*y9`tUs`J{E zbf%u$nJ2imR%UEc*BB+30^++?wT|GPkIQQH(Q40 zGY7|qsYz=Kg&rz?&k6nP%C6i6sR+w|vYHBnQePjTE{JPDg(C+0@D{@$=&aU!$AY%O zrXFVsqrxv`=oLL@lq}t@ku;I+22OP9*&sfl)hR5hm^Rth`5F9ZmNHqv+a3IVll8AWlE?Sb zD2eRz*{t(pR>=vf>*-Xb;}WuGAE z=Q&NZwW9P~h&=4`W>S0jLsJi4VtOjFr_8VDW3??|LcTtsT((=6&eGADWQfY8;|P~T zneH2W%nl#x4Cr<0>baiaGa1$I^?1AZf-|+cr0G=m#eJiB5@?~B=?aa&JS9d#PRsN! zSudE5LDqq+eR<;TD#X2-KQ&~hH6M}S`*Dn800_xNZp1poo|#^Cn`Yj=B3yf|m3w)e z+~6l1IL<%~!&|C+2erA#l6u}l3R1_0@LmbJr8nB#pVw#$Gkhod1xqDrr}oeW>BL)0 z+8_TjBimZ?!rF6Ot&=e0t7;gliM};5Jiyc?F)$RNN?*Je**hm#7e`qyok1Uz3mi?K zo(?bN3NlL5O`g#me15((*Ajcvy3)nQ@l1m*y&<9U`lZooDbm>ySKE=xSvdWvVJBQ* z_>h|Rnu)lV%KQdO6JcJ=@WD(R`tXo_(|DYQb(_kud{|Q*pgs6R!)HWPJAlRfBo>Z@ zZP>`t?y`5aI+4~I(^=D-F&7RP>1;@8@ulmF}e`F-3jeTO<8(h6t`&$|IW{@+lu!@XCfYvbHivc*fgZKW^TX!%Ue~ z>$0KC#A->+h+HDExU;hJI@3=bLvGzLv>=5zLL#}%tQCBtOJiJbVx2m$P}mYnaut7~ zJ#@!lo7J{fVU@u!`r!R`v0RFKFp0jJJ}^x`OGytZJXYHkjKqhM8yl=TX$h^@%`3do zI$s*8PlfA+L9I*<QH4P z$(T|fRx9m!G`}l(D9EkBLMc|u*Fv&I;(72+tD#AmX7v^^?7Pr*8KWrog98y6eeryO zmd@mq<@i+HN38IG^$gro^N02N;mka8vE+k(?~~$7L$v?4nJIpm>3YXC+qqwVup;lB zJT1j-39ZqM>GB$XAhXXxb3=2RXE&}i-?h8+BW2o#_M+oe7Lih6JYVMYGl5P^%EXpj zZ%T2VkA7eG*coM^ceR=-+B09A8ZLN#^4#W|+D)dGySyo5}&=Z_W$wy*m4`QWvJ{W$8IPH+7py;N%Z@zT`bn$!c*%z}5NuZZY)Yl>@` zscrj=hXKo6Cy94zvdz(TxWI0qAQFtSPRVnT8_<5bMc(CZSvaY=E;%)WB>HqlTY5sW zbU4&VGLoO|uqZGJNpY8Ylo*qJU21|0j|I&Y!X{y?A~9nb%j%nJFjYWGcdC65<-BJy|lu zASCHks54elTvmx|R@a$q6qUno&{&@H+BOy!>(?5gI!~$FwP&xHz4oY6F>85~J&y%H=ZGvWqOCgiEV4!`<#o^UKNdvxG;?eztD{a?f^ZBN-f zQrlnM^4GduU*=He3%=4vyDy(97@FqGY@5^lFwk-t)J&|IJf!*Q*@3JF`o+aV8;h|X z+cbyosRRfr7o<|c2x*h2kr@0Nd;9(YWe)tb%4F^6x-0-DD#d<~P48BL9aJzs6b#`Z z%33zCYB{5P+j!qoqja_*w8EMQGSucZ_AU(4{IaP7_j&)jZ^p#4MP`ONqUzq?xMk-> zr*7@xN4!&A5ApiLN!v=R^QKo8%HSled?Q{o4dRDvM&dfB`S43>$c(qIjY@_L?Bis* z{Dv=TcMH20`LS|JcSxm1s!f#6#4b5u#mMPDQ*P-*+TUoK=UWCb!h)UzH-|^M!3lEl z*;AReMAkyVmrA39)M|s8B%EJ;NN`yaS}za3On>84Jou{i@v!o;MpwH&jI$7fHAwdp zN|~X5YSOlkS650cq&e7D)3H$lG~Adi--Us^w#@bf(b;GLY@8fI@jApcC*AO5v!fS~ ze^_ahQgddXY-Hb`!98`)Bgn@MuGKi-xd-$N=1iLXBM$PK% zDMoA3Lwh^F;d^#vd>V)I^ukZbGi6SnWeln{*oVV$A`$khk>Hcx#Hw9MRhr05N#LL0pMN26RIh6_+qpFmOUZ)pg(3~Xjzub7MD3vpUD zOU4jktAg;%tiCD=7lp{%L8UWnoxKM0i3WFGiNi$c9qycE-CZM?1ZSrm`KoQ4=&JfS#wcZuHtQp%<#5k=nHpsz z7;t=8;_*iEZHy+Rs7cu?OL_CgXU4KK5Z{(w#yH+67R5<~U|>T=x%E`nB7KTfk7RhT zz2U+X!}uFu^P=2GBFiQ=+8>XcI~Px3J$194sg=I2+v46=y*2wVF0C%JmaCzi&RGD! zNwOfZR1+v$mCcq>mGhv4OOlU;v6avSWNddt%TWQ5UAsCW%xnY{;VJ|1znRZ(%FLIS zW)V@Xs6bHfb+I0ABQsmjWNJvpQA&?p_j(X4O`Gm?&-IQT%@Pj+>9hb!MW~d7OppZH zYps>$XeK@(Ba{wHNn~tr2O60rE4tELXcGDo^_Je_{Zm7Jeya@Q+#T}!FQ;VnF`8PC z?38x+%roopu0gNi14R!FwG|3w^y$nu*0crdKTGI`dv|Khh>G9xJ4)+Ushv@i_GoDR1l4 zGZ&=}dZj)~D|P0!Q`SB^M@d|-)H{jz;Lc)?XRnVq%7j z3MP_p(99pY{zNL3?C#Mav9L}bEnVh;NzXMAPY#~(vlr?vx2yOfACS{{cTcJuejuI6uklA?1`|quJGXJu_|qPfd%my;Lqy9o^5?++)72_J+DxLbmhuE~SDm`W(Lt^el*XbOs zdYcg2k`?+{XwBQ$hvoS(XdT2CXVp^cn_Imqt!*RM@|}p}1pi68BfnGaRXh$eg*~s9 zyeq4^E^m5tulSb41~7qMX@7rWuPsEDg-1>q&q2(jmx=7)Cy6p=^7O!pP9(%1ovySj z-HP?b9QJyF3xw_3LYsRS1EZ`T`#Sy} zCw0kt%6N_q_n#?ojeTraSsxwLVB?)O)Fj&Z6wTUPm`B};6?{4FyIGS6T&7^E3pm|! z-~LNfT7bCFkh#|jReI~pBoEatTz^UYOrN0b3!Jje%osM-AiMeG%Vk-otkwFa@P*8e zYG$n8BnTw;A_?pF>W7eYe$t`#C+xgeJf!pcn%>@${K`Z=@9Mbsu4aCZ4cuXalbD+1 zeTW-NulSw&fQd7+K!qqfj-_O;8c{%&S{Gci5J8Gtxsn>BKfM-7%XJn|SaSV2Gqz1t zwVDIZsMBr@hP$4caOP`&)WBJ&V}1`T#?{FRSeyKn8*PF#Bj#L}_}6Bxxm2=OpQPJA zowThtD>Pw2yxXw3tz((|rM`u~wLS$<)(gRtllQ^7DQ=H4Wbato1&cCO?mJk1rJ@J- zc957d{6P@?!A8zODv4w~x*Sp$ol02GGj%slAtq|}bk7DP0ms8VfvmvBI`XjD32G-m zyv+3!J2?2|EhuN-6==~GYT#a&w^m6yZ3#z?AjN;*nfEI$-z$eTyz}@!AR??Li3s762QM^y3)YpO>+^ceW{H;5vC5Zdqx9SYcdwqX))(6<0 zCnbA@3@x6n*ujC|EYSFdMUlUg4NjwYp;2Ny*v5NM#WjVza<)_+M+RYA#H*{bs^OFj zt^GQ4hMI;JPe@4-*w4Mb3N6@awe;7ebl(x?>^#2?^I8VUt>WwzWH*o<*FvTncK(Jw zaz+(Spo3}RKLhzY3HmdTFQoryB-a0rM*d`@ewfQYruC0${o^Bl=)-Kk{)g=RAv=Fq z>u+7hS5^7LTK|L}f5Hz=)W`|Qe#B~j!jJ#)@WUaxf90Gx^W=B`v*jQdrauh!|9J+x zbS@rdDIW_RQ2#HoAg~`dp4m23W=bhke-*o4H&w^ehu3Sg0=Uv_WRHbv$(u;(of+l-^ zvrc$6*<`1&&cca14Pr5o|K6(1vNNbZRs8!5AZJXzCKCSu_5T@AGYbQryp>4q#*pX0 PpWWMy{z>0@ **Note:** The stack is pinned to `us-east-1` in `bin/enterprise-mcp-infra.ts`. Update the `region` value there if you need a different region. + +## Useful Commands + +| Command | Description | +|---|---| +| `npm run build` | Compile TypeScript to JS | +| `npm run watch` | Watch for changes and compile | +| `npm run test` | Run Jest unit tests | +| `npx cdk synth` | Emit the synthesized CloudFormation template | +| `npx cdk diff` | Compare deployed stack with current state | +| `npx cdk deploy` | Deploy this stack | +| `npx cdk destroy` | Tear down the stack | + +## Security Posture + +### Implemented + +| Feature | Details | +|---|---| +| Cognito User Pool | Admin-only sign-up, strong password policy, Pre-Token Generation Lambda for audience/role claims | +| OAuth 2.0 | Authorization Code Grant with custom scopes (`mcp.read`, `mcp.write`) | +| JWT audience validation | Proxy Lambda validates `aud` claim before forwarding to AgentCore | +| AgentCore Cognito authorizer | Token verified a second time by AWS at the gateway level | +| Cedar policy engine | Fine-grained per-user tool access in ENFORCE mode | +| Bedrock Guardrails | PII masking (address, name, email) and blocking (credit card numbers) via interceptor | +| Lambda-in-VPC proxy | Private subnet, NAT egress only | +| VPC Interface Endpoint | AgentCore traffic stays on AWS private network, never crosses public internet | +| ALB TLS termination | TLS 1.2+ on custom domain via ACM certificate | +| ALB `dropInvalidHeaderFields` | Rejects malformed headers (request-smuggling mitigation) | +| ALB Host-header gating | Every forwarding rule requires Host header match; raw `*.elb` DNS returns 404 | +| HTTP → HTTPS redirect | Permanent redirect on port 80 | +| WAF WebACL | IP rate limit (1,000 req/5 min), AWS IP Reputation list, Core Rule Set (OWASP Top 10), Known Bad Inputs | +| WAF Bot Control | COMMON level in COUNT mode (switch to BLOCK after traffic validation) | +| Reserved Lambda concurrency | Caps on all functions to limit DoS blast radius | +| Gateway resource policy | Restricts `InvokeGateway` to the VPC | +| Shield Standard | Automatic L3/L4 DDoS protection on public ALBs | +| ALB access logging | S3 bucket with SSE, public access blocked, SSL enforced, 90-day lifecycle expiration | +| Redirect URI allowlist | `handle_callback` validates `redirect_uri` against registered Cognito callback URLs before issuing 302 redirects (prevents open-redirect / auth code theft) | +| Per-Lambda IAM roles | Four dedicated least-privilege roles: `preTokenLambdaRole` (Cognito trigger), `proxyLambdaRole` (VPC + AgentCore invoke), `interceptorLambdaRole` (Bedrock Guardrails only), `toolLambdaRole` (CloudWatch Logs only) | + +### Not Implemented – Consider Before Production + +| Feature | Details | +|---|---| +| Shield Advanced | L7 DDoS protection, SRT access, cost protection (subscription required) | +| Bot Control TARGETED | Higher inspection level for WAF Bot Control (additional cost) | +| CloudTrail / Security Hub | Centralized audit and security findings | +| ALB access-log Athena workgroup | Query access logs via Athena for forensic analysis | +| GuardDuty findings | Threat detection integration | +| MFA enforcement | Cognito User Pool is MFA-ready but not enforced (`mfa: cognito.Mfa.REQUIRED`) | +| Scoped IAM resources | Several policies use `Resource: "*"` — scope to specific ARNs | +| PKCE enforcement | Verify PKCE is enforced on the Cognito public client (no client secret) | +| Log encryption | Lambda CloudWatch logs use default settings (no KMS CMK encryption) | +| Log retention policy | Lambda CloudWatch log retention is indefinite by default | + +## Project Structure + +``` +cdk/ +├── bin/ +│ └── enterprise-mcp-infra.ts # CDK app entry point (region pinned to us-east-1) +├── lib/ +│ ├── enterprise-mcp-infra-stack.ts # Main infrastructure stack +│ └── agentcore-policy-engine.ts # Cedar policy engine construct +├── lambda/ +│ ├── mcp_proxy_lambda.py # MCP OAuth proxy Lambda +│ ├── pre_token_generation_lambda.py # Cognito pre-token generation trigger +│ ├── interceptor/ +│ │ └── interceptor.py # Guardrails interceptor Lambda +│ ├── mcp-servers/ +│ │ ├── weather/ # Weather tool Lambda +│ │ ├── inventory/ # Inventory tool Lambda +│ │ └── user_details/ # User details tool Lambda +│ └── agentcore-policy-engine/ # Policy engine custom resource Lambda +├── test/ +│ └── enterprise-mcp-infra.test.ts # Jest tests +├── cdk.json +├── cdk.context.json +├── tsconfig.json +└── package.json +``` diff --git a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/bin/enterprise-mcp-infra.ts b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/bin/enterprise-mcp-infra.ts index d2fe66d7..caaa94da 100644 --- a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/bin/enterprise-mcp-infra.ts +++ b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/bin/enterprise-mcp-infra.ts @@ -4,17 +4,5 @@ import { EnterpriseMcpInfraStack } from '../lib/enterprise-mcp-infra-stack'; const app = new cdk.App(); new EnterpriseMcpInfraStack(app, 'EnterpriseMcpInfraStack', { - /* If you don't specify 'env', this stack will be environment-agnostic. - * Account/Region-dependent features and context lookups will not work, - * but a single synthesized template can be deployed anywhere. */ - - /* Uncomment the next line to specialize this stack for the AWS Account - * and Region that are implied by the current CLI configuration. */ - // env: { account: process.env.CDK_DEFAULT_ACCOUNT, region: process.env.CDK_DEFAULT_REGION }, - - /* Uncomment the next line if you know exactly what Account and Region you - * want to deploy the stack to. */ - // env: { account: '123456789012', region: 'us-east-1' }, - - /* For more information, see https://docs.aws.amazon.com/cdk/latest/guide/environments.html */ + env: { account: process.env.CDK_DEFAULT_ACCOUNT, region: 'us-east-1' }, }); diff --git a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/cdk.context.json b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/cdk.context.json index 0310850c..d3a002b3 100644 --- a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/cdk.context.json +++ b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/cdk.context.json @@ -1,7 +1,8 @@ { - "deploymentType": "API_GATEWAY", - "domainName": "", + "domainName": "example.com", "hostedZoneName": "", "hostedZoneId": "", - "certificateArn": "" + "certificateArn": "", + "mcpMetadataKey": "com.example/target" + } diff --git a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/interceptor/interceptor.py b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/interceptor/interceptor.py index 964181b5..1283d5e5 100644 --- a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/interceptor/interceptor.py +++ b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/interceptor/interceptor.py @@ -9,6 +9,7 @@ logger.setLevel(logging.INFO) GUARDRAIL_ID = os.getenv("GUARDRAIL_ID", None) GUARDRAIL_VERSION = os.getenv("GUARDRAIL_VERSION", "1.0") +MCP_METADATA_KEY = os.getenv("MCP_METADATA_KEY", "com.example/target") client = boto3.client("bedrock-runtime") @@ -46,6 +47,95 @@ def lambda_handler(event, context): logger.info(f"Processing RESPONSE interceptor - MCP method: {mcp_method}") + # === HANDLE TOOLS/LIST FILTERING BASED ON _meta === + if mcp_method == "tools/list" and response_body: + logger.info("tools/list response detected in RESPONSE interceptor") + + # Extract target filter from MCP _meta (spec-compliant) + target_filter = None + meta = request_body.get("_meta", {}) + if isinstance(meta, dict): + target_filter = meta.get(MCP_METADATA_KEY) + + if target_filter: + logger.info( + f"Target filter from _meta: {MCP_METADATA_KEY} = '{target_filter}'" + ) + logger.info( + f"Will filter tools to only those starting with '{target_filter}___'" + ) + else: + logger.info( + "No target filter in _meta - returning ALL tools (no filtering)" + ) + + # Filter tools if target filter is specified + if "result" in response_body and "tools" in response_body.get( + "result", {} + ): + result = response_body["result"] + original_tools = result.get("tools", []) + + logger.info(f"Original tools count: {len(original_tools)}") + + if target_filter: + # Filter by gateway target name prefix (format: "target___tool") + filtered_tools = [ + tool + for tool in original_tools + if tool.get("name", "").startswith(f"{target_filter}___") + ] + + logger.info( + f"Filtered to {len(filtered_tools)} tools for target '{target_filter}'" + ) + + # Log matched tools + if filtered_tools: + logger.info("Matched tools:") + for tool in filtered_tools: + logger.info(f" - {tool.get('name')}") + else: + logger.warning(f"No tools matched target '{target_filter}'") + + # Log filtering summary + removed = len(original_tools) - len(filtered_tools) + if removed > 0: + logger.info( + f"Filtered out {removed} tools not matching target" + ) + + # Create filtered response + filtered_body = { + "jsonrpc": response_body.get("jsonrpc", "2.0"), + "id": response_body.get("id"), + "result": {"tools": filtered_tools}, + } + + # Preserve _meta from response if present + if "_meta" in response_body: + filtered_body["_meta"] = response_body["_meta"] + + response = { + "interceptorOutputVersion": "1.0", + "mcp": { + "transformedGatewayResponse": { + "body": filtered_body, + "statusCode": 200, + } + }, + } + logger.info("Returning filtered tools/list response") + return response + else: + # No filtering - log all tools and return unchanged + logger.info( + f"No filtering applied - returning all {len(original_tools)} tools" + ) + logger.info("Available tools:") + for tool in original_tools: + logger.info(f" - {tool.get('name')}") + if mcp_method == "tools/call" and response_body: logger.info("tools/call response detected in RESPONSE interceptor") content = ( @@ -56,7 +146,7 @@ def lambda_handler(event, context): else None ) if GUARDRAIL_ID: - response = client.apply_guardrail( + gr_response = client.apply_guardrail( guardrailIdentifier=GUARDRAIL_ID, guardrailVersion=GUARDRAIL_VERSION, source="INPUT", @@ -70,13 +160,16 @@ def lambda_handler(event, context): ], outputScope="FULL", ) - if response.get("action", None) == "GUARDRAIL_INTERVENED": + if gr_response.get("action", None) == "GUARDRAIL_INTERVENED": logger.warning("Guardrail intervened on the content. Details:") - logger.warning(response.get("outputs", [{}])[0].get("text", {})) + guardrail_text = gr_response.get("outputs", [{}])[0].get( + "text", "" + ) + logger.warning(guardrail_text) body_transformed = response_body body_transformed["result"]["content"][0] = { "type": "text", - "text": response.get("outputs", [{}])[0].get("text", {}), + "text": guardrail_text, } statusCode = 403 response = { @@ -135,7 +228,7 @@ def lambda_handler(event, context): if mcp_method == "tools/call" and request_body: # This is a REQUEST interceptor if GUARDRAIL_ID: - response = client.apply_guardrail( + gr_response = client.apply_guardrail( guardrailIdentifier=GUARDRAIL_ID, guardrailVersion=GUARDRAIL_VERSION, source="INPUT", @@ -149,29 +242,38 @@ def lambda_handler(event, context): ], outputScope="FULL", ) - logger.info(f"Guardrail response: {response}") + logger.info(f"Guardrail response: {gr_response}") - if response.get("action", None) == "GUARDRAIL_INTERVENED": + if gr_response.get("action", None) == "GUARDRAIL_INTERVENED": logger.warning("Guardrail intervened on the content. Details:") - logger.warning( - json.dumps( - response.get("outputs", [{}])[0].get("text", {}), - indent=2, + guardrail_text = gr_response.get("outputs", [{}])[0].get( + "text", "{}" + ) + logger.warning(guardrail_text) + + # Parse the guardrail output back to a dict since the gateway + # expects body to be a JSON object, not a string + try: + transformed_body = json.loads(guardrail_text) + except (json.JSONDecodeError, TypeError): + # If guardrail output isn't valid JSON, pass through original request + logger.error( + "Guardrail output is not valid JSON, passing through original request" ) - ) - logger.info( - f"Interceptor response after guardrail intervention: {response}" - ) - return { + transformed_body = request_body + + response = { "interceptorOutputVersion": "1.0", "mcp": { "transformedGatewayRequest": { - "body": response.get("outputs", [{}])[0].get( - "text", {} - ), + "body": transformed_body, } }, } + logger.info( + f"Interceptor response after guardrail intervention: {response}" + ) + return response else: logger.info( "Guardrail did not intervene. Passing through original request." diff --git a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/mcp_proxy_lambda.py b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/mcp_proxy_lambda.py index 128123fd..bb5551d6 100644 --- a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/mcp_proxy_lambda.py +++ b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/mcp_proxy_lambda.py @@ -11,15 +11,28 @@ import base64 import urllib.request import urllib.parse import urllib.error +import logging from botocore.auth import SigV4Auth from botocore.awsrequest import AWSRequest import boto3 +# Configure logging +logger = logging.getLogger() +logger.setLevel(logging.DEBUG) + # Configuration from environment variables GATEWAY_URL = os.environ.get("GATEWAY_URL", "") COGNITO_DOMAIN = os.environ.get("COGNITO_DOMAIN", "") CLIENT_ID = os.environ.get("CLIENT_ID", "") CLIENT_SECRET = os.environ.get("CLIENT_SECRET", "") +CALLBACK_LAMBDA_URL = os.environ.get("CALLBACK_LAMBDA_URL", "") +RESOURCE_SERVER_ID = os.environ.get("RESOURCE_SERVER_ID", "") +MCP_METADATA_KEY = os.environ.get("MCP_METADATA_KEY", "com.example/target") + +# Allowed redirect URIs for the OAuth callback, passed from CDK as a +# JSON-encoded list. Must match the Cognito client's registered callbackUrls +# to prevent open-redirect attacks. +ALLOWED_REDIRECT_URIS = json.loads(os.environ.get("ALLOWED_REDIRECT_URIS", "[]")) def sign_request(request): @@ -43,7 +56,7 @@ def sign_request(request): def lambda_handler(event, context): """Main Lambda handler - routes requests based on path.""" - print(f"Event: {json.dumps(event)}") + logger.debug(f"Event: {json.dumps(event)}") # Support both ALB and API Gateway v2 (HTTP API) events # ALB uses: path, httpMethod @@ -53,7 +66,7 @@ def lambda_handler(event, context): "http", {} ).get("method", "GET") - print(f"Method: {method}, Path: {path}") + logger.debug(f"Method: {method}, Path: {path}") if method == "OPTIONS": return { @@ -79,7 +92,7 @@ def lambda_handler(event, context): return handle_token(event) elif path == "/register" and method == "POST": return handle_dcr(event) - elif path == "/mcp": + elif path == "/mcp" or path.endswith("/mcp"): return proxy_to_gateway(event) else: return {"statusCode": 404, "body": json.dumps({"error": "Not found"})} @@ -103,7 +116,13 @@ def handle_oauth_metadata(event): "authorization_endpoint": f"{api_url}/authorize", "token_endpoint": f"{api_url}/token", "registration_endpoint": f"{api_url}/register", - "scopes_supported": ["openid", "profile", "email"], + "scopes_supported": [ + "openid", + "profile", + "email", + f"{RESOURCE_SERVER_ID}/mcp.read", + f"{RESOURCE_SERVER_ID}/mcp.write", + ], "response_types_supported": ["code"], "grant_types_supported": ["authorization_code", "refresh_token"], "token_endpoint_auth_methods_supported": ["none", "client_secret_post"], @@ -125,6 +144,13 @@ def handle_protected_resource_metadata(event): "resource": f"{api_url}/mcp", "authorization_servers": [api_url], "bearer_methods_supported": ["header"], + "scopes_supported": [ + "openid", + "profile", + "email", + f"{RESOURCE_SERVER_ID}/mcp.read", + f"{RESOURCE_SERVER_ID}/mcp.write", + ], }, ) @@ -135,40 +161,40 @@ def handle_authorize(event): Since Lambda is stateless, we encode the original redirect_uri in the state parameter so it survives across Lambda invocations. """ - print("=== HANDLE_AUTHORIZE DEBUG ===") + logger.debug("=== HANDLE_AUTHORIZE DEBUG ===") params = event.get("queryStringParameters", {}) or {} - print(f"Original params: {json.dumps(params)}") + logger.debug(f"Original params: {json.dumps(params)}") # Remove unsupported parameters (Cognito doesn't support 'resource' parameter) if "resource" in params: - print(f"Removing 'resource' parameter: {params['resource']}") + logger.debug(f"Removing 'resource' parameter: {params['resource']}") params.pop("resource", None) - # Fix scope parameter: convert + to spaces (Cognito expects space-separated scopes) + # Fix scope parameter: URL-decode and normalize spaces if "scope" in params: - # In URL encoding, + represents a space, so replace + with actual spaces - params["scope"] = params["scope"].replace("+", " ") - print(f"Fixed scope parameter: {params['scope']}") + # URL-decode first (handles %2F etc.), then normalize + to spaces + params["scope"] = urllib.parse.unquote(params["scope"]).replace("+", " ") + logger.debug(f"Fixed scope parameter: {params['scope']}") # Override client_id - print(f"Original client_id: {params.get('client_id', 'N/A')}") + logger.debug(f"Original client_id: {params.get('client_id', 'N/A')}") params["client_id"] = CLIENT_ID - print(f"Overridden client_id: {CLIENT_ID}") + logger.debug(f"Overridden client_id: {CLIENT_ID}") # Encode original redirect_uri and state together in a new state parameter original_redirect_uri = params.get("redirect_uri", "") original_state = params.get("state", "") - print(f"Original redirect_uri (URL encoded): {original_redirect_uri}") - print(f"Original state (URL encoded): {original_state}") + logger.debug(f"Original redirect_uri (URL encoded): {original_redirect_uri}") + logger.debug(f"Original state (URL encoded): {original_state}") if original_redirect_uri: # URL-decode both state and redirect_uri before storing decoded_state = urllib.parse.unquote(original_state) decoded_redirect_uri = urllib.parse.unquote(original_redirect_uri) - print(f"Decoded state: {decoded_state}") - print(f"Decoded redirect_uri: {decoded_redirect_uri}") + logger.debug(f"Decoded state: {decoded_state}") + logger.debug(f"Decoded redirect_uri: {decoded_redirect_uri}") # Create compound state: base64(json({original_state, original_redirect_uri})) compound_state = { @@ -180,18 +206,18 @@ def handle_authorize(event): ).decode() params["state"] = encoded_state - print(f"Compound state created: {json.dumps(compound_state)}") - print(f"Encoded state: {encoded_state}") + logger.debug(f"Compound state created: {json.dumps(compound_state)}") + logger.debug(f"Encoded state: {encoded_state}") # Replace redirect_uri with our callback api_url = get_api_url(event) params["redirect_uri"] = f"{api_url}/callback" - print(f"New redirect_uri: {params['redirect_uri']}") + logger.debug(f"New redirect_uri: {params['redirect_uri']}") - print(f"Final params being sent to Cognito: {json.dumps(params)}") + logger.debug(f"Final params being sent to Cognito: {json.dumps(params)}") redirect_url = f"{COGNITO_DOMAIN.rstrip('/')}/oauth2/authorize?{urllib.parse.urlencode(params)}" - print(f"Redirect URL: {redirect_url}") - print("=== END HANDLE_AUTHORIZE DEBUG ===") + logger.debug(f"Redirect URL: {redirect_url}") + logger.debug("=== END HANDLE_AUTHORIZE DEBUG ===") return {"statusCode": 302, "headers": {"Location": redirect_url}, "body": ""} @@ -206,10 +232,10 @@ def handle_callback(event): encoded_state = params.get("state", "") error = params.get("error", "") - print("=== HANDLE_CALLBACK DEBUG ===") - print(f"Code: {code}") - print(f"State (URL encoded): {encoded_state}") - print(f"Error: {error}") + logger.debug("=== HANDLE_CALLBACK DEBUG ===") + logger.debug(f"Code: {code}") + logger.debug(f"State (URL encoded): {encoded_state}") + logger.debug(f"Error: {error}") if error: return json_response(400, {"error": error}) @@ -218,33 +244,55 @@ def handle_callback(event): try: # First, URL-decode the state parameter (Cognito sends it URL-encoded) encoded_state_clean = urllib.parse.unquote(encoded_state) - print(f"State (URL decoded): {encoded_state_clean}") + logger.debug(f"State (URL decoded): {encoded_state_clean}") # Handle any remaining URL encoding issues (spaces become + or %20) encoded_state_clean = encoded_state_clean.replace(" ", "+") # The state should now be proper base64, no padding needed - print(f"State (ready for base64 decode): {encoded_state_clean}") - print(f"State length: {len(encoded_state_clean)}") + logger.debug(f"State (ready for base64 decode): {encoded_state_clean}") + logger.debug(f"State length: {len(encoded_state_clean)}") decoded = base64.urlsafe_b64decode(encoded_state_clean).decode() - print(f"Decoded JSON: {decoded}") + logger.debug(f"Decoded JSON: {decoded}") compound_state = json.loads(decoded) original_state = compound_state.get("state", "") original_redirect_uri = compound_state.get("redirect_uri", "") - print(f"Original state: {original_state}") - print(f"Original redirect_uri: {original_redirect_uri}") - print("=== END HANDLE_CALLBACK DEBUG ===") + logger.debug(f"Original state: {original_state}") + logger.debug(f"Original redirect_uri: {original_redirect_uri}") + logger.debug("=== END HANDLE_CALLBACK DEBUG ===") except Exception as e: - print(f"Error decoding state: {e}, state={encoded_state}") - print("=== END HANDLE_CALLBACK DEBUG (ERROR) ===") + logger.error(f"Error decoding state: {e}, state={encoded_state}") + logger.error("=== END HANDLE_CALLBACK DEBUG (ERROR) ===") return json_response(400, {"error": "Invalid state parameter"}) if not original_redirect_uri: return json_response(400, {"error": "Missing redirect_uri in state"}) + # Validate redirect_uri against the allowlist to prevent open-redirect attacks. + # A crafted state blob could otherwise redirect the authorization code to an + # attacker-controlled URL. + # + # Localhost URIs with any port are allowed because IDE clients (VS Code, Kiro) + # spin up an ephemeral local server on a random port for the OAuth callback. + normalized = original_redirect_uri.rstrip("/") + parsed = urllib.parse.urlparse(normalized) + is_localhost = parsed.scheme == "http" and parsed.hostname in ( + "localhost", + "127.0.0.1", + ) + allowed_normalized = [u.rstrip("/") for u in ALLOWED_REDIRECT_URIS] + if not is_localhost and normalized not in allowed_normalized: + logger.warning( + f"Rejected redirect_uri not in allowlist: {original_redirect_uri}" + ) + logger.debug(f"Normalized redirect_uri: {normalized}") + logger.debug(f"Allowed URIs (raw): {ALLOWED_REDIRECT_URIS}") + logger.debug(f"Allowed URIs (normalized): {allowed_normalized}") + return json_response(400, {"error": "invalid_redirect_uri"}) + # Forward to VS Code's callback with original state forward_params = urllib.parse.urlencode({"code": code, "state": original_state}) forward_url = f"{original_redirect_uri}?{forward_params}" @@ -302,19 +350,81 @@ def handle_dcr(event): def proxy_to_gateway(event): - """Forward MCP requests to AgentCore Gateway.""" - print("proxy_to_gateway") + """Forward MCP requests to AgentCore Gateway with optional target filtering.""" + logger.info("proxy_to_gateway") path = event.get("path", "/") method = event.get("httpMethod") or event.get("requestContext", {}).get( "http", {} ).get("method", "GET") headers = event.get("headers", {}) body = event.get("body", "") - print(f"Proxying to gateway - Method: {method}, Path: {path}") - print(f"Headers: {json.dumps(headers)}") + logger.info(f"Proxying to gateway - Method: {method}, Path: {path}") + logger.debug(f"Headers: {json.dumps(headers)}") if event.get("isBase64Encoded") and body: body = base64.b64decode(body) + # === EXTRACT TARGET FROM PATH === + # /mcp → no filter (return all tools) + # /gitlab/mcp → filter = "gitlab" + # /weather/mcp → filter = "weather" + target_filter = None + + if path and path != "/mcp": + # Remove leading/trailing slashes and split + parts = path.strip("/").split("/") + + # Check if path has format: /mcp + if len(parts) == 2 and parts[-1] == "mcp": + target_filter = parts[0] + logger.info(f"Target filter extracted from path: '{target_filter}'") + elif len(parts) > 2 and parts[-1] == "mcp": + # Handle nested paths like /api/v1/gitlab/mcp + target_filter = parts[-2] + logger.info(f"Target filter extracted from nested path: '{target_filter}'") + else: + logger.debug(f"Path '{path}' does not match target pattern, no filtering") + else: + logger.debug("Default path '/mcp' - returning all tools (no filtering)") + + # === INJECT INTO MCP _meta ONLY IF TARGET FILTER EXISTS === + if method == "POST" and body: + try: + # Parse MCP JSON-RPC request + mcp_request = json.loads(body if isinstance(body, str) else body.decode()) + + # Only inject _meta if we have a target filter AND it's a tool-related method + if target_filter and mcp_request.get("method") in [ + "tools/list", + "tools/call", + ]: + # Ensure _meta exists + if "_meta" not in mcp_request: + mcp_request["_meta"] = {} + + # Inject target filter using reverse DNS notation + mcp_request["_meta"][MCP_METADATA_KEY] = target_filter + + logger.info(f"Injected _meta: {MCP_METADATA_KEY} = '{target_filter}'") + logger.debug( + f"Modified MCP request: {json.dumps(mcp_request, indent=2)}" + ) + else: + if not target_filter: + logger.debug( + "No target filter - NOT injecting _meta (will return all tools)" + ) + else: + logger.debug( + f"Method '{mcp_request.get('method')}' - not injecting _meta" + ) + + # Re-serialize (possibly modified) request + body = json.dumps(mcp_request).encode() + + except json.JSONDecodeError as e: + logger.error(f"Failed to parse MCP request: {e}") + # Continue with original body if parsing fails + # target_url = f"{GATEWAY_URL.rstrip('/mcp')}{path}" if path != "/" else GATEWAY_URL target_url = GATEWAY_URL # Build request headers @@ -328,7 +438,7 @@ def proxy_to_gateway(event): if headers.get(h): req_headers[h.title()] = headers[h] - print(json.dumps(req_headers)) + logger.debug(json.dumps(req_headers)) try: if method == "POST" and body: data = body.encode() if isinstance(body, str) else body @@ -354,7 +464,7 @@ def proxy_to_gateway(event): if auth: req.add_header("Authorization", auth) - print( + logger.debug( "{}\n{}\r\n{}\r\n\r\n{}".format( "-----------START-----------", (req.method or "GET") + " " + req.full_url, @@ -365,8 +475,8 @@ def proxy_to_gateway(event): with urllib.request.urlopen(req, timeout=60) as resp: resp_body = resp.read().decode() - print(resp_body) - print(resp.headers) + logger.debug(resp_body) + logger.debug(resp.headers) resp_headers = { "Content-Type": resp.headers.get("Content-Type", "application/json") } @@ -387,7 +497,9 @@ def proxy_to_gateway(event): ) www_auth_rewritten = www_auth.replace(gateway_base, api_url) resp_headers["WWW-Authenticate"] = www_auth_rewritten - print(f"Rewrote WWW-Authenticate: {www_auth} -> {www_auth_rewritten}") + logger.debug( + f"Rewrote WWW-Authenticate: {www_auth} -> {www_auth_rewritten}" + ) return { "statusCode": resp.status, @@ -396,7 +508,7 @@ def proxy_to_gateway(event): } except urllib.error.HTTPError as e: error = e.read().decode() - print(f"Gateway error response: {error}") + logger.error(f"Gateway error response: {error}") # Rewrite any Gateway URLs in error response body api_url = get_api_url(event) @@ -404,7 +516,7 @@ def proxy_to_gateway(event): gateway_base = GATEWAY_URL[:-4] if GATEWAY_URL.endswith("/mcp") else GATEWAY_URL error_rewritten = error.replace(gateway_base, api_url) if error != error_rewritten: - print("Rewrote Gateway URL in error body") + logger.debug("Rewrote Gateway URL in error body") resp_headers = {"Content-Type": "application/json"} @@ -413,7 +525,7 @@ def proxy_to_gateway(event): if www_auth: www_auth_rewritten = www_auth.replace(gateway_base, api_url) resp_headers["WWW-Authenticate"] = www_auth_rewritten - print( + logger.debug( f"Rewrote WWW-Authenticate in error: {www_auth} -> {www_auth_rewritten}" ) diff --git a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/pre_token_generation_lambda.py b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/pre_token_generation_lambda.py index 0e9cf22b..29bba684 100644 --- a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/pre_token_generation_lambda.py +++ b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lambda/pre_token_generation_lambda.py @@ -1,9 +1,12 @@ import json import logging +import os logger = logging.getLogger() logger.setLevel(logging.INFO) +RESOURCE_SERVER_ID = os.environ.get("RESOURCE_SERVER_ID", "") + def lambda_handler(event, context): """ @@ -27,6 +30,10 @@ def lambda_handler(event, context): if email == "vscode-admin@example.com": # Example: Set custom tag based on email custom_tag = "admin_user" + elif email == "vscode-readonly@example.com": + # Test user with limited scopes — only mcp.read, no mcp.write + # Used to verify the gateway rejects requests with insufficient scopes + custom_tag = "readonly_user" else: custom_tag = "regular_user" @@ -74,13 +81,34 @@ def lambda_handler(event, context): "claimsToAddOrOverride" ] = {} - # Add email and user_tag to access token + # Add email, user_tag, and aud to access token event["response"]["claimsAndScopeOverrideDetails"]["accessTokenGeneration"][ "claimsToAddOrOverride" ]["email"] = email event["response"]["claimsAndScopeOverrideDetails"]["accessTokenGeneration"][ "claimsToAddOrOverride" ]["user_tag"] = custom_tag + # Inject the audience claim so the proxy Lambda and AgentCore Gateway + # can verify the token is scoped to this resource server. + # Cognito requires aud to match the current session's app client ID. + client_id = event.get("callerContext", {}).get("clientId", "") + if client_id: + event["response"]["claimsAndScopeOverrideDetails"]["accessTokenGeneration"][ + "claimsToAddOrOverride" + ]["aud"] = client_id + + # For the readonly test user, suppress the mcp.write and mcp.read scopes so the + # gateway rejects write operations with insufficient_scope. + if custom_tag == "readonly_user": + event["response"]["claimsAndScopeOverrideDetails"]["accessTokenGeneration"][ + "scopesToSuppress" + ] = [ + f"{RESOURCE_SERVER_ID}/mcp.write", + f"{RESOURCE_SERVER_ID}/mcp.read", + ] + logger.info( + "Suppressed mcp.write and mcp.read scopes for readonly test user" + ) logger.info( f"Added custom claims to ID token and Access token: " diff --git a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lib/agentcore-policy-engine.ts b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lib/agentcore-policy-engine.ts index e7aab738..63033604 100644 --- a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lib/agentcore-policy-engine.ts +++ b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lib/agentcore-policy-engine.ts @@ -73,6 +73,13 @@ export class AgentCorePolicyEngine extends Construct { resources: ['*'], }), ); + this.policyFunction.addToRolePolicy( + new PolicyStatement({ + effect: Effect.ALLOW, + actions: ['iam:GetRole', 'iam:GetRolePolicy', 'iam:ListAttachedRolePolicies', 'iam:ListRolePolicies'], + resources: ["arn:aws:iam::*:role/*"], + }), + ); // Grant permission to pass the gateway role if provided if (props.gatewayRole) { diff --git a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lib/enterprise-mcp-infra-stack.ts b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lib/enterprise-mcp-infra-stack.ts index 01d38f8f..1c331b72 100644 --- a/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lib/enterprise-mcp-infra-stack.ts +++ b/01-tutorials/02-AgentCore-gateway/04-integration/04-enterprise-mcp-demo/cdk/lib/enterprise-mcp-infra-stack.ts @@ -5,11 +5,11 @@ import * as iam from "aws-cdk-lib/aws-iam"; import * as ec2 from "aws-cdk-lib/aws-ec2"; import * as elbv2 from "aws-cdk-lib/aws-elasticloadbalancingv2"; import * as targets from "aws-cdk-lib/aws-elasticloadbalancingv2-targets"; -import * as apigatewayv2 from "aws-cdk-lib/aws-apigatewayv2"; -import * as apigatewayv2integrations from "aws-cdk-lib/aws-apigatewayv2-integrations"; import * as certificatemanager from "aws-cdk-lib/aws-certificatemanager"; import * as route53 from "aws-cdk-lib/aws-route53"; import * as route53targets from "aws-cdk-lib/aws-route53-targets"; +import * as wafv2 from "aws-cdk-lib/aws-wafv2"; +import * as s3 from "aws-cdk-lib/aws-s3"; import { Construct } from "constructs"; import * as path from "path"; import * as agentcore from "@aws-cdk/aws-bedrock-agentcore-alpha"; @@ -21,20 +21,46 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { super(scope, id, props); // ============================================================================= - // CONFIGURATION FROM CONTEXT + // SECURITY POSTURE – what this stack provides and what it does NOT + // ============================================================================= + // PROVIDED: + // • Cognito User Pool (admin-only sign-up, MFA-ready, strong password policy) + // with a Pre-Token Generation Lambda that injects audience/role claims. + // • OAuth 2.0 Authorization Code Grant + custom scopes (mcp.read / mcp.write). + // • JWT audience validation in the proxy Lambda before any AgentCore call. + // • AgentCore Gateway Cognito authorizer (token verified a second time by AWS). + // • Cedar policy engine enforcing fine-grained per-user tool access (ENFORCE). + // • Bedrock Guardrails (PII masking/blocking) applied at the interceptor layer. + // • Lambda-in-VPC proxy (private subnet, NAT egress only). + // • VPC Interface Endpoint for bedrock-agentcore (InvokeGateway traffic stays + // on the AWS private network; never crosses the public internet). + // • Internet-facing ALB with: + // – TLS 1.2+ termination on a custom domain (ACM certificate). + // – dropInvalidHeaderFields (HTTP request-smuggling mitigation). + // – Host-header condition on every forwarding rule; raw *.elb DNS 404s. + // – HTTP → HTTPS permanent redirect on port 80. + // • WAF WebACL (Regional, attached to ALB): + // – IP rate limit (1 000 req / 5 min per IP) + // – AWS IP Reputation list (botnets, TOR exits, scanners) + // – Core Rule Set / OWASP Top 10 + // – Known Bad Inputs + // – Bot Control – COMMON level (COUNT mode; switch to BLOCK post-validation) + // • Reserved Lambda concurrency caps on every function (DoS blast-radius limit). + // • Gateway resource policy restricting InvokeGateway to the VPC. + // • Shield Standard (automatically active on public ALBs, L3/L4 DDoS only). + // • ALB access logging to S3 (encrypted, 90-day lifecycle, public access blocked). + // • Redirect URI allowlist in handle_callback (prevents open-redirect attacks). + // + // NOT PROVIDED – consider adding before going to production: + // • Shield Advanced (L7 DDoS + SRT + cost protection – subscription required). + // • Bot Control TARGETED inspection level (additional WAF cost). + // • CloudTrail / Security Hub integration for centralised audit. + // • ALB access-log Athena workgroup / GuardDuty findings. // ============================================================================= - // Deployment type is determined by CDK context variable - // Use: cdk deploy -c deploymentType=API_GATEWAY - // Or set in cdk.context.json - const deploymentType = this.node.tryGetContext("deploymentType") || "ALB"; - - if (!["ALB", "API_GATEWAY"].includes(deploymentType)) { - throw new Error(`Invalid deployment type: ${deploymentType}. Must be ALB or API_GATEWAY`); - } - - const isAlbDeployment = deploymentType === "ALB"; - const isApiGatewayDeployment = deploymentType === "API_GATEWAY"; + // ============================================================================= + // CONFIGURATION FROM CONTEXT + // ============================================================================= // Domain and infrastructure configuration from context const domainName = this.node.tryGetContext("domainName") || ""; @@ -42,6 +68,18 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { const hostedZoneId = this.node.tryGetContext("hostedZoneId") || ""; const certificateArn = this.node.tryGetContext("certificateArn") || ""; + // MCP metadata key for path-based routing (reverse DNS notation) + // Used in _meta field to filter tools by target + const mcpMetadataKey = this.node.tryGetContext("mcpMetadataKey") || "com.example/target"; + + // ============================================================================= + // RESOURCE SERVER IDENTIFIER + // The resource server identifier doubles as the OAuth audience claim + // (RFC 8707 resource indicator / RFC 9728 protected-resource metadata). + // All access tokens issued for the MCP endpoint carry this as their `aud`. + // ============================================================================= + const resourceServerIdentifier = "agentcore-gateway"; + // ============================================================================= // PRE-TOKEN GENERATION LAMBDA // ============================================================================= @@ -78,7 +116,16 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { role: preTokenLambdaRole, timeout: cdk.Duration.seconds(60), memorySize: 128, + // Bound concurrency so a token-generation burst cannot starve other + // workloads; tune this value to your peak sign-in rate. + reservedConcurrentExecutions: 50, description: "Lambda to add custom claims to Cognito tokens based on user email", + environment: { + // Injected into every access token as the `aud` claim so that the + // proxy Lambda's audience validator can verify the token is scoped + // to this resource server (RFC 8707 / MCP Authorization spec). + RESOURCE_SERVER_ID: resourceServerIdentifier, + }, } ); @@ -142,7 +189,7 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { const resourceServer = userPool.addResourceServer( "AgentCoreResourceServer", { - identifier: "agentcore-gateway", + identifier: resourceServerIdentifier, userPoolResourceServerName: "AgentCore Gateway", scopes: [readScope, writeScope], } @@ -194,59 +241,350 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { } ); + // ============================================================================= + // VPC SETUP + // ============================================================================= + + // Create a new VPC with public subnets and internet gateway + const vpc = new ec2.Vpc(this, "McpVpc", { + maxAzs: 2, + natGateways: 1, // NAT Gateway for Lambda in private subnet to access internet + subnetConfiguration: [ + { + name: "Public", + subnetType: ec2.SubnetType.PUBLIC, + cidrMask: 24, + }, + { + name: "Private", + subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS, + cidrMask: 24, + }, + ], + }); + + // ============================================================================= + // VPC INTERFACE ENDPOINT – bedrock-agentcore + // Keeps all InvokeGateway traffic from the proxy Lambda on the AWS private + // network; packets never traverse the public internet. + // + // Security group: allows HTTPS (443) inbound only from the VPC CIDR so that + // only resources inside this VPC can use the endpoint. All other traffic is + // implicitly denied. + // + // NOTE: Interface endpoints incur an hourly charge per AZ plus a per-GB + // data-processing fee. See https://aws.amazon.com/privatelink/pricing/ + // ============================================================================= + const agentcoreEndpointSg = new ec2.SecurityGroup( + this, + "AgentCoreEndpointSg", + { + vpc, + description: + "Allow HTTPS from VPC to bedrock-agentcore interface endpoint", + allowAllOutbound: false, + } + ); + agentcoreEndpointSg.addIngressRule( + ec2.Peer.ipv4(vpc.vpcCidrBlock), + ec2.Port.tcp(443), + "HTTPS from VPC to AgentCore endpoint" + ); + + // Interface endpoint for the AgentCore data-plane (InvokeGateway). + // Placed in the private subnets alongside the proxy Lambda so no NAT hop + // is needed for AgentCore API calls. + vpc.addInterfaceEndpoint("AgentCoreEndpoint", { + service: new ec2.InterfaceVpcEndpointService( + `com.amazonaws.${this.region}.bedrock-agentcore.gateway`, + 443 + ), + subnets: { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }, + securityGroups: [agentcoreEndpointSg], + privateDnsEnabled: true, + }); + + // ============================================================================= + // WAF WEB ACL + // Layers of protection applied (all free-tier managed rule groups unless noted): + // 1. IP-level rate limit – 1 000 req / 5 min per source IP + // 2. AWSManagedRulesCommonRuleSet (CRS) – OWASP Top 10 signatures + // 3. AWSManagedRulesKnownBadInputsRuleSet – known attack patterns + // 4. AWSManagedRulesAmazonIpReputationList – AWS threat-intel IP block list + // 5. AWSManagedRulesBotControlRuleSet (common bots, COUNT mode) – set to + // COUNT so legitimate MCP clients are not accidentally blocked during + // testing; switch to BLOCK in production after validating traffic. + // + // NOTE: rules 2–5 are scoped-down to exclude the OAuth flow endpoints + // (/token, /authorize, /callback, /register) whose bodies legitimately + // contain patterns (redirect_uri, code_verifier, grant_type, etc.) that + // signature-based rules would otherwise flag as false positives. + // + // DDoS protection: Shield Standard is enabled automatically on any public + // ALB at no extra cost; it mitigates volumetric L3/L4 attacks. For L7 + // DDoS protection and SRT access, subscribe to Shield Advanced separately. + // ============================================================================= + + // Helper: re-usable OAuth-path scope-down statement (shared by CRS, KBI, + // IP-reputation and Bot-Control rules so we don't repeat the block 4 times). + const oauthScopeDown: wafv2.CfnWebACL.StatementProperty = { + notStatement: { + statement: { + orStatement: { + statements: [ + { + byteMatchStatement: { + searchString: "/token", + fieldToMatch: { uriPath: {} }, + textTransformations: [{ priority: 0, type: "LOWERCASE" }], + positionalConstraint: "EXACTLY", + }, + }, + { + byteMatchStatement: { + searchString: "/authorize", + fieldToMatch: { uriPath: {} }, + textTransformations: [{ priority: 0, type: "LOWERCASE" }], + positionalConstraint: "EXACTLY", + }, + }, + { + byteMatchStatement: { + searchString: "/callback", + fieldToMatch: { uriPath: {} }, + textTransformations: [{ priority: 0, type: "LOWERCASE" }], + positionalConstraint: "EXACTLY", + }, + }, + { + byteMatchStatement: { + searchString: "/register", + fieldToMatch: { uriPath: {} }, + textTransformations: [{ priority: 0, type: "LOWERCASE" }], + positionalConstraint: "EXACTLY", + }, + }, + ], + }, + }, + }, + }; + + let webAcl: wafv2.CfnWebACL; + + webAcl = new wafv2.CfnWebACL(this, "McpAlbWebAcl", { + name: "mcp-alb-web-acl", + scope: "REGIONAL", + defaultAction: { allow: {} }, + visibilityConfig: { + cloudWatchMetricsEnabled: true, + metricName: "mcp-alb-web-acl", + sampledRequestsEnabled: true, + }, + rules: [ + // ── 1. IP-level rate limit ──────────────────────────────────────────── + // 1 000 requests per 5-minute window per source IP. + { + name: "RateLimit", + priority: 1, + action: { block: {} }, + visibilityConfig: { + cloudWatchMetricsEnabled: true, + metricName: "RateLimit", + sampledRequestsEnabled: true, + }, + statement: { + rateBasedStatement: { + limit: 1000, + aggregateKeyType: "IP", + }, + }, + }, + + // ── 2. AWS IP Reputation list ───────────────────────────────────────── + // Blocks IPs on AWS-maintained threat-intel lists (botnets, TOR exit + // nodes, scanners). Applied before expensive rule evaluation. + { + name: "AWSManagedRulesIPReputation", + priority: 2, + overrideAction: { none: {} }, + visibilityConfig: { + cloudWatchMetricsEnabled: true, + metricName: "AWSManagedRulesIPReputation", + sampledRequestsEnabled: true, + }, + statement: { + managedRuleGroupStatement: { + vendorName: "AWS", + name: "AWSManagedRulesAmazonIpReputationList", + scopeDownStatement: oauthScopeDown, + }, + }, + }, + + // ── 3. Core Rule Set (OWASP Top 10) ────────────────────────────────── + { + name: "AWSManagedRulesCRS", + priority: 3, + overrideAction: { none: {} }, + visibilityConfig: { + cloudWatchMetricsEnabled: true, + metricName: "AWSManagedRulesCRS", + sampledRequestsEnabled: true, + }, + statement: { + managedRuleGroupStatement: { + vendorName: "AWS", + name: "AWSManagedRulesCommonRuleSet", + scopeDownStatement: oauthScopeDown, + }, + }, + }, + + // ── 4. Known Bad Inputs ─────────────────────────────────────────────── + { + name: "AWSManagedRulesKnownBadInputs", + priority: 4, + overrideAction: { none: {} }, + visibilityConfig: { + cloudWatchMetricsEnabled: true, + metricName: "AWSManagedRulesKnownBadInputs", + sampledRequestsEnabled: true, + }, + statement: { + managedRuleGroupStatement: { + vendorName: "AWS", + name: "AWSManagedRulesKnownBadInputsRuleSet", + scopeDownStatement: oauthScopeDown, + }, + }, + }, + + // ── 5. Bot Control (common bots – COUNT mode) ───────────────────────── + // Runs in COUNT so automated MCP clients are not accidentally blocked + // during testing/piloting. Review CloudWatch metrics and switch + // overrideAction to { none: {} } (BLOCK) once traffic is validated. + { + name: "AWSManagedRulesBotControl", + priority: 5, + overrideAction: { count: {} }, + visibilityConfig: { + cloudWatchMetricsEnabled: true, + metricName: "AWSManagedRulesBotControl", + sampledRequestsEnabled: true, + }, + statement: { + managedRuleGroupStatement: { + vendorName: "AWS", + name: "AWSManagedRulesBotControlRuleSet", + managedRuleGroupConfigs: [ + { awsManagedRulesBotControlRuleSet: { inspectionLevel: "COMMON" } }, + ], + scopeDownStatement: oauthScopeDown, + }, + }, + }, + ], + }); + // ============================================================================= // LAMBDA FUNCTIONS // ============================================================================= - // Create Lambda execution role - const lambdaRole = new iam.Role(this, "McpProxyLambdaRole", { + // --------------------------------------------------------------------------- + // SECURITY: Dedicated least-privilege IAM role per Lambda function group. + // + // Role │ Used by │ Permissions + // ──────────────────┼────────────────────────────────┼──────────────────────── + // proxyLambdaRole │ McpProxyLambda (VPC-resident) │ VPC execution + + // │ │ bedrock-agentcore:InvokeGateway (scoped to gateway ARN after creation) + // │ │ bedrock-agentcore:CompleteResourceTokenAuth / GetResourceOauth2Token + // interceptorRole │ McpInterceptorLambda │ Basic execution + + // │ │ bedrock:ApplyGuardrail (scoped to this guardrail) + // toolLambdaRole │ WeatherLambda, InventoryLambda,│ Basic execution only – + // │ UserDetailsLambda │ tool Lambdas receive events from AgentCore + // │ │ and need no AWS API permissions + // --------------------------------------------------------------------------- + + // ── Proxy Lambda role ──────────────────────────────────────────────────────── + // Needs VPC access (private subnet) + AgentCore gateway invocation. + // NOTE: secretsmanager resource is scoped to "*" here as a placeholder – + // replace with the exact secret ARN once you create your Secrets Manager + // secret for the OAuth client credentials. + const proxyLambdaRole = new iam.Role(this, "McpProxyLambdaRole", { assumedBy: new iam.ServicePrincipal("lambda.amazonaws.com"), + description: "Least-privilege role for the MCP proxy Lambda (VPC-resident)", managedPolicies: [ + // Basic CloudWatch Logs permissions iam.ManagedPolicy.fromAwsManagedPolicyName( "service-role/AWSLambdaBasicExecutionRole" ), - iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonBedrockFullAccess"), + // ENI create/describe/delete for VPC placement + iam.ManagedPolicy.fromAwsManagedPolicyName( + "service-role/AWSLambdaVPCAccessExecutionRole" + ), ], }); - // Add inline policy for AgentCore Identity and Secrets Manager - lambdaRole.addToPolicy( + // AgentCore identity token exchange – scoped to gateway ARN added after + // gateway creation (see proxyLambdaRole.addToPolicy below the gateway block). + proxyLambdaRole.addToPolicy( new iam.PolicyStatement({ + sid: "AgentCoreIdentityTokenExchange", effect: iam.Effect.ALLOW, actions: [ "bedrock-agentcore:CompleteResourceTokenAuth", "bedrock-agentcore:GetResourceOauth2Token", ], + // These actions do not support resource-level conditions in the current + // AgentCore IAM reference; restrict once supported. resources: ["*"], }) ); - lambdaRole.addToPolicy( - new iam.PolicyStatement({ - effect: iam.Effect.ALLOW, - actions: [ - "bedrock:ApplyGuardrail" - ], - resources:[guardrails.attrGuardrailArn] - })); + // bedrock-agentcore:InvokeGateway is added below the gateway construct so we + // can scope it to the specific gateway ARN. - lambdaRole.addToPolicy( + // ── Interceptor Lambda role ────────────────────────────────────────────────── + // Only needs to call bedrock:ApplyGuardrail on this specific guardrail. + const interceptorLambdaRole = new iam.Role(this, "McpInterceptorLambdaRole", { + assumedBy: new iam.ServicePrincipal("lambda.amazonaws.com"), + description: "Least-privilege role for the MCP interceptor Lambda", + managedPolicies: [ + iam.ManagedPolicy.fromAwsManagedPolicyName( + "service-role/AWSLambdaBasicExecutionRole" + ), + ], + }); + + interceptorLambdaRole.addToPolicy( new iam.PolicyStatement({ + sid: "ApplyGuardrailThisGuardrailOnly", effect: iam.Effect.ALLOW, - actions: ["bedrock-agentcore:InvokeGateway"], - resources: ["*"], + actions: ["bedrock:ApplyGuardrail"], + // Scoped to the exact guardrail created in this stack. + resources: [guardrails.attrGuardrailArn], }) ); - lambdaRole.addToPolicy( - new iam.PolicyStatement({ - effect: iam.Effect.ALLOW, - actions: ["secretsmanager:GetSecretValue"], - resources: ["*"], - }) - ); + // ── Tool Lambda role ───────────────────────────────────────────────────────── + // Shared by WeatherLambda, InventoryLambda, and UserDetailsLambda. + // These Lambdas are invoked by AgentCore and only need CloudWatch Logs access. + // They do NOT require any Bedrock, Secrets Manager, or AgentCore permissions. + const toolLambdaRole = new iam.Role(this, "McpToolLambdaRole", { + assumedBy: new iam.ServicePrincipal("lambda.amazonaws.com"), + description: + "Least-privilege role for MCP tool Lambdas (weather, inventory, user-details) - no AWS API permissions required", + managedPolicies: [ + iam.ManagedPolicy.fromAwsManagedPolicyName( + "service-role/AWSLambdaBasicExecutionRole" + ), + ], + }); // MCP Proxy Lambda (with increased timeout for ALB) + // Reserved concurrency: cap concurrency so a traffic burst cannot exhaust the + // account limit and starve other workloads. Tune per your traffic profile. const proxyLambda = new lambda.Function(this, "McpProxyLambda", { runtime: lambda.Runtime.PYTHON_3_12, handler: "lambda_function.lambda_handler", @@ -262,15 +600,26 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { ], }, }), - role: lambdaRole, + role: proxyLambdaRole, timeout: cdk.Duration.seconds(300), // 5 minutes for ALB memorySize: 256, + vpc: vpc, + vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }, + reservedConcurrentExecutions: 100, environment: { GATEWAY_URL: "", // Will be updated after gateway creation COGNITO_DOMAIN: `https://${cognitoDomain.domainName}.auth.${this.region}.amazoncognito.com`, CLIENT_ID: "", // Will be updated after VS Code client creation // CLIENT_SECRET: "", CALLBACK_LAMBDA_URL: "", // Will be updated after ALB creation + // The resource server identifier is used for audience validation. + // Tokens whose `aud` claim does not contain this value are rejected + // before being forwarded to the AgentCore Gateway. + RESOURCE_SERVER_ID: resourceServerIdentifier, + COGNITO_USER_POOL_ID: userPool.userPoolId, + COGNITO_REGION: this.region, + // MCP metadata key for path-based routing + MCP_METADATA_KEY: mcpMetadataKey, }, }); @@ -290,9 +639,10 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { ], }, }), - role: lambdaRole, + role: toolLambdaRole, timeout: cdk.Duration.seconds(300), // 5 minutes for ALB memorySize: 256, + reservedConcurrentExecutions: 50, }); // Inventory Lambda @@ -311,9 +661,10 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { ], }, }), - role: lambdaRole, + role: toolLambdaRole, timeout: cdk.Duration.seconds(300), // 5 minutes for ALB memorySize: 256, + reservedConcurrentExecutions: 50, }); // User Details Lambda @@ -332,9 +683,10 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { ], }, }), - role: lambdaRole, + role: toolLambdaRole, timeout: cdk.Duration.seconds(300), // 5 minutes for ALB memorySize: 256, + reservedConcurrentExecutions: 50, }); @@ -354,47 +706,94 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { ], }, }), - role: lambdaRole, + role: interceptorLambdaRole, timeout: cdk.Duration.seconds(300), // 5 minutes for ALB memorySize: 256, + reservedConcurrentExecutions: 50, environment: { "GUARDRAIL_ID": guardrails.attrGuardrailId, - "GUARDRAIL_VERSION": guardrails.attrVersion + "GUARDRAIL_VERSION": guardrails.attrVersion, + "MCP_METADATA_KEY": mcpMetadataKey, }, }); // ============================================================================= - // CONDITIONAL DEPLOYMENT: ALB OR API GATEWAY + // APPLICATION LOAD BALANCER // ============================================================================= let endpointUrl: string; - let vpc: ec2.Vpc | undefined; - let alb: elbv2.ApplicationLoadBalancer | undefined; - let httpApi: apigatewayv2.HttpApi | undefined; - if (isAlbDeployment) { - // ============================================================================= - // VPC AND APPLICATION LOAD BALANCER - // ============================================================================= + // Security group: accept HTTPS (443) and HTTP (80) only. + // All other inbound traffic is implicitly denied. + const albSecurityGroup = new ec2.SecurityGroup(this, "AlbSecurityGroup", { + vpc: vpc, + description: "ALB security group - HTTPS/HTTP ingress only", + allowAllOutbound: true, + }); + albSecurityGroup.addIngressRule( + ec2.Peer.anyIpv4(), + ec2.Port.tcp(443), + "Allow HTTPS from the internet" + ); + albSecurityGroup.addIngressRule( + ec2.Peer.anyIpv4(), + ec2.Port.tcp(80), + "Allow HTTP from the internet (redirected to HTTPS)" + ); + albSecurityGroup.addIngressRule( + ec2.Peer.anyIpv6(), + ec2.Port.tcp(443), + "Allow HTTPS from the internet (IPv6)" + ); + albSecurityGroup.addIngressRule( + ec2.Peer.anyIpv6(), + ec2.Port.tcp(80), + "Allow HTTP from the internet (IPv6, redirected to HTTPS)" + ); - // Create a new VPC with public subnets and internet gateway - vpc = new ec2.Vpc(this, "McpVpc", { - maxAzs: 2, - natGateways: 0, - subnetConfiguration: [ + // ============================================================================= + // ALB ACCESS LOG BUCKET + // S3 bucket for ALB access logs with encryption, lifecycle, and public + // access blocked. The CDK logAccessLogs() helper automatically grants + // the correct regional ELB service account write access via bucket policy. + // Requires a concrete region in the stack env (set in bin/enterprise-mcp-infra.ts). + // ============================================================================= + const albLogBucket = new s3.Bucket(this, "AlbAccessLogBucket", { + bucketName: `mcp-alb-access-logs-${this.account}-${this.region}`, + encryption: s3.BucketEncryption.S3_MANAGED, + blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL, + enforceSSL: true, + versioned: false, + lifecycleRules: [ { - name: "Public", - subnetType: ec2.SubnetType.PUBLIC, - cidrMask: 24, + id: "ExpireAfter90Days", + expiration: cdk.Duration.days(90), }, ], + removalPolicy: cdk.RemovalPolicy.DESTROY, + autoDeleteObjects: true, // NOTE: set to false in production to prevent accidental log loss }); - // Create Application Load Balancer - alb = new elbv2.ApplicationLoadBalancer(this, "McpOAuthProxyALB", { - vpc, + // Create Application Load Balancer. + // dropInvalidHeaderFields: rejects requests whose headers contain + // characters outside the RFC 7230 allowed set, blocking several + // request-smuggling / header-injection attack vectors. + const alb = new elbv2.ApplicationLoadBalancer(this, "McpOAuthProxyALB", { + vpc: vpc, internetFacing: true, loadBalancerName: "mcp-oauth-proxy-alb", + securityGroup: albSecurityGroup, + dropInvalidHeaderFields: true, + }); + + // Enable ALB access logging. logAccessLogs() sets the correct bucket + // policy for the regional ELB account automatically. + alb.logAccessLogs(albLogBucket, "alb"); + + // Associate the WAF WebACL with the ALB + new wafv2.CfnWebACLAssociation(this, "AlbWebAclAssociation", { + resourceArn: alb.loadBalancerArn, + webAclArn: webAcl.attrArn, }); // Import the certificate @@ -466,10 +865,21 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { new iam.ServicePrincipal("elasticloadbalancing.amazonaws.com") ); + // Host-header condition: every forwarding rule requires the Host header to + // match the custom domain. Requests arriving via the raw ALB DNS name + // (*.elb.amazonaws.com) fall through to the listener's default 404 action + // and are never forwarded to the Lambda. + // This prevents virtual-hosting exploitation and removes the raw DNS name + // as a valid entry point that bypasses your WAF / custom-domain TLS policy. + const hostHeaderCondition = elbv2.ListenerCondition.hostHeaders([ + `${domainName}.${hostedZoneName}`, + ]); + // Proxy Lambda routes - specific paths mainListener.addTargetGroups("ProxyWellKnownAuthRule", { priority: 40, conditions: [ + hostHeaderCondition, elbv2.ListenerCondition.pathPatterns([ "/.well-known/oauth-authorization-server", ]), @@ -480,6 +890,7 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { mainListener.addTargetGroups("ProxyWellKnownResourceRule", { priority: 50, conditions: [ + hostHeaderCondition, elbv2.ListenerCondition.pathPatterns([ "/.well-known/oauth-protected-resource", ]), @@ -489,32 +900,59 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { mainListener.addTargetGroups("ProxyAuthorizeRule", { priority: 60, - conditions: [elbv2.ListenerCondition.pathPatterns(["/authorize"])], + conditions: [ + hostHeaderCondition, + elbv2.ListenerCondition.pathPatterns(["/authorize"]), + ], targetGroups: [proxyTargetGroup], }); mainListener.addTargetGroups("ProxyCallbackRule", { priority: 70, - conditions: [elbv2.ListenerCondition.pathPatterns(["/callback"])], + conditions: [ + hostHeaderCondition, + elbv2.ListenerCondition.pathPatterns(["/callback"]), + ], targetGroups: [proxyTargetGroup], }); mainListener.addTargetGroups("ProxyTokenRule", { priority: 80, - conditions: [elbv2.ListenerCondition.pathPatterns(["/token"])], + conditions: [ + hostHeaderCondition, + elbv2.ListenerCondition.pathPatterns(["/token"]), + ], targetGroups: [proxyTargetGroup], }); mainListener.addTargetGroups("ProxyRegisterRule", { priority: 90, - conditions: [elbv2.ListenerCondition.pathPatterns(["/register"])], + conditions: [ + hostHeaderCondition, + elbv2.ListenerCondition.pathPatterns(["/register"]), + ], targetGroups: [proxyTargetGroup], }); - // Default catch-all rule for Proxy Lambda + // MCP routes - wildcard pattern for dynamic target filtering + // Matches: /mcp, /gitlab/mcp, /weather/mcp, /inventory/mcp, /*/mcp + // No need to update ALB when adding new tool groups! + mainListener.addTargetGroups("ProxyMcpWildcardRule", { + priority: 95, + conditions: [ + hostHeaderCondition, + elbv2.ListenerCondition.pathPatterns(["/mcp", "/*/mcp"]), + ], + targetGroups: [proxyTargetGroup], + }); + + // Default catch-all rule for Proxy Lambda (still host-header gated) mainListener.addTargetGroups("ProxyDefaultRule", { priority: 100, - conditions: [elbv2.ListenerCondition.pathPatterns(["/*"])], + conditions: [ + hostHeaderCondition, + elbv2.ListenerCondition.pathPatterns(["/*"]), + ], targetGroups: [proxyTargetGroup], }); @@ -536,148 +974,6 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { value: alb.loadBalancerDnsName, description: "ALB DNS Name", }); - } else { - // ============================================================================= - // API GATEWAY HTTP API - // ============================================================================= - - // Create HTTP API - httpApi = new apigatewayv2.HttpApi(this, "McpHttpApi", { - apiName: "mcp-oauth-proxy-api", - description: "MCP OAuth Proxy HTTP API", - corsPreflight: { - allowOrigins: ["*"], - allowMethods: [ - apigatewayv2.CorsHttpMethod.GET, - apigatewayv2.CorsHttpMethod.POST, - apigatewayv2.CorsHttpMethod.OPTIONS, - ], - allowHeaders: ["*"], - }, - }); - - // Create Lambda integrations - const proxyIntegration = - new apigatewayv2integrations.HttpLambdaIntegration( - "ProxyIntegration", - proxyLambda - ); - - // Add OAuth and well-known routes - httpApi.addRoutes({ - path: "/.well-known/oauth-authorization-server", - methods: [apigatewayv2.HttpMethod.GET], - integration: proxyIntegration, - }); - - httpApi.addRoutes({ - path: "/.well-known/oauth-protected-resource", - methods: [apigatewayv2.HttpMethod.GET], - integration: proxyIntegration, - }); - - httpApi.addRoutes({ - path: "/authorize", - methods: [apigatewayv2.HttpMethod.GET], - integration: proxyIntegration, - }); - - httpApi.addRoutes({ - path: "/callback", - methods: [apigatewayv2.HttpMethod.GET], - integration: proxyIntegration, - }); - - httpApi.addRoutes({ - path: "/token", - methods: [apigatewayv2.HttpMethod.POST], - integration: proxyIntegration, - }); - - httpApi.addRoutes({ - path: "/register", - methods: [apigatewayv2.HttpMethod.POST], - integration: proxyIntegration, - }); - - // Default route for MCP proxy (catch-all) - httpApi.addRoutes({ - path: "/{proxy+}", - methods: [apigatewayv2.HttpMethod.ANY], - integration: proxyIntegration, - }); - - // Check if custom domain is provided - if (domainName && domainName.trim() !== "") { - // Custom domain setup for API Gateway - const certificate = certificatemanager.Certificate.fromCertificateArn( - this, - "ApiGatewayCertificate", - certificateArn - ); - - const domainNameResource = new apigatewayv2.DomainName( - this, - "ApiGatewayDomain", - { - domainName: domainName, - certificate: certificate, - } - ); - - new apigatewayv2.ApiMapping(this, "ApiMapping", { - api: httpApi, - domainName: domainNameResource, - }); - - // Create DNS record - const hostedZone = route53.HostedZone.fromHostedZoneAttributes( - this, - "HostedZone", - { - hostedZoneId: hostedZoneId, - zoneName: hostedZoneName, - } - ); - - new route53.ARecord(this, "ApiGatewayAliasRecord", { - zone: hostedZone, - recordName: domainName, - target: route53.RecordTarget.fromAlias( - new route53targets.ApiGatewayv2DomainProperties( - domainNameResource.regionalDomainName, - domainNameResource.regionalHostedZoneId - ) - ), - }); - - endpointUrl = `https://${domainName}`; - - new cdk.CfnOutput(this, "CustomDomain", { - value: domainName, - description: "Custom Domain Name", - }); - } else { - // Use default API Gateway URL - endpointUrl = httpApi.apiEndpoint; - } - - // Outputs for API Gateway - new cdk.CfnOutput(this, "ApiGatewayEndpoint", { - value: endpointUrl, - description: "API Gateway Endpoint URL", - }); - - new cdk.CfnOutput(this, "ApiGatewayId", { - value: httpApi.apiId, - description: "API Gateway ID", - }); - - new cdk.CfnOutput(this, "ApiGatewayDefaultUrl", { - value: httpApi.apiEndpoint, - description: "API Gateway Default URL", - }); - } // ============================================================================= // VS CODE COGNITO CLIENT (with callback URLs) @@ -688,6 +984,8 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { "http://127.0.0.1:33418/", "http://localhost:33418", "http://localhost:33418/", + "http://localhost:54038", + "http://localhost:54038/", `${endpointUrl}/callback`, `${endpointUrl}/callback/`, "https://vscode.dev/redirect", @@ -721,6 +1019,9 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { // Update Lambda environment variables with VS Code client ID and endpoint proxyLambda.addEnvironment("CLIENT_ID", vscodeClient.userPoolClientId); proxyLambda.addEnvironment("CALLBACK_LAMBDA_URL", endpointUrl); + // Pass the Cognito-registered callback URLs so the proxy Lambda can + // validate redirect_uri in handle_callback (open-redirect prevention). + proxyLambda.addEnvironment("ALLOWED_REDIRECT_URIS", JSON.stringify(callbackUrls)); const gatewayRole = new iam.Role(this, "GatewayRole", { assumedBy: iam.ServicePrincipal.fromStaticServicePrincipleName( @@ -734,9 +1035,9 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { "bedrock-agentcore:GetWorkloadAccess*", "bedrock-agentcore:GetResourceOauth2Token", "bedrock-agentcore:GetPolicyEngine", - "secretsmanager:GetSecretValue", "bedrock-agentcore:AuthorizeAction", - "bedrock-agentcore:PartiallyAuthorizeActions" + "bedrock-agentcore:PartiallyAuthorizeActions", + "bedrock-agentcore:CheckAuthorizePermissions" ], resources: ["*"], effect: iam.Effect.ALLOW, @@ -762,6 +1063,8 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { authorizerConfiguration: agentcore.GatewayAuthorizer.usingCognito({ userPool: userPool, allowedClients: [vscodeClient], + allowedAudiences: [vscodeClient.userPoolClientId], + allowedScopes: mcpScopes.map((s) => s.scopeName), }), interceptorConfigurations: [ agentcore.LambdaInterceptor.forRequest(interceptorLambda, { passRequestHeaders: true }), @@ -853,6 +1156,153 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { proxyLambda.addEnvironment("GATEWAY_URL", gateway.gatewayUrl ?? ""); + // Now that the gateway ARN is known, scope InvokeGateway to this gateway only. + // This must come AFTER the gateway construct so CDK can resolve the ARN token. + proxyLambdaRole.addToPolicy( + new iam.PolicyStatement({ + sid: "InvokeThisGatewayOnly", + effect: iam.Effect.ALLOW, + actions: ["bedrock-agentcore:InvokeGateway"], + // Scoped to the specific gateway ARN – not wildcard "*". + resources: [gateway.gatewayArn], + }) + ); + + // ============================================================================= + // GATEWAY RESOURCE-BASED POLICY (VPC restriction) + // ============================================================================= + + // Create a custom resource to attach VPC-based policy to the gateway + const policyCustomResourceRole = new iam.Role( + this, + "GatewayPolicyCustomResourceRole", + { + assumedBy: new iam.ServicePrincipal("lambda.amazonaws.com"), + managedPolicies: [ + iam.ManagedPolicy.fromAwsManagedPolicyName( + "service-role/AWSLambdaBasicExecutionRole" + ), + ], + } + ); + + // Add permissions to manage gateway resource policy + policyCustomResourceRole.addToPolicy( + new iam.PolicyStatement({ + effect: iam.Effect.ALLOW, + actions: [ + "bedrock-agentcore:PutResourcePolicy", + "bedrock-agentcore:GetResourcePolicy", + "bedrock-agentcore:DeleteResourcePolicy", + ], + resources: [gateway.gatewayArn], + }) + ); + + // Create Lambda layer with boto3 1.42.69 + const boto3Layer = new lambda.LayerVersion(this, "Boto3Layer", { + code: lambda.Code.fromAsset(path.join(__dirname, "../lambda"), { + bundling: { + image: lambda.Runtime.PYTHON_3_12.bundlingImage, + command: [ + "bash", + "-c", + [ + "pip install boto3==1.42.69 -t /asset-output/python", + ].join(" && "), + ], + }, + }), + compatibleRuntimes: [lambda.Runtime.PYTHON_3_12], + description: "boto3 1.42.69 for AgentCore Gateway policy management", + }); + + // Custom resource Lambda to manage gateway resource policy + const gatewayPolicyCustomResource = new lambda.Function( + this, + "GatewayPolicyCustomResource", + { + runtime: lambda.Runtime.PYTHON_3_12, + handler: "index.handler", + layers: [boto3Layer], + code: lambda.Code.fromInline(` +import json +import boto3 +import cfnresponse + +bedrock_agentcore = boto3.client('bedrock-agentcore-control') + +def handler(event, context): + try: + request_type = event['RequestType'] + gateway_id = event['ResourceProperties']['GatewayId'] + vpc_id = event['ResourceProperties']['VpcId'] + gateway_arn = event['ResourceProperties']['GatewayArn'] + + if request_type in ['Create', 'Update']: + policy = { + "Version": "2012-10-17", + "Statement": [ + { + "Sid": "AllowInvokeFromVPC", + "Effect": "Allow", + "Principal": "*", + "Action": "bedrock-agentcore:InvokeGateway", + "Resource": gateway_arn, + "Condition": { + "StringEquals": { + "aws:SourceVpc": vpc_id + } + } + } + ] + } + + bedrock_agentcore.put_resource_policy( + resourceArn=gateway_arn, + policy=json.dumps(policy) + ) + + cfnresponse.send(event, context, cfnresponse.SUCCESS, + {'PolicyApplied': 'true'}) + + elif request_type == 'Delete': + try: + bedrock_agentcore.delete_resource_policy( + resourceArn=gateway_arn + ) + except bedrock_agentcore.exceptions.ResourceNotFoundException: + pass # Policy already deleted + + cfnresponse.send(event, context, cfnresponse.SUCCESS, {}) + + except Exception as e: + print(f"Error: {str(e)}") + cfnresponse.send(event, context, cfnresponse.FAILED, + {'Error': str(e)}) +`), + role: policyCustomResourceRole, + timeout: cdk.Duration.minutes(2), + } + ); + + // Create custom resource + const gatewayPolicy = new cdk.CustomResource( + this, + "GatewayVpcPolicy", + { + serviceToken: gatewayPolicyCustomResource.functionArn, + properties: { + GatewayId: gateway.gatewayId, + VpcId: vpc.vpcId, + GatewayArn: gateway.gatewayArn, + }, + } + ); + + // Ensure policy is applied after gateway is created + gatewayPolicy.node.addDependency(gateway); + // Create policy engine const agentCorePolicyEngine = new AgentCorePolicyEngine(this, "AgentCorePolicyEngine", { policyEngineName: `enterprise_mcp_policy_engine`, @@ -891,6 +1341,9 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { agentCorePolicyEngine.associateWithGateway(gateway.gatewayId, 'ENFORCE'); agentCorePolicyEngine.node.addDependency(interceptorLambda); // Ensure interceptor Lambda is created before policy engine association + // Ensure the gateway VPC resource policy is applied after all Cedar policies + gatewayPolicy.node.addDependency(agentCorePolicyEngine); + // ============================================================================= // OUTPUTS // ============================================================================= @@ -925,11 +1378,6 @@ export class EnterpriseMcpInfraStack extends cdk.Stack { description: "VS Code Client ID", }); - new cdk.CfnOutput(this, "DeploymentTypeOutput", { - value: deploymentType, - description: "Deployment Type (ALB or API_GATEWAY)", - }); - new cdk.CfnOutput(this, "EndpointUrl", { value: endpointUrl, description: "Service Endpoint URL",