added notice: All Rights Reserved