// Path: app/src/main/java/com/starter/data/local/model/ContributorEntity.java
// @Entity
// public final class ContributorEntity {
//     @Id private long id;
// 
//     private String login;
//     private int contributions;
//     private String avatarUrl;
// 
//     public ContributorEntity(final String login, final int contributions, final String avatarUrl) {
//         this.login = login;
//         this.contributions = contributions;
//         this.avatarUrl = avatarUrl;
//     }
// 
//     @Generated(hash = 605867117)
//     public ContributorEntity(long id, String login, int contributions, String avatarUrl) {
//         this.id = id;
//         this.login = login;
//         this.contributions = contributions;
//         this.avatarUrl = avatarUrl;
//     }
// 
//     @Generated(hash = 536984865)
//     public ContributorEntity() {
//     }
// 
//     public ContributorEntity(final ContributorJson contributor) {
//         this.login = contributor.getLogin();
//         this.contributions = contributor.getContributions();
//         this.avatarUrl = contributor.getAvatarUrl();
//     }
// 
//     @Override
//     public boolean equals(final Object o) {
//         if (this == o) return true;
//         if (o == null || getClass() != o.getClass()) return false;
// 
//         final ContributorEntity that = (ContributorEntity) o;
// 
//         if (contributions != that.contributions) return false;
//         if (login != null ? !login.equals(that.login) : that.login != null) return false;
//         return avatarUrl != null ? avatarUrl.equals(that.avatarUrl) : that.avatarUrl == null;
//     }
// 
//     @Override
//     public int hashCode() {
//         int result = login != null ? login.hashCode() : 0;
//         result = 31 * result + contributions;
//         result = 31 * result + (avatarUrl != null ? avatarUrl.hashCode() : 0);
//         return result;
//     }
// 
//     public long getId() {
//         return id;
//     }
// 
//     public String getLogin() {
//         return login;
//     }
// 
//     public int getContributions() {
//         return contributions;
//     }
// 
//     public String getAvatarUrl() {
//         return avatarUrl;
//     }
// 
//     public void setId(long id) {
//         this.id = id;
//     }
// 
//     public void setLogin(String login) {
//         this.login = login;
//     }
// 
//     public void setContributions(int contributions) {
//         this.contributions = contributions;
//     }
// 
//     public void setAvatarUrl(String avatarUrl) {
//         this.avatarUrl = avatarUrl;
//     }
// }
// 
// Path: app/src/main/java/com/starter/data/remote/model/ContributorJson.java
// public final class ContributorJson {
//     private static final String LOGIN = "login";
//     private static final String CONTRIBUTIONS = "contributions";
//     private static final String AVATAR_URL = "avatar_url";
// 
//     @SerializedName(LOGIN) public final String login;
//     @SerializedName(CONTRIBUTIONS) public final int contributions;
//     @SerializedName(AVATAR_URL) public final String avatarUrl;
// 
//     public ContributorJson(final String login, final int contributions, final String avatarUrl) {
//         this.login = login;
//         this.contributions = contributions;
//         this.avatarUrl = avatarUrl;
//     }
// 
//     @Override
//     public boolean equals(final Object o) {
//         if (this == o) return true;
//         if (o == null || getClass() != o.getClass()) return false;
// 
//         final ContributorJson that = (ContributorJson) o;
// 
//         if (contributions != that.contributions) return false;
//         if (login != null ? !login.equals(that.login) : that.login != null) return false;
//         return avatarUrl != null ? avatarUrl.equals(that.avatarUrl) : that.avatarUrl == null;
//     }
// 
//     @Override
//     public int hashCode() {
//         int result = login != null ? login.hashCode() : 0;
//         result = 31 * result + contributions;
//         result = 31 * result + (avatarUrl != null ? avatarUrl.hashCode() : 0);
//         return result;
//     }
// 
//     public String getLogin() {
//         return login;
//     }
// 
//     public int getContributions() {
//         return contributions;
//     }
// 
//     public String getAvatarUrl() {
//         return avatarUrl;
//     }
// }


import com.starter.data.local.model.ContributorEntity;
import com.starter.data.remote.model.ContributorJson;
package com.starter.data.model;


public final class Contributor {
    private final String login;
    private final int contributions;
    private final String avatarUrl;

    public Contributor(final String login, final int contributions, final String avatarUrl) {
        this.login = login;
        this.contributions = contributions;
        this.avatarUrl = avatarUrl;
    }

