add resolver factory