Buggy code:
final class Persistence { static final String DEPRECATED_TAG_SCOPE = "scope" ; static final String PACKAGE_BASE = "commands" ; static final String PACKAGE_FULL = "org.eclipse.ui." + ( Persistence . PACKAGE_BASE ) ; static final String TAG_ACTIVE_GESTURE_CONFIGURATION = "activeGestureConfiguration" ; static final String TAG_ACTIVE_KEY_CONFIGURATION = "activeKeyConfiguration" ; static final String TAG_CATEGORY = "category" ; static final String TAG_COMMAND = "command" ; static final String TAG_CONFIGURATION = "configuration" ; static final String TAG_CONTEXT = "context" ; static final String TAG_CONTEXT_BINDING = "contextBinding" ; static final String TAG_DESCRIPTION = "description" ; static final String TAG_GESTURE_BINDING = "gestureBinding" ; static final String TAG_GESTURE_CONFIGURATION = "gestureConfiguration" ; static final String TAG_ID = "id" ; static final String TAG_KEY_BINDING = "keyBinding" ; static final String TAG_KEY_CONFIGURATION = "keyConfiguration" ; static final String TAG_LOCALE = "locale" ; static final String TAG_NAME = "name" ; static final String TAG_PARENT = "parent" ; static final String TAG_PLATFORM = "platform" ; static final String TAG_PLUGIN = "plugin" ; static final String TAG_SEQUENCE = "sequence" ; static final String TAG_STRING = "string" ; static final String TAG_STROKE = "stroke" ; static final String TAG_VALUE = "value" ; static final Integer ZERO = new Integer ( 0 ) ; static final Sequence ZERO_LENGTH_SEQUENCE = Sequence . create ( ) ; static ActiveConfiguration readActiveConfiguration ( IMemento memento , String pluginOverride ) throws IllegalArgumentException { } static List readActiveConfigurations ( IMemento memento , String name , String pluginOverride ) throws IllegalArgumentException { } static Category readCategory ( IMemento memento , String pluginOverride ) throws IllegalArgumentException { } static List readCategories ( IMemento memento , String name , String pluginOverride ) throws IllegalArgumentException { } static Command readCommand ( IMemento memento , String pluginOverride ) throws IllegalArgumentException { } static List readCommands ( IMemento memento , String name , String pluginOverride ) throws IllegalArgumentException { } static Configuration readConfiguration ( IMemento memento , String pluginOverride ) throws IllegalArgumentException { } static List readConfigurations ( IMemento memento , String name , String pluginOverride ) throws IllegalArgumentException { } static Context readContext ( IMemento memento , String pluginOverride ) throws IllegalArgumentException { } static List readContexts ( IMemento memento , String name , String pluginOverride ) throws IllegalArgumentException { } static ContextBinding readContextBinding ( IMemento memento , String pluginOverride ) throws IllegalArgumentException { } static List readContextBindings ( IMemento memento , String name , String pluginOverride ) throws IllegalArgumentException { } static Sequence readSequence ( IMemento memento ) throws IllegalArgumentException { } static SequenceBinding readSequenceBinding ( IMemento memento , String pluginOverride , int rank ) throws IllegalArgumentException { if ( memento == null ) throw new IllegalArgumentException ( ) ; String command = memento . getString ( Persistence . TAG_COMMAND ) ; String configuration = memento . getString ( Persistence . TAG_CONFIGURATION ) ; if ( configuration == null ) configuration = Util . ZERO_LENGTH_STRING ; String context = memento . getString ( Persistence . TAG_CONTEXT ) ; if ( context == null ) { context = memento . getString ( Persistence . DEPRECATED_TAG_SCOPE ) ; if ( context == null ) context = Util . ZERO_LENGTH_STRING ; } Sequence sequence = null ; IMemento mementoSequence = memento . getChild ( Persistence . TAG_SEQUENCE ) ; if ( mementoSequence != null ) sequence = Persistence . readSequence ( mementoSequence ) ; else { String string = memento . getString ( Persistence . TAG_STRING ) ; if ( string != null ) try { <START_BUG> sequence = KeySupport . parseSequence ( string ) ; <END_BUG> } catch ( IllegalArgumentException eIllegalArgument ) { } } if ( sequence == null ) sequence = Persistence . ZERO_LENGTH_SEQUENCE ; String locale = memento . getString ( Persistence . TAG_LOCALE ) ; if ( locale == null ) locale = Util . ZERO_LENGTH_STRING ; String platform = memento . getString ( Persistence . TAG_PLATFORM ) ; if ( platform == null ) platform = Util . ZERO_LENGTH_STRING ; String plugin = ( pluginOverride != null ) ? pluginOverride : memento . getString ( Persistence . TAG_PLUGIN ) ; return SequenceBinding . create ( command , configuration , context , locale , platform , plugin , rank , sequence ) ; } static List readSequenceBindings ( IMemento memento , String name , String pluginOverride , int rank ) throws IllegalArgumentException { } static Stroke readStroke ( IMemento memento ) throws IllegalArgumentException { } static void writeActiveConfiguration ( IMemento memento , ActiveConfiguration activeConfiguration ) throws IllegalArgumentException { } static void writeActiveConfigurations ( IMemento memento , String name , List activeConfigurations ) throws IllegalArgumentException { } static void writeCategory ( IMemento memento , Category category ) throws IllegalArgumentException { } static void writeCategories ( IMemento memento , String name , List categories ) throws IllegalArgumentException { } static void writeCommand ( IMemento memento , Command command ) throws IllegalArgumentException { } static void writeCommands ( IMemento memento , String name , List commands ) throws IllegalArgumentException { } static void writeConfiguration ( IMemento memento , Configuration configuration ) throws IllegalArgumentException { } static void writeConfigurations ( IMemento memento , String name , List configurations ) throws IllegalArgumentException { } static void writeContext ( IMemento memento , Context context ) throws IllegalArgumentException { } static void writeContexts ( IMemento memento , String name , List contexts ) throws IllegalArgumentException { } static void writeContextBinding ( IMemento memento , ContextBinding contextBinding ) throws IllegalArgumentException { } static void writeContextBindings ( IMemento memento , String name , List contextBindings ) throws IllegalArgumentException { } static void writeSequence ( IMemento memento , Sequence sequence ) throws IllegalArgumentException { } static void writeSequenceBinding ( IMemento memento , SequenceBinding sequenceBinding ) throws IllegalArgumentException { } static void writeSequenceBindings ( IMemento memento , String name , List sequenceBindings ) throws IllegalArgumentException { } static void writeStroke ( IMemento memento , Stroke stroke ) throws IllegalArgumentException { } private Persistence ( ) { } }

Fix:
sequence = KeySupport . parseSequence ( string , false ) ;