An object-oriented design of a subsumption architecture