توییتر بوت استرپ

بوت استرپ یک جعبه ابزار از توییتر است که برای شروع توسعه برنامه های وب و سایت ها طراحی شده است.
این شامل CSS و HTML پایه برای تایپوگرافی، فرم‌ها، دکمه‌ها، جداول، شبکه‌ها، ناوبری و موارد دیگر است.

هشدار Nerd: بوت استرپ با Less ساخته شده است و برای کار خارج از دروازه تنها با در نظر گرفتن مرورگرهای مدرن طراحی شده است.

هات لینک CSS

برای سریع‌ترین و آسان‌ترین شروع، فقط این قطعه را در صفحه وب خود کپی کنید.

از آن با کمتر استفاده کنید

طرفدار استفاده از Less هستید؟ مشکلی نیست، فقط مخزن را شبیه سازی کنید و این خطوط را اضافه کنید:

فورک در GitHub

با مخزن رسمی Bootstrap در Github، مشکلات را بارگیری، فورک، کشیدن، فایل‌ها و موارد دیگر.

بوت استرپ در GitHub »

شبکه پیش فرض

سیستم شبکه پیش‌فرض ارائه شده به عنوان بخشی از Bootstrap یک شبکه 16 ستونی 940 پیکسلی است. این مزه سیستم محبوب شبکه 960 است، اما بدون حاشیه/بالشتک اضافی در سمت چپ و راست.

نمونه ای از نشانه گذاری شبکه ای

همانطور که در اینجا نشان داده شده است، یک طرح اولیه را می توان با دو "ستون" ایجاد کرد، که هر کدام شامل تعدادی از 16 ستون پایه است که ما به عنوان بخشی از سیستم شبکه خود تعریف کردیم. برای تنوع بیشتر به نمونه های زیر مراجعه کنید.

  1. <div class="row">
  2. <div class = "span6 columns" >
  3. ...
  4. </div>
  5. <div class = "span10 columns" >
  6. ...
  7. </div>
  8. </div>
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
1
4
4
4
4
4
6
6
8
8
5
11
16

تنظیم ستون ها

4
8 افست 4
4 افست 4
4 افست 4
5 افست 3
5 افست 3
10 افست 6

چیدمان ثابت

یک طرح بندی کانتینری در مرکز با پهنای 940 پیکسل برای تقریباً هر سایت یا صفحه.

  1. <بدن>
  2. <div class = "کانتینر" >
  3. ...
  4. </div>
  5. </body>

چیدمان سیال

ساختار صفحه سیال یا مایع انعطاف پذیر با حداقل و حداکثر عرض و یک نوار کناری سمت چپ. عالی برای برنامه ها

  1. <بدن>
  2. <div class = "container-fluid" >
  3. <div class = "نوار کناری" >
  4. ...
  5. </div>
  6. <div class = "محتوا" >
  7. ...
  8. </div>
  9. </div>
  10. </body>

سرفصل ها و کپی

یک سلسله مراتب تایپوگرافی استاندارد برای ساختار صفحات وب شما.

h1. سرفصل 1

h2. سرفصل 2

h3. سرفصل 3

h4. سرفصل 4

h5. سرفصل 5
h6. سرفصل 6

پاراگراف نمونه

Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parurient montes, nascetur ridiculus mus. Nullam id dolor id nibh ultrices vehicula ut id elit.

عنوان مثال دارای عنوان فرعی ...

شما همچنین می توانید زیر عنوان ها را با <strong>و اضافه کنید<em>

متفرقه عناصر

استفاده از تاکید، آدرس و اختصارات

<strong> <em> <address> <abbr>

چه موقع باید استفاده کرد

تگ های تاکیدی ( <strong>و <em>) باید برای ایجاد تمایز بصری بین یک کلمه یا عبارت و کپی اطراف آن استفاده شود. برای <strong>توجه ساده قدیمی و <em>برای توجه و عناوین نرم استفاده کنید.

تاکید در یک پاراگراف

Fusce dapibus ، telus ac cursus commodo ، tortor mauris condimentum nibh ، ut fermentum massa justo sit amet risus. Maecenas faucibus mollis interdum. Nulla vitae elit libero، یک pharetra augue.

