Copyright (c) c all rights reserved