'Used by the studio after basic duplication of a source block. We handle the children
ourselves, because we have to properly reference the library upstream and set the overrides.
Otherwise we\'ll end up losing data on the next refresh.'

def studio_post_duplicate(self, store, source_block):

    user_id = self.get_user_id()
    user_perms = self.runtime.service(self, 'studio_user_permissions')
    if (not self.tools):
        raise RuntimeError('Library    tools    unavailable,    duplication    will    not    be    sane!')
    self.tools.update_children(self, user_id, user_perms, version=self.source_library_version)
    self._copy_overrides(store, user_id, source_block, self)
    return True
