copyrights revision 0ead2ac0a4b59c3e4a731027f0f66fbe602b1289