I think it works, but will need more testing