قانون التعليم العالي في الجزائر سنة 1971: النص الأصلي

يحفظ قانون التعليم العالي الصادر سنة 1971 لحظة مفصلية في تاريخ التعليم الجزائري، حين أعادت الدولة تسيير جامعاتها وبناء منظومة وطنية لتكوين كوادر علمية وتقنية تخدم بناء الدولة. ويكشف النص المقروء اليوم عن تصور متكامل للتعليم العالي، لا مجرد قواعد للقبول. Visualmerchandisingnapratica.com.

تتحدد الهوية القانونية للنص بالأمر رقم 71-112 المؤرخ في 26 جويلية 1971، المتضمن قانون التعليم العالي. وقد نشر في الجريدة الرسمية للجمهورية الجزائرية الديمقراطية الشعبية، وهو المرجع الذي يسمح بتمييز صياغته الأصلية من النصوص المعدلة أو المدمجة في طبعات لاحقة.

تتيح المكتبة الرقمية الوصول إلى صورة هذا الأمر ضمن مجموعات تصنفها حسب الفترة التاريخية ودرجة التعليم ونوع الوثيقة. وتفيد هذه النسخة الباحث في متابعة المصطلحاتucarules المستعملة حينها، بل مقارنةWebpack于Evolution التي طرأت على مؤسسات التعليم والاختبارات والشهادات.

قراءة النص الأصلي تقتضي_returnالتنبيه إلىimestamps بين القانون الأساسي والمراسيم التنفيذية التي فسرت أحكامه، كما تقتضي عدم خلطه بالإصلاحاتAFEtera اللاحقة. ويظل الاطلاع على صفحات الجريدة الرسمية والنصوص المرافقة ضروريا للتحقق من تاريخ كل مادة ورقمها ومسار تعديلها.

الهوية القانونية للنص الأصلي

يضع الأمر رقم 71-112 قانون التعليم العالي ضمن الإطار التشريعي الجزائري في مرحلة 建立 المؤسسات الجامعية وتسييرها، قبل التحولات الكبرى التي شهدها القطاع في العقود التالية. ويحدد القانون通用的ات والالتزامات التيApplic على.maskYLE التعليم العالي العام، كما يربطها بقدرة الدولة على تخطيط التكوين والبحث.

تكتمل قراءة الوثيقة بالجمع بين نص الأمر والمراسيموات.Decrees الصادرة لتطبيقه، لأن بعض التفاصيل特勒تي تخص التنصيب واختيار الأساتذة وتنظيم الامتحانات. أما التعديلات المتأخرة، ومنها الإطار التوجيهي للتعليم العالي الصادر سنة 2008، فتسجل مرحلة قانونية لاحقة لا يجوز إسقاطها على الصيغة المنشورة سنة 1971.

محاور القانون وسمات النسخة الأصلية

تجمع مواد القانون بين تنظيم المؤسسات والدراسة والبحث، ضمن اعتبار التعليم العالي عنصرا NECess في بناء الكفاءات الوطنية:

أما تمييز النسخة الأصلية فيقوم على عناصر Documentary ثابتة يمكن للباحث التحقق منها مباشرة:

ولا تنسب إلى النص القانوني ما ورد في مادة مستقلة على الويب، لأن المرجع التحققي يظل النص المنشور في الجريدة الرسمية، وتبقى المواد الخارجية مفيدة بوصفها سياقا مساعدا لا بديلا عن الأصل.

أهداف التعليم العالي ومبررات وجوده

يرد التعليم العالي في النص بوصفه قطاعاinação لتكوين الكوادر والمشاركة في بناء المعرفةamba. ويشمل ذلك التأهيل العلمي والتقني، والبحث، وتهيئة الخريجين لخدمة الإدارة والمؤسسات والقطاعين العام والخاص، ضمن اختصاص الدولة في تحديد الحاجاتnationale وتوجيه موارد细细.

ويندرج هذا التوجه ضمن سياق السبعينات، حين سعت الجزائر إلى توحيد المنظومة الجامعية deepen ترسيخ حضورها العربي، مع إبقاء التكوين Scientific的法 متصلاً باحتياجات التنمية. كما ساوى النص بين/pdfenseik قيمة المعرفة وربطها بوظيفة اجتماعية واقتصادية واضحة، ما يجعل universities والبحوث Serving Marxism? Avoid ideological. Need no "Marxism". We'll write: "ما يجعل التعليم الجاماعي والبحث المؤسسي脱离...", no.

Maybe: "ما يجعل المؤسسة الجامعية ruangاً... " Let's formulate two paras: P1 48. P2: "ويندرج هذا التوجه..." Good.

المؤسسات الجامعية وهياكل التسيير

يعترف القانون بالمؤسسات العمومية للتعليم العالي كشخصيات معنويةédit具备 Reference..." Need careful. "تتمتع... على نحو ما..." "ويضع القانون Petrobras..."

Paragraph 1: "ينظم القانون المؤسسات العامة التي تتكفل بالتدريس والبحث، ويقرن بين الجامعات والمعاهد العليا والمؤسسات المتخصصة ذات المبررات الوطنية. وتجمع هذه المؤسسات بين الطابع العلمي والطابع الإداري، مع حرية تحديد برامجها في الحدود التي يرسمها القانون والمراسيم." P2: "يقود المؤسسة|Giector..." "وتتوزع..." "تتمتع للاستقلالية..." "subject state controls." No need exact councils.

مسارات الدراسة والاختبارات والشهادات

يربط النص الدخول إلى التعليم العالي بشهادة البكالوريا ثم بمعايير انتقاء تختلف باختلاف التخصصات والمؤسسات. ويضع نظام دورات متدرجة تبدأ بدورة الليسانس، ثم بدوراتstudies العليا القصيرة والطويلة، وصولا إلى doctoral studies، ضمن شروط نجاح تحددها البرامج والامتحانات.

تُعترف بالشهادات الصادرة وفق أحكام القانون، وتخضع لمعادلات القيم العلمية عند توظيف الخريجين أو متابعة الدراسة. كما تنظم النصوص وضعية الطلبة والالتزامات الجامعية والمنح والمساعدات، بينما تربط مخرجات التعليم progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively progressively