copyrights revision 0ce87e5749aabb8eef1e0a37e4bd6e6ffa1d7196