آدرس ها

این addressعنصر برای آدرس‌های—شما حدس زدید!—استفاده می‌شود. در اینجا به نظر می رسد:

Twitter, Inc.
795 Folsom Ave, Suite 600
San Francisco, CA 94107
P: (123) 456-7890

توجه: هر خط در یک addressباید با یک خط شکسته ( <br />) خاتمه یابد تا به درستی محتوا را همانطور که در زندگی واقعی خوانده می شود بدون هیچ گونه سبکی بخوانیم.

اختصارات

برای اختصارات و کلمات اختصاری، از abbrتگ استفاده کنید ( acronymدر HTML5 منسوخ شده است ). فرم مختصر را درون تگ قرار دهید و یک عنوان برای نام کامل تعیین کنید.

نقل قول های بلوکی

<blockquote> <p> <cite>

مطمئن شوید که blockquoteاطراف paragraphو citeبرچسب های خود را بپیچید. هنگام ذکر منبع، از citeعنصر استفاده کنید. CSS به طور خودکار نامی را با خط تیره em (—) مقدم می‌کند.

Lorem ipsum dolor sit amet، consectetur adipisicing elit، sed do eiusmod tempor incididunt ut labore et dolore magna aliqua...

دکتر جولیوس هیبرت

لیست ها

بدون سفارش<ul>

  • جرمی بیکسبی
  • رابرت دزور
  • جاش واشنگتن
  • آنتون کاپرسی
  • هم تیمی هایم
    • جورج کاستانزا
    • جری ساینفلد
    • کاسمو کرامر
    • الین بنیس
    • انسان جدید
  • جان جیکوب
  • پل پیرس
  • کوین گارنت

بی استایل<ul.unstyled>

  • جرمی بیکسبی
  • رابرت دزور
  • جاش واشنگتن
  • آنتون کاپرسی
  • هم تیمی هایم
    • جورج کاستانزا
    • جری ساینفلد
    • کاسمو کرامر
    • الین بنیس
    • انسان جدید
  • جان جیکوب
  • پل پیرس
  • کوین گارنت

سفارش داده شده<ol>

  1. جرمی بیکسبی
  2. رابرت دزور
  3. جاش واشنگتن
  4. آنتون کاپرسی
  5. هم تیمی هایم
    1. جورج کاستانزا
    2. جری ساینفلد
    3. کاسمو کرامر
    4. الین بنیس
    5. انسان جدید
  6. جان جیکوب
  7. پل پیرس
  8. کوین گارنت

شرحdl

لیست های توضیحات
لیست توضیحات برای تعریف اصطلاحات عالی است.
Euismod
Vestibulum id ligula porta felis euismod semper eget lacinia odio sem nec elit.
Donec id elit non mi porta gravida at eget metus.
Malesuada porta
Etiam porta sem malesuada magna mollis euismod.

جداول ساختمان

<table> <thead> <tbody> <tr> <th> <td> <colspan> <caption>

میزها برای خیلی چیزها عالی هستند. با این حال، جداول عالی برای مفید، مقیاس پذیر و خوانا (در سطح کد) به مقداری علاقه به نشانه گذاری نیاز دارند. در اینجا چند نکته برای کمک وجود دارد.

همیشه سرصفحه های ستون خود را theadطوری بپیچید که سلسله مراتب thead> tr> thباشد.

مانند سرصفحه های ستون، تمام محتوای جدول شما باید در یک شکل پیچیده شود tbodyتا سلسله مراتب شما tbody> tr> tdباشد.

مثال: سبک های جدول پیش فرض

برای اطمینان از خوانایی و حفظ ساختار، همه جداول به صورت خودکار تنها با حاشیه‌های ضروری طراحی می‌شوند. بدون نیاز به اضافه کردن کلاس ها یا ویژگی های اضافی.

# نام کوچک نام خانوادگی زبان
1 مقداری یکی انگلیسی
2 جو سیکس پک انگلیسی
3 استو دندانه کد
  1. <table class="common-table"> class = "common-table" >
  2. ...
  3. </table>

مثال: راه راه گورخری

با افزودن راه راه گورخری، میزهای خود را کمی شیک کنید—فقط .zebra-stripedکلاس را اضافه کنید.

