Refactor (prototype pattern)