working on model-side binning, test case works in simplified assumptions, furter smaller updates