see https://github.com/jump-dev/DiffOpt.jl/pull/262#discussion_r1912799308
see #262 (comment)