improve layout and add comments to construct module