+ محدودیت زمان: ۱ ثانیه
+ محدودیت حافظه: ۲۵۶ مگابایت
----------
در این برنامه از شما خواسته شده است تا یک ماشین متنی کوچک با مجموعهای از قابلیت های ساده را پیادهسازی نمایید. روال کار بدین صورت است که در آغاز کار برنامه یک رشته متنی اولیه (به طول حداکثر ۱۰۰۰) را از ورودی دریافت میکند. در ادامه تا زمانیکه دستور خروج را دریافت کند در هر نوبت کاربر درخواست یک عملیات بر روی رشته متنی میدهد.
عملیاتها به شرح زیر تعریف شدهاند:
### عملیات `SHIFT-R N`
تمام کاراکترهای عبارت را به صورت چرخشی N واحد به سمت راست منتقل میکند.
### عملیات `SHIFT-L N`
تمام کاراکترهای عبارت را به صورت چرخشی N واحد به سمت چپ منتقل میکند.
### عملیات `EXTEND N`
به انتهای رشته موجود N کاراکتر جدید اضافه میکند و به عنوان مقدار پیشفرض کاراکترها، ستاره (`*`) قرار میدهد.
### عملیات `SHRINK N`
از انتهای رشته، N کاراکتر حذف میکند. درصورتی که طول رشته کمتر از N بود،رشته حاصل یک رشته خالی خواهد بود.
### عملیات `REVERSE`
رشته را معکوس میکند.
### عملیات `PUT I C`
حرف مکان `I`ام رشته را با حروف `C` جایگزین میکند.توجه داشته باشید که شماره مکانها از یک آغاز میشود و `I` همواره کوچکتر مساوی طول رشته خواهد بود.
### عملیات `PRINT`
رشته فعلی را چاپ میکند و به خط بعد میرود.
### عملیات `EXIT`
اتمام برنامه
# ورودی
در سطر اول ورودی رشته اولیه ورودی داده میشود. تضمین میشود طول این رشته حداکثر ۱۰۰۰ کاراکتر باشد.
در سطرهای بعدی، در هر سطر، یکی از عملیاتهای بالا که در متن سوال گفته شده، داده میشود. تضمین میشود که همواره آخرین عملیات `EXIT` باشد. همچنین تضمین میشود حداکثر ۱۰۰۰ عملیات ورودی داده میشود.
# خروجی
برنامه شما تنها به ازای عملیات چاپ خروجی خواهد داشت و به ازای سایر دستورات صرفاً عملیات موردنظر را برروی رشته متنی انجام میدهد.
# مثالها
## ورودی نمونه ۱
```
initial string
PRINT
EXTEND 2
SHIFT-R 3
PRINT
PUT 3 O
REVERSE
SHRINK 2
PRINT
EXIT
```
## خروجی نمونه ۱
```
initial string
g**initial strin
nirts laitiniO
```
## ورودی نمونه ۲
```
Test
PRINT
SHRINK 20
PRINT
EXTEND 2
PRINT
EXIT
```
## خروجی نمونه ۲
```
Test
**
```