copyrights revision 6fac7ff1f9ec9c3873d3b55c5079fa79aba1f146