pass different options depending on backend