// Path: serenity-common/src/main/java/us/nineworlds/serenity/common/media/model/IVideo.java
// public interface IVideo extends ClientObject {
//   String getGrandParentTitle();
// 
//   void setGrandParentTitle(String grandParentTitle);
// 
//   String getGrandParentThumbNailImageKey();
// 
//   void setGrandParentThumbNailImageKey(String grandParentThumbNailImageKey);
// 
//   List<IRole> getActors();
// 
//   String getBackgroundImageKey();
// 
//   String getContentRating();
// 
//   List<ICountry> getCountries();
// 
//   List<IDirector> getDirectors();
// 
//   long getDuration();
// 
//   List<IGenre> getGenres();
// 
//   List<IMedia> getMedias();
// 
//   String getOriginallyAvailableDate();
// 
//   String getSummary();
// 
//   String getTagLine();
// 
//   String getThumbNailImageKey();
// 
//   long getTimeAdded();
// 
//   long getTimeUpdated();
// 
//   String getTitle();
// 
//   String getTitleSort();
// 
//   int getViewCount();
// 
//   long getViewOffset();
// 
//   List<IWriter> getWriters();
// 
//   String getYear();
// 
//   void setActors(List<IRole> actors);
// 
//   void setBackgroundImageKey(String backgroundImageKey);
// 
//   void setContentRating(String contentRating);
// 
//   void setCountries(List<ICountry> countries);
// 
//   void setDirectors(List<IDirector> directors);
// 
//   void setDuration(long duration);
// 
//   void setGenres(List<IGenre> genres);
// 
//   void setMedias(List<IMedia> medias);
// 
//   void setOriginallyAvailableDate(String originallyAvailableDate);
// 
//   void setSummary(String summary);
// 
//   void setTagLine(String tagLine);
// 
//   void setThumbNailImageKey(String thumbNailImageKey);
// 
//   void setTimeAdded(long timeAdded);
// 
//   void setTimeUpdated(long timeUpdated);
// 
//   void setTitle(String title);
// 
//   void setTitleSort(String titleSort);
// 
//   void setViewCount(int viewCount);
// 
//   void setViewOffset(long viewOffset);
// 
//   void setWriters(List<IWriter> writers);
// 
//   void setYear(String year);
// 
//   String getRatingKey();
// 
//   void setRatingKey(String ratingKey);
// 
//   String getParentThumbNailImageKey();
// 
//   void setParentThumbNailImageKey(String parentThumbNailImageKey);
// 
//   String getStudio();
// 
//   void setStudio(String studio);
// 
//   double getRating();
// 
//   void setRating(double rating);
// 
//   void setParentKey(String parentKey);
// 
//   String getParentKey();
// 
//   String getEpisode();
// 
//   void setEpisode(String episode);
// 
//   String getSeason();
// 
//   void setSeason(String season);
// 
//   void setDirectPlayUrl(String url);
// 
//   String getDirectPlayUrl();
// 
// }
// 
// Path: serenity-common/src/main/java/us/nineworlds/serenity/common/media/model/IWriter.java
// public interface IWriter extends ICrew {
// 
// }


