Forwarded from Gopher Academy
🔵 عنوان مقاله
♟️ Running a Million-Board Chess MMO in a Single Process
🟢 خلاصه مقاله:
این مقاله به توضیح دقیقی پرداخته است در رابطه با نحوه ساخت یک بازی شطرنج چندنفره بزرگ توسط یک توسعهدهنده بازی، که با استفاده از زبان برنامهنویسی Go در پشتصحنه، بدون هیچ مشکلی در عملکرد، انجام شده است. توسعهدهنده این فرایند را از طریق ویدیویی در یوتیوب به اشتراک گذاشته که هم آموزشی است و هم نمایشی از کاربرد Go در توسعه بازیهای زمان-واقعی پیچیده. عبارت "Go Blue" به استفاده و حمایت از زبان Go در جامعه فناوری یا بازیسازی اشاره دارد.
🟣لینک مقاله:
https://golangweekly.com/link/171243/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
♟️ Running a Million-Board Chess MMO in a Single Process
🟢 خلاصه مقاله:
این مقاله به توضیح دقیقی پرداخته است در رابطه با نحوه ساخت یک بازی شطرنج چندنفره بزرگ توسط یک توسعهدهنده بازی، که با استفاده از زبان برنامهنویسی Go در پشتصحنه، بدون هیچ مشکلی در عملکرد، انجام شده است. توسعهدهنده این فرایند را از طریق ویدیویی در یوتیوب به اشتراک گذاشته که هم آموزشی است و هم نمایشی از کاربرد Go در توسعه بازیهای زمان-واقعی پیچیده. عبارت "Go Blue" به استفاده و حمایت از زبان Go در جامعه فناوری یا بازیسازی اشاره دارد.
🟣لینک مقاله:
https://golangweekly.com/link/171243/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
eieio.games
Running a million-board chess MMO in a single process · eieio.games
How one million chessboards works
Forwarded from Gopher Academy
🔴قابلیت Container-aware GOMAXPROCS ویژگی های جدید گولنگ نسخه 1.25
در Go 1.25، رفتار پیشفرض
* اگر quota عددی کسری ainer/cgroup است:
🧠 چه تغییری ایجاد شده؟
1. پیشفرض هوشمندانه در محیطهای container
قبل از Go 1.25، اگر داخل یک کانتینر با CPU quota=1 اجرا میکردید،
حالا این مقدار با توجه به quota واقعی کانتینر تنظیم میشود:
* اگر quota برابر 1 باشد،باشد (مثلاً 2.3)، با گرد کردن به بالا مقدار 3 میگیرد
* حداقل مقدار، حتی برای quota=1 هم 2 خواهد بود، مگر اینکه affinity یا CPU فیزیکی کمتر باشد
2. بروزرسانی پویا در حین اجرای برنامه
اگر پس از شروع برنامه quota تغییر کند (مثلاً از Kubernetes)، runtime بهصورت دورهای (معمولاً هر ثانیه) مقدار
3. امکان غیرفعالسازی
* اگر مقدار
* همچنین میتوانید با تنظیم
- 📚 مثال واقعی
فرض کنید در Kubernetes اجرای زیر را داریم:
درون برنامه:
خروجی قبل از Go 1.25:
در Go 1.25:
اگر quota = 2.3 باشد، مقدار:
و اگر quota = 1، ولی نود بزرگتر باشد، مقدار:
حالا اگر حجم CPU محدودیت افزایش یابد، مثلاً از 1 به 2، مقدار نیز بدون نیاز به ریاستارت برنامه بروزرسانی میشود
برای بازگرداندن به حالت پیشفرض پس از تنظیم دستی، میتوانید بنویسید:
✅ چرا این مهم است؟
1. هماهنگی با منابع کانتینری – دیگر نیازی به تعیین دستی یا بسته شدن برنامه ندارید.
2. کاهش throttling – با منطبق شدن با quota، احتمال deschedule شدن threadها و تأخیر کاهش پیدا میکند .
3. کارایی بهتر GC و scheduler – هرچه
4. مناسب برای Kubernetes و سرورلس – نیازی نیست ابزار اضافی مثل
✳️ جمعبندی
در Go 1.25 بهصورت هوشمندانه
➖➖➖➖➖➖➖➖
👑 @gopher_academy
در Go 1.25، رفتار پیشفرض
GOMAXPROCS (تعداد هستههای مجازی که به اجرای goroutineها اختصاص داده میشود) اکنون آگاه به محدودیتهای cont GOMAXPROCS هم شده 1* اگر quota عددی کسری ainer/cgroup است:
🧠 چه تغییری ایجاد شده؟
1. پیشفرض هوشمندانه در محیطهای container
قبل از Go 1.25، اگر داخل یک کانتینر با CPU quota=1 اجرا میکردید،
GOMAXPROCS برابر با تعداد کل CPU های میزبان (مثلاً 8 یا 32) بود.حالا این مقدار با توجه به quota واقعی کانتینر تنظیم میشود:
* اگر quota برابر 1 باشد،باشد (مثلاً 2.3)، با گرد کردن به بالا مقدار 3 میگیرد
* حداقل مقدار، حتی برای quota=1 هم 2 خواهد بود، مگر اینکه affinity یا CPU فیزیکی کمتر باشد
2. بروزرسانی پویا در حین اجرای برنامه
اگر پس از شروع برنامه quota تغییر کند (مثلاً از Kubernetes)، runtime بهصورت دورهای (معمولاً هر ثانیه) مقدار
GOMAXPROCS را بهروز میکند .3. امکان غیرفعالسازی
* اگر مقدار
GOMAXPROCS دستی تنظیم شده یا در env مشخص شده باشد، این رفتار جدید غیرفعال میشود .* همچنین میتوانید با تنظیم
Gontainermaxprocs=0 یا updatemaxprocs=0 رفتار را خاموش یا بروزرسانی پویا را متوقف کنید ([tip.golang.org][1]).- 📚 مثال واقعی
فرض کنید در Kubernetes اجرای زیر را داریم:
kubectl run go-app --image=golang:1.25rc1 \
--limits="cpu=1"
درون برنامه:
fmt.Println("GOMAXPROCS:", runtime.GOMAXPROCS(0))خروجی قبل از Go 1.25:
GOMAXPROCS: 8 // مثلاً روی یک نود ۸ هستهای
در Go 1.25:
GOMAXPROCS: 1
اگر quota = 2.3 باشد، مقدار:
GOMAXPROCS: 3
و اگر quota = 1، ولی نود بزرگتر باشد، مقدار:
GOMAXPROCS: 2
حالا اگر حجم CPU محدودیت افزایش یابد، مثلاً از 1 به 2، مقدار نیز بدون نیاز به ریاستارت برنامه بروزرسانی میشود
برای بازگرداندن به حالت پیشفرض پس از تنظیم دستی، میتوانید بنویسید:
runtime.SetDefaultGOMAXPROCS()
✅ چرا این مهم است؟
1. هماهنگی با منابع کانتینری – دیگر نیازی به تعیین دستی یا بسته شدن برنامه ندارید.
2. کاهش throttling – با منطبق شدن با quota، احتمال deschedule شدن threadها و تأخیر کاهش پیدا میکند .
3. کارایی بهتر GC و scheduler – هرچه
GOMAXPROCS کمتر به real CPU نزدیکتر باشد، مصرف حافظه و context switch کاهش مییابد 4. مناسب برای Kubernetes و سرورلس – نیازی نیست ابزار اضافی مثل
automaxprocs استفاده شود؛ همین رفتار در runtime تعبیهشده کافی است .✳️ جمعبندی
در Go 1.25 بهصورت هوشمندانه
GOMAXPROCS را بر اساس محدودیت واقعی CPU در کانتینر تنظیم و بروزرسانی میکند. این ویژگی باعث اجرای بهینهتر برنامهها در Kubernetes و محیطهای مشابه میشود و نیاز به تنظیمات اضافی را حذف میکند. اگر در پروژه شما محدودیت CPU تعریف نکردهاید یا به رفتار پیشین نیاز دارید، میتوانید با GODEBUG یا runtime.SetDefaultGOMAXPROCS() کنترل کنید.➖➖➖➖➖➖➖➖
👑 @gopher_academy
Forwarded from Linuxor ?
Forwarded from Linuxor ?
This media is not supported in your browser
VIEW IN TELEGRAM
دوتا دوره عالی از دانشگاه برکلی راجع به ایجنت ها ارائه شده. دوره اول فاندیمنتال و مباحث اصلی را توضیح میده و دوره دوم دوره پیشرفته راجع به ایجنت ها هست. تمام اسلایدها و ویدیوها و مقالات هم موجوده. و موضوعات مهم و اساسی را پوشش میده.
دوره اول:
rdi.berkeley.edu/llm-agents/f24
دوره پیشرفته :
rdi.berkeley.edu/adv-llm-agents/sp25
@Linuxor ~ Mehdi Allahyari
دوره اول:
rdi.berkeley.edu/llm-agents/f24
دوره پیشرفته :
rdi.berkeley.edu/adv-llm-agents/sp25
@Linuxor ~ Mehdi Allahyari
Forwarded from Linuxor ?
شرکت IBM یه دوره رایگان Data Analyst شروع کرده که بهتون مدرک هم میده؛ توی دوره قراره مهارت های ضروری برای کار و یه سری لایبری های پایتون رو بهتون یاد بده
www.coursera.org/professional-certificates/ibm-data-analyst
@Linuxor
www.coursera.org/professional-certificates/ibm-data-analyst
@Linuxor
Forwarded from Gopher Academy
🔵 عنوان مقاله
The Evolution of Caching Libraries in Go
🟢 خلاصه مقاله:
توسعهدهنده کتابخانه کش Otter، به بررسی تاریخچه کتابخانههای کش در زبان برنامهنویسی Go پرداخته است. او مشکلاتی که توسعهدهندگان در گذشته با آن روبرو بودهاند و دلایل به وجود آمدن Otter را شرح داده است. کتابخانههای کش قبلی با مشکلاتی مانند استفاده ناکارآمد از حافظه و سختی در گسترش بر روی چندین دستگاه مواجه بودند. Otter به عنوان راهحلی برای این مشکلات طراحی شده، با ویژگیهایی نظیر الگوریتمهای بهتر برای حذف دادهها و مدیریت حافظه پیشرفته، تا عملکرد بهتری در محیطهای توزیعشده ارائه دهد.
🟣لینک مقاله:
https://golangweekly.com/link/171241/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
The Evolution of Caching Libraries in Go
🟢 خلاصه مقاله:
توسعهدهنده کتابخانه کش Otter، به بررسی تاریخچه کتابخانههای کش در زبان برنامهنویسی Go پرداخته است. او مشکلاتی که توسعهدهندگان در گذشته با آن روبرو بودهاند و دلایل به وجود آمدن Otter را شرح داده است. کتابخانههای کش قبلی با مشکلاتی مانند استفاده ناکارآمد از حافظه و سختی در گسترش بر روی چندین دستگاه مواجه بودند. Otter به عنوان راهحلی برای این مشکلات طراحی شده، با ویژگیهایی نظیر الگوریتمهای بهتر برای حذف دادهها و مدیریت حافظه پیشرفته، تا عملکرد بهتری در محیطهای توزیعشده ارائه دهد.
🟣لینک مقاله:
https://golangweekly.com/link/171241/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
maypok86.github.io
The Evolution of Caching Libraries in Go - Otter
Forwarded from Morteza Bashsiz مرتضی باشسیز (Morteza Bashsiz)
یه موضوعی که بعد از فراگیر شدن استفاده از ChatGPT و برنامههای مشابهش مخصوصا توی محیط کار خیلی زیاد شده این موضوع هست که یهو شاهد تغییر در تواناییها و سطح دانش افراد شدیم 😁
مثلا این مدلی که تا دیروز مدل Code Review و کامنتها یه حالت کاملا نرمالی بود که کاملا مشخصه که یک شخص داره این حرف رو میزنه. ولی یهو امروز همون شخص میبینی یه کامنتی میزاره، سوالی میپرسه، یا یه پیشنهادی میده که با خودت میگی لعنتی من که ۲ هفتست دارم روی این موضوع کار میکنم این به ذهنم نرسیده بود تو چطوری توی ۱ ساعت در این حجم از کد متوجهش شدی؟
حالا جالب اینه که وقتی ازش میپرسی که چطوری این رو پیدا کردی و بر چه اساسی این پیشنهاد رو میدی، بعدش متوجه میشی که خیلی درک درستی نداشته از موضوع و کاملا مشخصه که از این برنامهها استفاده کرده
من نمیگم که استفاده از این برنامهها بد هست یا نباید استفاده کرد، ولی حرفم اینه که باید یاد بگیریم درست استفاده کنیم.
یهو به خودمون میایم میبینیم که بدون ChatGPT اصلا نمیتونیم کار کنیم. میبینیم که حتی سادهترین مواردی که قبلا ما رو به فکر وا میداشت و بخاطرش فکر میکردیم، الان دیگه فکر نمیکنیم و سریع ازش میپرسیم و هرچی بگه میپذیریم و این خیلی بده.
مثلا این مدلی که تا دیروز مدل Code Review و کامنتها یه حالت کاملا نرمالی بود که کاملا مشخصه که یک شخص داره این حرف رو میزنه. ولی یهو امروز همون شخص میبینی یه کامنتی میزاره، سوالی میپرسه، یا یه پیشنهادی میده که با خودت میگی لعنتی من که ۲ هفتست دارم روی این موضوع کار میکنم این به ذهنم نرسیده بود تو چطوری توی ۱ ساعت در این حجم از کد متوجهش شدی؟
حالا جالب اینه که وقتی ازش میپرسی که چطوری این رو پیدا کردی و بر چه اساسی این پیشنهاد رو میدی، بعدش متوجه میشی که خیلی درک درستی نداشته از موضوع و کاملا مشخصه که از این برنامهها استفاده کرده
من نمیگم که استفاده از این برنامهها بد هست یا نباید استفاده کرد، ولی حرفم اینه که باید یاد بگیریم درست استفاده کنیم.
یهو به خودمون میایم میبینیم که بدون ChatGPT اصلا نمیتونیم کار کنیم. میبینیم که حتی سادهترین مواردی که قبلا ما رو به فکر وا میداشت و بخاطرش فکر میکردیم، الان دیگه فکر نمیکنیم و سریع ازش میپرسیم و هرچی بگه میپذیریم و این خیلی بده.
Forwarded from Laravel News
Content Negotiation with Laravel's prefers Method https://laravel-news.com/request-prefers
Laravel News
Content Negotiation with Laravel's prefers Method - Laravel News
Laravel's prefers method streamlines content type negotiation by evaluating client Accept headers against supported formats. Build flexible endpoints that serve JSON, HTML, XML, or custom formats based on client preferences.
Forwarded from Morteza Bashsiz مرتضی باشسیز (Morteza Bashsiz)
"The fundamental cause of the trouble is that in the modern world the stupid are cocksure while the intelligent are full of doubt,"
Bertrand Russell
اینو همین الان یکی از دوستانم به اشتراک گذاشت و واقعا چقدر درسته این حرف
ترجمه گوگل :
علت اساسی مشکل این است که در دنیای مدرن، احمقها کاملاً مطمئن هستند در حالی که باهوشها سرشار از شک و تردیدند.
Bertrand Russell
اینو همین الان یکی از دوستانم به اشتراک گذاشت و واقعا چقدر درسته این حرف
ترجمه گوگل :
علت اساسی مشکل این است که در دنیای مدرن، احمقها کاملاً مطمئن هستند در حالی که باهوشها سرشار از شک و تردیدند.
Forwarded from The Hacker News
🚨 Critical Sudo flaw lets any local user get root access on Linux.
No sudo rules required. Default configs are vulnerable.
It’s been hiding in plain sight—since 2013.
Fixes just dropped. Patch now.
Full details → https://thehackernews.com/2025/07/critical-sudo-vulnerabilities-let-local.html
No sudo rules required. Default configs are vulnerable.
It’s been hiding in plain sight—since 2013.
Fixes just dropped. Patch now.
Full details → https://thehackernews.com/2025/07/critical-sudo-vulnerabilities-let-local.html
Forwarded from Laravel News
Laravel in the First Half of 2025 https://laravel-news.com/laravel-in-the-first-half-of-2025
Laravel News
Laravel in the First Half of 2025 - Laravel News
July 2nd was the midpoint of 2025, and I thought it would be nice to recap some of the most memorable moments so far this year at Laravel News.
Forwarded from Linuxor ?
با توجه به اینکه بخش زیادی از کارهای شما به اینترنت مربوط است و اینترنت هنوز درست نشده، آیا بازدهی کاری شما به قبل از جنگ بازگشته است؟
Anonymous Poll
18%
بله، کاملا اوضاع عادی است و کار هایم را مثل قبل جنگ انجام میدهم
63%
خیر، هنوز مشکلات اینترنت جلوی کار من را گرفته است ولی کمابیش کار هارا جلو میبرم
19%
خیر، هنوز مشکلات اینترنت جلوی کار من را گرفته است و مرا از کار کردن متوقف کرده است
Forwarded from Linuxor ?
انجمن بلاک چین و سازمان نظام صنفی رایانه ای شروع کرده بودن به جمع آوری IP شرکت هاشون و نامه نگاری که اینترنت بین اللملی بهشون بدن و تو مواقع بحرانی همیشه وصل باشن.
این حرکتشون باعث میشد که اینترنت به سمت طبقاتی شدن بره و ملی شدن اینترنت تسهیل بشه، حالا معاون وزیر و رئیس زیر ساخت بهزاد اکبری بهشون گفته "من اصلا باهاتون هماهنگ نکردم که IP بدید خلاصه جمع کنید این کاسه کوزتون رو" (اینطوری رک نگفت با لحن خودم دارم میگم)
@Linuxor
این حرکتشون باعث میشد که اینترنت به سمت طبقاتی شدن بره و ملی شدن اینترنت تسهیل بشه، حالا معاون وزیر و رئیس زیر ساخت بهزاد اکبری بهشون گفته "من اصلا باهاتون هماهنگ نکردم که IP بدید خلاصه جمع کنید این کاسه کوزتون رو" (اینطوری رک نگفت با لحن خودم دارم میگم)
@Linuxor
Forwarded from 𝘮𝘰𝘯𝘪𝘣 𝘴𝘢𝘭𝘦𝘩𝘪
🎯 به Code Lab خوش اومدی!
اگه فکر میکنی برنامهنویسی فقط حفظ کردن سینتکسه، وقتشه ذهنتو عوض کنی!
اینجا جاییه که کدنویسی رو با لذت یاد میگیریم، نه با فشار و استرس!
📌 توی Code Lab قراره:
• با چالشهای روزانه مهارتتو تقویت کنی
• نکات کاربردی JavaScript و React رو آسون و قابل فهم یاد بگیری
• از تجربههای واقعی، اشتباهات رایج و ترفندهای خفن باخبر بشی
• و حتی گاهی دربارهی دغدغههای ذهنی یه برنامهنویس گپ بزنیم (از ایمپاستر سندروم تا مصاحبه کاری!)
✨ هر چیزی که برای یه توسعهدهندهی خلاق و قوی شدن لازم داری، همینجاست.
📲 اگه هنوز عضوی از Code Lab نیستی، همین حالا بیا…
چون آیندهات میتونه از همینجا شروع بشه!
🆔@c0delab | 🧑🏻💻👩🏻💻
📮Gp CodeLab
اگه فکر میکنی برنامهنویسی فقط حفظ کردن سینتکسه، وقتشه ذهنتو عوض کنی!
اینجا جاییه که کدنویسی رو با لذت یاد میگیریم، نه با فشار و استرس!
📌 توی Code Lab قراره:
• با چالشهای روزانه مهارتتو تقویت کنی
• نکات کاربردی JavaScript و React رو آسون و قابل فهم یاد بگیری
• از تجربههای واقعی، اشتباهات رایج و ترفندهای خفن باخبر بشی
• و حتی گاهی دربارهی دغدغههای ذهنی یه برنامهنویس گپ بزنیم (از ایمپاستر سندروم تا مصاحبه کاری!)
✨ هر چیزی که برای یه توسعهدهندهی خلاق و قوی شدن لازم داری، همینجاست.
📲 اگه هنوز عضوی از Code Lab نیستی، همین حالا بیا…
چون آیندهات میتونه از همینجا شروع بشه!
🆔@c0delab | 🧑🏻💻👩🏻💻
📮Gp CodeLab
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
🔶 یوتیوب اعلام کرد که برای ویدئوهای تکراری و انبوه تولید شده هیچ درآمدی را پرداخت نمی کند و به یوتیوبرها توصیه می کند خلاقیت بیشتری برای ساخت ویدئوها به خرج دهند.
#خبر
@TheRaymondDev
#خبر
@TheRaymondDev
Google
YouTube policy updates - YouTube Help
This article summarizes recent and past updates made to YouTube’s policies. For other updates relevant to YouTube creators, check out our Creator updates. Latest updates
Forwarded from نوشتههای ترمینالی
اکثرمون با index توی DBMS ها آشنا هستیم، ولی یه چیزی که میتونن پرفورمنس رو باز هم بهتر کنه، استفاده از includeـه.
خلاصه اینه که میتونید دیتای یه سری ستون رو داخل leaf node ها بذارید به اسم ترتیب بعضی کوئری ها برای اجرا شدن کلا هیچ نیازی به lookup ندارن. (و کلا io نداریم)
https://atlasgo.io/guides/postgres/included-columns
خلاصه اینه که میتونید دیتای یه سری ستون رو داخل leaf node ها بذارید به اسم ترتیب بعضی کوئری ها برای اجرا شدن کلا هیچ نیازی به lookup ندارن. (و کلا io نداریم)
https://atlasgo.io/guides/postgres/included-columns
atlasgo.io
Learn how to create and manage indexes with included columns in PostgreSQL using Atlas. Understand the benefits of covering indexes and how to improve query performance.
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
🔶 انسانها احمق، ناتوان، غیراخلاقی، نادرست، بیمار روانی، معتاد، غیرمنطقی، خودخواه و متکبر هستند.
هوش مصنوعی کامل خواهد بود.
@TheRaymondDev
هوش مصنوعی کامل خواهد بود.
@TheRaymondDev
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
🔶 براساس گزارش تک کرانچ, مایکروسافت در حال پایان دادن به فعالیتهای خود در پاکستان است و این به معنای پایان حضور ۲۵ ساله این شرکت در این کشور آسیای جنوبی میباشد.
این شرکت مستقر در ردموند روز جمعه به وبسایت TechCrunch اعلام کرد که مدل عملیاتی خود در پاکستان را تغییر میدهد و از این پس مشتریان خود را از طریق نمایندگان فروش و «دفاتر مایکروسافت در کشورهای نزدیک» پشتیبانی خواهد کرد.
#خبر
@TheRaymondDev
این شرکت مستقر در ردموند روز جمعه به وبسایت TechCrunch اعلام کرد که مدل عملیاتی خود در پاکستان را تغییر میدهد و از این پس مشتریان خود را از طریق نمایندگان فروش و «دفاتر مایکروسافت در کشورهای نزدیک» پشتیبانی خواهد کرد.
#خبر
@TheRaymondDev
TechCrunch
Microsoft is closing its local operations in Pakistan | TechCrunch
The Redmond-based company on Friday told TechCrunch that it is changing its operational model in Pakistan and will now serve its customers through resellers and "other closely located Microsoft offices."
Forwarded from mosTafa Arshadi
وقتی واقعا تو زندگی به ازادی میرسی که دیگه دنبال تایید بقیه نباشی. وقتی کاری که میکنی، حرفی که میزنی، سبکی که زندگی میکنی، برات مهم تر باشه از این که بقیه چی فکر میکنن.
مردم، امروز برات دست میزنن، فردا تخریبت میکنن. اگه بخوای خودتو با نظر اونها تنظیم کنی، از هم می پاشی.
باید محکم وایستی. خودت رو برای خودت بسازی، نه برای تایید بقیه.
@hamidreza01
مردم، امروز برات دست میزنن، فردا تخریبت میکنن. اگه بخوای خودتو با نظر اونها تنظیم کنی، از هم می پاشی.
باید محکم وایستی. خودت رو برای خودت بسازی، نه برای تایید بقیه.
@hamidreza01
👍1
Forwarded from PhiloLearn | فیلولرن
دوستان اگر باگ پیدا کردید، مثل یه فرد حرفه ای باگ ریپورت کنید نه اینکه تو بوق و کرنا جار بکنید که این باگ داره نرید سراغش.