1 greedy and abstract