181 skills found · Page 4 of 7
zilch-lang / ZilchA statically-typed, low-level, functional programming language with some focus on runtime performance
UMLGenerator / Android UML GeneratorExecution flows in the applications sometimes can be difficult to visualize without having UML diagrams. In particular sequence diagrams allows to capture the flow logic of a program, logic methods, usage program, and logic of services. This type of diagrams can be represented using UML notation and in order to export this diagram some programs like Enterprise Architect use the XMI specification. The goals of this project are to automatically generate sequence diagrams based on the usage of the application, and also link the highlevel GUI events into the lowlevel method calls.
YBogomolov / Talk Typelevel TsCode samples for my talk “Type-level programming in TypeScript”
Mdshobu / Liberty House Club Whitepaper# Liberty House Club **A Parallel Binance Chain to Enable Smart Contracts** _NOTE: This document is under development. Please check regularly for updates!_ ## Table of Contents - [Motivation](#motivation) - [Design Principles](#design-principles) - [Consensus and Validator Quorum](#consensus-and-validator-quorum) * [Proof of Staked Authority](#proof-of-staked-authority) * [Validator Quorum](#validator-quorum) * [Security and Finality](#security-and-finality) * [Reward](#reward) - [Token Economy](#token-economy) * [Native Token](#native-token) * [Other Tokens](#other-tokens) - [Cross-Chain Transfer and Communication](#cross-chain-transfer-and-communication) * [Cross-Chain Transfer](#cross-chain-transfer) * [BC to BSC Architecture](#bc-to-bsc-architecture) * [BSC to BC Architecture](#bsc-to-bc-architecture) * [Timeout and Error Handling](#timeout-and-error-handling) * [Cross-Chain User Experience](#cross-chain-user-experience) * [Cross-Chain Contract Event](#cross-chain-contract-event) - [Staking and Governance](#staking-and-governance) * [Staking on BC](#staking-on-bc) * [Rewarding](#rewarding) * [Slashing](#slashing) - [Relayers](#relayers) * [BSC Relayers](#bsc-relayers) * [Oracle Relayers](#oracle-relayers) - [Outlook](#outlook) # Motivation After its mainnet community [launch](https://www.binance.com/en/blog/327334696200323072/Binance-DEX-Launches-on-Binance-Chain-Invites-Further-Community-Development) in April 2019, [Binance Chain](https://www.binance.org) has exhibited its high speed and large throughput design. Binance Chain’s primary focus, its native [decentralized application](https://en.wikipedia.org/wiki/Decentralized_application) (“dApp”) [Binance DEX](https://www.binance.org/trade), has demonstrated its low-latency matching with large capacity headroom by handling millions of trading volume in a short time. Flexibility and usability are often in an inverse relationship with performance. The concentration on providing a convenient digital asset issuing and trading venue also brings limitations. Binance Chain's most requested feature is the programmable extendibility, or simply the [Smart Contract](https://en.wikipedia.org/wiki/Smart_contract) and Virtual Machine functions. Digital asset issuers and owners struggle to add new decentralized features for their assets or introduce any sort of community governance and activities. Despite this high demand for adding the Smart Contract feature onto Binance Chain, it is a hard decision to make. The execution of a Smart Contract may slow down the exchange function and add non-deterministic factors to trading. If that compromise could be tolerated, it might be a straightforward idea to introduce a new Virtual Machine specification based on [Tendermint](https://tendermint.com/core/), based on the current underlying consensus protocol and major [RPC](https://docs.binance.org/api-reference/node-rpc.html) implementation of Binance Chain. But all these will increase the learning requirements for all existing dApp communities, and will not be very welcomed. We propose a parallel blockchain of the current Binance Chain to retain the high performance of the native DEX blockchain and to support a friendly Smart Contract function at the same time. # Design Principles After the creation of the parallel blockchain into the Binance Chain ecosystem, two blockchains will run side by side to provide different services. The new parallel chain will be called “**Binance Smart Chain**” (short as “**BSC**” for the below sections), while the existing mainnet remains named “**Binance Chain**” (short as “**BC**” for the below sections). Here are the design principles of **BSC**: 1. **Standalone Blockchain**: technically, BSC is a standalone blockchain, instead of a layer-2 solution. Most BSC fundamental technical and business functions should be self-contained so that it can run well even if the BC stopped for a short period. 2. **Ethereum Compatibility**: The first practical and widely-used Smart Contract platform is Ethereum. To take advantage of the relatively mature applications and community, BSC chooses to be compatible with the existing Ethereum mainnet. This means most of the **dApps**, ecosystem components, and toolings will work with BSC and require zero or minimum changes; BSC node will require similar (or a bit higher) hardware specification and skills to run and operate. The implementation should leave room for BSC to catch up with further Ethereum upgrades. 3. **Staking Involved Consensus and Governance**: Staking-based consensus is more environmentally friendly and leaves more flexible option to the community governance. Expectedly, this consensus should enable better network performance over [proof-of-work](https://en.wikipedia.org/wiki/Proof_of_work) blockchain system, i.e., faster blocking time and higher transaction capacity. 4. **Native Cross-Chain Communication**: both BC and BSC will be implemented with native support for cross-chain communication among the two blockchains. The communication protocol should be bi-directional, decentralized, and trustless. It will concentrate on moving digital assets between BC and BSC, i.e., [BEP2](https://github.com/binance-chain/BEPs/blob/master/BEP2.md) tokens, and eventually, other BEP tokens introduced later. The protocol should care for the minimum of other items stored in the state of the blockchains, with only a few exceptions. # Consensus and Validator Quorum Based on the above design principles, the consensus protocol of BSC is to fulfill the following goals: 1. Blocking time should be shorter than Ethereum network, e.g. 5 seconds or even shorter. 2. It requires limited time to confirm the finality of transactions, e.g. around 1-min level or shorter. 3. There is no inflation of native token: BNB, the block reward is collected from transaction fees, and it will be paid in BNB. 4. It is compatible with Ethereum system as much as possible. 5. It allows modern [proof-of-stake](https://en.wikipedia.org/wiki/Proof_of_stake) blockchain network governance. ## Proof of Staked Authority Although Proof-of-Work (PoW) has been recognized as a practical mechanism to implement a decentralized network, it is not friendly to the environment and also requires a large size of participants to maintain the security. Ethereum and some other blockchain networks, such as [MATIC Bor](https://github.com/maticnetwork/bor), [TOMOChain](https://tomochain.com/), [GoChain](https://gochain.io/), [xDAI](https://xdai.io/), do use [Proof-of-Authority(PoA)](https://en.wikipedia.org/wiki/Proof_of_authority) or its variants in different scenarios, including both testnet and mainnet. PoA provides some defense to 51% attack, with improved efficiency and tolerance to certain levels of Byzantine players (malicious or hacked). It serves as an easy choice to pick as the fundamentals. Meanwhile, the PoA protocol is most criticized for being not as decentralized as PoW, as the validators, i.e. the nodes that take turns to produce blocks, have all the authorities and are prone to corruption and security attacks. Other blockchains, such as EOS and Lisk both, introduce different types of [Delegated Proof of Stake (DPoS)](https://en.bitcoinwiki.org/wiki/DPoS) to allow the token holders to vote and elect the validator set. It increases the decentralization and favors community governance. BSC here proposes to combine DPoS and PoA for consensus, so that: 1. Blocks are produced by a limited set of validators 2. Validators take turns to produce blocks in a PoA manner, similar to [Ethereum’s Clique](https://eips.ethereum.org/EIPS/eip-225) consensus design 3. Validator set are elected in and out based on a staking based governance ## Validator Quorum In the genesis stage, a few trusted nodes will run as the initial Validator Set. After the blocking starts, anyone can compete to join as candidates to elect as a validator. The staking status decides the top 21 most staked nodes to be the next validator set, and such an election will repeat every 24 hours. **BNB** is the token used to stake for BSC. In order to remain as compatible as Ethereum and upgradeable to future consensus protocols to be developed, BSC chooses to rely on the **BC** for staking management (Please refer to the below “[Staking and Governance](#staking-and-governance)” section). There is a **dedicated staking module for BSC on BC**. It will accept BSC staking from BNB holders and calculate the highest staked node set. Upon every UTC midnight, BC will issue a verifiable `ValidatorSetUpdate` cross-chain message to notify BSC to update its validator set. While producing further blocks, the existing BSC validators check whether there is a `ValidatorSetUpdate` message relayed onto BSC periodically. If there is, they will update the validator set after an **epoch period**, i.e. a predefined number of blocking time. For example, if BSC produces a block every 5 seconds, and the epoch period is 240 blocks, then the current validator set will check and update the validator set for the next epoch in 1200 seconds (20 minutes). ## Security and Finality Given there are more than ½\*N+1 validators are honest, PoA based networks usually work securely and properly. However, there are still cases where certain amount Byzantine validators may still manage to attack the network, e.g. through the “[Clone Attack](https://arxiv.org/pdf/1902.10244.pdf)”. To secure as much as BC, BSC users are encouraged to wait until receiving blocks sealed by more than ⅔\*N+1 different validators. In that way, the BSC can be trusted at a similar security level to BC and can tolerate less than ⅓\*N Byzantine validators. With 21 validators, if the block time is 5 seconds, the ⅔\*N+1 different validator seals will need a time period of (⅔\*21+1)*5 = 75 seconds. Any critical applications for BSC may have to wait for ⅔\*N+1 to ensure a relatively secure finality. However, besides such arrangement, BSC does introduce **Slashing** logic to penalize Byzantine validators for **double signing** or **inavailability**, which will be covered in the “Staking and Governance” section later. This Slashing logic will expose the malicious validators in a very short time and make the “Clone Attack” very hard or extremely non-beneficial to execute. With this enhancement, ½\*N+1 or even fewer blocks are enough as confirmation for most transactions. ## Reward All the BSC validators in the current validator set will be rewarded with transaction **fees in BNB**. As BNB is not an inflationary token, there will be no mining rewards as what Bitcoin and Ethereum network generate, and the gas fee is the major reward for validators. As BNB is also utility tokens with other use cases, delegators and validators will still enjoy other benefits of holding BNB. The reward for validators is the fees collected from transactions in each block. Validators can decide how much to give back to the delegators who stake their BNB to them, in order to attract more staking. Every validator will take turns to produce the blocks in the same probability (if they stick to 100% liveness), thus, in the long run, all the stable validators may get a similar size of the reward. Meanwhile, the stakes on each validator may be different, so this brings a counter-intuitive situation that more users trust and delegate to one validator, they potentially get less reward. So rational delegators will tend to delegate to the one with fewer stakes as long as the validator is still trustful (insecure validator may bring slashable risk). In the end, the stakes on all the validators will have less variation. This will actually prevent the stake concentration and “winner wins forever” problem seen on some other networks. Some parts of the gas fee will also be rewarded to relayers for Cross-Chain communication. Please refer to the “[Relayers](#relayers)” section below. # Token Economy BC and BSC share the same token universe for BNB and BEP2 tokens. This defines: 1. The same token can circulate on both networks, and flow between them bi-directionally via a cross-chain communication mechanism. 2. The total circulation of the same token should be managed across the two networks, i.e. the total effective supply of a token should be the sum of the token’s total effective supply on both BSC and BC. 3. The tokens can be initially created on BSC in a similar format as ERC20 token standard, or on BC as a BEP2, then created on the other. There are native ways on both networks to link the two and secure the total supply of the token. ## Native Token BNB will run on BSC in the same way as ETH runs on Ethereum so that it remains as “native token” for both BSC and BC. This means, in addition to BNB is used to pay most of the fees on Binance Chain and Binance DEX, BNB will be also used to: 1. pay “fees“ to deploy smart contracts on BSC 2. stake on selected BSC validators, and get corresponding rewards 3. perform cross-chain operations, such as transfer token assets across BC and BSC ### Seed Fund Certain amounts of BNB will be burnt on BC and minted on BSC during its genesis stage. This amount is called “Seed Fund” to circulate on BSC after the first block, which will be dispatched to the initial BC-to-BSC Relayer(described in later sections) and initial validator set introduced at genesis. These BNBs are used to pay transaction fees in the early stage to transfer more BNB from BC onto BSC via the cross-chain mechanism. The BNB cross-chain transfer is discussed in a later section, but for BC to BSC transfer, it is generally to lock BNB on BC from the source address of the transfer to a system-controlled address and unlock the corresponding amount from special contract to the target address of the transfer on BSC, or reversely, when transferring from BSC to BC, it is to lock BNB from the source address on BSC into a special contract and release locked amount on BC from the system address to the target address. The logic is related to native code on BC and a series of smart contracts on BSC. ## Other Tokens BC supports BEP2 tokens and upcoming [BEP8 tokens](https://github.com/binance-chain/BEPs/pull/69), which are native assets transferrable and tradable (if listed) via fast transactions and sub-second finality. Meanwhile, as BSC is Ethereum compatible, it is natural to support ERC20 tokens on BSC, which here is called “**BEP2E**” (with the real name to be introduced by the future BEPs,it potentially covers BEP8 as well). BEP2E may be “Enhanced” by adding a few more methods to expose more information, such as token denomination, decimal precision definition and the owner address who can decide the Token Binding across the chains. BSC and BC work together to ensure that one token can circulate in both formats with confirmed total supply and be used in different use cases. ### Token Binding BEP2 tokens will be extended to host a new attribute to associate the token with a BSC BEP2E token contract, called “**Binder**”, and this process of association is called “**Token Binding**”. Token Binding can happen at any time after BEP2 and BEP2E are ready. The token owners of either BEP2 or BEP2E don’t need to bother about the Binding, until before they really want to use the tokens on different scenarios. Issuers can either create BEP2 first or BEP2E first, and they can be bound at a later time. Of course, it is encouraged for all the issuers of BEP2 and BEP2E to set the Binding up early after the issuance. A typical procedure to bind the BEP2 and BEP2E will be like the below: 1. Ensure both the BEP2 token and the BEP2E token both exist on each blockchain, with the same total supply. BEP2E should have 3 more methods than typical ERC20 token standard: * symbol(): get token symbol * decimals(): get the number of the token decimal digits * owner(): get **BEP2E contract owner’s address.** This value should be initialized in the BEP2E contract constructor so that the further binding action can verify whether the action is from the BEP2E owner. 2. Decide the initial circulation on both blockchains. Suppose the total supply is *S*, and the expected initial circulating supply on BC is *K*, then the owner should lock S-K tokens to a system controlled address on BC. 3. Equivalently, *K* tokens is locked in the special contract on BSC, which handles major binding functions and is named as **TokenHub**. The issuer of the BEP2E token should lock the *K* amount of that token into TokenHub, resulting in *S-K* tokens to circulate on BSC. Thus the total circulation across 2 blockchains remains as *S*. 4. The issuer of BEP2 token sends the bind transaction on BC. Once the transaction is executed successfully after proper verification: * It transfers *S-K* tokens to a system-controlled address on BC. * A cross-chain bind request package will be created, waiting for Relayers to relay. 5. BSC Relayers will relay the cross-chain bind request package into **TokenHub** on BSC, and the corresponding request and information will be stored into the contract. 6. The contract owner and only the owner can run a special method of TokenHub contract, `ApproveBind`, to verify the binding request to mark it as a success. It will confirm: * the token has not been bound; * the binding is for the proper symbol, with proper total supply and decimal information; * the proper lock are done on both networks; 10. Once the `ApproveBind` method has succeeded, TokenHub will mark the two tokens are bounded and share the same circulation on BSC, and the status will be propagated back to BC. After this final confirmation, the BEP2E contract address and decimals will be written onto the BEP2 token as a new attribute on BC, and the tokens can be transferred across the two blockchains bidirectionally. If the ApproveBind fails, the failure event will also be propagated back to BC to release the locked tokens, and the above steps can be re-tried later. # Cross-Chain Transfer and Communication Cross-chain communication is the key foundation to allow the community to take advantage of the dual chain structure: * users are free to create any tokenization, financial products, and digital assets on BSC or BC as they wish * the items on BSC can be manually and programmingly traded and circulated in a stable, high throughput, lighting fast and friendly environment of BC * users can operate these in one UI and tooling ecosystem. ## Cross-Chain Transfer The cross-chain transfer is the key communication between the two blockchains. Essentially the logic is: 1. the `transfer-out` blockchain will lock the amount from source owner addresses into a system controlled address/contracts; 2. the `transfer-in` blockchain will unlock the amount from the system controlled address/contracts and send it to target addresses. The cross-chain transfer package message should allow the BSC Relayers and BC **Oracle Relayers** to verify: 1. Enough amount of token assets are removed from the source address and locked into a system controlled addresses/contracts on the source blockchain. And this can be confirmed on the target blockchain. 2. Proper amounts of token assets are released from a system controlled addresses/contracts and allocated into target addresses on the target blockchain. If this fails, it can be confirmed on source blockchain, so that the locked token can be released back (may deduct fees). 3. The sum of the total circulation of the token assets across the 2 blockchains are not changed after this transfer action completes, no matter if the transfer succeeds or not.  The architecture of cross-chain communication is as in the above diagram. To accommodate the 2 heteroid systems, communication handling is different in each direction. ## BC to BSC Architecture BC is a Tendermint-based, instant finality blockchain. Validators with at least ⅔\*N+1 of the total voting power will co-sign each block on the chain. So that it is practical to verify the block transactions and even the state value via **Block Header** and **Merkle Proof** verification. This has been researched and implemented as “**Light-Client Protocol**”, which are intensively discussed in [the Ethereum](https://github.com/ethereum/wiki/wiki/Light-client-protocol) community, studied and implemented for [Cosmos inter-chain communication](https://github.com/cosmos/ics/blob/a4173c91560567bdb7cc9abee8e61256fc3725e9/spec/ics-007-tendermint-client/README.md). BC-to-BSC communication will be verified in an “**on-chain light client**” implemented via BSC **Smart Contracts** (some of them may be **“pre-compiled”**). After some transactions and state change happen on BC, if a transaction is defined to trigger cross-chain communication,the Cross-chain “**package**” message will be created and **BSC Relayers** will pass and submit them onto BSC as data into the "build-in system contracts". The build-in system contracts will verify the package and execute the transactions if it passes the verification. The verification will be guaranteed with the below design: 1. BC blocking status will be synced to the light client contracts on BSC from time to time, via block header and pre-commits, for the below information: * block and app hash of BC that are signed by validators * current validatorset, and validator set update 2. the key-value from the blockchain state will be verified based on the Merkle Proof and information from above #1. After confirming the key-value is accurate and trustful, the build-in system contracts will execute the actions corresponding to the cross-chain packages. Some examples of such packages that can be created for BC-to-BSC are: 1. Bind: bind the BEP2 tokens and BEP2E 2. Transfer: transfer tokens after binding, this means the circulation will decrease (be locked) from BC and appear in the target address balance on BSC 3. Error Handling: to handle any timeout/failure event for BSC-to-BC communication 4. Validatorset update of BSC To ensure no duplication, proper message sequence and timely timeout, there is a “Channel” concept introduced on BC to manage any types of the communication. For relayers, please also refer to the below “Relayers” section. ## BSC to BC Architecture BSC uses Proof of Staked Authority consensus protocol, which has a chance to fork and requires confirmation of more blocks. One block only has the signature of one validator, so that it is not easy to rely on one block to verify data from BSC. To take full advantage of validator quorum of BC, an idea similar to many [Bridge ](https://github.com/poanetwork/poa-bridge)or Oracle blockchains is adopted: 1. The cross-chain communication requests from BSC will be submitted and executed onto BSC as transactions. The execution of the transanction wil emit `Events`, and such events can be observed and packaged in certain “**Oracle**” onto BC. Instead of Block Headers, Hash and Merkle Proof, this type of “Oracle” package directly contains the cross-chain information for actions, such as sender, receiver and amount for transfer. 2. To ensure the security of the Oracle, the validators of BC will form anothe quorum of “**Oracle Relayers**”. Each validator of the BC should run a **dedicated process** as the Oracle Relayer. These Oracle Relayers will submit and vote for the cross-chain communication package, like Oracle, onto BC, using the same validator keys. Any package signed by more than ⅔\*N+1 Oracle Relayers’ voting power is as secure as any block signed by ⅔\*N+1 of the same quorum of validators’ voting power. By using the same validator quorum, it saves the light client code on BC and continuous block updates onto BC. Such Oracles also have Oracle IDs and types, to ensure sequencing and proper error handling. ## Timeout and Error Handling There are scenarios that the cross-chain communication fails. For example, the relayed package cannot be executed on BSC due to some coding bug in the contracts. **Timeout and error handling logics are** used in such scenarios. For the recognizable user and system errors or any expected exceptions, the two networks should heal themselves. For example, when BC to BSC transfer fails, BSC will issue a failure event and Oracle Relayers will execute a refund on BC; when BSC to BC transfer fails, BC will issue a refund package for Relayer to relay in order to unlock the fund. However, unexpected error or exception may still happen on any step of the cross-chain communication. In such a case, the Relayers and Oracle Relayers will discover that the corresponding cross-chain channel is stuck in a particular sequence. After a Timeout period, the Relayers and Oracle Relayers can request a “SkipSequence” transaction, the stuck sequence will be marked as “Unexecutable”. A corresponding alerts will be raised, and the community has to discuss how to handle this scenario, e.g. payback via the sponsor of the validators, or event clear the fund during next network upgrade. ## Cross-Chain User Experience Ideally, users expect to use two parallel chains in the same way as they use one single chain. It requires more aggregated transaction types to be added onto the cross-chain communication to enable this, which will add great complexity, tight coupling, and maintenance burden. Here BC and BSC only implement the basic operations to enable the value flow in the initial launch and leave most of the user experience work to client side UI, such as wallets. E.g. a great wallet may allow users to sell a token directly from BSC onto BC’s DEX order book, in a secure way. ## Cross-Chain Contract Event Cross-Chain Contract Event (CCCE) is designed to allow a smart contract to trigger cross-chain transactions, directly through the contract code. This becomes possible based on: 1. Standard system contracts can be provided to serve operations callable by general smart contracts; 2. Standard events can be emitted by the standard contracts; 3. Oracle Relayers can capture the standard events, and trigger the corresponding cross-chain operations; 4. Dedicated, code-managed address (account) can be created on BC and accessed by the contracts on the BSC, here it is named as **“Contract Address on BC” (CAoB)**. Several standard operations are implemented: 1. BSC to BC transfer: this is implemented in the same way as normal BSC to BC transfer, by only triggered via standard contract. The fund can be transferred to any addresses on BC, including the corresponding CAoB of the transfer originating contract. 2. Transfer on BC: this is implemented as a special cross-chain transfer, while the real transfer is from **CAoB** to any other address (even another CAoB). 3. BC to BSC transfer: this is implemented as two-pass cross-chain communication. The first is triggered by the BSC contract and propagated onto BC, and then in the second pass, BC will start a normal BC to BSC cross-chain transfer, from **CAoB** to contract address on BSC. A special note should be paid on that the BSC contract only increases balance upon any transfer coming in on the second pass, and the error handling in the second pass is the same as the normal BC to BSC transfer. 4. IOC (Immediate-Or-Cancel) Trade Out: the primary goal of transferring assets to BC is to trade. This event will instruct to trade a certain amount of an asset in CAoB into another asset as much as possible and transfer out all the results, i.e. the left the source and the traded target tokens of the trade, back to BSC. BC will handle such relayed events by sending an “Immediate-Or-Cancel”, i.e. IOC order onto the trading pairs, once the next matching finishes, the result will be relayed back to BSC, which can be in either one or two assets. 5. Auction Trade Out: Such event will instruct BC to send an auction order to trade a certain amount of an asset in **CAoB** into another asset as much as possible and transfer out all the results back to BSC at the end of the auction. Auction function is upcoming on BC. There are some details for the Trade Out: 1. both can have a limit price (absolute or relative) for the trade; 2. the end result will be written as cross-chain packages to relay back to BSC; 3. cross-chain communication fees may be charged from the asset transferred back to BSC; 4. BSC contract maintains a mirror of the balance and outstanding orders on CAoB. No matter what error happens during the Trade Out, the final status will be propagated back to the originating contract and clear its internal state. With the above features, it simply adds the cross-chain transfer and exchange functions with high liquidity onto all the smart contracts on BSC. It will greatly add the application scenarios on Smart Contract and dApps, and make 1 chain +1 chain > 2 chains. # Staking and Governance Proof of Staked Authority brings in decentralization and community involvement. Its core logic can be summarized as the below. You may see similar ideas from other networks, especially Cosmos and EOS. 1. Token holders, including the validators, can put their tokens “**bonded**” into the stake. Token holders can **delegate** their tokens onto any validator or validator candidate, to expect it can become an actual validator, and later they can choose a different validator or candidate to **re-delegate** their tokens<sup>1</sup>. 2. All validator candidates will be ranked by the number of bonded tokens on them, and the top ones will become the real validators. 3. Validators can share (part of) their blocking reward with their delegators. 4. Validators can suffer from “**Slashing**”, a punishment for their bad behaviors, such as double sign and/or instability. 5. There is an “**unbonding period**” for validators and delegators so that the system makes sure the tokens remain bonded when bad behaviors are caught, the responsible will get slashed during this period. ## Staking on BC Ideally, such staking and reward logic should be built into the blockchain, and automatically executed as the blocking happens. Cosmos Hub, who shares the same Tendermint consensus and libraries with Binance Chain, works in this way. BC has been preparing to enable staking logic since the design days. On the other side, as BSC wants to remain compatible with Ethereum as much as possible, it is a great challenge and efforts to implement such logic on it. This is especially true when Ethereum itself may move into a different Proof of Stake consensus protocol in a short (or longer) time. In order to keep the compatibility and reuse the good foundation of BC, the staking logic of BSC is implemented on BC: 1. The staking token is BNB, as it is a native token on both blockchains anyway 2. The staking, i.e. token bond and delegation actions and records for BSC, happens on BC. 3. The BSC validator set is determined by its staking and delegation logic, via a staking module built on BC for BSC, and propagated every day UTC 00:00 from BC to BSC via Cross-Chain communication. 4. The reward distribution happens on BC around every day UTC 00:00. ## Rewarding Both the validator update and reward distribution happen every day around UTC 00:00. This is to save the cost of frequent staking updates and block reward distribution. This cost can be significant, as the blocking reward is collected on BSC and distributed on BC to BSC validators and delegators. (Please note BC blocking fees will remain rewarding to BC validators only.) A deliberate delay is introduced here to make sure the distribution is fair: 1. The blocking reward will not be sent to validator right away, instead, they will be distributed and accumulated on a contract; 2. Upon receiving the validator set update into BSC, it will trigger a few cross-chain transfers to transfer the reward to custody addresses on the corresponding validators. The custody addresses are owned by the system so that the reward cannot be spent until the promised distribution to delegators happens. 3. In order to make the synchronization simpler and allocate time to accommodate slashing, the reward for N day will be only distributed in N+2 days. After the delegators get the reward, the left will be transferred to validators’ own reward addresses. ## Slashing Slashing is part of the on-chain governance, to ensure the malicious or negative behaviors are punished. BSC slash can be submitted by anyone. The transaction submission requires **slash evidence** and cost fees but also brings a larger reward when it is successful. So far there are two slashable cases. ### Double Sign It is quite a serious error and very likely deliberate offense when a validator signs more than one block with the same height and parent block. The reference protocol implementation should already have logic to prevent this, so only the malicious code can trigger this. When Double Sign happens, the validator should be removed from the Validator **Set** right away. Anyone can submit a slash request on BC with the evidence of Double Sign of BSC, which should contain the 2 block headers with the same height and parent block, sealed by the offending validator. Upon receiving the evidence, if the BC verifies it to be valid: 1. The validator will be removed from validator set by an instance BSC validator set update Cross-Chain update; 2. A predefined amount of BNB would be slashed from the **self-delegated** BNB of the validator; Both validator and its delegators will not receive the staking rewards. 3. Part of the slashed BNB will allocate to the submitter’s address, which is a reward and larger than the cost of submitting slash request transaction 4. The rest of the slashed BNB will allocate to the other validators’ custody addresses, and distributed to all delegators in the same way as blocking reward. ### Inavailability The liveness of BSC relies on everyone in the Proof of Staked Authority validator set can produce blocks timely when it is their turn. Validators can miss their turn due to any reason, especially problems in their hardware, software, configuration or network. This instability of the operation will hurt the performance and introduce more indeterministic into the system. There can be an internal smart contract responsible for recording the missed blocking metrics of each validator. Once the metrics are above the predefined threshold, the blocking reward for validator will not be relayed to BC for distribution but shared with other better validators. In such a way, the poorly-operating validator should be gradually voted out of the validator set as their delegators will receive less or none reward. If the metrics remain above another higher level of threshold, the validator will be dropped from the rotation, and this will be propagated back to BC, then a predefined amount of BNB would be slashed from the **self-delegated** BNB of the validator. Both validators and delegators will not receive their staking rewards. ### Governance Parameters There are many system parameters to control the behavior of the BSC, e.g. slash amount, cross-chain transfer fees. All these parameters will be determined by BSC Validator Set together through a proposal-vote process based on their staking. Such the process will be carried on BC, and the new parameter values will be picked up by corresponding system contracts via a cross-chain communication. # Relayers Relayers are responsible to submit Cross-Chain Communication Packages between the two blockchains. Due to the heterogeneous parallel chain structure, two different types of Relayers are created. ## BSC Relayers Relayers for BC to BSC communication referred to as “**BSC Relayers**”, or just simply “Relayers”. Relayer is a standalone process that can be run by anyone, and anywhere, except that Relayers must register themselves onto BSC and deposit a certain refundable amount of BNB. Only relaying requests from the registered Relayers will be accepted by BSC. The package they relay will be verified by the on-chain light client on BSC. The successful relay needs to pass enough verification and costs gas fees on BSC, and thus there should be incentive reward to encourage the community to run Relayers. ### Incentives There are two major communication types: 1. Users triggered Operations, such as `token bind` or `cross chain transfer`. Users must pay additional fee to as relayer reward. The reward will be shared with the relayers who sync the referenced blockchain headers. Besides, the reward won't be paid the relayers' accounts directly. A reward distribution mechanism will be brought in to avoid monopolization. 2. System Synchronization, such as delivering `refund package`(caused by failures of most oracle relayers), special blockchain header synchronization(header contains BC validatorset update), BSC staking package. System reward contract will pay reward to relayers' accounts directly. If some Relayers have faster networks and better hardware, they can monopolize all the package relaying and leave no reward to others. Thus fewer participants will join for relaying, which encourages centralization and harms the efficiency and security of the network. Ideally, due to the decentralization and dynamic re-election of BSC validators, one Relayer can hardly be always the first to relay every message. But in order to avoid the monopolization further, the rewarding economy is also specially designed to minimize such chance: 1. The reward for Relayers will be only distributed in batches, and one batch will cover a number of successful relayed packages. 2. The reward a Relayer can get from a batch distribution is not linearly in proportion to their number of successful relayed packages. Instead, except the first a few relays, the more a Relayer relays during a batch period, the less reward it will collect. ## Oracle Relayers Relayers for BSC to BC communication are using the “Oracle” model, and so-called “**Oracle Relayers**”. Each of the validators must, and only the ones of the validator set, run Oracle Relayers. Each Oracle Relayer watches the blockchain state change. Once it catches Cross-Chain Communication Packages, it will submit to vote for the requests. After Oracle Relayers from ⅔ of the voting power of BC validators vote for the changes, the cross-chain actions will be performed. Oracle Replayers should wait for enough blocks to confirm the finality on BSC before submitting and voting for the cross-chain communication packages onto BC. The cross-chain fees will be distributed to BC validators together with the normal BC blocking rewards. Such oracle type relaying depends on all the validators to support. As all the votes for the cross-chain communication packages are recorded on the blockchain, it is not hard to have a metric system to assess the performance of the Oracle Relayers. The poorest performer may have their rewards clawed back via another Slashing logic introduced in the future. # Outlook It is hard to conclude for Binance Chain, as it has never stopped evolving. The dual-chain strategy is to open the gate for users to take advantage of the fast transferring and trading on one side, and flexible and extendable programming on the other side, but it will be one stop along the development of Binance Chain. Here below are the topics to look into so as to facilitate the community better for more usability and extensibility: 1. Add different digital asset model for different business use cases 2. Enable more data feed, especially DEX market data, to be communicated from Binance DEX to BSC 3. Provide interface and compatibility to integrate with Ethereum, including its further upgrade, and other blockchain 4. Improve client side experience to manage wallets and use blockchain more conveniently ------ [1]: BNB business practitioners may provide other benefits for BNB delegators, as they do now for long term BNB holders.
aische / Typelevel ExamplesHaskell Type Level Example Programs
maybevoid / LambekType-Level Programming in Rust
geoffreytools / Type LensesExtract or modify pieces of arbitrarily nested types with type lenses
suica / Typescript Type Level ProgrammingAn experimental transpiler that makes simple typescript computations happen in type-level.
shishirdas / Rain Fall Data Analysis Using Data ScienceContext Rainfall is very crucial things for any types of agricultural task. Climate related data is important to analyse agricultural and crop seeding related field, where those data can be used to show the predict the rainfall in different season also for different types of crops. Developed application can be found from http://ml.bigalogy.com/ Paper: http://dspace.uiu.ac.bd/handle/52243/178 Abstract Mankind have been attempting to predict the weather from prehistory. For good reason for knowing when to plant crops, when to build and when to prepare for drought and flood. In a nation such as Bangladesh being able to predict the weather, especially rainfall has never been so vitally important. The proposed research work pursues to produce prediction model on rainfall using the machine learning algorithms. The base data for this work has been collected from Bangladesh Meteorological Department. It is mainly focused on the development of models for long term rainfall prediction of Bangladesh divisions and districts (Weather Stations). Rainfall prediction is very important for the Bangladesh economy and day to day life. Scarcity or heavy - both rainfall effects rural and urban life to a great extent with the changing pattern of the climate. Unusual rainfall and long lasting rainy season is a great factor to take account into. We want to see whether too much unusual behavior is taking place another pattern resulting new clamatorial description. As agriculture is dependent on rain and heavy rainfall caused flood frequently leading to great loss to crops, rainfall is a very complex phenomenon which is dependent on various atmospheric, oceanic and geographical parameters. The relationship between these parameters and rainfall is unstable. Beside this changing behavior of clamatorial facts making the existing meteorological forecasting less usable to the users. Initially linear regression models were developed for monthly rainfall prediction of station and national level as per day month year. Here humidity, temperatures & wind parameters are used as predictors. The study is further extended by developing another popular regression analysis algorithm named Random Forest Regression. After then, few other classification algorithms have been used for model building, training and prediction. Those are Naive Bayes Classification, Decision Tree Classification (Entropy and Gini) and Random Forest Classification. In all model building and training predictor parameters were Station, Year, Month and Day. As the effect of rainfall affecting parameters is embedded in rainfall, rainfall was the label or dependent variable in these models. The developed and trained model is capable of predicting rainfall in advance for a month of a given year for a given area (for area we used here are the stations (weather parameters values are measured by Bangladesh Meteorological Department). The accuracy of rainfall estimation is above 65%. Accuracy percentage varies from algorithm to algorithm. Two regression analysis and three classification analysis models has been developed for rainfall prediction of 33 Bangladeshi weather station. Apache Spark library has been used for machine library in Scala programming language. The main idea behind the use of classification and regression analysis is to see the comparative difference between types of algorithms prediction output and the predictability along with usability. This thesis is a contribution to the effort of rainfall prediction within Bangladesh. It takes the strategy of applying machine learning models to historical weather data gathered in Bangladesh. As part of this work, a web-based software application was written using Apache Spark, Scala and HighCharts to demonstrate rainfall prediction using multiple machine learning models. Models are successively improved with the rainfall prediction accuracy. Content The given data has weather station and year wise monthly rainfall data of Bangladesh. Data is two format - 46 year (33 Weather Station) : From 1970 to 2016 Daily Rainfall Data Monthly Rainfall Data Columns: Station (Weather Station, along with Station Index) Year Month Day [For daily data file]
danieljharvey / Purescript RefinedPurescript refinement types with runtime checking
kvthweatt / FluxLangA general purpose, statically typed, broadly mid-level, object-oriented systems programming language for precise control over data.
MarcelGarus / MartinaiseA small, statically typed, low-level programming language.
N30nHaCkZ / LinuxLinux kernel release 3.x <http://kernel.org/> These are the release notes for Linux version 3. Read them carefully, as they tell you what this is all about, explain how to install the kernel, and what to do if something goes wrong. WHAT IS LINUX? Linux is a clone of the operating system Unix, written from scratch by Linus Torvalds with assistance from a loosely-knit team of hackers across the Net. It aims towards POSIX and Single UNIX Specification compliance. It has all the features you would expect in a modern fully-fledged Unix, including true multitasking, virtual memory, shared libraries, demand loading, shared copy-on-write executables, proper memory management, and multistack networking including IPv4 and IPv6. It is distributed under the GNU General Public License - see the accompanying COPYING file for more details. ON WHAT HARDWARE DOES IT RUN? Although originally developed first for 32-bit x86-based PCs (386 or higher), today Linux also runs on (at least) the Compaq Alpha AXP, Sun SPARC and UltraSPARC, Motorola 68000, PowerPC, PowerPC64, ARM, Hitachi SuperH, Cell, IBM S/390, MIPS, HP PA-RISC, Intel IA-64, DEC VAX, AMD x86-64, AXIS CRIS, Xtensa, Tilera TILE, AVR32 and Renesas M32R architectures. Linux is easily portable to most general-purpose 32- or 64-bit architectures as long as they have a paged memory management unit (PMMU) and a port of the GNU C compiler (gcc) (part of The GNU Compiler Collection, GCC). Linux has also been ported to a number of architectures without a PMMU, although functionality is then obviously somewhat limited. Linux has also been ported to itself. You can now run the kernel as a userspace application - this is called UserMode Linux (UML). DOCUMENTATION: - There is a lot of documentation available both in electronic form on the Internet and in books, both Linux-specific and pertaining to general UNIX questions. I'd recommend looking into the documentation subdirectories on any Linux FTP site for the LDP (Linux Documentation Project) books. This README is not meant to be documentation on the system: there are much better sources available. - There are various README files in the Documentation/ subdirectory: these typically contain kernel-specific installation notes for some drivers for example. See Documentation/00-INDEX for a list of what is contained in each file. Please read the Changes file, as it contains information about the problems, which may result by upgrading your kernel. - The Documentation/DocBook/ subdirectory contains several guides for kernel developers and users. These guides can be rendered in a number of formats: PostScript (.ps), PDF, HTML, & man-pages, among others. After installation, "make psdocs", "make pdfdocs", "make htmldocs", or "make mandocs" will render the documentation in the requested format. INSTALLING the kernel source: - If you install the full sources, put the kernel tarball in a directory where you have permissions (eg. your home directory) and unpack it: gzip -cd linux-3.X.tar.gz | tar xvf - or bzip2 -dc linux-3.X.tar.bz2 | tar xvf - Replace "X" with the version number of the latest kernel. Do NOT use the /usr/src/linux area! This area has a (usually incomplete) set of kernel headers that are used by the library header files. They should match the library, and not get messed up by whatever the kernel-du-jour happens to be. - You can also upgrade between 3.x releases by patching. Patches are distributed in the traditional gzip and the newer bzip2 format. To install by patching, get all the newer patch files, enter the top level directory of the kernel source (linux-3.X) and execute: gzip -cd ../patch-3.x.gz | patch -p1 or bzip2 -dc ../patch-3.x.bz2 | patch -p1 Replace "x" for all versions bigger than the version "X" of your current source tree, _in_order_, and you should be ok. You may want to remove the backup files (some-file-name~ or some-file-name.orig), and make sure that there are no failed patches (some-file-name# or some-file-name.rej). If there are, either you or I have made a mistake. Unlike patches for the 3.x kernels, patches for the 3.x.y kernels (also known as the -stable kernels) are not incremental but instead apply directly to the base 3.x kernel. For example, if your base kernel is 3.0 and you want to apply the 3.0.3 patch, you must not first apply the 3.0.1 and 3.0.2 patches. Similarly, if you are running kernel version 3.0.2 and want to jump to 3.0.3, you must first reverse the 3.0.2 patch (that is, patch -R) _before_ applying the 3.0.3 patch. You can read more on this in Documentation/applying-patches.txt Alternatively, the script patch-kernel can be used to automate this process. It determines the current kernel version and applies any patches found. linux/scripts/patch-kernel linux The first argument in the command above is the location of the kernel source. Patches are applied from the current directory, but an alternative directory can be specified as the second argument. - Make sure you have no stale .o files and dependencies lying around: cd linux make mrproper You should now have the sources correctly installed. SOFTWARE REQUIREMENTS Compiling and running the 3.x kernels requires up-to-date versions of various software packages. Consult Documentation/Changes for the minimum version numbers required and how to get updates for these packages. Beware that using excessively old versions of these packages can cause indirect errors that are very difficult to track down, so don't assume that you can just update packages when obvious problems arise during build or operation. BUILD directory for the kernel: When compiling the kernel, all output files will per default be stored together with the kernel source code. Using the option "make O=output/dir" allow you to specify an alternate place for the output files (including .config). Example: kernel source code: /usr/src/linux-3.X build directory: /home/name/build/kernel To configure and build the kernel, use: cd /usr/src/linux-3.X make O=/home/name/build/kernel menuconfig make O=/home/name/build/kernel sudo make O=/home/name/build/kernel modules_install install Please note: If the 'O=output/dir' option is used, then it must be used for all invocations of make. CONFIGURING the kernel: Do not skip this step even if you are only upgrading one minor version. New configuration options are added in each release, and odd problems will turn up if the configuration files are not set up as expected. If you want to carry your existing configuration to a new version with minimal work, use "make oldconfig", which will only ask you for the answers to new questions. - Alternative configuration commands are: "make config" Plain text interface. "make menuconfig" Text based color menus, radiolists & dialogs. "make nconfig" Enhanced text based color menus. "make xconfig" X windows (Qt) based configuration tool. "make gconfig" X windows (Gtk) based configuration tool. "make oldconfig" Default all questions based on the contents of your existing ./.config file and asking about new config symbols. "make silentoldconfig" Like above, but avoids cluttering the screen with questions already answered. Additionally updates the dependencies. "make olddefconfig" Like above, but sets new symbols to their default values without prompting. "make defconfig" Create a ./.config file by using the default symbol values from either arch/$ARCH/defconfig or arch/$ARCH/configs/${PLATFORM}_defconfig, depending on the architecture. "make ${PLATFORM}_defconfig" Create a ./.config file by using the default symbol values from arch/$ARCH/configs/${PLATFORM}_defconfig. Use "make help" to get a list of all available platforms of your architecture. "make allyesconfig" Create a ./.config file by setting symbol values to 'y' as much as possible. "make allmodconfig" Create a ./.config file by setting symbol values to 'm' as much as possible. "make allnoconfig" Create a ./.config file by setting symbol values to 'n' as much as possible. "make randconfig" Create a ./.config file by setting symbol values to random values. "make localmodconfig" Create a config based on current config and loaded modules (lsmod). Disables any module option that is not needed for the loaded modules. To create a localmodconfig for another machine, store the lsmod of that machine into a file and pass it in as a LSMOD parameter. target$ lsmod > /tmp/mylsmod target$ scp /tmp/mylsmod host:/tmp host$ make LSMOD=/tmp/mylsmod localmodconfig The above also works when cross compiling. "make localyesconfig" Similar to localmodconfig, except it will convert all module options to built in (=y) options. You can find more information on using the Linux kernel config tools in Documentation/kbuild/kconfig.txt. - NOTES on "make config": - Having unnecessary drivers will make the kernel bigger, and can under some circumstances lead to problems: probing for a nonexistent controller card may confuse your other controllers - Compiling the kernel with "Processor type" set higher than 386 will result in a kernel that does NOT work on a 386. The kernel will detect this on bootup, and give up. - A kernel with math-emulation compiled in will still use the coprocessor if one is present: the math emulation will just never get used in that case. The kernel will be slightly larger, but will work on different machines regardless of whether they have a math coprocessor or not. - The "kernel hacking" configuration details usually result in a bigger or slower kernel (or both), and can even make the kernel less stable by configuring some routines to actively try to break bad code to find kernel problems (kmalloc()). Thus you should probably answer 'n' to the questions for "development", "experimental", or "debugging" features. COMPILING the kernel: - Make sure you have at least gcc 3.2 available. For more information, refer to Documentation/Changes. Please note that you can still run a.out user programs with this kernel. - Do a "make" to create a compressed kernel image. It is also possible to do "make install" if you have lilo installed to suit the kernel makefiles, but you may want to check your particular lilo setup first. To do the actual install, you have to be root, but none of the normal build should require that. Don't take the name of root in vain. - If you configured any of the parts of the kernel as `modules', you will also have to do "make modules_install". - Verbose kernel compile/build output: Normally, the kernel build system runs in a fairly quiet mode (but not totally silent). However, sometimes you or other kernel developers need to see compile, link, or other commands exactly as they are executed. For this, use "verbose" build mode. This is done by inserting "V=1" in the "make" command. E.g.: make V=1 all To have the build system also tell the reason for the rebuild of each target, use "V=2". The default is "V=0". - Keep a backup kernel handy in case something goes wrong. This is especially true for the development releases, since each new release contains new code which has not been debugged. Make sure you keep a backup of the modules corresponding to that kernel, as well. If you are installing a new kernel with the same version number as your working kernel, make a backup of your modules directory before you do a "make modules_install". Alternatively, before compiling, use the kernel config option "LOCALVERSION" to append a unique suffix to the regular kernel version. LOCALVERSION can be set in the "General Setup" menu. - In order to boot your new kernel, you'll need to copy the kernel image (e.g. .../linux/arch/i386/boot/bzImage after compilation) to the place where your regular bootable kernel is found. - Booting a kernel directly from a floppy without the assistance of a bootloader such as LILO, is no longer supported. If you boot Linux from the hard drive, chances are you use LILO, which uses the kernel image as specified in the file /etc/lilo.conf. The kernel image file is usually /vmlinuz, /boot/vmlinuz, /bzImage or /boot/bzImage. To use the new kernel, save a copy of the old image and copy the new image over the old one. Then, you MUST RERUN LILO to update the loading map!! If you don't, you won't be able to boot the new kernel image. Reinstalling LILO is usually a matter of running /sbin/lilo. You may wish to edit /etc/lilo.conf to specify an entry for your old kernel image (say, /vmlinux.old) in case the new one does not work. See the LILO docs for more information. After reinstalling LILO, you should be all set. Shutdown the system, reboot, and enjoy! If you ever need to change the default root device, video mode, ramdisk size, etc. in the kernel image, use the 'rdev' program (or alternatively the LILO boot options when appropriate). No need to recompile the kernel to change these parameters. - Reboot with the new kernel and enjoy. IF SOMETHING GOES WRONG: - If you have problems that seem to be due to kernel bugs, please check the file MAINTAINERS to see if there is a particular person associated with the part of the kernel that you are having trouble with. If there isn't anyone listed there, then the second best thing is to mail them to me (torvalds@linux-foundation.org), and possibly to any other relevant mailing-list or to the newsgroup. - In all bug-reports, *please* tell what kernel you are talking about, how to duplicate the problem, and what your setup is (use your common sense). If the problem is new, tell me so, and if the problem is old, please try to tell me when you first noticed it. - If the bug results in a message like unable to handle kernel paging request at address C0000010 Oops: 0002 EIP: 0010:XXXXXXXX eax: xxxxxxxx ebx: xxxxxxxx ecx: xxxxxxxx edx: xxxxxxxx esi: xxxxxxxx edi: xxxxxxxx ebp: xxxxxxxx ds: xxxx es: xxxx fs: xxxx gs: xxxx Pid: xx, process nr: xx xx xx xx xx xx xx xx xx xx xx or similar kernel debugging information on your screen or in your system log, please duplicate it *exactly*. The dump may look incomprehensible to you, but it does contain information that may help debugging the problem. The text above the dump is also important: it tells something about why the kernel dumped code (in the above example, it's due to a bad kernel pointer). More information on making sense of the dump is in Documentation/oops-tracing.txt - If you compiled the kernel with CONFIG_KALLSYMS you can send the dump as is, otherwise you will have to use the "ksymoops" program to make sense of the dump (but compiling with CONFIG_KALLSYMS is usually preferred). This utility can be downloaded from ftp://ftp.<country>.kernel.org/pub/linux/utils/kernel/ksymoops/ . Alternatively, you can do the dump lookup by hand: - In debugging dumps like the above, it helps enormously if you can look up what the EIP value means. The hex value as such doesn't help me or anybody else very much: it will depend on your particular kernel setup. What you should do is take the hex value from the EIP line (ignore the "0010:"), and look it up in the kernel namelist to see which kernel function contains the offending address. To find out the kernel function name, you'll need to find the system binary associated with the kernel that exhibited the symptom. This is the file 'linux/vmlinux'. To extract the namelist and match it against the EIP from the kernel crash, do: nm vmlinux | sort | less This will give you a list of kernel addresses sorted in ascending order, from which it is simple to find the function that contains the offending address. Note that the address given by the kernel debugging messages will not necessarily match exactly with the function addresses (in fact, that is very unlikely), so you can't just 'grep' the list: the list will, however, give you the starting point of each kernel function, so by looking for the function that has a starting address lower than the one you are searching for but is followed by a function with a higher address you will find the one you want. In fact, it may be a good idea to include a bit of "context" in your problem report, giving a few lines around the interesting one. If you for some reason cannot do the above (you have a pre-compiled kernel image or similar), telling me as much about your setup as possible will help. Please read the REPORTING-BUGS document for details. - Alternatively, you can use gdb on a running kernel. (read-only; i.e. you cannot change values or set break points.) To do this, first compile the kernel with -g; edit arch/i386/Makefile appropriately, then do a "make clean". You'll also need to enable CONFIG_PROC_FS (via "make config"). After you've rebooted with the new kernel, do "gdb vmlinux /proc/kcore". You can now use all the usual gdb commands. The command to look up the point where your system crashed is "l *0xXXXXXXXX". (Replace the XXXes with the EIP value.) gdb'ing a non-running kernel currently fails because gdb (wrongly) disregards the starting offset for which the kernel is compiled.
petsel / Javascript Code Reuse Patternslow level abstraction, module based, code reuse patterns (function based Traits, Mixins) intended for reflecting the basics before starting with more complex meta programming approaches. »JavaScript Code Reuse Patterns - Function Based Object and Type Composition«
devanshj / PrakaarA type programming language which compiles to and interops with type-level TypeScript
TheMaster1127 / HTHHTH, which stands for HeavenToHell, is a dynamically typed, transpiled high-level programming language designed for simplicity, ease of use, and versatility. Inspired by the syntax of AutoHotkey, HTH offers a user-friendly environment for beginners to learn programming and build web apps.
sanusanth / C Basic Simple ProgramWhat is C++? C++ is a general-purpose, object-oriented programming language. It was created by Bjarne Stroustrup at Bell Labs circa 1980. C++ is very similar to C (invented by Dennis Ritchie in the early 1970s). C++ is so compatible with C that it will probably compile over 99% of C programs without changing a line of source code. Though C++ is a lot of well-structured and safer language than C as it OOPs based. Some computer languages are written for a specific purpose. Like, Java was initially devised to control toasters and some other electronics. C was developed for programming OS. Pascal was conceptualized to teach proper programming techniques. But C++ is a general-purpose language. It well deserves the widely acknowledged nickname "Swiss Pocket Knife of Languages." C++ is a cross-platform language that can be used to create high-performance applications. C++ was developed by Bjarne Stroustrup, as an extension to the C language. C++ gives programmers a high level of control over system resources and memory. The language was updated 3 major times in 2011, 2014, and 2017 to C++11, C++14, and C++17. About C++ Programming Multi-paradigm Language - C++ supports at least seven different styles of programming. Developers can choose any of the styles. General Purpose Language - You can use C++ to develop games, desktop apps, operating systems, and so on. Speed - Like C programming, the performance of optimized C++ code is exceptional. Object-oriented - C++ allows you to divide complex problems into smaller sets by using objects. Why Learn C++? C++ is used to develop games, desktop apps, operating systems, browsers, and so on because of its performance. After learning C++, it will be much easier to learn other programming languages like Java, Python, etc. C++ helps you to understand the internal architecture of a computer, how computer stores and retrieves information. How to learn C++? C++ tutorial from Programiz - We provide step by step C++ tutorials, examples, and references. Get started with C++. Official C++ documentation - Might be hard to follow and understand for beginners. Visit official C++ documentation. Write a lot of C++ programming code- The only way you can learn programming is by writing a lot of code. Read C++ code- Join Github's open-source projects and read other people's code. C++ best programming language? The answer depends on perspective and requirements. Some tasks can be done in C++, though not very quickly. For example, designing GUI screens for applications. Other languages like Visual Basic, Python have GUI design elements built into them. Therefore, they are better suited for GUI type of task. Some of the scripting languages that provide extra programmability to applications. Such as MS Word and even photoshop tend to be variants of Basic, not C++. C++ is still used widely, and the most famous software have their backbone in C++. This tutorial will help you learn C++ basic and the advanced concepts. Who uses C++? Some of today's most visible used systems have their critical parts written in C++. Examples are Amadeus (airline ticketing) Bloomberg (financial formation), Amazon (Web commerce), Google (Web search) Facebook (social media) Many programming languages depend on C++'s performance and reliability in their implementation. Examples include: Java Virtual Machines JavaScript interpreters (e.g., Google's V8) Browsers (e.g., Internet Explorer, Mozilla's Firefox, Apple's Safari, and Google's Chrome) Application and Web frameworks (e.g., Microsoft's .NET Web services framework). Applications that involve local and wide area networks, user interaction, numeric, graphics, and database access highly depend on C++ language. Why Use C++ C++ is one of the world's most popular programming languages. C++ can be found in today's operating systems, Graphical User Interfaces, and embedded systems. C++ is an object-oriented programming language which gives a clear structure to programs and allows code to be reused, lowering development costs. C++ is portable and can be used to develop applications that can be adapted to multiple platforms. C++ is fun and easy to learn! As C++ is close to C# and Java, it makes it easy for programmers to switch to C++ or vice versa Definition - What does C++ Programming Language mean? C++ is an object oriented computer language created by notable computer scientist Bjorne Stroustrop as part of the evolution of the C family of languages. Some call C++ “C with classes” because it introduces object oriented programming principles, including the use of defined classes, to the C programming language framework. C++ is pronounced "see-plus-plus." C++ Variables Variables are the backbone of any programming language. A variable is merely a way to store some information for later use. We can retrieve this value or data by referring to a "word" that will describe this information. Once declared and defined they may be used many times within the scope in which they were declared. C++ Control Structures When a program runs, the code is read by the compiler line by line (from top to bottom, and for the most part left to right). This is known as "code flow." When the code is being read from top to bottom, it may encounter a point where it needs to make a decision. Based on the decision, the program may jump to a different part of the code. It may even make the compiler re-run a specific piece again, or just skip a bunch of code. You could think of this process like if you were to choose from different courses from Guru99. You decide, click a link and skip a few pages. In the same way, a computer program has a set of strict rules to decide the flow of program execution. C++ Syntax The syntax is a layout of words, expression, and symbols. Well, it's because an email address has its well-defined syntax. You need some combination of letters, numbers, potentially with underscores (_) or periods (.) in between, followed by an at the rate (@) symbol, followed by some website domain (company.com). So, syntax in a programming language is much the same. They are some well-defined set of rules that allow you to create some piece of well-functioning software. But, if you don't abide by the rules of a programming language or syntax, you'll get errors. C++ Tools In the real world, a tool is something (usually a physical object) that helps you to get a certain job done promptly. Well, this holds true with the programming world too. A tool in programming is some piece of software which when used with the code allows you to program faster. There are probably tens of thousands, if not millions of different tools across all the programming languages. Most crucial tool, considered by many, is an IDE, an Integrated Development Environment. An IDE is a software which will make your coding life so much easier. IDEs ensure that your files and folders are organized and give you a nice and clean way to view them. Types of C++ Errors Another way to look at C++ in a practical sense is to start enumerating different kinds of errors that occur as the written code makes its way to final execution. First, there are syntax errors where the code is actually written in an illegible way. This can be a misuse of punctuation, or the misspelling of a function command or anything else that compromises the integrity of the syntax as it is written. Another fundamental type of error is a compiler error that simply tells the programmer the compiler was not able to do its work effectively. As a compiler language, C++ relies on the compiler to make the source code into machine readable code and optimize it in various ways. A third type of error happens after the program has been successfully compiled. Runtime errors are not uncommon in C++ executables. What they represent is some lack of designated resource or non-working command in the executable program. In other words, the syntax is right, and the program was compiled successfully, but as the program is doing its work, it encounters a problem, whether that has to do with interdependencies, operating system requirements or anything else in the general environment in which the program is trying to work. Over time, C++ has remained a very useful language not only in computer programming itself, but in teaching new programmers about how object oriented programming works.
denman2328 / Help------------------ System Information ------------------ Time of this report: 8/10/2013, 08:36:20 Machine name: BRYCE-PC Operating System: Windows 8 Pro 64-bit (6.2, Build 9200) (9200.win8_rtm.120725-1247) Language: English (Regional Setting: English) System Manufacturer: To Be Filled By O.E.M. System Model: To Be Filled By O.E.M. BIOS: BIOS Date: 04/13/12 20:22:30 Ver: 04.06.05 Processor: Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz (4 CPUs), ~3.4GHz Memory: 8192MB RAM Available OS Memory: 8086MB RAM Page File: 4736MB used, 11541MB available Windows Dir: C:\WINDOWS DirectX Version: DirectX 11 DX Setup Parameters: Not found User DPI Setting: Using System DPI System DPI Setting: 96 DPI (100 percent) DWM DPI Scaling: Disabled DxDiag Version: 6.02.9200.16384 64bit Unicode ------------ DxDiag Notes ------------ Display Tab 1: No problems found. Display Tab 2: No problems found. Sound Tab 1: No problems found. Sound Tab 2: No problems found. Sound Tab 3: No problems found. Input Tab: No problems found. -------------------- DirectX Debug Levels -------------------- Direct3D: 0/4 (retail) DirectDraw: 0/4 (retail) DirectInput: 0/5 (retail) DirectMusic: 0/5 (retail) DirectPlay: 0/9 (retail) DirectSound: 0/5 (retail) DirectShow: 0/6 (retail) --------------- Display Devices --------------- Card name: NVIDIA GeForce GTX 670 Manufacturer: NVIDIA Chip type: GeForce GTX 670 DAC type: Integrated RAMDAC Device Type: Full Device Device Key: Enum\PCI\VEN_10DE&DEV_1189&SUBSYS_355A1458&REV_A1 Display Memory: 7823 MB Dedicated Memory: 4036 MB Shared Memory: 3787 MB Current Mode: 1920 x 1080 (32 bit) (60Hz) Monitor Name: Acer X233H Monitor Model: Acer X233H Monitor Id: ACR0093 Native Mode: 1920 x 1080(p) (60.000Hz) Output Type: DVI Driver Name: nvd3dumx.dll,nvwgf2umx.dll,nvwgf2umx.dll,nvd3dum,nvwgf2um,nvwgf2um Driver File Version: 9.18.0013.1106 (English) Driver Version: 9.18.13.1106 DDI Version: 11 Feature Levels: 11.0,10.1,10.0,9.3,9.2,9.1 Driver Model: WDDM 1.2 Graphics Preemption: DMA Compute Preemption: DMA Driver Attributes: Final Retail Driver Date/Size: 2/26/2013 00:32:38, 18055184 bytes WHQL Logo'd: Yes WHQL Date Stamp: Device Identifier: {D7B71E3E-52C9-11CF-BA73-57151CC2C435} Vendor ID: 0x10DE Device ID: 0x1189 SubSys ID: 0x355A1458 Revision ID: 0x00A1 Driver Strong Name: oem15.inf:0f066de34a9a900c:Section063:9.18.13.1106:pci\ven_10de&dev_1189 Rank Of Driver: 00E02001 Video Accel: ModeMPEG2_A ModeMPEG2_C ModeVC1_C ModeWMV9_C DXVA2 Modes: DXVA2_ModeMPEG2_IDCT DXVA2_ModeMPEG2_VLD DXVA2_ModeVC1_VLD DXVA2_ModeVC1_IDCT DXVA2_ModeWMV9_IDCT DXVA2_ModeH264_VLD_NoFGT Deinterlace Caps: {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(YV12,0x32315659) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(YV12,0x32315659) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YV12,0x32315659) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(YV12,0x32315659) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(IMC1,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(IMC1,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC1,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC1,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(IMC2,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(IMC2,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC2,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC2,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(IMC3,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(IMC3,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC3,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC3,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(IMC4,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(IMC4,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC4,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC4,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(S340,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(S340,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(S340,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(S340,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(S342,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(S342,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(S342,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(S342,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= D3D9 Overlay: Supported DXVA-HD: Supported DDraw Status: Enabled D3D Status: Enabled AGP Status: Enabled Card name: Intel(R) HD Graphics 4000 Manufacturer: Intel Corporation Chip type: Intel(R) HD Graphics Family DAC type: Internal Device Type: Full Device Device Key: Enum\PCI\VEN_8086&DEV_0162&SUBSYS_01621849&REV_09 Display Memory: 1664 MB Dedicated Memory: 32 MB Shared Memory: 1632 MB Current Mode: 1920 x 1080 (32 bit) (59Hz) Monitor Name: SyncMaster 2233SW,SyncMaster Magic CX2233SW(Analog) Monitor Model: SyncMaster Monitor Id: SAM049A Native Mode: 1920 x 1080(p) (59.934Hz) Output Type: HD15 Driver Name: igdumd64.dll,igd10umd64.dll,igd10umd64.dll,igdumdx32,igd10umd32,igd10umd32 Driver File Version: 9.17.0010.2932 (English) Driver Version: 9.17.10.2932 DDI Version: 11 Feature Levels: 11.0,10.1,10.0,9.3,9.2,9.1 Driver Model: WDDM 1.2 Graphics Preemption: DMA Compute Preemption: Thread group Driver Attributes: Final Retail Driver Date/Size: 12/14/2012 02:42:34, 12615680 bytes WHQL Logo'd: Yes WHQL Date Stamp: Device Identifier: {D7B78E66-4222-11CF-8D70-6821B7C2C435} Vendor ID: 0x8086 Device ID: 0x0162 SubSys ID: 0x01621849 Revision ID: 0x0009 Driver Strong Name: oem3.inf:5f63e53413eb6103:iIVBD0:9.17.10.2932:pci\ven_8086&dev_0162 Rank Of Driver: 00E02001 Video Accel: ModeMPEG2_A ModeMPEG2_C ModeWMV9_C ModeVC1_C DXVA2 Modes: DXVA2_ModeMPEG2_VLD DXVA2_ModeMPEG2_IDCT DXVA2_ModeWMV9_IDCT DXVA2_ModeVC1_IDCT DXVA2_ModeH264_VLD_NoFGT Deinterlace Caps: {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(UYVY,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(UYVY,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(UYVY,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(YV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(YV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(NV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(NV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(NV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(IMC1,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC1,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC1,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(IMC2,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(IMC3,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC3,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC3,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(IMC4,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC4,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC4,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend D3D9 Overlay: Supported DXVA-HD: Supported DDraw Status: Enabled D3D Status: Enabled AGP Status: Enabled ------------- Sound Devices ------------- Description: Speakers (Plantronics GameCom 780) Default Sound Playback: Yes Default Voice Playback: Yes Hardware ID: USB\VID_047F&PID_C010&REV_0100&MI_00 Manufacturer ID: 65535 Product ID: 65535 Type: WDM Driver Name: USBAUDIO.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail WHQL Logo'd: Yes Date and Size: 7/26/2012 03:26:27, 121856 bytes Other Files: Driver Provider: Microsoft HW Accel Level: Basic Cap Flags: 0xF1F Min/Max Sample Rate: 100, 200000 Static/Strm HW Mix Bufs: 1, 0 Static/Strm HW 3D Bufs: 0, 0 HW Memory: 0 Voice Management: No EAX(tm) 2.0 Listen/Src: No, No I3DL2(tm) Listen/Src: No, No Sensaura(tm) ZoomFX(tm): No Description: Speakers (High Definition Audio Device) Default Sound Playback: No Default Voice Playback: No Hardware ID: HDAUDIO\FUNC_01&VEN_10EC&DEV_0899&SUBSYS_18491898&REV_1000 Manufacturer ID: 1 Product ID: 65535 Type: WDM Driver Name: HdAudio.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail WHQL Logo'd: Yes Date and Size: 7/26/2012 03:26:51, 339968 bytes Other Files: Driver Provider: Microsoft HW Accel Level: Basic Cap Flags: 0xF1F Min/Max Sample Rate: 100, 200000 Static/Strm HW Mix Bufs: 1, 0 Static/Strm HW 3D Bufs: 0, 0 HW Memory: 0 Voice Management: No EAX(tm) 2.0 Listen/Src: No, No I3DL2(tm) Listen/Src: No, No Sensaura(tm) ZoomFX(tm): No Description: Digital Audio (S/PDIF) (High Definition Audio Device) Default Sound Playback: No Default Voice Playback: No Hardware ID: HDAUDIO\FUNC_01&VEN_10EC&DEV_0899&SUBSYS_18491898&REV_1000 Manufacturer ID: 1 Product ID: 65535 Type: WDM Driver Name: HdAudio.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail WHQL Logo'd: Yes Date and Size: 7/26/2012 03:26:51, 339968 bytes Other Files: Driver Provider: Microsoft HW Accel Level: Basic Cap Flags: 0xF1F Min/Max Sample Rate: 100, 200000 Static/Strm HW Mix Bufs: 1, 0 Static/Strm HW 3D Bufs: 0, 0 HW Memory: 0 Voice Management: No EAX(tm) 2.0 Listen/Src: No, No I3DL2(tm) Listen/Src: No, No Sensaura(tm) ZoomFX(tm): No --------------------- Sound Capture Devices --------------------- Description: Microphone (Plantronics GameCom 780) Default Sound Capture: Yes Default Voice Capture: Yes Driver Name: USBAUDIO.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail Date and Size: 7/26/2012 03:26:27, 121856 bytes Cap Flags: 0x1 Format Flags: 0xFFFFF Description: SPDIF Interface (Plantronics GameCom 780) Default Sound Capture: No Default Voice Capture: No Driver Name: USBAUDIO.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail Date and Size: 7/26/2012 03:26:27, 121856 bytes Cap Flags: 0x1 Format Flags: 0xFFFFF Description: Line (Plantronics GameCom 780) Default Sound Capture: No Default Voice Capture: No Driver Name: USBAUDIO.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail Date and Size: 7/26/2012 03:26:27, 121856 bytes Cap Flags: 0x1 Format Flags: 0xFFFFF ------------------- DirectInput Devices ------------------- Device Name: Mouse Attached: 1 Controller ID: n/a Vendor/Product ID: n/a FF Driver: n/a Device Name: Keyboard Attached: 1 Controller ID: n/a Vendor/Product ID: n/a FF Driver: n/a Device Name: Plantronics GameCom 780 Attached: 1 Controller ID: 0x0 Vendor/Product ID: 0x047F, 0xC010 FF Driver: n/a Poll w/ Interrupt: No ----------- USB Devices ----------- + USB Root Hub | Vendor/Product ID: 0x8086, 0x1E2D | Matching Device ID: USB\ROOT_HUB20 | Service: usbhub | Driver: usbhub.sys, 7/26/2012 06:00:58, 496368 bytes | Driver: usbd.sys, 7/26/2012 06:00:58, 21744 bytes | +-+ Generic USB Hub | | Vendor/Product ID: 0x8087, 0x0024 | | Location: Port_#0001.Hub_#0001 | | Matching Device ID: USB\Class_09 | | Service: usbhub | | Driver: usbhub.sys, 7/26/2012 06:00:58, 496368 bytes | | Driver: usbd.sys, 7/26/2012 06:00:58, 21744 bytes ---------------- Gameport Devices ---------------- ------------ PS/2 Devices ------------ + Standard PS/2 Keyboard | Matching Device ID: *PNP0303 | Service: i8042prt | Driver: i8042prt.sys, 7/26/2012 03:28:51, 112640 bytes | Driver: kbdclass.sys, 7/26/2012 06:00:52, 48368 bytes | + HID Keyboard Device | Vendor/Product ID: 0x1532, 0x0015 | Matching Device ID: HID_DEVICE_SYSTEM_KEYBOARD | Service: kbdhid | Driver: kbdhid.sys, 7/26/2012 03:28:49, 29184 bytes | Driver: kbdclass.sys, 7/26/2012 06:00:52, 48368 bytes | + HID-compliant mouse | Vendor/Product ID: 0x1532, 0x0015 | Matching Device ID: HID_DEVICE_SYSTEM_MOUSE | Service: mouhid | Driver: mouhid.sys, 7/26/2012 03:28:47, 26112 bytes | Driver: mouclass.sys, 7/26/2012 06:00:55, 45808 bytes ------------------------ Disk & DVD/CD-ROM Drives ------------------------ Drive: C: Free Space: 1843.8 GB Total Space: 1874.6 GB File System: NTFS Model: ST2000DM001-1CH164 Drive: D: Free Space: 273.0 GB Total Space: 715.4 GB File System: NTFS Model: WDC WD7500AACS-00D6B0 Drive: E: Model: PIONEER DVD-RW DVR-220L Driver: c:\windows\system32\drivers\cdrom.sys, 6.02.9200.16384 (English), 7/26/2012 03:26:36, 174080 bytes -------------- System Devices -------------- Name: Intel(R) 7 Series/C216 Chipset Family USB Enhanced Host Controller - 1E2D Device ID: PCI\VEN_8086&DEV_1E2D&SUBSYS_1E2D1849&REV_04\3&11583659&0&D0 Driver: C:\WINDOWS\system32\drivers\usbehci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 78576 bytes Driver: C:\WINDOWS\system32\drivers\usbport.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 487664 bytes Driver: C:\WINDOWS\system32\drivers\usbhub.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 496368 bytes Name: Intel(R) 7 Series/C216 Chipset Family USB Enhanced Host Controller - 1E26 Device ID: PCI\VEN_8086&DEV_1E26&SUBSYS_1E261849&REV_04\3&11583659&0&E8 Driver: C:\WINDOWS\system32\drivers\usbehci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 78576 bytes Driver: C:\WINDOWS\system32\drivers\usbport.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 487664 bytes Driver: C:\WINDOWS\system32\drivers\usbhub.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 496368 bytes Name: High Definition Audio Controller Device ID: PCI\VEN_8086&DEV_1E20&SUBSYS_18981849&REV_04\3&11583659&0&D8 Driver: C:\WINDOWS\system32\DRIVERS\hdaudbus.sys, 6.02.9200.16384 (English), 7/26/2012 03:27:36, 71168 bytes Name: Intel(R) 7 Series/C216 Chipset Family SMBus Host Controller - 1E22 Device ID: PCI\VEN_8086&DEV_1E22&SUBSYS_1E221849&REV_04\3&11583659&0&FB Driver: n/a Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 5 - 1E18 Device ID: PCI\VEN_8086&DEV_1E18&SUBSYS_1E181849&REV_C4\3&11583659&0&E4 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 4 - 1E16 Device ID: PCI\VEN_8086&DEV_1E16&SUBSYS_1E161849&REV_C4\3&11583659&0&E3 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: High Definition Audio Controller Device ID: PCI\VEN_10DE&DEV_0E0A&SUBSYS_355A1458&REV_A1\4&15001D53&0&0108 Driver: C:\WINDOWS\system32\DRIVERS\hdaudbus.sys, 6.02.9200.16384 (English), 7/26/2012 03:27:36, 71168 bytes Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 1 - 1E10 Device ID: PCI\VEN_8086&DEV_1E10&SUBSYS_1E101849&REV_C4\3&11583659&0&E0 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) HD Graphics 4000 Device ID: PCI\VEN_8086&DEV_0162&SUBSYS_01621849&REV_09\3&11583659&0&10 Driver: C:\WINDOWS\system32\DRIVERS\igdkmd64.sys, 9.17.0010.2932 (English), 12/14/2012 02:42:22, 5353888 bytes Driver: C:\WINDOWS\system32\igdumd64.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:34, 12615680 bytes Driver: C:\WINDOWS\system32\igd10umd64.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:26, 12858368 bytes Driver: C:\WINDOWS\system32\igfxcmrt64.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:20, 518656 bytes Driver: C:\WINDOWS\system32\igfx11cmrt64.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:26, 483840 bytes Driver: C:\WINDOWS\system32\igfxcmjit64.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:12, 3511296 bytes Driver: C:\WINDOWS\system32\IccLibDll_x64.dll, 12/14/2012 02:42:12, 94208 bytes Driver: C:\WINDOWS\system32\igcodeckrng700.bin, 12/14/2012 02:42:24, 754652 bytes Driver: C:\WINDOWS\system32\igvpkrng700.bin, 12/14/2012 02:42:24, 598384 bytes Driver: C:\WINDOWS\SysWow64\igcodeckrng700.bin, 12/14/2012 02:42:24, 754652 bytes Driver: C:\WINDOWS\SysWow64\igvpkrng700.bin, 12/14/2012 02:42:24, 598384 bytes Driver: C:\WINDOWS\system32\igdde64.dll, 12/14/2012 02:42:24, 80384 bytes Driver: C:\WINDOWS\SysWow64\igdde32.dll, 12/14/2012 02:42:30, 64512 bytes Driver: C:\WINDOWS\system32\iglhxs64.vp, 12/14/2012 02:42:20, 17102 bytes Driver: C:\WINDOWS\system32\iglhxo64.vp, 6/2/2012 15:32:34, 59425 bytes Driver: C:\WINDOWS\system32\iglhxc64.vp, 6/2/2012 15:32:34, 59230 bytes Driver: C:\WINDOWS\system32\iglhxg64.vp, 6/2/2012 15:32:34, 59398 bytes Driver: C:\WINDOWS\system32\iglhxo64_dev.vp, 6/2/2012 15:32:34, 58109 bytes Driver: C:\WINDOWS\system32\iglhxc64_dev.vp, 6/2/2012 15:32:34, 59104 bytes Driver: C:\WINDOWS\system32\iglhxg64_dev.vp, 6/2/2012 15:32:34, 58796 bytes Driver: C:\WINDOWS\system32\iglhxa64.vp, 6/2/2012 15:32:34, 1074 bytes Driver: C:\WINDOWS\system32\iglhxa64.cpa, 6/2/2012 15:32:34, 1981696 bytes Driver: C:\WINDOWS\system32\iglhcp64.dll, 3.00.0001.0016 (English), 12/14/2012 02:42:10, 216064 bytes Driver: C:\WINDOWS\system32\iglhsip64.dll, 3.00.0000.0012 (English), 12/14/2012 02:42:24, 524800 bytes Driver: C:\WINDOWS\SysWow64\igdumd32.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:24, 11049472 bytes Driver: C:\WINDOWS\SysWow64\igfxdv32.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 330752 bytes Driver: C:\WINDOWS\SysWow64\igd10umd32.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:30, 11174912 bytes Driver: C:\WINDOWS\SysWow64\iglhcp32.dll, 3.00.0001.0015 (English), 12/14/2012 02:42:30, 180224 bytes Driver: C:\WINDOWS\SysWow64\iglhsip32.dll, 3.00.0000.0012 (English), 12/14/2012 02:42:24, 519680 bytes Driver: C:\WINDOWS\SysWow64\IntelCpHeciSvc.exe, 1.00.0001.0014 (English), 12/14/2012 02:42:10, 277616 bytes Driver: C:\WINDOWS\SysWow64\igfxcmrt32.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:28, 640512 bytes Driver: C:\WINDOWS\SysWow64\igfx11cmrt32.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:24, 459264 bytes Driver: C:\WINDOWS\SysWow64\igfxcmjit32.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:28, 3121152 bytes Driver: C:\WINDOWS\system32\difx64.exe, 1.04.0002.0000 (English), 12/14/2012 02:42:22, 185968 bytes Driver: C:\WINDOWS\system32\hccutils.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 110592 bytes Driver: C:\WINDOWS\system32\igfxsrvc.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 64000 bytes Driver: C:\WINDOWS\system32\igfxsrvc.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:28, 512112 bytes Driver: C:\WINDOWS\system32\igfxpph.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:34, 384512 bytes Driver: C:\WINDOWS\system32\igfxcpl.cpl, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 126976 bytes Driver: C:\WINDOWS\system32\igfxdev.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 442880 bytes Driver: C:\WINDOWS\system32\igfxdo.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:24, 142336 bytes Driver: C:\WINDOWS\system32\igfxtray.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:14, 172144 bytes Driver: C:\WINDOWS\system32\hkcmd.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:10, 399984 bytes Driver: C:\WINDOWS\system32\igfxress.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:26, 9007616 bytes Driver: C:\WINDOWS\system32\igfxpers.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:14, 441968 bytes Driver: C:\WINDOWS\system32\igfxTMM.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:14, 410112 bytes Driver: C:\WINDOWS\system32\gfxSrvc.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 175104 bytes Driver: C:\WINDOWS\system32\GfxUI.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 5906032 bytes Driver: C:\WINDOWS\system32\GfxUI.exe.config, 12/14/2012 02:42:28, 268 bytes Driver: C:\WINDOWS\system32\IGFXDEVLib.dll, 1.00.0000.0000 (Invariant Language), 12/14/2012 02:42:36, 9728 bytes Driver: C:\WINDOWS\system32\igfxext.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:28, 255088 bytes Driver: C:\WINDOWS\system32\igfxexps.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 28672 bytes Driver: C:\WINDOWS\SysWow64\igfxexps32.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:22, 25088 bytes Driver: C:\WINDOWS\system32\igfxrara.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 435712 bytes Driver: C:\WINDOWS\system32\igfxrchs.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:26, 428544 bytes Driver: C:\WINDOWS\system32\igfxrcht.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 429056 bytes Driver: C:\WINDOWS\system32\igfxrdan.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 437248 bytes Driver: C:\WINDOWS\system32\igfxrdeu.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:28, 438784 bytes Driver: C:\WINDOWS\system32\igfxrenu.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:24, 286208 bytes Driver: C:\WINDOWS\system32\igfxresn.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:26, 439808 bytes Driver: C:\WINDOWS\system32\igfxrfin.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:20, 438272 bytes Driver: C:\WINDOWS\system32\igfxrfra.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:14, 439808 bytes Driver: C:\WINDOWS\system32\igfxrheb.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 435712 bytes Driver: C:\WINDOWS\system32\igfxrhrv.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 438784 bytes Driver: C:\WINDOWS\system32\igfxrita.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 438784 bytes Driver: C:\WINDOWS\system32\igfxrjpn.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:20, 432128 bytes Driver: C:\WINDOWS\system32\igfxrkor.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 431104 bytes Driver: C:\WINDOWS\system32\igfxrnld.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:28, 438784 bytes Driver: C:\WINDOWS\system32\igfxrnor.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:36, 437760 bytes Driver: C:\WINDOWS\system32\igfxrplk.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 438784 bytes Driver: C:\WINDOWS\system32\igfxrptb.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 437760 bytes Driver: C:\WINDOWS\system32\igfxrptg.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:24, 438784 bytes Driver: C:\WINDOWS\system32\igfxrrom.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:22, 439296 bytes Driver: C:\WINDOWS\system32\igfxrrus.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:24, 439296 bytes Driver: C:\WINDOWS\system32\igfxrsky.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 438784 bytes Driver: C:\WINDOWS\system32\igfxrslv.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:10, 437760 bytes Driver: C:\WINDOWS\system32\igfxrsve.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:20, 437760 bytes Driver: C:\WINDOWS\system32\igfxrtha.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 437248 bytes Driver: C:\WINDOWS\system32\igfxrcsy.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:22, 438272 bytes Driver: C:\WINDOWS\system32\igfxrell.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 440320 bytes Driver: C:\WINDOWS\system32\igfxrhun.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 438272 bytes Driver: C:\WINDOWS\system32\igfxrtrk.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:26, 437760 bytes Driver: C:\WINDOWS\system32\Gfxres.ar-SA.resources, 12/14/2012 02:42:30, 166124 bytes Driver: C:\WINDOWS\system32\Gfxres.cs-CZ.resources, 12/14/2012 02:42:12, 142267 bytes Driver: C:\WINDOWS\system32\Gfxres.da-DK.resources, 12/14/2012 02:42:16, 137132 bytes Driver: C:\WINDOWS\system32\Gfxres.de-DE.resources, 12/14/2012 02:42:28, 147360 bytes Driver: C:\WINDOWS\system32\Gfxres.el-GR.resources, 12/14/2012 02:42:30, 209986 bytes Driver: C:\WINDOWS\system32\Gfxres.es-ES.resources, 12/14/2012 02:42:22, 147269 bytes Driver: C:\WINDOWS\system32\Gfxres.en-US.resources, 12/14/2012 02:42:30, 132623 bytes Driver: C:\WINDOWS\system32\Gfxres.fi-FI.resources, 12/14/2012 02:42:22, 141998 bytes Driver: C:\WINDOWS\system32\Gfxres.fr-FR.resources, 12/14/2012 02:42:36, 145470 bytes Driver: C:\WINDOWS\system32\Gfxres.he-IL.resources, 12/14/2012 02:42:10, 158986 bytes Driver: C:\WINDOWS\system32\Gfxres.hr-HR.resources, 12/14/2012 02:42:30, 141038 bytes Driver: C:\WINDOWS\system32\Gfxres.hu-HU.resources, 12/14/2012 02:42:30, 143916 bytes Driver: C:\WINDOWS\system32\Gfxres.it-IT.resources, 12/14/2012 02:42:10, 149649 bytes Driver: C:\WINDOWS\system32\Gfxres.ja-JP.resources, 12/14/2012 02:42:30, 163379 bytes Driver: C:\WINDOWS\system32\Gfxres.ko-KR.resources, 12/14/2012 02:42:24, 148018 bytes Driver: C:\WINDOWS\system32\Gfxres.nb-NO.resources, 12/14/2012 02:42:24, 137793 bytes Driver: C:\WINDOWS\system32\Gfxres.nl-NL.resources, 12/14/2012 02:42:12, 143989 bytes Driver: C:\WINDOWS\system32\Gfxres.pl-PL.resources, 12/14/2012 02:42:26, 142682 bytes Driver: C:\WINDOWS\system32\Gfxres.pt-BR.resources, 12/14/2012 02:42:36, 144235 bytes Driver: C:\WINDOWS\system32\Gfxres.pt-PT.resources, 12/14/2012 02:42:24, 143249 bytes Driver: C:\WINDOWS\system32\Gfxres.ro-RO.resources, 12/14/2012 02:42:22, 145974 bytes Driver: C:\WINDOWS\system32\Gfxres.ru-RU.resources, 12/14/2012 02:42:28, 194121 bytes Driver: C:\WINDOWS\system32\Gfxres.sk-SK.resources, 12/14/2012 02:42:24, 141833 bytes Driver: C:\WINDOWS\system32\Gfxres.sl-SI.resources, 12/14/2012 02:42:22, 137880 bytes Driver: C:\WINDOWS\system32\Gfxres.sv-SE.resources, 12/14/2012 02:42:24, 142876 bytes Driver: C:\WINDOWS\system32\Gfxres.th-TH.resources, 12/14/2012 02:42:12, 223492 bytes Driver: C:\WINDOWS\system32\Gfxres.tr-TR.resources, 12/14/2012 02:42:30, 144637 bytes Driver: C:\WINDOWS\system32\Gfxres.zh-CN.resources, 12/14/2012 02:42:30, 124662 bytes Driver: C:\WINDOWS\system32\Gfxres.zh-TW.resources, 12/14/2012 02:42:12, 126294 bytes Driver: C:\WINDOWS\system32\ig7icd64.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:22, 11633152 bytes Driver: C:\WINDOWS\SysWow64\ig7icd32.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:20, 8621056 bytes Driver: C:\WINDOWS\system32\Intel_OpenCL_ICD64.dll, 1.02.0001.0000 (English), 12/14/2012 02:42:22, 56832 bytes Driver: C:\WINDOWS\system32\IntelOpenCL64.dll, 1.01.0000.1003 (English), 12/14/2012 02:42:26, 241664 bytes Driver: C:\WINDOWS\system32\igdbcl64.dll, 9.17.0010.2884 (English), 12/14/2012 02:42:14, 3581440 bytes Driver: C:\WINDOWS\system32\igdrcl64.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:12, 27664896 bytes Driver: C:\WINDOWS\system32\igdfcl64.dll, 8.01.0000.2932 (English), 12/14/2012 02:42:20, 27457536 bytes Driver: C:\WINDOWS\SysWow64\Intel_OpenCL_ICD32.dll, 1.02.0001.0000 (English), 12/14/2012 02:42:12, 56320 bytes Driver: C:\WINDOWS\SysWow64\IntelOpenCL32.dll, 1.01.0000.1003 (English), 12/14/2012 02:42:36, 196096 bytes Driver: C:\WINDOWS\SysWow64\igdbcl32.dll, 9.17.0010.2884 (English), 12/14/2012 02:42:12, 2898944 bytes Driver: C:\WINDOWS\SysWow64\igdrcl32.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:16, 27643904 bytes Driver: C:\WINDOWS\SysWow64\igdfcl32.dll, 8.01.0000.2932 (English), 12/14/2012 02:42:36, 21850112 bytes Driver: C:\WINDOWS\system32\igfxCoIn_v2932.dll, 1.02.0030.0000 (English), 12/14/2012 02:42:20, 116224 bytes Name: NVIDIA GeForce GTX 670 Device ID: PCI\VEN_10DE&DEV_1189&SUBSYS_355A1458&REV_A1\4&15001D53&0&0008 Driver: C:\Program Files\NVIDIA Corporation\Drs\dbInstaller.exe, 8.17.0013.1106 (English), 2/26/2013 00:32:28, 233760 bytes Driver: C:\Program Files\NVIDIA Corporation\Drs\nvdrsdb.bin, 2/26/2013 00:32:36, 1102808 bytes Driver: C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_67d640ab45cc6b34\NvCplSetupInt.exe, 1.00.0001.0000 (English), 2/26/2013 00:32:22, 73372616 bytes Driver: C:\Program Files (x86)\NVIDIA Corporation\coprocmanager\Nvd3d9wrap.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:42, 286536 bytes Driver: C:\Program Files (x86)\NVIDIA Corporation\coprocmanager\detoured.dll, 2/26/2013 00:32:42, 4096 bytes Driver: C:\Program Files (x86)\NVIDIA Corporation\coprocmanager\nvdxgiwrap.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:40, 193336 bytes Driver: C:\Program Files\NVIDIA Corporation\coprocmanager\Nvd3d9wrapx.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:28, 327248 bytes Driver: C:\Program Files\NVIDIA Corporation\coprocmanager\detoured.dll, 2/26/2013 00:32:36, 4096 bytes Driver: C:\Program Files\NVIDIA Corporation\coprocmanager\nvdxgiwrapx.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:04, 228880 bytes Driver: C:\Program Files\NVIDIA Corporation\license.txt, 2/26/2013 00:32:08, 21898 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\MCU.exe, 1.00.4647.21994 (English), 2/26/2013 00:32:08, 1562400 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\nvdebugdump.exe, 2/26/2013 00:32:44, 223008 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.1.pdf, 2/26/2013 00:32:40, 40574 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe, 8.17.0013.1106 (English), 2/26/2013 00:32:42, 241440 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\nvml.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:42, 428320 bytes Driver: C:\Program Files\NVIDIA Corporation\OpenCL\OpenCL.dll, 1.00.0000.0000 (English), 2/26/2013 00:32:06, 53024 bytes Driver: C:\Program Files\NVIDIA Corporation\OpenCL\OpenCL64.dll, 1.00.0000.0000 (English), 2/26/2013 00:32:40, 61216 bytes Driver: C:\WINDOWS\system32\DRIVERS\nvlddmkm.sys, 9.18.0013.1106 (English), 2/26/2013 00:32:32, 11036448 bytes Driver: C:\WINDOWS\system32\nvEncodeAPI64.dll, 6.14.0013.1106 (English), 2/26/2013 00:32:36, 420128 bytes Driver: C:\WINDOWS\system32\nvapi64.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:40, 2826040 bytes Driver: C:\WINDOWS\system32\nvcompiler.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:44, 25256224 bytes Driver: C:\WINDOWS\system32\nvcuda.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:06, 9390760 bytes Driver: C:\WINDOWS\system32\nvcuvenc.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:34, 2346784 bytes Driver: C:\WINDOWS\system32\nvcuvid.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:28, 2904352 bytes Driver: C:\WINDOWS\system32\nvd3dumx.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:38, 18055184 bytes Driver: C:\WINDOWS\system32\nvinfo.pb, 2/26/2013 00:32:08, 17266 bytes Driver: C:\WINDOWS\system32\nvinitx.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:32, 245872 bytes Driver: C:\WINDOWS\system32\nvoglv64.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:36, 26929440 bytes Driver: C:\WINDOWS\system32\nvopencl.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:08, 7564040 bytes Driver: C:\WINDOWS\system32\nvumdshimx.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:38, 1107440 bytes Driver: C:\WINDOWS\system32\nvwgf2umx.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:26, 15053264 bytes Driver: C:\WINDOWS\SysWow64\nvEncodeAPI.dll, 6.14.0013.1106 (English), 2/26/2013 00:32:28, 364832 bytes Driver: C:\WINDOWS\SysWow64\nvapi.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:44, 2505144 bytes Driver: C:\WINDOWS\SysWow64\nvcompiler.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:24, 17560352 bytes Driver: C:\WINDOWS\SysWow64\nvcuda.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:34, 7932256 bytes Driver: C:\WINDOWS\SysWow64\nvcuvenc.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:08, 1985824 bytes Driver: C:\WINDOWS\SysWow64\nvcuvid.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:36, 2720544 bytes Driver: C:\WINDOWS\SysWow64\nvd3dum.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:42, 15129960 bytes Driver: C:\WINDOWS\SysWow64\nvinit.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:04, 201576 bytes Driver: C:\WINDOWS\SysWow64\nvoglv32.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:26, 20449056 bytes Driver: C:\WINDOWS\SysWow64\nvopencl.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:40, 6262608 bytes Driver: C:\WINDOWS\SysWow64\nvumdshim.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:36, 958120 bytes Driver: C:\WINDOWS\SysWow64\nvwgf2um.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:08, 12641992 bytes Driver: C:\WINDOWS\system32\nvdispco64.dll, 2.00.0029.0004 (English), 2/26/2013 00:32:38, 1814304 bytes Driver: C:\WINDOWS\system32\nvdispgenco64.dll, 2.00.0016.0002 (English), 2/26/2013 00:32:32, 1510176 bytes Name: Xeon(R) processor E3-1200 v2/3rd Gen Core processor PCI Express Root Port - 0151 Device ID: PCI\VEN_8086&DEV_0151&SUBSYS_01511849&REV_09\3&11583659&0&08 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) 7 Series/C216 Chipset Family SATA AHCI Controller Device ID: PCI\VEN_8086&DEV_1E02&SUBSYS_1E021849&REV_04\3&11583659&0&FA Driver: C:\WINDOWS\system32\DRIVERS\iaStorA.sys, 11.07.0000.1013 (English), 11/19/2012 12:10:38, 652344 bytes Name: PCI standard PCI-to-PCI bridge Device ID: PCI\VEN_1B21&DEV_1080&SUBSYS_10801849&REV_03\4&C7A4F95&0&00E5 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 8 - 1E1E Device ID: PCI\VEN_8086&DEV_1E1E&SUBSYS_1E1E1849&REV_C4\3&11583659&0&E7 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Broadcom NetLink (TM) Gigabit Ethernet Device ID: PCI\VEN_14E4&DEV_16B1&SUBSYS_96B11849&REV_10\4&2B8260C3&0&00E4 Driver: C:\WINDOWS\system32\DRIVERS\k57nd60a.sys, 15.04.0000.0009 (English), 8/25/2012 22:11:34, 433976 bytes Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 6 - 1E1A Device ID: PCI\VEN_8086&DEV_1E1A&SUBSYS_1E1A1849&REV_C4\3&11583659&0&E5 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) Z77 Express Chipset LPC Controller - 1E44 Device ID: PCI\VEN_8086&DEV_1E44&SUBSYS_1E441849&REV_04\3&11583659&0&F8 Driver: C:\WINDOWS\system32\DRIVERS\msisadrv.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 17136 bytes Name: ASMedia XHCI Controller Device ID: PCI\VEN_1B21&DEV_1042&SUBSYS_10421849&REV_00\4&37A73C8A&0&00E7 Driver: C:\WINDOWS\system32\DRIVERS\asmtxhci.sys, 1.16.0002.0000 (English), 8/20/2012 10:38:12, 416072 bytes Name: Asmedia 106x SATA Controller Device ID: PCI\VEN_1B21&DEV_0612&SUBSYS_06121849&REV_01\4&33B94F4C&0&00E3 Driver: C:\WINDOWS\system32\DRIVERS\asahci64.sys, 1.03.0008.0000 (English), 7/18/2012 11:29:46, 49048 bytes Driver: C:\WINDOWS\system32\ahcipp64.dll, 1.00.0000.0001 (English), 7/8/2011 21:29:04, 48736 bytes Name: Intel(R) Management Engine Interface Device ID: PCI\VEN_8086&DEV_1E3A&SUBSYS_1E3A1849&REV_04\3&11583659&0&B0 Driver: C:\WINDOWS\system32\DRIVERS\HECIx64.sys, 9.00.0000.1287 (English), 1/11/2013 19:02:34, 64624 bytes Name: Intel(R) USB 3.0 eXtensible Host Controller - 0100 (Microsoft) Device ID: PCI\VEN_8086&DEV_1E31&SUBSYS_1E311849&REV_04\3&11583659&0&A0 Driver: C:\WINDOWS\system32\DRIVERS\UCX01000.SYS, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 212208 bytes Driver: C:\WINDOWS\system32\DRIVERS\USBXHCI.SYS, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 337136 bytes Name: Xeon(R) processor E3-1200 v2/3rd Gen Core processor DRAM Controller - 0150 Device ID: PCI\VEN_8086&DEV_0150&SUBSYS_01501849&REV_09\3&11583659&0&00 Driver: n/a ------------------ DirectShow Filters ------------------ DirectShow Filters: WMAudio Decoder DMO,0x00800800,1,1,WMADMOD.DLL,6.02.9200.16384 WMAPro over S/PDIF DMO,0x00600800,1,1,WMADMOD.DLL,6.02.9200.16384 WMSpeech Decoder DMO,0x00600800,1,1,WMSPDMOD.DLL,6.02.9200.16384 MP3 Decoder DMO,0x00600800,1,1,mp3dmod.dll,6.02.9200.16384 Mpeg4s Decoder DMO,0x00800001,1,1,mp4sdecd.dll,6.02.9200.16384 WMV Screen decoder DMO,0x00600800,1,1,wmvsdecd.dll,6.02.9200.16384 WMVideo Decoder DMO,0x00800001,1,1,wmvdecod.dll,6.02.9200.16384 Mpeg43 Decoder DMO,0x00800001,1,1,mp43decd.dll,6.02.9200.16384 Mpeg4 Decoder DMO,0x00800001,1,1,mpg4decd.dll,6.02.9200.16384 DV Muxer,0x00400000,0,0,qdv.dll,6.06.9200.16384 Color Space Converter,0x00400001,1,1,quartz.dll,6.06.9200.16384 WM ASF Reader,0x00400000,0,0,qasf.dll,12.00.9200.16384 AVI Splitter,0x00600000,1,1,quartz.dll,6.06.9200.16384 VGA 16 Color Ditherer,0x00400000,1,1,quartz.dll,6.06.9200.16384 SBE2MediaTypeProfile,0x00200000,0,0,sbe.dll,6.06.9200.16384 Microsoft DTV-DVD Video Decoder,0x005fffff,2,4,msmpeg2vdec.dll,12.00.8500.0000 AC3 Parser Filter,0x00600000,1,1,mpg2splt.ax,6.06.9200.16384 StreamBufferSink,0x00200000,0,0,sbe.dll,6.06.9200.16384 MJPEG Decompressor,0x00600000,1,1,quartz.dll,6.06.9200.16384 MPEG-I Stream Splitter,0x00600000,1,2,quartz.dll,6.06.9200.16384 SAMI (CC) Parser,0x00400000,1,1,quartz.dll,6.06.9200.16384 VBI Codec,0x00600000,1,4,VBICodec.ax,6.06.9200.16384 MPEG-2 Splitter,0x005fffff,1,0,mpg2splt.ax,6.06.9200.16384 Closed Captions Analysis Filter,0x00200000,2,5,cca.dll,6.06.9200.16384 SBE2FileScan,0x00200000,0,0,sbe.dll,6.06.9200.16384 Microsoft MPEG-2 Video Encoder,0x00200000,1,1,msmpeg2enc.dll,12.00.9200.16384 Internal Script Command Renderer,0x00800001,1,0,quartz.dll,6.06.9200.16384 MPEG Audio Decoder,0x03680001,1,1,quartz.dll,6.06.9200.16384 DV Splitter,0x00600000,1,2,qdv.dll,6.06.9200.16384 Video Mixing Renderer 9,0x00200000,1,0,quartz.dll,6.06.9200.16384 Microsoft MPEG-2 Encoder,0x00200000,2,1,msmpeg2enc.dll,12.00.9200.16384 ACM Wrapper,0x00600000,1,1,quartz.dll,6.06.9200.16384 Video Renderer,0x00800001,1,0,quartz.dll,6.06.9200.16384 MPEG-2 Video Stream Analyzer,0x00200000,0,0,sbe.dll,6.06.9200.16384 Line 21 Decoder,0x00600000,1,1,, Video Port Manager,0x00600000,2,1,quartz.dll,6.06.9200.16384 Video Renderer,0x00400000,1,0,quartz.dll,6.06.9200.16384 VPS Decoder,0x00200000,0,0,WSTPager.ax,6.06.9200.16384 WM ASF Writer,0x00400000,0,0,qasf.dll,12.00.9200.16384 VBI Surface Allocator,0x00600000,1,1,vbisurf.ax,6.02.9200.16384 File writer,0x00200000,1,0,qcap.dll,6.06.9200.16384 DVD Navigator,0x00200000,0,3,qdvd.dll,6.06.9200.16384 Overlay Mixer2,0x00200000,1,1,, Microsoft MPEG-2 Audio Encoder,0x00200000,1,1,msmpeg2enc.dll,12.00.9200.16384 WST Pager,0x00200000,1,1,WSTPager.ax,6.06.9200.16384 MPEG-2 Demultiplexer,0x00600000,1,1,mpg2splt.ax,6.06.9200.16384 DV Video Decoder,0x00800000,1,1,qdv.dll,6.06.9200.16384 SampleGrabber,0x00200000,1,1,qedit.dll,6.06.9200.16384 Null Renderer,0x00200000,1,0,qedit.dll,6.06.9200.16384 MPEG-2 Sections and Tables,0x005fffff,1,0,Mpeg2Data.ax,6.06.9200.16384 Microsoft AC3 Encoder,0x00200000,1,1,msac3enc.dll,6.02.9200.16384 StreamBufferSource,0x00200000,0,0,sbe.dll,6.06.9200.16384 Smart Tee,0x00200000,1,2,qcap.dll,6.06.9200.16384 Overlay Mixer,0x00200000,0,0,, AVI Decompressor,0x00600000,1,1,quartz.dll,6.06.9200.16384 AVI/WAV File Source,0x00400000,0,2,quartz.dll,6.06.9200.16384 Wave Parser,0x00400000,1,1,quartz.dll,6.06.9200.16384 MIDI Parser,0x00400000,1,1,quartz.dll,6.06.9200.16384 Multi-file Parser,0x00400000,1,1,quartz.dll,6.06.9200.16384 File stream renderer,0x00400000,1,1,quartz.dll,6.06.9200.16384 Microsoft DTV-DVD Audio Decoder,0x005fffff,1,1,msmpeg2adec.dll,12.00.8506.0000 StreamBufferSink2,0x00200000,0,0,sbe.dll,6.06.9200.16384 AVI Mux,0x00200000,1,0,qcap.dll,6.06.9200.16384 Line 21 Decoder 2,0x00600002,1,1,quartz.dll,6.06.9200.16384 File Source (Async.),0x00400000,0,1,quartz.dll,6.06.9200.16384 File Source (URL),0x00400000,0,1,quartz.dll,6.06.9200.16384 AudioRecorder WAV Dest,0x00200000,0,0,WavDest.dll, AudioRecorder Wave Form,0x00200000,0,0,WavDest.dll, SoundRecorder Null Renderer,0x00200000,0,0,WavDest.dll, Infinite Pin Tee Filter,0x00200000,1,1,qcap.dll,6.06.9200.16384 Enhanced Video Renderer,0x00200000,1,0,evr.dll,6.02.9200.16384 BDA MPEG2 Transport Information Filter,0x00200000,2,0,psisrndr.ax,6.06.9200.16384 MPEG Video Decoder,0x40000001,1,1,quartz.dll,6.06.9200.16384 WDM Streaming Tee/Splitter Devices: Tee/Sink-to-Sink Converter,0x00200000,1,1,ksproxy.ax,6.02.9200.16384 Video Compressors: WMVideo8 Encoder DMO,0x00600800,1,1,wmvxencd.dll,6.02.9200.16384 WMVideo9 Encoder DMO,0x00600800,1,1,wmvencod.dll,6.02.9200.16384 MSScreen 9 encoder DMO,0x00600800,1,1,wmvsencd.dll,6.02.9200.16384 DV Video Encoder,0x00200000,0,0,qdv.dll,6.06.9200.16384 MJPEG Compressor,0x00200000,0,0,quartz.dll,6.06.9200.16384 Audio Compressors: WM Speech Encoder DMO,0x00600800,1,1,WMSPDMOE.DLL,6.02.9200.16384 WMAudio Encoder DMO,0x00600800,1,1,WMADMOE.DLL,6.02.9200.16384 IMA ADPCM,0x00200000,1,1,quartz.dll,6.06.9200.16384 PCM,0x00200000,1,1,quartz.dll,6.06.9200.16384 Microsoft ADPCM,0x00200000,1,1,quartz.dll,6.06.9200.16384 GSM 6.10,0x00200000,1,1,quartz.dll,6.06.9200.16384 CCITT A-Law,0x00200000,1,1,quartz.dll,6.06.9200.16384 CCITT u-Law,0x00200000,1,1,quartz.dll,6.06.9200.16384 MPEG Layer-3,0x00200000,1,1,quartz.dll,6.06.9200.16384 Audio Capture Sources: Microphone (Plantronics GameCom 780),0x00200000,0,0,qcap.dll,6.06.9200.16384 SPDIF Interface (Plantronics GameCom 780),0x00200000,0,0,qcap.dll,6.06.9200.16384 Line (Plantronics GameCom 780),0x00200000,0,0,qcap.dll,6.06.9200.16384 PBDA CP Filters: PBDA DTFilter,0x00600000,1,1,CPFilters.dll,6.06.9200.16384 PBDA ETFilter,0x00200000,0,0,CPFilters.dll,6.06.9200.16384 PBDA PTFilter,0x00200000,0,0,CPFilters.dll,6.06.9200.16384 Midi Renderers: Default MidiOut Device,0x00800000,1,0,quartz.dll,6.06.9200.16384 Microsoft GS Wavetable Synth,0x00200000,1,0,quartz.dll,6.06.9200.16384 WDM Streaming Capture Devices: Plantronics GameCom 780,0x00200000,4,2,ksproxy.ax,6.02.9200.16384 WDM Streaming Rendering Devices: HD Audio SPDIF out,0x00200000,1,1,ksproxy.ax,6.02.9200.16384 HD Audio Speaker,0x00200000,1,1,ksproxy.ax,6.02.9200.16384 Plantronics GameCom 780,0x00200000,4,2,ksproxy.ax,6.02.9200.16384 BDA Network Providers: Microsoft ATSC Network Provider,0x00200000,0,1,MSDvbNP.ax,6.06.9200.16384 Microsoft DVBC Network Provider,0x00200000,0,1,MSDvbNP.ax,6.06.9200.16384 Microsoft DVBS Network Provider,0x00200000,0,1,MSDvbNP.ax,6.06.9200.16384 Microsoft DVBT Network Provider,0x00200000,0,1,MSDvbNP.ax,6.06.9200.16384 Microsoft Network Provider,0x00200000,0,1,MSNP.ax,6.06.9200.16384 Multi-Instance Capable VBI Codecs: VBI Codec,0x00600000,1,4,VBICodec.ax,6.06.9200.16384 BDA Transport Information Renderers: BDA MPEG2 Transport Information Filter,0x00600000,2,0,psisrndr.ax,6.06.9200.16384 MPEG-2 Sections and Tables,0x00600000,1,0,Mpeg2Data.ax,6.06.9200.16384 BDA CP/CA Filters: Decrypt/Tag,0x00600000,1,1,EncDec.dll,6.06.9200.16384 Encrypt/Tag,0x00200000,0,0,EncDec.dll,6.06.9200.16384 PTFilter,0x00200000,0,0,EncDec.dll,6.06.9200.16384 XDS Codec,0x00200000,0,0,EncDec.dll,6.06.9200.16384 WDM Streaming Communication Transforms: Tee/Sink-to-Sink Converter,0x00200000,1,1,ksproxy.ax,6.02.9200.16384 Audio Renderers: Speakers (Plantronics GameCom 780),0x00200000,1,0,quartz.dll,6.06.9200.16384 Default DirectSound Device,0x00800000,1,0,quartz.dll,6.06.9200.16384 Default WaveOut Device,0x00200000,1,0,quartz.dll,6.06.9200.16384 DirectSound: Speakers (Plantronics GameCom 780),0x00200000,1,0,quartz.dll,6.06.9200.16384 DirectSound: Speakers (High Definition Audio Device),0x00200000,1,0,quartz.dll,6.06.9200.16384 DirectSound: Digital Audio (S/PDIF) (High Definition Audio Device),0x00200000,1,0,quartz.dll,6.06.9200.16384 Speakers (High Definition Audio Device),0x00200000,1,0,quartz.dll,6.06.9200.16384 Digital Audio (S/PDIF) (High Definition Audio Device),0x00200000,1,0,quartz.dll,6.06.9200.16384 ---------------------------- Preferred DirectShow Filters ---------------------------- [HKEY_LOCAL_MACHINE\Software\Microsoft\DirectShow\Preferred] <media subtype GUID>, [<filter friendly name>, ]<filter CLSID> MEDIASUBTYPE_WMAUDIO_LOSSLESS, WMAudio Decoder DMO, CLSID_CWMADecMediaObject MEDIASUBTYPE_MPG4, Mpeg4 Decoder DMO, CLSID_CMpeg4DecMediaObject WMMEDIASUBTYPE_WMSP2, WMSpeech Decoder DMO, CLSID_CWMSPDecMediaObject MEDIASUBTYPE_WVC1, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject {64687664-0000-0010-8000-00AA00389B71}, DV Video Decoder, CLSID_DVVideoCodec MEDIASUBTYPE_h264, Microsoft DTV-DVD Video Decoder, CLSID_CMPEG2VidDecoderDS MEDIASUBTYPE_MPEG1AudioPayload, MPEG Audio Decoder, CLSID_CMpegAudioCodec {78766964-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_WMAUDIO3, WMAudio Decoder DMO, CLSID_CWMADecMediaObject MEDIASUBTYPE_WMV2, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_MPEG2_AUDIO, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS {64697678-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject WMMEDIASUBTYPE_MP3, MP3 Decoder DMO, CLSID_CMP3DecMediaObject MEDIASUBTYPE_mp42, Mpeg4 Decoder DMO, CLSID_CMpeg4DecMediaObject MEDIASUBTYPE_MSS1, WMV Screen decoder DMO, CLSID_CMSSCDecMediaObject MEDIASUBTYPE_WVP2, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_WMV1, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_WMVP, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_WMV3, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_WMVR, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_MJPG, MJPEG Decompressor, CLSID_MjpegDec MEDIASUBTYPE_mp43, Mpeg43 Decoder DMO, CLSID_CMpeg43DecMediaObject MEDIASUBTYPE_MSS2, WMV Screen decoder DMO, CLSID_CMSSCDecMediaObject {64737664-0000-0010-8000-00AA00389B71}, DV Video Decoder, CLSID_DVVideoCodec WMMEDIASUBTYPE_WMAudioV8, WMAudio Decoder DMO, CLSID_CWMADecMediaObject {44495658-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject WMMEDIASUBTYPE_WMSP1, WMSpeech Decoder DMO, CLSID_CWMSPDecMediaObject MEDIASUBTYPE_RAW_AAC1, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS {6C737664-0000-0010-8000-00AA00389B71}, DV Video Decoder, CLSID_DVVideoCodec MEDIASUBTYPE_MP43, Mpeg43 Decoder DMO, CLSID_CMpeg43DecMediaObject MEDIASUBTYPE_MPEG1Payload, MPEG Video Decoder, CLSID_CMpegVideoCodec MEDIASUBTYPE_AVC1, Microsoft DTV-DVD Video Decoder, CLSID_CMPEG2VidDecoderDS {20637664-0000-0010-8000-00AA00389B71}, DV Video Decoder, CLSID_DVVideoCodec {58564944-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_MP42, Mpeg4 Decoder DMO, CLSID_CMpeg4DecMediaObject MEDIASUBTYPE_MPEG_ADTS_AAC, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS MEDIASUBTYPE_mpg4, Mpeg4 Decoder DMO, CLSID_CMpeg4DecMediaObject MEDIASUBTYPE_M4S2, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_m4s2, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_MP4S, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_mp4s, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_MPEG1Packet, MPEG Video Decoder, CLSID_CMpegVideoCodec {5634504D-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject {7634706D-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_H264, Microsoft DTV-DVD Video Decoder, CLSID_CMPEG2VidDecoderDS MEDIASUBTYPE_MPEG2_VIDEO, Microsoft DTV-DVD Video Decoder, CLSID_CMPEG2VidDecoderDS MEDIASUBTYPE_WMVA, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_MSAUDIO1, WMAudio Decoder DMO, CLSID_CWMADecMediaObject MEDIASUBTYPE_DVD_LPCM_AUDIO, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS MEDIASUBTYPE_MPEG_LOAS, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS --------------------------- Media Foundation Transforms --------------------------- [HKEY_LOCAL_MACHINE\Software\Classes\MediaFoundation\Transforms] <category>: <transform friendly name>, <transform CLSID>, <flags>, [<merit>, ]<file name>, <file version> Video Decoders: Microsoft MPEG Video Decoder MFT, {2D709E52-123F-49B5-9CBC-9AF5CDE28FB9}, 0x1, msmpeg2vdec.dll, 12.00.8500.0000 DV Decoder MFT, {404A6DE5-D4D6-4260-9BC7-5A6CBD882432}, 0x1, mfdvdec.dll, 6.02.9200.16384 Mpeg4s Decoder MFT, CLSID_CMpeg4sDecMFT, 0x1, mp4sdecd.dll, 6.02.9200.16384 Microsoft H264 Video Decoder MFT, CLSID_CMSH264DecoderMFT, 0x1, msmpeg2vdec.dll, 12.00.8500.0000 WMV Screen decoder MFT, CLSID_CMSSCDecMediaObject, 0x1, wmvsdecd.dll, 6.02.9200.16384 WMVideo Decoder MFT, CLSID_CWMVDecMediaObject, 0x1, wmvdecod.dll, 6.02.9200.16384 MJPEG Decoder MFT, {CB17E772-E1CC-4633-8450-5617AF577905}, 0x1, mfmjpegdec.dll, 6.02.9200.16384 Mpeg43 Decoder MFT, CLSID_CMpeg43DecMediaObject, 0x1, mp43decd.dll, 6.02.9200.16384 Mpeg4 Decoder MFT, CLSID_CMpeg4DecMediaObject, 0x1, mpg4decd.dll, 6.02.9200.16384 Video Encoders: Intel® Quick Sync Video H.264 Encoder MFT, {4BE8D3C0-0515-4A37-AD55-E4BAE19AF471}, 0x4, 7, mfx_mft_h264ve_64.dll, 3.12.0010.0031 H264 Encoder MFT, {6CA50344-051A-4DED-9779-A43305165E35}, 0x1, mfh264enc.dll, 6.02.9200.16384 WMVideo8 Encoder MFT, CLSID_CWMVXEncMediaObject, 0x1, wmvxencd.dll, 6.02.9200.16384 WMVideo9 Encoder MFT, CLSID_CWMV9EncMediaObject, 0x1, wmvencod.dll, 6.02.9200.16384 Microsoft MPEG-2 Video Encoder MFT, {E6335F02-80B7-4DC4-ADFA-DFE7210D20D5}, 0x2, msmpeg2enc.dll, 12.00.9200.16384 Video Effects: Frame Rate Converter, CLSID_CFrameRateConvertDmo, 0x1, mfvdsp.dll, 6.02.9200.16384 Resizer MFT, CLSID_CResizerDMO, 0x1, vidreszr.dll, 6.02.9200.16384 VideoStabilization MFT, {51571744-7FE4-4FF2-A498-2DC34FF74F1B}, 0x1, MSVideoDSP.dll, 6.02.9200.16384 Color Control, CLSID_CColorControlDmo, 0x1, mfvdsp.dll, 6.02.9200.16384 Color Converter MFT, CLSID_CColorConvertDMO, 0x1, colorcnv.dll, 6.02.9200.16384 Video Processor: Microsoft Video Processor MFT, {88753B26-5B24-49BD-B2E7-0C445C78C982}, 0x1, msvproc.dll, 12.00.9200.16384 Audio Decoders: Microsoft Dolby Digital Plus Decoder MFT, {177C0AFE-900B-48D4-9E4C-57ADD250B3D4}, 0x1, MSAudDecMFT.dll, 6.02.9200.16384 WMAudio Decoder MFT, CLSID_CWMADecMediaObject, 0x1, WMADMOD.DLL, 6.02.9200.16384 Microsoft AAC Audio Decoder MFT, CLSID_CMSAACDecMFT, 0x1, MSAudDecMFT.dll, 6.02.9200.16384 GSM ACM Wrapper MFT, {4A76B469-7B66-4DD4-BA2D-DDF244C766DC}, 0x1, mfcore.dll, 12.00.9200.16384 WMAPro over S/PDIF MFT, CLSID_CWMAudioSpdTxDMO, 0x1, WMADMOD.DLL, 6.02.9200.16384 Microsoft MPEG Audio Decoder MFT, {70707B39-B2CA-4015-ABEA-F8447D22D88B}, 0x1, MSAudDecMFT.dll, 6.02.9200.16384 WMSpeech Decoder DMO, CLSID_CWMSPDecMediaObject, 0x1, WMSPDMOD.DLL, 6.02.9200.16384 G711 Wrapper MFT, {92B66080-5E2D-449E-90C4-C41F268E5514}, 0x1, mfcore.dll, 12.00.9200.16384 IMA ADPCM ACM Wrapper MFT, {A16E1BFF-A80D-48AD-AECD-A35C005685FE}, 0x1, mfcore.dll, 12.00.9200.16384 MP3 Decoder MFT, CLSID_CMP3DecMediaObject, 0x1, mp3dmod.dll, 6.02.9200.16384 ADPCM ACM Wrapper MFT, {CA34FE0A-5722-43AD-AF23-05F7650257DD}, 0x1, mfcore.dll, 12.00.9200.16384 Audio Encoders: MP3 Encoder ACM Wrapper MFT, {11103421-354C-4CCA-A7A3-1AFF9A5B6701}, 0x1, mfcore.dll, 12.00.9200.16384 WM Speech Encoder DMO, CLSID_CWMSPEncMediaObject2, 0x1, WMSPDMOE.DLL, 6.02.9200.16384 Microsoft MPEG-2 Audio Encoder MFT, {46A4DD5C-73F8-4304-94DF-308F760974F4}, 0x1, msmpeg2enc.dll, 12.00.9200.16384 WMAudio Encoder MFT, CLSID_CWMAEncMediaObject, 0x1, WMADMOE.DLL, 6.02.9200.16384 Microsoft AAC Audio Encoder MFT, {93AF0C51-2275-45D2-A35B-F2BA21CAED00}, 0x1, mfAACEnc.dll, 6.02.9200.16384 Microsoft Dolby Digital Encoder MFT, {AC3315C9-F481-45D7-826C-0B406C1F64B8}, 0x1, msac3enc.dll, 6.02.9200.16384 Audio Effects: AEC, CLSID_CWMAudioAEC, 0x1, mfwmaaec.dll, 6.02.9200.16384 Resampler MFT, CLSID_CResamplerMediaObject, 0x1, resampledmo.dll, 6.02.9200.16384 Multiplexers: Microsoft MPEG2 Multiplexer MFT, {AB300F71-01AB-46D2-AB6C-64906CB03258}, 0x2, mfmpeg2srcsnk.dll, 12.00.9200.16384 Others: Microsoft H264 Video Remux (MPEG2TSToMP4) MFT, {05A47EBB-8BF0-4CBF-AD2F-3B71D75866F5}, 0x1, msmpeg2vdec.dll, 12.00.8500.0000 -------------------------------------------- Media Foundation Enabled Hardware Categories -------------------------------------------- [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Media Foundation\HardwareMFT] EnableEncoders = 1 ------------------------------------- Media Foundation Byte Stream Handlers ------------------------------------- [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Media Foundation\ByteStreamHandlers] [HKEY_LOCAL_MACHINE\Software\Classes\MediaFoundation\MediaSources\Preferred] <file ext. or MIME type>, <handler CLSID>, <brief description>[, Preferred] .3g2, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .3gp, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .3gp2, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .3gpp, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .aac, {926F41F7-003E-4382-9E84-9E953BE10562}, ADTS Byte Stream Handler, Preferred .ac3, {46031BA1-083F-47D9-8369-23C92BDAB2FF}, AC-3 Byte Stream Handler, Preferred .adt, {926F41F7-003E-4382-9E84-9E953BE10562}, ADTS Byte Stream Handler, Preferred .adts, {926F41F7-003E-4382-9E84-9E953BE10562}, ADTS Byte Stream Handler, Preferred .asf, {41457294-644C-4298-A28A-BD69F2C0CF3B}, ASF Byte Stream Handler, Preferred .avi, {7AFA253E-F823-42F6-A5D9-714BDE467412}, AVI Byte Stream Handler, Preferred .dvr-ms, {65964407-A5D8-4060-85B0-1CCD63F768E2}, dvr-ms Byte Stream Handler, Preferred .dvr-ms, {A8721937-E2FB-4D7A-A9EE-4EB08C890B6E}, MF SBE Source ByteStreamHandler .ec3, {46031BA1-083F-47D9-8369-23C92BDAB2FF}, AC-3 Byte Stream Handler, Preferred .m2t, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .m2ts, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .m4a, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .m4v, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .mod, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .mov, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .mp2v, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .mp3, {A82E50BA-8E92-41EB-9DF2-433F50EC2993}, MP3 Byte Stream Handler, Preferred .mp4, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .mp4v, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .mpa, {A82E50BA-8E92-41EB-9DF2-433F50EC2993}, MP3 Byte Stream Handler, Preferred .mpeg, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .mpg, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .mts, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .nsc, {B084785C-DDE0-4D30-8CA8-05A373E185BE}, NSC Byte Stream Handler, Preferred .sami, {7A56C4CB-D678-4188-85A8-BA2EF68FA10D}, SAMI Byte Stream Handler, Preferred .smi, {7A56C4CB-D678-4188-85A8-BA2EF68FA10D}, SAMI Byte Stream Handler, Preferred .tod, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .ts, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .tts, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .vob, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .wav, {42C9B9F5-16FC-47EF-AF22-DA05F7C842E3}, WAV Byte Stream
sajjadjim / Java Programming LanguageBasic Level Java Programming source code are available here. Here some java all type of method using programming code .
ENvironmentSet / Ts Transfromer TyperepBring type level information to value level.