    public Contributor(final ContributorJson contributorJson) {
        this.login = contributorJson.getLogin();
        this.contributions = contributorJson.getContributions();
        this.avatarUrl = contributorJson.getAvatarUrl();
    }

// Path: app/src/main/java/com/starter/data/local/model/ContributorEntity.java
// @Entity
// public final class ContributorEntity {
//     @Id private long id;
// 
//     private String login;
//     private int contributions;
//     private String avatarUrl;
// 
//     public ContributorEntity(final String login, final int contributions, final String avatarUrl) {
//         this.login = login;
//         this.contributions = contributions;
//         this.avatarUrl = avatarUrl;
//     }
// 
//     @Generated(hash = 605867117)
//     public ContributorEntity(long id, String login, int contributions, String avatarUrl) {
//         this.id = id;
//         this.login = login;
//         this.contributions = contributions;
//         this.avatarUrl = avatarUrl;
//     }
// 
//     @Generated(hash = 536984865)
//     public ContributorEntity() {
//     }
// 
//     public ContributorEntity(final ContributorJson contributor) {
//         this.login = contributor.getLogin();
//         this.contributions = contributor.getContributions();
//         this.avatarUrl = contributor.getAvatarUrl();
//     }
// 
//     @Override
//     public boolean equals(final Object o) {
//         if (this == o) return true;
//         if (o == null || getClass() != o.getClass()) return false;
// 
//         final ContributorEntity that = (ContributorEntity) o;
// 
//         if (contributions != that.contributions) return false;
//         if (login != null ? !login.equals(that.login) : that.login != null) return false;
//         return avatarUrl != null ? avatarUrl.equals(that.avatarUrl) : that.avatarUrl == null;
//     }
// 
//     @Override
//     public int hashCode() {
//         int result = login != null ? login.hashCode() : 0;
//         result = 31 * result + contributions;
//         result = 31 * result + (avatarUrl != null ? avatarUrl.hashCode() : 0);
//         return result;
//     }
// 
//     public long getId() {
//         return id;
//     }
// 
//     public String getLogin() {
//         return login;
//     }
// 
//     public int getContributions() {
//         return contributions;
//     }
// 
//     public String getAvatarUrl() {
//         return avatarUrl;
//     }
// 
//     public void setId(long id) {
//         this.id = id;
//     }
// 
//     public void setLogin(String login) {
//         this.login = login;
//     }
// 
//     public void setContributions(int contributions) {
//         this.contributions = contributions;
//     }
// 
//     public void setAvatarUrl(String avatarUrl) {
//         this.avatarUrl = avatarUrl;
//     }
// }
// 
// Path: app/src/main/java/com/starter/data/remote/model/ContributorJson.java
// public final class ContributorJson {
//     private static final String LOGIN = "login";
//     private static final String CONTRIBUTIONS = "contributions";
//     private static final String AVATAR_URL = "avatar_url";
// 
//     @SerializedName(LOGIN) public final String login;
//     @SerializedName(CONTRIBUTIONS) public final int contributions;
//     @SerializedName(AVATAR_URL) public final String avatarUrl;
// 
//     public ContributorJson(final String login, final int contributions, final String avatarUrl) {
//         this.login = login;
//         this.contributions = contributions;
//         this.avatarUrl = avatarUrl;
//     }
// 
//     @Override
//     public boolean equals(final Object o) {
//         if (this == o) return true;
//         if (o == null || getClass() != o.getClass()) return false;
// 
//         final ContributorJson that = (ContributorJson) o;
// 
//         if (contributions != that.contributions) return false;
//         if (login != null ? !login.equals(that.login) : that.login != null) return false;
//         return avatarUrl != null ? avatarUrl.equals(that.avatarUrl) : that.avatarUrl == null;
//     }
// 
//     @Override
//     public int hashCode() {
//         int result = login != null ? login.hashCode() : 0;
//         result = 31 * result + contributions;
//         result = 31 * result + (avatarUrl != null ? avatarUrl.hashCode() : 0);
//         return result;
//     }
// 
//     public String getLogin() {
//         return login;
//     }
// 
//     public int getContributions() {
//         return contributions;
//     }
// 
//     public String getAvatarUrl() {
//         return avatarUrl;
//     }
// }


// Path: app/src/main/java/com/starter/data/model/Contributor.java
import com.starter.data.local.model.ContributorEntity;
import com.starter.data.remote.model.ContributorJson;

package com.starter.data.model;


public final class Contributor {
    private final String login;
    private final int contributions;
    private final String avatarUrl;

    public Contributor(final String login, final int contributions, final String avatarUrl) {
        this.login = login;
        this.contributions = contributions;
        this.avatarUrl = avatarUrl;
    }

    public Contributor(final ContributorJson contributorJson) {
        this.login = contributorJson.getLogin();
        this.contributions = contributorJson.getContributions();
        this.avatarUrl = contributorJson.getAvatarUrl();
    }

    public Contributor(final ContributorEntity contributorEntity) {