some robustness added