Better abstraction of details