code: protected <T extends Variable> Object deserialize(AgentClassWrapper wrapper, 
              Object agent, List<T> variables) {
          for(T variable : variables) {
              SetterMethodCover method = wrapper.getMethod(variable.getName());
              if(method != null)
                  method.invoke(agent, getValue(method, variable));
          }
          return agent;
      }
docs: Deserialize list of smartfox variables to agent object
  
  @param <T> the variable type
  @param wrapper structure of agent class
  @param agent the agent object
  @param variables list of smartfox variables
  @return the agent object