minor changes in code design & documentation