What is the purpose of this abstraction?