refactor provisions by extracting offer

Removes code duplication by creating provisions from offers.