import us.nineworlds.serenity.common.media.model.IMedia;
import us.nineworlds.serenity.common.media.model.IRole;
import us.nineworlds.serenity.common.media.model.IVideo;
import us.nineworlds.serenity.common.media.model.IWriter;
import java.util.List;
import org.simpleframework.xml.Attribute;
import org.simpleframework.xml.ElementList;
import org.simpleframework.xml.Root;
import us.nineworlds.serenity.common.media.model.ICountry;
import us.nineworlds.serenity.common.media.model.IDirector;
import us.nineworlds.serenity.common.media.model.IGenre;

  @ElementList(inline = true, required = false, type = Genre.class) private List<IGenre> genres;

  @ElementList(inline = true, name = "Media", required = true, type = Media.class) private List<IMedia> medias;

  @Override public String getGrandParentTitle() {
    return grandParentTitle;
  }

  @Override public void setGrandParentTitle(String grandParentTitle) {
    this.grandParentTitle = grandParentTitle;
  }

  @Override public String getGrandParentThumbNailImageKey() {
    return grandParentThumbNailImageKey;
  }

  @Override public void setGrandParentThumbNailImageKey(String grandParentThumbNailImageKey) {
    this.grandParentThumbNailImageKey = grandParentThumbNailImageKey;
  }

  @Override public List<IRole> getActors() {
    return actors;
  }

  @Override public String getBackgroundImageKey() {
    return backgroundImageKey;
  }

  @Override public String getContentRating() {
// Path: serenity-common/src/main/java/us/nineworlds/serenity/common/media/model/IVideo.java
// public interface IVideo extends ClientObject {
//   String getGrandParentTitle();
// 
//   void setGrandParentTitle(String grandParentTitle);
// 
//   String getGrandParentThumbNailImageKey();
// 
//   void setGrandParentThumbNailImageKey(String grandParentThumbNailImageKey);
// 
//   List<IRole> getActors();
// 
//   String getBackgroundImageKey();
// 
//   String getContentRating();
// 
//   List<ICountry> getCountries();
// 
//   List<IDirector> getDirectors();
// 
//   long getDuration();
// 
//   List<IGenre> getGenres();
// 
//   List<IMedia> getMedias();
// 
//   String getOriginallyAvailableDate();
// 
//   String getSummary();
// 
//   String getTagLine();
// 
//   String getThumbNailImageKey();
// 
//   long getTimeAdded();
// 
//   long getTimeUpdated();
// 
//   String getTitle();
// 
//   String getTitleSort();
// 
//   int getViewCount();
// 
//   long getViewOffset();
// 
//   List<IWriter> getWriters();
// 
//   String getYear();
// 
//   void setActors(List<IRole> actors);
// 
//   void setBackgroundImageKey(String backgroundImageKey);
// 
//   void setContentRating(String contentRating);
// 
//   void setCountries(List<ICountry> countries);
// 
//   void setDirectors(List<IDirector> directors);
// 
//   void setDuration(long duration);
// 
//   void setGenres(List<IGenre> genres);
// 
//   void setMedias(List<IMedia> medias);
// 
//   void setOriginallyAvailableDate(String originallyAvailableDate);
// 
//   void setSummary(String summary);
// 
//   void setTagLine(String tagLine);
// 
//   void setThumbNailImageKey(String thumbNailImageKey);
// 
//   void setTimeAdded(long timeAdded);
// 
//   void setTimeUpdated(long timeUpdated);
// 
//   void setTitle(String title);
// 
//   void setTitleSort(String titleSort);
// 
//   void setViewCount(int viewCount);
// 
//   void setViewOffset(long viewOffset);
// 
//   void setWriters(List<IWriter> writers);
// 
//   void setYear(String year);
// 
//   String getRatingKey();
// 
//   void setRatingKey(String ratingKey);
// 
//   String getParentThumbNailImageKey();
// 
//   void setParentThumbNailImageKey(String parentThumbNailImageKey);
// 
//   String getStudio();
// 
//   void setStudio(String studio);
// 
//   double getRating();
// 
//   void setRating(double rating);
// 
//   void setParentKey(String parentKey);
// 
//   String getParentKey();
// 
//   String getEpisode();
// 
//   void setEpisode(String episode);
// 
//   String getSeason();
// 
//   void setSeason(String season);
// 
//   void setDirectPlayUrl(String url);
// 
//   String getDirectPlayUrl();
// 
// }
// 
// Path: serenity-common/src/main/java/us/nineworlds/serenity/common/media/model/IWriter.java
// public interface IWriter extends ICrew {
// 
// }


// Path: plexapp-rest-library/src/main/java/us/nineworlds/plex/rest/model/impl/Video.java
import us.nineworlds.serenity.common.media.model.IMedia;
import us.nineworlds.serenity.common.media.model.IRole;
import us.nineworlds.serenity.common.media.model.IVideo;
import us.nineworlds.serenity.common.media.model.IWriter;
import java.util.List;
import org.simpleframework.xml.Attribute;
import org.simpleframework.xml.ElementList;
import org.simpleframework.xml.Root;
import us.nineworlds.serenity.common.media.model.ICountry;
import us.nineworlds.serenity.common.media.model.IDirector;
import us.nineworlds.serenity.common.media.model.IGenre;


  @ElementList(inline = true, required = false, type = Genre.class) private List<IGenre> genres;

  @ElementList(inline = true, name = "Media", required = true, type = Media.class) private List<IMedia> medias;

  @Override public String getGrandParentTitle() {
    return grandParentTitle;
  }

  @Override public void setGrandParentTitle(String grandParentTitle) {
    this.grandParentTitle = grandParentTitle;
  }

  @Override public String getGrandParentThumbNailImageKey() {
    return grandParentThumbNailImageKey;
  }

  @Override public void setGrandParentThumbNailImageKey(String grandParentThumbNailImageKey) {
    this.grandParentThumbNailImageKey = grandParentThumbNailImageKey;
  }

  @Override public List<IRole> getActors() {
    return actors;
  }

  @Override public String getBackgroundImageKey() {
    return backgroundImageKey;
  }

  @Override public String getContentRating() {
    return contentRating;