SRL Archive - OSR Help

Why are these 3 procedures repeating?


rj

2012-12-01 20:06:00

In my script, the procedures walkbank and use bank repeat for some reason and its making me mad.

Heres what the script does:
withdraws raw fish
uses them on range
chooses cook all
waits for all the raw fish to disapear.
walks to the bank(clicking the bank minimap icon)
opens the bank
hits store all
clicks the minimap icon
opens the bank
hits store all
clicks the minimap icon
opens the bank
hits store all
clicks the minimap icon
opens the bank
hits store all
so on and so on until i stop it..

Heres the script:
program Cook;
{$i srl/srl.simba}
const
rawfishcol=5927257;
cookrange=7633898;
cookfish=12868;
minimap=2216175;
bank=1857394;
bankx=305;
banky=61;
bankxtwo=404;
bankytwo=131;
var
cookall,usebank,cookicon: Integer;
procedure backpack;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,4578368,350,296,381,320,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Wait(250 + Random(150));
ClickMouse(X, Y, mouse_Left);
Wait(1200 + Random(900));
end;
end;
procedure bankfish;
var
X, Y: Integer;
begin
Writeln('Looking for bank . . .')
if FindColorTolerance(X,Y,bank,bankx,banky,bankxtwo,bankytwo,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Writeln('Found bank.')
Wait(250 + Random(150));
ClickMouse(x, y, mouse_Right);
Wait(900 + Random(250));
FindBitmapToleranceIn(usebank, X, Y,31, 93, 455, 304, 165)
MouseSpeed:=40;
mmouse(x, y,1,1);
WriteLn('Opened Bank!');
Wait(500 + Random(120));
ClickMouse(X, Y, mouse_Left);
Wait(1500 + Random(250));
backpack;
end;
end;
procedure walkbank;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,minimap,555,85,630,122,5) then
begin
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(6500 + Random(1500));
bankfish;
end;
end;
procedure checkcook;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,rawfishcol,566,217,715,454,5) then
begin
Wait(600 + Random(150));
checkcook;
end;
walkbank;
end;
procedure choosefish;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,cookfish,207,379,300,452,5) then
begin
MouseSpeed:=17;
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Right);
Wait(800 + Random(150));
FindBitmapToleranceIn(cookall, X, Y,194, 351, 311, 478, 155)
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
checkcook;
end;
end;
procedure cookfisha;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,cookrange,374,12,503,121,5) then
begin
if FindColorTolerance(X,Y,rawfishcol,558,218,718,455,5) then
begin
MouseSpeed:=17;
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(600 + Random(150));
if FindColorTolerance(X,Y,cookrange,374,12,503,121,5) then
begin
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(7800 + Random(150));
choosefish;
end;
end;
end;
end;
procedure closecook;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,8421504,423,29,491,45,15) then
begin
Wait(800 + Random(150));
Writeln('Closing bank . . .')
MouseSpeed:=20;
mmouse(x, y,1,1);
Wait(250 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(700 + Random(150));
cookfisha;
end;
end;
procedure withdrawfish;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,rawfishcol,261,124,389,235,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Wait(350 + Random(150));
ClickMouse(x, y, mouse_Right);
MouseSpeed:=10;
Wait(750 + Random(150));
mmouse(x, y+65,1,1);
ClickMouse(x, y, mouse_Left);
closecook;
end;
end;
begin
cookall := BitmapFromString(21, 15, 'meJyTUdeWGVA0dccxICJSGaZKiC' +
'ADAwNBvUA1mCYQ1A5XAFGDZgLx2vFzcQUC3NfICE07mgtxOR5uC6Z' +
'2rHqJdDye6KOK3wlqx5WE8GsHImRfYw0BNEFcoURnBAAo+e/w');
usebank := BitmapFromString(38, 13, 'meJyTUdeWoTuauuMYEOHiko3+/2' +
'dARpg2MjAwYOVSaCMEoFlKaxvR2IPQRggXjtBCBk+ko8UjBBC0Ec5' +
'GBmjiuCwlOx7xeBDNdirGI6Zf0IIaOcSIsVEGKQ8iG4JmAv7QJinl' +
'4HI2fr/gSlHEpBy00ENzNlZBglJEKqAPAgANRYUm');
cookicon := BitmapFromString(9, 11, 'meJw7cICaQPDfP2HrFAiSjV4DJOH' +
'iTH/+MDIwICNeJWseRT+gOBBBFAMRUASIIFJANQx372JKLQADoCxW' +
'KYiNaFIQLXB3LkACRHoNAJkkmKw=');
repeat
withdrawfish;
until False;
FreeBitmap(cookall);
FreeBitmap(usebank);
FreeBitmap(cookicon);
end.

Rezozo

2012-12-01 20:13:00

You have repeat until in the main execution, so its only 'withdrawfish' ing.
~Rez

Justin

2012-12-01 20:14:10

From: Rezozo
You have repeat until in the main execution, so its only 'withdrawfish' ing.
~Rez


At the end of withdrawfish, it calls the next procedure.

rj

2012-12-01 20:17:22

From: Rezozo
You have repeat until in the main execution, so its only 'withdrawfish' ing.
~Rez

what the guy above me said

rj

2012-12-01 20:59:47

Still having problems.

Rezozo

2012-12-01 21:29:45

Look at your checkcook procedure. What im wondering is why it has CheckCook in a CheckCook :p Since it can't 'checkcook' twice, it walks to bank again. I think you should do a Repeat-Until(isNotCooking) where isNotCooking is a function that checks for pixelshift.
~Rez

rj

2012-12-01 21:46:29

From: Rezozo
Look at your checkcook procedure. What im wondering is why it has CheckCook in a CheckCook :p Since it can't 'checkcook' twice, it walks to bank again. I think you should do a Repeat-Until(isNotCooking) where isNotCooking is a function that checks for pixelshift.
~Rez


procedure checkcook;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,rawfishcol,566,217,715,454,5) then
begin
Wait(600 + Random(150));
checkcook;
end;
walkbank;
end;
if the bot finds the raw fish color, then it repeats, and if it does not then it goes to the bank :d

