string composition