adding some internal documentation