arranged source code to readable.