complex. The new version is smaller and faster. The interface is unchanged, except that ring-remove now accepts an optional numeric argument specifying the element to remove.