Still hard to read. Can you pull out the 2 arguments and move them into 2 local variables and then call factories.put(foo,bar)