Differentiable Optimization and Equation Solving