# نام کوچک نام خانوادگی زبان
1 مقداری یکی انگلیسی
2 جو سیکس پک انگلیسی
3 استو دندانه کد
  1. <table class="common-table zebra-striped"> class = "میز مشترک گورخری راه راه" >
  2. ...
  3. </table>

مثال: Zebra-striped w/ TableSorter.js

با در نظر گرفتن مثال قبلی، با ارائه قابلیت مرتب‌سازی از طریق jQuery و افزونه Tablesorter ، مفید بودن جداول خود را بهبود می‌بخشیم . برای تغییر مرتب‌سازی، روی سرصفحه هر ستون کلیک کنید.

# نام کوچک نام خانوادگی زبان
1 شما یکی انگلیسی
2 جو سیکس پک انگلیسی
3 استو دندانه کد
  1. <script type="text/javascript" src="js/jquery/jquery.tablesorter.min.js"></script> type = "text/javascript" src = "js/jquery/jquery.tablesorter.min.js" ></script>
  2. <script type = "text/javascript" >
  3. $ ( سند ). آماده ( تابع () {
  4. $ ( "table# sortTableExample" ). جدول‌بندی ( { sortList : [[ 1 , 0 ]]} );
  5. })؛
  6. </script>
  7. <table class = "common-table zebra-striped" >
  8. ...
  9. </table>

سبک های پیش فرض

به همه فرم ها سبک های پیش فرض داده می شود تا آنها را به روشی خوانا و مقیاس پذیر ارائه کنند. سبک‌ها برای ورودی‌های متن، فهرست‌های انتخابی، مناطق متنی، دکمه‌های رادیویی و کادرهای چک و دکمه‌ها ارائه می‌شوند.

نمونه فرم افسانه
مقداری ارزش در اینجا
قطعه کوچکی از متن راهنما
نمونه فرم افسانه
@
نمونه فرم افسانه
توجه: برچسب‌ها همه گزینه‌ها را برای مناطق کلیکی بسیار بزرگ‌تر و یک فرم قابل استفاده‌تر احاطه می‌کنند.
به همه زمان ها به عنوان زمان استاندارد اقیانوس آرام (GMT -08:00) نشان داده می شود.
بلوک متن راهنما برای توصیف فیلد بالا در صورت نیاز.

فرم های انباشته

به HTML فرم خود اضافه .form-stackedکنید و برچسب هایی را در بالای فیلدهای آنها به جای سمت چپ آنها خواهید داشت. اگر فرم‌های شما کوتاه باشند یا دو ستون ورودی برای فرم‌های سنگین‌تر داشته باشید، عالی عمل می‌کند.

نمونه فرم افسانه
نمونه فرم افسانه
توجه: برچسب‌ها همه گزینه‌ها را برای مناطق کلیکی بسیار بزرگ‌تر و یک فرم قابل استفاده‌تر احاطه می‌کنند.

دکمه ها

به عنوان یک قرارداد، دکمه ها برای اعمال استفاده می شوند در حالی که پیوندها برای اشیاء استفاده می شوند. به عنوان مثال، "دانلود" می تواند یک دکمه و "فعالیت اخیر" می تواند یک پیوند باشد.

همه دکمه ها به طور پیش فرض به سبک خاکستری روشن هستند، اما .primaryکلاس آبی در دسترس است. بعلاوه، رول کردن سبک های خود کار ساده ای است.

دکمه های نمونه

استایل‌های دکمه‌ای را می‌توان برای هر چیزی با .btnاعمال اعمال کرد. معمولاً می‌خواهید این موارد را فقط روی عناصر a، buttonو انتخاب کنید اعمال کنید. inputدر اینجا به نظر می رسد:

اندازه های جایگزین

دکمه های بزرگتر یا کوچکتر را دوست دارید؟ آن را داشته باشید!

حالت غیر فعال

برای دکمه‌هایی که فعال نیستند یا به دلایلی توسط برنامه غیرفعال شده‌اند، از حالت غیرفعال استفاده کنید. این .disabledبرای پیوندها و :disabledبرای buttonعناصر است.

پیوندها

دکمه ها

هشدارهای اولیه