Neodymium

2012-12-01 22:03:17

You should rework your script so you can understand whats going on a little better.
It's a bit tough to understand, since you call the next function from other functions, etc.
Try using a main loop. Honestly, it will help in the long run.

Rezozo

2012-12-01 22:18:24

Explain your bankfish procedure to me, in detail, what is it supposed to do according to the script.
I think that is where the problem is.
~Rez

rj

2012-12-01 22:20:36

From: Rezozo
Explain your bankfish procedure to me, in detail, what is it supposed to do according to the script.
I think that is where the problem is.
~Rez


procedure bankfish;
var
X, Y: Integer;
begin
Writeln('Looking for bank . . .')
if FindColorTolerance(X,Y,bank,bankx,banky,bankxtwo,bankytwo,5) then
begin //looks for the bank color, if it finds it in right clicks
MouseSpeed:=15;
mmouse(x, y,1,1);
Writeln('Found bank.')
Wait(250 + Random(150));
ClickMouse(x, y, mouse_Right);
Wait(900 + Random(250)); //after it rights clicks and waits a bit it looks for the "usebank" bitmap
FindBitmapToleranceIn(usebank, X, Y,31, 93, 455, 304, 165)
MouseSpeed:=40;
mmouse(x, y,1,1); //it finds the bitmap and clicks on it
WriteLn('Opened Bank!');
Wait(500 + Random(120));
ClickMouse(X, Y, mouse_Left);
backpack; //this goes to the next procedure, this hits the bank all button
end;
end;

Rezozo

2012-12-01 22:27:27

Well, does the right click not give an option? Is that 'bank' color the minimap or regular? is the usebank on the minimap? If it is, that should come before the first findcolortolerance right?

rj

2012-12-01 22:28:44

From: Rezozo
Well, does the right click not give an option? Is that 'bank' color the minimap or regular? is the usebank on the minimap? If it is, that should come before the first findcolortolerance right?


It right clicks on the color it found (the bank) and when it right clicks it sees "use bank" it clicks use bank and the next procedure is started

Rezozo

2012-12-01 22:32:19

What is the UseBank bitmap a picture of?
Also, try making your boxes for your findcolortolerance's smaller.
Third, where is the walk section for walking to the range?

PS: Where is this of? Where are you cooking?

rj

2012-12-01 22:34:11

From: Rezozo
What is the UseBank bitmap a picture of?
Also, try making your boxes for your findcolortolerance's smaller.
Third, where is the walk section for walking to the range?

PS: Where is this of? Where are you cooking?


