add budget setting
Merge branch 'tmp'