// Path: app/src/main/java/android/support/v17/leanback/streamingapp/model/CardRow.java
// public class CardRow {
// 
//     @SerializedName("shadow") private boolean shadow = true;
//     @SerializedName("id") private String id;
//     @SerializedName("title") private String title;
//     @SerializedName("cards") private List<Card> cards;
// 
//     static public ImmutableBiMap<Long, String> ids = new ImmutableBiMap.Builder<Long, String>()
//             .put(0L, "trakt-lists")
//             .put(1L, "trakt-genres")
//             .put(2L, "recommendations")
//             .put(3L, "watchlist")
//             .build();
// 
//     public String getId() {
//         return id;
//     }
// 
//     public void setId(String id) {
//         this.id = id;
//     }
// 
//     public boolean useShadow() {
//         return shadow;
//     }
// 
//     public void setShadow(boolean shadow) {
//         this.shadow = shadow;
//     }
// 
//     public String getTitle() {
//         return title;
//     }
// 
//     public void setTitle(String title) {
//         this.title = title;
//     }
// 
//     public List<Card> getCards() {
//         return cards;
//     }
// 
//     public void setCards(List<Card> cards) {
//         this.cards = cards;
//     }
// }
// 
// Path: app/src/main/java/android/support/v17/leanback/streamingapp/utils/CardListRow.java
// public class CardListRow extends ListRow {
// 
//     private CardRow mCardRow;
// 
//     public CardListRow(HeaderItem header, ObjectAdapter adapter, CardRow cardRow) {
//         super(header, adapter);
//         setCardRow(cardRow);
//     }
// 
//     public CardRow getCardRow() {
//         return mCardRow;
//     }
// 
//     public void setCardRow(CardRow oldCardRow) {
//         this.mCardRow = oldCardRow;
//     }
// }
// 
// Path: app/src/main/java/android/support/v17/leanback/streamingapp/utils/OldCardListRow.java
// public class OldCardListRow extends ListRow {
// 
//     private OldCardRow mOldCardRow;
// 
//     public OldCardListRow(HeaderItem header, ObjectAdapter adapter, OldCardRow oldCardRow) {
//         super(header, adapter);
//         setCardRow(oldCardRow);
//     }
// 
//     public OldCardRow getCardRow() {
//         return mOldCardRow;
//     }
// 
//     public void setCardRow(OldCardRow oldCardRow) {
//         this.mOldCardRow = oldCardRow;
//     }
// }


import android.support.v17.leanback.streamingapp.model.CardRow;
import android.support.v17.leanback.streamingapp.utils.CardListRow;
import android.support.v17.leanback.streamingapp.utils.OldCardListRow;
import android.support.v17.leanback.widget.ListRowPresenter;
import android.support.v17.leanback.widget.Presenter;
import android.support.v17.leanback.widget.PresenterSelector;
package android.support.v17.leanback.streamingapp.presenter;


public class ShadowRowPresenterSelector extends PresenterSelector {
    private ListRowPresenter mShadowEnabledRowPresenter = new ListRowPresenter();
    private ListRowPresenter mShadowDisabledRowPresenter = new ListRowPresenter();

    public ShadowRowPresenterSelector() {
        mShadowEnabledRowPresenter.setNumRows(1);
        mShadowDisabledRowPresenter.setShadowEnabled(false);
    }

    @Override public Presenter getPresenter(Object item) {
        if (!(item instanceof OldCardListRow)) return mShadowDisabledRowPresenter;
// Path: app/src/main/java/android/support/v17/leanback/streamingapp/model/CardRow.java
// public class CardRow {
// 
//     @SerializedName("shadow") private boolean shadow = true;
//     @SerializedName("id") private String id;
//     @SerializedName("title") private String title;
//     @SerializedName("cards") private List<Card> cards;
// 
//     static public ImmutableBiMap<Long, String> ids = new ImmutableBiMap.Builder<Long, String>()
//             .put(0L, "trakt-lists")
//             .put(1L, "trakt-genres")
//             .put(2L, "recommendations")
//             .put(3L, "watchlist")
//             .build();
// 
//     public String getId() {
//         return id;
//     }
// 
//     public void setId(String id) {
//         this.id = id;
//     }
// 
//     public boolean useShadow() {
//         return shadow;
//     }
// 
//     public void setShadow(boolean shadow) {
//         this.shadow = shadow;
//     }
// 
//     public String getTitle() {
//         return title;
//     }
// 
//     public void setTitle(String title) {
//         this.title = title;
//     }
// 
//     public List<Card> getCards() {
//         return cards;
//     }
// 
//     public void setCards(List<Card> cards) {
//         this.cards = cards;
//     }
// }
// 
// Path: app/src/main/java/android/support/v17/leanback/streamingapp/utils/CardListRow.java
// public class CardListRow extends ListRow {
// 
//     private CardRow mCardRow;
// 
//     public CardListRow(HeaderItem header, ObjectAdapter adapter, CardRow cardRow) {
//         super(header, adapter);
//         setCardRow(cardRow);
//     }
// 
//     public CardRow getCardRow() {
//         return mCardRow;
//     }
// 
//     public void setCardRow(CardRow oldCardRow) {
//         this.mCardRow = oldCardRow;
//     }
// }
// 
// Path: app/src/main/java/android/support/v17/leanback/streamingapp/utils/OldCardListRow.java
// public class OldCardListRow extends ListRow {
// 
//     private OldCardRow mOldCardRow;
// 
//     public OldCardListRow(HeaderItem header, ObjectAdapter adapter, OldCardRow oldCardRow) {
//         super(header, adapter);
//         setCardRow(oldCardRow);
//     }
// 
//     public OldCardRow getCardRow() {
//         return mOldCardRow;
//     }
// 
//     public void setCardRow(OldCardRow oldCardRow) {
//         this.mOldCardRow = oldCardRow;
//     }
// }


// Path: app/src/main/java/android/support/v17/leanback/streamingapp/presenter/ShadowRowPresenterSelector.java
import android.support.v17.leanback.streamingapp.model.CardRow;
import android.support.v17.leanback.streamingapp.utils.CardListRow;
import android.support.v17.leanback.streamingapp.utils.OldCardListRow;
import android.support.v17.leanback.widget.ListRowPresenter;
import android.support.v17.leanback.widget.Presenter;
import android.support.v17.leanback.widget.PresenterSelector;

package android.support.v17.leanback.streamingapp.presenter;


public class ShadowRowPresenterSelector extends PresenterSelector {
    private ListRowPresenter mShadowEnabledRowPresenter = new ListRowPresenter();
    private ListRowPresenter mShadowDisabledRowPresenter = new ListRowPresenter();

    public ShadowRowPresenterSelector() {
        mShadowEnabledRowPresenter.setNumRows(1);
        mShadowDisabledRowPresenter.setShadowEnabled(false);
    }

    @Override public Presenter getPresenter(Object item) {
        if (!(item instanceof OldCardListRow)) return mShadowDisabledRowPresenter;
        CardListRow listRow = (CardListRow) item;