** make it work with dynamically added rows