Prototype pattern improved.