smart batch