profile abstractions