improve data binding