Prototype pattern added