internal Baml6Assembly GetKnownBamlAssembly(Int16 assemblyId)
        {
            if (assemblyId > 0)
            {
                throw new ArgumentException(SR.Get(SRID.AssemblyIdNegative));
            }
            assemblyId = (short)-assemblyId;

            Baml6Assembly assembly = _knownBamlAssemblies[assemblyId];

            if (assembly == null)
            {
                assembly = CreateKnownBamlAssembly(assemblyId);
                _knownBamlAssemblies[assemblyId] = assembly;
            }
            return(assembly);
        }
        internal Baml6Assembly CreateKnownBamlAssembly(Int16 assemblyId)
        {
            Baml6Assembly assembly;

            switch (assemblyId)
            {
            case 0: assembly = new Baml6Assembly(typeof(double).Assembly); break;      // never happens ??

            case 1: assembly = new Baml6Assembly(typeof(System.Uri).Assembly); break;

            case 2: assembly = new Baml6Assembly(typeof(System.Windows.DependencyObject).Assembly); break;

            case 3: assembly = new Baml6Assembly(typeof(System.Windows.UIElement).Assembly); break;

            case 4: assembly = new Baml6Assembly(typeof(System.Windows.FrameworkElement).Assembly); break;

            default: assembly = null; break;
            }

            return(assembly);
        }
        internal Baml6Assembly CreateKnownBamlAssembly(Int16 assemblyId)
        { 
            Baml6Assembly assembly;
 
            switch (assemblyId) 
            {
                case 0: assembly = new Baml6Assembly(typeof(double).Assembly); break;  // never happens ?? 
                case 1: assembly = new Baml6Assembly(typeof(System.Uri).Assembly); break;
                case 2: assembly = new Baml6Assembly(typeof(System.Windows.DependencyObject).Assembly); break;
                case 3: assembly = new Baml6Assembly(typeof(System.Windows.UIElement).Assembly); break;
                case 4: assembly = new Baml6Assembly(typeof(System.Windows.FrameworkElement).Assembly); break; 
                default: assembly = null; break;
            } 
 
            return assembly;
        }