ok I think now rigorous