copyrights revision 94da7d97aecac6e3edb92aafa6b2bc8e80404e11