work on LM optimizer