merge from v3