reorganization, doc strings