پیام های تک خطی برای برجسته کردن شکست، شکست احتمالی یا موفقیت یک عمل. به خصوص برای فرم ها مفید است.

×

آه ضربه محکم و ناگهانی! این و آن را تغییر دهید و دوباره امتحان کنید.

×

گاوکامول مقدس! بهتر است خودتان را بررسی کنید، شما خیلی خوب به نظر نمی رسید.

×

آفرین! شما با موفقیت این پیام هشدار را خواندید.

×

سر بالا! این هشداری است که به توجه شما نیاز دارد، اما هنوز یک اولویت بزرگ نیست.

مسدود کردن پیام ها

برای پیام هایی که نیاز به کمی توضیح دارند، هشدارهای سبک پاراگراف داریم. این‌ها برای حباب کردن پیام‌های خطای طولانی‌تر، هشدار دادن به کاربر در مورد یک اقدام معلق، یا فقط ارائه اطلاعات برای تاکید بیشتر در صفحه مناسب هستند.

×

آه ضربه محکم و ناگهانی! شما یک خطا دریافت کردید!این و آن را تغییر دهید و دوباره امتحان کنید. Duis mollis، est non commodo luctus، nisi erat porttitor ligula، eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.

این اقدام را انجام دهید یا این کار را انجام دهید

×

گاوکامول مقدس! این یک هشدار است!بهتر است خودتان را بررسی کنید، شما خیلی خوب به نظر نمی رسید. Nulla vitae elit libero، یک pharetra augue. commodo cursus magna، vel scelerisque nisl consectetur et.

این اقدام را انجام دهید یا این کار را انجام دهید

×

آفرین!شما با موفقیت این پیام هشدار را خواندید. Cum sociis natoque penatibus et magnis dis parurient montes, nascetur ridiculus mus. Maecenas faucibus mollis interdum.

این اقدام را انجام دهید یا این کار را انجام دهید

×

سر بالا!این هشداری است که به توجه شما نیاز دارد، اما هنوز یک اولویت بزرگ نیست.

این اقدام را انجام دهید یا این کار را انجام دهید

مدال ها

مدال ها - دیالوگ ها یا لایت باکس ها - برای اقدامات متنی در موقعیت هایی که حفظ زمینه پس زمینه مهم است، عالی هستند.

نکات ابزار

Twipsies برای کمک به کاربر گیج و هدایت آنها در جهت درست بسیار مفید است.

Lorem ipsum dolar sit amet illo error ipsum veritatis aut iste perspiciatis iste voluptas natus illo quasi odit aut natus نتیجه نتیجه، aut natus illo voluptatem odit perspiciatis laudantium rem doloremque totam voluptas. Voluptasdicta eaque beatae aperiam ut enim voluptatem explicabo explicabo، voluptas quia odit fugit accusantium totam totam معماری

زیر
درست!
ترک کرد!
در بالا!

پاپاورها

از پاپاورها برای ارائه اطلاعات زیرمتنی به یک صفحه بدون تأثیرگذاری روی طرح بندی استفاده کنید.

عنوان Popover

Etiam porta sem malesuada magna mollis euismod. Maecenas faucibus mollis interdum. Morbi leo risus، porta ac consectetur ac، vestibulum at eros.

Bootstrap با Preboot ساخته شده است، یک بسته منبع باز از میکسین ها و متغیرها برای استفاده همراه با Less ، یک پیش پردازنده CSS برای توسعه سریعتر و آسان تر وب.

بررسی کنید که چگونه از Preboot در Bootstrap استفاده کرده‌ایم و اگر Less را در پروژه بعدی خود اجرا کنید چگونه می‌توانید از آن استفاده کنید.

نحوه استفاده از آن

از این گزینه برای استفاده کامل از متغیرهای Bootstrap Less، mixins و nesting در CSS از طریق جاوا اسکریپت در مرورگر خود استفاده کنید.

  1. <link rel="stylesheet/less" type="text/css" href="less/bootstrap.less" media="all" /> rel = "stylesheet/less" type = "text/css" href = "less/bootstrap.less" media = "همه" />
  2. <script type = "text/javascript" src = "js/less-1.0.41.min.js" ></script>

