Welcome back, fellow web artisan!
In our journey to master HTMX, we’ve explored how it empowers us to build dynamic, interactive web experiences with minimal JavaScript. We’ve focused on creating features, enhancing user experience, and streamlining development. But as Uncle Ben famously said, “With great power comes great responsibility.” And in the world of web development, that responsibility often boils down to one critical aspect: security.
This chapter isn’t about scaring you, but about empowering you with the knowledge to build robust and secure HTMX applications. We’ll dive into the most common web security threats and, more importantly, how HTMX applications can effectively defend against them. We’ll learn why security is primarily a server-side concern, even when HTMX is doing the heavy lifting on the frontend, and how to implement best practices to protect your users and your data.
By the end of this chapter, you’ll understand the key security considerations for HTMX applications, be able to identify potential vulnerabilities, and know how to implement robust defenses against threats like Cross-Site Scripting (XSS) and Cross-Site Request Forgery (CSRF). Let’s make our HTMX apps not just functional, but fortress-like!
HTMX and the Server: A Security Partnership
One of the beautiful things about HTMX is its “HTML-first” approach. It encourages you to think of your server as the primary renderer of HTML, even for dynamic updates. This architectural choice has significant implications for security:
- Security is primarily a server-side responsibility: Since your server is generating and sending HTML snippets, it’s the first and most critical line of defense. HTMX itself doesn’t introduce new security vulnerabilities; rather, it highlights the importance of existing server-side security practices.
- Reduced client-side attack surface (for some things): With less complex JavaScript logic on the client, certain types of client-side vulnerabilities might be less prevalent. However, this doesn’t mean you can ignore client-side security entirely, especially regarding Content Security Policy (CSP).
Let’s break down some fundamental web security concepts and see how they apply to your HTMX projects.
Cross-Site Scripting (XSS): The Malicious Script Injector
Imagine you have a public comment section on your website. What if a mischievous user posts a comment that looks like this?
<script>alert('You\'ve been hacked!');</script>
If your server simply takes this input and renders it directly into the HTML that HTMX then swaps into the DOM, guess what? That script will execute in your users’ browsers! This is a classic Cross-Site Scripting (XSS) attack. Attackers use XSS to:
- Steal cookies (which might contain session tokens)
- Deface websites
- Redirect users to malicious sites
- Perform actions on behalf of the user
How HTMX is Involved: HTMX’s default swap strategy is innerHTML. This means that whatever HTML your server sends back will be parsed and injected into the DOM. If that HTML contains unescaped, user-generated content, it’s an open door for XSS.
The Solution: Server-Side Escaping!
This is non-negotiable. Any user-generated content that your server renders back into HTML must be properly escaped. Escaping converts special characters (like <, >, &, ", ') into their HTML entity equivalents (e.g., < becomes <). This way, the browser interprets them as literal text, not as HTML tags or script code.
Most modern web frameworks and templating engines have built-in auto-escaping features. You should always ensure these are enabled or explicitly use escaping functions.
Let’s look at a quick example using a Python/Flask backend, but the principle applies to any language/framework.
# app.py (Flask example)
from flask import Flask, request, render_template_string
import html # Python's built-in HTML escaping module
app = Flask(__name__)
# A simple (vulnerable) template without proper escaping
VULNERABLE_TEMPLATE = """
<!DOCTYPE html>
<html>
<head>
<title>Vulnerable Comments</title>
<script src="https://unpkg.com/htmx.org@1.9.10/dist/htmx.min.js"></script>
</head>
<body>
<h1>Comments</h1>
<div id="comments">
{% for comment in comments %}
<p>{{ comment }}</p>
{% endfor %}
</div>
<form hx-post="/add-comment" hx-target="#comments" hx-swap="beforeend">
<input type="text" name="comment_text" placeholder="Your comment">
<button type="submit">Add Comment</button>
</form>
</body>
</html>
"""
# A secure template with proper escaping
SECURE_TEMPLATE = """
<!DOCTYPE html>
<html>
<head>
<title>Secure Comments</title>
<script src="https://unpkg.com/htmx.org@1.9.10/dist/htmx.min.js"></script>
</head>
<body>
<h1>Comments</h1>
<div id="comments">
{% for comment in comments %}
<p>{{ comment | e }}</p> {# The '| e' filter in Jinja2 escapes the content #}
{% endfor %}
</div>
<form hx-post="/add-comment-secure" hx-target="#comments" hx-swap="beforeend">
<input type="text" name="comment_text" placeholder="Your comment">
<button type="submit">Add Comment</button>
</form>
</body>
</html>
"""
comments = [] # In-memory storage for comments
@app.route('/')
def index():
# For demonstration, we'll show the secure version by default
return render_template_string(SECURE_TEMPLATE, comments=comments)
@app.route('/vulnerable')
def vulnerable_index():
return render_template_string(VULNERABLE_TEMPLATE, comments=comments)
@app.route('/add-comment', methods=['POST'])
def add_comment_vulnerable():
comment_text = request.form['comment_text']
comments.append(comment_text)
# This endpoint is vulnerable if the template doesn't escape
return f"<p>{comment_text}</p>" # STILL VULNERABLE HERE IF NOT ESCAPED ON RENDER
@app.route('/add-comment-secure', methods=['POST'])
def add_comment_secure():
comment_text = request.form['comment_text']
# Escape the comment text before adding it to the list
# (Though in a real app, you'd escape when rendering, not when storing raw text)
escaped_comment_text = html.escape(comment_text)
comments.append(escaped_comment_text) # Storing escaped for simplicity here
# When returning HTML for HTMX, ensure it's escaped!
# If using a templating engine, use its escaping feature (e.g., {{ comment | e }})
# If returning raw string, use html.escape()
return f"<p>{html.escape(comment_text)}</p>" # Critically, escape the response too!
if __name__ == '__main__':
app.run(debug=True)
Explanation:
- We have two templates:
VULNERABLE_TEMPLATEandSECURE_TEMPLATE. - The
VULNERABLE_TEMPLATEdirectly renders{{ comment }}. Ifcommentcontains<script>, it will execute. - The
SECURE_TEMPLATEuses{{ comment | e }}. The| eis a Jinja2 filter that automatically escapes the content, turning<script>into<script>. - The
/add-comment-secureendpoint also explicitly useshtml.escape()when constructing the HTMX response. This is crucial because HTMX will take this raw string and insert it.
Key Takeaway: Always, always, always escape user-generated content when rendering it back to the browser, whether it’s a full page load or an HTMX partial update. Most templating engines handle this by default or with a simple filter/function. Don’t disable it!
Cross-Site Request Forgery (CSRF): The Unwitting Action
Imagine you’re logged into your banking website. In another tab, you open a malicious website. This malicious site might secretly contain a form like this:
<form action="https://yourbank.com/transfer" method="POST">
<input type="hidden" name="to_account" value="attacker_account">
<input type="hidden" name="amount" value="1000000">
<button type="submit">Click me for a free prize!</button>
</form>
If you click that button, your browser sends a POST request to your bank. Since you’re logged in, your browser automatically includes your session cookies. The bank sees a legitimate request from a logged-in user and processes the transfer! This is a Cross-Site Request Forgery (CSRF) attack.
How HTMX is Involved: HTMX makes standard HTTP requests (GET, POST, PUT, DELETE). Therefore, any HTMX-triggered POST, PUT, or DELETE request that modifies data on the server is susceptible to CSRF, just like traditional form submissions.
The Solution: CSRF Tokens!
The most common and effective defense against CSRF is to use CSRF tokens. Here’s how they work:
- When your server renders a form (or a page that will make an HTMX request), it generates a unique, unpredictable token.
- This token is embedded in the form as a hidden input field.
- When the user submits the form (or HTMX sends the request), the token is sent along with other form data.
- On the server, before processing the request, it verifies that the received token matches the one it generated for the user’s session. If they don’t match, the request is rejected.
Since an attacker cannot know the unique, session-bound CSRF token, they can’t forge a valid request.
Let’s enhance our comment section to include CSRF protection. We’ll continue with Flask, as it has excellent CSRF support via Flask-WTF.
# app.py (Flask example with CSRF)
from flask import Flask, request, render_template_string, session, redirect, url_for
import html
import os # For generating secret key
from flask_wtf.csrf import CSRFProtect, generate_csrf # Import CSRF utilities
app = Flask(__name__)
app.config['SECRET_KEY'] = os.urandom(24) # A strong secret key is crucial for session security
csrf = CSRFProtect(app) # Initialize CSRF protection
comments = []
# Secure template with CSRF token
SECURE_TEMPLATE_CSRF = """
<!DOCTYPE html>
<html>
<head>
<title>Secure Comments with CSRF</title>
<script src="https://unpkg.com/htmx.org@1.9.10/dist/htmx.min.js"></script>
<meta name="csrf-token" content="{{ csrf_token() }}"> {# Add CSRF token to meta for HTMX #}
</head>
<body>
<h1>Comments</h1>
<div id="comments">
{% for comment in comments %}
<p>{{ comment | e }}</p>
{% endfor %}
</div>
<form hx-post="/add-comment-csrf" hx-target="#comments" hx-swap="beforeend">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}"> {# CSRF token in form #}
<input type="text" name="comment_text" placeholder="Your comment">
<button type="submit">Add Comment</button>
</form>
</body>
</html>
"""
@app.route('/')
def index_csrf():
return render_template_string(SECURE_TEMPLATE_CSRF, comments=comments)
@app.route('/add-comment-csrf', methods=['POST'])
@csrf.protect # Flask-WTF decorator to automatically check CSRF token
def add_comment_csrf():
comment_text = request.form['comment_text']
escaped_comment_text = html.escape(comment_text)
comments.append(escaped_comment_text)
return f"<p>{html.escape(comment_text)}</p>"
if __name__ == '__main__':
app.run(debug=True)
Explanation:
app.config['SECRET_KEY']: Flask needs a secret key to sign session cookies and generate CSRF tokens. This must be a long, random string in production.os.urandom(24)generates one for development.csrf = CSRFProtect(app): InitializesFlask-WTF’s CSRF protection.{{ csrf_token() }}: This function (provided byFlask-WTF) generates and retrieves the current CSRF token for the session.- It’s placed in a hidden input field within the
form. When the form submits, this token is sent.
- It’s placed in a hidden input field within the
@csrf.protect: This decorator on the/add-comment-csrfroute automatically checks if thecsrf_tokenin the incoming POST request matches the one stored in the user’s session. If not, the request is aborted with a 400 Bad Request error.
What about HTMX and dynamic content?
If you’re loading a form dynamically via HTMX, the new HTML snippet returned by the server must include the fresh CSRF token. The Flask-WTF csrf_token() function handles this for you.
HTMX and CSRF tokens in headers:
For non-form submissions, or if you prefer a different approach, HTMX can automatically include CSRF tokens in request headers. You can configure this using the hx-headers attribute or by placing the token in a meta tag:
<!-- In your base HTML, typically in the <head> -->
<meta name="csrf-token" content="{{ csrf_token() }}">
Then, HTMX can be configured to read this meta tag and include it in requests. However, modern HTMX (v1.9.0+) handles this automatically if it finds a meta tag with name="csrf-token" or name="_csrf". It will send the token in an X-CSRF-Token header.
Input Validation: Trust No One!
This is a golden rule: Never trust user input. Even if you have client-side validation (e.g., HTML5 required attributes, JavaScript checks), it’s easily bypassed.
- Client-side validation: Great for user experience, providing immediate feedback.
- Server-side validation: Essential for security. Your server must rigorously validate all incoming data before processing it or storing it. This includes:
- Data type: Is it a number, a string, a date?
- Format: Does it match a specific pattern (e.g., email address, phone number)?
- Length: Is it too short or too long?
- Range: Is a number within an acceptable range?
- Content: Does it contain malicious characters or unexpected values?
HTMX doesn’t change the need for server-side validation. In fact, because HTMX often makes granular requests, you might find yourself validating smaller pieces of data more frequently, which is a good thing!
Authentication and Authorization: Who Are You, and What Can You Do?
- Authentication: Verifying a user’s identity (e.g., username/password, OAuth).
- Authorization: Determining what an authenticated user is allowed to do.
HTMX doesn’t handle authentication or authorization directly. These are purely server-side concerns. Every request (whether full page load or HTMX-triggered) that requires a user to be logged in or have specific permissions must be checked on the server.
If a user tries to access a protected resource or perform an unauthorized action via an HTMX request, your server should respond with:
- HTTP 401 Unauthorized: If the user is not authenticated (not logged in).
- HTTP 403 Forbidden: If the user is authenticated but doesn’t have permission for that specific action.
HTMX can gracefully handle these responses, for example, by redirecting to a login page or displaying an error message, but the decision and enforcement happen on the server.
Content Security Policy (CSP): A Strong Shield Against XSS
A Content Security Policy (CSP) is an added layer of security that helps detect and mitigate certain types of attacks, including XSS. You configure CSP via an HTTP response header or a <meta> tag. It tells the browser which resources (scripts, stylesheets, images, fonts, etc.) are allowed to be loaded and executed on your page.
For example, a strict CSP might prevent:
- Inline scripts (
<script>alert('...')</script>) - Scripts loaded from untrusted domains
eval()and similar functions
How it helps HTMX: If an XSS attack manages to inject a <script> tag, a properly configured CSP can prevent that script from running. This is a powerful secondary defense.
A basic CSP might look like this (placed in your HTML <head> or as an HTTP header):
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' https://unpkg.com; style-src 'self'; img-src 'self' data:;">
Explanation:
default-src 'self': Only allow resources from your own domain.script-src 'self' https://unpkg.com: Allow scripts from your own domain and fromunpkg.com(where HTMX is hosted).style-src 'self': Allow stylesheets from your own domain.img-src 'self' data:: Allow images from your own domain and data URIs.
Important: Configuring CSP correctly can be complex and requires careful testing, as a misconfigured CSP can break your site. However, it’s a highly recommended best practice for production applications.
Rate Limiting and Denial of Service (DoS)
HTMX encourages many small, targeted requests. While efficient, this pattern could be abused by an attacker to flood your server with requests, leading to a Denial of Service (DoS) or brute-force attacks.
The Solution: Server-Side Rate Limiting
Implement rate limiting on your server (or via a reverse proxy like Nginx/Cloudflare) to restrict the number of requests a single user or IP address can make within a given time frame. This protects your server resources and prevents automated attacks.
Step-by-Step Implementation: Secure Comment Form
Let’s put some of these concepts into practice by building a slightly more robust secure comment form. We’ll refine our Flask example to demonstrate XSS protection and CSRF token handling.
Goal: A comment section where users can add comments, protected against XSS and CSRF.
Prerequisites:
- Python 3.8+
pip install Flask Flask-WTF htmx(Note:htmxis a Python package that provides the CDN link, not the HTMX library itself, but useful for quick setup.)
Step 1: Initialize Your Flask App with Security Essentials
First, let’s set up our basic Flask application, ensuring we have a secret key and CSRF protection enabled.
Create a file named app.py:
# app.py
from flask import Flask, request, render_template_string, session, redirect, url_for, flash
import html
import os
from flask_wtf.csrf import CSRFProtect, generate_csrf
from markupsafe import escape # More explicit for rendering HTML in Flask templates
app = Flask(__name__)
# CRITICAL: Use a strong, randomly generated secret key in production!
# For local development, this is fine, but never hardcode or commit to repo.
app.config['SECRET_KEY'] = os.urandom(24)
app.config['WTF_CSRF_ENABLED'] = True # Ensure CSRF is enabled for Flask-WTF
csrf = CSRFProtect(app)
# In-memory storage for comments (for demonstration purposes only!)
# In a real app, this would be a database.
comments = []
# --- Main Routes ---
@app.route('/')
def index():
# We pass the CSRF token to the template explicitly for meta tag usage
return render_template_string(BASE_TEMPLATE, comments=comments, csrf_token=generate_csrf())
@app.route('/add-comment', methods=['POST'])
@csrf.protect # This decorator automatically validates the CSRF token for POST requests
def add_comment():
comment_text = request.form.get('comment_text')
if not comment_text or len(comment_text.strip()) == 0:
# Basic server-side input validation
# In a real app, you'd render an error message back to the user
return "<p class='error'>Comment cannot be empty!</p>", 400
# Sanitize/escape the comment text for XSS protection
# `html.escape` is good for simple strings. Flask's `escape` (from markupsafe) is also excellent.
escaped_comment_text = html.escape(comment_text.strip())
comments.append(escaped_comment_text)
# Return the new comment HTML, also ensuring it's escaped
# Using 'escape' from markupsafe for consistency with Flask's templating
return render_template_string("<p>{{ comment | escape }}</p>", comment=escaped_comment_text)
if __name__ == '__main__':
app.run(debug=True, port=5000)
Explanation of additions:
app.config['WTF_CSRF_ENABLED'] = True: Explicitly enables CSRF protection for forms managed by Flask-WTF.from markupsafe import escape: Flask’s templating engine (Jinja2) usesmarkupsafe.escapefor| eor| escape. It’s good practice to use this when manually escaping strings that will be rendered as HTML.csrf_token=generate_csrf(): We’re explicitly generating and passing the CSRF token to the template so we can place it in a meta tag for HTMX’s automatic header injection.request.form.get('comment_text'): Safely retrieves form data.if not comment_text or len(comment_text.strip()) == 0:: Simple server-side validation. Always validate before processing.html.escape(comment_text.strip()): Crucial XSS protection. We escape before adding to ourcommentslist and before rendering the response.
Step 2: Create the Base HTML Template
Now, let’s create our HTML template that HTMX will interact with. This template will include the HTMX library, the CSRF meta tag, and our comment form.
Add this BASE_TEMPLATE string to your app.py file, replacing the previous SECURE_TEMPLATE_CSRF:
# ... (rest of app.py content) ...
BASE_TEMPLATE = """
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Secure HTMX Comments</title>
<!-- HTMX v1.9.10 (latest stable as of 2025-12-04) -->
<script src="https://unpkg.com/htmx.org@1.9.10/dist/htmx.min.js" integrity="sha384-bc8g8A7KWL/X8PzC5D5n7e5l5N5M5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5L5B5N5C5