add information and minor restructuring