راه حل .js را احساس نمی کنید؟ برنامه Less Mac را امتحان کنید یا از Node.js برای کامپایل هنگام استقرار کد خود استفاده کنید.

چه چیزی گنجانده شده است

در اینجا برخی از نکات برجسته در توییتر بوت استرپ به عنوان بخشی از بوت استرپ وجود دارد. برای دانلود و کسب اطلاعات بیشتر به وب سایت بوت استرپ یا صفحه پروژه Github بروید.

متغیرهای رنگ

متغیرهای Less برای حفظ و به‌روزرسانی بدون سردرد CSS شما عالی هستند. وقتی می‌خواهید مقدار رنگ یا مقداری که اغلب استفاده می‌شود را تغییر دهید، آن را در یک نقطه به‌روزرسانی کنید و آماده هستید.

  1. // پیوندها
  2. @linkColor : #8b59c2;
  3. @linkColorHover : darken ( @linkColor , 10 );
  4. // خاکستری
  5. @black : #000;
  6. @grayDark : روشن ( @black , 25 %)؛
  7. @grey : روشن کردن ( @black , 50 %);
  8. @grayLight : روشن ( @black ، 70 %)؛
  9. @grayLighter : روشن کردن ( @black , 90 %);
  10. @white : #fff;
  11. // رنگ های تاکیدی
  12. @blue : #08b5fb;
  13. @green : #46a546;
  14. @red : #9d261d;
  15. @yellow : #ffc40d;
  16. @orange : #f89406;
  17. @pink : #c3325f;
  18. @بنفش : #7a43b6 ;
  19. // خط مبنا
  20. @baseline : 20px ;

اظهار نظر

Less علاوه بر /* ... */سینتکس معمولی CSS، سبک دیگری از نظر دادن را نیز ارائه می دهد.

  1. // این یک نظر است
  2. /* این هم یک نظر */

wazoo را مخلوط می کند

میکس ها اساسا شامل یا جزئی برای CSS هستند و به شما این امکان را می دهند که یک بلوک از کد را در یکی ترکیب کنید. آنها برای ویژگی های پیشوند فروشنده مانند box-shadow، گرادیان های متقابل مرورگر، پشته های فونت و موارد دیگر عالی هستند. در زیر نمونه ای از میکس های موجود در Bootstrap آمده است.

پشته های فونت

  1. #فونت {
  2. . مختصر ( @weight : normal , @size : 14px , @lineHeight : 20px ) {
  3. font - size : @size ;
  4. فونت - وزن : @weight ;
  5. خط - ارتفاع : @lineHeight ;
  6. }
  7. . sans - serif ( @weight : normal , @size : 14px , @lineHeight : 20px ) {
  8. font - family : "Helvetica Neue" , ​​Helvetica , Arial , sans - serif ;
  9. font - size : @size ;
  10. فونت - وزن : @weight ;
  11. خط - ارتفاع : @lineHeight ;
  12. }
  13. . serif ( @weight : normal , @size : 14px , @lineHeight : 20px ) {
  14. font - family : "Georgia" , Times New Roman , Times , sans - serif ;
  15. font - size : @size ;
  16. فونت - وزن : @weight ;
  17. خط - ارتفاع : @lineHeight ;
  18. }
  19. . monospace ( @weight : normal , @size : 12px , @lineHeight : 20px ) {
  20. font - family : "Monaco" , Courier New , monospace ;
  21. font - size : @size ;
  22. فونت - وزن : @weight ;
  23. خط - ارتفاع : @lineHeight ;
  24. }
  25. }

