merged to trunk