/*
 * Intel ACPI Component Architecture
 * AML Disassembler version 20090625
 *
 * Disassembly of m3a78-t_1601.dsdt, Sun Jan  3 00:05:47 2010
 *
 *
 * Original Table Header:
 *     Signature        "DSDT"
 *     Length           0x0000B3CD (46029)
 *     Revision         0x01 **** ACPI 1.0, no 64-bit math support
 *     Checksum         0x4A
 *     OEM ID           "P0021"
 *     OEM Table ID     "P0021000"
 *     OEM Revision     0x00000000 (0)
 *     Compiler ID      "INTL"
 *     Compiler Version 0x20051117 (537202967)
 */
DefinitionBlock ("m3a78-t_1601.aml", "DSDT", 1, "P0021", "P0021000", 0x00000000)
{
    Name (OSTY, Ones)
    OperationRegion (ACMS, SystemIO, 0x72, 0x02)
    Field (ACMS, ByteAcc, NoLock, Preserve)
    {
        ICMS,   8, 
        DCMS,   8
    }

    IndexField (ICMS, DCMS, ByteAcc, NoLock, Preserve)
    {
                Offset (0x01), 
                Offset (0x04), 
        RMBA,   32, 
        BS_A,   32
    }

    OperationRegion (CFGS, SystemMemory, BS_A, 0x80)
    Field (CFGS, AnyAcc, NoLock, Preserve)
    {
                Offset (0x04), 
        PCIE,   32, 
                Offset (0x31), 
        TPMR,   1, 
        STHP,   1, 
        SHPG,   1, 
        OSCF,   1
    }

    OperationRegion (CMPT, SystemIO, 0x0C50, 0x03)
    Field (CMPT, ByteAcc, NoLock, Preserve)
    {
        CMID,   8, 
            ,   6, 
        GPCT,   2, 
        GP0I,   1, 
        GP1I,   1, 
        GP2I,   1, 
        GP3I,   1, 
        GP4I,   1, 
        GP5I,   1, 
        GP6I,   1, 
        GP7I,   1
    }

    OperationRegion (PCFG, SystemMemory, PCIE, 0x02000000)
    Field (PCFG, AnyAcc, NoLock, Preserve)
    {
                Offset (0x8800A), 
        STCL,   16, 
                Offset (0xA0004), 
        SMIE,   1, 
        SMME,   1, 
                Offset (0xA0008), 
        RVID,   8, 
                Offset (0xA0014), 
        SMB1,   32, 
                Offset (0xA0050), 
            ,   10, 
        GP51,   1, 
                Offset (0xA0056), 
            ,   11, 
        GP64,   1, 
                Offset (0xA0082), 
            ,   2, 
        G31O,   1, 
                Offset (0xA00E1), 
            ,   6, 
        ACIR,   1, 
                Offset (0xA4004), 
        PCMD,   2
    }

    OperationRegion (RMEM, SystemMemory, RMBA, 0x0200)
    Field (RMEM, AnyAcc, NoLock, Preserve)
    {
                Offset (0x04), 
        RMLN,   32
    }

    OperationRegion (PMIO, SystemIO, 0x0CD6, 0x02)
    Field (PMIO, ByteAcc, NoLock, Preserve)
    {
        INPM,   8, 
        DAPM,   8
    }

    IndexField (INPM, DAPM, ByteAcc, NoLock, Preserve)
    {
            ,   1, 
        TM1E,   1, 
        TM2E,   1, 
                Offset (0x01), 
            ,   1, 
        TM1S,   1, 
        TM2S,   1, 
                Offset (0x04), 
            ,   7, 
        SLPS,   1, 
                Offset (0x07), 
            ,   7, 
        CLPS,   1, 
                Offset (0x10), 
            ,   6, 
        PWDE,   1, 
                Offset (0x1C), 
            ,   3, 
        MKME,   1, 
        PI3E,   1, 
        PI2E,   1, 
        PI1E,   1, 
        PI0E,   1, 
            ,   3, 
        MKMS,   1, 
        PI3S,   1, 
        PI2S,   1, 
        PI1S,   1, 
        PI0S,   1, 
                Offset (0x20), 
        P1EB,   16, 
                Offset (0x28), 
        GP0B,   16, 
                Offset (0x36), 
            ,   6, 
        GV6P,   1, 
        GV7P,   1, 
            ,   3, 
        GM0P,   1, 
        GM1P,   1, 
        GM2P,   1, 
        GM3P,   1, 
        GM8P,   1, 
            ,   1, 
        GM4P,   1, 
        GM5P,   1, 
            ,   1, 
        GM6P,   1, 
        GM7P,   1, 
                Offset (0x3B), 
        GPX0,   1, 
        GPX4,   1, 
        GPX5,   1, 
        GPX1,   1, 
        GPX6,   1, 
        GPX7,   1, 
        GPX2,   1, 
        GPX3,   1, 
                Offset (0x55), 
        SPRE,   1, 
            ,   1, 
            ,   1, 
        EPNM,   1, 
        DPPF,   1, 
        FNGS,   1, 
                Offset (0x61), 
            ,   7, 
        R617,   1, 
                Offset (0x65), 
            ,   4, 
        RSTU,   1, 
                Offset (0x68), 
            ,   3, 
        TPDE,   1, 
            ,   1, 
                Offset (0x7C), 
            ,   2, 
        BLNK,   2, 
                Offset (0x92), 
            ,   7, 
        GV7S,   1, 
                Offset (0x96), 
        GP8I,   1, 
        GP9I,   1, 
                Offset (0x9A), 
            ,   7, 
        HECO,   1, 
                Offset (0xA8), 
        PI4E,   1, 
        PI5E,   1, 
        PI6E,   1, 
        PI7E,   1, 
                Offset (0xA9), 
        PI4S,   1, 
        PI5S,   1, 
        PI6S,   1, 
        PI7S,   1
    }

    OperationRegion (P1E0, SystemIO, P1EB, 0x04)
    Field (P1E0, ByteAcc, NoLock, Preserve)
    {
            ,   14, 
        PEWS,   1, 
        WSTA,   1, 
            ,   14, 
        PEWD,   1
    }

    Method (SPTS, 1, NotSerialized)
    {
        If (LEqual (Arg0, 0x03))
        {
            Store (Zero, RSTU)
        }

        If (LEqual (Arg0, One))
        {
            Store (0x02, BLNK)
        }

        If (LEqual (Arg0, 0x02))
        {
            Store (Zero, BLNK)
        }

        If (LEqual (Arg0, 0x03))
        {
            Store (One, BLNK)
        }

        Store (One, CLPS)
        Store (One, SLPS)
        If (LLessEqual (RVID, 0x13))
        {
            Store (Zero, PWDE)
        }
    }

    Method (SWAK, 1, NotSerialized)
    {
        Store (One, HECO)
        If (LEqual (Arg0, 0x03))
        {
            Store (One, RSTU)
        }

        Store (PEWS, PEWS)
        Store (BLSS, BLNK)
    }

    Method (TRMD, 1, NotSerialized)
    {
        Store (Arg0, SPRE)
        Store (Arg0, TPDE)
    }

    OperationRegion (AG0B, SystemIO, GP0B, 0x08)
    Field (AG0B, ByteAcc, NoLock, Preserve)
    {
                Offset (0x06), 
        E0EN,   1
    }

    Method (SRWE, 1, NotSerialized)
    {
        If (Arg0)
        {
            Or (E0EN, One, E0EN)
        }
        Else
        {
            And (E0EN, Zero, E0EN)
        }
    }

    Method (NPTS, 1, NotSerialized)
    {
    }

    Method (NWAK, 1, NotSerialized)
    {
    }

    Method (NB2S, 1, NotSerialized)
    {
    }

    Method (NB2W, 1, NotSerialized)
    {
    }

    Name (DP80, 0x80)
    Name (DP90, 0x90)
    Name (SPIO, 0x2E)
    Name (IOPB, 0x0E00)
    Name (IOPL, 0x10)
    Name (IOEB, 0x0E80)
    Name (IOEL, 0x10)
    Name (IOGB, 0x0F40)
    Name (IOGL, 0x10)
    Name (IOSB, 0x0A30)
    Name (IOSL, 0x10)
    Name (CIR1, 0x03E0)
    Name (CIR2, 0x02E0)
    Name (CIR3, 0x0298)
    Name (ATSW, 0xE5)
    Name (BLSS, 0x03)
    Name (PMBS, 0x0800)
    Name (PMLN, 0xA0)
    Name (GPBS, Zero)
    Name (GPLN, Zero)
    Name (SMBB, 0x0B00)
    Name (SMBL, 0x40)
    Name (APIC, One)
    Name (AODS, 0xF5)
    Name (SMIP, 0xB0)
    Name (ACSS, One)
    Name (SBA1, 0x0B00)
    Name (SBA2, 0x0B20)
    Name (SIOP, 0x2E)
    Name (GIOB, 0x0F40)
    Name (T1OF, Zero)
    Name (T2OF, Zero)
    Name (T3OF, Zero)
    Name (CQST, 0x3C)
    Name (PCIB, 0xE0000000)
    Name (PCIL, 0x10000000)
    OperationRegion (BIOS, SystemMemory, 0x7FFBE064, 0xFF)
    Field (BIOS, ByteAcc, NoLock, Preserve)
    {
        SS1,    1, 
        SS2,    1, 
        SS3,    1, 
        SS4,    1, 
                Offset (0x01), 
        IOST,   16, 
        TOPM,   32, 
        ROMS,   32, 
        MG1B,   32, 
        MG1L,   32, 
        MG2B,   32, 
        MG2L,   32, 
                Offset (0x1C), 
        DMAX,   8, 
        HPTA,   32, 
        CPB0,   32, 
        CPB1,   32, 
        CPB2,   32, 
        CPB3,   32, 
        ASSB,   8, 
        AOTB,   8, 
        AAXB,   32, 
        SMIF,   8, 
        DTSE,   8, 
        DTS1,   8, 
        DTS2,   8, 
        MPEN,   8, 
        TPMF,   8, 
        MG3B,   32, 
        MG3L,   32, 
        MH1B,   32, 
        MH1L,   32
    }

    Method (RRIO, 4, NotSerialized)
    {
        Store ("RRIO", Debug)
    }

    Method (RDMA, 3, NotSerialized)
    {
        Store ("rDMA", Debug)
    }

    Name (PICM, Zero)
    Method (_PIC, 1, NotSerialized)
    {
        If (Arg0)
        {
            Store (0xAA, DBG8)
            \_SB.IRQC ()
        }
        Else
        {
            Store (0xAC, DBG8)
        }

        Store (Arg0, PICM)
    }

    Name (OSVR, Ones)
    Method (OSFL, 0, NotSerialized)
    {
        If (LNotEqual (OSVR, Ones))
        {
            Return (OSVR)
        }

        If (LEqual (PICM, Zero))
        {
            Store (0xAC, DBG8)
        }

        Store (One, OSVR)
        If (CondRefOf (_OSI, Local1))
        {
            If (_OSI ("Windows 2000"))
            {
                Store (0x04, OSVR)
            }

            If (_OSI ("Windows 2001"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2001 SP1"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2001 SP2"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2001.1"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2001.1 SP1"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2006"))
            {
                Store (Zero, OSVR)
            }
        }
        Else
        {
            If (MCTH (_OS, "Microsoft Windows NT"))
            {
                Store (0x04, OSVR)
            }
            Else
            {
                If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))
                {
                    Store (0x02, OSVR)
                }

                If (MCTH (_OS, "Linux"))
                {
                    Store (0x03, OSVR)
                }
            }
        }

        Return (OSVR)
    }

    Method (MCTH, 2, NotSerialized)
    {
        If (LLess (SizeOf (Arg0), SizeOf (Arg1)))
        {
            Return (Zero)
        }

        Add (SizeOf (Arg0), One, Local0)
        Name (BUF0, Buffer (Local0) {})
        Name (BUF1, Buffer (Local0) {})
        Store (Arg0, BUF0)
        Store (Arg1, BUF1)
        While (Local0)
        {
            Decrement (Local0)
            If (LNotEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (
                BUF1, Local0))))
            {
                Return (Zero)
            }
        }

        Return (One)
    }

    Name (PRWP, Package (0x02)
    {
        Zero, 
        Zero
    })
    Method (GPRW, 2, NotSerialized)
    {
        Store (Arg0, Index (PRWP, Zero))
        Store (ShiftLeft (SS1, One), Local0)
        Or (Local0, ShiftLeft (SS2, 0x02), Local0)
        Or (Local0, ShiftLeft (SS3, 0x03), Local0)
        Or (Local0, ShiftLeft (SS4, 0x04), Local0)
        If (And (ShiftLeft (One, Arg1), Local0))
        {
            Store (Arg1, Index (PRWP, One))
        }
        Else
        {
            ShiftRight (Local0, One, Local0)
            If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
            {
                FindSetLeftBit (Local0, Index (PRWP, One))
            }
            Else
            {
                FindSetRightBit (Local0, Index (PRWP, One))
            }
        }

        Return (PRWP)
    }

    Name (WAKP, Package (0x02)
    {
        Zero, 
        Zero
    })
    OperationRegion (DEB0, SystemIO, DP80, One)
    Field (DEB0, ByteAcc, NoLock, Preserve)
    {
        DBG8,   8
    }

    OperationRegion (DEB1, SystemIO, DP90, 0x02)
    Field (DEB1, WordAcc, NoLock, Preserve)
    {
        DBG9,   16
    }

    Scope (_PR)
    {
        Processor (P001, 0x01, 0x00000810, 0x06) {}
        Processor (P002, 0x02, 0x00000000, 0x00) {}
        Processor (P003, 0x03, 0x00000000, 0x00) {}
        Processor (P004, 0x04, 0x00000000, 0x00) {}
        Alias (P001, CPU1)
        Alias (P002, CPU2)
        Alias (P003, CPU3)
        Alias (P004, CPU4)
    }

    Scope (_SB)
    {
        Name (PR00, Package (0x2D)
        {
            Package (0x04)
            {
                0x0002FFFF, 
                Zero, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0002FFFF, 
                One, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0002FFFF, 
                0x02, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0002FFFF, 
                0x03, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0003FFFF, 
                Zero, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0003FFFF, 
                One, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0003FFFF, 
                0x02, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0003FFFF, 
                0x03, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0004FFFF, 
                Zero, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0004FFFF, 
                One, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0004FFFF, 
                0x02, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0004FFFF, 
                0x03, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                Zero, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                One, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x02, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x03, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                Zero, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                One, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                0x02, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                0x03, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0007FFFF, 
                Zero, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0007FFFF, 
                One, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0007FFFF, 
                0x02, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0007FFFF, 
                0x03, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0009FFFF, 
                Zero, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0009FFFF, 
                One, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0009FFFF, 
                0x02, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0009FFFF, 
                0x03, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x000AFFFF, 
                Zero, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x000AFFFF, 
                One, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x000AFFFF, 
                0x02, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x000AFFFF, 
                0x03, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0014FFFF, 
                Zero, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0014FFFF, 
                One, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0014FFFF, 
                0x02, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0014FFFF, 
                0x03, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0012FFFF, 
                Zero, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0012FFFF, 
                One, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0012FFFF, 
                0x02, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0012FFFF, 
                0x03, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0013FFFF, 
                Zero, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0013FFFF, 
                One, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0013FFFF, 
                0x02, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0013FFFF, 
                0x03, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0x0011FFFF, 
                Zero, 
                LNKG, 
                Zero
            }
        })
        Name (AR00, Package (0x2D)
        {
            Package (0x04)
            {
                0x0002FFFF, 
                Zero, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0002FFFF, 
                One, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0002FFFF, 
                0x02, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0002FFFF, 
                0x03, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0003FFFF, 
                Zero, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0003FFFF, 
                One, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0003FFFF, 
                0x02, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0003FFFF, 
                0x03, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0004FFFF, 
                Zero, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0004FFFF, 
                One, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0004FFFF, 
                0x02, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0004FFFF, 
                0x03, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                Zero, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                One, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x02, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x03, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                Zero, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                One, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                0x02, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                0x03, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0007FFFF, 
                Zero, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0007FFFF, 
                One, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0007FFFF, 
                0x02, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0007FFFF, 
                0x03, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0009FFFF, 
                Zero, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0009FFFF, 
                One, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0009FFFF, 
                0x02, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0009FFFF, 
                0x03, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x000AFFFF, 
                Zero, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x000AFFFF, 
                One, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x000AFFFF, 
                0x02, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x000AFFFF, 
                0x03, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0014FFFF, 
                Zero, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0014FFFF, 
                One, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0014FFFF, 
                0x02, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0014FFFF, 
                0x03, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0012FFFF, 
                Zero, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0012FFFF, 
                One, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0012FFFF, 
                0x02, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0012FFFF, 
                0x03, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0013FFFF, 
                Zero, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0013FFFF, 
                One, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0013FFFF, 
                0x02, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0013FFFF, 
                0x03, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0x0011FFFF, 
                Zero, 
                Zero, 
                0x16
            }
        })
        Name (PR01, Package (0x04)
        {
            Package (0x04)
            {
                0x0005FFFF, 
                Zero, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                One, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x02, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x03, 
                LNKB, 
                Zero
            }
        })
        Name (AR01, Package (0x04)
        {
            Package (0x04)
            {
                0x0005FFFF, 
                Zero, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                One, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x02, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x03, 
                Zero, 
                0x11
            }
        })
        Name (PR02, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                LNKB, 
                Zero
            }
        })
        Name (AR02, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                Zero, 
                0x11
            }
        })
        Name (PR03, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                LNKC, 
                Zero
            }
        })
        Name (AR03, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                Zero, 
                0x12
            }
        })
        Name (PR04, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                LNKD, 
                Zero
            }
        })
        Name (AR04, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                Zero, 
                0x13
            }
        })
        Name (PR05, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                LNKB, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                LNKA, 
                Zero
            }
        })
        Name (AR05, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                Zero, 
                0x11
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                Zero, 
                0x10
            }
        })
        Name (PR06, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                LNKC, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                LNKD, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                LNKA, 
                Zero
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                LNKB, 
                Zero
            }
        })
        Name (AR06, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF, 
                Zero, 
                Zero, 
                0x12
            }, 

            Package (0x04)
            {
                0xFFFF, 
                One, 
                Zero, 
                0x13
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x02, 
                Zero, 
                0x10
            }, 

            Package (0x04)
            {
                0xFFFF, 
                0x03, 
                Zero, 
                0x11
            }
        })
        Name (PR0C, Package (0x09)
        {
            Package (0x04)
            {
                0x0005FFFF, 
                Zero, 
                LNKE, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                One, 
                LNKF, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x02, 
                LNKG, 
                Zero
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x03, 
                LNKH, 
                Zero
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                Zero, 
                LNKF, 
                Zero
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                One, 
                LNKG, 
                Zero
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                0x02, 
                LNKH, 
                Zero
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                0x03, 
                LNKE, 
                Zero
            }, 

            Package (0x04)
            {
                0x0008FFFF, 
                Zero, 
                LNKG, 
                Zero
            }
        })
        Name (AR0C, Package (0x09)
        {
            Package (0x04)
            {
                0x0005FFFF, 
                Zero, 
                Zero, 
                0x14
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                One, 
                Zero, 
                0x15
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x02, 
                Zero, 
                0x16
            }, 

            Package (0x04)
            {
                0x0005FFFF, 
                0x03, 
                Zero, 
                0x17
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                Zero, 
                Zero, 
                0x15
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                One, 
                Zero, 
                0x16
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                0x02, 
                Zero, 
                0x17
            }, 

            Package (0x04)
            {
                0x0006FFFF, 
                0x03, 
                Zero, 
                0x14
            }, 

            Package (0x04)
            {
                0x0008FFFF, 
                Zero, 
                Zero, 
                0x16
            }
        })
        Name (PRSA, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {4,7,10,11,12,14,15}
        })
        Alias (PRSA, PRSB)
        Alias (PRSA, PRSC)
        Alias (PRSA, PRSD)
        Alias (PRSA, PRSE)
        Alias (PRSA, PRSF)
        Name (PRSG, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {4,10,11,12,14,15}
        })
        Alias (PRSA, PRSH)
        Device (PCI0)
        {
            Name (_HID, EisaId ("PNP0A03"))
            Name (_ADR, 0x00180000)
            Method (^BN00, 0, NotSerialized)
            {
                Return (Zero)
            }

            Method (_BBN, 0, NotSerialized)
            {
                Return (BN00 ())
            }

            Name (_UID, Zero)
            Method (_PRT, 0, NotSerialized)
            {
                If (PICM)
                {
                    Return (AR00)
                }

                Return (PR00)
            }

            Method (NPTS, 1, NotSerialized)
            {
            }

            Method (NWAK, 1, NotSerialized)
            {
            }

            Device (RS78)
            {
                Name (_ADR, Zero)
                OperationRegion (NB2, PCI_Config, Zero, 0x0100)
                Field (NB2, AnyAcc, NoLock, Preserve)
                {
                            Offset (0x60), 
                    MI,     32, 
                    MD,     32, 
                            Offset (0x94), 
                    HI,     32, 
                    HD,     32, 
                            Offset (0xE8), 
                    MCI,    32, 
                    MCD,    32
                }

                Device (BROD)
                {
                    Name (_HID, EisaId ("PNP0C02"))
                    Name (_UID, 0x14)
                    Name (CRS, ResourceTemplate ()
                    {
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y00)
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y01)
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateDWordField (CRS, \_SB.PCI0.RS78.BROD._Y00._BAS, BAS1)
                        CreateDWordField (CRS, \_SB.PCI0.RS78.BROD._Y00._LEN, LEN1)
                        CreateDWordField (CRS, \_SB.PCI0.RS78.BROD._Y01._BAS, BAS2)
                        CreateDWordField (CRS, \_SB.PCI0.RS78.BROD._Y01._LEN, LEN2)
                        Store (0x3C, MI)
                        Store (MD, Local0)
                        If (And (Local0, 0x40))
                        {
                            Store (0x3A, MI)
                            And (MD, 0xFFFFFF00, BAS1)
                            ShiftLeft (And (MD, 0xFF), 0x17, LEN1)
                        }

                        Store (0x11, MCI)
                        Store (MCD, Local1)
                        Store (0x12, MCI)
                        Store (MCD, Local2)
                        Store (0xF0, MCI)
                        Store (MCD, Local3)
                        If (LEqual (Local2, Zero))
                        {
                            If (LNotEqual (Local3, Zero))
                            {
                                Store (Local1, BAS2)
                                Store (ShiftLeft (Local3, 0x14), LEN2)
                            }
                        }

                        Return (CRS)
                    }
                }
            }

            Device (P0P1)
            {
                Name (_ADR, 0x00010000)
                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR01)
                    }

                    Return (PR01)
                }
            }

            Device (PCE2)
            {
                Name (_ADR, 0x00020000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x18, 0x04))
                }

                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR02)
                    }

                    Return (PR02)
                }
            }

            Device (PCE3)
            {
                Name (_ADR, 0x00030000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x18, 0x04))
                }

                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR03)
                    }

                    Return (PR03)
                }
            }

            Device (PCE4)
            {
                Name (_ADR, 0x00040000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x18, 0x04))
                }

                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR04)
                    }

                    Return (PR04)
                }
            }

            Device (PCE5)
            {
                Name (_ADR, 0x00050000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x18, 0x04))
                }

                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR05)
                    }

                    Return (PR05)
                }
            }

            Device (PCE6)
            {
                Name (_ADR, 0x00060000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x18, 0x04))
                }

                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR06)
                    }

                    Return (PR06)
                }
            }

            Device (PCE7)
            {
                Name (_ADR, 0x00070000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x18, 0x04))
                }
            }

            Device (PCE9)
            {
                Name (_ADR, 0x00090000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x18, 0x04))
                }
            }

            Device (PCEA)
            {
                Name (_ADR, 0x000A0000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x18, 0x04))
                }
            }

            Device (SMBS)
            {
                Name (_ADR, 0x00140000)
                OperationRegion (SMBS, PCI_Config, Zero, 0x0100)
                Field (SMBS, AnyAcc, NoLock, Preserve)
                {
                            Offset (0x08), 
                    REV,    8, 
                            Offset (0x54), 
                    IO59,   8
                }

                OperationRegion (WIDE, PCI_Config, 0xAD, One)
                Field (WIDE, AnyAcc, NoLock, Preserve)
                {
                    DUM1,   4, 
                    SOPT,   1
                }
            }

            Device (IDEC)
            {
                Name (_ADR, 0x00140001)
                Name (UDMT, Package (0x08)
                {
                    0x78, 
                    0x5A, 
                    0x3C, 
                    0x2D, 
                    0x1E, 
                    0x14, 
                    0x0F, 
                    Zero
                })
                Name (PIOT, Package (0x06)
                {
                    0x0258, 
                    0x0186, 
                    0x010E, 
                    0xB4, 
                    0x78, 
                    Zero
                })
                Name (PITR, Package (0x06)
                {
                    0x99, 
                    0x47, 
                    0x34, 
                    0x22, 
                    0x20, 
                    0x99
                })
                Name (MDMT, Package (0x04)
                {
                    0x01E0, 
                    0x96, 
                    0x78, 
                    Zero
                })
                Name (MDTR, Package (0x04)
                {
                    0x77, 
                    0x21, 
                    0x20, 
                    0xFF
                })
                OperationRegion (IDE, PCI_Config, 0x40, 0x20)
                Field (IDE, AnyAcc, NoLock, Preserve)
                {
                    PPIT,   16, 
                    SPIT,   16, 
                    PMDT,   16, 
                    SMDT,   16, 
                    PPIC,   8, 
                    SPIC,   8, 
                    PPIM,   8, 
                    SPIM,   8, 
                            Offset (0x14), 
                    PUDC,   2, 
                    SUDC,   2, 
                            Offset (0x16), 
                    PUDM,   8, 
                    SUDM,   8
                }

                Method (GETT, 1, NotSerialized)
                {
                    Store (And (Arg0, 0x0F), Local0)
                    Store (ShiftRight (Arg0, 0x04), Local1)
                    Return (Multiply (0x1E, Add (Add (Local0, One), Add (Local1, 
                        One))))
                }

                Method (GTM, 1, NotSerialized)
                {
                    CreateByteField (Arg0, Zero, PIT1)
                    CreateByteField (Arg0, One, PIT0)
                    CreateByteField (Arg0, 0x02, MDT1)
                    CreateByteField (Arg0, 0x03, MDT0)
                    CreateByteField (Arg0, 0x04, PICX)
                    CreateByteField (Arg0, 0x05, UDCX)
                    CreateByteField (Arg0, 0x06, UDMX)
                    Name (BUF, Buffer (0x14)
                    {
                        /* 0000 */    0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
                        /* 0008 */    0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
                        /* 0010 */    0x00, 0x00, 0x00, 0x00
                    })
                    CreateDWordField (BUF, Zero, PIO0)
                    CreateDWordField (BUF, 0x04, DMA0)
                    CreateDWordField (BUF, 0x08, PIO1)
                    CreateDWordField (BUF, 0x0C, DMA1)
                    CreateDWordField (BUF, 0x10, FLAG)
                    If (And (PICX, One))
                    {
                        Return (BUF)
                    }

                    Store (GETT (PIT0), PIO0)
                    Store (GETT (PIT1), PIO1)
                    If (And (UDCX, One))
                    {
                        Or (FLAG, One, FLAG)
                        Store (DerefOf (Index (UDMT, And (UDMX, 0x0F))), DMA0)
                    }
                    Else
                    {
                        Store (GETT (MDT0), DMA0)
                    }

                    If (And (UDCX, 0x02))
                    {
                        Or (FLAG, 0x04, FLAG)
                        Store (DerefOf (Index (UDMT, ShiftRight (UDMX, 0x04))), DMA1)
                    }
                    Else
                    {
                        Store (GETT (MDT1), DMA1)
                    }

                    Or (FLAG, 0x1A, FLAG)
                    Return (BUF)
                }

                Method (STM, 3, NotSerialized)
                {
                    CreateDWordField (Arg0, Zero, PIO0)
                    CreateDWordField (Arg0, 0x04, DMA0)
                    CreateDWordField (Arg0, 0x08, PIO1)
                    CreateDWordField (Arg0, 0x0C, DMA1)
                    CreateDWordField (Arg0, 0x10, FLAG)
                    Name (BUF, Buffer (0x07)
                    {
                        0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
                    })
                    CreateByteField (BUF, Zero, PIT1)
                    CreateByteField (BUF, One, PIT0)
                    CreateByteField (BUF, 0x02, MDT1)
                    CreateByteField (BUF, 0x03, MDT0)
                    CreateByteField (BUF, 0x04, PIMX)
                    CreateByteField (BUF, 0x05, UDCX)
                    CreateByteField (BUF, 0x06, UDMX)
                    Store (Match (PIOT, MLE, PIO0, MTR, Zero, Zero), Local0)
                    Divide (Local0, 0x05, Local0)
                    Store (Match (PIOT, MLE, PIO1, MTR, Zero, Zero), Local1)
                    Divide (Local1, 0x05, Local1)
                    Store (Or (ShiftLeft (Local1, 0x04), Local0), PIMX)
                    Store (DerefOf (Index (PITR, Local0)), PIT0)
                    Store (DerefOf (Index (PITR, Local1)), PIT1)
                    If (And (FLAG, One))
                    {
                        Store (Match (UDMT, MLE, DMA0, MTR, Zero, Zero), Local0)
                        Divide (Local0, 0x07, Local0)
                        Or (UDMX, Local0, UDMX)
                        Or (UDCX, One, UDCX)
                    }
                    Else
                    {
                        If (LNotEqual (DMA0, Ones))
                        {
                            Store (Match (MDMT, MLE, DMA0, MTR, Zero, Zero), Local0)
                            Store (DerefOf (Index (MDTR, Local0)), MDT0)
                        }
                    }

                    If (And (FLAG, 0x04))
                    {
                        Store (Match (UDMT, MLE, DMA1, MTR, Zero, Zero), Local0)
                        Divide (Local0, 0x07, Local0)
                        Or (UDMX, ShiftLeft (Local0, 0x04), UDMX)
                        Or (UDCX, 0x02, UDCX)
                    }
                    Else
                    {
                        If (LNotEqual (DMA1, Ones))
                        {
                            Store (Match (MDMT, MLE, DMA1, MTR, Zero, Zero), Local0)
                            Store (DerefOf (Index (MDTR, Local0)), MDT1)
                        }
                    }

                    Return (BUF)
                }

                Method (GTF, 2, NotSerialized)
                {
                    CreateByteField (Arg1, Zero, MDT1)
                    CreateByteField (Arg1, One, MDT0)
                    CreateByteField (Arg1, 0x02, PIMX)
                    CreateByteField (Arg1, 0x03, UDCX)
                    CreateByteField (Arg1, 0x04, UDMX)
                    If (LEqual (Arg0, 0xA0))
                    {
                        Store (And (PIMX, 0x0F), Local0)
                        Store (MDT0, Local1)
                        And (UDCX, One, Local2)
                        Store (And (UDMX, 0x0F), Local3)
                    }
                    Else
                    {
                        Store (ShiftRight (PIMX, 0x04), Local0)
                        Store (MDT1, Local1)
                        And (UDCX, 0x02, Local2)
                        Store (ShiftRight (UDMX, 0x04), Local3)
                    }

                    Name (BUF, Buffer (0x15)
                    {
                        /* 0000 */    0x03, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF, 0x03, 
                        /* 0008 */    0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF, 0x00, 0x00, 
                        /* 0010 */    0x00, 0x00, 0x00, 0x00, 0xF5
                    })
                    CreateByteField (BUF, One, PMOD)
                    CreateByteField (BUF, 0x08, DMOD)
                    CreateByteField (BUF, 0x05, CMDA)
                    CreateByteField (BUF, 0x0C, CMDB)
                    CreateByteField (BUF, 0x13, CMDC)
                    Store (Arg0, CMDA)
                    Store (Arg0, CMDB)
                    Store (Arg0, CMDC)
                    Or (Local0, 0x08, PMOD)
                    If (Local2)
                    {
                        Or (Local3, 0x40, DMOD)
                    }
                    Else
                    {
                        Store (Match (MDMT, MLE, GETT (Local1), MTR, Zero, Zero), Local4)
                        If (LLess (Local4, 0x03))
                        {
                            Or (0x20, Local4, DMOD)
                        }
                    }

                    Return (BUF)
                }

                Device (PRID)
                {
                    Name (_ADR, Zero)
                    Method (_GTM, 0, NotSerialized)
                    {
                        Name (BUF, Buffer (0x07)
                        {
                            0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
                        })
                        CreateWordField (BUF, Zero, VPIT)
                        CreateWordField (BUF, 0x02, VMDT)
                        CreateByteField (BUF, 0x04, VPIC)
                        CreateByteField (BUF, 0x05, VUDC)
                        CreateByteField (BUF, 0x06, VUDM)
                        If (LOr (LGreaterEqual (^^^SMBS.REV, 0x3A), ^^^SMBS.SOPT))
                        {
                            Store (PPIT, VPIT)
                            Store (PMDT, VMDT)
                            Store (PPIC, VPIC)
                            Store (PUDC, VUDC)
                            Store (PUDM, VUDM)
                        }
                        Else
                        {
                            Store (SPIT, VPIT)
                            Store (SMDT, VMDT)
                            Store (SPIC, VPIC)
                            Store (SUDC, VUDC)
                            Store (SUDM, VUDM)
                        }

                        Return (GTM (BUF))
                    }

                    Method (_STM, 3, NotSerialized)
                    {
                        Name (BUF, Buffer (0x07)
                        {
                            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                        })
                        CreateWordField (BUF, Zero, VPIT)
                        CreateWordField (BUF, 0x02, VMDT)
                        CreateByteField (BUF, 0x04, VPIM)
                        CreateByteField (BUF, 0x05, VUDC)
                        CreateByteField (BUF, 0x06, VUDM)
                        Store (STM (Arg0, Arg1, Arg2), BUF)
                        If (LOr (LGreaterEqual (^^^SMBS.REV, 0x3A), ^^^SMBS.SOPT))
                        {
                            Store (VPIT, PPIT)
                            Store (VMDT, PMDT)
                            Store (VPIM, PPIM)
                            Store (VUDC, PUDC)
                            Store (VUDM, PUDM)
                        }
                        Else
                        {
                            Store (VPIT, SPIT)
                            Store (VMDT, SMDT)
                            Store (VPIM, SPIM)
                            Store (VUDC, SUDC)
                            Store (VUDM, SUDM)
                        }
                    }

                    Device (P_D0)
                    {
                        Name (_ADR, Zero)
                        Method (_GTF, 0, NotSerialized)
                        {
                            Name (BUF, Buffer (0x05)
                            {
                                0x00, 0x00, 0x00, 0x00, 0x00
                            })
                            CreateWordField (BUF, Zero, VMDT)
                            CreateByteField (BUF, 0x02, VPIM)
                            CreateByteField (BUF, 0x03, VUDC)
                            CreateByteField (BUF, 0x04, VUDM)
                            If (LOr (LGreaterEqual (^^^^SMBS.REV, 0x3A), ^^^^SMBS.SOPT))
                            {
                                Store (PMDT, VMDT)
                                Store (PPIM, VPIM)
                                Store (PUDC, VUDC)
                                Store (PUDM, VUDM)
                            }
                            Else
                            {
                                Store (SMDT, VMDT)
                                Store (SPIM, VPIM)
                                Store (SUDC, VUDC)
                                Store (SUDM, VUDM)
                            }

                            Return (GTF (0xA0, BUF))
                        }
                    }

                    Device (P_D1)
                    {
                        Name (_ADR, One)
                        Method (_GTF, 0, NotSerialized)
                        {
                            Name (BUF, Buffer (0x05)
                            {
                                0x00, 0x00, 0x00, 0x00, 0x00
                            })
                            CreateWordField (BUF, Zero, VMDT)
                            CreateByteField (BUF, 0x02, VPIM)
                            CreateByteField (BUF, 0x03, VUDC)
                            CreateByteField (BUF, 0x04, VUDM)
                            If (LOr (LGreaterEqual (^^^^SMBS.REV, 0x3A), ^^^^SMBS.SOPT))
                            {
                                Store (PMDT, VMDT)
                                Store (PPIM, VPIM)
                                Store (PUDC, VUDC)
                                Store (PUDM, VUDM)
                            }
                            Else
                            {
                                Store (SMDT, VMDT)
                                Store (SPIM, VPIM)
                                Store (SUDC, VUDC)
                                Store (SUDM, VUDM)
                            }

                            Return (GTF (0xB0, BUF))
                        }
                    }
                }

                Device (SECD)
                {
                    Name (_ADR, One)
                    Method (_GTM, 0, NotSerialized)
                    {
                        Name (BUF, Buffer (0x07)
                        {
                            0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
                        })
                        CreateWordField (BUF, Zero, VPIT)
                        CreateWordField (BUF, 0x02, VMDT)
                        CreateByteField (BUF, 0x04, VPIC)
                        CreateByteField (BUF, 0x05, VUDC)
                        CreateByteField (BUF, 0x06, VUDM)
                        If (LOr (LGreaterEqual (^^^SMBS.REV, 0x3A), ^^^SMBS.SOPT))
                        {
                            Store (SPIT, VPIT)
                            Store (SMDT, VMDT)
                            Store (SPIC, VPIC)
                            Store (SUDC, VUDC)
                            Store (SUDM, VUDM)
                        }
                        Else
                        {
                            Store (PPIT, VPIT)
                            Store (PMDT, VMDT)
                            Store (PPIC, VPIC)
                            Store (PUDC, VUDC)
                            Store (PUDM, VUDM)
                        }

                        Return (GTM (BUF))
                    }

                    Method (_STM, 3, NotSerialized)
                    {
                        Name (BUF, Buffer (0x07)
                        {
                            0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                        })
                        CreateWordField (BUF, Zero, VPIT)
                        CreateWordField (BUF, 0x02, VMDT)
                        CreateByteField (BUF, 0x04, VPIM)
                        CreateByteField (BUF, 0x05, VUDC)
                        CreateByteField (BUF, 0x06, VUDM)
                        Store (STM (Arg0, Arg1, Arg2), BUF)
                        If (LOr (LGreaterEqual (^^^SMBS.REV, 0x3A), ^^^SMBS.SOPT))
                        {
                            Store (VPIT, SPIT)
                            Store (VMDT, SMDT)
                            Store (VPIM, SPIM)
                            Store (VUDC, SUDC)
                            Store (VUDM, SUDM)
                        }
                        Else
                        {
                            Store (VPIT, PPIT)
                            Store (VMDT, PMDT)
                            Store (VPIM, PPIM)
                            Store (VUDC, PUDC)
                            Store (VUDM, PUDM)
                        }
                    }

                    Device (S_D0)
                    {
                        Name (_ADR, Zero)
                        Method (_GTF, 0, NotSerialized)
                        {
                            Name (BUF, Buffer (0x05)
                            {
                                0x00, 0x00, 0x00, 0x00, 0x00
                            })
                            CreateWordField (BUF, Zero, VMDT)
                            CreateByteField (BUF, 0x02, VPIM)
                            CreateByteField (BUF, 0x03, VUDC)
                            CreateByteField (BUF, 0x04, VUDM)
                            If (LOr (LGreaterEqual (^^^^SMBS.REV, 0x3A), ^^^^SMBS.SOPT))
                            {
                                Store (SMDT, VMDT)
                                Store (SPIM, VPIM)
                                Store (SUDC, VUDC)
                                Store (SUDM, VUDM)
                            }
                            Else
                            {
                                Store (PMDT, VMDT)
                                Store (PPIM, VPIM)
                                Store (PUDC, VUDC)
                                Store (PUDM, VUDM)
                            }

                            Return (GTF (0xA0, BUF))
                        }
                    }

                    Device (S_D1)
                    {
                        Name (_ADR, One)
                        Method (_GTF, 0, NotSerialized)
                        {
                            Name (BUF, Buffer (0x05)
                            {
                                0x00, 0x00, 0x00, 0x00, 0x00
                            })
                            CreateWordField (BUF, Zero, VMDT)
                            CreateByteField (BUF, 0x02, VPIM)
                            CreateByteField (BUF, 0x03, VUDC)
                            CreateByteField (BUF, 0x04, VUDM)
                            If (LOr (LGreaterEqual (^^^^SMBS.REV, 0x3A), ^^^^SMBS.SOPT))
                            {
                                Store (SMDT, VMDT)
                                Store (SPIM, VPIM)
                                Store (SUDC, VUDC)
                                Store (SUDM, VUDM)
                            }
                            Else
                            {
                                Store (PMDT, VMDT)
                                Store (PPIM, VPIM)
                                Store (PUDC, VUDC)
                                Store (PUDM, VUDM)
                            }

                            Return (GTF (0xB0, BUF))
                        }
                    }
                }
            }

            Device (SBAZ)
            {
                Name (_ADR, 0x00140002)
                OperationRegion (PCI, PCI_Config, Zero, 0x0100)
                Field (PCI, AnyAcc, NoLock, Preserve)
                {
                            Offset (0x42), 
                    DNSP,   1, 
                    DNSO,   1, 
                    ENSR,   1
                }

                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x1B, 0x04))
                }
            }

            Device (SBRG)
            {
                Name (_ADR, 0x00140003)
                OperationRegion (LPCS, PCI_Config, Zero, 0x0100)
                Field (LPCS, AnyAcc, NoLock, Preserve)
                {
                            Offset (0x40), 
                        ,   7, 
                    ECEN,   1, 
                            Offset (0xA4), 
                    ECAD,   16
                }

                Name (ECIN, Zero)
                Mutex (ECMU, 0x00)
                Mutex (MLMU, 0x00)
                If (ECEN)
                {
                    And (ECAD, 0xFFFE, ECIN)
                    OperationRegion (ECBP, SystemIO, ECIN, 0x02)
                    Field (ECBP, ByteAcc, NoLock, Preserve)
                    {
                        BPIO,   8
                    }

                    OperationRegion (ECIO, SystemIO, ECIN, 0x02)
                    Field (ECIO, ByteAcc, NoLock, Preserve)
                    {
                        IND,    8, 
                        DAT,    8
                    }

                    IndexField (IND, DAT, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0x07), 
                        LDNM,   8, 
                                Offset (0x22), 
                        POW,    8, 
                                Offset (0x30), 
                        ACT,    1, 
                                Offset (0x60), 
                        IOBH,   8, 
                        IOBL,   8, 
                                Offset (0x70), 
                        INT,    4
                    }

                    Method (CFG, 1, NotSerialized)
                    {
                        Store (0x5A, BPIO)
                        Store (0x5A, BPIO)
                        Store (Arg0, LDNM)
                    }

                    Method (XCFG, 0, NotSerialized)
                    {
                        Store (0xA5, BPIO)
                    }

                    Method (STA, 1, NotSerialized)
                    {
                        Acquire (ECMU, 0x5000)
                        CFG (Arg0)
                        Store (Zero, Local1)
                        If (ACT)
                        {
                            Store (0x0F, Local1)
                        }

                        If (LEqual (IND, 0xFF))
                        {
                            Store (Zero, Local1)
                        }

                        XCFG ()
                        Release (ECMU)
                        Return (Local1)
                    }

                    Method (RDMB, 1, NotSerialized)
                    {
                        Acquire (ECMU, 0x1388)
                        Acquire (MLMU, 0x1388)
                        CFG (0x05)
                        Name (IOBA, Zero)
                        Store (IOBH, IOBA)
                        ShiftLeft (IOBA, 0x08, IOBA)
                        Or (IOBA, IOBL, IOBA)
                        OperationRegion (MLIO, SystemIO, IOBA, 0x02)
                        Field (MLIO, ByteAcc, NoLock, Preserve)
                        {
                            MLIN,   8, 
                            MLDA,   8
                        }

                        Store (Arg0, MLIN)
                        Return (MLDA)
                        Release (MLMU)
                        Release (ECMU)
                    }

                    Method (WRMB, 2, NotSerialized)
                    {
                        Acquire (ECMU, 0x1388)
                        Acquire (MLMU, 0x1388)
                        CFG (0x05)
                        Name (IOBA, Zero)
                        Store (IOBH, IOBA)
                        ShiftLeft (IOBA, 0x08, IOBA)
                        Or (IOBA, IOBL, IOBA)
                        OperationRegion (MLIO, SystemIO, IOBA, 0x02)
                        Field (MLIO, ByteAcc, NoLock, Preserve)
                        {
                            MLIN,   8, 
                            MLDA,   8
                        }

                        Store (Arg0, MLIN)
                        Store (Arg1, MLDA)
                        Release (MLMU)
                        Release (ECMU)
                    }

                    Name (KBWF, One)
                    Name (MSWF, One)
                    Name (IRWF, One)
                    Device (PSKE)
                    {
                        Name (_HID, EisaId ("PNP0303"))
                        Name (_CID, EisaId ("PNP030B"))
                        Method (_STA, 0, NotSerialized)
                        {
                            Store (Zero, Local1)
                            Store (STA (0x07), Local1)
                            Return (Local1)
                        }

                        Name (_CRS, ResourceTemplate ()
                        {
                            IO (Decode16,
                                0x0060,             // Range Minimum
                                0x0060,             // Range Maximum
                                0x00,               // Alignment
                                0x01,               // Length
                                )
                            IO (Decode16,
                                0x0064,             // Range Minimum
                                0x0064,             // Range Maximum
                                0x00,               // Alignment
                                0x01,               // Length
                                )
                            IRQNoFlags ()
                                {1}
                        })
                        Method (_PRW, 0, NotSerialized)
                        {
                            Return (GPRW (0x03, 0x04))
                        }

                        Method (_PSW, 1, NotSerialized)
                        {
                            If (Arg0)
                            {
                                Store (One, KBWF)
                            }
                            Else
                            {
                                Store (Zero, KBWF)
                            }
                        }
                    }

                    Device (PSMS)
                    {
                        Name (_HID, EisaId ("PNP0F03"))
                        Name (_CID, EisaId ("PNP0F13"))
                        Method (_STA, 0, NotSerialized)
                        {
                            Store (Zero, Local1)
                            Store (STA (0x07), Local1)
                            Return (Local1)
                        }

                        Name (_CRS, ResourceTemplate ()
                        {
                            IRQNoFlags ()
                                {12}
                        })
                        Method (_PRW, 0, NotSerialized)
                        {
                            Return (GPRW (0x03, 0x04))
                        }

                        Method (_PSW, 1, NotSerialized)
                        {
                            If (Arg0)
                            {
                                Store (One, MSWF)
                            }
                            Else
                            {
                                Store (Zero, MSWF)
                            }
                        }
                    }

                    Method (KWEN, 0, NotSerialized)
                    {
                        WRMB (0x81, Zero)
                        WRMB (0x82, One)
                        WRMB (0x80, Zero)
                        WRMB (0xA0, 0x95)
                    }

                    Method (KWDS, 0, NotSerialized)
                    {
                        WRMB (0x81, Zero)
                        WRMB (0x82, Zero)
                        WRMB (0x80, Zero)
                        WRMB (0xA0, 0x95)
                    }

                    Method (MWEN, 0, NotSerialized)
                    {
                        WRMB (0x81, One)
                        WRMB (0x82, One)
                        WRMB (0x80, Zero)
                        WRMB (0xA0, 0x95)
                    }

                    Method (MWDS, 0, NotSerialized)
                    {
                        WRMB (0x81, One)
                        WRMB (0x82, Zero)
                        WRMB (0x80, Zero)
                        WRMB (0xA0, 0x95)
                    }

                    Device (ECIR)
                    {
                        Name (_HID, EisaId ("AMDC001"))
                        Method (_STA, 0, NotSerialized)
                        {
                            Store (Zero, Local1)
                            If (LEqual (OSTY, 0x06))
                            {
                                Store (STA (0x05), Local1)
                            }

                            Return (Local1)
                        }

                        Method (_CRS, 0, NotSerialized)
                        {
                            Name (RSRC, ResourceTemplate ()
                            {
                                IO (Decode16,
                                    0x0000,             // Range Minimum
                                    0x0000,             // Range Maximum
                                    0x08,               // Alignment
                                    0x08,               // Length
                                    _Y02)
                                IRQNoFlags (_Y03)
                                    {}
                            })
                            CreateByteField (RSRC, \_SB.PCI0.SBRG.ECIR._CRS._Y02._MIN, IO1)
                            CreateByteField (RSRC, 0x03, IO2)
                            CreateByteField (RSRC, \_SB.PCI0.SBRG.ECIR._CRS._Y02._MAX, IO3)
                            CreateByteField (RSRC, 0x05, IO4)
                            CreateWordField (RSRC, \_SB.PCI0.SBRG.ECIR._CRS._Y03._INT, IRQV)
                            Acquire (ECMU, 0x1388)
                            CFG (0x05)
                            If (ACT)
                            {
                                Store (IOBL, IO1)
                                Store (IOBH, IO2)
                                Store (IOBL, IO3)
                                Store (IOBH, IO4)
                                Store (One, Local0)
                                ShiftLeft (Local0, INT, IRQV)
                            }

                            XCFG ()
                            Release (ECMU)
                            Return (RSRC)
                        }

                        Name (_PRS, ResourceTemplate ()
                        {
                            StartDependentFn (0x00, 0x00)
                            {
                                IO (Decode16,
                                    0x0550,             // Range Minimum
                                    0x0550,             // Range Maximum
                                    0x01,               // Alignment
                                    0x08,               // Length
                                    )
                                IRQ (Edge, ActiveHigh, Shared, )
                                    {5}
                            }
                            StartDependentFnNoPri ()
                            {
                                IO (Decode16,
                                    0x0650,             // Range Minimum
                                    0x0650,             // Range Maximum
                                    0x01,               // Alignment
                                    0x08,               // Length
                                    )
                                IRQ (Edge, ActiveHigh, Shared, )
                                    {5}
                            }
                            StartDependentFnNoPri ()
                            {
                                IO (Decode16,
                                    0x0550,             // Range Minimum
                                    0x0550,             // Range Maximum
                                    0x01,               // Alignment
                                    0x08,               // Length
                                    )
                                IRQ (Edge, ActiveHigh, Shared, )
                                    {3}
                            }
                            StartDependentFnNoPri ()
                            {
                                IO (Decode16,
                                    0x0650,             // Range Minimum
                                    0x0650,             // Range Maximum
                                    0x01,               // Alignment
                                    0x08,               // Length
                                    )
                                IRQ (Edge, ActiveHigh, Shared, )
                                    {3}
                            }
                            EndDependentFn ()
                        })
                        Method (_SRS, 1, NotSerialized)
                        {
                            CreateByteField (Arg0, 0x02, IO1)
                            CreateByteField (Arg0, 0x03, IO2)
                            CreateWordField (Arg0, 0x09, IRQV)
                            Acquire (ECMU, 0x1388)
                            CFG (0x05)
                            Store (IO1, IOBL)
                            Store (IO2, IOBH)
                            FindSetRightBit (IRQV, Local0)
                            Subtract (Local0, One, INT)
                            Store (One, ACT)
                            XCFG ()
                            Release (ECMU)
                        }

                        Method (_PRW, 0, NotSerialized)
                        {
                            Return (GPRW (0x17, 0x04))
                        }

                        Method (_PSW, 1, NotSerialized)
                        {
                            If (Arg0)
                            {
                                Store (One, IRWF)
                            }
                            Else
                            {
                                Store (Zero, IRWF)
                            }
                        }

                        Method (IRCF, 2, NotSerialized)
                        {
                            Name (CONN, Zero)
                            If (LEqual (Arg0, One))
                            {
                                Or (RVID, CONN, CONN)
                                Or (0x00013200, CONN, CONN)
                                Return (CONN)
                            }

                            If (LEqual (Arg0, 0x02))
                            {
                                ShiftLeft (GP64, One, CONN)
                                Or (GP51, CONN, CONN)
                                Return (CONN)
                            }

                            If (LEqual (Arg0, 0x03))
                            {
                                If (LEqual (Arg1, Zero))
                                {
                                    Store (One, G31O)
                                }
                                Else
                                {
                                    Store (Zero, G31O)
                                    Sleep (0x64)
                                    Store (One, G31O)
                                }
                            }

                            If (LEqual (Arg0, 0x04))
                            {
                                If (LEqual (Arg1, Zero))
                                {
                                    Store (Zero, ACIR)
                                }
                                Else
                                {
                                    Store (One, ACIR)
                                }
                            }

                            If (LOr (LEqual (Arg0, Zero), LGreater (Arg0, 0x05)))
                            {
                                Store (Ones, CONN)
                            }

                            Return (CONN)
                        }
                    }

                    Method (PPTS, 1, NotSerialized)
                    {
                        If (^PSKE._STA ())
                        {
                            If (KBWF)
                            {
                                KWEN ()
                            }
                            Else
                            {
                                KWDS ()
                            }
                        }

                        If (^PSMS._STA ())
                        {
                            If (MSWF)
                            {
                                MWEN ()
                            }
                            Else
                            {
                                MWDS ()
                            }
                        }
                    }

                    Method (WWAK, 1, NotSerialized)
                    {
                        If (^PSKE._STA ())
                        {
                            KWDS ()
                        }

                        If (^PSMS._STA ())
                        {
                            MWDS ()
                        }
                    }
                }

                Method (EPTS, 1, NotSerialized)
                {
                    If (ECEN)
                    {
                        PPTS (Arg0)
                    }
                }

                Method (EWAK, 1, NotSerialized)
                {
                    If (ECEN)
                    {
                        WWAK (Arg0)
                    }
                }

                Device (PIC)
                {
                    Name (_HID, EisaId ("PNP0000"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0020,             // Range Minimum
                            0x0020,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x00A0,             // Range Minimum
                            0x00A0,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IRQNoFlags ()
                            {2}
                    })
                }

                Device (DMAD)
                {
                    Name (_HID, EisaId ("PNP0200"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        DMA (Compatibility, BusMaster, Transfer8, )
                            {4}
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x0081,             // Range Minimum
                            0x0081,             // Range Maximum
                            0x00,               // Alignment
                            0x03,               // Length
                            )
                        IO (Decode16,
                            0x0087,             // Range Minimum
                            0x0087,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0089,             // Range Minimum
                            0x0089,             // Range Maximum
                            0x00,               // Alignment
                            0x03,               // Length
                            )
                        IO (Decode16,
                            0x008F,             // Range Minimum
                            0x008F,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x00C0,             // Range Minimum
                            0x00C0,             // Range Maximum
                            0x00,               // Alignment
                            0x20,               // Length
                            )
                    })
                }

                Device (TMR)
                {
                    Name (_HID, EisaId ("PNP0100"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0040,             // Range Minimum
                            0x0040,             // Range Maximum
                            0x00,               // Alignment
                            0x04,               // Length
                            )
                        IRQNoFlags ()
                            {0}
                    })
                }

                Device (RTC0)
                {
                    Name (_HID, EisaId ("PNP0B00"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0070,             // Range Minimum
                            0x0070,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IRQNoFlags ()
                            {8}
                    })
                }

                Device (SPKR)
                {
                    Name (_HID, EisaId ("PNP0800"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0061,             // Range Minimum
                            0x0061,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                    })
                }

                Device (COPR)
                {
                    Name (_HID, EisaId ("PNP0C04"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x00F0,             // Range Minimum
                            0x00F0,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IRQNoFlags ()
                            {13}
                    })
                }

                Device (UAR1)
                {
                    Name (_UID, One)
                    Method (_HID, 0, NotSerialized)
                    {
                        Return (UHID (Zero))
                    }

                    Method (_STA, 0, NotSerialized)
                    {
                        Return (DSTA (Zero))
                    }

                    Method (_DIS, 0, NotSerialized)
                    {
                        DCNT (Zero, Zero)
                    }

                    Method (_CRS, 0, NotSerialized)
                    {
                        Return (DCRS (Zero, One))
                    }

                    Method (_SRS, 1, NotSerialized)
                    {
                        DSRS (Arg0, Zero)
                    }

                    Method (_PRS, 0, NotSerialized)
                    {
                        Return (CMPR)
                    }

                    Name (CMPR, ResourceTemplate ()
                    {
                        StartDependentFn (0x00, 0x00)
                        {
                            IO (Decode16,
                                0x03F8,             // Range Minimum
                                0x03F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {4}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03F8,             // Range Minimum
                                0x03F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02F8,             // Range Minimum
                                0x02F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03E8,             // Range Minimum
                                0x03E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02E8,             // Range Minimum
                                0x02E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03F8,             // Range Minimum
                                0x03F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {0,1,2,3}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02F8,             // Range Minimum
                                0x02F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {0,1,2,3}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03E8,             // Range Minimum
                                0x03E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {0,1,2,3}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02E8,             // Range Minimum
                                0x02E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {0,1,2,3}
                        }
                        EndDependentFn ()
                    })
                }

                Device (FDC)
                {
                    Name (_HID, EisaId ("PNP0700"))
                    Method (_FDE, 0, NotSerialized)
                    {
                        Name (FDEP, Package (0x05)
                        {
                            Zero, 
                            Zero, 
                            0x02, 
                            0x02, 
                            0x02
                        })
                        If (_STA ())
                        {
                            Store (One, Index (FDEP, Zero))
                        }

                        Return (FDEP)
                    }

                    Method (_STA, 0, NotSerialized)
                    {
                        Return (DSTA (0x03))
                    }

                    Method (_DIS, 0, NotSerialized)
                    {
                        DCNT (0x03, Zero)
                    }

                    Method (_CRS, 0, NotSerialized)
                    {
                        DCRS (0x03, One)
                        Store (IRQM, IRQE)
                        Store (DMAM, DMAE)
                        Store (IO11, IO21)
                        Store (IO12, IO22)
                        Store (0x06, LEN2)
                        Add (IO21, 0x07, IO31)
                        Store (IO31, IO32)
                        Store (One, LEN3)
                        Return (CRS2)
                    }

                    Method (_SRS, 1, NotSerialized)
                    {
                        DSRS (Arg0, 0x03)
                        CreateWordField (Arg0, 0x11, IRQE)
                        CreateByteField (Arg0, 0x14, DMAE)
                        ENFG (CGLD (0x03))
                        If (IRQE)
                        {
                            FindSetRightBit (IRQE, Local0)
                            Subtract (Local0, One, INTR)
                        }
                        Else
                        {
                            Store (Zero, INTR)
                        }

                        If (DMAE)
                        {
                            FindSetRightBit (DMAE, Local0)
                            Subtract (Local0, One, DMCH)
                        }
                        Else
                        {
                            Store (0x04, DMCH)
                        }

                        EXFG ()
                    }

                    Name (_PRS, ResourceTemplate ()
                    {
                        StartDependentFn (0x00, 0x00)
                        {
                            IO (Decode16,
                                0x03F0,             // Range Minimum
                                0x03F0,             // Range Maximum
                                0x01,               // Alignment
                                0x06,               // Length
                                )
                            IO (Decode16,
                                0x03F7,             // Range Minimum
                                0x03F7,             // Range Maximum
                                0x01,               // Alignment
                                0x01,               // Length
                                )
                            IRQNoFlags ()
                                {6}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {2}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03F0,             // Range Minimum
                                0x03F0,             // Range Maximum
                                0x01,               // Alignment
                                0x06,               // Length
                                )
                            IO (Decode16,
                                0x03F7,             // Range Minimum
                                0x03F7,             // Range Maximum
                                0x01,               // Alignment
                                0x01,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {0,1,2,3}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x0370,             // Range Minimum
                                0x0370,             // Range Maximum
                                0x01,               // Alignment
                                0x06,               // Length
                                )
                            IO (Decode16,
                                0x0377,             // Range Minimum
                                0x0377,             // Range Maximum
                                0x01,               // Alignment
                                0x01,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, )
                                {0,1,2,3}
                        }
                        EndDependentFn ()
                    })
                }

                Scope (\)
                {
                    OperationRegion (RAMW, SystemMemory, Subtract (TOPM, 0x00010000), 0x00010000)
                    Field (RAMW, ByteAcc, NoLock, Preserve)
                    {
                        PAR0,   32, 
                        PAR1,   32, 
                        PAR2,   32, 
                        PAR3,   8, 
                        PAR4,   16
                    }

                    OperationRegion (IOB2, SystemIO, 0xB0, 0x02)
                    Field (IOB2, ByteAcc, NoLock, Preserve)
                    {
                        SMIC,   8, 
                        SMIS,   8
                    }

                    Method (ISMI, 1, Serialized)
                    {
                        Store (Arg0, SMIC)
                        Sleep (One)
                    }

                    Method (GNVS, 1, Serialized)
                    {
                        Store (Arg0, PAR0)
                        ISMI (0x70)
                        Return (PAR1)
                    }

                    Method (SNVS, 2, Serialized)
                    {
                        Store (Arg0, PAR0)
                        Store (Arg1, PAR1)
                        ISMI (0x71)
                    }
                }

                Scope (\_SB.PCI0.SBRG)
                {
                    Device (ASOC)
                    {
                        Name (_HID, "ATK0110")
                        Name (_UID, 0x01010110)
                        Method (_STA, 0, NotSerialized)
                        {
                            Return (0x0F)
                        }

                        Method (_INI, 0, NotSerialized)
                        {
                            G03I ()
                        }

                        Name (MBIF, Package (0x08)
                        {
                            0x03, 
                            "M3A78-T", 
                            0x02010101, 
                            0x01000100, 
                            0xE0010101, 
                            Zero, 
                            Zero, 
                            Zero
                        })
                        Name (ASBF, Buffer (0x08)
                        {
                            /* 0000 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                        })
                        CreateDWordField (ASBF, Zero, ASB0)
                        CreateDWordField (ASBF, 0x04, ASB1)
                        Method (GGRP, 1, Serialized)
                        {
                            Name (_T_0, Zero)
                            Store (Arg0, _T_0)
                            If (LEqual (_T_0, Zero))
                            {
                                Return (GRP0)
                            }
                            Else
                            {
                                If (LEqual (_T_0, 0x03))
                                {
                                    Return (GRP3)
                                }
                                Else
                                {
                                    If (LEqual (_T_0, 0x04))
                                    {
                                        Return (GRP4)
                                    }
                                    Else
                                    {
                                        If (LEqual (_T_0, 0x05))
                                        {
                                            Return (GRP5)
                                        }
                                        Else
                                        {
                                            If (LEqual (_T_0, 0x06))
                                            {
                                                Return (GRP6)
                                            }
                                            Else
                                            {
                                                If (LEqual (_T_0, 0x09))
                                                {
                                                    Return (GRP9)
                                                }
                                                Else
                                                {
                                                    If (LEqual (_T_0, 0x0B))
                                                    {
                                                        Return (GRPB)
                                                    }
                                                    Else
                                                    {
                                                        If (LEqual (_T_0, 0x0C))
                                                        {
                                                            Return (GRPC)
                                                        }
                                                        Else
                                                        {
                                                            If (LEqual (_T_0, 0x0D))
                                                            {
                                                                Return (GRPD)
                                                            }
                                                            Else
                                                            {
                                                                Return (Zero)
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }

                        Method (GITM, 1, Serialized)
                        {
                            CreateDWordField (Arg0, Zero, PRM0)
                            CreateByteField (Arg0, 0x03, GPID)
                            Store (One, ASB0)
                            Name (_T_0, Zero)
                            Store (GPID, _T_0)
                            If (LEqual (_T_0, Zero))
                            {
                                GIT0 (PRM0)
                            }
                            Else
                            {
                                If (LEqual (_T_0, 0x03))
                                {
                                    GIT3 (PRM0)
                                }
                                Else
                                {
                                    If (LEqual (_T_0, 0x04))
                                    {
                                        GIT4 (PRM0)
                                    }
                                    Else
                                    {
                                        If (LEqual (_T_0, 0x05))
                                        {
                                            GIT5 (PRM0)
                                        }
                                        Else
                                        {
                                            If (LEqual (_T_0, 0x06))
                                            {
                                                GIT6 (PRM0)
                                            }
                                            Else
                                            {
                                                If (LEqual (_T_0, 0x09))
                                                {
                                                    GIT9 (PRM0)
                                                }
                                                Else
                                                {
                                                    If (LEqual (_T_0, 0x0B))
                                                    {
                                                        GITB (PRM0)
                                                    }
                                                    Else
                                                    {
                                                        If (LEqual (_T_0, 0x0C))
                                                        {
                                                            GITC (PRM0)
                                                        }
                                                        Else
                                                        {
                                                            If (LEqual (_T_0, 0x0D))
                                                            {
                                                                GITD (PRM0)
                                                            }
                                                            Else
                                                            {
                                                                Store (Zero, ASB0)
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }

                            Return (ASBF)
                        }

                        Method (SITM, 1, Serialized)
                        {
                            CreateDWordField (Arg0, Zero, PRM0)
                            CreateDWordField (Arg0, 0x04, PRM1)
                            CreateDWordField (Arg0, 0x08, PRM2)
                            CreateByteField (Arg0, 0x03, GPID)
                            Store (One, ASB0)
                            Name (_T_0, Zero)
                            Store (GPID, _T_0)
                            If (LEqual (_T_0, Zero))
                            {
                                SIT0 (PRM0, PRM1, PRM2)
                            }
                            Else
                            {
                                If (LEqual (_T_0, 0x03))
                                {
                                    SIT3 (PRM0, PRM1, PRM2)
                                }
                                Else
                                {
                                    If (LEqual (_T_0, 0x04))
                                    {
                                        SIT4 (PRM0, PRM1, PRM2)
                                    }
                                    Else
                                    {
                                        If (LEqual (_T_0, 0x05))
                                        {
                                            SIT5 (PRM0, PRM1, PRM2)
                                        }
                                        Else
                                        {
                                            If (LEqual (_T_0, 0x06))
                                            {
                                                SIT6 (PRM0, PRM1, PRM2)
                                            }
                                            Else
                                            {
                                                If (LEqual (_T_0, 0x09))
                                                {
                                                    SIT9 (PRM0, PRM1, PRM2)
                                                }
                                                Else
                                                {
                                                    If (LEqual (_T_0, 0x0B))
                                                    {
                                                        SITB (PRM0, PRM1, PRM2)
                                                    }
                                                    Else
                                                    {
                                                        If (LEqual (_T_0, 0x0C))
                                                        {
                                                            SITC (PRM0, PRM1, PRM2)
                                                        }
                                                        Else
                                                        {
                                                            If (LEqual (_T_0, 0x0D))
                                                            {
                                                                SITD (PRM0, PRM1, PRM2)
                                                            }
                                                            Else
                                                            {
                                                                Store (Zero, ASB0)
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }

                            Return (ASBF)
                        }

                        Method (OP2V, 2, NotSerialized)
                        {
                            Store (DerefOf (Index (Arg1, 0x04)), Local0)
                            Store (DerefOf (Index (Arg1, 0x05)), Local1)
                            Multiply (Arg0, Local1, Local1)
                            Add (Local0, Local1, Local0)
                            Return (Local0)
                        }

                        Method (V2OP, 2, NotSerialized)
                        {
                            Store (DerefOf (Index (Arg1, 0x04)), Local0)
                            Store (DerefOf (Index (Arg1, 0x05)), Local1)
                            Subtract (Arg0, Local0, Local0)
                            Divide (Local0, Local1, Local1, Local0)
                            Return (Local0)
                        }
                    }
                }

                Device (HPET)
                {
                    Name (_HID, EisaId ("PNP0103"))
                    Name (CRS, ResourceTemplate ()
                    {
                        Memory32Fixed (ReadOnly,
                            0xFED00000,         // Address Base
                            0x00000400,         // Address Length
                            _Y04)
                    })
                    Method (_STA, 0, NotSerialized)
                    {
                        Return (0x0F)
                    }

                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateDWordField (CRS, \_SB.PCI0.SBRG.HPET._Y04._BAS, HPT)
                        Store (0xFED00000, HPT)
                        Return (CRS)
                    }
                }

                Scope (\)
                {
                    Field (RAMW, ByteAcc, NoLock, Preserve)
                    {
                                Offset (0x28), 
                        AWEN,   1
                    }
                }

                Scope (\_SB)
                {
                    Device (\AWY)
                    {
                        Name (_HID, "AWY0001")
                        OperationRegion (PMIO, SystemIO, 0x0CD6, 0x02)
                        Field (PMIO, ByteAcc, NoLock, Preserve)
                        {
                            HIDX,   8, 
                            HDAT,   8
                        }

                        IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve)
                        {
                                    Offset (0x7C), 
                                ,   2, 
                            PLED,   2
                        }

                        Method (BLNK, 0, NotSerialized)
                        {
                            Store (0x02, PLED)
                        }

                        Method (LDON, 0, NotSerialized)
                        {
                            Store (0x03, PLED)
                        }

                        Method (SMOD, 1, NotSerialized)
                        {
                            If (Arg0)
                            {
                                LDON ()
                            }
                            Else
                            {
                                BLNK ()
                            }
                        }

                        Method (_STA, 0, NotSerialized)
                        {
                            If (AWEN)
                            {
                                Return (0x0F)
                            }

                            Return (Zero)
                        }
                    }
                }

                Device (^PCIE)
                {
                    Name (_HID, EisaId ("PNP0C02"))
                    Name (_UID, 0x11)
                    Name (CRS, ResourceTemplate ()
                    {
                        Memory32Fixed (ReadOnly,
                            0xE0000000,         // Address Base
                            0x10000000,         // Address Length
                            _Y05)
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateDWordField (CRS, \_SB.PCI0.PCIE._Y05._BAS, BAS1)
                        CreateDWordField (CRS, \_SB.PCI0.PCIE._Y05._LEN, LEN1)
                        Store (PCIB, BAS1)
                        Store (PCIL, LEN1)
                        Return (CRS)
                    }
                }

                Scope (\_GPE)
                {
                    Method (_L11, 0, NotSerialized)
                    {
                        Notify (\_SB.PCI0.SBRG.ASOC, One)
                        Sleep (0x03E8)
                    }
                }

                Scope (ASOC)
                {
                    Name (VESL, Zero)
                    Method (SPLV, 1, Serialized)
                    {
                        And (Arg0, 0xFFFF, VESL)
                        Store (VESL, PAR0)
                        ISMI (0x88)
                        Store (And (PAR0, 0xFFFF), Local0)
                        Return (Local0)
                    }

                    Method (GPLV, 0, Serialized)
                    {
                        Return (VESL)
                    }
                }

                Device (OMSC)
                {
                    Name (_HID, EisaId ("PNP0C02"))
                    Name (_UID, Zero)
                    Name (CRS, ResourceTemplate ()
                    {
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y06)
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y07)
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        If (APIC)
                        {
                            CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y06._LEN, ML01)
                            CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y06._BAS, MB01)
                            CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y07._LEN, ML02)
                            CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y07._BAS, MB02)
                            Store (0xFEC00000, MB01)
                            Store (0x1000, ML01)
                            Store (0xFEE00000, MB02)
                            Store (0x1000, ML02)
                        }

                        Return (CRS)
                    }
                }

                Device (^^RMEM)
                {
                    Name (_HID, EisaId ("PNP0C01"))
                    Name (_UID, One)
                    Name (CRS, ResourceTemplate ()
                    {
                        Memory32Fixed (ReadWrite,
                            0x00000000,         // Address Base
                            0x000A0000,         // Address Length
                            )
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y08)
                        Memory32Fixed (ReadOnly,
                            0x000E0000,         // Address Base
                            0x00020000,         // Address Length
                            _Y09)
                        Memory32Fixed (ReadWrite,
                            0x00100000,         // Address Base
                            0x00000000,         // Address Length
                            _Y0A)
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y0B)
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateDWordField (CRS, \_SB.RMEM._Y08._BAS, BAS1)
                        CreateDWordField (CRS, \_SB.RMEM._Y08._LEN, LEN1)
                        CreateDWordField (CRS, \_SB.RMEM._Y09._BAS, BAS2)
                        CreateDWordField (CRS, \_SB.RMEM._Y09._LEN, LEN2)
                        CreateDWordField (CRS, \_SB.RMEM._Y0A._LEN, LEN3)
                        CreateDWordField (CRS, \_SB.RMEM._Y0B._BAS, BAS4)
                        CreateDWordField (CRS, \_SB.RMEM._Y0B._LEN, LEN4)
                        If (OSFL ()) {}
                        Else
                        {
                            If (MG1B)
                            {
                                If (LGreater (MG1B, 0x000C0000))
                                {
                                    Store (0x000C0000, BAS1)
                                    Subtract (MG1B, BAS1, LEN1)
                                }
                            }
                            Else
                            {
                                Store (0x000C0000, BAS1)
                                Store (0x00020000, LEN1)
                            }

                            If (Add (MG1B, MG1L, Local0))
                            {
                                Store (Local0, BAS2)
                                Subtract (0x00100000, BAS2, LEN2)
                            }
                        }

                        Subtract (MG2B, 0x00100000, LEN3)
                        Store (MH1B, BAS4)
                        Subtract (Zero, BAS4, LEN4)
                        Return (CRS)
                    }
                }

                Device (RMSC)
                {
                    Name (_HID, EisaId ("PNP0C02"))
                    Name (_UID, 0x10)
                    Name (CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0010,             // Range Minimum
                            0x0010,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x0022,             // Range Minimum
                            0x0022,             // Range Maximum
                            0x00,               // Alignment
                            0x1E,               // Length
                            )
                        IO (Decode16,
                            0x0062,             // Range Minimum
                            0x0062,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x0065,             // Range Minimum
                            0x0065,             // Range Maximum
                            0x00,               // Alignment
                            0x0B,               // Length
                            )
                        IO (Decode16,
                            0x0072,             // Range Minimum
                            0x0072,             // Range Maximum
                            0x00,               // Alignment
                            0x0E,               // Length
                            )
                        IO (Decode16,
                            0x0080,             // Range Minimum
                            0x0080,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0084,             // Range Minimum
                            0x0084,             // Range Maximum
                            0x00,               // Alignment
                            0x03,               // Length
                            )
                        IO (Decode16,
                            0x0088,             // Range Minimum
                            0x0088,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x008C,             // Range Minimum
                            0x008C,             // Range Maximum
                            0x00,               // Alignment
                            0x03,               // Length
                            )
                        IO (Decode16,
                            0x0090,             // Range Minimum
                            0x0090,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x00A2,             // Range Minimum
                            0x00A2,             // Range Maximum
                            0x00,               // Alignment
                            0x1E,               // Length
                            )
                        IO (Decode16,
                            0x00B1,             // Range Minimum
                            0x00B1,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x00E0,             // Range Minimum
                            0x00E0,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x04D0,             // Range Minimum
                            0x04D0,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x040B,             // Range Minimum
                            0x040B,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x04D6,             // Range Minimum
                            0x04D6,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0C00,             // Range Minimum
                            0x0C00,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x0C14,             // Range Minimum
                            0x0C14,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0C50,             // Range Minimum
                            0x0C50,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x0C52,             // Range Minimum
                            0x0C52,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0C6C,             // Range Minimum
                            0x0C6C,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0C6F,             // Range Minimum
                            0x0C6F,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0CD0,             // Range Minimum
                            0x0CD0,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x0CD2,             // Range Minimum
                            0x0CD2,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x0CD4,             // Range Minimum
                            0x0CD4,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x0CD6,             // Range Minimum
                            0x0CD6,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x0CD8,             // Range Minimum
                            0x0CD8,             // Range Maximum
                            0x00,               // Alignment
                            0x08,               // Length
                            )
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y0C)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y0D)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y0E)
                        IO (Decode16,
                            0x0900,             // Range Minimum
                            0x0900,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x0910,             // Range Minimum
                            0x0910,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0xFE00,             // Range Minimum
                            0xFE00,             // Range Maximum
                            0x00,               // Alignment
                            0xFF,               // Length
                            )
                        Memory32Fixed (ReadOnly,
                            0xFFB80000,         // Address Base
                            0x00080000,         // Address Length
                            )
                        Memory32Fixed (ReadOnly,
                            0xFEC10000,         // Address Base
                            0x00000020,         // Address Length
                            )
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0C._MIN, GP00)
                        CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0C._MAX, GP01)
                        CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y0C._LEN, GP0L)
                        Store (PMBS, GP00)
                        Store (PMBS, GP01)
                        Store (PMLN, GP0L)
                        If (SMBB)
                        {
                            CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0D._MIN, GP10)
                            CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0D._MAX, GP11)
                            CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y0D._LEN, GP1L)
                            Store (SMBB, GP10)
                            Store (SMBB, GP11)
                            Store (SMBL, GP1L)
                        }

                        If (GPBS)
                        {
                            CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0E._MIN, GP20)
                            CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0E._MAX, GP21)
                            CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y0E._LEN, GP2L)
                            Store (GPBS, GP20)
                            Store (GPBS, GP21)
                            Store (GPLN, GP2L)
                        }

                        Return (CRS)
                    }
                }

                Device (PS2K)
                {
                    Name (_HID, EisaId ("PNP0303"))
                    Name (_CID, EisaId ("PNP030B"))
                    Method (_STA, 0, NotSerialized)
                    {
                        ShiftLeft (One, 0x0A, Local0)
                        If (And (IOST, Local0))
                        {
                            Return (0x0F)
                        }

                        Return (Zero)
                    }

                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0060,             // Range Minimum
                            0x0060,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0064,             // Range Minimum
                            0x0064,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IRQNoFlags ()
                            {1}
                    })
                }

                Method (PS2K._PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x03, 0x03))
                }

                Device (PS2M)
                {
                    Name (_HID, EisaId ("PNP0F03"))
                    Name (_CID, EisaId ("PNP0F13"))
                    Method (_STA, 0, NotSerialized)
                    {
                        ShiftLeft (One, 0x0C, Local0)
                        If (And (IOST, Local0))
                        {
                            Return (0x0F)
                        }

                        Return (Zero)
                    }

                    Name (M2R0, ResourceTemplate ()
                    {
                        IRQNoFlags ()
                            {12}
                    })
                    Name (M2R1, ResourceTemplate ()
                    {
                        FixedIO (
                            0x0060,             // Address
                            0x01,               // Length
                            )
                        FixedIO (
                            0x0064,             // Address
                            0x01,               // Length
                            )
                        IRQNoFlags ()
                            {12}
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        ShiftLeft (One, 0x0A, Local0)
                        If (And (IOST, Local0))
                        {
                            Return (M2R0)
                        }
                        Else
                        {
                            Return (M2R1)
                        }
                    }
                }

                Method (PS2M._PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x03, 0x03))
                }

                Device (SIOR)
                {
                    Name (_HID, EisaId ("PNP0C02"))
                    Method (_UID, 0, NotSerialized)
                    {
                        Return (SPIO)
                    }

                    Name (CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y0F)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y10)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y11)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y12)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y14)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y13)
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        If (LAnd (LNotEqual (SPIO, 0x03F0), LGreater (SPIO, 0xF0)))
                        {
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y0F._MIN, GP10)
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y0F._MAX, GP11)
                            CreateByteField (CRS, \_SB.PCI0.SBRG.SIOR._Y0F._LEN, GPL1)
                            Store (SPIO, GP10)
                            Store (SPIO, GP11)
                            Store (0x02, GPL1)
                        }

                        If (IOPB)
                        {
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y10._MIN, GP20)
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y10._MAX, GP21)
                            CreateByteField (CRS, \_SB.PCI0.SBRG.SIOR._Y10._LEN, GPL2)
                            Store (IOPB, GP20)
                            Store (IOPB, GP21)
                            Store (IOPL, GPL2)
                        }

                        If (IOEB)
                        {
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y11._MIN, GP30)
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y11._MAX, GP31)
                            CreateByteField (CRS, \_SB.PCI0.SBRG.SIOR._Y11._LEN, GPL3)
                            Store (IOEB, GP30)
                            Store (IOEB, GP31)
                            Store (IOEL, GPL3)
                        }

                        If (IOGB)
                        {
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y12._MIN, GP40)
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y12._MAX, GP41)
                            CreateByteField (CRS, \_SB.PCI0.SBRG.SIOR._Y12._LEN, GPL4)
                            Store (IOGB, GP40)
                            Store (IOGB, GP41)
                            If (LEqual (CIRS (0x10), 0x0F))
                            {
                                Store (One, GPL4)
                                CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y13._MIN, GP60)
                                CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y13._MAX, GP61)
                                CreateByteField (CRS, \_SB.PCI0.SBRG.SIOR._Y13._LEN, GPL6)
                                Add (IOGB, 0x02, GP60)
                                Add (IOGB, 0x02, GP61)
                                Subtract (IOGL, 0x02, GPL6)
                            }
                            Else
                            {
                                Store (IOGL, GPL4)
                            }
                        }

                        If (IOSB)
                        {
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y14._MIN, GP50)
                            CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y14._MAX, GP51)
                            CreateByteField (CRS, \_SB.PCI0.SBRG.SIOR._Y14._LEN, GPL5)
                            Store (IOSB, GP50)
                            Store (IOSB, GP51)
                            Store (IOSL, GPL5)
                        }

                        Return (CRS)
                    }

                    Method (CIRS, 1, NotSerialized)
                    {
                        ENFG (CGLD (Arg0))
                        If (ACTR)
                        {
                            Store (0x0F, Local0)
                        }
                        Else
                        {
                            If (IOAH)
                            {
                                Store (0x0D, Local0)
                            }
                            Else
                            {
                                Store (Zero, Local0)
                            }
                        }

                        EXFG ()
                        Return (Local0)
                    }
                }

                Name (DCAT, Package (0x16)
                {
                    One, 
                    0x02, 
                    0x03, 
                    Zero, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0x0A, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF, 
                    0xFF
                })
                Name (IKEY, Package (0x02)
                {
                    Package (0x04)
                    {
                        0x87, 
                        One, 
                        0x55, 
                        0x55
                    }, 

                    Package (0x04)
                    {
                        0x87, 
                        One, 
                        0x55, 
                        0xAA
                    }
                })
                Name (KBFG, One)
                Name (MSFG, One)
                Name (UR1F, One)
                Method (ENFG, 1, NotSerialized)
                {
                    Store (Zero, Local1)
                    If (LEqual (SPIO, 0x2E))
                    {
                        Store (Zero, Local1)
                    }

                    If (LEqual (SPIO, 0x4E))
                    {
                        Store (One, Local1)
                    }

                    Store (Zero, Local0)
                    While (LNotEqual (Local0, 0x04))
                    {
                        Store (DerefOf (Index (DerefOf (Index (IKEY, Local1)), Local0)), 
                            INDX)
                        Increment (Local0)
                    }

                    Store (Arg0, LDN)
                }

                Method (EXFG, 0, NotSerialized)
                {
                    Store (0x02, INDX)
                    Store (0x02, DATA)
                }

                Method (LPTM, 1, NotSerialized)
                {
                    ENFG (CGLD (Arg0))
                    And (OPT0, 0x02, Local0)
                    EXFG ()
                    Return (Local0)
                }

                Method (UHID, 1, NotSerialized)
                {
                    ENFG (CGLD (Arg0))
                    And (OPT0, 0x70, Local0)
                    EXFG ()
                    If (Local0)
                    {
                        Return (0x1005D041)
                    }

                    Return (0x0105D041)
                }

                Method (ORF0, 2, NotSerialized)
                {
                    ENFG (Arg0)
                    Or (OPT0, Arg1, OPT0)
                    EXFG ()
                }

                Method (ORF1, 2, NotSerialized)
                {
                    ENFG (Arg0)
                    Or (OPT1, Arg1, OPT1)
                    EXFG ()
                }

                Method (ORF2, 2, NotSerialized)
                {
                    ENFG (Arg0)
                    Or (OPT2, Arg1, OPT2)
                    EXFG ()
                }

                Method (ANF0, 2, NotSerialized)
                {
                    ENFG (Arg0)
                    And (OPT0, Arg1, OPT0)
                    EXFG ()
                }

                Method (ANF2, 2, NotSerialized)
                {
                    ENFG (Arg0)
                    And (OPT2, Arg1, OPT2)
                    EXFG ()
                }

                Method (ANF4, 2, NotSerialized)
                {
                    ENFG (Arg0)
                    And (OPT4, Arg1, OPT4)
                    EXFG ()
                }

                Method (STF0, 2, NotSerialized)
                {
                    ENFG (Arg0)
                    Store (Arg1, OPT0)
                    EXFG ()
                }

                Method (STF1, 2, NotSerialized)
                {
                    ENFG (Arg0)
                    Store (Arg1, OPT1)
                    EXFG ()
                }

                Method (SIOS, 1, NotSerialized)
                {
                    Store ("SIOS", Debug)
                    If (LLess (Arg0, 0x05))
                    {
                        ENFG (0x04)
                        Store (One, ACTR)
                        EXFG ()
                        ANF4 (0x04, 0xFC)
                        If (KBFG)
                        {
                            ORF1 (0x04, 0x08)
                            ORF0 (0x04, 0x08)
                        }
                        Else
                        {
                            ANF0 (0x04, 0xF7)
                            ENFG (0x05)
                            Store (Zero, ACTR)
                            EXFG ()
                        }

                        If (MSFG)
                        {
                            ORF1 (0x04, 0x10)
                            ORF0 (0x04, 0x10)
                        }
                        Else
                        {
                            ANF0 (0x04, 0xEF)
                            ENFG (0x06)
                            Store (Zero, ACTR)
                            EXFG ()
                        }

                        ANF2 (0x04, 0xF0)
                        ENFG (0x07)
                        And (OP29, 0xEF, OP29)
                        And (OP28, 0xFC, OP28)
                        EXFG ()
                    }
                }

                Method (SIOW, 1, NotSerialized)
                {
                    Store ("SIOW", Debug)
                    STF0 (0x04, Zero)
                    STF1 (0x04, 0xFF)
                    ENFG (0x07)
                    Or (OP29, 0x10, OP29)
                    Or (OP28, 0x03, OP28)
                    EXFG ()
                    ENFG (0x05)
                    Or (ACTR, One, ACTR)
                    EXFG ()
                    ENFG (0x06)
                    Or (ACTR, One, ACTR)
                    EXFG ()
                }

                Method (SIOH, 0, NotSerialized)
                {
                    Store ("SIOH", Debug)
                }

                OperationRegion (IOID, SystemIO, SPIO, 0x02)
                Field (IOID, ByteAcc, NoLock, Preserve)
                {
                    INDX,   8, 
                    DATA,   8
                }

                IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
                {
                            Offset (0x07), 
                    LDN,    8, 
                            Offset (0x28), 
                    OP28,   8, 
                    OP29,   8, 
                            Offset (0x30), 
                    ACTR,   8, 
                            Offset (0x60), 
                    IOAH,   8, 
                    IOAL,   8, 
                    IOH2,   8, 
                    IOL2,   8, 
                            Offset (0x70), 
                    INTR,   8, 
                            Offset (0x74), 
                    DMCH,   8, 
                            Offset (0xF0), 
                    OPT0,   8, 
                    OPT1,   8, 
                    OPT2,   8, 
                    OPT3,   8, 
                    OPT4,   8
                }

                Method (PS2K._PSW, 1, NotSerialized)
                {
                    If (Arg0)
                    {
                        Store (One, KBFG)
                    }
                    Else
                    {
                        Store (Zero, KBFG)
                    }
                }

                Method (PS2M._PSW, 1, NotSerialized)
                {
                    If (Arg0)
                    {
                        Store (One, MSFG)
                    }
                    Else
                    {
                        Store (Zero, MSFG)
                    }
                }

                Method (UAR1._PSW, 1, NotSerialized)
                {
                    If (Arg0)
                    {
                        Store (One, UR1F)
                    }
                    Else
                    {
                        Store (Zero, UR1F)
                    }
                }

                Method (CGLD, 1, NotSerialized)
                {
                    Return (DerefOf (Index (DCAT, Arg0)))
                }

                Method (DSTA, 1, NotSerialized)
                {
                    ENFG (CGLD (Arg0))
                    Store (ACTR, Local0)
                    EXFG ()
                    If (LEqual (Local0, 0xFF))
                    {
                        Return (Zero)
                    }

                    And (Local0, One, Local0)
                    Or (IOST, ShiftLeft (Local0, Arg0), IOST)
                    If (Local0)
                    {
                        Return (0x0F)
                    }
                    Else
                    {
                        If (And (ShiftLeft (One, Arg0), IOST))
                        {
                            Return (0x0D)
                        }
                        Else
                        {
                            Return (Zero)
                        }
                    }
                }

                Method (DCNT, 2, NotSerialized)
                {
                    ENFG (CGLD (Arg0))
                    ShiftLeft (IOAH, 0x08, Local1)
                    Or (IOAL, Local1, Local1)
                    If (LAnd (LLess (DMCH, 0x04), LNotEqual (And (DMCH, 0x03, 
                        Local1), Zero)))
                    {
                        RDMA (Arg0, Arg1, Increment (Local1))
                    }

                    Store (Arg1, ACTR)
                    RRIO (Arg0, Arg1, Local1, 0x08)
                    EXFG ()
                }

                Name (CRS1, ResourceTemplate ()
                {
                    IO (Decode16,
                        0x0000,             // Range Minimum
                        0x0000,             // Range Maximum
                        0x01,               // Alignment
                        0x00,               // Length
                        _Y17)
                    IRQNoFlags (_Y15)
                        {}
                    DMA (Compatibility, NotBusMaster, Transfer8, _Y16)
                        {}
                })
                CreateWordField (CRS1, \_SB.PCI0.SBRG._Y15._INT, IRQM)
                CreateByteField (CRS1, \_SB.PCI0.SBRG._Y16._DMA, DMAM)
                CreateWordField (CRS1, \_SB.PCI0.SBRG._Y17._MIN, IO11)
                CreateWordField (CRS1, \_SB.PCI0.SBRG._Y17._MAX, IO12)
                CreateByteField (CRS1, \_SB.PCI0.SBRG._Y17._LEN, LEN1)
                Name (CRS2, ResourceTemplate ()
                {
                    IO (Decode16,
                        0x0000,             // Range Minimum
                        0x0000,             // Range Maximum
                        0x01,               // Alignment
                        0x00,               // Length
                        _Y1A)
                    IO (Decode16,
                        0x0000,             // Range Minimum
                        0x0000,             // Range Maximum
                        0x01,               // Alignment
                        0x00,               // Length
                        _Y1B)
                    IRQNoFlags (_Y18)
                        {6}
                    DMA (Compatibility, NotBusMaster, Transfer8, _Y19)
                        {2}
                })
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y18._INT, IRQE)
                CreateByteField (CRS2, \_SB.PCI0.SBRG._Y19._DMA, DMAE)
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y1A._MIN, IO21)
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y1A._MAX, IO22)
                CreateByteField (CRS2, \_SB.PCI0.SBRG._Y1A._LEN, LEN2)
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y1B._MIN, IO31)
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y1B._MAX, IO32)
                CreateByteField (CRS2, \_SB.PCI0.SBRG._Y1B._LEN, LEN3)
                Method (DCRS, 2, NotSerialized)
                {
                    ENFG (CGLD (Arg0))
                    ShiftLeft (IOAH, 0x08, IO11)
                    Or (IOAL, IO11, IO11)
                    Store (IO11, IO12)
                    Subtract (FindSetRightBit (IO11), One, Local0)
                    ShiftLeft (One, Local0, LEN1)
                    If (INTR)
                    {
                        ShiftLeft (One, INTR, IRQM)
                    }
                    Else
                    {
                        Store (Zero, IRQM)
                    }

                    If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero)))
                    {
                        Store (Zero, DMAM)
                    }
                    Else
                    {
                        And (DMCH, 0x03, Local1)
                        ShiftLeft (One, Local1, DMAM)
                    }

                    EXFG ()
                    Return (CRS1)
                }

                Method (DSRS, 2, NotSerialized)
                {
                    CreateWordField (Arg0, 0x09, IRQM)
                    CreateByteField (Arg0, 0x0C, DMAM)
                    CreateWordField (Arg0, 0x02, IO11)
                    ENFG (CGLD (Arg1))
                    ShiftLeft (IOAH, 0x08, Local1)
                    Or (IOAL, Local1, Local1)
                    RRIO (Arg1, Zero, Local1, 0x08)
                    RRIO (Arg1, One, IO11, 0x08)
                    And (IO11, 0xFF, IOAL)
                    ShiftRight (IO11, 0x08, IOAH)
                    If (IRQM)
                    {
                        FindSetRightBit (IRQM, Local0)
                        Subtract (Local0, One, INTR)
                    }
                    Else
                    {
                        Store (Zero, INTR)
                    }

                    If (DMAM)
                    {
                        FindSetRightBit (DMAM, Local0)
                        Subtract (Local0, One, DMCH)
                    }
                    Else
                    {
                        Store (0x04, DMCH)
                    }

                    EXFG ()
                    DCNT (Arg1, One)
                }
            }

            Device (P0PC)
            {
                Name (_ADR, 0x00140004)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x04, 0x04))
                }

                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR0C)
                    }

                    Return (PR0C)
                }
            }

            Device (UHC1)
            {
                Name (_ADR, 0x00120000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0B, 0x04))
                }
            }

            Device (UHC2)
            {
                Name (_ADR, 0x00120001)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0B, 0x04))
                }
            }

            Device (UHC3)
            {
                Name (_ADR, 0x00120002)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0B, 0x04))
                }
            }

            Device (USB4)
            {
                Name (_ADR, 0x00130000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0B, 0x04))
                }
            }

            Device (UHC5)
            {
                Name (_ADR, 0x00130001)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0B, 0x04))
                }
            }

            Device (UHC6)
            {
                Name (_ADR, 0x00130002)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0B, 0x04))
                }
            }

            Device (UHC7)
            {
                Name (_ADR, 0x00140005)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0B, 0x04))
                }
            }

            Device (SATA)
            {
                Name (_ADR, 0x00110000)
            }
        }

        Scope (\_GPE)
        {
            Method (_L18, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.PCE2, 0x02)
                Notify (\_SB.PCI0.PCE3, 0x02)
                Notify (\_SB.PCI0.PCE4, 0x02)
                Notify (\_SB.PCI0.PCE5, 0x02)
                Notify (\_SB.PCI0.PCE6, 0x02)
                Notify (\_SB.PCI0.PCE7, 0x02)
                Notify (\_SB.PCI0.PCE9, 0x02)
                Notify (\_SB.PCI0.PCEA, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L1B, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.SBAZ, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L03, 0, NotSerialized)
            {
                \_SB.PCI0.SBRG.SIOH ()
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L04, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.P0PC, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L0B, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.UHC1, 0x02)
                Notify (\_SB.PCI0.UHC2, 0x02)
                Notify (\_SB.PCI0.UHC3, 0x02)
                Notify (\_SB.PCI0.USB4, 0x02)
                Notify (\_SB.PCI0.UHC5, 0x02)
                Notify (\_SB.PCI0.UHC6, 0x02)
                Notify (\_SB.PCI0.UHC7, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }
        }

        Device (PWRB)
        {
            Name (_HID, EisaId ("PNP0C0C"))
            Name (_UID, 0xAA)
            Name (_STA, 0x0B)
            Method (_PRW, 0, NotSerialized)
            {
                Return (GPRW (0x03, 0x03))
            }
        }
    }

    Scope (_SB.PCI0.SBRG.ASOC)
    {
        Name (G0T0, Package (0x07)
        {
            0x00060000, 
            "AP version", 
            0x40000000, 
            Zero, 
            Zero, 
            One, 
            0x02
        })
        Name (G0T1, Package (0x07)
        {
            0x00060001, 
            "Feature Flag", 
            One, 
            Zero, 
            Zero, 
            One, 
            0x08
        })
        Name (G0T3, Package (0x07)
        {
            0x00020003, 
            "CnQ Flag", 
            0x40000000, 
            Zero, 
            Zero, 
            One, 
            0x02
        })
        Name (GRP0, Package (0x03)
        {
            G0T0, 
            G0T1, 
            G0T3
        })
        Method (GIT0, 1, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, Zero)) {}
            Else
            {
                If (LEqual (_T_0, One)) {}
                Else
                {
                    If (LEqual (_T_0, 0x03))
                    {
                        Store (GNVS (0x173F), ASB1)
                    }
                    Else
                    {
                        Store (Zero, ASB0)
                    }
                }
            }
        }

        Method (SIT0, 3, NotSerialized)
        {
            If (And (Arg2, 0xFFFF))
            {
                Name (_T_0, Zero)
                Store (And (Arg0, 0xFFFF), _T_0)
                If (LEqual (_T_0, Zero)) {}
                Else
                {
                    If (LEqual (_T_0, One)) {}
                    Else
                    {
                        If (LEqual (_T_0, 0x03)) {}
                        Else
                        {
                            Store (Zero, ASB0)
                        }
                    }
                }
            }
            Else
            {
                Store (0x03, ASB0)
            }
        }
    }

    Scope (_SB.PCI0.SBRG.ASOC)
    {
        Name (G311, Package (0x07)
        {
            0x03010011, 
            "CPU Frequency", 
            Zero, 
            Zero, 
            0x4E20, 
            0x64, 
            0xC9
        })
        Name (G312, Package (0x09)
        {
            0x03820012, 
            "CPU Voltage", 
            Zero, 
            Zero, 
            0xFF001F40, 
            0x7D, 
            0x4A, 
            One, 
            "Auto"
        })
        Name (G313, Package (0x07)
        {
            0x03060013, 
            "CPU Ratio", 
            Zero, 
            0x10, 
            0xFF000028, 
            0x05, 
            0x11
        })
        Name (G314, Package (0x09)
        {
            0x03860014, 
            "Hyper Transport Ratio", 
            0x40000000, 
            Zero, 
            0xFF000028, 
            0x05, 
            0x11, 
            One, 
            "Auto"
        })
        Name (G331, Package (0x0B)
        {
            0x03080031, 
            "DRAM Frequency", 
            Zero, 
            Zero, 
            0x06, 
            "Auto", 
            "400", 
            "533", 
            "667", 
            "800", 
            "1066"
        })
        Name (G351, Package (0x07)
        {
            0x03010051, 
            "PCIE Frequency", 
            Zero, 
            Zero, 
            0x2710, 
            0x64, 
            0x33
        })
        Name (GRP3, Package (0x06)
        {
            G311, 
            G312, 
            G313, 
            G314, 
            G331, 
            G351
        })
        Method (GIT3, 1, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, 0x11))
            {
                Divide (0x4E20, 0x64, , Local0)
                Subtract (GNVS (0xA2B8), Local0, ASB1)
            }
            Else
            {
                If (LEqual (_T_0, 0x12))
                {
                    Store (GNVS (0x7388), ASB1)
                }
                Else
                {
                    If (LEqual (_T_0, 0x13))
                    {
                        Store (GNVS (0x626A), Local0)
                        If (LEqual (Zero, Local0))
                        {
                            Store (0x10, Local0)
                        }
                        Else
                        {
                            Subtract (Local0, One, Local0)
                        }

                        Store (Local0, ASB1)
                    }
                    Else
                    {
                        If (LEqual (_T_0, 0x14))
                        {
                            Name (_T_1, Zero)
                            Store (GNVS (0x4514), _T_1)
                            If (LEqual (_T_1, Zero))
                            {
                                Store (Zero, ASB1)
                            }
                            Else
                            {
                                If (LEqual (_T_1, 0x02))
                                {
                                    Store (One, ASB1)
                                }
                                Else
                                {
                                    If (LEqual (_T_1, 0x04))
                                    {
                                        Store (0x02, ASB1)
                                    }
                                    Else
                                    {
                                        If (LEqual (_T_1, 0x05))
                                        {
                                            Store (0x03, ASB1)
                                        }
                                        Else
                                        {
                                            If (LEqual (_T_1, 0x06))
                                            {
                                                Store (0x04, ASB1)
                                            }
                                            Else
                                            {
                                                If (LEqual (_T_1, 0x07))
                                                {
                                                    Store (PAR3, ASB1)
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        Else
                        {
                            If (LEqual (_T_0, 0x31))
                            {
                                Store (GNVS (0x267A), Local0)
                                If (LEqual (Zero, Local0))
                                {
                                    Store (Local0, ASB1)
                                }
                                Else
                                {
                                    Store (GNVS (0x35A8), Local0)
                                    Add (Local0, One, Local0)
                                    Store (Local0, ASB1)
                                }
                            }
                            Else
                            {
                                If (LEqual (_T_0, 0x51))
                                {
                                    Divide (0x2710, 0x64, , Local0)
                                    Subtract (GNVS (0x8380), Local0, ASB1)
                                }
                                Else
                                {
                                    Store (Zero, ASB0)
                                }
                            }
                        }
                    }
                }
            }
        }

        Method (SIT3, 3, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, 0x11))
            {
                Divide (0x4E20, 0x64, , Local0)
                Add (Arg1, Local0, Local0)
                If (LNotEqual (GNVS (0xA2B8), Local0))
                {
                    SNVS (0xA2B8, Local0)
                    Or (ASB0, 0x02, ASB0)
                }
            }
            Else
            {
                If (LEqual (_T_0, 0x12))
                {
                    If (LNotEqual (GNVS (0x7388), Arg1))
                    {
                        SNVS (0x7388, Arg1)
                        Or (ASB0, 0x02, ASB0)
                    }
                }
                Else
                {
                    If (LEqual (_T_0, 0x13))
                    {
                        Add (Arg1, One, Arg1)
                        If (LNotEqual (GNVS (0x626A), Arg1))
                        {
                            SNVS (0x626A, Arg1)
                            Or (ASB0, 0x02, ASB0)
                        }
                    }
                    Else
                    {
                        If (LEqual (_T_0, 0x14))
                        {
                            If (LNotEqual (GNVS (0x4514), Arg1))
                            {
                                SNVS (0x4514, Arg1)
                                Or (ASB0, 0x02, ASB0)
                            }
                        }
                        Else
                        {
                            If (LEqual (_T_0, 0x31))
                            {
                                If (LEqual (Zero, Arg1))
                                {
                                    SNVS (0x267A, Arg1)
                                }
                                Else
                                {
                                    SNVS (0x267A, 0x02)
                                    Subtract (Arg1, One, Arg1)
                                    SNVS (0x35A8, Arg1)
                                    Or (ASB0, 0x02, ASB0)
                                }
                            }
                            Else
                            {
                                If (LEqual (_T_0, 0x51))
                                {
                                    Divide (0x2710, 0x64, , Local0)
                                    Add (Arg1, Local0, Local0)
                                    If (LNotEqual (GNVS (0x8380), Local0))
                                    {
                                        SNVS (0x8380, Local0)
                                        Or (ASB0, 0x02, ASB0)
                                    }
                                }
                                Else
                                {
                                    Store (Zero, ASB0)
                                }
                            }
                        }
                    }
                }
            }
        }

        Name (CLKR, Buffer (0x18)
        {
            /* 0000 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
            /* 0008 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
            /* 0010 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
        })
        Name (PCEF, Buffer (0x68)
        {
            /* 0000 */    0x9F, 0xD8, 0x9F, 0xD8, 0x9C, 0xC5, 0x62, 0xF2, 
            /* 0008 */    0x5B, 0xC2, 0xD2, 0x82, 0x21, 0xF2, 0x9A, 0xC0, 
            /* 0010 */    0x13, 0x8E, 0xDD, 0xDA, 0x1F, 0xEC, 0xDA, 0xC7, 
            /* 0018 */    0xE1, 0xFF, 0x9F, 0xF2, 0x1C, 0xDD, 0x54, 0x9F, 
            /* 0020 */    0x1F, 0xF9, 0xDB, 0xDA, 0xD0, 0x82, 0x5E, 0xF7, 
            /* 0028 */    0x1D, 0xF1, 0x15, 0xB0, 0xDA, 0xDB, 0x98, 0xCC, 
            /* 0030 */    0x16, 0xBD, 0x9C, 0xF2, 0x59, 0xDA, 0x19, 0xDC, 
            /* 0038 */    0xD9, 0xDD, 0x99, 0xDF, 0x5A, 0xEA, 0xD6, 0xC7, 
            /* 0040 */    0xD9, 0xE4, 0x58, 0xDD, 0x9A, 0xF1, 0x57, 0xD7, 
            /* 0048 */    0x15, 0xC6, 0x1A, 0xF7, 0x96, 0xD2, 0xD4, 0xC0, 
            /* 0050 */    0x18, 0xE9, 0x12, 0xB0, 0x52, 0xB1, 0x18, 0xEE, 
            /* 0058 */    0xD3, 0xBD, 0x56, 0xDD, 0x18, 0xF3, 0xCE, 0x8E, 
            /* 0060 */    0x0F, 0x9A, 0xD7, 0xED, 0xD8, 0xF9, 0x15, 0xDC
        })
        Name (MNBF, Buffer (0x070B)
        {
            /* 0000 */    0x01, 0x64, 0xFC, 0x01, 0x5F, 0xDA, 0x01, 0xA1, 
            /* 0008 */    0xE9, 0x01, 0xE2, 0xF1, 0x01, 0x98, 0xAB, 0x01, 
            /* 0010 */    0x5D, 0xD0, 0x01, 0x5D, 0xD1, 0x01, 0x23, 0xFE, 
            /* 0018 */    0x01, 0x15, 0x99, 0x01, 0x1C, 0xCD, 0x01, 0x5A, 
            /* 0020 */    0xBF, 0x01, 0xA0, 0xEC, 0x01, 0xA2, 0xFC, 0x01, 
            /* 0028 */    0xD3, 0x8D, 0x01, 0x22, 0xFF, 0x01, 0xD8, 0xB4, 
            /* 0030 */    0x01, 0xD3, 0x8F, 0x01, 0x60, 0xF3, 0x01, 0x21, 
            /* 0038 */    0xFC, 0x01, 0xA0, 0xF5, 0x01, 0x57, 0xB1, 0x03, 
            /* 0040 */    0xA7, 0x96, 0x03, 0x7F, 0xF4, 0x03, 0xA1, 0x80, 
            /* 0048 */    0x03, 0xBE, 0xF2, 0x03, 0xB1, 0xC0, 0x03, 0x73, 
            /* 0050 */    0xC9, 0x03, 0xFE, 0xF5, 0x03, 0x35, 0xD3, 0x03, 
            /* 0058 */    0x35, 0xD4, 0x03, 0x3E, 0xF9, 0x03, 0xF4, 0xD1, 
            /* 0060 */    0x03, 0xB1, 0xC6, 0x03, 0x7E, 0xFC, 0x03, 0xE0, 
            /* 0068 */    0x82, 0x03, 0x3A, 0xEE, 0x03, 0x7C, 0xF7, 0x03, 
            /* 0070 */    0xAF, 0xC2, 0x03, 0xBD, 0xFD, 0x03, 0x34, 0xD9, 
            /* 0078 */    0x03, 0x7B, 0xF7, 0x03, 0xEA, 0xB0, 0x03, 0x69, 
            /* 0080 */    0xAD, 0x03, 0xE4, 0x98, 0x03, 0x6F, 0xC8, 0x03, 
            /* 0088 */    0x36, 0xE7, 0x03, 0x77, 0xEC, 0x03, 0xB8, 0xF1, 
            /* 0090 */    0x03, 0xB8, 0xF2, 0x03, 0x2E, 0xC8, 0x03, 0x34, 
            /* 0098 */    0xE3, 0x03, 0x60, 0x8C, 0x03, 0x37, 0xF2, 0x03, 
            /* 00A0 */    0x37, 0xF3, 0x03, 0xB6, 0xEF, 0x03, 0xE5, 0xA4, 
            /* 00A8 */    0x03, 0xB2, 0xDF, 0x03, 0xA8, 0xB3, 0x03, 0x72, 
            /* 00B0 */    0xE1, 0x03, 0x78, 0xFD, 0x03, 0x32, 0xE3, 0x03, 
            /* 00B8 */    0xF0, 0xDA, 0x03, 0xF2, 0xE4, 0x03, 0x6E, 0xD3, 
            /* 00C0 */    0x03, 0x29, 0xBD, 0x03, 0xB7, 0xFE, 0x03, 0x36, 
            /* 00C8 */    0xFC, 0x03, 0xEC, 0xCD, 0x03, 0x9F, 0xF1, 0x03, 
            /* 00D0 */    0xE0, 0x96, 0x03, 0xA3, 0xA5, 0x03, 0xB5, 0xFB, 
            /* 00D8 */    0x03, 0x65, 0xB0, 0x03, 0x71, 0xEA, 0x03, 0xDF, 
            /* 00E0 */    0x94, 0x03, 0x26, 0xB7, 0x03, 0xB3, 0xF6, 0x03, 
            /* 00E8 */    0x74, 0xFC, 0x03, 0x64, 0xAF, 0x03, 0xB0, 0xEA, 
            /* 00F0 */    0x03, 0x71, 0xF0, 0x03, 0xB0, 0xEB, 0x03, 0xAE, 
            /* 00F8 */    0xE2, 0x03, 0x6F, 0xE8, 0x03, 0x31, 0xF3, 0x03, 
            /* 0100 */    0x2A, 0xD1, 0x03, 0xE8, 0xC7, 0x03, 0xAC, 0xDC, 
            /* 0108 */    0x03, 0x23, 0xB0, 0x03, 0xE6, 0xBF, 0x03, 0x2F, 
            /* 0110 */    0xEE, 0x03, 0x25, 0xBC, 0x03, 0x61, 0xA8, 0x03, 
            /* 0118 */    0x5C, 0x8F, 0x02, 0x2D, 0xE7, 0x02, 0x70, 0xF7, 
            /* 0120 */    0x02, 0x71, 0xFD, 0x02, 0x67, 0xCA, 0x02, 0xA0, 
            /* 0128 */    0xA6, 0x02, 0xA2, 0xB1, 0x02, 0x2A, 0xDC, 0x02, 
            /* 0130 */    0x6C, 0xE7, 0x02, 0xEB, 0xE2, 0x02, 0xE5, 0xC3, 
            /* 0138 */    0x02, 0x6B, 0xE4, 0x02, 0x2B, 0xE5, 0x02, 0x23, 
            /* 0140 */    0xBB, 0x02, 0x62, 0xB6, 0x02, 0x2D, 0xF2, 0x02, 
            /* 0148 */    0x2B, 0xE8, 0x02, 0xEB, 0xE8, 0x02, 0xAB, 0xE9, 
            /* 0150 */    0x02, 0x6B, 0xEA, 0x02, 0x2B, 0xEB, 0x02, 0xEB, 
            /* 0158 */    0xEB, 0x02, 0x2C, 0xF2, 0x02, 0x6B, 0xED, 0x02, 
            /* 0160 */    0x2B, 0xEE, 0x02, 0xEB, 0xEE, 0x02, 0xAB, 0xEF, 
            /* 0168 */    0x02, 0x6B, 0xF0, 0x02, 0xDF, 0xAD, 0x02, 0x2D, 
            /* 0170 */    0xFD, 0x02, 0xE2, 0xBF, 0x02, 0x23, 0xC6, 0x02, 
            /* 0178 */    0x2B, 0xF4, 0x02, 0xEB, 0xF4, 0x02, 0x65, 0xD3, 
            /* 0180 */    0x02, 0x6B, 0xF6, 0x02, 0xEC, 0xFC, 0x02, 0x2A, 
            /* 0188 */    0xF2, 0x02, 0xA2, 0xC4, 0x02, 0xA0, 0xB9, 0x02, 
            /* 0190 */    0x62, 0xC6, 0x02, 0xDC, 0xA3, 0x02, 0xA9, 0xF0, 
            /* 0198 */    0x02, 0x9E, 0xB0, 0x02, 0xEB, 0xFD, 0x02, 0xAB, 
            /* 01A0 */    0xFE, 0x02, 0x1F, 0xB8, 0x02, 0xA0, 0xBE, 0x02, 
            /* 01A8 */    0x22, 0xCB, 0x02, 0xA9, 0xF5, 0x02, 0x6A, 0xFC, 
            /* 01B0 */    0x02, 0xE1, 0xC6, 0x02, 0x5F, 0xBB, 0x02, 0x67, 
            /* 01B8 */    0xEC, 0x02, 0x28, 0xF3, 0x02, 0x9B, 0xA4, 0x02, 
            /* 01C0 */    0xD9, 0x98, 0x02, 0x69, 0xFB, 0x02, 0xE5, 0xE2, 
            /* 01C8 */    0x02, 0x64, 0xDD, 0x02, 0x5A, 0xA0, 0x02, 0x5D, 
            /* 01D0 */    0xB3, 0x02, 0xDD, 0xB3, 0x02, 0xD6, 0x88, 0x02, 
            /* 01D8 */    0x1E, 0xBB, 0x02, 0x28, 0xFA, 0x02, 0x9C, 0xAF, 
            /* 01E0 */    0x02, 0x1C, 0xB0, 0x02, 0x21, 0xD0, 0x02, 0xA7, 
            /* 01E8 */    0xF6, 0x02, 0xA5, 0xEA, 0x02, 0xA6, 0xF1, 0x02, 
            /* 01F0 */    0xA7, 0xF8, 0x02, 0xD9, 0x9F, 0x02, 0xA6, 0xF3, 
            /* 01F8 */    0x02, 0xDE, 0xC0, 0x02, 0xA3, 0xE1, 0x02, 0x99, 
            /* 0200 */    0xA1, 0x02, 0x96, 0x8E, 0x02, 0x67, 0xFD, 0x02, 
            /* 0208 */    0x54, 0x82, 0x02, 0x59, 0xA3, 0x02, 0x65, 0xF2, 
            /* 0210 */    0x02, 0x5B, 0xB1, 0x02, 0x24, 0xED, 0x02, 0x19, 
            /* 0218 */    0xA5, 0x02, 0xE0, 0xD3, 0x02, 0x9A, 0xAC, 0x02, 
            /* 0220 */    0x17, 0x99, 0x02, 0xDC, 0xBA, 0x02, 0x5C, 0xBB, 
            /* 0228 */    0x02, 0x96, 0x93, 0x02, 0x24, 0xF2, 0x02, 0xD8, 
            /* 0230 */    0xA1, 0x02, 0x64, 0xF3, 0x02, 0x1F, 0xD2, 0x02, 
            /* 0238 */    0xA4, 0xF4, 0x02, 0x15, 0x8F, 0x02, 0x9A, 0xB1, 
            /* 0240 */    0x02, 0x20, 0xDB, 0x02, 0x1D, 0xC7, 0x02, 0x5F, 
            /* 0248 */    0xD5, 0x02, 0x1D, 0xC8, 0x02, 0x60, 0xDD, 0x02, 
            /* 0250 */    0xE1, 0xE4, 0x02, 0x62, 0xEC, 0x02, 0x1E, 0xD1, 
            /* 0258 */    0x02, 0x9F, 0xD8, 0x02, 0x24, 0xFC, 0x02, 0x9B, 
            /* 0260 */    0xBD, 0x02, 0xD5, 0x93, 0x02, 0x9C, 0xC5, 0x02, 
            /* 0268 */    0xA3, 0xF7, 0x02, 0x9C, 0xC6, 0x02, 0xE3, 0xF8, 
            /* 0270 */    0x02, 0x62, 0xF2, 0x02, 0x5E, 0xD6, 0x02, 0x61, 
            /* 0278 */    0xEC, 0x02, 0x22, 0xF4, 0x02, 0x5B, 0xC2, 0x02, 
            /* 0280 */    0x9A, 0xBB, 0x02, 0x9B, 0xAD, 0x02, 0xA2, 0xF6, 
            /* 0288 */    0x02, 0xD2, 0x82, 0x02, 0x20, 0xE9, 0x02, 0x5F, 
            /* 0290 */    0xE2, 0x02, 0xE2, 0xF8, 0x02, 0x21, 0xF2, 0x02, 
            /* 0298 */    0x60, 0xEB, 0x02, 0x13, 0x8C, 0x02, 0xE1, 0xF3, 
            /* 02A0 */    0x02, 0x9A, 0xC0, 0x02, 0x13, 0x8D, 0x02, 0xA1, 
            /* 02A8 */    0xF5, 0x02, 0xA2, 0xFD, 0x02, 0x13, 0x8E, 0x02, 
            /* 02B0 */    0xDC, 0xD1, 0x02, 0x5E, 0xE1, 0x02, 0x5D, 0xDA, 
            /* 02B8 */    0x02, 0xDD, 0xDA, 0x02, 0xA1, 0xF9, 0x02, 0xA0, 
            /* 02C0 */    0xF2, 0x02, 0x95, 0x9F, 0x02, 0x1F, 0xEC, 0x02, 
            /* 02C8 */    0x97, 0xAF, 0x02, 0x9B, 0xCE, 0x02, 0x18, 0xB8, 
            /* 02D0 */    0x02, 0xDA, 0xC7, 0x02, 0x88, 0x82, 0x02, 0x5F, 
            /* 02D8 */    0xEF, 0x02, 0x91, 0x83, 0x02, 0xE1, 0xFF, 0x02, 
            /* 02E0 */    0x59, 0xC2, 0x02, 0xD4, 0x9B, 0x02, 0xE0, 0xF9, 
            /* 02E8 */    0x02, 0x9F, 0xF2, 0x02, 0x19, 0xC4, 0x02, 0x1C, 
            /* 02F0 */    0xDC, 0x02, 0xDA, 0xCC, 0x02, 0x1C, 0xDB, 0x02, 
            /* 02F8 */    0xD9, 0xC5, 0x02, 0xDF, 0xF5, 0x02, 0x12, 0x8F, 
            /* 0300 */    0x02, 0x54, 0x9F, 0x02, 0x99, 0xC7, 0x02, 0x17, 
            /* 0308 */    0xB8, 0x02, 0x51, 0x88, 0x02, 0x1F, 0xF9, 0x02, 
            /* 0310 */    0x14, 0xA1, 0x02, 0x1E, 0xF2, 0x02, 0x5B, 0xDA, 
            /* 0318 */    0x02, 0xDB, 0xDA, 0x02, 0xD7, 0xBA, 0x02, 0x5F, 
            /* 0320 */    0xFC, 0x02, 0x1A, 0xD4, 0x02, 0xD0, 0x82, 0x02, 
            /* 0328 */    0x9D, 0xED, 0x02, 0xD7, 0xBC, 0x02, 0x9D, 0xEE, 
            /* 0330 */    0x02, 0x5E, 0xF7, 0x02, 0x5C, 0xE7, 0x02, 0x53, 
            /* 0338 */    0x9D, 0x02, 0x11, 0x8D, 0x02, 0x1D, 0xF1, 0x02, 
            /* 0340 */    0x53, 0x9E, 0x02, 0x1A, 0xD9, 0x02, 0x16, 0xB8, 
            /* 0348 */    0x02, 0x15, 0xB0, 0x02, 0xDB, 0xE2, 0x02, 0xD5, 
            /* 0350 */    0xB0, 0x02, 0x1E, 0xFD, 0x02, 0xDA, 0xDB, 0x02, 
            /* 0358 */    0x58, 0xCB, 0x02, 0xD2, 0x98, 0x02, 0x95, 0xB2, 
            /* 0360 */    0x02, 0x98, 0xCC, 0x02, 0x1A, 0xDE, 0x02, 0x1B, 
            /* 0368 */    0xE7, 0x02, 0xD8, 0xCD, 0x02, 0x16, 0xBD, 0x02, 
            /* 0370 */    0x17, 0xC6, 0x02, 0x9C, 0xF1, 0x02, 0x1C, 0xF2, 
            /* 0378 */    0x02, 0x9C, 0xF2, 0x02, 0x1C, 0xF3, 0x02, 0x17, 
            /* 0380 */    0xC8, 0x02, 0x5B, 0xEB, 0x02, 0x59, 0xDA, 0x02, 
            /* 0388 */    0x18, 0xD2, 0x02, 0x50, 0x8C, 0x02, 0x17, 0xCA, 
            /* 0390 */    0x02, 0x19, 0xDC, 0x02, 0x5A, 0xE5, 0x02, 0xDA, 
            /* 0398 */    0xE5, 0x02, 0xD6, 0xC2, 0x02, 0xD9, 0xDD, 0x02, 
            /* 03A0 */    0xD4, 0xB1, 0x02, 0x15, 0xBB, 0x02, 0xD0, 0x8E, 
            /* 03A8 */    0x02, 0x99, 0xDF, 0x02, 0x17, 0xCE, 0x02, 0x94, 
            /* 03B0 */    0xB3, 0x02, 0xDC, 0xFB, 0x02, 0x5A, 0xEA, 0x02, 
            /* 03B8 */    0xDC, 0xFC, 0x02, 0x5C, 0xFD, 0x02, 0x54, 0xB5, 
            /* 03C0 */    0x02, 0xD6, 0xC7, 0x02, 0xD2, 0xA3, 0x02, 0xD8, 
            /* 03C8 */    0xDA, 0x02, 0x93, 0xAD, 0x02, 0xD9, 0xE4, 0x02, 
            /* 03D0 */    0x9B, 0xF7, 0x02, 0x93, 0xAE, 0x02, 0x5A, 0xEF, 
            /* 03D8 */    0x02, 0x58, 0xDD, 0x02, 0x93, 0xAF, 0x02, 0x92, 
            /* 03E0 */    0xA6, 0x02, 0x57, 0xD5, 0x02, 0x9A, 0xF1, 0x02, 
            /* 03E8 */    0xD6, 0xCC, 0x02, 0xDB, 0xFB, 0x02, 0x96, 0xCD, 
            /* 03F0 */    0x02, 0x57, 0xD7, 0x02, 0x56, 0xCE, 0x02, 0x5A, 
            /* 03F8 */    0xF4, 0x02, 0xCE, 0x83, 0x02, 0x15, 0xC6, 0x02, 
            /* 0400 */    0x57, 0xD9, 0x02, 0x9B, 0xFF, 0x02, 0x9A, 0xF6, 
            /* 0408 */    0x02, 0x1A, 0xF7, 0x02, 0x50, 0x98, 0x02, 0x0F, 
            /* 0410 */    0x8F, 0x02, 0xD9, 0xEE, 0x02, 0x96, 0xD2, 0x02, 
            /* 0418 */    0x5A, 0xF9, 0x02, 0x51, 0xA3, 0x02, 0x99, 0xF0, 
            /* 0420 */    0x02, 0xD4, 0xC0, 0x02, 0xD5, 0xCA, 0x02, 0x9A, 
            /* 0428 */    0xFB, 0x02, 0x95, 0xCB, 0x02, 0x18, 0xE9, 0x02, 
            /* 0430 */    0x94, 0xC2, 0x02, 0x5A, 0xFD, 0x02, 0x58, 0xEA, 
            /* 0438 */    0x02, 0x12, 0xB0, 0x02, 0x96, 0xD7, 0x02, 0x98, 
            /* 0440 */    0xEB, 0x02, 0xD9, 0xF5, 0x02, 0x52, 0xB1, 0x02, 
            /* 0448 */    0xD8, 0xEC, 0x02, 0x11, 0xA8, 0x02, 0x99, 0xF7, 
            /* 0450 */    0x02, 0x18, 0xEE, 0x02, 0x97, 0xE4, 0x02, 0x15, 
            /* 0458 */    0xD1, 0x02, 0x59, 0xF9, 0x02, 0xD3, 0xBD, 0x02, 
            /* 0460 */    0x19, 0xFA, 0x02, 0x97, 0xE6, 0x02, 0xD3, 0xBE, 
            /* 0468 */    0x02, 0x56, 0xDD, 0x02, 0x94, 0xC9, 0x02, 0xD3, 
            /* 0470 */    0xBF, 0x02, 0xD0, 0xA1, 0x02, 0x18, 0xF3, 0x02, 
            /* 0478 */    0xD3, 0xC0, 0x02, 0xD1, 0xAC, 0x02, 0x8E, 0x8E, 
            /* 0480 */    0x02, 0xCE, 0x8E, 0x02, 0x95, 0xD6, 0x02, 0x4E, 
            /* 0488 */    0x8F, 0x02, 0x55, 0xD7, 0x02, 0x0F, 0x9A, 0x02, 
            /* 0490 */    0x56, 0xE2, 0x02, 0x58, 0xF7, 0x02, 0xD2, 0xB9, 
            /* 0498 */    0x02, 0xD7, 0xED, 0x02, 0x98, 0xF8, 0x02, 0x97, 
            /* 04A0 */    0xEE, 0x02, 0x12, 0xBB, 0x02, 0xD8, 0xF9, 0x02, 
            /* 04A8 */    0xD7, 0xEF, 0x02, 0x91, 0xB1, 0x02, 0x18, 0xFB, 
            /* 04B0 */    0x02, 0x15, 0xDC, 0x02, 0xD8, 0xFB, 0x02, 0xD7, 
            /* 04B8 */    0xF1, 0x02, 0x92, 0xBD, 0x02, 0x16, 0xE8, 0x02, 
            /* 04C0 */    0x98, 0xFD, 0x02, 0xD6, 0xE8, 0x02, 0xD7, 0xF3, 
            /* 04C8 */    0x02, 0x0D, 0x8A, 0x02, 0x8F, 0x9F, 0x02, 0x14, 
            /* 04D0 */    0xD5, 0x02, 0xD6, 0xEA, 0x02, 0xD4, 0xD5, 0x02, 
            /* 04D8 */    0x50, 0xAB, 0x02, 0x51, 0xB6, 0x02, 0x56, 0xEC, 
            /* 04E0 */    0x02, 0x97, 0xF7, 0x02, 0x55, 0xE2, 0x02, 0x52, 
            /* 04E8 */    0xC2, 0x02, 0xD1, 0xB7, 0x02, 0x17, 0xF9, 0x02, 
            /* 04F0 */    0x90, 0xAD, 0x02, 0x92, 0xC3, 0x02, 0x57, 0xFA, 
            /* 04F8 */    0x02, 0xCC, 0x82, 0x02, 0x17, 0xFB, 0x02, 0xD2, 
            /* 0500 */    0xC4, 0x02, 0x13, 0xD0, 0x02, 0x56, 0xF1, 0x02, 
            /* 0508 */    0xCF, 0xA4, 0x02, 0x16, 0xF2, 0x02, 0x4E, 0x9A, 
            /* 0510 */    0x02, 0xD5, 0xE7, 0x02, 0x13, 0xD2, 0x02, 0x52, 
            /* 0518 */    0xC7, 0x02, 0xD4, 0xDD, 0x02, 0x13, 0xD3, 0x02, 
            /* 0520 */    0xD6, 0xF4, 0x02, 0x50, 0xB2, 0x02, 0x13, 0xD4, 
            /* 0528 */    0x02, 0x94, 0xDF, 0x02, 0x8D, 0x91, 0x02, 0x13, 
            /* 0530 */    0xD5, 0x02, 0x16, 0xF7, 0x02, 0x96, 0xF7, 0x02, 
            /* 0538 */    0x54, 0xE1, 0x02, 0xD1, 0xBF, 0x02, 0x55, 0xED, 
            /* 0540 */    0x02, 0x13, 0xD7, 0x02, 0x15, 0xEE, 0x02, 0x14, 
            /* 0548 */    0xE3, 0x02, 0x8F, 0xAA, 0x02, 0x0D, 0x94, 0x02, 
            /* 0550 */    0x52, 0xCD, 0x02, 0x56, 0xFB, 0x02, 0xD4, 0xE4, 
            /* 0558 */    0x02, 0x16, 0xFC, 0x02, 0x92, 0xCE, 0x02, 0xD6, 
            /* 0560 */    0xFC, 0x02, 0x56, 0xFD, 0x02, 0x15, 0xF2, 0x02, 
            /* 0568 */    0xD2, 0xCF, 0x02, 0x91, 0xC4, 0x02, 0x8D, 0x96, 
            /* 0570 */    0x02, 0x90, 0xB9, 0x02, 0x12, 0xD1, 0x02, 0x55, 
            /* 0578 */    0xF4, 0x02, 0xCC, 0x8B, 0x02, 0x54, 0xE9, 0x02, 
            /* 0580 */    0x8B, 0x80, 0x02, 0x8F, 0xAF, 0x02, 0xCF, 0xAF, 
            /* 0588 */    0x02, 0x0F, 0xB0, 0x02, 0xD5, 0xF6, 0x02, 0x0D, 
            /* 0590 */    0x99, 0x02, 0x95, 0xF7, 0x02, 0x4E, 0xA5, 0x02, 
            /* 0598 */    0x55, 0xF8, 0x02, 0x51, 0xC9, 0x02, 0x53, 0xE1, 
            /* 05A0 */    0x02, 0x4E, 0xA6, 0x02, 0x50, 0xBE, 0x02, 0x53, 
            /* 05A8 */    0xE2, 0x02, 0x94, 0xEE, 0x02, 0x4D, 0x9B, 0x02, 
            /* 05B0 */    0x53, 0xE3, 0x02, 0xCB, 0x83, 0x02, 0x14, 0xF0, 
            /* 05B8 */    0x02, 0x53, 0xE4, 0x02, 0x90, 0xC0, 0x02, 0x15, 
            /* 05C0 */    0xFD, 0x02, 0x53, 0xE5, 0x02, 0xD5, 0xFD, 0x02, 
            /* 05C8 */    0x14, 0xF2, 0x02, 0x11, 0xCE, 0x02, 0xCD, 0x9D, 
            /* 05D0 */    0x02, 0xD2, 0xDA, 0x02, 0x53, 0xE7, 0x02, 0x4C, 
            /* 05D8 */    0x92, 0x02, 0x4B, 0x86, 0x02, 0x12, 0xDC, 0x02, 
            /* 05E0 */    0xD4, 0xF4, 0x02, 0x54, 0xF5, 0x02, 0x94, 0xF5, 
            /* 05E8 */    0x02, 0x52, 0xDD, 0x02, 0x51, 0xD1, 0x02, 0x4D, 
            /* 05F0 */    0xA0, 0x02, 0x90, 0xC5, 0x02, 0x54, 0xF7, 0x02, 
            /* 05F8 */    0x53, 0xEB, 0x02, 0xD1, 0xD2, 0x02, 0x54, 0xF8, 
            /* 0600 */    0x02, 0xCB, 0x88, 0x02, 0x14, 0xF9, 0x02, 0x0F, 
            /* 0608 */    0xBB, 0x02, 0xD0, 0xC7, 0x02, 0x14, 0xFA, 0x02, 
            /* 0610 */    0xCD, 0xA2, 0x02, 0xD4, 0xFA, 0x02, 0xCE, 0xAF, 
            /* 0618 */    0x02, 0x0E, 0xB0, 0x02, 0x4E, 0xB0, 0x02, 0x8E, 
            /* 0620 */    0xB0, 0x02, 0x94, 0xFC, 0x02, 0x50, 0xCA, 0x02, 
            /* 0628 */    0x4B, 0x8B, 0x02, 0x91, 0xD7, 0x02, 0x92, 0xE4, 
            /* 0630 */    0x02, 0x4D, 0xA5, 0x02, 0xCC, 0x98, 0x02, 0x14, 
            /* 0638 */    0xFF, 0x02, 0xD2, 0xE5, 0x02, 0x90, 0xCC, 0x02, 
            /* 0640 */    0x0F, 0xC0, 0x02, 0x93, 0xF3, 0x02, 0x12, 0xE7, 
            /* 0648 */    0x02, 0xCF, 0xC0, 0x02, 0x93, 0xF4, 0x02, 0xCB, 
            /* 0650 */    0x8D, 0x02, 0x52, 0xE8, 0x02, 0x93, 0xF5, 0x02, 
            /* 0658 */    0x10, 0xCF, 0x02, 0x51, 0xDC, 0x02, 0x93, 0xF6, 
            /* 0660 */    0x02, 0xD3, 0xF6, 0x02, 0x53, 0xF7, 0x02, 0x4A, 
            /* 0668 */    0x82, 0x02, 0xD2, 0xEA, 0x02, 0x11, 0xDE, 0x02, 
            /* 0670 */    0x50, 0xD1, 0x02, 0x4D, 0xAA, 0x02, 0x0A, 0x83, 
            /* 0678 */    0x02, 0x93, 0xF9, 0x02, 0x8B, 0x90, 0x02, 0x13, 
            /* 0680 */    0xFA, 0x02, 0x4D, 0xAB, 0x02, 0x0F, 0xC6, 0x02, 
            /* 0688 */    0x13, 0xFB, 0x02, 0xD0, 0xD3, 0x02, 0xCF, 0xC6, 
            /* 0690 */    0x02, 0x13, 0xFC, 0x02, 0xD1, 0xE1, 0x02, 0xD0, 
            /* 0698 */    0xD4, 0x02, 0x13, 0xFD, 0x02, 0xCE, 0xBA, 0x02, 
            /* 06A0 */    0x0E, 0xBB, 0x02, 0x13, 0xFE, 0x02, 0xCF, 0xC8, 
            /* 06A8 */    0x02, 0x8B, 0x93, 0x02, 0x51, 0xE4, 0x02, 0x12, 
            /* 06B0 */    0xF2, 0x02, 0x0D, 0xAF, 0x02, 0x92, 0xF2, 0x02, 
            /* 06B8 */    0x91, 0xE5, 0x02, 0x52, 0xF3, 0x02, 0x90, 0xD8, 
            /* 06C0 */    0x02, 0xD2, 0xF3, 0x02, 0x91, 0xE6, 0x02, 0x92, 
            /* 06C8 */    0xF4, 0x02, 0x90, 0xD9, 0x02, 0x12, 0xF5, 0x02, 
            /* 06D0 */    0x0B, 0x96, 0x02, 0x8D, 0xB1, 0x02, 0x4B, 0x96, 
            /* 06D8 */    0x02, 0x4C, 0xA4, 0x02, 0x11, 0xE9, 0x02, 0x0E, 
            /* 06E0 */    0xC0, 0x02, 0x4E, 0xC0, 0x02, 0x4F, 0xCE, 0x02, 
            /* 06E8 */    0xCA, 0x89, 0x02, 0x91, 0xEA, 0x02, 0x92, 0xF8, 
            /* 06F0 */    0x02, 0x50, 0xDD, 0x02, 0x51, 0xEB, 0x02, 0x8B, 
            /* 06F8 */    0x98, 0x02, 0xD2, 0xF9, 0x02, 0xCB, 0x98, 0x02, 
            /* 0700 */    0xCF, 0xD0, 0x02, 0x0D, 0xB5, 0x02, 0x4F, 0xD1, 
            /* 0708 */    0x02, 0x90, 0xDF
        })
        Method (G03I, 0, NotSerialized)
        {
            CPUV ()
        }

        Method (CPUV, 0, NotSerialized)
        {
            If (LEqual (One, ShiftRight (PAR4, 0x08)))
            {
                Store (0xFA, Index (G312, 0x05))
            }

            Store (And (PAR4, 0xFF), Index (G312, 0x06))
        }
    }

    Scope (_SB.PCI0.SBRG.ASOC)
    {
        Name (G4T0, Package (0x04)
        {
            0x04070010, 
            "CPU Q-FAN control", 
            0x80000000, 
            Zero
        })
        Name (GRP4, Package (0x01)
        {
            G4T0
        })
        Method (GIT4, 1, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, 0x10))
            {
                Store (GNVS (0x17AE), ASB1)
            }
            Else
            {
                Store (Zero, ASB0)
            }
        }

        Method (SIT4, 3, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, 0x10))
            {
                If (LNotEqual (GNVS (0x17AE), Arg1))
                {
                    SNVS (0x17AE, Arg1)
                    Or (ASB0, 0x02, ASB0)
                }
            }
            Else
            {
                Store (Zero, ASB0)
            }
        }
    }

    Scope (_SB.PCI0.SBRG.ASOC)
    {
        Name (G5T0, Package (0x0C)
        {
            0x05080000, 
            "AI Profile", 
            Zero, 
            Zero, 
            0x07, 
            "Disabled", 
            "Overclock  3%", 
            "Overclock  5%", 
            "Overclock 10%", 
            "Overclock 15%", 
            "Overclock 20%", 
            "Overclock 30%"
        })
        Name (GRP5, Package (0x01)
        {
            G5T0
        })
        Method (GIT5, 1, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, Zero))
            {
                Store (GNVS (0x3628), ASB1)
            }
            Else
            {
                Store (Zero, ASB0)
            }
        }

        Method (SIT5, 3, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, Zero))
            {
                Store (GNVS (0x3623), Local0)
                Store (GNVS (0x3628), Local1)
                If (LNotEqual (Arg1, Local1))
                {
                    SNVS (0x3623, 0x03)
                    SNVS (0x3628, Arg1)
                    Or (ASB0, 0x02, ASB0)
                }
                Else
                {
                    If (LNotEqual (0x03, Local0))
                    {
                        SNVS (0x3623, 0x03)
                        Or (ASB0, 0x02, ASB0)
                    }
                }
            }
            Else
            {
                Store (Zero, ASB0)
            }
        }
    }

    Scope (_SB.PCI0.SBRG.ASOC)
    {
        Name (G9T0, Package (0x09)
        {
            0x09080000, 
            "AI-Overclocking", 
            Zero, 
            One, 
            0x04, 
            "Manual", 
            "Auto", 
            "Standard", 
            "Over Clock Profile"
        })
        Name (GRP9, Package (0x01)
        {
            G9T0
        })
        Method (GIT9, 1, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, Zero))
            {
                Store (GNVS (0x3623), ASB1)
            }
            Else
            {
                Store (Zero, ASB0)
            }
        }

        Method (SIT9, 3, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, Zero))
            {
                If (LNotEqual (GNVS (0x3623), Arg1))
                {
                    If (And (Arg2, One))
                    {
                        SNVS (0x3623, Arg1)
                    }

                    Or (ASB0, 0x02, ASB0)
                }
            }
            Else
            {
                Store (Zero, ASB0)
            }
        }
    }

    Scope (_SB.PCI0.SBRG.ASOC)
    {
        Name (GBT1, Package (0x07)
        {
            0x0B060001, 
            "System performance", 
            0x00400000, 
            Zero, 
            0x03, 
            One, 
            0x04
        })
        Name (GBT3, Package (0x07)
        {
            0x0B060003, 
            "System GUI", 
            One, 
            Zero, 
            Zero, 
            Zero, 
            Zero
        })
        Name (GRPB, Package (0x02)
        {
            GBT1, 
            GBT3
        })
        Name (VEAL, Zero)
        Method (GITB, 1, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, One))
            {
                Store (VEAL, ASB1)
            }
            Else
            {
                If (LEqual (_T_0, 0x03))
                {
                    Store (One, ASB1)
                }
                Else
                {
                    Store (Zero, ASB0)
                }
            }
        }

        Method (SITB, 3, NotSerialized)
        {
            If (LEqual (And (Arg2, 0xFFFF), One))
            {
                And (Arg1, 0xFFFF, VEAL)
                Store (VEAL, ASB1)
                Store (VEAL, PAR0)
                ISMI (0x88)
            }

            If (LEqual (And (Arg2, 0xFFFF), Zero))
            {
                If (LEqual (VEAL, Zero))
                {
                    Store (VEAL, PAR0)
                    ISMI (0x88)
                }
            }
        }
    }

    Scope (_SB.PCI0.SBRG.ASOC)
    {
        Name (GCT0, Package (0x07)
        {
            0x0C060001, 
            "Thermostat(AFSC)", 
            0x00400000, 
            Zero, 
            0x03, 
            One, 
            0x04
        })
        Name (GRPC, Package (0x01)
        {
            GCT0
        })
        Method (GITC, 1, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, Zero)) {}
            Else
            {
                Store (Zero, ASB0)
            }
        }

        Method (SITC, 3, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, Zero)) {}
            Else
            {
                Store (Zero, ASB0)
            }
        }
    }

    Scope (_SB.PCI0.SBRG.ASOC)
    {
        Name (GDT1, Package (0x07)
        {
            0x0D070001, 
            "RTC Alarm", 
            0x40000000, 
            Zero, 
            Zero, 
            Zero, 
            0x02
        })
        Name (GDT2, Package (0x07)
        {
            0x0D060002, 
            "Alarm Date", 
            Zero, 
            Zero, 
            Zero, 
            One, 
            0x20
        })
        Name (GDT3, Package (0x07)
        {
            0x0D060003, 
            "Alarm Hour", 
            Zero, 
            Zero, 
            Zero, 
            One, 
            0x18
        })
        Name (GDT4, Package (0x07)
        {
            0x0D060004, 
            "Alarm Minute", 
            Zero, 
            Zero, 
            Zero, 
            One, 
            0x3C
        })
        Name (GDT5, Package (0x07)
        {
            0x0D060005, 
            "Alarm Second", 
            Zero, 
            Zero, 
            Zero, 
            One, 
            0x3C
        })
        Name (GRPD, Package (0x05)
        {
            GDT1, 
            GDT2, 
            GDT3, 
            GDT4, 
            GDT5
        })
        Method (GITD, 1, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, One))
            {
                Store (GNVS (0x17B5), ASB1)
            }
            Else
            {
                If (LEqual (_T_0, 0x02))
                {
                    Store (GNVS (0x5468), ASB1)
                }
                Else
                {
                    If (LEqual (_T_0, 0x03))
                    {
                        Store (GNVS (0x5470), ASB1)
                    }
                    Else
                    {
                        If (LEqual (_T_0, 0x04))
                        {
                            Store (GNVS (0x63F0), ASB1)
                        }
                        Else
                        {
                            If (LEqual (_T_0, 0x05))
                            {
                                Store (GNVS (0x6400), ASB1)
                            }
                            Else
                            {
                                Store (Zero, ASB0)
                            }
                        }
                    }
                }
            }
        }

        Method (SITD, 3, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, One))
            {
                SNVS (0x17B5, Arg1)
                Store (0x03, ASB0)
            }
            Else
            {
                If (LEqual (_T_0, 0x02))
                {
                    SNVS (0x5468, Arg1)
                    Store (0x03, ASB0)
                }
                Else
                {
                    If (LEqual (_T_0, 0x03))
                    {
                        SNVS (0x5470, Arg1)
                        Store (0x03, ASB0)
                    }
                    Else
                    {
                        If (LEqual (_T_0, 0x04))
                        {
                            SNVS (0x63F0, Arg1)
                            Store (0x03, ASB0)
                        }
                        Else
                        {
                            If (LEqual (_T_0, 0x05))
                            {
                                SNVS (0x6400, Arg1)
                                Store (0x03, ASB0)
                            }
                            Else
                            {
                                Store (Zero, ASB0)
                            }
                        }
                    }
                }
            }
        }
    }

    Scope (_SB)
    {
        OperationRegion (PIRQ, SystemIO, 0x0C00, 0x02)
        Field (PIRQ, ByteAcc, NoLock, Preserve)
        {
            PIDX,   8, 
            PDAT,   8
        }

        IndexField (PIDX, PDAT, ByteAcc, NoLock, Preserve)
        {
            PIRA,   8, 
            PIRB,   8, 
            PIRC,   8, 
            PIRD,   8, 
            PIRS,   8, 
                    Offset (0x09), 
            PIRE,   8, 
            PIRF,   8, 
            PIRG,   8, 
            PIRH,   8
        }

        OperationRegion (KBDD, SystemIO, 0x64, One)
        Field (KBDD, ByteAcc, NoLock, Preserve)
        {
            PD64,   8
        }

        Method (IRQC, 0, NotSerialized)
        {
            Store (Zero, PIRA)
            Store (Zero, PIRB)
            Store (Zero, PIRC)
            Store (Zero, PIRD)
            Store (Zero, PIRE)
            Store (Zero, PIRF)
            Store (Zero, PIRG)
            Store (Zero, PIRH)
        }

        Name (BUFA, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {15}
        })
        Name (IPRA, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {5,10,11}
        })
        Name (IPRB, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {5,10,11}
        })
        Name (IPRC, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {5,10,11}
        })
        Name (IPRD, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {5,10,11}
        })
        Device (LNKA)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, One)
            Method (_STA, 0, NotSerialized)
            {
                If (PIRA)
                {
                    Return (0x0B)
                }
                Else
                {
                    Return (0x09)
                }
            }

            Method (_PRS, 0, NotSerialized)
            {
                Return (PRSA)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (Zero, PIRA)
            }

            Method (_CRS, 0, NotSerialized)
            {
                CreateWordField (BUFA, One, IRQX)
                ShiftLeft (One, PIRA, IRQX)
                Return (BUFA)
            }

            Method (_SRS, 1, NotSerialized)
            {
                CreateWordField (Arg0, One, IRA)
                FindSetRightBit (IRA, Local0)
                Decrement (Local0)
                Store (Local0, PIRA)
            }
        }

        Device (LNKB)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x02)
            Method (_STA, 0, NotSerialized)
            {
                If (PIRB)
                {
                    Return (0x0B)
                }
                Else
                {
                    Return (0x09)
                }
            }

            Method (_PRS, 0, NotSerialized)
            {
                Return (PRSB)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (Zero, PIRB)
            }

            Method (_CRS, 0, NotSerialized)
            {
                CreateWordField (BUFA, One, IRQX)
                ShiftLeft (One, PIRB, IRQX)
                Return (BUFA)
            }

            Method (_SRS, 1, NotSerialized)
            {
                CreateWordField (Arg0, One, IRA)
                FindSetRightBit (IRA, Local0)
                Decrement (Local0)
                Store (Local0, PIRB)
            }
        }

        Device (LNKC)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x03)
            Method (_STA, 0, NotSerialized)
            {
                If (PIRC)
                {
                    Return (0x0B)
                }
                Else
                {
                    Return (0x09)
                }
            }

            Method (_PRS, 0, NotSerialized)
            {
                Return (PRSC)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (Zero, PIRC)
            }

            Method (_CRS, 0, NotSerialized)
            {
                CreateWordField (BUFA, One, IRQX)
                ShiftLeft (One, PIRC, IRQX)
                Return (BUFA)
            }

            Method (_SRS, 1, NotSerialized)
            {
                CreateWordField (Arg0, One, IRA)
                FindSetRightBit (IRA, Local0)
                Decrement (Local0)
                Store (Local0, PIRC)
            }
        }

        Device (LNKD)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x04)
            Method (_STA, 0, NotSerialized)
            {
                If (PIRD)
                {
                    Return (0x0B)
                }
                Else
                {
                    Return (0x09)
                }
            }

            Method (_PRS, 0, NotSerialized)
            {
                Return (PRSD)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (Zero, PIRD)
            }

            Method (_CRS, 0, NotSerialized)
            {
                CreateWordField (BUFA, One, IRQX)
                ShiftLeft (One, PIRD, IRQX)
                Return (BUFA)
            }

            Method (_SRS, 1, NotSerialized)
            {
                CreateWordField (Arg0, One, IRA)
                FindSetRightBit (IRA, Local0)
                Decrement (Local0)
                Store (Local0, PIRD)
            }
        }

        Device (LNKE)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x05)
            Method (_STA, 0, NotSerialized)
            {
                If (PIRE)
                {
                    Return (0x0B)
                }
                Else
                {
                    Return (0x09)
                }
            }

            Method (_PRS, 0, NotSerialized)
            {
                Return (PRSE)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (Zero, PIRE)
            }

            Method (_CRS, 0, NotSerialized)
            {
                CreateWordField (BUFA, One, IRQX)
                ShiftLeft (One, PIRE, IRQX)
                Return (BUFA)
            }

            Method (_SRS, 1, NotSerialized)
            {
                CreateWordField (Arg0, One, IRA)
                FindSetRightBit (PIRE, Local0)
                Decrement (Local0)
                Store (Local0, PIRE)
            }
        }

        Device (LNKF)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x02)
            Method (_STA, 0, NotSerialized)
            {
                If (PIRF)
                {
                    Return (0x0B)
                }
                Else
                {
                    Return (0x09)
                }
            }

            Method (_PRS, 0, NotSerialized)
            {
                Return (PRSF)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (Zero, PIRF)
            }

            Method (_CRS, 0, NotSerialized)
            {
                CreateWordField (BUFA, One, IRQX)
                ShiftLeft (One, PIRF, IRQX)
                Return (BUFA)
            }

            Method (_SRS, 1, NotSerialized)
            {
                CreateWordField (Arg0, One, IRA)
                FindSetRightBit (IRA, Local0)
                Decrement (Local0)
                Store (Local0, PIRF)
            }
        }

        Device (LNKG)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x03)
            Method (_STA, 0, NotSerialized)
            {
                If (PIRG)
                {
                    Return (0x0B)
                }
                Else
                {
                    Return (0x09)
                }
            }

            Method (_PRS, 0, NotSerialized)
            {
                Return (PRSG)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (Zero, PIRG)
            }

            Method (_CRS, 0, NotSerialized)
            {
                CreateWordField (BUFA, One, IRQX)
                ShiftLeft (One, PIRG, IRQX)
                Return (BUFA)
            }

            Method (_SRS, 1, NotSerialized)
            {
                CreateWordField (Arg0, One, IRA)
                FindSetRightBit (IRA, Local0)
                Decrement (Local0)
                Store (Local0, PIRG)
            }
        }

        Device (LNKH)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x04)
            Method (_STA, 0, NotSerialized)
            {
                If (PIRH)
                {
                    Return (0x0B)
                }
                Else
                {
                    Return (0x09)
                }
            }

            Method (_PRS, 0, NotSerialized)
            {
                Return (PRSH)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (Zero, PIRH)
            }

            Method (_CRS, 0, NotSerialized)
            {
                CreateWordField (BUFA, One, IRQX)
                ShiftLeft (One, PIRH, IRQX)
                Return (BUFA)
            }

            Method (_SRS, 1, NotSerialized)
            {
                CreateWordField (Arg0, One, IRA)
                FindSetRightBit (IRA, Local0)
                Decrement (Local0)
                Store (Local0, PIRH)
            }
        }
    }

    Scope (_SB)
    {
        Name (XCPD, Zero)
        Name (XNPT, One)
        Name (XCAP, 0x02)
        Name (XDCP, 0x04)
        Name (XDCT, 0x08)
        Name (XDST, 0x0A)
        Name (XLCP, 0x0C)
        Name (XLCT, 0x10)
        Name (XLST, 0x12)
        Name (XSCP, 0x14)
        Name (XSCT, 0x18)
        Name (XSST, 0x1A)
        Name (XRCT, 0x1C)
        Mutex (MUTE, 0x00)
        Method (RBPE, 1, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            Add (Arg0, PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, One)
            Field (PCFG, ByteAcc, NoLock, Preserve)
            {
                XCFG,   8
            }

            Release (MUTE)
            Return (XCFG)
        }

        Method (RWPE, 1, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFE, Arg0)
            Add (Arg0, PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x02)
            Field (PCFG, WordAcc, NoLock, Preserve)
            {
                XCFG,   16
            }

            Release (MUTE)
            Return (XCFG)
        }

        Method (RDPE, 1, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFC, Arg0)
            Add (Arg0, PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x04)
            Field (PCFG, DWordAcc, NoLock, Preserve)
            {
                XCFG,   32
            }

            Release (MUTE)
            Return (XCFG)
        }

        Method (WBPE, 2, NotSerialized)
        {
            Acquire (MUTE, 0x0FFF)
            Add (Arg0, PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, One)
            Field (PCFG, ByteAcc, NoLock, Preserve)
            {
                XCFG,   8
            }

            Store (Arg1, XCFG)
            Release (MUTE)
        }

        Method (WWPE, 2, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFE, Arg0)
            Add (Arg0, PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x02)
            Field (PCFG, WordAcc, NoLock, Preserve)
            {
                XCFG,   16
            }

            Store (Arg1, XCFG)
            Release (MUTE)
        }

        Method (WDPE, 2, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFC, Arg0)
            Add (Arg0, PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x04)
            Field (PCFG, DWordAcc, NoLock, Preserve)
            {
                XCFG,   32
            }

            Store (Arg1, XCFG)
            Release (MUTE)
        }

        Method (RWDP, 3, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFC, Arg0)
            Add (Arg0, PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x04)
            Field (PCFG, DWordAcc, NoLock, Preserve)
            {
                XCFG,   32
            }

            And (XCFG, Arg2, Local1)
            Or (Local1, Arg1, XCFG)
            Release (MUTE)
        }

        Method (RPME, 1, NotSerialized)
        {
            Add (Arg0, 0x84, Local0)
            Store (RDPE (Local0), Local1)
            If (LEqual (Local1, Ones))
            {
                Return (Zero)
            }
            Else
            {
                If (LAnd (Local1, 0x00010000))
                {
                    WDPE (Local0, And (Local1, 0x00010000))
                    Return (One)
                }

                Return (Zero)
            }
        }
    }

    Scope (_SB.PCI0.SBRG.ASOC)
    {
        OperationRegion (HWRE, SystemIO, 0x0E85, 0x02)
        Field (HWRE, ByteAcc, NoLock, Preserve)
        {
            HIDX,   8, 
            HDAT,   8
        }

        IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve)
        {
                    Offset (0x0B), 
            CPUD,   3, 
            CHAD,   3, 
            PWRD,   1, 
                    Offset (0x0C), 
                    Offset (0x0D), 
            CPUF,   8, 
            CHAF,   8, 
            PWRF,   8, 
                    Offset (0x18), 
            ECPF,   8, 
            ECHF,   8, 
            EPWF,   8, 
                    Offset (0x21), 
            V12V,   8, 
            V33V,   8, 
            V50V,   8, 
            VIN4,   8, 
            VIN5,   8, 
            VIN6,   8, 
            VIN7,   8, 
                    Offset (0x29), 
            CPUT,   8, 
            MBTE,   8, 
            TMP3,   8
        }

        OperationRegion (PM2I, SystemIO, 0x0CD0, 0x02)
        Field (PM2I, ByteAcc, NoLock, Preserve)
        {
            IPM2,   8, 
            DPM2,   8
        }

        IndexField (IPM2, DPM2, ByteAcc, NoLock, Preserve)
        {
                    Offset (0x59), 
                ,   6, 
            VCOR,   10
        }

        Name (G611, Package (0x07)
        {
            0x06020011, 
            "Vcore Voltage", 
            0x20000000, 
            Zero, 
            0x0352, 
            0x02EE, 
            0x02
        })
        Name (G612, Package (0x07)
        {
            0x06030012, 
            "CPU Temperature", 
            0x20000000, 
            Zero, 
            0x028A, 
            0x012C, 
            0x02
        })
        Name (G613, Package (0x07)
        {
            0x06040013, 
            "CPU FAN Speed", 
            0x20000000, 
            Zero, 
            0x0320, 
            0x1900, 
            0x02
        })
        Name (G673, Package (0x07)
        {
            0x06040073, 
            "Chassis FAN Speed", 
            0x20000000, 
            Zero, 
            0x0320, 
            0x1900, 
            0x02
        })
        Name (G6C3, Package (0x07)
        {
            0x060400C3, 
            "Power Fan Speed", 
            0x20000000, 
            Zero, 
            0x0320, 
            0x1900, 
            0x02
        })
        Name (G661, Package (0x07)
        {
            0x06020061, 
            "+12V Voltage", 
            0x20000000, 
            Zero, 
            0x27D8, 
            0x0E10, 
            0x02
        })
        Name (G662, Package (0x07)
        {
            0x06020062, 
            "+5V Voltage", 
            0x20000000, 
            Zero, 
            0x1194, 
            0x03E8, 
            0x02
        })
        Name (G663, Package (0x07)
        {
            0x06020063, 
            "+3.3V Voltage", 
            0x20000000, 
            Zero, 
            0x0B9A, 
            0x0294, 
            0x02
        })
        Name (G674, Package (0x07)
        {
            0x06030074, 
            "MB Temperature", 
            0x20000000, 
            Zero, 
            0x01C2, 
            0x01F4, 
            0x02
        })
        Name (GRP6, Package (0x09)
        {
            G611, 
            G612, 
            G613, 
            G673, 
            G6C3, 
            G661, 
            G662, 
            G663, 
            G674
        })
        Method (GIT6, 1, NotSerialized)
        {
            Name (_T_0, Zero)
            Store (And (Arg0, 0xFFFF), _T_0)
            If (LEqual (_T_0, 0x11))
            {
                Store (VCOR, Local0)
                Store (Zero, Local1)
                While (LEqual (Local0, 0xFF))
                {
                    Store (VCOR, Local0)
                    If (LEqual (Local1, 0x000186A0))
                    {
                        Break
                    }

                    Add (Local1, One, Local1)
                }

                Multiply (Local0, 0x0B75, Local0)
                Divide (Local0, 0x03E8, , Local0)
                Store (Local0, ASB1)
            }
            Else
            {
                If (LEqual (_T_0, 0x12))
                {
                    Store (CPUT, Local0)
                    Store (Zero, Local1)
                    While (LEqual (Local0, 0x80))
                    {
                        Store (CPUT, Local0)
                        If (LEqual (Local1, 0x000186A0))
                        {
                            Break
                        }

                        Add (Local1, One, Local1)
                    }

                    Multiply (Local0, 0x0A, Local0)
                    Store (0x0C, Local1)
                    Divide (Local1, 0x02, , Local1)
                    Multiply (Local1, 0x0A, Local1)
                    Subtract (Local0, Local1, Local0)
                    Store (Local0, ASB1)
                }
                Else
                {
                    If (LEqual (_T_0, 0x13))
                    {
                        Store (FANC (CPUF, ECPF), Local0)
                        Store (Local0, ASB1)
                    }
                    Else
                    {
                        If (LEqual (_T_0, 0x73))
                        {
                            Store (FANC (CHAF, ECHF), Local0)
                            Store (Local0, ASB1)
                        }
                        Else
                        {
                            If (LEqual (_T_0, 0xC3))
                            {
                                Store (FANC (PWRF, EPWF), Local0)
                                Store (Local0, ASB1)
                            }
                            Else
                            {
                                If (LEqual (_T_0, 0x61))
                                {
                                    Store (V12V, Local0)
                                    Store (Zero, Local1)
                                    While (LEqual (Local0, 0xFF))
                                    {
                                        Store (V12V, Local0)
                                        If (LEqual (Local1, 0x000186A0))
                                        {
                                            Break
                                        }

                                        Add (Local1, One, Local1)
                                    }

                                    Multiply (Local0, 0x10, Local0)
                                    Store (0x1E, Local1)
                                    Store (0x0A, Local2)
                                    Add (Local1, Local2, Local1)
                                    Multiply (Local0, Local1, Local0)
                                    Divide (Local0, Local2, Local3, Local0)
                                    Store (Local0, ASB1)
                                }
                                Else
                                {
                                    If (LEqual (_T_0, 0x62))
                                    {
                                        Store (V50V, Local0)
                                        Store (Zero, Local1)
                                        While (LEqual (Local0, 0xFF))
                                        {
                                            Store (V50V, Local0)
                                            If (LEqual (Local1, 0x000186A0))
                                            {
                                                Break
                                            }

                                            Add (Local1, One, Local1)
                                        }

                                        Multiply (Local0, 0x10, Local0)
                                        Store (0x22, Local1)
                                        Store (0x32, Local2)
                                        Add (Local1, Local2, Local1)
                                        Multiply (Local0, Local1, Local0)
                                        Divide (Local0, Local2, Local3, Local0)
                                        Store (Local0, ASB1)
                                    }
                                    Else
                                    {
                                        If (LEqual (_T_0, 0x63))
                                        {
                                            Store (V33V, Local0)
                                            Store (Zero, Local1)
                                            While (LEqual (Local0, 0xFF))
                                            {
                                                Store (V33V, Local0)
                                                If (LEqual (Local1, 0x000186A0))
                                                {
                                                    Break
                                                }

                                                Add (Local1, One, Local1)
                                            }

                                            Multiply (Local0, 0x10, Local0)
                                            Store (Local0, ASB1)
                                        }
                                        Else
                                        {
                                            If (LEqual (_T_0, 0x74))
                                            {
                                                Store (MBTE, Local0)
                                                Store (Zero, Local1)
                                                While (LEqual (Local0, 0x80))
                                                {
                                                    Store (MBTE, Local0)
                                                    If (LEqual (Local1, 0x000186A0))
                                                    {
                                                        Break
                                                    }

                                                    Add (Local1, One, Local1)
                                                }

                                                Multiply (Local0, 0x0A, Local0)
                                                Store (Local0, ASB1)
                                            }
                                            Else
                                            {
                                                Store (Zero, ASB0)
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }

        Method (SIT6, 3, NotSerialized)
        {
        }

        Method (FANC, 2, NotSerialized)
        {
            Store (Arg1, Local0)
            Multiply (Local0, 0x0100, Local0)
            Store (Arg0, Local1)
            Add (Local0, Local1, Local0)
            If (LAnd (LLess (Local0, 0x0FFF), LNotEqual (Local0, Zero)))
            {
                Divide (0x000A4CB8, Local0, Local1, Local0)
            }
            Else
            {
                Store (Zero, Local0)
            }

            Return (Local0)
        }
    }

    If (OSCF)
    {
        Scope (_SB.PCI0)
        {
            Method (_OSC, 4, NotSerialized)
            {
                Name (SUPP, Zero)
                Name (CTRL, Zero)
                If (LEqual (Arg0, Buffer (0x10)
                        {
                            /* 0000 */    0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40, 
                            /* 0008 */    0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66
                        }))
                {
                    CreateDWordField (Arg3, Zero, CDW1)
                    CreateDWordField (Arg3, 0x04, CDW2)
                    CreateDWordField (Arg3, 0x08, CDW3)
                    Store (CDW2, SUPP)
                    Store (CDW3, CTRL)
                    If (LNotEqual (And (SUPP, 0x16), 0x16))
                    {
                        And (CTRL, 0x1E)
                    }

                    And (CTRL, 0x1D, CTRL)
                    If (Not (And (CDW1, One)))
                    {
                        If (And (CTRL, One)) {}
                        If (And (CTRL, 0x04))
                        {
                            Store (One, EPNM)
                            Store (One, DPPF)
                            Store (One, FNGS)
                        }
                        Else
                        {
                            Store (Zero, EPNM)
                            Store (Zero, DPPF)
                            Store (Zero, FNGS)
                        }

                        If (And (CTRL, 0x10)) {}
                    }

                    If (LNotEqual (Arg1, One))
                    {
                        Or (CDW1, 0x08, CDW1)
                    }

                    If (LNotEqual (CDW3, CTRL))
                    {
                        Or (CDW1, 0x10, CDW1)
                    }

                    Store (CTRL, CDW3)
                    Return (Arg3)
                }
                Else
                {
                    Or (CDW1, 0x04, CDW1)
                    Return (Arg3)
                }
            }
        }
    }

    Scope (_SB.PCI0)
    {
        Method (_INI, 0, NotSerialized)
        {
            If (LLessEqual (RVID, 0x13))
            {
                Store (Zero, PWDE)
            }
        }
    }

    Scope (_SB)
    {
        Method (_INI, 0, NotSerialized)
        {
            Store (OSFL (), OSTY)
            If (LEqual (OSFL (), Zero))
            {
                Store (0x05, OSTY)
            }

            If (LEqual (OSFL (), 0x05))
            {
                Store (0x06, OSTY)
            }
        }

        Scope (PCI0)
        {
            Name (CRS, ResourceTemplate ()
            {
                WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
                    0x0000,             // Granularity
                    0x0000,             // Range Minimum
                    0x00FF,             // Range Maximum
                    0x0000,             // Translation Offset
                    0x0100,             // Length
                    ,, )
                IO (Decode16,
                    0x0CF8,             // Range Minimum
                    0x0CF8,             // Range Maximum
                    0x01,               // Alignment
                    0x08,               // Length
                    )
                WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                    0x0000,             // Granularity
                    0x0000,             // Range Minimum
                    0x0CF7,             // Range Maximum
                    0x0000,             // Translation Offset
                    0x0CF8,             // Length
                    ,, , TypeStatic)
                WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                    0x0000,             // Granularity
                    0x0D00,             // Range Minimum
                    0xFFFF,             // Range Maximum
                    0x0000,             // Translation Offset
                    0xF300,             // Length
                    ,, , TypeStatic)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                    0x00000000,         // Granularity
                    0x000A0000,         // Range Minimum
                    0x000BFFFF,         // Range Maximum
                    0x00000000,         // Translation Offset
                    0x00020000,         // Length
                    ,, , AddressRangeMemory, TypeStatic)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                    0x00000000,         // Granularity
                    0x000C0000,         // Range Minimum
                    0x000DFFFF,         // Range Maximum
                    0x00000000,         // Translation Offset
                    0x00020000,         // Length
                    ,, _Y1C, AddressRangeMemory, TypeStatic)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                    0x00000000,         // Granularity
                    0x00000000,         // Range Minimum
                    0x00000000,         // Range Maximum
                    0x00000000,         // Translation Offset
                    0x00000000,         // Length
                    ,, _Y1D, AddressRangeMemory, TypeStatic)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                    0x00000000,         // Granularity
                    0x00000000,         // Range Minimum
                    0x00000000,         // Range Maximum
                    0x00000000,         // Translation Offset
                    0x00000000,         // Length
                    ,, _Y1E, AddressRangeMemory, TypeStatic)
            })
            CreateDWordField (CRS, \_SB.PCI0._Y1C._MIN, MIN5)
            CreateDWordField (CRS, \_SB.PCI0._Y1C._MAX, MAX5)
            CreateDWordField (CRS, \_SB.PCI0._Y1C._LEN, LEN5)
            CreateDWordField (CRS, \_SB.PCI0._Y1D._MIN, MIN6)
            CreateDWordField (CRS, \_SB.PCI0._Y1D._MAX, MAX6)
            CreateDWordField (CRS, \_SB.PCI0._Y1D._LEN, LEN6)
            CreateDWordField (CRS, \_SB.PCI0._Y1E._MIN, MIN7)
            CreateDWordField (CRS, \_SB.PCI0._Y1E._MAX, MAX7)
            CreateDWordField (CRS, \_SB.PCI0._Y1E._LEN, LEN7)
            Method (_CRS, 0, NotSerialized)
            {
                Store (MG1L, Local0)
                If (Local0)
                {
                    Store (MG1B, MIN5)
                    Store (MG1L, LEN5)
                    Add (MIN5, Decrement (Local0), MAX5)
                }

                Store (MG2B, MIN6)
                Store (MG2L, LEN6)
                Store (MG2L, Local0)
                Add (MIN6, Decrement (Local0), MAX6)
                Store (MG3B, MIN7)
                Store (MG3L, LEN7)
                Store (MG3L, Local0)
                Add (MIN7, Decrement (Local0), MAX7)
                Return (CRS)
            }
        }
    }

    Name (WOTB, Zero)
    Name (WSSB, Zero)
    Name (WAXB, Zero)
    Method (_PTS, 1, NotSerialized)
    {
        Store (Arg0, DBG8)
        PTS (Arg0)
        Store (Zero, Index (WAKP, Zero))
        Store (Zero, Index (WAKP, One))
        If (LAnd (LEqual (Arg0, 0x04), LEqual (OSFL (), 0x02)))
        {
            Sleep (0x0BB8)
        }

        Store (ASSB, WSSB)
        Store (AOTB, WOTB)
        Store (AAXB, WAXB)
        Store (Arg0, ASSB)
        Store (OSFL (), AOTB)
        Store (Zero, AAXB)
    }

    Method (_WAK, 1, NotSerialized)
    {
        ShiftLeft (Arg0, 0x04, DBG8)
        WAK (Arg0)
        If (ASSB)
        {
            Store (WSSB, ASSB)
            Store (WOTB, AOTB)
            Store (WAXB, AAXB)
        }

        If (DerefOf (Index (WAKP, Zero)))
        {
            Store (Zero, Index (WAKP, One))
        }
        Else
        {
            Store (Arg0, Index (WAKP, One))
        }

        Return (WAKP)
    }

    Scope (\)
    {
        OperationRegion (NCLK, SystemMemory, PCIE, 0x02000000)
        Field (NCLK, AnyAcc, NoLock, Preserve)
        {
                    Offset (0x4C), 
            CLKE,   1, 
                    Offset (0x1048), 
            P3HH,   12, 
                ,   19, 
            P3EE,   1, 
            P4EN,   1, 
            P4NM,   12, 
            P4HI,   12, 
            P4IO,   1, 
                    Offset (0x1050), 
            P5EN,   1, 
            P5NM,   12, 
            P5HI,   12, 
            P5IO,   1, 
                    Offset (0x1054), 
            P6EN,   1, 
            P6NM,   12, 
            P6HI,   12, 
            P6IO,   1, 
                    Offset (0x10B0), 
            P1NM,   12, 
            P1HI,   12, 
            P1EN,   1, 
            P1IO,   1, 
                    Offset (0x10B4), 
            P2NM,   12, 
            P2HI,   12, 
            P2EN,   1, 
            P2IO,   1, 
                    Offset (0x10CC), 
            P3EN,   1, 
            P3NM,   12, 
            P3HI,   12, 
            P3IO,   1
        }

        OperationRegion (SOR1, SystemIO, SBA1, 0x10)
        Field (SOR1, ByteAcc, NoLock, Preserve)
        {
            SMSA,   8, 
            SSSA,   8, 
            SBCA,   8, 
            SHCA,   8, 
            SBAA,   8, 
            SD0A,   8, 
            SD1A,   8, 
            SBDA,   8, 
            SSCA,   8, 
            SMCA,   8, 
            SSEA,   16, 
            SSDA,   16, 
            SMTA,   8
        }

        OperationRegion (SOR2, SystemIO, SBA2, 0x10)
        Field (SOR2, ByteAcc, NoLock, Preserve)
        {
            SMSB,   8, 
            SSSB,   8, 
            SBCB,   8, 
            SHCB,   8, 
            SBAB,   8, 
            SD0B,   8, 
            SD1B,   8, 
            SBDB,   8, 
            SSCB,   8, 
            SMCB,   8, 
            SSEB,   16, 
            SSDB,   16, 
            SMTB,   8
        }

        Mutex (MSMB, 0x00)
        Method (RWBK, 5, NotSerialized)
        {
            Acquire (MSMB, 0xFFFF)
            If (LEqual (Arg0, Zero))
            {
                Store (SMSA, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, 0xFF, Local0)
                Store (Local0, SMSA)
                Sleep (0x02)
                Store (SBAA, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, Arg1, Local0)
                Store (Local0, SBAA)
                Sleep (0x02)
                Store (SHCA, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, Arg2, Local0)
                Store (Local0, SHCA)
                Sleep (0x02)
                Store (SBCA, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, 0x14, Local0)
                Store (Local0, SBCA)
                Sleep (0x02)
                Store (SD0A, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, Arg3, Local0)
                Store (Local0, SD0A)
                Sleep (0x02)
                And (Arg1, One, Local1)
                If (LEqual (Local1, Zero))
                {
                    Store (Arg3, Local2)
                    Store (Arg2, Local3)
                    While (Local2)
                    {
                        Store (DerefOf (Index (Arg4, Local3)), Local4)
                        Store (Local4, SBDA)
                        Sleep (0x02)
                        Decrement (Local2)
                        Increment (Local3)
                    }
                }

                Store (SBCA, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, 0x54, Local0)
                Store (Local0, SBCA)
                Sleep (0x02)
                Store (SMSA, Local1)
                While (LNot (And (Local1, One)))
                {
                    Store (SMSA, Local1)
                    If (And (Local1, 0x1C))
                    {
                        Release (MSMB)
                        Return (One)
                    }

                    If (And (Local1, 0x02))
                    {
                        Break
                    }

                    Sleep (0x02)
                }

                Store (SMSA, Local1)
                While (And (Local1, One))
                {
                    Store (SMSA, Local1)
                    Sleep (0x02)
                }

                And (Arg1, One, Local1)
                If (Local1)
                {
                    Store (Arg2, Local1)
                    Store (Arg3, Local2)
                    While (Local2)
                    {
                        Store (SBDA, Index (Arg4, Local1))
                        Sleep (0x02)
                        Increment (Local1)
                        Decrement (Local2)
                    }
                }
            }

            If (LEqual (Arg0, One)) {}
            Release (MSMB)
            Return (Zero)
        }

        Name (SMBV, Buffer (One)
        {
            0x00
        })
        Method (RWSM, 4, NotSerialized)
        {
            If (LEqual (Arg0, Zero))
            {
                Store (SHCA, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, Arg2, Local0)
                Store (Local0, SHCA)
                Sleep (0x02)
                Store (SBAA, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, Arg1, Local0)
                Store (Local0, SBAA)
                Sleep (0x02)
                Store (SBCA, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, 0x08, Local0)
                Store (Local0, SBCA)
                Sleep (0x02)
                And (Arg1, One, Local1)
                If (LEqual (Local1, Zero))
                {
                    Store (SD0A, Local0)
                    And (Local0, Zero, Local0)
                    Or (Local0, DerefOf (Index (Arg3, Zero)), Local0)
                    Store (Local0, SD0A)
                    Sleep (0x02)
                }

                Store (SMSA, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, 0x1E, Local0)
                Store (Local0, SMSA)
                Sleep (0x02)
                Store (SMSA, Local1)
                While (And (Local1, One))
                {
                    Store (SMSA, Local1)
                    Sleep (0x02)
                }

                Store (SBCA, Local1)
                Sleep (0x02)
                Or (Local1, 0x40, Local0)
                Store (Local0, SBCA)
                Sleep (0x02)
                Store (SMSA, Local1)
                Sleep (0x02)
                If (And (Local1, 0x1C))
                {
                    Return (One)
                }

                While (And (Local1, One))
                {
                    Store (SMSA, Local1)
                    Sleep (0x02)
                    If (And (Local1, 0x1C))
                    {
                        Return (One)
                    }
                }

                And (Arg1, One, Local1)
                If (Local1)
                {
                    Store (SD0A, Index (Arg3, Zero))
                    Sleep (0x02)
                }
            }

            If (LEqual (Arg0, One))
            {
                Store (SHCB, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, Arg2, Local0)
                Store (Local0, SHCB)
                Sleep (0x02)
                Store (SBAB, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, Arg1, Local0)
                Store (Local0, SBAB)
                Sleep (0x02)
                Store (SBCB, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, 0x08, Local0)
                Store (Local0, SBCB)
                Sleep (0x02)
                And (Arg1, One, Local1)
                If (LEqual (Local1, Zero))
                {
                    Store (SD0B, Local0)
                    And (Local0, Zero, Local0)
                    Or (Local0, DerefOf (Index (Arg3, Zero)), Local0)
                    Store (Local0, SD0B)
                    Sleep (0x02)
                }

                Store (SMSB, Local0)
                And (Local0, Zero, Local0)
                Or (Local0, 0x1E, Local0)
                Store (Local0, SMSB)
                Sleep (0x02)
                Store (SMSB, Local1)
                While (And (Local1, One))
                {
                    Store (SMSB, Local1)
                    Sleep (0x02)
                }

                Store (SBCB, Local1)
                Sleep (0x02)
                Or (Local1, 0x40, Local0)
                Store (Local0, SBCB)
                Sleep (0x02)
                Store (SMSB, Local1)
                Sleep (0x02)
                If (And (Local1, 0x1C))
                {
                    Return (One)
                }

                While (And (Local1, One))
                {
                    Store (SMSB, Local1)
                    Sleep (0x02)
                    If (And (Local1, 0x1C))
                    {
                        Return (One)
                    }
                }

                And (Arg1, One, Local1)
                If (Local1)
                {
                    Store (SD0B, Index (Arg3, Zero))
                    Sleep (0x02)
                }
            }

            Return (Zero)
        }

        OperationRegion (IOOR, SystemIO, SIOP, 0x02)
        Field (IOOR, ByteAcc, NoLock, Preserve)
        {
            IOID,   8, 
            IODT,   8
        }

        OperationRegion (GBOR, SystemIO, GIOB, 0x02)
        Field (GBOR, ByteAcc, NoLock, Preserve)
        {
                    Offset (0x01), 
                ,   5, 
            GP25,   1, 
            GP26,   1
        }

        Method (RSIO, 1, NotSerialized)
        {
            Store (Arg0, IOID)
            Return (IODT)
        }

        Method (WSIO, 2, NotSerialized)
        {
            Store (Arg0, IOID)
            Store (Arg1, IODT)
        }

        Method (RWIO, 3, NotSerialized)
        {
            WSIO (Arg0, Or (And (RSIO (Arg0), Arg1), Arg2))
        }

        Name (IPSW, Package (0x02)
        {
            Package (0x04)
            {
                0x87, 
                One, 
                0x55, 
                0x55
            }, 

            Package (0x04)
            {
                0x87, 
                One, 
                0x55, 
                0xAA
            }
        })
        Method (SLDN, 1, NotSerialized)
        {
            Store (Zero, Local1)
            If (LEqual (SIOP, 0x2E))
            {
                Store (Zero, Local1)
            }

            If (LEqual (SIOP, 0x4E))
            {
                Store (One, Local1)
            }

            Store (Zero, Local0)
            While (LNotEqual (Local0, 0x04))
            {
                Store (DerefOf (Index (DerefOf (Index (IPSW, Local1)), Local0)), 
                    IOID)
                Increment (Local0)
            }

            WSIO (0x07, Arg0)
        }

        Method (APTS, 1, NotSerialized)
        {
            \AOD.APTS (Arg0)
        }

        Method (AWAK, 1, NotSerialized)
        {
            \AOD.AWAK (Arg0)
        }

        Device (AOD)
        {
            Name (DBG, One)
            Name (OBID, Package (0x1C)
            {
                0x08, 
                0x01010000, 
                0x01020000, 
                0x01030000, 
                0x02010000, 
                0x02040000, 
                0x02060000, 
                0x02020000, 
                0x02030000, 
                Zero, 
                One, 
                One, 
                One, 
                One, 
                One, 
                One, 
                One, 
                One, 
                0xFF, 
                "CPU Clock", 
                "PCIE Clock", 
                "South Bridge Clock", 
                "DDR Voltage", 
                "NB Voltage", 
                "HT Voltage", 
                "SB Voltage", 
                "SidePort Voltage", 
                ""
            })
            Name (OBIT, Package (0x35)
            {
                0x01010000, 
                0x000186A0, 
                0x00061A80, 
                Zero, 
                0x03E8, 
                Zero, 
                0x01020000, 
                0x1388, 
                0x0003D090, 
                Zero, 
                0x03E8, 
                Zero, 
                0x01030000, 
                0xC350, 
                0x000186A0, 
                Zero, 
                0x03E8, 
                Zero, 
                0x02010000, 
                0x0002BF20, 
                0x0003D090, 
                Zero, 
                0x07D0, 
                Zero, 
                0x02040000, 
                0x0001ADB0, 
                0x00027100, 
                Zero, 
                0x07D0, 
                Zero, 
                0x02060000, 
                0x0001D4C0, 
                0x000222E0, 
                Zero, 
                0x07D0, 
                Zero, 
                0x02020000, 
                0x0001D4C0, 
                0x00020F58, 
                Zero, 
                0x1388, 
                Zero, 
                0x02030000, 
                0x000249F0, 
                0x0002BF20, 
                Zero, 
                0x2710, 
                Zero, 
                Zero, 
                Zero, 
                Zero, 
                Zero, 
                Zero
            })
            Name (OBDT, Package (0x01)
            {
                Zero
            })
            Method (BM01, 0, NotSerialized)
            {
                PWMI ()
            }

            Method (XINI, 0, NotSerialized)
            {
            }

            Method (EM01, 0, NotSerialized)
            {
            }

            Method (BM05, 1, NotSerialized)
            {
            }

            Method (EM05, 1, NotSerialized)
            {
            }

            Method (HM06, 0, NotSerialized)
            {
            }

            Method (HM07, 1, NotSerialized)
            {
            }

            Method (DISC, 0, NotSerialized)
            {
                SLDN (0x07)
                RWIO (0x26, 0xFF, 0x40)
                RWIO (0x2C, 0xEF, Zero)
                RWIO (0xC1, 0xFF, 0x40)
                RWIO (0xC9, 0xFF, 0x40)
                RWIO (0xB9, 0xFF, 0x40)
                Store (Zero, GP26)
            }

            Method (CNCT, 0, NotSerialized)
            {
                Store (One, GP26)
            }

            Name (PWMT, Buffer (0x29)
            {
                /* 0000 */    0x04, 0x04, 0x01, 0x00, 0x19, 0x0A, 0x01, 0x63, 
                /* 0008 */    0x06, 0x06, 0x01, 0x00, 0x0A, 0x00, 0x01, 0x63, 
                /* 0010 */    0x01, 0x01, 0x01, 0x00, 0x23, 0x05, 0x01, 0x63, 
                /* 0018 */    0x02, 0x02, 0x01, 0x00, 0x03, 0x02, 0x01, 0x63, 
                /* 0020 */    0x03, 0x03, 0x01, 0x00, 0x03, 0x00, 0x01, 0x63, 
                /* 0028 */    0xFF
            })
            Method (PWMI, 0, NotSerialized)
            {
                ShiftLeft (Zero, 0x04, Local0)
                Store (Add (A283, One), Local2)
                RWSM (SMBC, Local2, Local0, SMBV)
                Store (DerefOf (Index (SMBV, Zero)), Index (PWMT, 0x05))
                ShiftLeft (0x02, 0x04, Local0)
                Store (Add (A283, One), Local2)
                RWSM (SMBC, Local2, Local0, SMBV)
                Store (DerefOf (Index (SMBV, Zero)), Index (PWMT, 0x0D))
                ShiftLeft (One, 0x04, Local0)
                Store (Add (A283, One), Local2)
                RWSM (SMBC, Local2, Local0, SMBV)
                Store (DerefOf (Index (SMBV, Zero)), Index (PWMT, 0x15))
                SLDN (0x07)
                ShiftRight (And (RSIO (0xCE), 0x04), 0x02, Local3)
                ShiftRight (And (RSIO (0xCE), 0x08), 0x03, Local4)
                Add (Multiply (Local4, 0x02), Local3, Index (PWMT, 0x1D))
                ShiftRight (And (RSIO (0xCE), 0x10), 0x04, Local3)
                ShiftRight (And (\_SB.PCI0.SMBS.IO59, 0x40), 0x06, Local4)
                And (Not (Local4), One, Local4)
                Add (Multiply (Local4, 0x02), Local3, Index (PWMT, 0x25))
            }

            Method (VTR, 1, NotSerialized)
            {
                Store (Zero, Local0)
                Store (Arg0, Local1)
                If (LEqual (PWMX, 0x04))
                {
                    Store (Add (Divide (Subtract (Local1, 0x0001ADB0), 0x07D0, ), 
                        PMIN), Local0)
                    S283 (Zero, Local0)
                }
                Else
                {
                    If (LEqual (PWMX, 0x06))
                    {
                        Store (Add (Divide (Subtract (Local1, 0x0001D4C0), 0x07D0, ), 
                            PMIN), Local0)
                        S283 (0x02, Local0)
                    }
                    Else
                    {
                        If (LEqual (PWMX, One))
                        {
                            Add (Divide (Subtract (Local1, 0x0002BF20), 0x07D0, ), PMIN, 
                                Local0)
                            S283 (One, Local0)
                        }
                        Else
                        {
                            If (LEqual (PWMX, 0x02))
                            {
                                SLDN (0x07)
                                RWIO (0xCE, 0xF3, Zero)
                                Sleep (0x14)
                                Add (Divide (Subtract (Local1, 0x0001D4C0), 0x1388, ), PMIN, 
                                    Local0)
                                If (And (Local0, One))
                                {
                                    RWIO (0xCE, 0xFF, 0x04)
                                }

                                If (And (Local0, 0x02))
                                {
                                    RWIO (0xCE, 0xFF, 0x08)
                                }
                            }
                            Else
                            {
                                If (LEqual (PWMX, 0x03))
                                {
                                    SLDN (0x07)
                                    RWIO (0xCE, 0xEF, Zero)
                                    Or (\_SB.PCI0.SMBS.IO59, 0x44, \_SB.PCI0.SMBS.IO59)
                                    Sleep (0x14)
                                    Add (Divide (Subtract (Local1, 0x000249F0), 0x2710, ), PMIN, 
                                        Local0)
                                    If (And (Local0, One))
                                    {
                                        SLDN (0x07)
                                        RWIO (0xCE, 0xFF, 0x10)
                                    }

                                    If (And (Local0, 0x02))
                                    {
                                        And (\_SB.PCI0.SMBS.IO59, 0xBB, \_SB.PCI0.SMBS.IO59)
                                    }
                                }
                                Else
                                {
                                    Store (Zero, Local0)
                                }
                            }
                        }
                    }
                }

                Return (Local0)
            }

            Method (RTV, 1, NotSerialized)
            {
                Store (Arg0, Local0)
                If (LEqual (PWMX, 0x04))
                {
                    Store (Add (0x0001ADB0, Multiply (Subtract (Local0, PMIN), 0x07D0)
                        ), Local1)
                }
                Else
                {
                    If (LEqual (PWMX, 0x06))
                    {
                        Store (Add (0x0001D4C0, Multiply (Subtract (Local0, PMIN), 0x07D0)
                            ), Local1)
                    }
                    Else
                    {
                        If (LEqual (PWMX, One))
                        {
                            Add (0x0002BF20, Multiply (Subtract (Local0, PMIN), 0x07D0), Local1)
                        }
                        Else
                        {
                            If (LEqual (PWMX, 0x02))
                            {
                                Add (0x0001D4C0, Multiply (Subtract (Local0, PMIN), 0x1388), Local1)
                            }
                            Else
                            {
                                If (LEqual (PWMX, 0x03))
                                {
                                    Add (0x000249F0, Multiply (Subtract (Local0, PMIN), 0x2710), Local1)
                                }
                                Else
                                {
                                    Store (Zero, Local1)
                                }
                            }
                        }
                    }
                }

                Return (Local1)
            }

            Name (QLST, Package (0x07)
            {
                0x06, 
                Package (0x08)
                {
                    0x2700, 
                    "Advanced Clock Calibration", 
                    Zero, 
                    0x04, 
                    Buffer (0x09)
                    {
                        "Disabled"
                    }, 

                    Buffer (0x05)
                    {
                        "Auto"
                    }, 

                    Buffer (0x0A)
                    {
                        "All Cores"
                    }, 

                    Buffer (0x09)
                    {
                        "Per Core"
                    }
                }, 

                Package (0x16)
                {
                    0x455C, 
                    "Value (All Cores)", 
                    0x02, 
                    Buffer (0x05)
                    {
                        0x82, 0x02, 0x01, 0x03, 0x00
                    }, 

                    Buffer (0x05)
                    {
                        0x86, 0x10, 0x00, 0x02, 0x00
                    }, 

                    0x10, 
                    Buffer (0x03)
                    {
                        "0%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "+10%"
                    }, 

                    Buffer (0x05)
                    {
                        "+12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x05)
                    {
                        "- 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "-10%"
                    }, 

                    Buffer (0x05)
                    {
                        "-12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }
                }, 

                Package (0x16)
                {
                    0x4560, 
                    "Value (Core 0)", 
                    0x02, 
                    Buffer (0x05)
                    {
                        0x82, 0x03, 0x01, 0x03, 0x00
                    }, 

                    Buffer (0x05)
                    {
                        0x86, 0x10, 0x00, 0x02, 0x00
                    }, 

                    0x10, 
                    Buffer (0x03)
                    {
                        "0%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "+10%"
                    }, 

                    Buffer (0x05)
                    {
                        "+12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x05)
                    {
                        "- 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "-10%"
                    }, 

                    Buffer (0x05)
                    {
                        "-12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }
                }, 

                Package (0x16)
                {
                    0x4564, 
                    "Value (Core 1)", 
                    0x02, 
                    Buffer (0x05)
                    {
                        0x82, 0x03, 0x01, 0x03, 0x00
                    }, 

                    Buffer (0x05)
                    {
                        0x86, 0x10, 0x00, 0x02, 0x00
                    }, 

                    0x10, 
                    Buffer (0x03)
                    {
                        "0%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "+10%"
                    }, 

                    Buffer (0x05)
                    {
                        "+12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x05)
                    {
                        "- 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "-10%"
                    }, 

                    Buffer (0x05)
                    {
                        "-12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }
                }, 

                Package (0x16)
                {
                    0x4568, 
                    "Value (Core 2)", 
                    0x02, 
                    Buffer (0x05)
                    {
                        0x82, 0x03, 0x01, 0x03, 0x00
                    }, 

                    Buffer (0x05)
                    {
                        0x86, 0x10, 0x00, 0x02, 0x00
                    }, 

                    0x10, 
                    Buffer (0x03)
                    {
                        "0%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "+10%"
                    }, 

                    Buffer (0x05)
                    {
                        "+12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x05)
                    {
                        "- 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "-10%"
                    }, 

                    Buffer (0x05)
                    {
                        "-12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }
                }, 

                Package (0x16)
                {
                    0x456C, 
                    "Value (Core 3)", 
                    0x02, 
                    Buffer (0x05)
                    {
                        0x82, 0x03, 0x01, 0x03, 0x00
                    }, 

                    Buffer (0x05)
                    {
                        0x86, 0x10, 0x00, 0x02, 0x00
                    }, 

                    0x10, 
                    Buffer (0x03)
                    {
                        "0%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "+ 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "+10%"
                    }, 

                    Buffer (0x05)
                    {
                        "+12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }, 

                    Buffer (0x05)
                    {
                        "- 2%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 4%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 6%"
                    }, 

                    Buffer (0x05)
                    {
                        "- 8%"
                    }, 

                    Buffer (0x05)
                    {
                        "-10%"
                    }, 

                    Buffer (0x05)
                    {
                        "-12%"
                    }, 

                    Buffer (0x09)
                    {
                        "RESERVED"
                    }
                }
            })
            Name (ID01, Zero)
            Name (ID02, Zero)
            Method (SOID, 1, NotSerialized)
            {
                ShiftRight (Arg0, 0x18, ID01)
                ShiftRight (And (Arg0, 0x00FF0000), 0x10, ID02)
                Return (Zero)
            }

            Method (WROW, 4, NotSerialized)
            {
                Name (IFPK, Package (0x06)
                {
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero
                })
                CreateDWordField (Arg0, Zero, BUF0)
                CreateDWordField (Arg0, 0x04, BUF1)
                CreateDWordField (Arg0, 0x08, BUF2)
                CreateDWordField (Arg0, 0x0C, BUF3)
                CreateDWordField (Arg0, 0x10, BUF4)
                CreateDWordField (Arg0, 0x14, BUF5)
                Store (BUF0, Index (IFPK, Zero))
                Store (BUF1, Index (IFPK, One))
                Store (BUF2, Index (IFPK, 0x02))
                Store (BUF3, Index (IFPK, 0x03))
                Store (BUF4, Index (IFPK, 0x04))
                Store (BUF5, Index (IFPK, 0x05))
                Store (Arg3, Local0)
                Store (Zero, Local1)
                While (Local0)
                {
                    Store (DerefOf (Index (IFPK, Local1)), Index (Arg1, Add (Multiply (
                        Arg2, Arg3), Local1)))
                    Increment (Local1)
                    Decrement (Local0)
                }
            }

            Method (GROW, 4, NotSerialized)
            {
                Name (IFPK, Package (0x06)
                {
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero
                })
                Store (Arg3, Local0)
                Store (Zero, Local1)
                While (Local0)
                {
                    Store (DerefOf (Index (Arg0, Add (Multiply (Arg2, Arg3), Local1
                        ))), Index (IFPK, Local1))
                    Increment (Local1)
                    Decrement (Local0)
                }

                CreateDWordField (Arg1, Zero, BUF0)
                CreateDWordField (Arg1, 0x04, BUF1)
                CreateDWordField (Arg1, 0x08, BUF2)
                CreateDWordField (Arg1, 0x0C, BUF3)
                CreateDWordField (Arg1, 0x10, BUF4)
                CreateDWordField (Arg1, 0x14, BUF5)
                Store (DerefOf (Index (IFPK, Zero)), BUF0)
                Store (DerefOf (Index (IFPK, One)), BUF1)
                Store (DerefOf (Index (IFPK, 0x02)), BUF2)
                Store (DerefOf (Index (IFPK, 0x03)), BUF3)
                Store (DerefOf (Index (IFPK, 0x04)), BUF4)
                Store (DerefOf (Index (IFPK, 0x05)), BUF5)
            }

            Method (CPTB, 2, NotSerialized)
            {
                Name (LOID, Zero)
                CreateDWordField (Arg1, Zero, BUF0)
                CreateDWordField (Arg1, 0x04, BUF1)
                CreateDWordField (Arg1, 0x08, BUF2)
                CreateDWordField (Arg1, 0x0C, BUF3)
                CreateDWordField (Arg1, 0x10, BUF4)
                Store (Zero, Local0)
                Store (DerefOf (Index (OBIT, Local0)), LOID)
                While (LOID)
                {
                    If (LEqual (LOID, Arg0))
                    {
                        Store (DerefOf (Index (OBIT, Add (Local0, Zero))), BUF0)
                        Store (DerefOf (Index (OBIT, Add (Local0, One))), BUF1)
                        Store (DerefOf (Index (OBIT, Add (Local0, 0x02))), BUF2)
                        Store (DerefOf (Index (OBIT, Add (Local0, 0x03))), BUF3)
                        Store (DerefOf (Index (OBIT, Add (Local0, 0x04))), BUF4)
                        Break
                    }

                    Add (Local0, 0x06, Local0)
                    Store (DerefOf (Index (OBIT, Local0)), LOID)
                }

                If (LEqual (LOID, Zero))
                {
                    Return (0xFF)
                }

                Return (Zero)
            }

            Method (CBTP, 1, NotSerialized)
            {
                Name (LOID, Zero)
                CreateDWordField (Arg0, Zero, BUF0)
                CreateDWordField (Arg0, 0x04, BUF1)
                CreateDWordField (Arg0, 0x08, BUF2)
                CreateDWordField (Arg0, 0x0C, BUF3)
                CreateDWordField (Arg0, 0x10, BUF4)
                CreateDWordField (Arg0, 0x14, BUF5)
                Store (Zero, Local0)
                Store (DerefOf (Index (OBIT, Local0)), LOID)
                While (LOID)
                {
                    If (LEqual (LOID, BUF0))
                    {
                        Store (BUF0, Index (OBIT, Add (Local0, Zero)))
                        Store (BUF1, Index (OBIT, Add (Local0, One)))
                        Store (BUF2, Index (OBIT, Add (Local0, 0x02)))
                        Store (BUF3, Index (OBIT, Add (Local0, 0x03)))
                        Store (BUF4, Index (OBIT, Add (Local0, 0x04)))
                        Store (BUF5, Index (OBIT, Add (Local0, 0x05)))
                        Break
                    }

                    Add (Local0, 0x06, Local0)
                    Store (DerefOf (Index (OBIT, Local0)), LOID)
                }

                If (LEqual (LOID, Zero))
                {
                    Return (0xFF)
                }

                Return (Zero)
            }

            Method (ABS, 2, NotSerialized)
            {
                If (LLess (Arg0, Arg1))
                {
                    Return (Subtract (Arg1, Arg0))
                }
                Else
                {
                    Return (Subtract (Arg0, Arg1))
                }
            }

            Name (CPUD, Zero)
            Name (GFXD, Zero)
            Name (SBCD, Zero)
            Method (GETC, 1, NotSerialized)
            {
                If (RWBK (Zero, 0xD3, Zero, 0x20, TSBF))
                {
                    Store (One, GVB2)
                    Store (Zero, GVB1)
                    Return (GVBF)
                }

                Store (Zero, GVB2)
                Store (CCLK (Arg0), GVB1)
                Return (GVBF)
            }

            Method (SETC, 2, NotSerialized)
            {
                If (RWBK (Zero, 0xD3, Zero, 0x20, TSBF))
                {
                    Return (One)
                }

                If (LEqual (Arg0, One))
                {
                    Store (GDIV (0x14), Local0)
                    Store (GCCX (0x10, 0x11, 0x14, 0xC350), Local1)
                    Store (Multiply (Arg1, Local0), Local2)
                    If (LNotEqual (Local1, Local2))
                    {
                        If (LNot (CFMN (Local2, 0xC350)))
                        {
                            SFSB ()
                        }
                    }

                    Store (Zero, Local3)
                }
                Else
                {
                    If (LEqual (Arg0, 0x02))
                    {
                        Store (GDIV (0x1C), Local0)
                        Store (GCCX (0x1A, 0x1B, 0x1C, 0x37EE), Local1)
                        Store (Multiply (Arg1, Local0), Local2)
                        Store (RMPC (Local1, Local2, 0x07D0, Arg0), Local3)
                    }
                    Else
                    {
                        If (LEqual (Arg0, 0x03))
                        {
                            Store (GDIV (0x1F), Local0)
                            Store (GCCX (0x1D, 0x1E, 0x1F, 0x37EE), Local1)
                            Store (Multiply (Arg1, Local0), Local2)
                            Store (RMPC (Local1, Local2, 0x07D0, Arg0), Local3)
                        }
                    }
                }

                Store ("current target ramp step clkid", Debug)
                Store (Local1, Debug)
                Store (Local2, Debug)
                Store (0x07D0, Debug)
                Store (Arg0, Debug)
                If (Local3)
                {
                    Return (Local3)
                }

                Return (Zero)
            }

            Method (CINI, 0, NotSerialized)
            {
                If (RWBK (Zero, 0xD3, 0x07, 0x09, TSBF))
                {
                    Return (One)
                }

                If (LOr (LNotEqual (And (DerefOf (Index (TSBF, 0x08)), 
                    0x0F), One), LNotEqual (DerefOf (Index (TSBF, 0x07)), 0x75)))
                {
                    Return (0x03)
                }

                Store (0x20, Index (TSBF, 0x0B))
                Or (DerefOf (Index (TSBF, 0x0C)), 0xB0, Index (TSBF, 0x0C
                    ))
                If (RWBK (Zero, 0xD2, 0x0B, 0x02, TSBF))
                {
                    Return (One)
                }

                Return (Zero)
            }

            Method (GCCX, 4, NotSerialized)
            {
                And (DerefOf (Index (TSBF, Arg2)), 0x80, Local0)
                ShiftRight (Local0, 0x07, Local0)
                And (DerefOf (Index (TSBF, Arg0)), 0xC0, Local1)
                ShiftRight (Local1, 0x05, Local1)
                And (DerefOf (Index (TSBF, Arg1)), 0xFF, Local2)
                ShiftLeft (Local2, 0x03, Local2)
                Add (Local0, Local1, Local0)
                Add (Local0, Local2, Local0)
                And (DerefOf (Index (TSBF, Arg0)), 0x3F, Local1)
                Multiply (Arg3, Local0, Local2)
                Divide (Local2, Local1, , Local3)
                Return (Local3)
            }

            Name (VCOM, Zero)
            Name (VCON, Zero)
            Method (CCMN, 2, NotSerialized)
            {
                Store (Arg1, Local0)
                Store (ABS (Arg0, Arg1), Local1)
                Store (0x13, Local2)
                While (LLess (Local2, 0x19))
                {
                    Add (Divide (Multiply (Arg0, Local2), Arg1, ), 0x02, 
                        Local3)
                    If (LGreater (Local3, 0x0800))
                    {
                        Store (0x0800, Local3)
                    }

                    If (LGreater (Divide (Multiply (Arg0, Local2), Arg1, ), 
                        0x02))
                    {
                        Subtract (Divide (Multiply (Arg0, Local2), Arg1, ), 0x02, 
                            Local4)
                        If (LLess (Local4, 0x02))
                        {
                            Store (0x02, Local4)
                        }
                    }
                    Else
                    {
                        Store (0x02, Local4)
                    }

                    While (LLessEqual (Local4, Local3))
                    {
                        Store (Divide (Multiply (Arg1, Local4), Local2, ), Local0)
                        Store (ABS (Arg0, Local0), Local5)
                        If (LLess (Local5, Local1))
                        {
                            Store ("N", Debug)
                            Store (Local4, Debug)
                            Store ("M", Debug)
                            Store (Local2, Debug)
                            Store ("Diff", Debug)
                            Store (Local5, Debug)
                            Store (Local4, VCON)
                            Store (Local2, VCOM)
                            Store (Local5, Local1)
                            If (LLess (Local5, 0x012C))
                            {
                                Break
                            }
                        }

                        Increment (Local4)
                    }

                    Increment (Local2)
                }
            }

            Method (CCLK, 1, NotSerialized)
            {
                Name (VCOV, Zero)
                Name (VCOD, Zero)
                If (LEqual (Arg0, One))
                {
                    If (LEqual (CPUD, Zero))
                    {
                        Store (GDIV (0x14), CPUD)
                    }

                    Store (CPUD, VCOD)
                    Store (GCCX (0x10, 0x11, 0x14, 0xC350), VCOV)
                }
                Else
                {
                    If (LEqual (Arg0, 0x02))
                    {
                        If (LEqual (GFXD, Zero))
                        {
                            Store (GDIV (0x1C), GFXD)
                        }

                        Store (GFXD, VCOD)
                        Store (GCCX (0x1A, 0x1B, 0x1C, 0x37EE), VCOV)
                    }
                    Else
                    {
                        If (LEqual (Arg0, 0x03))
                        {
                            If (LEqual (SBCD, Zero))
                            {
                                Store (GDIV (0x1F), SBCD)
                            }

                            Store (SBCD, VCOD)
                            Store (GCCX (0x1D, 0x1E, 0x1F, 0x37EE), VCOV)
                        }
                    }
                }

                Return (Divide (VCOV, VCOD, ))
            }

            Method (SCCX, 5, NotSerialized)
            {
                Store (Zero, VCOM)
                Store (Zero, VCOM)
                CCMN (Arg0, Arg4)
                Store ("VCOM", Debug)
                Store (VCOM, Debug)
                Store ("VCON", Debug)
                Store (VCON, Debug)
                Store (Or (And (ShiftLeft (VCON, 0x05), 0xC0), VCOM
                    ), Index (TSBF, Arg1))
                Store (And (ShiftRight (VCON, 0x03), 0xFF), Index (TSBF, 
                    Arg2))
                Or (And (DerefOf (Index (TSBF, Arg3)), 0x7F), And (
                    ShiftLeft (VCON, 0x07), 0x80), Index (TSBF, Arg3))
                Store (TSBF, Debug)
                If (RWBK (Zero, 0xD2, Arg1, Add (Subtract (Arg3, Arg1), 
                    One), TSBF))
                {
                    Return (One)
                }

                Return (Zero)
            }

            Name (DIVD, Buffer (0x10)
            {
                /* 0000 */    0x02, 0x03, 0x05, 0x09, 0x04, 0x06, 0x0A, 0x12, 
                /* 0008 */    0x08, 0x0C, 0x14, 0x24, 0x10, 0x18, 0x28, 0x48
            })
            Method (GDIV, 1, NotSerialized)
            {
                Return (DerefOf (Index (DIVD, And (DerefOf (Index (TSBF, Arg0)), 
                    0x0F))))
            }

            Method (WTCX, 2, NotSerialized)
            {
                Store (Arg1, Local0)
                If (LEqual (Arg0, One))
                {
                    Return (SCCX (Local0, 0x10, 0x11, 0x14, 0xC350))
                }
                Else
                {
                    If (LEqual (Arg0, 0x02))
                    {
                        Return (SCCX (Local0, 0x1A, 0x1B, 0x1C, 0x37EE))
                    }
                    Else
                    {
                        If (LEqual (Arg0, 0x03))
                        {
                            Return (SCCX (Local0, 0x1D, 0x1E, 0x1F, 0x37EE))
                        }
                    }
                }

                Return (0x04)
            }

            Method (RMPC, 4, NotSerialized)
            {
                Name (STAT, Zero)
                Store (Arg0, Local0)
                Store (Arg1, Local1)
                While (LGreater (ABS (Local1, Local0), Arg2))
                {
                    If (LLess (Local0, Local1))
                    {
                        Add (Local0, Arg2, Local0)
                    }
                    Else
                    {
                        Subtract (Local0, Arg2, Local0)
                    }

                    Store (Local0, Debug)
                    Store (WTCX (Arg3, Local0), STAT)
                    Sleep (0x01F4)
                    If (STAT)
                    {
                        Return (STAT)
                    }
                }

                If (LNotEqual (Local0, Local1))
                {
                    Store (WTCX (Arg3, Local1), STAT)
                    Sleep (0x01F4)
                    If (STAT)
                    {
                        Return (STAT)
                    }
                }

                Return (Zero)
            }

            Method (SFSB, 0, NotSerialized)
            {
                RWBK (Zero, 0xD3, Zero, 0x20, TSBF)
                Store (DerefOf (Index (TSBF, 0x0C)), Local0)
                Store (DerefOf (Index (TSBF, 0x05)), Local1)
                Store (And (DerefOf (Index (TSBF, 0x14)), 0x7F), Local2)
                Store (And (DerefOf (Index (TSBF, 0x10)), 0x3F), Local3)
                Store (Multiply (Local3, 0x08), Local4)
                Store (Or (ShiftLeft (And (Local4, 0x06), 0x05), Local3
                    ), Local5)
                Store (And (ShiftRight (Local4, 0x03), 0xFF), Local6)
                Store (ShiftLeft (And (Local4, One), 0x07), Local7)
                Store (Or (Local0, 0x80), Index (TSBF, 0x0C))
                Store (And (Local1, 0xEF), Index (TSBF, 0x05))
                Store (Local5, Index (TSBF, 0x10))
                Store (Local6, Index (TSBF, 0x11))
                Store (Or (Local2, Local7), Index (TSBF, 0x14))
                RWBK (Zero, 0xD2, 0x0C, One, TSBF)
                RWBK (Zero, 0xD2, 0x05, One, TSBF)
                RWBK (Zero, 0xD2, 0x11, One, TSBF)
                Sleep (0x0A)
                RWBK (Zero, 0xD2, 0x10, One, TSBF)
                Sleep (0x0A)
                RWBK (Zero, 0xD2, 0x14, One, TSBF)
                Sleep (0x14)
                Store (And (DerefOf (Index (TGMN, Zero)), 0x3F), Local3)
                Store (Multiply (Local3, 0x08), Local4)
                Store (Or (ShiftLeft (And (Local4, 0x06), 0x05), Local3
                    ), Local5)
                Store (And (ShiftRight (Local4, 0x03), 0xFF), Local6)
                Store (ShiftLeft (And (Local4, One), 0x07), Local7)
                Store (Or (Local1, 0x10), Index (TSBF, 0x05))
                Store (And (Local0, 0x7F), Index (TSBF, 0x0C))
                RWBK (Zero, 0xD2, 0x05, One, TSBF)
                RWBK (Zero, 0xD2, 0x0C, One, TSBF)
                Store (Local5, Index (TSBF, 0x10))
                Store (Local6, Index (TSBF, 0x11))
                Store (Or (Local2, Local7), Index (TSBF, 0x14))
                RWBK (Zero, 0xD2, 0x10, One, TSBF)
                Sleep (0x0A)
                RWBK (Zero, 0xD2, 0x11, One, TSBF)
                Sleep (0x0A)
                RWBK (Zero, 0xD2, 0x14, One, TSBF)
                Sleep (0x0A)
                Store (Or (Local0, 0x80), Index (TSBF, 0x0C))
                Store (And (Local1, 0xEF), Index (TSBF, 0x05))
                RWBK (Zero, 0xD2, 0x0C, One, TSBF)
                RWBK (Zero, 0xD2, 0x05, One, TSBF)
                Sleep (0x0A)
                Store (DerefOf (Index (TGMN, Zero)), Index (TSBF, 0x10))
                Store (DerefOf (Index (TGMN, One)), Index (TSBF, 0x11))
                Store (Or (Local2, DerefOf (Index (TGMN, 0x02))), Index (
                    TSBF, 0x14))
                RWBK (Zero, 0xD2, 0x11, One, TSBF)
                Sleep (0x0A)
                RWBK (Zero, 0xD2, 0x10, One, TSBF)
                Sleep (0x0A)
                RWBK (Zero, 0xD2, 0x14, One, TSBF)
                Sleep (0x14)
            }

            Name (TGMN, Buffer (0x03)
            {
                0x00, 0x00, 0x00
            })
            Method (CFMN, 2, NotSerialized)
            {
                Store (0x0A, Local2)
                While (LLessEqual (Local2, 0x19))
                {
                    Divide (Multiply (Arg0, Local2), Arg1, Local3)
                    If (LEqual (Local3, Zero))
                    {
                        Store (Divide (Multiply (Arg0, Local2), Arg1, ), Local4)
                        If (LLess (ShiftRight (Local4, 0x03), 0x0100))
                        {
                            Store (Or (ShiftLeft (And (Local4, 0x06), 0x05), Local2
                                ), Index (TGMN, Zero))
                            Store (And (ShiftRight (Local4, 0x03), 0xFF), Index (TGMN, 
                                One))
                            Store (ShiftLeft (And (Local4, One), 0x07), Index (TGMN, 
                                0x02))
                            Return (Zero)
                        }
                    }

                    Increment (Local2)
                }

                Return (One)
            }

            Name (PWIF, Buffer (0x08)
            {
                /* 0000 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
            })
            CreateByteField (PWIF, One, PWMX)
            CreateByteField (PWIF, 0x02, PWEN)
            CreateByteField (PWIF, 0x03, PMIN)
            CreateByteField (PWIF, 0x04, PMAX)
            CreateByteField (PWIF, 0x05, PDFT)
            CreateByteField (PWIF, 0x06, PSTP)
            CreateByteField (PWIF, 0x07, PNMD)
            Name (PXIF, Buffer (0x04)
            {
                0x00, 0x00, 0x00, 0x00
            })
            CreateByteField (PXIF, Zero, PXHI)
            CreateByteField (PXIF, One, PXNM)
            CreateByteField (PXIF, 0x02, PXEN)
            CreateByteField (PXIF, 0x03, PXIO)
            Method (VINI, 0, NotSerialized)
            {
                If (DBG)
                {
                    Store ("VINI", Debug)
                }

                Name (LDFT, Zero)
                Store (DerefOf (Index (OBID, Zero)), Local0)
                Store (One, Local1)
                While (Local0)
                {
                    SOID (DerefOf (Index (OBID, Local1)))
                    If (DBG)
                    {
                        Store ("ID", Debug)
                        Store (ID01, Debug)
                        Store (ID02, Debug)
                    }

                    If (LEqual (ID01, 0x02))
                    {
                        If (LEqual (GPIF (ID02), Zero))
                        {
                            If (DBG)
                            {
                                Store ("PWIF", Debug)
                                Store (PWIF, Debug)
                            }

                            If (LEqual (PWEN, One))
                            {
                                PWMR (PWMX)
                                If (LNot (LAnd (PXEN, PXIO)))
                                {
                                    Store (One, LDFT)
                                    Break
                                }
                            }
                        }
                    }

                    Decrement (Local0)
                    Increment (Local1)
                }

                If (DBG)
                {
                    Store ("LDFT", Debug)
                    Store (LDFT, Debug)
                }

                If (LEqual (LDFT, One))
                {
                    DISC ()
                    Store (DerefOf (Index (OBID, Zero)), Local0)
                    Store (One, Local1)
                    While (Local0)
                    {
                        SOID (DerefOf (Index (OBID, Local1)))
                        If (DBG)
                        {
                            Store ("ID", Debug)
                            Store (ID01, Debug)
                            Store (ID02, Debug)
                        }

                        If (LEqual (ID01, 0x02))
                        {
                            If (LEqual (GPIF (ID02), Zero))
                            {
                                If (DBG)
                                {
                                    Store ("PWIF", Debug)
                                    Store (PWIF, Debug)
                                }

                                If (LEqual (PWEN, One))
                                {
                                    FPDV (PWMX)
                                    PWMW (PWMX, PDFT)
                                }

                                If (DBG)
                                {
                                    Store ("PWMR", Debug)
                                    Store (PWMR (PWMX), Debug)
                                }
                            }
                        }

                        Decrement (Local0)
                        Increment (Local1)
                    }
                }

                Store ("PWM Register", Debug)
                Store ("PX EN PXNM PXHI PXIO", Debug)
                Store (One, CLKE)
                Store (P1EN, Debug)
                Store (P1NM, Debug)
                Store (P1HI, Debug)
                Store (P1IO, Debug)
                Store (P2EN, Debug)
                Store (P2NM, Debug)
                Store (P2HI, Debug)
                Store (P2IO, Debug)
                Store (P3EN, Debug)
                Store (P3NM, Debug)
                Store (P3HI, Debug)
                Store (P3IO, Debug)
                Store (P4EN, Debug)
                Store (P4NM, Debug)
                Store (P4HI, Debug)
                Store (P4IO, Debug)
                Store (P5EN, Debug)
                Store (P5NM, Debug)
                Store (P5HI, Debug)
                Store (P5IO, Debug)
                Store (P6EN, Debug)
                Store (P6NM, Debug)
                Store (P6HI, Debug)
                Store (P6IO, Debug)
                Store (Zero, CLKE)
                CNCT ()
            }

            Method (SETV, 2, NotSerialized)
            {
                If (LEqual (DBG, One))
                {
                    Store ("setv", Debug)
                }

                If (LEqual (GPIF (Arg0), Zero))
                {
                    Store (VTR (Arg1), Local0)
                    If (LEqual (DBG, One))
                    {
                        Store (PWIF, Debug)
                        Store ("seted Regiseter", Debug)
                        Store (Local0, Debug)
                    }

                    WTVR (Local0, PWMX, PMAX, PMIN, PDFT, PSTP)
                    If (LEqual (DBG, One))
                    {
                        Store ("read REG", Debug)
                        Store (PWMR (PWMX), Debug)
                    }
                }
            }

            Method (GETV, 1, NotSerialized)
            {
                If (DBG)
                {
                    Store ("getv", Debug)
                }

                If (LEqual (GPIF (Arg0), Zero))
                {
                    If (DBG)
                    {
                        Store ("PWIF", Debug)
                        Store (PWIF, Debug)
                    }

                    Store (PWMR (PWMX), Local0)
                    If (DBG)
                    {
                        Store ("REG value", Debug)
                        Store (Local0, Debug)
                    }

                    Store (RTV (Local0), Local1)
                    If (DBG)
                    {
                        Store ("Voltage value", Debug)
                        Store (Local1, Debug)
                    }

                    Store (Zero, GVB2)
                    Store (Local1, GVB1)
                }
                Else
                {
                    Store (Zero, GVB1)
                    Store (0x04, GVB2)
                }

                Return (GVBF)
            }

            Method (GPIF, 1, NotSerialized)
            {
                Store (Zero, Local1)
                Store (Zero, Local0)
                While (One)
                {
                    If (LEqual (DerefOf (Index (PWMT, Local1)), 0xFF))
                    {
                        Store (0xFF, Local0)
                        Break
                    }

                    If (LEqual (DerefOf (Index (PWMT, Local1)), Arg0))
                    {
                        Store (0x08, Local2)
                        Store (Zero, Local3)
                        While (Local2)
                        {
                            Store (DerefOf (Index (PWMT, Add (Local1, Local3))), Index (
                                PWIF, Local3))
                            Increment (Local3)
                            Decrement (Local2)
                        }

                        Break
                    }

                    Add (Local1, 0x08, Local1)
                }

                If (LEqual (Local0, 0xFF))
                {
                    Return (0xFF)
                }

                Return (Zero)
            }

            Method (WTVR, 6, NotSerialized)
            {
                Name (PTGT, Zero)
                If (LOr (LGreater (Arg0, Arg2), LLess (Arg0, Arg3)))
                {
                    Store (Arg4, PTGT)
                }
                Else
                {
                    Store (Arg0, PTGT)
                }

                Store (PWMR (Arg1), Local0)
                RMPV (PTGT, Local0, Arg5, Arg1)
                Return (Zero)
            }

            Method (PWMR, 1, NotSerialized)
            {
                Store (One, CLKE)
                If (LEqual (Arg0, One))
                {
                    Store (P1HI, Local0)
                    Store (P1HI, PXHI)
                    Store (P1NM, PXNM)
                    Store (P1EN, PXEN)
                    Store (P1IO, PXIO)
                }
                Else
                {
                    If (LEqual (Arg0, 0x02))
                    {
                        Store (P2HI, Local0)
                        Store (P2HI, PXHI)
                        Store (P2NM, PXNM)
                        Store (P2EN, PXEN)
                        Store (P2IO, PXIO)
                    }
                    Else
                    {
                        If (LEqual (Arg0, 0x03))
                        {
                            Store (P3HI, Local0)
                            Store (P3HI, PXHI)
                            Store (P3NM, PXNM)
                            Store (P3EN, PXEN)
                            Store (P3IO, PXIO)
                        }
                        Else
                        {
                            If (LEqual (Arg0, 0x04))
                            {
                                Store (P4HI, Local0)
                                Store (P4HI, PXHI)
                                Store (P4NM, PXNM)
                                Store (P4EN, PXEN)
                                Store (P4IO, PXIO)
                            }
                            Else
                            {
                                If (LEqual (Arg0, 0x05))
                                {
                                    Store (P5HI, Local0)
                                    Store (P5HI, PXHI)
                                    Store (P5NM, PXNM)
                                    Store (P5EN, PXEN)
                                    Store (P5IO, PXIO)
                                }
                                Else
                                {
                                    If (LEqual (Arg0, 0x06))
                                    {
                                        Store (P6HI, Local0)
                                        Store (P6HI, PXHI)
                                        Store (P6NM, PXNM)
                                        Store (P6EN, PXEN)
                                        Store (P6IO, PXIO)
                                    }
                                    Else
                                    {
                                        Store (0x03, Local0)
                                    }
                                }
                            }
                        }
                    }
                }

                Store (Zero, CLKE)
                Return (Local0)
            }

            Method (PWMW, 2, NotSerialized)
            {
                Store (One, CLKE)
                Store (Arg1, Local1)
                If (LEqual (Arg0, One))
                {
                    Store (Local1, P1HI)
                }
                Else
                {
                    If (LEqual (Arg0, 0x02))
                    {
                        Store (Local1, P2HI)
                    }
                    Else
                    {
                        If (LEqual (Arg0, 0x03))
                        {
                            Store (Local1, P3HI)
                            Store (Local1, P3HH)
                        }
                        Else
                        {
                            If (LEqual (Arg0, 0x04))
                            {
                                Store (Local1, P4HI)
                            }
                            Else
                            {
                                If (LEqual (Arg0, 0x05))
                                {
                                    Store (Local1, P5HI)
                                }
                                Else
                                {
                                    If (LEqual (Arg0, 0x06))
                                    {
                                        Store (Local1, P6HI)
                                    }
                                }
                            }
                        }
                    }
                }

                Store (Zero, CLKE)
                Return (Zero)
            }

            Method (FPDV, 1, NotSerialized)
            {
                Store (PNMD, Local2)
                Store (One, CLKE)
                If (LEqual (Arg0, One))
                {
                    Store (Local2, P1NM)
                    Store (One, P1EN)
                    Store (One, P1IO)
                }
                Else
                {
                    If (LEqual (Arg0, 0x02))
                    {
                        Store (Local2, P2NM)
                        Store (One, P2EN)
                        Store (One, P2IO)
                    }
                    Else
                    {
                        If (LEqual (Arg0, 0x03))
                        {
                            Store (Local2, P3NM)
                            Store (One, P3EN)
                            Store (One, P3IO)
                            Store (One, P3EE)
                        }
                        Else
                        {
                            If (LEqual (Arg0, 0x04))
                            {
                                Store (Local2, P4NM)
                                Store (One, P4EN)
                                Store (One, P4IO)
                            }
                            Else
                            {
                                If (LEqual (Arg0, 0x05))
                                {
                                    Store (Local2, P5NM)
                                    Store (One, P5EN)
                                    Store (One, P5IO)
                                }
                                Else
                                {
                                    If (LEqual (Arg0, 0x06))
                                    {
                                        Store (Local2, P6NM)
                                        Store (One, P6EN)
                                        Store (One, P6IO)
                                    }
                                }
                            }
                        }
                    }
                }

                Store (Zero, CLKE)
            }

            Method (RMPV, 4, NotSerialized)
            {
                Store (Arg0, Local0)
                Store (Arg1, Local1)
                While (One)
                {
                    If (LLess (ABS (Local0, Local1), Arg2))
                    {
                        Break
                    }

                    If (LGreater (Local0, Local1))
                    {
                        Add (Local1, Arg2, Local1)
                    }

                    If (LLess (Local0, Local1))
                    {
                        Subtract (Local1, Arg2, Local1)
                    }

                    PWMW (Arg3, Local1)
                    Sleep (0x64)
                }

                If (LNotEqual (Local0, Local1))
                {
                    PWMW (Arg3, Local0)
                }

                Sleep (0x02)
            }

            Name (A283, 0x3C)
            Name (SMBC, One)
            Method (S283, 2, NotSerialized)
            {
                ShiftLeft (Arg0, 0x04, Local0)
                Store (Arg1, SMBV)
                RWSM (SMBC, A283, Local0, SMBV)
                Add (ShiftLeft (Arg0, 0x04), One, Local0)
                Store (One, SMBV)
                RWSM (SMBC, A283, Local0, SMBV)
                Add (ShiftLeft (Arg0, 0x04), 0x02, Local0)
                Store (Add (A283, One), Local2)
                RWSM (SMBC, Local2, Local0, SMBV)
                Or (DerefOf (Index (SMBV, Zero)), One, Local1)
                Store (Local1, Index (SMBV, Zero))
                ShiftLeft (Arg0, 0x04, Local0)
                Add (Local0, 0x02, Local0)
                RWSM (SMBC, A283, Local0, SMBV)
                Store (0x40, Local0)
                Store (Add (A283, One), Local2)
                RWSM (SMBC, Local2, Local0, SMBV)
                Store (One, Local0)
                ShiftLeft (Local0, Arg0, Local0)
                Or (DerefOf (Index (SMBV, Zero)), Local0, Local1)
                Store (Local1, Index (SMBV, Zero))
                Store (0x40, Local0)
                RWSM (SMBC, A283, Local0, SMBV)
            }

            Name (GF01, Zero)
            Name (OVFL, One)
            Name (OCFL, One)
            Name (TSBF, Buffer (0x20)
            {
                /* 0000 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                /* 0008 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                /* 0010 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                /* 0018 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
            })
            Name (GVBF, Buffer (0x05)
            {
                0x00, 0x00, 0x00, 0x00, 0x00
            })
            CreateDWordField (GVBF, Zero, GVB1)
            CreateByteField (GVBF, 0x04, GVB2)
            Method (AM01, 0, NotSerialized)
            {
                If (DBG)
                {
                    Store ("AM01", Debug)
                }

                If (LNot (GF01))
                {
                    BM01 ()
                    If (OCFL)
                    {
                        CINI ()
                    }

                    If (OVFL)
                    {
                        VINI ()
                    }

                    XINI ()
                    EM01 ()
                    Store (One, GF01)
                }

                Return (Zero)
            }

            Method (AM02, 0, NotSerialized)
            {
                If (DBG)
                {
                    Store ("AM02", Debug)
                    Store (OBID, Debug)
                }

                Return (OBID)
            }

            Method (AM03, 1, NotSerialized)
            {
                If (DBG)
                {
                    Store ("AM03", Debug)
                }

                SOID (Arg0)
                If (LAnd (LEqual (ID01, One), OCFL))
                {
                    Store (GETC (ID02), Local0)
                }
                Else
                {
                    If (LAnd (LEqual (ID01, 0x02), OVFL))
                    {
                        Store (GETV (ID02), Local0)
                    }
                    Else
                    {
                        Store (Zero, GVB1)
                        Store (0x04, GVB2)
                        Store (GVBF, Local0)
                    }
                }

                If (DBG)
                {
                    Store ("GVBF", Debug)
                    Store (Local0, Debug)
                }

                Return (Local0)
            }

            Method (AM04, 2, NotSerialized)
            {
                If (DBG)
                {
                    Store ("AM04", Debug)
                }

                SOID (Arg0)
                If (LAnd (LEqual (ID01, One), OCFL))
                {
                    SETC (ID02, Arg1)
                }
                Else
                {
                    If (LAnd (LEqual (ID01, 0x02), OVFL))
                    {
                        SETV (ID02, Arg1)
                    }
                    Else
                    {
                        Return (0x04)
                    }
                }

                Return (Zero)
            }

            Method (AM05, 1, NotSerialized)
            {
                Name (INFO, Buffer (0x14)
                {
                    /* 0000 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                    /* 0008 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                    /* 0010 */    0x00, 0x00, 0x00, 0x00
                })
                CreateDWordField (INFO, Zero, IFID)
                CreateDWordField (INFO, 0x04, IFMI)
                CreateDWordField (INFO, 0x08, IFMX)
                CreateDWordField (INFO, 0x0C, IFSP)
                CreateField (INFO, 0x80, 0x03, IFST)
                If (DBG)
                {
                    Store ("AM05", Debug)
                    Store (OBIT, Debug)
                }

                SOID (Arg0)
                If (DBG)
                {
                    Store ("ID", Debug)
                    Store (ID01, Debug)
                    Store (ID02, Debug)
                }

                BM05 (Arg0)
                If (DBG)
                {
                    Store ("OBIT", Debug)
                    Store (OBIT, Debug)
                }

                CPTB (Arg0, INFO)
                EM05 (Arg0)
                If (DBG)
                {
                    Store ("info", Debug)
                    Store (INFO, Debug)
                }

                Return (INFO)
            }

            Method (AM06, 0, NotSerialized)
            {
                HM06 ()
                Return (Zero)
            }

            Method (AM07, 1, NotSerialized)
            {
                HM07 (Arg0)
                Return (Zero)
            }

            Method (AM08, 1, NotSerialized)
            {
                Name (LODT, Package (0x34)
                {
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero, 
                    Zero
                })
                Store (Zero, Local0)
                While (One)
                {
                    If (LEqual (DerefOf (Index (OBDT, Local0)), Arg0))
                    {
                        Store (Zero, Local4)
                        Break
                    }

                    If (LEqual (DerefOf (Index (OBDT, Local0)), Zero))
                    {
                        Store (0x04, Local4)
                        Break
                    }

                    Add (Local0, DerefOf (Index (OBDT, Add (Local0, One))), 
                        Local0)
                    Add (Local0, 0x02, Local0)
                }

                If (Local4) {}
                Else
                {
                    Store (DerefOf (Index (OBDT, Add (Local0, One))), Local1)
                    Add (Local1, 0x02, Local1)
                    Store (Zero, Local2)
                    While (Local1)
                    {
                        Store (DerefOf (Index (OBDT, Local0)), Index (LODT, Local2))
                        Decrement (Local1)
                        Increment (Local0)
                        Increment (Local2)
                    }
                }

                Return (LODT)
            }

            Name (OBSV, Package (0x09)
            {
                Zero, 
                Zero, 
                Zero, 
                Zero, 
                Zero, 
                Zero, 
                Zero, 
                Zero, 
                Zero
            })
            Method (APTS, 1, NotSerialized)
            {
                If (LAnd (GF01, LOr (LEqual (Arg0, 0x04), LEqual (Arg0, 0x03))))
                {
                    Store (DerefOf (Index (OBID, Zero)), Local0)
                    Store (One, Local1)
                    Store (Zero, Local2)
                    While (Local0)
                    {
                        SOID (DerefOf (Index (OBID, Local1)))
                        If (LAnd (LEqual (ID01, One), OCFL))
                        {
                            GETC (ID02)
                            Store (GVB1, Local3)
                        }
                        Else
                        {
                            If (LAnd (LEqual (ID01, 0x02), OVFL))
                            {
                                GETV (ID02)
                                Store (GVB1, Local3)
                            }
                            Else
                            {
                                Store (Zero, Local3)
                            }
                        }

                        Store (Local3, Index (OBSV, Local2))
                        Decrement (Local0)
                        Increment (Local1)
                        Increment (Local2)
                    }
                }
            }

            Method (AWAK, 1, NotSerialized)
            {
                If (LAnd (GF01, LOr (LEqual (Arg0, 0x04), LEqual (Arg0, 0x03))))
                {
                    Store (DerefOf (Index (OBID, Zero)), Local0)
                    Store (One, Local1)
                    Store (Zero, Local2)
                    While (Local0)
                    {
                        Store (DerefOf (Index (OBSV, Local2)), Local3)
                        SOID (DerefOf (Index (OBID, Local1)))
                        If (LAnd (LEqual (ID01, One), OCFL))
                        {
                            SETC (ID02, Local3)
                        }
                        Else
                        {
                            If (LAnd (LEqual (ID01, 0x02), OVFL))
                            {
                                SETV (ID02, Local3)
                            }
                            Else
                            {
                            }
                        }

                        Decrement (Local0)
                        Increment (Local1)
                        Increment (Local2)
                    }
                }
            }

            Name (CMDV, Zero)
            Method (AM09, 0, NotSerialized)
            {
                Return (CMDV)
            }

            Name (OBUF, Buffer (0x0200) {})
            Method (AM10, 1, NotSerialized)
            {
                CreateDWordField (Arg0, Zero, ACMD)
                CreateField (OBUF, Zero, 0x1000, TEMP)
                Store (Zero, TEMP)
                Store (OBUF, Debug)
                If (LEqual (ACMD, 0x00030001))
                {
                    R301 ()
                }
                Else
                {
                    If (LEqual (ACMD, 0x00030002))
                    {
                        R302 (Arg0)
                    }
                    Else
                    {
                        If (LEqual (ACMD, 0x00030003))
                        {
                            R303 (Arg0)
                        }
                        Else
                        {
                            If (LEqual (ACMD, 0x00030004))
                            {
                                R304 (Arg0)
                            }
                            Else
                            {
                                If (LEqual (ACMD, 0x00040001))
                                {
                                    R401 (Arg0)
                                }
                                Else
                                {
                                    If (LEqual (ACMD, 0x00040002))
                                    {
                                        R402 (Arg0)
                                    }
                                    Else
                                    {
                                        CreateDWordField (OBUF, Zero, CMDS)
                                        Store (0x00010000, CMDS)
                                    }
                                }
                            }
                        }
                    }
                }

                Store (OBUF, Debug)
                Return (OBUF)
            }

            Name (CMDL, Buffer (0x54) {})
            Method (AM11, 0, NotSerialized)
            {
                Name (TEMP, Zero)
                CreateDWordField (CMDL, Zero, CMDC)
                Add (TEMP, 0x04, TEMP)
                If (ACSS)
                {
                    CreateDWordField (CMDL, TEMP, CMD1)
                    Add (TEMP, 0x04, TEMP)
                    Store (0x00030001, CMD1)
                    CreateDWordField (CMDL, TEMP, CMD2)
                    Add (TEMP, 0x04, TEMP)
                    Store (0x00030002, CMD2)
                    CreateDWordField (CMDL, TEMP, CMD3)
                    Add (TEMP, 0x04, TEMP)
                    Store (0x00030003, CMD3)
                    CreateDWordField (CMDL, TEMP, CMD4)
                    Add (TEMP, 0x04, TEMP)
                    Store (0x00030004, CMD4)
                }

                CreateDWordField (CMDL, TEMP, CMD5)
                Add (TEMP, 0x04, TEMP)
                Store (0x00040001, CMD5)
                CreateDWordField (CMDL, TEMP, CMD6)
                Add (TEMP, 0x04, TEMP)
                Store (0x00040002, CMD6)
                Subtract (TEMP, 0x04, TEMP)
                Divide (TEMP, 0x04, , TEMP)
                Store (TEMP, CMDC)
                Return (CMDL)
            }

            If (ACSS)
            {
                Method (R301, 0, NotSerialized)
                {
                    Store (DerefOf (Index (QLST, Zero)), Local0)
                    CreateDWordField (OBUF, Zero, TMP1)
                    CreateWordField (OBUF, 0x04, TMP2)
                    Store (Local0, TMP2)
                    Store (Zero, TMP1)
                    Return (Zero)
                }

                Method (R302, 1, NotSerialized)
                {
                    Name (CIDX, Zero)
                    CreateWordField (Arg0, 0x04, IIDX)
                    Store (One, CIDX)
                    Store (DerefOf (Index (DerefOf (Index (QLST, IIDX)), CIDX)), 
                        Local0)
                    Increment (CIDX)
                    Store (0x20, Local1)
                    CreateField (OBUF, Local1, 0x0100, TMP1)
                    Store (Local0, TMP1)
                    Add (Local1, 0x0100, Local1)
                    Store ("OBUF", Debug)
                    Store (OBUF, Debug)
                    Store (DerefOf (Index (DerefOf (Index (QLST, IIDX)), CIDX)), 
                        Local0)
                    Increment (CIDX)
                    CreateField (OBUF, Local1, 0x08, TMP2)
                    Store (Local0, TMP2)
                    Store ("OBUF", Debug)
                    Store (OBUF, Debug)
                    Add (Local1, 0x08, Local1)
                    Store (Local0, Local2)
                    Divide (Local1, 0x08, , Local5)
                    Store ("local5", Debug)
                    Store (Local5, Debug)
                    While (LGreater (Local2, Zero))
                    {
                        Store (DerefOf (Index (DerefOf (Index (QLST, IIDX)), CIDX)), 
                            Local0)
                        Store ("IIDX", Debug)
                        Store (IIDX, Debug)
                        Store ("CIDX", Debug)
                        Store (CIDX, Debug)
                        Store ("Local0", Debug)
                        Store (Local0, Debug)
                        Store (0x05, Local4)
                        Store (Zero, Local6)
                        While (LGreater (Local4, Zero))
                        {
                            If (LLess (Local6, SizeOf (Local0)))
                            {
                                Store (DerefOf (Index (Local0, Local6)), Index (OBUF, Local5))
                            }
                            Else
                            {
                                Store (Zero, Index (OBUF, Local5))
                            }

                            Increment (Local6)
                            Increment (Local5)
                            Decrement (Local4)
                        }

                        Add (Local1, 0x28, Local1)
                        Decrement (Local2)
                        Increment (CIDX)
                    }

                    Store ("OBUF", Debug)
                    Store (OBUF, Debug)
                    Store (0x0378, Local1)
                    Store (DerefOf (Index (DerefOf (Index (QLST, IIDX)), CIDX)), 
                        Local0)
                    Increment (CIDX)
                    CreateField (OBUF, Local1, 0x08, TMP3)
                    Store (Local0, TMP3)
                    Store ("OBUF", Debug)
                    Store (OBUF, Debug)
                    Add (Local1, 0x08, Local1)
                    Store (Local0, Local2)
                    Divide (Local1, 0x08, , Local5)
                    Store ("local5", Debug)
                    Store (Local5, Debug)
                    While (LGreater (Local2, Zero))
                    {
                        Store (DerefOf (Index (DerefOf (Index (QLST, IIDX)), CIDX)), 
                            Local0)
                        Store (0x14, Local4)
                        Store (Zero, Local6)
                        While (LGreater (Local4, Zero))
                        {
                            If (LLess (Local6, SizeOf (Local0)))
                            {
                                Store (DerefOf (Index (Local0, Local6)), Index (OBUF, Local5))
                            }
                            Else
                            {
                                Store (Zero, Index (OBUF, Local5))
                            }

                            Increment (Local6)
                            Increment (Local5)
                            Decrement (Local4)
                        }

                        Add (Local1, 0x80)
                        Decrement (Local2)
                        Increment (CIDX)
                    }

                    Store ("OBUF", Debug)
                    Store (OBUF, Debug)
                    CreateDWordField (OBUF, Zero, TMP4)
                    Store (Zero, TMP4)
                    Return (Zero)
                }

                Method (R303, 1, NotSerialized)
                {
                    CreateWordField (Arg0, 0x04, IITM)
                    CreateDWordField (OBUF, Zero, TMP1)
                    CreateWordField (OBUF, 0x04, TMP2)
                    Store (DerefOf (Index (DerefOf (Index (QLST, IITM)), Zero)), 
                        Local0)
                    Store (GCMS (Local0), Local1)
                    CreateDWordField (Local1, Zero, TMP3)
                    CreateWordField (Local1, 0x04, TMP4)
                    Store (TMP3, TMP1)
                    Store (TMP4, TMP2)
                    Return (Zero)
                }

                Method (R304, 1, NotSerialized)
                {
                    CreateWordField (Arg0, 0x04, IITM)
                    CreateWordField (Arg0, 0x06, CMSD)
                    CreateDWordField (OBUF, Zero, TMP1)
                    Store (DerefOf (Index (DerefOf (Index (QLST, IITM)), Zero)), 
                        Local0)
                    Store (SCMS (Local0, CMSD), TMP1)
                    Return (Zero)
                }

                OperationRegion (AODT, SystemMemory, 0x000EFB83, 0x0100)
                Field (AODT, AnyAcc, NoLock, Preserve)
                {
                    ASCD,   16, 
                    ASTS,   32, 
                            Offset (0x08), 
                    ASBF,   960, 
                    GFXO,   1, 
                    GMOD,   2
                }

                OperationRegion (SMIX, SystemIO, SMIP, One)
                Field (SMIX, ByteAcc, NoLock, Preserve)
                {
                    SMIC,   8
                }

                Name (EXBF, Buffer (0x78) {})
                Method (GCMS, 1, NotSerialized)
                {
                    Name (TEMP, Buffer (0x06) {})
                    CreateDWordField (TEMP, Zero, TMP1)
                    CreateWordField (TEMP, 0x04, TMP2)
                    Store (One, ASCD)
                    CreateWordField (EXBF, Zero, CMSI)
                    CreateWordField (EXBF, 0x02, CMSD)
                    Store (Zero, EXBF)
                    Store (Arg0, CMSI)
                    Store (EXBF, ASBF)
                    Store (AODS, SMIC)
                    Store (ASBF, EXBF)
                    Store (ASTS, TMP1)
                    Store (CMSD, TMP2)
                    Return (TEMP)
                }

                Method (SCMS, 2, NotSerialized)
                {
                    Store (0x02, ASCD)
                    CreateWordField (EXBF, Zero, CMSI)
                    CreateWordField (EXBF, 0x02, CMSD)
                    Store (Zero, EXBF)
                    Store (Arg0, CMSI)
                    Store (Arg1, CMSD)
                    Store (EXBF, ASBF)
                    Store (AODS, SMIC)
                    Store (ASBF, EXBF)
                    Return (ASTS)
                }
            }

            Name (VEND, Buffer (0x05)
            {
                "ASUS"
            })
            Method (R401, 1, NotSerialized)
            {
                CreateField (OBUF, 0x20, 0x0200, TMP2)
                Store (VEND, TMP2)
                Return (Zero)
            }

            Method (R402, 1, NotSerialized)
            {
                CreateField (OBUF, 0x20, 0x08, TMP1)
                CreateField (OBUF, 0x28, 0x08, TMP2)
                Store (GMOD, TMP1)
                Store (GFXO, TMP2)
                Return (Zero)
            }

            Name (WQBA, Buffer (0x0BBB)
            {
                /* 0000 */    0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, 
                /* 0008 */    0xAB, 0x0B, 0x00, 0x00, 0x20, 0x4A, 0x00, 0x00, 
                /* 0010 */    0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, 
                /* 0018 */    0x28, 0x5B, 0xA4, 0x00, 0x01, 0x06, 0x18, 0x42, 
                /* 0020 */    0x10, 0x15, 0x10, 0x22, 0x21, 0x04, 0x12, 0x01, 
                /* 0028 */    0xA1, 0xC8, 0x2C, 0x0C, 0x86, 0x10, 0x38, 0x2E, 
                /* 0030 */    0x84, 0x1C, 0x40, 0x48, 0x1C, 0x14, 0x4A, 0x08, 
                /* 0038 */    0x84, 0xFA, 0x13, 0xC8, 0xAF, 0x00, 0x84, 0x0E, 
                /* 0040 */    0x05, 0xC8, 0x14, 0x60, 0x50, 0x80, 0x53, 0x04, 
                /* 0048 */    0x11, 0xF4, 0x2A, 0xC0, 0xA6, 0x00, 0x93, 0x02, 
                /* 0050 */    0x2C, 0x0A, 0xD0, 0x2E, 0xC0, 0xB2, 0x00, 0xDD, 
                /* 0058 */    0x02, 0xA4, 0xC3, 0x92, 0xAD, 0x08, 0x1C, 0x21, 
                /* 0060 */    0x06, 0x1C, 0xA5, 0x13, 0x5B, 0xB8, 0x61, 0x83, 
                /* 0068 */    0x17, 0x8A, 0xA2, 0x19, 0x44, 0x49, 0x50, 0xB9, 
                /* 0070 */    0x00, 0xDF, 0x08, 0x02, 0x2F, 0x57, 0x80, 0xE4, 
                /* 0078 */    0x09, 0x48, 0xB3, 0x00, 0xC3, 0x02, 0xAC, 0x0B, 
                /* 0080 */    0x90, 0x3D, 0x04, 0x2A, 0x75, 0x08, 0x28, 0x39, 
                /* 0088 */    0x43, 0x40, 0x0D, 0xA0, 0xD5, 0x09, 0x08, 0xBF, 
                /* 0090 */    0xD2, 0x29, 0x21, 0x09, 0xC2, 0x19, 0xAB, 0x78, 
                /* 0098 */    0x7C, 0xCD, 0xA2, 0xE9, 0x39, 0xC9, 0x39, 0x86, 
                /* 00A0 */    0x1C, 0x8F, 0x0B, 0x3D, 0x08, 0x1E, 0x47, 0x03, 
                /* 00A8 */    0x08, 0x93, 0x3F, 0x64, 0x05, 0x80, 0x41, 0x49, 
                /* 00B0 */    0x18, 0x0B, 0x75, 0x31, 0x6A, 0xD4, 0x48, 0xD9, 
                /* 00B8 */    0x80, 0x0C, 0x51, 0xDA, 0xA8, 0xD1, 0x03, 0x3A, 
                /* 00C0 */    0xBF, 0x23, 0x39, 0xBB, 0xA3, 0x3B, 0x92, 0x04, 
                /* 00C8 */    0x46, 0x3D, 0xA6, 0x63, 0x2C, 0x6C, 0x46, 0x42, 
                /* 00D0 */    0x8D, 0xD1, 0x1C, 0x14, 0x09, 0x37, 0x68, 0xB4, 
                /* 00D8 */    0x44, 0x58, 0x8D, 0x2B, 0xF6, 0x99, 0x59, 0xF8, 
                /* 00E0 */    0xB0, 0x84, 0x71, 0x04, 0x07, 0x76, 0xB0, 0x16, 
                /* 00E8 */    0x0D, 0x23, 0xB4, 0x82, 0xE0, 0x34, 0x88, 0xA3, 
                /* 00F0 */    0x88, 0x12, 0x86, 0xE1, 0x19, 0x33, 0xD0, 0x51, 
                /* 00F8 */    0x32, 0xA4, 0x30, 0x41, 0x4F, 0x20, 0xC8, 0xC9, 
                /* 0100 */    0x33, 0x2C, 0x43, 0x9C, 0x01, 0xC7, 0x8A, 0x11, 
                /* 0108 */    0x2A, 0x24, 0x66, 0x20, 0xC1, 0xFF, 0xFF, 0x27, 
                /* 0110 */    0xD0, 0x35, 0x86, 0x3C, 0x03, 0x91, 0x7B, 0xC0, 
                /* 0118 */    0x09, 0x04, 0x89, 0x1E, 0x25, 0xB8, 0x71, 0x8D, 
                /* 0120 */    0xCA, 0xC6, 0x74, 0x36, 0xB8, 0x81, 0x99, 0x20, 
                /* 0128 */    0xCE, 0xE1, 0x61, 0x64, 0x40, 0x68, 0x02, 0xF1, 
                /* 0130 */    0x63, 0x87, 0x4F, 0x60, 0xF7, 0xC7, 0x01, 0x29, 
                /* 0138 */    0x44, 0xD0, 0x85, 0xE0, 0x4C, 0x6B, 0x14, 0x60, 
                /* 0140 */    0xED, 0xEC, 0x20, 0x5B, 0x10, 0x3A, 0x0B, 0xC4, 
                /* 0148 */    0x6A, 0x0C, 0x45, 0x10, 0x11, 0x82, 0x46, 0x31, 
                /* 0150 */    0x5E, 0x84, 0x50, 0x21, 0xA2, 0x44, 0x3D, 0xE7, 
                /* 0158 */    0x20, 0xB5, 0x09, 0x50, 0x06, 0x22, 0xB4, 0x60, 
                /* 0160 */    0x46, 0x60, 0xF6, 0x07, 0x41, 0x24, 0x58, 0x80, 
                /* 0168 */    0xF8, 0x23, 0xB0, 0x84, 0x13, 0x81, 0x8C, 0x8C, 
                /* 0170 */    0x86, 0x1E, 0x16, 0x7C, 0x12, 0x60, 0x07, 0x04, 
                /* 0178 */    0xCF, 0xE7, 0xD4, 0x4C, 0xE0, 0xC0, 0x10, 0xE2, 
                /* 0180 */    0x95, 0x00, 0x51, 0x47, 0x0B, 0x4A, 0x60, 0x29, 
                /* 0188 */    0x47, 0x03, 0x62, 0x7B, 0x60, 0xBA, 0x07, 0x1C, 
                /* 0190 */    0xE1, 0xB9, 0xFB, 0x72, 0x70, 0x6A, 0xFE, 0x69, 
                /* 0198 */    0x78, 0x9A, 0x0F, 0x09, 0x98, 0x21, 0x7A, 0xAC, 
                /* 01A0 */    0x07, 0x11, 0xF0, 0x10, 0xD9, 0x29, 0xC1, 0x80, 
                /* 01A8 */    0x78, 0xEF, 0xD7, 0x02, 0x32, 0x82, 0x97, 0x04, 
                /* 01B0 */    0x03, 0x7A, 0x12, 0x0F, 0x08, 0x60, 0x39, 0x68, 
                /* 01B8 */    0x1C, 0xF8, 0x09, 0x55, 0x7C, 0x07, 0xA0, 0x47, 
                /* 01C0 */    0x02, 0x36, 0xA3, 0xF8, 0x26, 0x28, 0xEB, 0xF8, 
                /* 01C8 */    0x80, 0x9E, 0x73, 0xB4, 0x67, 0x87, 0x97, 0x85, 
                /* 01D0 */    0x66, 0xAF, 0x18, 0x84, 0xE0, 0x35, 0xC0, 0x37, 
                /* 01D8 */    0x05, 0x9F, 0x46, 0x2C, 0x69, 0x75, 0x72, 0xB2, 
                /* 01E0 */    0x2A, 0x8F, 0x98, 0x82, 0x7B, 0x08, 0x5C, 0x04, 
                /* 01E8 */    0x9C, 0x86, 0xEE, 0xF1, 0x82, 0x43, 0xC1, 0x78, 
                /* 01F0 */    0xE9, 0xFF, 0x7F, 0xBC, 0xE0, 0x3E, 0x0F, 0x1C, 
                /* 01F8 */    0x2F, 0x58, 0x4E, 0x09, 0x55, 0x5D, 0x36, 0x34, 
                /* 0200 */    0x87, 0xF3, 0x6D, 0x1E, 0x9F, 0x1C, 0x2D, 0x3C, 
                /* 0208 */    0x61, 0x36, 0x96, 0xA3, 0x62, 0xC7, 0x10, 0x36, 
                /* 0210 */    0x3A, 0x3E, 0x0A, 0x0F, 0xF8, 0xB5, 0xA1, 0x58, 
                /* 0218 */    0x10, 0x99, 0x80, 0xD0, 0x91, 0xE1, 0xC0, 0xC1, 
                /* 0220 */    0xE2, 0xEC, 0x00, 0x21, 0x02, 0x0B, 0x1B, 0x39, 
                /* 0228 */    0x7A, 0xC4, 0x1E, 0xD4, 0x3B, 0x8C, 0x31, 0x1E, 
                /* 0230 */    0x08, 0x8C, 0x7A, 0x48, 0x07, 0x0F, 0x3E, 0x40, 
                /* 0238 */    0x0F, 0x1E, 0x70, 0xFA, 0xFF, 0x27, 0xB0, 0xA0, 
                /* 0240 */    0x21, 0x4B, 0xC4, 0xE0, 0xD1, 0xA7, 0x08, 0x0F, 
                /* 0248 */    0xE7, 0xDD, 0x87, 0x1F, 0x44, 0x12, 0x38, 0x3C, 
                /* 0250 */    0x84, 0x06, 0x0F, 0x9E, 0xB3, 0x8F, 0x07, 0x0F, 
                /* 0258 */    0x7E, 0x79, 0x83, 0x07, 0xD1, 0x14, 0x8E, 0x0D, 
                /* 0260 */    0x77, 0xB0, 0xF1, 0xC0, 0xC1, 0x3D, 0x5C, 0xFC, 
                /* 0268 */    0x90, 0x70, 0x67, 0x2D, 0x78, 0x3E, 0x27, 0x4F, 
                /* 0270 */    0x06, 0xF0, 0x12, 0x84, 0x3B, 0x6C, 0x01, 0x97, 
                /* 0278 */    0x11, 0x70, 0x99, 0xAB, 0xA4, 0x87, 0x2A, 0x0B, 
                /* 0280 */    0x83, 0x41, 0x9D, 0xAB, 0xC0, 0xFB, 0xFF, 0x3F, 
                /* 0288 */    0x57, 0x01, 0xF6, 0x2F, 0x53, 0xEF, 0x53, 0x3E, 
                /* 0290 */    0x57, 0x81, 0x3B, 0xDA, 0x79, 0x40, 0xE7, 0x16, 
                /* 0298 */    0x72, 0x9A, 0x41, 0x1F, 0x0A, 0x7C, 0x06, 0x78, 
                /* 02A0 */    0x92, 0x01, 0xDB, 0xA1, 0x0A, 0x38, 0x9C, 0x64, 
                /* 02A8 */    0xC0, 0x73, 0x2B, 0x7B, 0x92, 0x61, 0xFF, 0xFF, 
                /* 02B0 */    0x93, 0x0C, 0x38, 0x0F, 0x62, 0x3E, 0xC9, 0x80, 
                /* 02B8 */    0xEF, 0xE8, 0x85, 0x3B, 0x81, 0xC0, 0xF3, 0x38, 
                /* 02C0 */    0x24, 0x21, 0x1F, 0x42, 0xF0, 0x43, 0x3A, 0xA6, 
                /* 02C8 */    0x67, 0x10, 0x60, 0x28, 0xE4, 0x65, 0xE0, 0x03, 
                /* 02D0 */    0x08, 0x8D, 0x7E, 0x06, 0x01, 0xB4, 0xFF, 0xFF, 
                /* 02D8 */    0xCF, 0x20, 0xC0, 0xE5, 0xAC, 0xF0, 0x0C, 0x02, 
                /* 02E0 */    0x76, 0xF1, 0xAF, 0x3A, 0x9D, 0x07, 0x1C, 0x1C, 
                /* 02E8 */    0x42, 0x4E, 0x8E, 0x8A, 0xA8, 0xE1, 0x58, 0xEB, 
                /* 02F0 */    0x41, 0x80, 0x8C, 0xE7, 0x45, 0xC0, 0x41, 0x4F, 
                /* 02F8 */    0x8A, 0x40, 0xF7, 0xAC, 0x81, 0x3B, 0x1F, 0xC0, 
                /* 0300 */    0x3D, 0x12, 0xF2, 0x73, 0x07, 0xF8, 0xA2, 0x43, 
                /* 0308 */    0xE8, 0x98, 0x89, 0x3F, 0x51, 0x79, 0x88, 0x3E, 
                /* 0310 */    0x1B, 0x98, 0xC0, 0xA3, 0x05, 0xD7, 0x39, 0x11, 
                /* 0318 */    0x5C, 0xFF, 0xFF, 0xD1, 0xC2, 0x3B, 0x69, 0xE0, 
                /* 0320 */    0x46, 0x0B, 0xF7, 0x00, 0xFC, 0x58, 0x80, 0x39, 
                /* 0328 */    0x62, 0x82, 0xEB, 0xD0, 0x02, 0xA6, 0xEB, 0x02, 
                /* 0330 */    0xE6, 0xD2, 0x82, 0x3F, 0xB4, 0x00, 0x1F, 0xA1, 
                /* 0338 */    0x27, 0x16, 0x94, 0xB4, 0x43, 0x0B, 0xA0, 0xF9, 
                /* 0340 */    0xFF, 0x7F, 0x68, 0x01, 0x6E, 0x73, 0x7D, 0x68, 
                /* 0348 */    0x01, 0x7B, 0xB8, 0x73, 0x18, 0x95, 0x73, 0x0E, 
                /* 0350 */    0x83, 0x76, 0x68, 0xF6, 0x39, 0x0C, 0xB8, 0x1E, 
                /* 0358 */    0x26, 0xF0, 0x87, 0x4A, 0xB8, 0xB3, 0x88, 0x1F, 
                /* 0360 */    0x27, 0xDA, 0x5B, 0x80, 0xCF, 0xA7, 0xC0, 0xED, 
                /* 0368 */    0xB0, 0x86, 0x3B, 0x82, 0xC0, 0xBB, 0x14, 0x9C, 
                /* 0370 */    0x96, 0xA7, 0xF6, 0xD4, 0x7F, 0x70, 0x8D, 0x5F, 
                /* 0378 */    0x41, 0xC8, 0x3D, 0xC6, 0x77, 0x10, 0xF6, 0xFF, 
                /* 0380 */    0x3F, 0x88, 0x01, 0x37, 0x19, 0x07, 0x31, 0x54, 
                /* 0388 */    0xF0, 0x43, 0x08, 0x40, 0xA1, 0xCB, 0xC2, 0x43, 
                /* 0390 */    0x08, 0xD8, 0xA5, 0x1F, 0xC4, 0x68, 0xEC, 0x83, 
                /* 0398 */    0x18, 0xEA, 0xFF, 0x7F, 0x82, 0xC7, 0x9F, 0xC3, 
                /* 03A0 */    0x00, 0xA7, 0x67, 0x38, 0xB8, 0x51, 0x8F, 0x61, 
                /* 03A8 */    0x80, 0xA2, 0xB3, 0x28, 0x70, 0x82, 0x78, 0x0E, 
                /* 03B0 */    0x63, 0xFF, 0xFF, 0x73, 0x18, 0xF0, 0x14, 0xFC, 
                /* 03B8 */    0x12, 0xF0, 0x81, 0x85, 0x4A, 0x84, 0x41, 0x9D, 
                /* 03C0 */    0x59, 0x00, 0xDE, 0x1C, 0x90, 0x9F, 0x59, 0xC0, 
                /* 03C8 */    0x1E, 0xF2, 0xAD, 0xA1, 0x1F, 0x81, 0xFF, 0xFF, 
                /* 03D0 */    0x67, 0x16, 0xC0, 0xF5, 0x99, 0xDC, 0x63, 0xC5, 
                /* 03D8 */    0x1D, 0x22, 0xD8, 0x48, 0x42, 0xBE, 0x0A, 0xBC, 
                /* 03E0 */    0x15, 0x98, 0xC0, 0x91, 0x0F, 0x2D, 0x40, 0xF7, 
                /* 03E8 */    0x6C, 0x82, 0x1B, 0x2D, 0xDC, 0xE3, 0xC8, 0x39, 
                /* 03F0 */    0x9E, 0xD0, 0xBB, 0xF9, 0xEB, 0x03, 0x3B, 0x4D, 
                /* 03F8 */    0xB0, 0x21, 0x83, 0x57, 0xDE, 0x21, 0x10, 0xF5, 
                /* 0400 */    0xFF, 0x1F, 0xB2, 0x0F, 0x24, 0x9E, 0xC2, 0xCB, 
                /* 0408 */    0x0C, 0x66, 0x26, 0x31, 0x0E, 0x24, 0xC2, 0xB1, 
                /* 0410 */    0x78, 0x78, 0xE4, 0x28, 0x08, 0xAA, 0x33, 0x3F, 
                /* 0418 */    0x19, 0x35, 0xE8, 0x67, 0xF7, 0x84, 0x0F, 0x9E, 
                /* 0420 */    0xE9, 0xBE, 0xE1, 0x83, 0xE1, 0x30, 0x08, 0x73, 
                /* 0428 */    0xCE, 0x1E, 0x3F, 0xF8, 0x8E, 0x3D, 0xB8, 0x73, 
                /* 0430 */    0x10, 0xBC, 0xEB, 0x8A, 0x91, 0x4F, 0xE8, 0x25, 
                /* 0438 */    0x00, 0x73, 0x6B, 0xC1, 0x9E, 0x05, 0x81, 0x93, 
                /* 0440 */    0xAC, 0x83, 0x20, 0x4A, 0xC8, 0x59, 0x10, 0x54, 
                /* 0448 */    0xFF, 0xFF, 0x83, 0x10, 0xC0, 0x04, 0x6F, 0xF7, 
                /* 0450 */    0x20, 0x5D, 0x83, 0x7C, 0x1B, 0x78, 0x1A, 0x78, 
                /* 0458 */    0xF8, 0x89, 0xF2, 0x20, 0xE4, 0x8B, 0xC4, 0x0B, 
                /* 0460 */    0x41, 0x84, 0x28, 0xC7, 0x7B, 0x02, 0x11, 0x9E, 
                /* 0468 */    0x86, 0x3C, 0xE1, 0x30, 0xE1, 0x4E, 0x36, 0xCA, 
                /* 0470 */    0x4B, 0x43, 0x18, 0x43, 0xC7, 0x0A, 0x14, 0x39, 
                /* 0478 */    0x7E, 0x08, 0x1F, 0x85, 0x7C, 0x10, 0x62, 0x51, 
                /* 0480 */    0xCE, 0xB7, 0xF4, 0xFC, 0x61, 0x23, 0x67, 0x11, 
                /* 0488 */    0xD4, 0x49, 0xC0, 0x87, 0x0E, 0x0F, 0xEA, 0x09, 
                /* 0490 */    0x01, 0x13, 0x1A, 0x42, 0x47, 0x5C, 0xE0, 0x7A, 
                /* 0498 */    0xDA, 0xC0, 0xFD, 0xFF, 0x8F, 0x42, 0xE0, 0x38, 
                /* 04A0 */    0x80, 0xC0, 0x7B, 0xF0, 0xF8, 0xB4, 0x0E, 0x2E, 
                /* 04A8 */    0x08, 0x9F, 0x3F, 0xE0, 0xFB, 0x44, 0x16, 0xEE, 
                /* 04B0 */    0x5B, 0xC0, 0x0B, 0x0D, 0xEE, 0xEC, 0x01, 0x7C, 
                /* 04B8 */    0xE4, 0x1E, 0x6B, 0x51, 0x02, 0x61, 0x50, 0x67, 
                /* 04C0 */    0x0F, 0xC0, 0xF9, 0xFF, 0xFF, 0xEC, 0x01, 0xD6, 
                /* 04C8 */    0x81, 0x3E, 0x7A, 0x1C, 0xE8, 0x31, 0x06, 0x89, 
                /* 04D0 */    0x11, 0xC4, 0x77, 0x0E, 0x1F, 0x7C, 0xE2, 0xBC, 
                /* 04D8 */    0x11, 0x3C, 0x7B, 0xF8, 0xC8, 0x71, 0x5C, 0x3E, 
                /* 04E0 */    0x80, 0xF8, 0xEC, 0xE1, 0x2B, 0x88, 0xF1, 0xC2, 
                /* 04E8 */    0xC4, 0x7C, 0x38, 0xF2, 0x35, 0x21, 0x5E, 0xE4, 
                /* 04F0 */    0xB0, 0x61, 0x22, 0xFB, 0xEC, 0xC1, 0x22, 0x1E, 
                /* 04F8 */    0x6B, 0xA9, 0x94, 0x83, 0x19, 0xFA, 0x4C, 0xE0, 
                /* 0500 */    0x5B, 0xC2, 0x99, 0xBD, 0x71, 0x44, 0x38, 0xAE, 
                /* 0508 */    0x93, 0x3B, 0x9F, 0x38, 0x1E, 0xD2, 0x49, 0xFB, 
                /* 0510 */    0x6C, 0x06, 0xBE, 0xE3, 0x07, 0x70, 0x38, 0x9B, 
                /* 0518 */    0x81, 0x67, 0x74, 0x70, 0x0F, 0x53, 0xE0, 0x93, 
                /* 0520 */    0x75, 0x36, 0x43, 0x0F, 0xCB, 0xE7, 0x82, 0x57, 
                /* 0528 */    0x07, 0x0F, 0x82, 0x9D, 0xCB, 0xC0, 0x75, 0xB8, 
                /* 0530 */    0x83, 0xF3, 0xFF, 0x3F, 0x97, 0x01, 0xAF, 0x73, 
                /* 0538 */    0xC7, 0x91, 0xB1, 0x53, 0x05, 0x47, 0x3C, 0xA8, 
                /* 0540 */    0x33, 0x79, 0x77, 0x39, 0x6B, 0x1F, 0x3C, 0x02, 
                /* 0548 */    0x9D, 0xE7, 0x29, 0xFB, 0x1C, 0x03, 0x73, 0x84, 
                /* 0550 */    0x1E, 0x3B, 0xF8, 0x0E, 0x26, 0xF8, 0x83, 0x0C, 
                /* 0558 */    0x1C, 0x98, 0x13, 0x38, 0xBA, 0x40, 0xA7, 0x10, 
                /* 0560 */    0xE7, 0x14, 0x9E, 0x63, 0x80, 0x91, 0x1C, 0x4B, 
                /* 0568 */    0x20, 0x2C, 0xC0, 0xB1, 0x40, 0xA2, 0x96, 0x49, 
                /* 0570 */    0x61, 0x7C, 0x32, 0xF0, 0x39, 0x06, 0xAE, 0x24, 
                /* 0578 */    0x38, 0xD4, 0xF8, 0x3C, 0xB2, 0x97, 0xBC, 0xE3, 
                /* 0580 */    0x3C, 0x91, 0x37, 0x04, 0x8F, 0xFF, 0x81, 0x06, 
                /* 0588 */    0xC6, 0xC0, 0x3D, 0xAD, 0x93, 0xF2, 0x4D, 0xEE, 
                /* 0590 */    0xB1, 0xC4, 0x67, 0x43, 0x7E, 0x5C, 0x60, 0x68, 
                /* 0598 */    0xFC, 0x74, 0x03, 0x86, 0xFF, 0xFF, 0xE9, 0x06, 
                /* 05A0 */    0xCE, 0x9D, 0xC1, 0x47, 0x0D, 0xB0, 0x5C, 0x6D, 
                /* 05A8 */    0x30, 0x58, 0xA1, 0x62, 0x34, 0x7A, 0xD7, 0x23, 
                /* 05B0 */    0xA0, 0xC7, 0xD7, 0xD7, 0x45, 0x9A, 0x42, 0x45, 
                /* 05B8 */    0x0C, 0xF1, 0x42, 0x60, 0x97, 0xC7, 0x71, 0xE4, 
                /* 05C0 */    0x59, 0x17, 0x5C, 0xD8, 0xCF, 0xBA, 0x60, 0x0F, 
                /* 05C8 */    0x75, 0x4E, 0xA2, 0x91, 0x46, 0x83, 0x3A, 0xC8, 
                /* 05D0 */    0xF0, 0x03, 0xC1, 0x63, 0x90, 0x4F, 0x1E, 0x06, 
                /* 05D8 */    0x39, 0xD1, 0xD3, 0x7A, 0x5C, 0x78, 0x1A, 0xF0, 
                /* 05E0 */    0xB8, 0xD9, 0x35, 0xC1, 0x1F, 0x04, 0x1F, 0x0F, 
                /* 05E8 */    0xF0, 0x97, 0xA0, 0x80, 0x27, 0xFA, 0xF0, 0x01, 
                /* 05F0 */    0xEB, 0x10, 0x82, 0x3F, 0x61, 0xC0, 0x1F, 0x8F, 
                /* 05F8 */    0x8F, 0x01, 0x3E, 0xD1, 0xFA, 0x48, 0x45, 0x06, 
                /* 0600 */    0x81, 0x3A, 0xBC, 0xF1, 0x91, 0x9E, 0xD6, 0xDB, 
                /* 0608 */    0x80, 0x0F, 0x09, 0x87, 0xC5, 0x0E, 0x1E, 0x3E, 
                /* 0610 */    0xA3, 0x80, 0x63, 0x3C, 0xF0, 0x6F, 0x9F, 0x4F, 
                /* 0618 */    0x07, 0xFF, 0xFF, 0x08, 0xAF, 0x0C, 0x9E, 0xAF, 
                /* 0620 */    0x0F, 0x66, 0x60, 0xB9, 0x75, 0xF8, 0xD0, 0x10, 
                /* 0628 */    0xEA, 0xA9, 0xC3, 0x33, 0x78, 0xBF, 0xF0, 0x09, 
                /* 0630 */    0x04, 0x98, 0x04, 0x36, 0x34, 0x48, 0x26, 0x73, 
                /* 0638 */    0x9D, 0xB2, 0x71, 0xDA, 0xA1, 0xC3, 0xB4, 0xC8, 
                /* 0640 */    0x03, 0x82, 0x8E, 0x06, 0x3E, 0xD2, 0xF8, 0x80, 
                /* 0648 */    0xCB, 0x0F, 0x49, 0x86, 0xB0, 0x30, 0x0A, 0x9D, 
                /* 0650 */    0x7C, 0x3C, 0x1A, 0x0F, 0x8F, 0xC0, 0x51, 0x10, 
                /* 0658 */    0x8F, 0xDC, 0x21, 0x21, 0x64, 0xE4, 0x10, 0x80, 
                /* 0660 */    0x3E, 0x2C, 0x30, 0x88, 0x87, 0x2E, 0x13, 0xF8, 
                /* 0668 */    0xD8, 0xE0, 0xF3, 0x1A, 0x9C, 0xE3, 0x91, 0x27, 
                /* 0670 */    0xE3, 0x69, 0x78, 0xDC, 0xB8, 0x53, 0x07, 0xDC, 
                /* 0678 */    0x71, 0xE0, 0x0F, 0x3A, 0xF8, 0x53, 0x20, 0x3F, 
                /* 0680 */    0x27, 0x91, 0xF3, 0x1F, 0xA8, 0x04, 0x9E, 0x0B, 
                /* 0688 */    0x40, 0x01, 0xE4, 0xAB, 0x80, 0x95, 0x1E, 0x07, 
                /* 0690 */    0xE8, 0x14, 0x42, 0x84, 0x89, 0x66, 0x78, 0x4C, 
                /* 0698 */    0xF0, 0xD3, 0x17, 0x1D, 0x8F, 0x87, 0xE5, 0xFF, 
                /* 06A0 */    0xFF, 0x20, 0xF9, 0xF1, 0x85, 0x61, 0x3F, 0x9D, 
                /* 06A8 */    0xF8, 0xD4, 0x76, 0x8C, 0xEF, 0x05, 0x8F, 0x5F, 
                /* 06B0 */    0x18, 0x58, 0x0F, 0x9B, 0xC3, 0x1A, 0x2D, 0xEC, 
                /* 06B8 */    0xD1, 0x3E, 0x3E, 0xF8, 0xEA, 0xE1, 0x89, 0xF9, 
                /* 06C0 */    0x16, 0xE7, 0x43, 0x07, 0x58, 0x0E, 0x52, 0xC0, 
                /* 06C8 */    0xE3, 0xFC, 0xC3, 0xE6, 0xF0, 0x02, 0xF1, 0x1C, 
                /* 06D0 */    0xE6, 0x83, 0x07, 0x3B, 0xF1, 0xB1, 0x53, 0x1F, 
                /* 06D8 */    0xD7, 0x75, 0x8E, 0x43, 0x9C, 0x21, 0xF8, 0x20, 
                /* 06E0 */    0x1C, 0x67, 0x91, 0xF2, 0x38, 0x53, 0x72, 0x95, 
                /* 06E8 */    0x7C, 0xE0, 0xA8, 0x1A, 0x45, 0xF0, 0xBE, 0x15, 
                /* 06F0 */    0xB0, 0x08, 0xC7, 0x08, 0x94, 0x78, 0x0A, 0x49, 
                /* 06F8 */    0x3F, 0x46, 0xA0, 0xC4, 0xC2, 0x51, 0x10, 0x1F, 
                /* 0700 */    0x23, 0x7C, 0x90, 0xB0, 0x8D, 0x63, 0x04, 0x6A, 
                /* 0708 */    0x8C, 0x3E, 0x0C, 0xF2, 0xA3, 0x00, 0x3F, 0x45, 
                /* 0710 */    0xC0, 0x3F, 0xF1, 0xE0, 0xC6, 0x0A, 0x77, 0x70, 
                /* 0718 */    0x6C, 0x85, 0x2F, 0x3D, 0x87, 0x76, 0x76, 0x0F, 
                /* 0720 */    0x09, 0x51, 0xDE, 0x5F, 0x8D, 0x18, 0x21, 0x60, 
                /* 0728 */    0xD8, 0x68, 0x1E, 0x23, 0xEE, 0xD8, 0xCE, 0x2E, 
                /* 0730 */    0x45, 0x9E, 0x53, 0xAC, 0x47, 0x25, 0x7E, 0xA4, 
                /* 0738 */    0x80, 0xF7, 0xFF, 0x27, 0xF0, 0x31, 0x0F, 0x77, 
                /* 0740 */    0xA4, 0x80, 0x33, 0x93, 0xF3, 0xC0, 0xA8, 0x1B, 
                /* 0748 */    0x8B, 0xE0, 0x8D, 0xF6, 0x92, 0x8D, 0x3D, 0x58, 
                /* 0750 */    0x00, 0x8F, 0x13, 0xA3, 0x0F, 0x16, 0xE0, 0x3A, 
                /* 0758 */    0x13, 0xF8, 0x60, 0x01, 0x5C, 0xCF, 0x07, 0x3E, 
                /* 0760 */    0x1D, 0x80, 0xF5, 0xF2, 0xC3, 0xEF, 0x07, 0x30, 
                /* 0768 */    0x4E, 0x18, 0x30, 0xCE, 0x07, 0x98, 0x1B, 0x86, 
                /* 0770 */    0xC3, 0x2C, 0x59, 0x27, 0x0C, 0x7E, 0x5C, 0x73, 
                /* 0778 */    0xA4, 0xD5, 0x6A, 0x20, 0xEC, 0x12, 0x86, 0x23, 
                /* 0780 */    0x18, 0x04, 0x4C, 0x27, 0x0B, 0x8F, 0xDA, 0x11, 
                /* 0788 */    0x28, 0x24, 0xED, 0x80, 0x81, 0x12, 0x73, 0xC0, 
                /* 0790 */    0xA0, 0x20, 0x06, 0x74, 0x52, 0x08, 0x9D, 0x45, 
                /* 0798 */    0xFD, 0xFF, 0x3F, 0x60, 0xF0, 0x83, 0x9D, 0x4F, 
                /* 07A0 */    0x0D, 0xEC, 0x72, 0xEB, 0xEB, 0x85, 0xE7, 0xE9, 
                /* 07A8 */    0x29, 0x73, 0x3C, 0x1F, 0x43, 0x0C, 0xEB, 0x8B, 
                /* 07B0 */    0x09, 0x78, 0x6E, 0x14, 0xEC, 0x34, 0x8B, 0xB9, 
                /* 07B8 */    0xB8, 0xB1, 0xB3, 0x1D, 0x3B, 0x15, 0x18, 0xE5, 
                /* 07C0 */    0x70, 0xDF, 0xC0, 0xAC, 0xE6, 0xAA, 0x80, 0x9A, 
                /* 07C8 */    0x11, 0x86, 0xC0, 0xE3, 0xF5, 0x81, 0x11, 0x4C, 
                /* 07D0 */    0xFA, 0x2E, 0x14, 0x20, 0x47, 0xE7, 0x32, 0x47, 
                /* 07D8 */    0x8F, 0x3A, 0x47, 0xF9, 0x24, 0xC5, 0x47, 0xEF, 
                /* 07E0 */    0xA3, 0xB9, 0x4F, 0x2B, 0x70, 0xCF, 0x52, 0x3E, 
                /* 07E8 */    0x42, 0x01, 0xDF, 0x81, 0xF9, 0x52, 0x80, 0x3B, 
                /* 07F0 */    0xA0, 0x80, 0xE1, 0xFA, 0x80, 0xFD, 0xFF, 0xC3, 
                /* 07F8 */    0xBC, 0xA2, 0xE0, 0xCF, 0x28, 0xC0, 0x24, 0xF0, 
                /* 0800 */    0x59, 0x0A, 0x74, 0x90, 0x3E, 0xA3, 0x00, 0xD7, 
                /* 0808 */    0xA1, 0xE2, 0xCE, 0x28, 0xE0, 0x38, 0x10, 0x1E, 
                /* 0810 */    0x3D, 0x3F, 0x47, 0xB1, 0x38, 0xC7, 0x12, 0x74, 
                /* 0818 */    0xA8, 0x97, 0x83, 0x6E, 0x9B, 0xEC, 0x58, 0x82, 
                /* 0820 */    0x8D, 0x72, 0x2C, 0x41, 0x85, 0xA0, 0xD0, 0x09, 
                /* 0828 */    0xCA, 0x27, 0x09, 0x7E, 0xC6, 0xE3, 0x20, 0x06, 
                /* 0830 */    0x74, 0xF6, 0x93, 0x04, 0x5A, 0xC5, 0x49, 0x02, 
                /* 0838 */    0x19, 0xF6, 0x5C, 0x02, 0x84, 0xFE, 0xFF, 0xE7, 
                /* 0840 */    0x12, 0xF0, 0x9E, 0x13, 0x9F, 0x26, 0xC0, 0x35, 
                /* 0848 */    0x6B, 0xFC, 0x69, 0x02, 0x7F, 0x3E, 0x01, 0x16, 
                /* 0850 */    0x47, 0x46, 0xC0, 0xD9, 0x41, 0x90, 0x1F, 0x19, 
                /* 0858 */    0x81, 0xEF, 0xB9, 0x84, 0xFF, 0xFF, 0xCF, 0x25, 
                /* 0860 */    0xE0, 0x19, 0xB6, 0xCF, 0x25, 0x80, 0x93, 0x9B, 
                /* 0868 */    0x34, 0x3F, 0x97, 0xC0, 0x1D, 0xBA, 0xE3, 0x9C, 
                /* 0870 */    0xBE, 0x10, 0x57, 0x58, 0xDF, 0x33, 0xE2, 0x27, 
                /* 0878 */    0x18, 0xE3, 0x58, 0x82, 0x0A, 0x70, 0xF8, 0x02, 
                /* 0880 */    0xB4, 0xFF, 0xFF, 0x4F, 0x23, 0xE0, 0x3F, 0x17, 
                /* 0888 */    0x7B, 0xF4, 0xFC, 0x40, 0xE2, 0x43, 0x06, 0x19, 
                /* 0890 */    0x3D, 0x8D, 0x7C, 0xF8, 0x82, 0x1E, 0xF1, 0x30, 
                /* 0898 */    0x02, 0xB4, 0x07, 0xFA, 0xF0, 0x05, 0xC6, 0xDB, 
                /* 08A0 */    0x03, 0x3F, 0x6E, 0x02, 0xAF, 0xD8, 0x87, 0x12, 
                /* 08A8 */    0xD0, 0xC1, 0xF2, 0x43, 0x09, 0xF8, 0xFF, 0xFF, 
                /* 08B0 */    0x87, 0x12, 0xF0, 0x8C, 0x1E, 0x77, 0xF6, 0x02, 
                /* 08B8 */    0xC7, 0x55, 0xC2, 0x83, 0x37, 0xE0, 0x31, 0x3D, 
                /* 08C0 */    0x16, 0x18, 0x90, 0x9D, 0x4B, 0x98, 0xEC, 0x73, 
                /* 08C8 */    0x09, 0xFA, 0x3C, 0x62, 0xAB, 0xB7, 0x63, 0x72, 
                /* 08D0 */    0x52, 0xC7, 0x08, 0x3F, 0x97, 0xA0, 0x24, 0x9F, 
                /* 08D8 */    0x4B, 0x00, 0xDA, 0x1C, 0xBA, 0xC0, 0xF1, 0xFF, 
                /* 08E0 */    0x3F, 0x74, 0x01, 0x3C, 0xB8, 0x06, 0xFA, 0x40, 
                /* 08E8 */    0x02, 0xAE, 0x7B, 0x82, 0x0F, 0x24, 0xC0, 0xF5, 
                /* 08F0 */    0x28, 0x00, 0x9E, 0x23, 0x08, 0xFE, 0xC8, 0xEC, 
                /* 08F8 */    0x03, 0x3F, 0xEE, 0xA4, 0xEF, 0x53, 0x75, 0x5C, 
                /* 0900 */    0xE3, 0x1F, 0xF1, 0x11, 0xFC, 0xFF, 0x1B, 0x3F, 
                /* 0908 */    0x7D, 0x91, 0x7B, 0x81, 0x8F, 0x25, 0x3A, 0xF0, 
                /* 0910 */    0xA3, 0x04, 0x53, 0x48, 0xEE, 0x01, 0x02, 0x25, 
                /* 0918 */    0x10, 0x8E, 0x82, 0xF8, 0x00, 0xE1, 0xF0, 0xE7, 
                /* 0920 */    0x24, 0xE8, 0x57, 0x4B, 0x7E, 0x7E, 0xC0, 0x5F, 
                /* 0928 */    0x47, 0xD8, 0x28, 0xD9, 0x71, 0x1E, 0x37, 0x4A, 
                /* 0930 */    0xB8, 0x60, 0xAF, 0x0F, 0x86, 0xB8, 0xC3, 0x13, 
                /* 0938 */    0xE1, 0x67, 0x5B, 0xCC, 0x31, 0x1F, 0xEE, 0x51, 
                /* 0940 */    0xE1, 0x51, 0x09, 0x5C, 0xB3, 0x86, 0x75, 0x58, 
                /* 0948 */    0x02, 0x3C, 0x78, 0x38, 0x4C, 0x00, 0xAD, 0xFF, 
                /* 0950 */    0xFF, 0x61, 0x09, 0xFC, 0xB3, 0xE7, 0x83, 0x38, 
                /* 0958 */    0x11, 0x0F, 0x1F, 0x03, 0x74, 0x2C, 0x6F, 0x07, 
                /* 0960 */    0xEC, 0xD8, 0xAB, 0xC3, 0x12, 0x6A, 0x0C, 0x3E, 
                /* 0968 */    0xFA, 0xFA, 0xE8, 0xC4, 0x20, 0x1F, 0x0F, 0x31, 
                /* 0970 */    0xC7, 0x16, 0x76, 0xC2, 0x07, 0xF8, 0xF6, 0xFF, 
                /* 0978 */    0x3F, 0xE1, 0x03, 0xD6, 0xCE, 0x24, 0xBE, 0x3F, 
                /* 0980 */    0x60, 0xAF, 0x2D, 0xF8, 0xA3, 0x09, 0xF0, 0x06, 
                /* 0988 */    0xF7, 0xD1, 0x04, 0x70, 0xF5, 0xFF, 0x3F, 0x9A, 
                /* 0990 */    0xE0, 0x84, 0x9E, 0x9D, 0x50, 0x67, 0x03, 0x1F, 
                /* 0998 */    0x98, 0x6C, 0x14, 0x95, 0x40, 0xBF, 0x69, 0xBC, 
                /* 09A0 */    0x9F, 0x07, 0x31, 0xF4, 0x49, 0xF0, 0x53, 0x13, 
                /* 09A8 */    0x06, 0xC2, 0x47, 0x13, 0x9F, 0x24, 0x7C, 0x9C, 
                /* 09B0 */    0xE0, 0x52, 0xE0, 0x28, 0x88, 0x8F, 0x13, 0x8E, 
                /* 09B8 */    0x79, 0x36, 0x41, 0x9F, 0x0A, 0x7C, 0x3F, 0x38, 
                /* 09C0 */    0x09, 0x6C, 0xA8, 0xF3, 0x04, 0x50, 0x19, 0x07, 
                /* 09C8 */    0xFE, 0xE8, 0x04, 0x57, 0xD8, 0xC9, 0x04, 0x64, 
                /* 09D0 */    0x27, 0x72, 0x60, 0x6E, 0xE2, 0x1C, 0x01, 0x94, 
                /* 09D8 */    0xFE, 0xFF, 0x27, 0x72, 0xE0, 0x70, 0x5A, 0xE5, 
                /* 09E0 */    0xA7, 0x01, 0x7C, 0xA0, 0xA3, 0x2A, 0x3A, 0xD6, 
                /* 09E8 */    0x93, 0x41, 0x23, 0x7E, 0x07, 0x08, 0x77, 0xEA, 
                /* 09F0 */    0xE7, 0xF9, 0x40, 0xC0, 0x8E, 0xE5, 0x3E, 0x2C, 
                /* 09F8 */    0xF1, 0xF3, 0x92, 0x4F, 0x11, 0x3E, 0x41, 0x70, 
                /* 0A00 */    0x49, 0x27, 0x08, 0x0A, 0x62, 0x40, 0xE7, 0x3D, 
                /* 0A08 */    0x5D, 0x7A, 0x10, 0xF4, 0x7C, 0xC3, 0x8F, 0xC5, 
                /* 0A10 */    0xBE, 0xB6, 0x1C, 0xC5, 0x23, 0x51, 0x82, 0xF9, 
                /* 0A18 */    0x0E, 0x01, 0xF4, 0xB6, 0x04, 0x4F, 0xDE, 0x6D, 
                /* 0A20 */    0x09, 0x44, 0x18, 0x77, 0x72, 0x16, 0x0C, 0xE1, 
                /* 0A28 */    0x28, 0x7D, 0x80, 0x80, 0x31, 0xC0, 0xC7, 0x84, 
                /* 0A30 */    0x62, 0xDF, 0x37, 0xF4, 0xBE, 0x04, 0xF3, 0x8A, 
                /* 0A38 */    0x09, 0xAE, 0xF3, 0x12, 0x30, 0x9E, 0x89, 0xFF, 
                /* 0A40 */    0xFF, 0x3E, 0xCF, 0x21, 0xE4, 0x02, 0xC0, 0x4F, 
                /* 0A48 */    0xE5, 0x60, 0x39, 0x36, 0x80, 0x67, 0x1C, 0xEC, 
                /* 0A50 */    0x0A, 0x80, 0x3F, 0x32, 0xC1, 0x3E, 0x35, 0xE2, 
                /* 0A58 */    0x8E, 0x4C, 0x60, 0x98, 0x08, 0x3B, 0xE7, 0x1C, 
                /* 0A60 */    0x08, 0xF6, 0x60, 0x02, 0xBC, 0x55, 0x1C, 0x4C, 
                /* 0A68 */    0x00, 0x2D, 0xC3, 0x0D, 0x72, 0x3E, 0x8F, 0xE4, 
                /* 0A70 */    0xC6, 0x79, 0xC3, 0xF3, 0x89, 0x84, 0x9D, 0xC4, 
                /* 0A78 */    0xD9, 0xFF, 0xFF, 0x60, 0xC2, 0x25, 0x41, 0x48, 
                /* 0A80 */    0xFE, 0x61, 0x09, 0x89, 0x8D, 0x9D, 0xFE, 0x39, 
                /* 0A88 */    0xBC, 0xB9, 0x32, 0x82, 0x62, 0x8F, 0x4B, 0xA8, 
                /* 0A90 */    0xC3, 0x84, 0x45, 0x9E, 0x26, 0x50, 0xA7, 0x69, 
                /* 0A98 */    0x9F, 0x90, 0xC9, 0x69, 0x82, 0x46, 0x3E, 0x4D, 
                /* 0AA0 */    0xA0, 0x87, 0xE6, 0x89, 0x9D, 0x06, 0x6E, 0xDC, 
                /* 0AA8 */    0xA7, 0xC1, 0x6F, 0x87, 0xFC, 0xC0, 0x04, 0x7C, 
                /* 0AB0 */    0x0F, 0x0F, 0xF8, 0xD3, 0x04, 0xEC, 0xF3, 0x0D, 
                /* 0AB8 */    0x1B, 0x74, 0xC8, 0x77, 0x87, 0x17, 0x59, 0x1F, 
                /* 0AC0 */    0x26, 0x80, 0xF9, 0xC8, 0x7D, 0x98, 0x00, 0xFF, 
                /* 0AC8 */    0xFF, 0xFF, 0xD0, 0x04, 0x5C, 0x15, 0xDA, 0xF4, 
                /* 0AD0 */    0xA9, 0xD1, 0xA8, 0x55, 0x83, 0x32, 0x35, 0xCA, 
                /* 0AD8 */    0x34, 0xA8, 0xD5, 0xA7, 0x52, 0x63, 0xC6, 0xA4, 
                /* 0AE0 */    0x9D, 0x54, 0xBD, 0x54, 0x8D, 0xD5, 0x91, 0x9E, 
                /* 0AE8 */    0x0B, 0x02, 0x71, 0xD4, 0x05, 0x0B, 0xC4, 0xD1, 
                /* 0AF0 */    0x9F, 0x40, 0x02, 0xB1, 0xB8, 0x57, 0x88, 0x40, 
                /* 0AF8 */    0x2C, 0xF5, 0x05, 0x21, 0x10, 0xCB, 0xD4, 0x01, 
                /* 0B00 */    0xC2, 0x82, 0xBC, 0xEF, 0x05, 0xE2, 0x60, 0x52, 
                /* 0B08 */    0x06, 0x40, 0xAD, 0x80, 0xB0, 0x78, 0xCB, 0x12, 
                /* 0B10 */    0x88, 0x23, 0x9A, 0x39, 0x01, 0x50, 0x37, 0x20, 
                /* 0B18 */    0x4C, 0xA0, 0x1E, 0x10, 0x26, 0xDC, 0x10, 0x08, 
                /* 0B20 */    0x8B, 0xA3, 0x08, 0x84, 0x09, 0xB6, 0x04, 0xC2, 
                /* 0B28 */    0xE2, 0x82, 0x50, 0xC1, 0x9E, 0x8E, 0xFD, 0x4C, 
                /* 0B30 */    0x3E, 0x88, 0x80, 0x1C, 0xDA, 0x14, 0x10, 0x93, 
                /* 0B38 */    0xA0, 0x0A, 0x88, 0x25, 0x78, 0x0C, 0x08, 0xC8, 
                /* 0B40 */    0x71, 0x40, 0x04, 0xE4, 0x50, 0xB6, 0x80, 0x58, 
                /* 0B48 */    0x44, 0x10, 0x01, 0x59, 0xCF, 0x1B, 0x4E, 0x40, 
                /* 0B50 */    0x16, 0x07, 0x22, 0x20, 0x8B, 0x36, 0x06, 0xC4, 
                /* 0B58 */    0x22, 0x80, 0x08, 0xC8, 0xC9, 0x5E, 0x70, 0x81, 
                /* 0B60 */    0x48, 0x4C, 0x10, 0x01, 0x39, 0xEC, 0x8A, 0x05, 
                /* 0B68 */    0xE4, 0xE8, 0x20, 0x02, 0xB2, 0x4E, 0x6F, 0x40, 
                /* 0B70 */    0x4C, 0x34, 0x88, 0x80, 0x2C, 0xFE, 0xB1, 0x21, 
                /* 0B78 */    0x20, 0x47, 0x01, 0x11, 0x90, 0x03, 0x3E, 0x28, 
                /* 0B80 */    0x02, 0x91, 0xB8, 0x20, 0x02, 0xB2, 0x46, 0x7B, 
                /* 0B88 */    0x40, 0x4C, 0x30, 0x88, 0x80, 0x2C, 0xFB, 0x07, 
                /* 0B90 */    0x25, 0x20, 0x87, 0x00, 0xD1, 0x00, 0xC9, 0xEB, 
                /* 0B98 */    0x40, 0x03, 0x24, 0xBF, 0x89, 0x40, 0x44, 0xE2, 
                /* 0BA0 */    0xAB, 0x22, 0x10, 0xD1, 0x0B, 0x22, 0x20, 0xFF, 
                /* 0BA8 */    0xFF, 0xA5, 0xFF, 0x38, 0x04, 0xE4, 0x20, 0x20, 
                /* 0BB0 */    0x02, 0x26, 0x1A, 0x81, 0xE9, 0x0B, 0x21, 0x10, 
                /* 0BB8 */    0xF9, 0xFF, 0x03
            })
            Name (_HID, EisaId ("PNP0C14"))
            Name (_UID, Zero)
            Name (_WDG, Buffer (0x28)
            {
                /* 0000 */    0x6A, 0x0F, 0xBC, 0xAB, 0xA1, 0x8E, 0xD1, 0x11, 
                /* 0008 */    0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, 0x00, 0x00, 
                /* 0010 */    0x41, 0x41, 0x01, 0x02, 0x21, 0x12, 0x90, 0x05, 
                /* 0018 */    0x66, 0xD5, 0xD1, 0x11, 0xB2, 0xF0, 0x00, 0xA0, 
                /* 0020 */    0xC9, 0x06, 0x29, 0x10, 0x42, 0x41, 0x01, 0x00
            })
            Method (WMAA, 3, NotSerialized)
            {
                If (LEqual (Arg0, Zero))
                {
                    If (LOr (LOr (LNotEqual (Arg1, One), LNotEqual (Arg1, 
                        0x02)), LNotEqual (Arg1, 0x06)))
                    {
                        CreateDWordField (Arg2, Zero, WIID)
                    }

                    If (LEqual (Arg1, One))
                    {
                        Return (AM01 ())
                    }
                    Else
                    {
                        If (LEqual (Arg1, 0x02))
                        {
                            Return (AM02 ())
                        }
                        Else
                        {
                            If (LEqual (Arg1, 0x03))
                            {
                                Return (AM03 (WIID))
                            }
                            Else
                            {
                                If (LEqual (Arg1, 0x04))
                                {
                                    CreateDWordField (Arg2, 0x04, IVAL)
                                    Return (AM04 (WIID, IVAL))
                                }
                                Else
                                {
                                    If (LEqual (Arg1, 0x05))
                                    {
                                        Return (AM05 (WIID))
                                    }
                                    Else
                                    {
                                        If (LEqual (Arg1, 0x06))
                                        {
                                            Return (AM06 ())
                                        }
                                        Else
                                        {
                                            If (LEqual (Arg1, 0x07))
                                            {
                                                AM07 (Arg2)
                                            }
                                            Else
                                            {
                                                If (LEqual (Arg1, 0x08))
                                                {
                                                    AM08 (WIID)
                                                }
                                                Else
                                                {
                                                    If (LEqual (Arg1, 0x09))
                                                    {
                                                        Return (AM09 ())
                                                    }
                                                    Else
                                                    {
                                                        If (LEqual (Arg1, 0x0A))
                                                        {
                                                            Return (AM10 (Arg2))
                                                        }
                                                        Else
                                                        {
                                                            If (LEqual (Arg1, 0x0B))
                                                            {
                                                                Return (AM11 ())
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    Name (WQBA, Buffer (0x0BBB)
    {
        /* 0000 */    0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, 
        /* 0008 */    0xAB, 0x0B, 0x00, 0x00, 0x20, 0x4A, 0x00, 0x00, 
        /* 0010 */    0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, 
        /* 0018 */    0x28, 0x5B, 0xA4, 0x00, 0x01, 0x06, 0x18, 0x42, 
        /* 0020 */    0x10, 0x15, 0x10, 0x22, 0x21, 0x04, 0x12, 0x01, 
        /* 0028 */    0xA1, 0xC8, 0x2C, 0x0C, 0x86, 0x10, 0x38, 0x2E, 
        /* 0030 */    0x84, 0x1C, 0x40, 0x48, 0x1C, 0x14, 0x4A, 0x08, 
        /* 0038 */    0x84, 0xFA, 0x13, 0xC8, 0xAF, 0x00, 0x84, 0x0E, 
        /* 0040 */    0x05, 0xC8, 0x14, 0x60, 0x50, 0x80, 0x53, 0x04, 
        /* 0048 */    0x11, 0xF4, 0x2A, 0xC0, 0xA6, 0x00, 0x93, 0x02, 
        /* 0050 */    0x2C, 0x0A, 0xD0, 0x2E, 0xC0, 0xB2, 0x00, 0xDD, 
        /* 0058 */    0x02, 0xA4, 0xC3, 0x92, 0xAD, 0x08, 0x1C, 0x21, 
        /* 0060 */    0x06, 0x1C, 0xA5, 0x13, 0x5B, 0xB8, 0x61, 0x83, 
        /* 0068 */    0x17, 0x8A, 0xA2, 0x19, 0x44, 0x49, 0x50, 0xB9, 
        /* 0070 */    0x00, 0xDF, 0x08, 0x02, 0x2F, 0x57, 0x80, 0xE4, 
        /* 0078 */    0x09, 0x48, 0xB3, 0x00, 0xC3, 0x02, 0xAC, 0x0B, 
        /* 0080 */    0x90, 0x3D, 0x04, 0x2A, 0x75, 0x08, 0x28, 0x39, 
        /* 0088 */    0x43, 0x40, 0x0D, 0xA0, 0xD5, 0x09, 0x08, 0xBF, 
        /* 0090 */    0xD2, 0x29, 0x21, 0x09, 0xC2, 0x19, 0xAB, 0x78, 
        /* 0098 */    0x7C, 0xCD, 0xA2, 0xE9, 0x39, 0xC9, 0x39, 0x86, 
        /* 00A0 */    0x1C, 0x8F, 0x0B, 0x3D, 0x08, 0x1E, 0x47, 0x03, 
        /* 00A8 */    0x08, 0x93, 0x3F, 0x64, 0x05, 0x80, 0x41, 0x49, 
        /* 00B0 */    0x18, 0x0B, 0x75, 0x31, 0x6A, 0xD4, 0x48, 0xD9, 
        /* 00B8 */    0x80, 0x0C, 0x51, 0xDA, 0xA8, 0xD1, 0x03, 0x3A, 
        /* 00C0 */    0xBF, 0x23, 0x39, 0xBB, 0xA3, 0x3B, 0x92, 0x04, 
        /* 00C8 */    0x46, 0x3D, 0xA6, 0x63, 0x2C, 0x6C, 0x46, 0x42, 
        /* 00D0 */    0x8D, 0xD1, 0x1C, 0x14, 0x09, 0x37, 0x68, 0xB4, 
        /* 00D8 */    0x44, 0x58, 0x8D, 0x2B, 0xF6, 0x99, 0x59, 0xF8, 
        /* 00E0 */    0xB0, 0x84, 0x71, 0x04, 0x07, 0x76, 0xB0, 0x16, 
        /* 00E8 */    0x0D, 0x23, 0xB4, 0x82, 0xE0, 0x34, 0x88, 0xA3, 
        /* 00F0 */    0x88, 0x12, 0x86, 0xE1, 0x19, 0x33, 0xD0, 0x51, 
        /* 00F8 */    0x32, 0xA4, 0x30, 0x41, 0x4F, 0x20, 0xC8, 0xC9, 
        /* 0100 */    0x33, 0x2C, 0x43, 0x9C, 0x01, 0xC7, 0x8A, 0x11, 
        /* 0108 */    0x2A, 0x24, 0x66, 0x20, 0xC1, 0xFF, 0xFF, 0x27, 
        /* 0110 */    0xD0, 0x35, 0x86, 0x3C, 0x03, 0x91, 0x7B, 0xC0, 
        /* 0118 */    0x09, 0x04, 0x89, 0x1E, 0x25, 0xB8, 0x71, 0x8D, 
        /* 0120 */    0xCA, 0xC6, 0x74, 0x36, 0xB8, 0x81, 0x99, 0x20, 
        /* 0128 */    0xCE, 0xE1, 0x61, 0x64, 0x40, 0x68, 0x02, 0xF1, 
        /* 0130 */    0x63, 0x87, 0x4F, 0x60, 0xF7, 0xC7, 0x01, 0x29, 
        /* 0138 */    0x44, 0xD0, 0x85, 0xE0, 0x4C, 0x6B, 0x14, 0x60, 
        /* 0140 */    0xED, 0xEC, 0x20, 0x5B, 0x10, 0x3A, 0x0B, 0xC4, 
        /* 0148 */    0x6A, 0x0C, 0x45, 0x10, 0x11, 0x82, 0x46, 0x31, 
        /* 0150 */    0x5E, 0x84, 0x50, 0x21, 0xA2, 0x44, 0x3D, 0xE7, 
        /* 0158 */    0x20, 0xB5, 0x09, 0x50, 0x06, 0x22, 0xB4, 0x60, 
        /* 0160 */    0x46, 0x60, 0xF6, 0x07, 0x41, 0x24, 0x58, 0x80, 
        /* 0168 */    0xF8, 0x23, 0xB0, 0x84, 0x13, 0x81, 0x8C, 0x8C, 
        /* 0170 */    0x86, 0x1E, 0x16, 0x7C, 0x12, 0x60, 0x07, 0x04, 
        /* 0178 */    0xCF, 0xE7, 0xD4, 0x4C, 0xE0, 0xC0, 0x10, 0xE2, 
        /* 0180 */    0x95, 0x00, 0x51, 0x47, 0x0B, 0x4A, 0x60, 0x29, 
        /* 0188 */    0x47, 0x03, 0x62, 0x7B, 0x60, 0xBA, 0x07, 0x1C, 
        /* 0190 */    0xE1, 0xB9, 0xFB, 0x72, 0x70, 0x6A, 0xFE, 0x69, 
        /* 0198 */    0x78, 0x9A, 0x0F, 0x09, 0x98, 0x21, 0x7A, 0xAC, 
        /* 01A0 */    0x07, 0x11, 0xF0, 0x10, 0xD9, 0x29, 0xC1, 0x80, 
        /* 01A8 */    0x78, 0xEF, 0xD7, 0x02, 0x32, 0x82, 0x97, 0x04, 
        /* 01B0 */    0x03, 0x7A, 0x12, 0x0F, 0x08, 0x60, 0x39, 0x68, 
        /* 01B8 */    0x1C, 0xF8, 0x09, 0x55, 0x7C, 0x07, 0xA0, 0x47, 
        /* 01C0 */    0x02, 0x36, 0xA3, 0xF8, 0x26, 0x28, 0xEB, 0xF8, 
        /* 01C8 */    0x80, 0x9E, 0x73, 0xB4, 0x67, 0x87, 0x97, 0x85, 
        /* 01D0 */    0x66, 0xAF, 0x18, 0x84, 0xE0, 0x35, 0xC0, 0x37, 
        /* 01D8 */    0x05, 0x9F, 0x46, 0x2C, 0x69, 0x75, 0x72, 0xB2, 
        /* 01E0 */    0x2A, 0x8F, 0x98, 0x82, 0x7B, 0x08, 0x5C, 0x04, 
        /* 01E8 */    0x9C, 0x86, 0xEE, 0xF1, 0x82, 0x43, 0xC1, 0x78, 
        /* 01F0 */    0xE9, 0xFF, 0x7F, 0xBC, 0xE0, 0x3E, 0x0F, 0x1C, 
        /* 01F8 */    0x2F, 0x58, 0x4E, 0x09, 0x55, 0x5D, 0x36, 0x34, 
        /* 0200 */    0x87, 0xF3, 0x6D, 0x1E, 0x9F, 0x1C, 0x2D, 0x3C, 
        /* 0208 */    0x61, 0x36, 0x96, 0xA3, 0x62, 0xC7, 0x10, 0x36, 
        /* 0210 */    0x3A, 0x3E, 0x0A, 0x0F, 0xF8, 0xB5, 0xA1, 0x58, 
        /* 0218 */    0x10, 0x99, 0x80, 0xD0, 0x91, 0xE1, 0xC0, 0xC1, 
        /* 0220 */    0xE2, 0xEC, 0x00, 0x21, 0x02, 0x0B, 0x1B, 0x39, 
        /* 0228 */    0x7A, 0xC4, 0x1E, 0xD4, 0x3B, 0x8C, 0x31, 0x1E, 
        /* 0230 */    0x08, 0x8C, 0x7A, 0x48, 0x07, 0x0F, 0x3E, 0x40, 
        /* 0238 */    0x0F, 0x1E, 0x70, 0xFA, 0xFF, 0x27, 0xB0, 0xA0, 
        /* 0240 */    0x21, 0x4B, 0xC4, 0xE0, 0xD1, 0xA7, 0x08, 0x0F, 
        /* 0248 */    0xE7, 0xDD, 0x87, 0x1F, 0x44, 0x12, 0x38, 0x3C, 
        /* 0250 */    0x84, 0x06, 0x0F, 0x9E, 0xB3, 0x8F, 0x07, 0x0F, 
        /* 0258 */    0x7E, 0x79, 0x83, 0x07, 0xD1, 0x14, 0x8E, 0x0D, 
        /* 0260 */    0x77, 0xB0, 0xF1, 0xC0, 0xC1, 0x3D, 0x5C, 0xFC, 
        /* 0268 */    0x90, 0x70, 0x67, 0x2D, 0x78, 0x3E, 0x27, 0x4F, 
        /* 0270 */    0x06, 0xF0, 0x12, 0x84, 0x3B, 0x6C, 0x01, 0x97, 
        /* 0278 */    0x11, 0x70, 0x99, 0xAB, 0xA4, 0x87, 0x2A, 0x0B, 
        /* 0280 */    0x83, 0x41, 0x9D, 0xAB, 0xC0, 0xFB, 0xFF, 0x3F, 
        /* 0288 */    0x57, 0x01, 0xF6, 0x2F, 0x53, 0xEF, 0x53, 0x3E, 
        /* 0290 */    0x57, 0x81, 0x3B, 0xDA, 0x79, 0x40, 0xE7, 0x16, 
        /* 0298 */    0x72, 0x9A, 0x41, 0x1F, 0x0A, 0x7C, 0x06, 0x78, 
        /* 02A0 */    0x92, 0x01, 0xDB, 0xA1, 0x0A, 0x38, 0x9C, 0x64, 
        /* 02A8 */    0xC0, 0x73, 0x2B, 0x7B, 0x92, 0x61, 0xFF, 0xFF, 
        /* 02B0 */    0x93, 0x0C, 0x38, 0x0F, 0x62, 0x3E, 0xC9, 0x80, 
        /* 02B8 */    0xEF, 0xE8, 0x85, 0x3B, 0x81, 0xC0, 0xF3, 0x38, 
        /* 02C0 */    0x24, 0x21, 0x1F, 0x42, 0xF0, 0x43, 0x3A, 0xA6, 
        /* 02C8 */    0x67, 0x10, 0x60, 0x28, 0xE4, 0x65, 0xE0, 0x03, 
        /* 02D0 */    0x08, 0x8D, 0x7E, 0x06, 0x01, 0xB4, 0xFF, 0xFF, 
        /* 02D8 */    0xCF, 0x20, 0xC0, 0xE5, 0xAC, 0xF0, 0x0C, 0x02, 
        /* 02E0 */    0x76, 0xF1, 0xAF, 0x3A, 0x9D, 0x07, 0x1C, 0x1C, 
        /* 02E8 */    0x42, 0x4E, 0x8E, 0x8A, 0xA8, 0xE1, 0x58, 0xEB, 
        /* 02F0 */    0x41, 0x80, 0x8C, 0xE7, 0x45, 0xC0, 0x41, 0x4F, 
        /* 02F8 */    0x8A, 0x40, 0xF7, 0xAC, 0x81, 0x3B, 0x1F, 0xC0, 
        /* 0300 */    0x3D, 0x12, 0xF2, 0x73, 0x07, 0xF8, 0xA2, 0x43, 
        /* 0308 */    0xE8, 0x98, 0x89, 0x3F, 0x51, 0x79, 0x88, 0x3E, 
        /* 0310 */    0x1B, 0x98, 0xC0, 0xA3, 0x05, 0xD7, 0x39, 0x11, 
        /* 0318 */    0x5C, 0xFF, 0xFF, 0xD1, 0xC2, 0x3B, 0x69, 0xE0, 
        /* 0320 */    0x46, 0x0B, 0xF7, 0x00, 0xFC, 0x58, 0x80, 0x39, 
        /* 0328 */    0x62, 0x82, 0xEB, 0xD0, 0x02, 0xA6, 0xEB, 0x02, 
        /* 0330 */    0xE6, 0xD2, 0x82, 0x3F, 0xB4, 0x00, 0x1F, 0xA1, 
        /* 0338 */    0x27, 0x16, 0x94, 0xB4, 0x43, 0x0B, 0xA0, 0xF9, 
        /* 0340 */    0xFF, 0x7F, 0x68, 0x01, 0x6E, 0x73, 0x7D, 0x68, 
        /* 0348 */    0x01, 0x7B, 0xB8, 0x73, 0x18, 0x95, 0x73, 0x0E, 
        /* 0350 */    0x83, 0x76, 0x68, 0xF6, 0x39, 0x0C, 0xB8, 0x1E, 
        /* 0358 */    0x26, 0xF0, 0x87, 0x4A, 0xB8, 0xB3, 0x88, 0x1F, 
        /* 0360 */    0x27, 0xDA, 0x5B, 0x80, 0xCF, 0xA7, 0xC0, 0xED, 
        /* 0368 */    0xB0, 0x86, 0x3B, 0x82, 0xC0, 0xBB, 0x14, 0x9C, 
        /* 0370 */    0x96, 0xA7, 0xF6, 0xD4, 0x7F, 0x70, 0x8D, 0x5F, 
        /* 0378 */    0x41, 0xC8, 0x3D, 0xC6, 0x77, 0x10, 0xF6, 0xFF, 
        /* 0380 */    0x3F, 0x88, 0x01, 0x37, 0x19, 0x07, 0x31, 0x54, 
        /* 0388 */    0xF0, 0x43, 0x08, 0x40, 0xA1, 0xCB, 0xC2, 0x43, 
        /* 0390 */    0x08, 0xD8, 0xA5, 0x1F, 0xC4, 0x68, 0xEC, 0x83, 
        /* 0398 */    0x18, 0xEA, 0xFF, 0x7F, 0x82, 0xC7, 0x9F, 0xC3, 
        /* 03A0 */    0x00, 0xA7, 0x67, 0x38, 0xB8, 0x51, 0x8F, 0x61, 
        /* 03A8 */    0x80, 0xA2, 0xB3, 0x28, 0x70, 0x82, 0x78, 0x0E, 
        /* 03B0 */    0x63, 0xFF, 0xFF, 0x73, 0x18, 0xF0, 0x14, 0xFC, 
        /* 03B8 */    0x12, 0xF0, 0x81, 0x85, 0x4A, 0x84, 0x41, 0x9D, 
        /* 03C0 */    0x59, 0x00, 0xDE, 0x1C, 0x90, 0x9F, 0x59, 0xC0, 
        /* 03C8 */    0x1E, 0xF2, 0xAD, 0xA1, 0x1F, 0x81, 0xFF, 0xFF, 
        /* 03D0 */    0x67, 0x16, 0xC0, 0xF5, 0x99, 0xDC, 0x63, 0xC5, 
        /* 03D8 */    0x1D, 0x22, 0xD8, 0x48, 0x42, 0xBE, 0x0A, 0xBC, 
        /* 03E0 */    0x15, 0x98, 0xC0, 0x91, 0x0F, 0x2D, 0x40, 0xF7, 
        /* 03E8 */    0x6C, 0x82, 0x1B, 0x2D, 0xDC, 0xE3, 0xC8, 0x39, 
        /* 03F0 */    0x9E, 0xD0, 0xBB, 0xF9, 0xEB, 0x03, 0x3B, 0x4D, 
        /* 03F8 */    0xB0, 0x21, 0x83, 0x57, 0xDE, 0x21, 0x10, 0xF5, 
        /* 0400 */    0xFF, 0x1F, 0xB2, 0x0F, 0x24, 0x9E, 0xC2, 0xCB, 
        /* 0408 */    0x0C, 0x66, 0x26, 0x31, 0x0E, 0x24, 0xC2, 0xB1, 
        /* 0410 */    0x78, 0x78, 0xE4, 0x28, 0x08, 0xAA, 0x33, 0x3F, 
        /* 0418 */    0x19, 0x35, 0xE8, 0x67, 0xF7, 0x84, 0x0F, 0x9E, 
        /* 0420 */    0xE9, 0xBE, 0xE1, 0x83, 0xE1, 0x30, 0x08, 0x73, 
        /* 0428 */    0xCE, 0x1E, 0x3F, 0xF8, 0x8E, 0x3D, 0xB8, 0x73, 
        /* 0430 */    0x10, 0xBC, 0xEB, 0x8A, 0x91, 0x4F, 0xE8, 0x25, 
        /* 0438 */    0x00, 0x73, 0x6B, 0xC1, 0x9E, 0x05, 0x81, 0x93, 
        /* 0440 */    0xAC, 0x83, 0x20, 0x4A, 0xC8, 0x59, 0x10, 0x54, 
        /* 0448 */    0xFF, 0xFF, 0x83, 0x10, 0xC0, 0x04, 0x6F, 0xF7, 
        /* 0450 */    0x20, 0x5D, 0x83, 0x7C, 0x1B, 0x78, 0x1A, 0x78, 
        /* 0458 */    0xF8, 0x89, 0xF2, 0x20, 0xE4, 0x8B, 0xC4, 0x0B, 
        /* 0460 */    0x41, 0x84, 0x28, 0xC7, 0x7B, 0x02, 0x11, 0x9E, 
        /* 0468 */    0x86, 0x3C, 0xE1, 0x30, 0xE1, 0x4E, 0x36, 0xCA, 
        /* 0470 */    0x4B, 0x43, 0x18, 0x43, 0xC7, 0x0A, 0x14, 0x39, 
        /* 0478 */    0x7E, 0x08, 0x1F, 0x85, 0x7C, 0x10, 0x62, 0x51, 
        /* 0480 */    0xCE, 0xB7, 0xF4, 0xFC, 0x61, 0x23, 0x67, 0x11, 
        /* 0488 */    0xD4, 0x49, 0xC0, 0x87, 0x0E, 0x0F, 0xEA, 0x09, 
        /* 0490 */    0x01, 0x13, 0x1A, 0x42, 0x47, 0x5C, 0xE0, 0x7A, 
        /* 0498 */    0xDA, 0xC0, 0xFD, 0xFF, 0x8F, 0x42, 0xE0, 0x38, 
        /* 04A0 */    0x80, 0xC0, 0x7B, 0xF0, 0xF8, 0xB4, 0x0E, 0x2E, 
        /* 04A8 */    0x08, 0x9F, 0x3F, 0xE0, 0xFB, 0x44, 0x16, 0xEE, 
        /* 04B0 */    0x5B, 0xC0, 0x0B, 0x0D, 0xEE, 0xEC, 0x01, 0x7C, 
        /* 04B8 */    0xE4, 0x1E, 0x6B, 0x51, 0x02, 0x61, 0x50, 0x67, 
        /* 04C0 */    0x0F, 0xC0, 0xF9, 0xFF, 0xFF, 0xEC, 0x01, 0xD6, 
        /* 04C8 */    0x81, 0x3E, 0x7A, 0x1C, 0xE8, 0x31, 0x06, 0x89, 
        /* 04D0 */    0x11, 0xC4, 0x77, 0x0E, 0x1F, 0x7C, 0xE2, 0xBC, 
        /* 04D8 */    0x11, 0x3C, 0x7B, 0xF8, 0xC8, 0x71, 0x5C, 0x3E, 
        /* 04E0 */    0x80, 0xF8, 0xEC, 0xE1, 0x2B, 0x88, 0xF1, 0xC2, 
        /* 04E8 */    0xC4, 0x7C, 0x38, 0xF2, 0x35, 0x21, 0x5E, 0xE4, 
        /* 04F0 */    0xB0, 0x61, 0x22, 0xFB, 0xEC, 0xC1, 0x22, 0x1E, 
        /* 04F8 */    0x6B, 0xA9, 0x94, 0x83, 0x19, 0xFA, 0x4C, 0xE0, 
        /* 0500 */    0x5B, 0xC2, 0x99, 0xBD, 0x71, 0x44, 0x38, 0xAE, 
        /* 0508 */    0x93, 0x3B, 0x9F, 0x38, 0x1E, 0xD2, 0x49, 0xFB, 
        /* 0510 */    0x6C, 0x06, 0xBE, 0xE3, 0x07, 0x70, 0x38, 0x9B, 
        /* 0518 */    0x81, 0x67, 0x74, 0x70, 0x0F, 0x53, 0xE0, 0x93, 
        /* 0520 */    0x75, 0x36, 0x43, 0x0F, 0xCB, 0xE7, 0x82, 0x57, 
        /* 0528 */    0x07, 0x0F, 0x82, 0x9D, 0xCB, 0xC0, 0x75, 0xB8, 
        /* 0530 */    0x83, 0xF3, 0xFF, 0x3F, 0x97, 0x01, 0xAF, 0x73, 
        /* 0538 */    0xC7, 0x91, 0xB1, 0x53, 0x05, 0x47, 0x3C, 0xA8, 
        /* 0540 */    0x33, 0x79, 0x77, 0x39, 0x6B, 0x1F, 0x3C, 0x02, 
        /* 0548 */    0x9D, 0xE7, 0x29, 0xFB, 0x1C, 0x03, 0x73, 0x84, 
        /* 0550 */    0x1E, 0x3B, 0xF8, 0x0E, 0x26, 0xF8, 0x83, 0x0C, 
        /* 0558 */    0x1C, 0x98, 0x13, 0x38, 0xBA, 0x40, 0xA7, 0x10, 
        /* 0560 */    0xE7, 0x14, 0x9E, 0x63, 0x80, 0x91, 0x1C, 0x4B, 
        /* 0568 */    0x20, 0x2C, 0xC0, 0xB1, 0x40, 0xA2, 0x96, 0x49, 
        /* 0570 */    0x61, 0x7C, 0x32, 0xF0, 0x39, 0x06, 0xAE, 0x24, 
        /* 0578 */    0x38, 0xD4, 0xF8, 0x3C, 0xB2, 0x97, 0xBC, 0xE3, 
        /* 0580 */    0x3C, 0x91, 0x37, 0x04, 0x8F, 0xFF, 0x81, 0x06, 
        /* 0588 */    0xC6, 0xC0, 0x3D, 0xAD, 0x93, 0xF2, 0x4D, 0xEE, 
        /* 0590 */    0xB1, 0xC4, 0x67, 0x43, 0x7E, 0x5C, 0x60, 0x68, 
        /* 0598 */    0xFC, 0x74, 0x03, 0x86, 0xFF, 0xFF, 0xE9, 0x06, 
        /* 05A0 */    0xCE, 0x9D, 0xC1, 0x47, 0x0D, 0xB0, 0x5C, 0x6D, 
        /* 05A8 */    0x30, 0x58, 0xA1, 0x62, 0x34, 0x7A, 0xD7, 0x23, 
        /* 05B0 */    0xA0, 0xC7, 0xD7, 0xD7, 0x45, 0x9A, 0x42, 0x45, 
        /* 05B8 */    0x0C, 0xF1, 0x42, 0x60, 0x97, 0xC7, 0x71, 0xE4, 
        /* 05C0 */    0x59, 0x17, 0x5C, 0xD8, 0xCF, 0xBA, 0x60, 0x0F, 
        /* 05C8 */    0x75, 0x4E, 0xA2, 0x91, 0x46, 0x83, 0x3A, 0xC8, 
        /* 05D0 */    0xF0, 0x03, 0xC1, 0x63, 0x90, 0x4F, 0x1E, 0x06, 
        /* 05D8 */    0x39, 0xD1, 0xD3, 0x7A, 0x5C, 0x78, 0x1A, 0xF0, 
        /* 05E0 */    0xB8, 0xD9, 0x35, 0xC1, 0x1F, 0x04, 0x1F, 0x0F, 
        /* 05E8 */    0xF0, 0x97, 0xA0, 0x80, 0x27, 0xFA, 0xF0, 0x01, 
        /* 05F0 */    0xEB, 0x10, 0x82, 0x3F, 0x61, 0xC0, 0x1F, 0x8F, 
        /* 05F8 */    0x8F, 0x01, 0x3E, 0xD1, 0xFA, 0x48, 0x45, 0x06, 
        /* 0600 */    0x81, 0x3A, 0xBC, 0xF1, 0x91, 0x9E, 0xD6, 0xDB, 
        /* 0608 */    0x80, 0x0F, 0x09, 0x87, 0xC5, 0x0E, 0x1E, 0x3E, 
        /* 0610 */    0xA3, 0x80, 0x63, 0x3C, 0xF0, 0x6F, 0x9F, 0x4F, 
        /* 0618 */    0x07, 0xFF, 0xFF, 0x08, 0xAF, 0x0C, 0x9E, 0xAF, 
        /* 0620 */    0x0F, 0x66, 0x60, 0xB9, 0x75, 0xF8, 0xD0, 0x10, 
        /* 0628 */    0xEA, 0xA9, 0xC3, 0x33, 0x78, 0xBF, 0xF0, 0x09, 
        /* 0630 */    0x04, 0x98, 0x04, 0x36, 0x34, 0x48, 0x26, 0x73, 
        /* 0638 */    0x9D, 0xB2, 0x71, 0xDA, 0xA1, 0xC3, 0xB4, 0xC8, 
        /* 0640 */    0x03, 0x82, 0x8E, 0x06, 0x3E, 0xD2, 0xF8, 0x80, 
        /* 0648 */    0xCB, 0x0F, 0x49, 0x86, 0xB0, 0x30, 0x0A, 0x9D, 
        /* 0650 */    0x7C, 0x3C, 0x1A, 0x0F, 0x8F, 0xC0, 0x51, 0x10, 
        /* 0658 */    0x8F, 0xDC, 0x21, 0x21, 0x64, 0xE4, 0x10, 0x80, 
        /* 0660 */    0x3E, 0x2C, 0x30, 0x88, 0x87, 0x2E, 0x13, 0xF8, 
        /* 0668 */    0xD8, 0xE0, 0xF3, 0x1A, 0x9C, 0xE3, 0x91, 0x27, 
        /* 0670 */    0xE3, 0x69, 0x78, 0xDC, 0xB8, 0x53, 0x07, 0xDC, 
        /* 0678 */    0x71, 0xE0, 0x0F, 0x3A, 0xF8, 0x53, 0x20, 0x3F, 
        /* 0680 */    0x27, 0x91, 0xF3, 0x1F, 0xA8, 0x04, 0x9E, 0x0B, 
        /* 0688 */    0x40, 0x01, 0xE4, 0xAB, 0x80, 0x95, 0x1E, 0x07, 
        /* 0690 */    0xE8, 0x14, 0x42, 0x84, 0x89, 0x66, 0x78, 0x4C, 
        /* 0698 */    0xF0, 0xD3, 0x17, 0x1D, 0x8F, 0x87, 0xE5, 0xFF, 
        /* 06A0 */    0xFF, 0x20, 0xF9, 0xF1, 0x85, 0x61, 0x3F, 0x9D, 
        /* 06A8 */    0xF8, 0xD4, 0x76, 0x8C, 0xEF, 0x05, 0x8F, 0x5F, 
        /* 06B0 */    0x18, 0x58, 0x0F, 0x9B, 0xC3, 0x1A, 0x2D, 0xEC, 
        /* 06B8 */    0xD1, 0x3E, 0x3E, 0xF8, 0xEA, 0xE1, 0x89, 0xF9, 
        /* 06C0 */    0x16, 0xE7, 0x43, 0x07, 0x58, 0x0E, 0x52, 0xC0, 
        /* 06C8 */    0xE3, 0xFC, 0xC3, 0xE6, 0xF0, 0x02, 0xF1, 0x1C, 
        /* 06D0 */    0xE6, 0x83, 0x07, 0x3B, 0xF1, 0xB1, 0x53, 0x1F, 
        /* 06D8 */    0xD7, 0x75, 0x8E, 0x43, 0x9C, 0x21, 0xF8, 0x20, 
        /* 06E0 */    0x1C, 0x67, 0x91, 0xF2, 0x38, 0x53, 0x72, 0x95, 
        /* 06E8 */    0x7C, 0xE0, 0xA8, 0x1A, 0x45, 0xF0, 0xBE, 0x15, 
        /* 06F0 */    0xB0, 0x08, 0xC7, 0x08, 0x94, 0x78, 0x0A, 0x49, 
        /* 06F8 */    0x3F, 0x46, 0xA0, 0xC4, 0xC2, 0x51, 0x10, 0x1F, 
        /* 0700 */    0x23, 0x7C, 0x90, 0xB0, 0x8D, 0x63, 0x04, 0x6A, 
        /* 0708 */    0x8C, 0x3E, 0x0C, 0xF2, 0xA3, 0x00, 0x3F, 0x45, 
        /* 0710 */    0xC0, 0x3F, 0xF1, 0xE0, 0xC6, 0x0A, 0x77, 0x70, 
        /* 0718 */    0x6C, 0x85, 0x2F, 0x3D, 0x87, 0x76, 0x76, 0x0F, 
        /* 0720 */    0x09, 0x51, 0xDE, 0x5F, 0x8D, 0x18, 0x21, 0x60, 
        /* 0728 */    0xD8, 0x68, 0x1E, 0x23, 0xEE, 0xD8, 0xCE, 0x2E, 
        /* 0730 */    0x45, 0x9E, 0x53, 0xAC, 0x47, 0x25, 0x7E, 0xA4, 
        /* 0738 */    0x80, 0xF7, 0xFF, 0x27, 0xF0, 0x31, 0x0F, 0x77, 
        /* 0740 */    0xA4, 0x80, 0x33, 0x93, 0xF3, 0xC0, 0xA8, 0x1B, 
        /* 0748 */    0x8B, 0xE0, 0x8D, 0xF6, 0x92, 0x8D, 0x3D, 0x58, 
        /* 0750 */    0x00, 0x8F, 0x13, 0xA3, 0x0F, 0x16, 0xE0, 0x3A, 
        /* 0758 */    0x13, 0xF8, 0x60, 0x01, 0x5C, 0xCF, 0x07, 0x3E, 
        /* 0760 */    0x1D, 0x80, 0xF5, 0xF2, 0xC3, 0xEF, 0x07, 0x30, 
        /* 0768 */    0x4E, 0x18, 0x30, 0xCE, 0x07, 0x98, 0x1B, 0x86, 
        /* 0770 */    0xC3, 0x2C, 0x59, 0x27, 0x0C, 0x7E, 0x5C, 0x73, 
        /* 0778 */    0xA4, 0xD5, 0x6A, 0x20, 0xEC, 0x12, 0x86, 0x23, 
        /* 0780 */    0x18, 0x04, 0x4C, 0x27, 0x0B, 0x8F, 0xDA, 0x11, 
        /* 0788 */    0x28, 0x24, 0xED, 0x80, 0x81, 0x12, 0x73, 0xC0, 
        /* 0790 */    0xA0, 0x20, 0x06, 0x74, 0x52, 0x08, 0x9D, 0x45, 
        /* 0798 */    0xFD, 0xFF, 0x3F, 0x60, 0xF0, 0x83, 0x9D, 0x4F, 
        /* 07A0 */    0x0D, 0xEC, 0x72, 0xEB, 0xEB, 0x85, 0xE7, 0xE9, 
        /* 07A8 */    0x29, 0x73, 0x3C, 0x1F, 0x43, 0x0C, 0xEB, 0x8B, 
        /* 07B0 */    0x09, 0x78, 0x6E, 0x14, 0xEC, 0x34, 0x8B, 0xB9, 
        /* 07B8 */    0xB8, 0xB1, 0xB3, 0x1D, 0x3B, 0x15, 0x18, 0xE5, 
        /* 07C0 */    0x70, 0xDF, 0xC0, 0xAC, 0xE6, 0xAA, 0x80, 0x9A, 
        /* 07C8 */    0x11, 0x86, 0xC0, 0xE3, 0xF5, 0x81, 0x11, 0x4C, 
        /* 07D0 */    0xFA, 0x2E, 0x14, 0x20, 0x47, 0xE7, 0x32, 0x47, 
        /* 07D8 */    0x8F, 0x3A, 0x47, 0xF9, 0x24, 0xC5, 0x47, 0xEF, 
        /* 07E0 */    0xA3, 0xB9, 0x4F, 0x2B, 0x70, 0xCF, 0x52, 0x3E, 
        /* 07E8 */    0x42, 0x01, 0xDF, 0x81, 0xF9, 0x52, 0x80, 0x3B, 
        /* 07F0 */    0xA0, 0x80, 0xE1, 0xFA, 0x80, 0xFD, 0xFF, 0xC3, 
        /* 07F8 */    0xBC, 0xA2, 0xE0, 0xCF, 0x28, 0xC0, 0x24, 0xF0, 
        /* 0800 */    0x59, 0x0A, 0x74, 0x90, 0x3E, 0xA3, 0x00, 0xD7, 
        /* 0808 */    0xA1, 0xE2, 0xCE, 0x28, 0xE0, 0x38, 0x10, 0x1E, 
        /* 0810 */    0x3D, 0x3F, 0x47, 0xB1, 0x38, 0xC7, 0x12, 0x74, 
        /* 0818 */    0xA8, 0x97, 0x83, 0x6E, 0x9B, 0xEC, 0x58, 0x82, 
        /* 0820 */    0x8D, 0x72, 0x2C, 0x41, 0x85, 0xA0, 0xD0, 0x09, 
        /* 0828 */    0xCA, 0x27, 0x09, 0x7E, 0xC6, 0xE3, 0x20, 0x06, 
        /* 0830 */    0x74, 0xF6, 0x93, 0x04, 0x5A, 0xC5, 0x49, 0x02, 
        /* 0838 */    0x19, 0xF6, 0x5C, 0x02, 0x84, 0xFE, 0xFF, 0xE7, 
        /* 0840 */    0x12, 0xF0, 0x9E, 0x13, 0x9F, 0x26, 0xC0, 0x35, 
        /* 0848 */    0x6B, 0xFC, 0x69, 0x02, 0x7F, 0x3E, 0x01, 0x16, 
        /* 0850 */    0x47, 0x46, 0xC0, 0xD9, 0x41, 0x90, 0x1F, 0x19, 
        /* 0858 */    0x81, 0xEF, 0xB9, 0x84, 0xFF, 0xFF, 0xCF, 0x25, 
        /* 0860 */    0xE0, 0x19, 0xB6, 0xCF, 0x25, 0x80, 0x93, 0x9B, 
        /* 0868 */    0x34, 0x3F, 0x97, 0xC0, 0x1D, 0xBA, 0xE3, 0x9C, 
        /* 0870 */    0xBE, 0x10, 0x57, 0x58, 0xDF, 0x33, 0xE2, 0x27, 
        /* 0878 */    0x18, 0xE3, 0x58, 0x82, 0x0A, 0x70, 0xF8, 0x02, 
        /* 0880 */    0xB4, 0xFF, 0xFF, 0x4F, 0x23, 0xE0, 0x3F, 0x17, 
        /* 0888 */    0x7B, 0xF4, 0xFC, 0x40, 0xE2, 0x43, 0x06, 0x19, 
        /* 0890 */    0x3D, 0x8D, 0x7C, 0xF8, 0x82, 0x1E, 0xF1, 0x30, 
        /* 0898 */    0x02, 0xB4, 0x07, 0xFA, 0xF0, 0x05, 0xC6, 0xDB, 
        /* 08A0 */    0x03, 0x3F, 0x6E, 0x02, 0xAF, 0xD8, 0x87, 0x12, 
        /* 08A8 */    0xD0, 0xC1, 0xF2, 0x43, 0x09, 0xF8, 0xFF, 0xFF, 
        /* 08B0 */    0x87, 0x12, 0xF0, 0x8C, 0x1E, 0x77, 0xF6, 0x02, 
        /* 08B8 */    0xC7, 0x55, 0xC2, 0x83, 0x37, 0xE0, 0x31, 0x3D, 
        /* 08C0 */    0x16, 0x18, 0x90, 0x9D, 0x4B, 0x98, 0xEC, 0x73, 
        /* 08C8 */    0x09, 0xFA, 0x3C, 0x62, 0xAB, 0xB7, 0x63, 0x72, 
        /* 08D0 */    0x52, 0xC7, 0x08, 0x3F, 0x97, 0xA0, 0x24, 0x9F, 
        /* 08D8 */    0x4B, 0x00, 0xDA, 0x1C, 0xBA, 0xC0, 0xF1, 0xFF, 
        /* 08E0 */    0x3F, 0x74, 0x01, 0x3C, 0xB8, 0x06, 0xFA, 0x40, 
        /* 08E8 */    0x02, 0xAE, 0x7B, 0x82, 0x0F, 0x24, 0xC0, 0xF5, 
        /* 08F0 */    0x28, 0x00, 0x9E, 0x23, 0x08, 0xFE, 0xC8, 0xEC, 
        /* 08F8 */    0x03, 0x3F, 0xEE, 0xA4, 0xEF, 0x53, 0x75, 0x5C, 
        /* 0900 */    0xE3, 0x1F, 0xF1, 0x11, 0xFC, 0xFF, 0x1B, 0x3F, 
        /* 0908 */    0x7D, 0x91, 0x7B, 0x81, 0x8F, 0x25, 0x3A, 0xF0, 
        /* 0910 */    0xA3, 0x04, 0x53, 0x48, 0xEE, 0x01, 0x02, 0x25, 
        /* 0918 */    0x10, 0x8E, 0x82, 0xF8, 0x00, 0xE1, 0xF0, 0xE7, 
        /* 0920 */    0x24, 0xE8, 0x57, 0x4B, 0x7E, 0x7E, 0xC0, 0x5F, 
        /* 0928 */    0x47, 0xD8, 0x28, 0xD9, 0x71, 0x1E, 0x37, 0x4A, 
        /* 0930 */    0xB8, 0x60, 0xAF, 0x0F, 0x86, 0xB8, 0xC3, 0x13, 
        /* 0938 */    0xE1, 0x67, 0x5B, 0xCC, 0x31, 0x1F, 0xEE, 0x51, 
        /* 0940 */    0xE1, 0x51, 0x09, 0x5C, 0xB3, 0x86, 0x75, 0x58, 
        /* 0948 */    0x02, 0x3C, 0x78, 0x38, 0x4C, 0x00, 0xAD, 0xFF, 
        /* 0950 */    0xFF, 0x61, 0x09, 0xFC, 0xB3, 0xE7, 0x83, 0x38, 
        /* 0958 */    0x11, 0x0F, 0x1F, 0x03, 0x74, 0x2C, 0x6F, 0x07, 
        /* 0960 */    0xEC, 0xD8, 0xAB, 0xC3, 0x12, 0x6A, 0x0C, 0x3E, 
        /* 0968 */    0xFA, 0xFA, 0xE8, 0xC4, 0x20, 0x1F, 0x0F, 0x31, 
        /* 0970 */    0xC7, 0x16, 0x76, 0xC2, 0x07, 0xF8, 0xF6, 0xFF, 
        /* 0978 */    0x3F, 0xE1, 0x03, 0xD6, 0xCE, 0x24, 0xBE, 0x3F, 
        /* 0980 */    0x60, 0xAF, 0x2D, 0xF8, 0xA3, 0x09, 0xF0, 0x06, 
        /* 0988 */    0xF7, 0xD1, 0x04, 0x70, 0xF5, 0xFF, 0x3F, 0x9A, 
        /* 0990 */    0xE0, 0x84, 0x9E, 0x9D, 0x50, 0x67, 0x03, 0x1F, 
        /* 0998 */    0x98, 0x6C, 0x14, 0x95, 0x40, 0xBF, 0x69, 0xBC, 
        /* 09A0 */    0x9F, 0x07, 0x31, 0xF4, 0x49, 0xF0, 0x53, 0x13, 
        /* 09A8 */    0x06, 0xC2, 0x47, 0x13, 0x9F, 0x24, 0x7C, 0x9C, 
        /* 09B0 */    0xE0, 0x52, 0xE0, 0x28, 0x88, 0x8F, 0x13, 0x8E, 
        /* 09B8 */    0x79, 0x36, 0x41, 0x9F, 0x0A, 0x7C, 0x3F, 0x38, 
        /* 09C0 */    0x09, 0x6C, 0xA8, 0xF3, 0x04, 0x50, 0x19, 0x07, 
        /* 09C8 */    0xFE, 0xE8, 0x04, 0x57, 0xD8, 0xC9, 0x04, 0x64, 
        /* 09D0 */    0x27, 0x72, 0x60, 0x6E, 0xE2, 0x1C, 0x01, 0x94, 
        /* 09D8 */    0xFE, 0xFF, 0x27, 0x72, 0xE0, 0x70, 0x5A, 0xE5, 
        /* 09E0 */    0xA7, 0x01, 0x7C, 0xA0, 0xA3, 0x2A, 0x3A, 0xD6, 
        /* 09E8 */    0x93, 0x41, 0x23, 0x7E, 0x07, 0x08, 0x77, 0xEA, 
        /* 09F0 */    0xE7, 0xF9, 0x40, 0xC0, 0x8E, 0xE5, 0x3E, 0x2C, 
        /* 09F8 */    0xF1, 0xF3, 0x92, 0x4F, 0x11, 0x3E, 0x41, 0x70, 
        /* 0A00 */    0x49, 0x27, 0x08, 0x0A, 0x62, 0x40, 0xE7, 0x3D, 
        /* 0A08 */    0x5D, 0x7A, 0x10, 0xF4, 0x7C, 0xC3, 0x8F, 0xC5, 
        /* 0A10 */    0xBE, 0xB6, 0x1C, 0xC5, 0x23, 0x51, 0x82, 0xF9, 
        /* 0A18 */    0x0E, 0x01, 0xF4, 0xB6, 0x04, 0x4F, 0xDE, 0x6D, 
        /* 0A20 */    0x09, 0x44, 0x18, 0x77, 0x72, 0x16, 0x0C, 0xE1, 
        /* 0A28 */    0x28, 0x7D, 0x80, 0x80, 0x31, 0xC0, 0xC7, 0x84, 
        /* 0A30 */    0x62, 0xDF, 0x37, 0xF4, 0xBE, 0x04, 0xF3, 0x8A, 
        /* 0A38 */    0x09, 0xAE, 0xF3, 0x12, 0x30, 0x9E, 0x89, 0xFF, 
        /* 0A40 */    0xFF, 0x3E, 0xCF, 0x21, 0xE4, 0x02, 0xC0, 0x4F, 
        /* 0A48 */    0xE5, 0x60, 0x39, 0x36, 0x80, 0x67, 0x1C, 0xEC, 
        /* 0A50 */    0x0A, 0x80, 0x3F, 0x32, 0xC1, 0x3E, 0x35, 0xE2, 
        /* 0A58 */    0x8E, 0x4C, 0x60, 0x98, 0x08, 0x3B, 0xE7, 0x1C, 
        /* 0A60 */    0x08, 0xF6, 0x60, 0x02, 0xBC, 0x55, 0x1C, 0x4C, 
        /* 0A68 */    0x00, 0x2D, 0xC3, 0x0D, 0x72, 0x3E, 0x8F, 0xE4, 
        /* 0A70 */    0xC6, 0x79, 0xC3, 0xF3, 0x89, 0x84, 0x9D, 0xC4, 
        /* 0A78 */    0xD9, 0xFF, 0xFF, 0x60, 0xC2, 0x25, 0x41, 0x48, 
        /* 0A80 */    0xFE, 0x61, 0x09, 0x89, 0x8D, 0x9D, 0xFE, 0x39, 
        /* 0A88 */    0xBC, 0xB9, 0x32, 0x82, 0x62, 0x8F, 0x4B, 0xA8, 
        /* 0A90 */    0xC3, 0x84, 0x45, 0x9E, 0x26, 0x50, 0xA7, 0x69, 
        /* 0A98 */    0x9F, 0x90, 0xC9, 0x69, 0x82, 0x46, 0x3E, 0x4D, 
        /* 0AA0 */    0xA0, 0x87, 0xE6, 0x89, 0x9D, 0x06, 0x6E, 0xDC, 
        /* 0AA8 */    0xA7, 0xC1, 0x6F, 0x87, 0xFC, 0xC0, 0x04, 0x7C, 
        /* 0AB0 */    0x0F, 0x0F, 0xF8, 0xD3, 0x04, 0xEC, 0xF3, 0x0D, 
        /* 0AB8 */    0x1B, 0x74, 0xC8, 0x77, 0x87, 0x17, 0x59, 0x1F, 
        /* 0AC0 */    0x26, 0x80, 0xF9, 0xC8, 0x7D, 0x98, 0x00, 0xFF, 
        /* 0AC8 */    0xFF, 0xFF, 0xD0, 0x04, 0x5C, 0x15, 0xDA, 0xF4, 
        /* 0AD0 */    0xA9, 0xD1, 0xA8, 0x55, 0x83, 0x32, 0x35, 0xCA, 
        /* 0AD8 */    0x34, 0xA8, 0xD5, 0xA7, 0x52, 0x63, 0xC6, 0xA4, 
        /* 0AE0 */    0x9D, 0x54, 0xBD, 0x54, 0x8D, 0xD5, 0x91, 0x9E, 
        /* 0AE8 */    0x0B, 0x02, 0x71, 0xD4, 0x05, 0x0B, 0xC4, 0xD1, 
        /* 0AF0 */    0x9F, 0x40, 0x02, 0xB1, 0xB8, 0x57, 0x88, 0x40, 
        /* 0AF8 */    0x2C, 0xF5, 0x05, 0x21, 0x10, 0xCB, 0xD4, 0x01, 
        /* 0B00 */    0xC2, 0x82, 0xBC, 0xEF, 0x05, 0xE2, 0x60, 0x52, 
        /* 0B08 */    0x06, 0x40, 0xAD, 0x80, 0xB0, 0x78, 0xCB, 0x12, 
        /* 0B10 */    0x88, 0x23, 0x9A, 0x39, 0x01, 0x50, 0x37, 0x20, 
        /* 0B18 */    0x4C, 0xA0, 0x1E, 0x10, 0x26, 0xDC, 0x10, 0x08, 
        /* 0B20 */    0x8B, 0xA3, 0x08, 0x84, 0x09, 0xB6, 0x04, 0xC2, 
        /* 0B28 */    0xE2, 0x82, 0x50, 0xC1, 0x9E, 0x8E, 0xFD, 0x4C, 
        /* 0B30 */    0x3E, 0x88, 0x80, 0x1C, 0xDA, 0x14, 0x10, 0x93, 
        /* 0B38 */    0xA0, 0x0A, 0x88, 0x25, 0x78, 0x0C, 0x08, 0xC8, 
        /* 0B40 */    0x71, 0x40, 0x04, 0xE4, 0x50, 0xB6, 0x80, 0x58, 
        /* 0B48 */    0x44, 0x10, 0x01, 0x59, 0xCF, 0x1B, 0x4E, 0x40, 
        /* 0B50 */    0x16, 0x07, 0x22, 0x20, 0x8B, 0x36, 0x06, 0xC4, 
        /* 0B58 */    0x22, 0x80, 0x08, 0xC8, 0xC9, 0x5E, 0x70, 0x81, 
        /* 0B60 */    0x48, 0x4C, 0x10, 0x01, 0x39, 0xEC, 0x8A, 0x05, 
        /* 0B68 */    0xE4, 0xE8, 0x20, 0x02, 0xB2, 0x4E, 0x6F, 0x40, 
        /* 0B70 */    0x4C, 0x34, 0x88, 0x80, 0x2C, 0xFE, 0xB1, 0x21, 
        /* 0B78 */    0x20, 0x47, 0x01, 0x11, 0x90, 0x03, 0x3E, 0x28, 
        /* 0B80 */    0x02, 0x91, 0xB8, 0x20, 0x02, 0xB2, 0x46, 0x7B, 
        /* 0B88 */    0x40, 0x4C, 0x30, 0x88, 0x80, 0x2C, 0xFB, 0x07, 
        /* 0B90 */    0x25, 0x20, 0x87, 0x00, 0xD1, 0x00, 0xC9, 0xEB, 
        /* 0B98 */    0x40, 0x03, 0x24, 0xBF, 0x89, 0x40, 0x44, 0xE2, 
        /* 0BA0 */    0xAB, 0x22, 0x10, 0xD1, 0x0B, 0x22, 0x20, 0xFF, 
        /* 0BA8 */    0xFF, 0xA5, 0xFF, 0x38, 0x04, 0xE4, 0x20, 0x20, 
        /* 0BB0 */    0x02, 0x26, 0x1A, 0x81, 0xE9, 0x0B, 0x21, 0x10, 
        /* 0BB8 */    0xF9, 0xFF, 0x03
    })
    Name (QLST, Package (0x07)
    {
        0x06, 
        Package (0x08)
        {
            0x2700, 
            "Advanced Clock Calibration", 
            Zero, 
            0x04, 
            Buffer (0x09)
            {
                "Disabled"
            }, 

            Buffer (0x05)
            {
                "Auto"
            }, 

            Buffer (0x0A)
            {
                "All Cores"
            }, 

            Buffer (0x09)
            {
                "Per Core"
            }
        }, 

        Package (0x16)
        {
            0x455C, 
            "Value (All Cores)", 
            0x02, 
            Buffer (0x05)
            {
                0x82, 0x02, 0x01, 0x03, 0x00
            }, 

            Buffer (0x05)
            {
                0x86, 0x10, 0x00, 0x02, 0x00
            }, 

            0x10, 
            Buffer (0x03)
            {
                "0%"
            }, 

            Buffer (0x05)
            {
                "+ 2%"
            }, 

            Buffer (0x05)
            {
                "+ 4%"
            }, 

            Buffer (0x05)
            {
                "+ 6%"
            }, 

            Buffer (0x05)
            {
                "+ 8%"
            }, 

            Buffer (0x05)
            {
                "+10%"
            }, 

            Buffer (0x05)
            {
                "+12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x05)
            {
                "- 2%"
            }, 

            Buffer (0x05)
            {
                "- 4%"
            }, 

            Buffer (0x05)
            {
                "- 6%"
            }, 

            Buffer (0x05)
            {
                "- 8%"
            }, 

            Buffer (0x05)
            {
                "-10%"
            }, 

            Buffer (0x05)
            {
                "-12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }
        }, 

        Package (0x16)
        {
            0x4560, 
            "Value (Core 0)", 
            0x02, 
            Buffer (0x05)
            {
                0x82, 0x03, 0x01, 0x03, 0x00
            }, 

            Buffer (0x05)
            {
                0x86, 0x10, 0x00, 0x02, 0x00
            }, 

            0x10, 
            Buffer (0x03)
            {
                "0%"
            }, 

            Buffer (0x05)
            {
                "+ 2%"
            }, 

            Buffer (0x05)
            {
                "+ 4%"
            }, 

            Buffer (0x05)
            {
                "+ 6%"
            }, 

            Buffer (0x05)
            {
                "+ 8%"
            }, 

            Buffer (0x05)
            {
                "+10%"
            }, 

            Buffer (0x05)
            {
                "+12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x05)
            {
                "- 2%"
            }, 

            Buffer (0x05)
            {
                "- 4%"
            }, 

            Buffer (0x05)
            {
                "- 6%"
            }, 

            Buffer (0x05)
            {
                "- 8%"
            }, 

            Buffer (0x05)
            {
                "-10%"
            }, 

            Buffer (0x05)
            {
                "-12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }
        }, 

        Package (0x16)
        {
            0x4564, 
            "Value (Core 1)", 
            0x02, 
            Buffer (0x05)
            {
                0x82, 0x03, 0x01, 0x03, 0x00
            }, 

            Buffer (0x05)
            {
                0x86, 0x10, 0x00, 0x02, 0x00
            }, 

            0x10, 
            Buffer (0x03)
            {
                "0%"
            }, 

            Buffer (0x05)
            {
                "+ 2%"
            }, 

            Buffer (0x05)
            {
                "+ 4%"
            }, 

            Buffer (0x05)
            {
                "+ 6%"
            }, 

            Buffer (0x05)
            {
                "+ 8%"
            }, 

            Buffer (0x05)
            {
                "+10%"
            }, 

            Buffer (0x05)
            {
                "+12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x05)
            {
                "- 2%"
            }, 

            Buffer (0x05)
            {
                "- 4%"
            }, 

            Buffer (0x05)
            {
                "- 6%"
            }, 

            Buffer (0x05)
            {
                "- 8%"
            }, 

            Buffer (0x05)
            {
                "-10%"
            }, 

            Buffer (0x05)
            {
                "-12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }
        }, 

        Package (0x16)
        {
            0x4568, 
            "Value (Core 2)", 
            0x02, 
            Buffer (0x05)
            {
                0x82, 0x03, 0x01, 0x03, 0x00
            }, 

            Buffer (0x05)
            {
                0x86, 0x10, 0x00, 0x02, 0x00
            }, 

            0x10, 
            Buffer (0x03)
            {
                "0%"
            }, 

            Buffer (0x05)
            {
                "+ 2%"
            }, 

            Buffer (0x05)
            {
                "+ 4%"
            }, 

            Buffer (0x05)
            {
                "+ 6%"
            }, 

            Buffer (0x05)
            {
                "+ 8%"
            }, 

            Buffer (0x05)
            {
                "+10%"
            }, 

            Buffer (0x05)
            {
                "+12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x05)
            {
                "- 2%"
            }, 

            Buffer (0x05)
            {
                "- 4%"
            }, 

            Buffer (0x05)
            {
                "- 6%"
            }, 

            Buffer (0x05)
            {
                "- 8%"
            }, 

            Buffer (0x05)
            {
                "-10%"
            }, 

            Buffer (0x05)
            {
                "-12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }
        }, 

        Package (0x16)
        {
            0x456C, 
            "Value (Core 3)", 
            0x02, 
            Buffer (0x05)
            {
                0x82, 0x03, 0x01, 0x03, 0x00
            }, 

            Buffer (0x05)
            {
                0x86, 0x10, 0x00, 0x02, 0x00
            }, 

            0x10, 
            Buffer (0x03)
            {
                "0%"
            }, 

            Buffer (0x05)
            {
                "+ 2%"
            }, 

            Buffer (0x05)
            {
                "+ 4%"
            }, 

            Buffer (0x05)
            {
                "+ 6%"
            }, 

            Buffer (0x05)
            {
                "+ 8%"
            }, 

            Buffer (0x05)
            {
                "+10%"
            }, 

            Buffer (0x05)
            {
                "+12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }, 

            Buffer (0x05)
            {
                "- 2%"
            }, 

            Buffer (0x05)
            {
                "- 4%"
            }, 

            Buffer (0x05)
            {
                "- 6%"
            }, 

            Buffer (0x05)
            {
                "- 8%"
            }, 

            Buffer (0x05)
            {
                "-10%"
            }, 

            Buffer (0x05)
            {
                "-12%"
            }, 

            Buffer (0x09)
            {
                "RESERVED"
            }
        }
    })
    Name (_S0, Package (0x04)
    {
        Zero, 
        Zero, 
        Zero, 
        Zero
    })
    If (SS1)
    {
        Name (_S1, Package (0x04)
        {
            One, 
            Zero, 
            Zero, 
            Zero
        })
    }

    If (SS3)
    {
        Name (_S3, Package (0x04)
        {
            0x03, 
            Zero, 
            Zero, 
            Zero
        })
    }

    If (SS4)
    {
        Name (_S4, Package (0x04)
        {
            0x04, 
            Zero, 
            Zero, 
            Zero
        })
    }

    Name (_S5, Package (0x04)
    {
        0x05, 
        Zero, 
        Zero, 
        Zero
    })
    Method (PTS, 1, NotSerialized)
    {
        If (Arg0)
        {
            \_SB.PCI0.SBRG.SIOS (Arg0)
            NPTS (Arg0)
            NB2S (Arg0)
            SPTS (Arg0)
            \_SB.PCI0.SBRG.EPTS (Arg0)
            APTS (Arg0)
        }
    }

    Method (WAK, 1, NotSerialized)
    {
        \_SB.PCI0.SBRG.SIOW (Arg0)
        NWAK (Arg0)
        NB2W (Arg0)
        SWAK (Arg0)
        \_SB.PCI0.SBRG.EWAK (Arg0)
        AWAK (Arg0)
    }

    Scope (\_PR.P001)
    {
        Name (_PCT, Package (0x02)
        {
            ResourceTemplate ()
            {
                Register (FFixedHW, 
                    0x00,               // Bit Width
                    0x00,               // Bit Offset
                    0x0000000000000000, // Address
                    ,)
            }, 

            ResourceTemplate ()
            {
                Register (FFixedHW, 
                    0x00,               // Bit Width
                    0x00,               // Bit Offset
                    0x0000000000000000, // Address
                    ,)
            }
        })
        Name (_PSS, Package (0x06)
        {
            Package (0x06)
            {
                0x000009C4, 
                0x0000C350, 
                0x00000064, 
                0x00000009, 
                0xE8201391, 
                0x00000391
            }, 

            Package (0x06)
            {
                0x00000960, 
                0x0000B3C4, 
                0x00000064, 
                0x00000009, 
                0xE82013D0, 
                0x000003D0
            }, 

            Package (0x06)
            {
                0x00000898, 
                0x0000970F, 
                0x00000064, 
                0x00000009, 
                0xE820144E, 
                0x0000044E
            }, 

            Package (0x06)
            {
                0x000007D0, 
                0x00007D64, 
                0x00000064, 
                0x00000009, 
                0xE82014CC, 
                0x000004CC
            }, 

            Package (0x06)
            {
                0x00000708, 
                0x00006699, 
                0x00000064, 
                0x00000009, 
                0xE820154A, 
                0x0000054A
            }, 

            Package (0x06)
            {
                0x000003E8, 
                0x00003640, 
                0x00000064, 
                0x00000009, 
                0xE8201582, 
                0x00000582
            }
        })
        Name (_PPC, 0x00)
        Name (_PSD, Package (0x01)
        {
            Package (0x05)
            {
                0x05, 
                0x00, 
                0x00000000, 
                0x000000FD, 
                0x00000002
            }
        })
    }

    Scope (\_PR.P002)
    {
        Name (_PCT, Package (0x02)
        {
            ResourceTemplate ()
            {
                Register (FFixedHW, 
                    0x00,               // Bit Width
                    0x00,               // Bit Offset
                    0x0000000000000000, // Address
                    ,)
            }, 

            ResourceTemplate ()
            {
                Register (FFixedHW, 
                    0x00,               // Bit Width
                    0x00,               // Bit Offset
                    0x0000000000000000, // Address
                    ,)
            }
        })
        Name (_PSS, Package (0x06)
        {
            Package (0x06)
            {
                0x000009C4, 
                0x0000C350, 
                0x00000064, 
                0x00000009, 
                0xE8201391, 
                0x00000391
            }, 

            Package (0x06)
            {
                0x00000960, 
                0x0000B3C4, 
                0x00000064, 
                0x00000009, 
                0xE82013D0, 
                0x000003D0
            }, 

            Package (0x06)
            {
                0x00000898, 
                0x0000970F, 
                0x00000064, 
                0x00000009, 
                0xE820144E, 
                0x0000044E
            }, 

            Package (0x06)
            {
                0x000007D0, 
                0x00007D64, 
                0x00000064, 
                0x00000009, 
                0xE82014CC, 
                0x000004CC
            }, 

            Package (0x06)
            {
                0x00000708, 
                0x00006699, 
                0x00000064, 
                0x00000009, 
                0xE820154A, 
                0x0000054A
            }, 

            Package (0x06)
            {
                0x000003E8, 
                0x00003640, 
                0x00000064, 
                0x00000009, 
                0xE8201582, 
                0x00000582
            }
        })
        Name (_PPC, 0x00)
        Name (_PSD, Package (0x01)
        {
            Package (0x05)
            {
                0x05, 
                0x00, 
                0x00000000, 
                0x000000FD, 
                0x00000002
            }
        })
    }
}

