public static Registered fromJSON(JSONObject json) {
      try {
        Registered registered = new Registered();

        registered.text = json.optString("#text");
        registered.unixtime = json.optLong("unixtime");

        return registered;
      } catch (Exception e) {
        return null;
      }
    }
 @Override
 public int hashCode() {
   int result = id != null ? id.hashCode() : 0;
   result = 31 * result + (name != null ? name.hashCode() : 0);
   result = 31 * result + (realName != null ? realName.hashCode() : 0);
   result = 31 * result + (url != null ? url.hashCode() : 0);
   result = 31 * result + (country != null ? country.hashCode() : 0);
   result = 31 * result + (age != null ? age.hashCode() : 0);
   result = 31 * result + (gender != null ? gender.hashCode() : 0);
   result = 31 * result + subscriber;
   result = 31 * result + playCount;
   result = 31 * result + playlists;
   result = 31 * result + (registered != null ? registered.hashCode() : 0);
   return result;
 }
  @Override
  public boolean equals(Object other) {
    if (other instanceof LFUserResponseModel) {
      LFUserResponseModel o = (LFUserResponseModel) other;

      return TextUtils.equals(id, o.id)
          && TextUtils.equals(name, o.name)
          && TextUtils.equals(realName, o.realName)
          && TextUtils.equals(url, o.url)
          && TextUtils.equals(country, o.country)
          && TextUtils.equals(age, o.age)
          && TextUtils.equals(gender, o.gender)
          && subscriber == o.subscriber
          && playCount == o.playCount
          && playlists == o.playlists
          && registered.equals(o.registered);
    }

    return false;
  }
  public static LFUserResponseModel parseFromJSON(String json) throws LFApiException {
    try {
      final LFUserResponseModel userModel = new LFUserResponseModel(json);
      final JSONObject userJson = new JSONObject(json).getJSONObject("user");

      userModel.id = userJson.optString("id");
      userModel.name = userJson.optString("name");
      userModel.realName = userJson.optString("realname");
      userModel.url = userJson.optString("url");
      userModel.country = userJson.optString("country");
      userModel.age = userJson.optString("age");
      userModel.gender = userJson.optString("gender");
      userModel.subscriber = userJson.optInt("subscriber");
      userModel.playCount = userJson.optInt("playcount");
      userModel.playlists = userJson.optInt("playlists");
      userModel.registered = Registered.fromJSON(userJson.optJSONObject("registered"));

      return userModel;
    } catch (JSONException e) {
      throw LFApiException.newDataFormatErrorInstance(null, e.getMessage());
    }
  }