largely documentation fixing