16 auto ptr = std::shared_ptr<PatternList::PatternInternal>(list.intern,&list.intern->pptn[
id]);
17 if(impl.use_count()>1) {
18 impl = std::make_shared<Internal>(*impl);
20 impl->pptn.push_back(ptr);
21 impl->groove = list.intern->groove;
23 impl->timeTotal += ptr->timeTotal;