Made many changes.