lazy resolve for user type