manipulation and docs