# Tetu.io contracts update 1.2.0

{% embed url="<https://github.com/tetu-io/tetu-contracts/compare/release-1.1.0...release-1.2.0>" %}

These changes were made since version 1.1.0 and deployed during September-October 2021

The most sensitive upgrade for vaults is a milestone for upping the version.

Compatability for old strategies saved, mass strategy update not require.

#### Common changes

Strategies now have an additional interface for computing KPI. All third-party interfaces were moved. The logic for computation weekly rewards moved to RewardCalculator

Added ArrayLib

Added AutoRewarder and RewardCalculator

Infrastructure folders rearranged

New strategies: Curve / Iron Lending / Cafe / Cosmic / Dino / Hermes / Iron Swap

The first version of TetuPawnshop contract

#### Bookkeeper

Added logic for register rewards distribution process. This logic requires for KPI calculation

Gas optimized removing from arrays regarding auditors recommendation

#### Controller

Check controller when register vault+strategy pair

#### FeeRewardForwarder

Made contract able to deploy with Proxy. Added storage

Adjust revert messages

Added logic for split PS profit to TETU liquidity

Changed notifing vaults with function *notifyRewardWithoutPeriodChange*

Added simple public function for liquidating assets

Adjusted liquidation process for able to handle independent amounts

#### VaultController

Added *changePpfsDecreasePermissions* for able to work with folding strategies

#### SmartVault

Revert messages improved

Lock mechanic for DiamondVault

Settings for allow ppfsDecrease for HardWork

Register reward distribution in Bookkeeper

#### NotifyHelper

Added logic for DiamondVault distribution

&#x20;
