abstracted all nested function

lolno