some minor modification.