improving things like loops and scoping and the underparts
put call into right sequence