Btw, this function is not align with 4 blanks, please refine it as well :D