improve display abstraction