Prog model

Maybe rewrite this a bit. The small and fast part feels a bit odd.