merge from cf master