cover transaction classMethods composition