The Core Protocol contracts allow the locking and tokenization of yield-bearing positions for fixed periods of time (terms). They define an abstract interface that allows developers to plug in various different integration contracts to generate yield. The focus of these contracts is simplicity, gas efficiency, and easy integration.