copyrights revision 6b5c57e52ac8c3e0af1547be3140ebbfb41a85b3