The bitmap is of "use b" this is at south neit, the range is in view at the bank, the procedure is cookfisha

Rezozo

2012-12-01 22:42:09

Please tell me that the bitmap is not of the options…
Is this for a RSPS, cause that is the only reason I could think of not using ChooseOption…
Even then, I think it would work, unless the font is different.

Using a bitmap for that is very risky, as it could very easily not read it half the time.
For a lot of your FindColorTolerances, you could easily use MouseBox.

The thing with your script is if it reads 1 thing wrong, the rest explodes. Try putting your procedure names in the main execution section, in a loop.

rj

2012-12-01 22:43:33

usebank := BitmapFromString(38, 13, 'meJyTUdeWoTuauuMYEOHiko3+/2' +
'dARpg2MjAwYOVSaCMEoFlKaxvR2IPQRggXjtBCBk+ko8UjBBC0Ec5' +
'GBmjiuCwlOx7xeBDNdirGI6Zf0IIaOcSIsVEGKQ8iG4JmAv7QJinl' +
'4HI2fr/gSlHEpBy00ENzNlZBglJEKqAPAgANRYUm');
the script is working perfectly except for those things repeating..

Rezozo

2012-12-01 22:50:29

In the main execution, take out the withdrawfish, and put walkbank in its place, run it. Tell me what happens.

Change it back, then take out the CheckCook inside the CheckCook, that should make it do the samething right? :D If it does, you need to replace that if statement with

repeat
until(FindColorTolerance(X,Y,rawfishcol,566,217,715,454,5)=false);

rj

2012-12-01 22:58:24

From: Rezozo
In the main execution, take out the withdrawfish, and put walkbank in its place, run it. Tell me what happens.


I changed the code before, then all it did was do the bankall procedure. After i put walkbank, it does the same thing

