public Record()
        {
            RootHandler      = new RecordHandler();
            ChildHandler     = new RecordHandler();
            ExtensionHandler = new RecordHandler();
            GlobalHandler    = new RecordHandler();
            Children         = new List <Record>();
            ActiveHandler    = RootHandler;

            GlobalHandler.Handler[Opcodes.PushExtension]   = HandlePushExtension;
            ExtensionHandler.Handler[Opcodes.PopExtension] = HandlePopExtension;
        }
 /// <summary>
 /// Handle push extension records.
 /// </summary>
 /// <returns></returns>
 protected bool HandlePushExtension()
 {
     SavedHandler  = ActiveHandler;
     ActiveHandler = ExtensionHandler;
     return(true);
 }