1. refactor bill run engine