program Cook;
{$i srl/srl.simba}
const
rawfishcol=6322271;
cookrange=9014742;
cookfish=12868;
minimap=2216175;
bank=1857394;
bankx=220;
banky=28;
bankxtwo=328;
bankytwo=201;
rangex=310;
rangey=4;
rangex2=489;
rangey2=145;
var
cookall,usebank,cookicon: Integer;
procedure glitch;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,4578368,357,299,385,320,5) then
begin
Writeln('Finished.')
end;
end;
procedure backpack;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,4578368,357,299,385,320,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Wait(250 + Random(150));
ClickMouse(X, Y, mouse_Left);
Wait(1200 + Random(900));
Writeln('start glitch proc')
glitch;
end;
Writeln('start backpackagain')
Wait(250 + Random(150));
backpack;
end;
procedure bankfish;
var
X, Y: Integer;
begin
Writeln('Looking for bank . . .')
if FindColorTolerance(X,Y,bank,bankx,banky,bankxtwo,bankytwo,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Writeln('Found bank.')
Wait(250 + Random(150));
ClickMouse(x, y, mouse_Right);
Wait(900 + Random(250));
FindBitmapToleranceIn(usebank, X, Y,31, 93, 455, 304, 165)
MouseSpeed:=40;
mmouse(x, y,1,1);
WriteLn('Opened Bank!');
Wait(500 + Random(120));
ClickMouse(X, Y, mouse_Left);
backpack;
end;
end;
procedure walkbank;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,minimap,555,85,630,122,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(6500 + Random(1500));
bankfish;
end;
end;
procedure checkcook;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,rawfishcol,566,217,715,454,5) then
begin
Wait(600 + Random(150));
checkcook;
end;
walkbank;
end;
procedure choosefish;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,cookfish,207,379,300,452,5) then
begin
MouseSpeed:=17;
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Right);
Wait(800 + Random(150));
FindBitmapToleranceIn(cookall, X, Y,194, 351, 311, 478, 155)
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
checkcook;
end;
Wait(600 + Random(150));
choosefish;
end;
procedure cookfisha;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,cookrange,rangex,rangey,rangex2,rangey2,5) then
begin
if FindColorTolerance(X,Y,rawfishcol,558,218,718,455,5) then
begin
MouseSpeed:=17;
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(600 + Random(150));
if FindColorTolerance(X,Y,cookrange,rangex,rangey,rangex2,rangey2,5) then
begin
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
//Wait(7800 + Random(150));
choosefish;
end;
end;
end;
end;
procedure closecook;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,8421504,423,29,491,45,15) then
begin
Wait(800 + Random(150));
Writeln('Closing bank . . .')
MouseSpeed:=20;
mmouse(x, y,1,1);
Wait(250 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(700 + Random(150));
cookfisha;
end;
end;
procedure withdrawfish;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,rawfishcol,261,124,389,235,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Wait(350 + Random(150));
ClickMouse(x, y, mouse_Right);
MouseSpeed:=10;
Wait(750 + Random(150));
mmouse(x, y+65,1,1);
ClickMouse(x, y, mouse_Left);
closecook;
end;
end;
begin
cookall := BitmapFromString(21, 15, 'meJyTUdeWGVA0dccxICJSGaZKiC' +
'ADAwNBvUA1mCYQ1A5XAFGDZgLx2vFzcQUC3NfICE07mgtxOR5uC6Z' +
'2rHqJdDye6KOK3wlqx5WE8GsHImRfYw0BNEFcoURnBAAo+e/w');
usebank := BitmapFromString(38, 13, 'meJyTUdeWoTuauuMYEOHiko3+/2' +
'dARpg2MjAwYOVSaCMEoFlKaxvR2IPQRggXjtBCBk+ko8UjBBC0Ec5' +
'GBmjiuCwlOx7xeBDNdirGI6Zf0IIaOcSIsVEGKQ8iG4JmAv7QJinl' +
'4HI2fr/gSlHEpBy00ENzNlZBglJEKqAPAgANRYUm');
cookicon := BitmapFromString(9, 11, 'meJw7cICaQPDfP2HrFAiSjV4DJOH' +
'iTH/+MDIwICNeJWseRT+gOBBBFAMRUASIIFJANQx372JKLQADoCxW' +
'KYiNaFIQLXB3LkACRHoNAJkkmKw=');
repeat
//withdrawfish;
walkbank;
until False;
FreeBitmap(cookall);
FreeBitmap(usebank);
FreeBitmap(cookicon);
end.

Rezozo

2012-12-01 23:03:21

Second part of my previous post^^^

rj

2012-12-01 23:06:47

From: Rezozo
Second part of my previous post^^^


It still auto loops storeall

Rezozo

2012-12-01 23:11:26

Put a writeln in that if then statement that loops checkcook.
does it keep repeating that writeln?

Edit: Well, this is taking too long :p
- Your script has way to many flaws, reading wise, it is just too hard.
Please change your script to use some of the more updated functions, as well as taking out the if then loops, and using repeat until loops. I am going to sleep. I have a friends sweet sixteen tomorrow.
~Rez

rj

2012-12-01 23:27:18

From: Rezozo
Put a writeln in that if then statement that loops checkcook.
does it keep repeating that writeln?

Edit: Well, this is taking too long :p
- Your script has way to many flaws, reading wise, it is just too hard.
Please change your script to use some of the more updated functions, as well as taking out the if then loops, and using repeat until loops. I am going to sleep. I have a friends sweet sixteen tomorrow.
~Rez


Yes. It repeats the writeln's. and this is for a pserver

Rezozo

2012-12-01 23:35:32

What I meant was, does it go to cook, keep repeating the writeln, go back, then ever say it again?
Also, in the very beginning, does your withdraw procedure assume that the bank is open? If so, then what does the closefish procedure do?

Somehow, when you go back to the bank, the script skips everything to do with fishing. So it could be many things.
Since this is a PS, for all I know, the color of the items could be changing every second, or the coordinates are off.
Now…I sleep.
~Rez

rj

2012-12-02 00:19:42

From: Rezozo
What I meant was, does it go to cook, keep repeating the writeln, go back, then ever say it again?
Also, in the very beginning, does your withdraw procedure assume that the bank is open? If so, then what does the closefish procedure do?

Somehow, when you go back to the bank, the script skips everything to do with fishing. So it could be many things.
Since this is a PS, for all I know, the color of the items could be changing every second, or the coordinates are off.
Now…I sleep.
~Rez


It keeps repeating the WriteLn for the storeall procedure. and yes, it assumes the bank is open, not adding a failsafe for that until i can complete this script

rj

2012-12-02 10:54:34

back

Rezozo

2012-12-02 12:31:29

I am as well.
Try this:
program Cook;
{$i srl/srl.simba}
const
rawfishcol=5927257;
cookrange=7633898;
cookfish=12868;
minimap=2216175;
bank=1857394;
bankx=305;
banky=61;
bankxtwo=404;
bankytwo=131;
var
cookall,usebank,cookicon: Integer;

procedure Backpack;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,4578368,350,296,381,320,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Wait(250 + Random(150));
ClickMouse(X, Y, mouse_Left);
Wait(1200 + Random(900));
end;
end;
procedure BankFish;
var
X, Y: Integer;
begin
Writeln('Looking for bank . . .')
if FindColorTolerance(X,Y,bank,bankx,banky,bankxtwo,bankytwo,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Writeln('Found bank.')
Wait(250 + Random(150));
ClickMouse(x, y, mouse_Right);
Wait(900 + Random(250));
FindBitmapToleranceIn(usebank, X, Y,31, 93, 455, 304, 165)
MouseSpeed:=40;
mmouse(x, y,1,1);
WriteLn('Opened Bank!');
Wait(500 + Random(120));
ClickMouse(X, Y, mouse_Left);
Wait(1500 + Random(250));
end;
end;
procedure WalkBank;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,minimap,555,85,630,122,5) then
begin
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(6500 + Random(1500));
end;
end;
procedure checkcook;
var
X, Y: Integer;
begin
Repeat
Until(FindColorTolerance(X,Y,rawfishcol,566,217,715,454,5)=False);
Wait(400+Randoom(200));
end;
procedure ChooseFish;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,cookfish,207,379,300,452,5) then
begin
MouseSpeed:=17;
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Right);
Wait(800 + Random(150));
FindBitmapToleranceIn(cookall, X, Y,194, 351, 311, 478, 155)
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
end;
end;
procedure CookFishA;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,rawfishcol,558,218,718,455,5) then
begin
MouseSpeed:=17;
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(600 + Random(150));
if FindColorTolerance(X,Y,cookrange,374,12,503,121,5) then
begin
mmouse(x, y,1,1);
Wait(600 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(7800 + Random(150));
end;
end;
end;
procedure CloseCook;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,8421504,423,29,491,45,15) then
begin
Wait(800 + Random(150));
Writeln('Closing bank . . .')
MouseSpeed:=20;
mmouse(x, y,1,1);
Wait(250 + Random(150));
ClickMouse(x, y, mouse_Left);
Wait(700 + Random(150));
end;
end;
procedure WithdrawFish;
var
X, Y: Integer;
begin
if FindColorTolerance(X,Y,rawfishcol,261,124,389,235,5) then
begin
MouseSpeed:=15;
mmouse(x, y,1,1);
Wait(350 + Random(150));
ClickMouse(x, y, mouse_Right);
MouseSpeed:=10;
Wait(750 + Random(150));
mmouse(x, y+65,1,1);
ClickMouse(x, y, mouse_Left);
end;
end;
begin
cookall := BitmapFromString(21, 15, 'meJyTUdeWGVA0dccxICJSGaZKiC' +
'ADAwNBvUA1mCYQ1A5XAFGDZgLx2vFzcQUC3NfICE07mgtxOR5uC6Z' +
'2rHqJdDye6KOK3wlqx5WE8GsHImRfYw0BNEFcoURnBAAo+e/w');
usebank := BitmapFromString(38, 13, 'meJyTUdeWoTuauuMYEOHiko3+/2' +
'dARpg2MjAwYOVSaCMEoFlKaxvR2IPQRggXjtBCBk+ko8UjBBC0Ec5' +
'GBmjiuCwlOx7xeBDNdirGI6Zf0IIaOcSIsVEGKQ8iG4JmAv7QJinl' +
'4HI2fr/gSlHEpBy00ENzNlZBglJEKqAPAgANRYUm');
cookicon := BitmapFromString(9, 11, 'meJw7cICaQPDfP2HrFAiSjV4DJOH' +
'iTH/+MDIwICNeJWseRT+gOBBBFAMRUASIIFJANQx372JKLQADoCxW' +
'KYiNaFIQLXB3LkACRHoNAJkkmKw=');

repeat //This should run more properly, and allow the user to see any problems.
WithdrawFish;
CloseCoook;
CookFishA;
ChooseFish;
CheckCook;
WalkBank;
BankFish;
Bankpack;
Runs:=Runs+1;1
until (Runs:=10); // Makes it more script like.

FreeBitmap(cookall);
FreeBitmap(usebank);
FreeBitmap(cookicon);
end.