merge from dev complete