گرادیان ها

  1. #شیب {
  2. . افقی ( @startColor : #555، @endColor: #333) {
  3. پس زمینه - رنگ : @endColor ;
  4. پس زمینه - تکرار : تکرار - x ;
  5. پس‌زمینه - تصویر : - khtml - گرادیان ( خطی ، سمت چپ بالا ، بالا سمت راست ، از ( @startColor به ( @endColor )); // Conqueror
  6. پس‌زمینه - تصویر : - moz - خطی - گرادیان ( سمت چپ ، @startColor ، @endColor ); // FF 3.6+
  7. پس زمینه - تصویر : - ms - خطی - گرادیان ( سمت چپ ، @startColor ، @endColor ); // IE10
  8. پس‌زمینه - تصویر : - webkit - گرادیان ( خطی ، بالا سمت چپ ، بالا سمت راست ، توقف رنگ ( 0 ٪، @startColor توقف رنگ ( 100 ٪ ، @endColor ) ). // Safari 4+، Chrome 2+
  9. پس‌زمینه - تصویر : - webkit - خطی - گرادیان ( سمت چپ ، @startColor ، @endColor ); // Safari 5.1+، Chrome 10+
  10. پس زمینه - تصویر : - o - خطی - گرادیان ( سمت چپ ، @startColor ، @endColor ); // Opera 11.10
  11. - ms - filter : %( "progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)" , @startColor , @endColor ); // IE8+
  12. فیلتر : e (%( "progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)" , @startColor , @endColor )); // IE6 و IE7
  13. پس‌زمینه - تصویر : خطی - گرادیان ( سمت چپ ، @startColor ، @endColor ); // استاندارد لو
  14. }
  15. . عمودی ( @startColor : #555، @endColor: #333) {
  16. پس زمینه - رنگ : @endColor ;
  17. پس زمینه - تکرار : تکرار - x ;
  18. پس‌زمینه - تصویر : - khtml - گرادیان ( خطی ، سمت چپ بالا ، پایین سمت چپ ، از ( @startColor به ( @endColor )); // Conqueror
  19. پس‌زمینه - تصویر : - moz - خطی - گرادیان ( @startColor ، @endColor ); // FF 3.6+
  20. پس زمینه - تصویر : - ms - خطی - گرادیان ( @startColor ، @endColor ); // IE10
  21. پس‌زمینه - تصویر : - webkit - گرادیان ( خطی ، بالا سمت چپ ، پایین سمت چپ ، توقف رنگ ( 0 ٪، @startColor رنگ - توقف ( 100 ٪ ، @endColor ) ). // Safari 4+، Chrome 2+
  22. پس زمینه - تصویر : - وب کیت - خطی - گرادیان ( @startColor ، @endColor ); // Safari 5.1+، Chrome 10+
  23. پس‌زمینه - تصویر : - o - خطی - گرادیان ( @startColor ، @endColor ); // Opera 11.10
  24. - ms - filter : %( "progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)" , @startColor , @endColor ); // IE8+
  25. فیلتر : e (%( "progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)" , @startColor , @endColor )); // IE6 و IE7
  26. پس‌زمینه - تصویر : خطی - گرادیان ( @startColor ، @endColor ); // استاندارد
  27. }
  28. . جهت دار ( @startColor : #555، @endColor: #333، @deg: 45deg) {
  29. ...
  30. }
  31. . عمودی - سه - رنگ ( @startColor : #00b3ee، @midColor: #7a43b6، @colorStop: 0.5، @endColor: #c3325f) {
  32. ...
  33. }
  34. }

عملیات و سیستم شبکه

برای تولید میکس‌های انعطاف‌پذیر و قدرتمند مانند موارد زیر، کمی شیک باشید و کمی ریاضی انجام دهید.

  1. // Griditude
  2. @gridColumns : 16 ;
  3. @gridColumnWidth : 40px ;
  4. @gridGutterWidth : 20px ;
  5. // سیستم شبکه ای
  6. . ظرف {
  7. عرض : @siteWidth ;
  8. حاشیه : 0 خودکار ;
  9. . clearfix ();
  10. }
  11. . ستون ها ( @columnSpan : 1 ) {
  12. نمایش : درون خطی ;
  13. شناور : چپ ;
  14. عرض : ( @gridColumnWidth * @columnSpan ) + ( @gridGutterWidth * ( @columnSpan - 1 ));
  15. حاشیه - چپ : @gridGutterWidth ;
  16. &: اول - فرزند {
  17. حاشیه - چپ : 0 ;
  18. }
  19. }
  20. . افست ( @columnOffset : 1 ) {
  21. حاشیه - چپ : ( @gridColumnWidth * @columnOffset ) + ( @gridGutterWidth * ( @columnOffset - 1 )) ! مهم ؛
  22. }