Thanks to the inheritance links, we are able to distinct the movies to its states. In these case, the addition of a new state does not imply code modification.
The category is a subclass of VOD imposing instances destruction to change of category. The question of the validity of this solution is open in regard of the proposed exercise. However, we have considered this solution valid in using a prototype creational pattern with a category as parameter.