public function addPicture($picturePath, $pictureLocation, $upperLeftRow = 0, $upperLeftColumn = 0, $lowerRightRow = 0, $lowerRightColumn = 0)
    {
        if ($this->worksheetName == '') {
            throw new Exception('No Worksheet Specified');
        }
        if ($pictureLocation == 'Server' || $pictureLocation == 'server') {
            $strURI = Product::$baseProductUri . '/cells/' . $this->getFileName() . '/worksheets/' . $this->worksheetName . '/pictures?upperLeftRow=' .
                $upperLeftRow . '&upperLeftColumn=' . $upperLeftColumn .
                '&lowerRightRow=' . $lowerRightRow . '&lowerRightColumn=' . $lowerRightColumn .
                '&picturePath=' . $picturePath;
            $signedURI = Utils::sign($strURI);
            $responseStream = Utils::processCommand($signedURI, 'PUT');
        } else if ($pictureLocation == 'Local' || $pictureLocation == 'local') {
            if (!file_exists($picturePath)) {
                throw new Exception('File Does not Exists');
            }
            $stream = file_get_contents($picturePath);
            $strURI = Product::$baseProductUri . '/cells/' . $this->getFileName() . '/worksheets/' . $this->worksheetName . '/pictures?upperLeftRow=' .
                $upperLeftRow . '&upperLeftColumn=' . $upperLeftColumn .
                '&lowerRightRow=' . $lowerRightRow . '&lowerRightColumn=' . $lowerRightColumn .
                '&picturePath=' . $picturePath;
            $signedURI = Utils::sign($strURI);
            $responseStream = Utils::processCommand($signedURI, 'PUT', '', $stream);
        }
        $json = json_decode($responseStream);
        if ($json->Code == 200) {
            return true;
        } else {
            return false;
        }

    }