Framework and example