public static function updateTagRelationCache($manualLock = false) { if (!$manualLock) { self::checkTagRelationCache('lock'); } try { $tagRelationsFile = sfConfig::get('sf_root_dir') . "/cache/objcache/tagsRelations.php"; $c = new Criteria(); $allTags = TagPeer::doSelect($c); $content = "<?php \n"; foreach ($allTags as $singleTag) { $c = new Criteria(); $c->add(TagrelationPeer::TAG_ID, $singleTag->getId()); $tagRelations = TagrelationPeer::doSelect($c); if ($tagRelations) { $elementsArr = "array("; foreach ($tagRelations as $tagRelation) { $elementsArr .= $tagRelation->getId() . ","; } $content .= "\$_TagRel['" . $singleTag->getTagId() . "'] = " . substr($elementsArr, 0, -1) . ");\n"; } } $content .= "\n?>"; if (FileHelper::writeFile($tagRelationsFile, $content)) { BackendService::loadTagsRelations(); } else { echo FileHelper::Log("Unable to write tag cache in: " . $tagRelationsFile, UtilsHelper::MSG_ERROR); } } catch (Exception $e) { echo FileHelper::Log("Unable to refresh tag cache: " . $e->getMessage(), UtilsHelper::MSG_ERROR); } if (!$manualLock) { self::checkTagRelationCache('unlock'); } }
public static function recordTags($phrase, $model, $obj) { $tags = TagTools::splitPhrase($phrase); foreach ($tags as $settag) { $tag = new Tag(); if ($model == "etime") { $modelTag = new EtimeTag(); } else { $modelTag = new EventTag(); } $tag->setTag($settag); $c = new Criteria(); $c->add(TagPeer::NORMALIZED_TAG, $tag->getNormalizedTag()); $tag_exists = TagPeer::doSelectOne($c); if (!$tag_exists) { $tag->save(); } else { $tag = $tag_exists; } if ($model == "etime") { $modelTag->setEtime($obj); } else { $modelTag->setEvent($obj); } $modelTag->setTag($tag); $modelTag->save(); } return true; }
function parseItem($blog, $item, $ts) { if ($ts != 0 && $item->pubdate <= $ts) { logmsg('Zatrzymanie na wpisie: %s', StringUtils::removeAccents($item->title)); return false; } logmsg(' - Parsowanie wpisu: %s', StringUtils::removeAccents($item->title)); $post = new Post(); $post->setBlog($blog); foreach ($item->tags as $name) { $tag = TagPeer::retriveByName($name, true); if ($post->addTag($tag)) { logmsg(' - Znaleziono tag: %s', $name); } } if ($post->hasTags()) { $shortened = $post->setFullContent($item->content); $post->setLink(htmlspecialchars($item->link)); $post->setTitle($item->title); $post->setCreatedAt($item->pubdate); $post->setShortened($shortened); $post->save(); } else { logmsg(' - Nie znaleziono tagow'); } return true; }
/** * estrae gli N atti più rilevanti per determinati argomenti (tag) */ function run_a0_get_main_acts_for_tags($task, $args, $options) { static $loaded; // load application context if (!$loaded) { task_loader(); $loaded = true; } echo "memory usage: " . memory_get_usage() . "\n"; $msg = sprintf("start time: %s\n", date('H:i:s')); echo $msg; $n = 1; if (array_key_exists('nrecs', $options)) { $n = (int) $options['nrecs']; } if (!is_int($n) || $n < 1) { throw new Exception("il numero di atti deve essere un intero\n"); } if (count($args) > 0) { $argomenti = array(); foreach ($args as $cnt => $arg) { $id = TagPeer::getIdFromTagValue($arg); $xml_url = sprintf("http://parlamento.openpolis.it/xml/indici/tag/%d.xml", $id); $xsl_file = SF_ROOT_DIR . "/web/xml/indici/xslt/tagActsSorter.xslt"; printf("Argomento %s:\n", $arg, $id); getImportantActs($xml_url, $xsl_file, $n); print "\n"; } } $start_time = time(); $msg = sprintf("end time: %s\n", date('H:i:s')); echo $msg; $msg = sprintf("memory usage: %10d\n", memory_get_usage()); echo pakeColor::colorize($msg, array('fg' => 'red', 'bold' => false)); }
public function getConsolidatedKeywords($sLanguageId = null, $bReturnArray = false) { if ($sLanguageId == null) { $sLanguageId = Session::language(); } $aKeywords = array(); $aKeywords[] = TranslationPeer::getString('meta.keywords', null, ''); $aTags = TagPeer::tagInstancesForObject($this); foreach ($aTags as $iKey => $oTag) { $aTags[$iKey] = $oTag->getTag()->getName(); } $aKeywords[] = $aTags; $aKeywords[] = Settings::getSetting('frontend', 'keywords', ''); $aKeywords[] = $this->getActivePageString()->getMetaKeywords(); $aResult = array(); foreach ($aKeywords as $iKey => $mKeywords) { if (!is_array($mKeywords)) { $mKeywords = explode(',', $mKeywords); } foreach ($mKeywords as $sKeyword) { $sKeyword = trim($sKeyword); if (!isset($aResult[$sKeyword]) && $sKeyword !== '') { $aResult[$sKeyword] = true; } } } if ($bReturnArray) { return array_keys($aResult); } return implode(', ', array_keys($aResult)); }
public function executeTagList() { $c = new Criteria(); $c->add(sfSimpleBlogPostPeer::IS_PUBLISHED, true); $c->add(TaggingPeer::TAGGABLE_ID, TaggingPeer::TAGGABLE_ID.' = '. sfSimpleBlogPostPeer::ID, Criteria::CUSTOM); $this->tags = TagPeer::getPopulars($c); }
public function executeEditableTagsAutocomplete() { $this->my_str = $this->getRequestParameter('value'); $c = new Criteria(); $c->add(TagPeer::TRIPLE_VALUE, $this->my_str . "%", Criteria::LIKE); $this->tags = TagPeer::getAll($c); }
/** * Creates default criteria filter */ public static function setDefaultCriteriaFilter() { if (self::$s_criteria_filter == null) { self::$s_criteria_filter = new criteriaFilter(); } $c = KalturaCriteria::create(self::OM_CLASS); self::$s_criteria_filter->setFilter($c); }
public function executeToggleApproved() { $tag = TagPeer::retrieveByPK($this->getRequestParameter('id')); $this->forward404Unless($tag); $tag->setApproved(!$tag->getApproved()); $tag->save(); $this->redirect('tag/index'); }
public static function retrieveTagsFromTTPK($id) { $c = new Criteria(); $c->add(OppTagHasTtPeer::TESEOTT_ID, $id); $c->addJoin(OppTagHasTtPeer::TAG_ID, TagPeer::ID); $c->addAscendingOrderByColumn(TagPeer::TRIPLE_VALUE); return TagPeer::doSelect($c); }
/** * Executes index action * */ public function executeShow() { $c = new Criteria(); $c->add(TagPeer::NORMALIZED_TAG, $this->getRequestParameter('tag')); $this->tag = TagPeer::doSelectOne($c); $this->events = EventPeer::getTaggedEvents($this->getRequestParameter('tag')); $this->forward404Unless($this->events); }
public function getTags() { $c = new Criteria(); $c->add(OppTagHasTtPeer::TESEOTT_ID, $this->getId()); $c->addJoin(OppTagHasTtPeer::TAG_ID, TagPeer::ID); $c->addAscendingOrderByColumn(TagPeer::TRIPLE_VALUE); return TagPeer::doSelect($c); }
public function hasPeerFieldName($fieldName) { if (strpos($fieldName, '.') === false) { $fieldName = strtoupper($fieldName); $fieldName = "tag.{$fieldName}"; } $entryFields = TagPeer::getFieldNames(BasePeer::TYPE_COLNAME); return in_array($fieldName, $entryFields); }
public static function generate() { $urls = array(); $tags = TagPeer::getPopularTags(500); $urls[] = new sitemapURL("tag/list", date('Y-m-d\\TH:i:s\\Z'), 'daily', 1.0); foreach ($tags as $tag) { $urls[] = new sitemapURL("tag/" . $tag['tag'], date('Y-m-d\\TH:i:s\\Z'), 'daily', 1.0); } return $urls; }
protected function doClean($value) { $criteria = new Criteria(); $criteria->add(TagPeer::JOTAG, $value); $object = TagPeer::doSelectOne($criteria); if (is_null($object)) { throw new sfValidatorError($this, 'invalid', array('value' => $value)); } return $object->getId(); }
private function listTags() { $c = new Criteria(); $c->add(TagPeer::NAME, $this->getRequestParameter('name')); $tag = TagPeer::doSelectOne($c); $this->getResponse()->setTitle(sprintf('Planeta PHP.pl - Wpisy dla tagu: %s', $tag->getName())); $c = new Criteria(); $c->addJoin(PostTagPeer::POST_ID, PostPeer::ID, Criteria::LEFT_JOIN); $c->add(PostTagPeer::TAG_ID, $tag->getId()); return $c; }
public function getConfigurationModes() { $aResult = array(); $aResult['templates'] = AdminManager::getSiteTemplatesForListOutput(); $aResult['tags'] = array(); foreach (TagPeer::doSelect(new Criteria()) as $oTag) { $aResult['tags'][] = array('name' => $oTag->getName(), 'count' => $oTag->countTagInstances(), 'id' => $oTag->getId()); } $aResult['types'] = TagInstancePeer::getTaggedModels(); return $aResult; }
private function reloadByTag($tagId) { $c = new Criteria(); $this->routeObject = TagPeer::retrieveByPK($tagId); $ids = TaggingPeer::getJobIdsByTag($this->routeObject); $c->add(JobPeer::ID, $ids, Criteria::IN); $this->route = "job_listby_tag"; $this->propelType = "name"; $this->renderStatus = true; $this->viewingCaption = " taggings for " . $this->routeObject->__toString(); return $c; }
public static function getNamesForAutocomplete($q) { sfLoader::loadHelpers("Url"); $c = new Criteria(); $c->add(TagPeer::NAME, $q . "%", Criteria::LIKE); $c->setLimit(10); $names = array(); $tags = TagPeer::doSelect($c); foreach ($tags as $tag) { $names[] = array("id" => $tag->getId(), "name" => $tag->getName(), "searchUrl" => url_for("job_listby_tag", $tag)); } return $names; }
/** * Creates default criteria filter */ public static function setDefaultCriteriaFilter() { if (self::$s_criteria_filter == null) { self::$s_criteria_filter = new criteriaFilter(); } $c = KalturaCriteria::create(self::OM_CLASS); if (kEntitlementUtils::getEntitlementEnforcement()) { $privacyContexts = kEntitlementUtils::getKsPrivacyContextArray(); $c->addAnd(self::PRIVACY_CONTEXT, $privacyContexts, Criteria::IN); } $c->addAnd(self::INSTANCE_COUNT, 0, Criteria::GREATER_THAN); self::$s_criteria_filter->setFilter($c); }
/** * Handles badge action * * @param sfWebRequest $request Web request object */ public function executeBadge($request) { $this->jotag = TagPeer::getFromField(TagPeer::JOTAG, $request->getParameter('jotag')); $this->forward404Unless($this->jotag && $this->jotag->getStatus() == TagPeer::ST_ACTIVE); // get badge $this->badge = $this->jotag->getBadge(); // is authorized $this->authorized = TagPrivacyPeer::allowedToView($this->getUser(), $this->jotag); // reload $this->reload = $request->getParameter('reload') ? true : false; // build list of contact info $this->contacts = array(); $jotag =& $this->jotag; if ($jotag->getTagEmailsJoinEmail(EmailPeer::buildConfirmedCriteria())) { foreach ($jotag->getTagEmailsJoinEmail(EmailPeer::buildConfirmedCriteria()) as $k => $email) { $this->contacts["EMAIL"][] = $email->getEmail()->getEmail($this->authorized); } } if ($jotag->getTagPhonesJoinPhone()) { foreach ($jotag->getTagPhonesJoinPhone() as $k => $phone) { $this->contacts["PHONE"][] = array("number" => $phone->getPhone()->getNumber($this->authorized), "exten" => $phone->getPhone()->getExten($this->authorized)); } } if ($jotag->getTagUrlsJoinUrl()) { foreach ($jotag->getTagUrlsJoinUrl() as $k => $url) { $this->contacts["URL"][] = $url->getUrl()->getUrl($this->authorized); } } if ($jotag->getTagSNsJoinSN()) { foreach ($jotag->getTagSNsJoinSN() as $k => $sn) { $this->contacts["SN"][] = array("network" => $sn->getSN()->getNetwork(), "identifier" => $sn->getSN()->getIdentifier($this->authorized)); } } if ($jotag->getTagIMsJoinIM()) { foreach ($jotag->getTagIMsJoinIM() as $k => $im) { $this->contacts["IM"][] = array("network" => $im->getIM()->getNetwork(), "identifier" => $im->getIM()->getIdentifier($this->authorized)); } } if ($jotag->getTagCustomsJoinCustom()) { foreach ($jotag->getTagCustomsJoinCustom() as $k => $custom) { $this->contacts["CUSTOM"][] = array("netname" => $custom->getCustom()->getNetName(), "netid" => $custom->getCustom()->getNetId($this->authorized)); } } }
public function executeIndex() { $name = $this->getRequestParameter('tag', ''); $c = new Criteria(); if ($name) { $c->add(TagPeer::NAME, $name); $tag = TagPeer::doSelectOne($c); $this->forward404Unless($tag); $c->clear(); $c->addJoin(PostTagPeer::POST_ID, PostPeer::ID, Criteria::LEFT_JOIN); $c->add(PostTagPeer::TAG_ID, $tag->getId()); } $c->addDescendingOrderByColumn(PostPeer::CREATED_AT); $c->setLimit(sfConfig::get('app_posts_in_feed', 10)); $c->add(PostPeer::DELETED, false); $posts = PostPeer::doSelect($c); $this->feed = $this->createFeed($posts, $name); ReaderPeer::increment(); }
public static function newTagInstance($sTagName, $sModelName, $iTaggedItemId) { $sTagName = StringUtil::normalize($sTagName); $oTag = TagPeer::retrieveByName($sTagName); if ($oTag === null) { $oTag = new Tag(); $oTag->setName($sTagName); $oTag->save(); } $oTagInstance = self::retrieveByPK($oTag->getId(), $iTaggedItemId, $sModelName); if ($oTagInstance !== null) { throw new Exception("Instance of this tag does already exist"); } $oTagInstance = new TagInstance(); $oTagInstance->setTag($oTag); $oTagInstance->setModelName($sModelName); $oTagInstance->setTaggedItemId($iTaggedItemId); $oTagInstance->save(); return $oTagInstance; }
/** * @action search * * Action to search tags using a string of 3 letters or more. * @param KalturaTagFilter $tagFilter * @param KalturaFilterPager $pager * @return KalturaTagListResponse */ public function searchAction(KalturaTagFilter $tagFilter, KalturaFilterPager $pager = null) { if (!$tagFilter) { $tagFilter = new KalturaTagFilter(); } if (!$pager) { $pager = new KalturaFilterPager(); } $tagFilter->validate(); $c = KalturaCriteria::create(TagPeer::OM_CLASS); $tagCoreFilter = new TagFilter(); $tagFilter->toObject($tagCoreFilter); $tagCoreFilter->attachToCriteria($c); $pager->attachToCriteria($c); $tags = TagPeer::doSelect($c); $searchResponse = new KalturaTagListResponse(); $searchResponse->objects = KalturaTagArray::fromDbArray($tags); $searchResponse->totalCount = $c->getRecordsCount(); return $searchResponse; }
public function getIndexPage() { try { $c = new Criteria(); $c->add(TagPeer::TAG_ID, 'website_page_index'); $tag = TagPeer::doSelectOne($c); $c = new Criteria(); $c->add(RelationPeer::ID1, $this->getId()); $c->addJoin(RelationPeer::ID2, TagrelationPeer::ID); $c->add(TagrelationPeer::TAG_ID, $tag->getId()); $relation = RelationPeer::doSelectOne($c); if ($relation) { $indexPage = Document::getDocumentInstance($relation->getId2()); return $indexPage; } else { return null; } } catch (Exception $e) { throw $e; } }
public function executeSioccupadi() { $options = array('limit' => 20, 'sort_by_relevance' => true); // estrazione tag, tipo firma, tipo atto // questo dovrebbe andare in TagPeer, ma romperebbe la neutralità del plugin $c = new Criteria(); $c->addJoin(OppCaricaHasAttoPeer::ATTO_ID, OppAttoPeer::ID); $c->addJoin(TaggingPeer::TAGGABLE_ID, OppAttoPeer::ID); $c->addJoin(TagPeer::ID, TaggingPeer::TAG_ID); $c->add(OppCaricaHasAttoPeer::CARICA_ID, $this->carica->getId()); $c->add(TaggingPeer::TAGGABLE_MODEL, 'OppAtto'); $c->clearSelectColumns(); $c->addSelectColumn(TagPeer::TRIPLE_VALUE); $c->addSelectColumn(OppCaricaHasAttoPeer::TIPO); $c->addSelectColumn(OppAttoPeer::TIPO_ATTO_ID); // costruzione array associativo dei tag $tags = array(); $rs = TagPeer::doSelectRS($c); while ($rs->next()) { $value = $rs->getString(1); $tipo = $rs->getString(2); $tipo_atto_id = $rs->getInt(3); if (!array_key_exists($value, $tags)) { $tags[$value] = 0; } $tags[$value] += OppCaricaHasAttoPeer::get_fattore_firma($tipo) * OppAttoPeer::get_fattore_tipo_atto($tipo_atto_id); } // ordinamento per rilevanza, prima dello slice arsort($tags); // slice dell'array, se specificata l'opzione limit if (isset($options['limit']) && count($tags) > $options['limit']) { $this->n_remaining_tags = count($tags) - $options['limit']; $tags = array_slice($tags, 0, $options['limit'], true); } // ordinamento per triple_value, in caso sort_by_relevance non sia specificato if (!isset($options['sort_by_relevance']) || true !== $options['sort_by_relevance']) { krsort($tags); } $this->tags = $tags; }
protected function doClean($values) { $this->already_exists = null; $jotag = $values[$this->getOption('jotag')]; $user = sfContext::getInstance()->getUser()->getSubscriber(); $tag = TagPeer::getFromField(TagPeer::JOTAG,$jotag); if($tag && (!$user || ($tag->getUserId() != $user->getId()))) { $this->already_exists = $tag; $error = new sfValidatorError($this,'exist',array( $this->getOption('jotag')=>$jotag )); throw new sfValidatorErrorSchema($this,array($this->getOption('jotag')=>$error)); } elseif($tag) $values["jotag_object"] = $tag; // renewing jotag else $values["jotag_object"] = null; return $values; }
public function executeTagCloud() { $count = PostTagPeer::doCount(new Criteria()); $tags = TagPeer::getForCloud(); if (!empty($tags) && $count > 0) { foreach ($tags as &$tag) { $p = (double) $tag->getCount() / $count; if ($p > 0.3) { $tag->setSize('2.0'); } elseif ($p > 0.25) { $tag->setSize('1.8'); } elseif ($p > 0.2) { $tag->setSize('1.6'); } elseif ($p > 0.15) { $tag->setSize('1.4'); } else { $tag->setSize('1.0'); } } $this->tags = $tags; } else { $this->tags = array(); } }
/** * Get the associated Tag object * * @param PropelPDO Optional Connection object. * @return Tag The associated Tag object. * @throws PropelException */ public function getTag(PropelPDO $con = null) { if ($this->aTag === null && $this->tag_id !== null) { $c = new Criteria(TagPeer::DATABASE_NAME); $c->add(TagPeer::ID, $this->tag_id); $this->aTag = TagPeer::doSelectOne($c, $con); /* The following can be used additionally to guarantee the related object contains a reference to this object. This level of coupling may, however, be undesirable since it could result in an only partially populated collection in the referenced object. $this->aTag->addTaggings($this); */ } return $this->aTag; }
<?php define('SF_ROOT_DIR', realpath(dirname(__FILE__) . '/../..')); define('SF_APP', 'fe'); define('SF_ENVIRONMENT', 'prod'); define('SF_DEBUG', true); require_once SF_ROOT_DIR . DIRECTORY_SEPARATOR . 'apps' . DIRECTORY_SEPARATOR . SF_APP . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'config.php'; sfContext::getInstance(); $ids = array(5, 5, 5, 5, 5, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 11, 11, 11, 11, 13, 13, 13, 15, 15, 15, 15, 15, 15, 15, 17, 17, 17, 21, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 25, 30, 30, 40, 40, 40, 40, 40, 40, 40, 45, 45, 52, 52, 52, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 57, 57, 57, 57, 58, 69, 69, 69, 69, 69, 69, 69, 90, 90, 90, 90, 103, 115, 116, 116, 116, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 134, 134, 136, 136, 139, 141, 141, 141, 141, 141, 143, 150, 151, 151, 151, 151, 151, 151, 151, 153, 153, 153, 153, 153, 173, 174, 197, 197, 197, 197, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 211, 211, 211, 211, 215, 222, 222, 222, 222, 235, 235, 235, 238, 238, 238, 238, 238, 238, 264, 264, 264, 264, 264, 264, 264, 271, 271, 272, 276, 276, 276, 276, 285, 285, 285, 285, 285, 285, 289, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 304, 313, 313, 313, 317, 317, 317, 321, 321, 321, 321, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 361, 361, 373, 376, 376, 383, 383, 383, 393, 393, 393, 395, 395, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 497, 497, 497, 497, 497, 504, 504, 504, 504, 504, 505, 505, 505, 507, 510, 510, 510, 512, 512, 512, 514, 516, 516, 516, 516, 516, 517, 517, 517, 517, 517, 518, 518, 521, 521, 521, 521, 521, 521, 523, 523, 523, 523, 523, 523, 523, 523, 523, 524, 525, 528, 530, 532, 532, 532, 537, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 547, 550, 550, 550, 550, 554, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 562, 562, 562, 562, 562, 562, 563, 563, 563, 563, 563, 563, 565, 565, 565, 565, 565, 565, 567, 568, 576, 576, 577, 577, 577, 578, 578, 578, 580, 580, 580, 581, 581, 581, 583, 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, 588, 597, 597, 597, 597, 597, 601, 611, 611, 626, 626, 626, 626, 626, 626, 626, 626, 626, 640, 640, 640, 640, 640, 640, 644, 644, 646, 652, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 653, 657, 657, 657, 657, 661, 661, 661, 661, 661, 661, 661, 661, 661, 663, 664, 669, 669, 669, 669, 669, 669, 670, 673, 673, 673, 673, 673, 673, 674, 674, 674, 674, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 675, 704, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, 714, 716, 718, 718, 718, 718, 721, 721, 723, 723, 723, 723, 723, 723, 723, 724, 724, 724, 724, 724, 736, 736, 738, 738, 740, 748, 748, 748, 748, 748, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 758, 759, 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, 779, 779, 779, 779, 779, 779, 779, 779, 779, 779, 780, 780, 780, 782, 785, 785, 785, 785, 785, 785, 785, 786, 786, 792, 792, 792, 792, 793, 798, 802, 802, 802, 802, 813, 813, 813, 813, 813, 813, 813, 813, 813, 813, 813, 814, 814, 814, 817, 817, 817, 822, 822, 822, 822, 822, 822, 822, 822, 822, 822, 822, 822, 822, 822, 822, 822, 822, 825, 825, 825, 826, 826, 826, 826, 826, 826, 826, 826, 832, 836, 836, 836, 836, 838, 838, 838, 838, 838, 838, 838, 838, 838, 840, 840, 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, 845, 848, 850, 852, 852, 852, 852, 852, 852, 852, 852, 852, 852, 852, 854, 854, 854, 854, 854, 854, 854, 854, 854, 854, 857, 857, 857, 857, 860, 860, 873, 873, 873, 888, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 896, 898, 898, 898, 898, 902, 902, 902, 902, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 919, 919, 919, 919, 919, 931, 931, 931, 938, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 939, 943, 946, 946, 952, 952, 952, 952, 952, 953, 953, 953, 960, 960, 962, 962, 966, 966, 966, 966, 966, 968, 968, 988, 988, 988, 988, 990, 990, 990, 1000, 1000, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1009, 1009, 1009, 1009, 1010, 1010, 1010, 1010, 1013, 1013, 1013, 1017, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1037, 1037, 1046, 1050, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1061, 1061, 1061, 1061, 1061, 1061, 1064, 1064, 1070, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1077, 1077, 1079, 1079, 1083, 1083, 1083, 1083, 1083, 1085, 1085, 1085, 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1090, 1090, 1092, 1093, 1093, 1099, 1100, 1101, 1101, 1101, 1101, 1101, 1103, 1103, 1103, 1103, 1103, 1107, 1107, 1110, 1111, 1111, 1112, 1112, 1112, 1112, 1112, 1113, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1122, 1123, 1123, 1123, 1128, 1128, 1128, 1128, 1128, 1128, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1143, 1143, 1144, 1156, 1156, 1158, 1158, 1158, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1162, 1162, 1162, 1162, 1162, 1162, 1170, 1170, 1173, 1173, 1173, 1181, 1181, 1181, 1181, 1190, 1190, 1190, 1190, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1194, 1194, 1210, 1213, 1218, 1218, 1224, 1234, 1234, 1234, 1234, 1234, 1234, 1234, 1237, 1237, 1237, 1237, 1246, 1257, 1257, 1257, 1257, 1257, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1274, 1277, 1277, 1277, 1277, 1281, 1281, 1281, 1281, 1282, 1282, 1284, 1284, 1284, 1284, 1286, 1286, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1291, 1291, 1294, 1294, 1294, 1294, 1294, 1294, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1302, 1302, 1302, 1302, 1302, 1302, 1304, 1304, 1304, 1304, 1304, 1304, 1307, 1311, 1314, 1314, 1314, 1314, 1314, 1319, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1335, 1338, 1338, 1338, 1338, 1338, 1350, 1355, 1355, 1355, 1355, 1355, 1360, 1360, 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1392, 1394, 1394, 1394, 1394, 1394, 1407, 1407, 1407, 1407, 1409, 1411, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1423, 1423, 1424, 1425, 1425, 1425, 1425, 1425, 1425, 1439, 1439, 1439, 1439, 1439, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1507, 1507, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1518, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1524, 1533, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1541, 1541, 1541, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1552, 1552, 1552, 1552, 1552, 1553, 1557, 1557, 1557, 1557, 1558, 1558, 1558, 1560, 1561, 1561, 1562, 1564, 1566, 1574, 1577, 1577, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1581, 1581, 1581, 1584, 1584, 1584, 1584, 1584, 1603, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1611, 1611, 1611, 1613, 1615, 1618, 1618, 1618, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1623, 1623, 1624, 1624, 1624, 1624, 1624, 1624, 1627, 1627, 1627, 1627, 1627, 1627, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1635, 1636, 1638, 1638, 1639, 1639, 1649, 1649, 1649, 1650, 1655, 1656, 1656, 1656, 1657, 1657, 1657, 1657, 1658, 1658, 1658, 1660, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1663, 1663, 1665, 1665, 1673, 1673, 1673, 1674, 1674, 1674, 1674, 1676, 1676, 1677, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1686, 1704, 1707, 1707, 1707, 1707, 1707, 1711, 1713, 1713, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1749, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1775, 1775, 1775, 1775, 1783, 1783, 1783, 1786, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1799, 1803, 1804, 1804, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1829, 1829, 1829, 1829, 1829, 1829, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1833, 1833, 1833, 1839, 1839, 1839, 1839, 1839, 1850, 1850, 1850, 1850, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1855, 1856, 1861, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1868, 1868, 1868, 1868, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1882, 1883, 1884, 1884, 1884, 1884, 1887, 1887, 1887, 1895, 1899, 1899, 1899, 1899, 1899, 1906, 1906, 1906, 1907, 1908, 1908, 1911, 1911, 1911, 1912, 1912, 1912, 1917, 1918, 1918, 1919, 1922, 1923, 1923, 1924, 1924, 1925, 1925, 1926, 1926, 1927, 1927, 1928, 1928, 1930, 1930, 1931, 1931, 1932, 1934, 1935, 1937, 1937, 1938, 1938, 1942, 1942, 1945, 1946, 1946, 1949, 1949, 1950, 1950, 1951, 1951, 1952, 1952, 1956, 1956, 1958, 1959, 1959, 1961, 1961, 1965, 1965, 1967, 1969, 1969, 1970, 1970, 1971, 1971, 1972, 1972, 1973, 1973, 1974, 1974, 1977, 1977, 1982, 1982, 1983, 1983, 1985, 1985, 1988, 1988, 1990, 1990, 1993, 1993, 1996, 1996, 1997, 2000, 2000, 2001, 2001, 2003, 2003, 2004, 2004, 2005, 2005, 2006, 2006, 2008, 2008, 2013, 2016, 2016, 2018, 2019, 2021, 2021, 2023, 2024, 2024, 2025, 2025, 2026, 2029, 2029, 2032, 2032, 2035, 2035, 2036, 2036, 2037, 2037, 2038, 2039, 2040, 2040, 2042, 2043, 2044, 2045, 2045, 2046, 2048, 2048, 2049, 2050, 2050, 2052, 2055, 2056, 2057, 2058, 2061, 2061, 2062, 2062, 2062, 2066, 2067, 2068, 2069, 2069, 2070, 2070, 2071, 2072, 2073, 2073, 2073, 2073, 2075, 2075, 2076, 2076, 2076, 2077, 2077, 2077, 2077, 2077, 2078, 2078, 2080, 2080, 2082, 2082, 2083, 2085, 2085, 2086, 2086, 2089, 2090, 2090, 2092, 2092, 2093, 2094, 2094, 2095, 2095, 2096, 2100, 2103, 2104, 2105, 2105, 2107, 2108, 2110, 2113, 2115, 2117, 2118, 2121, 2123, 2123, 2125, 2126, 2127, 2128, 2130, 2133, 2135, 2135, 2136, 2137, 2138, 2139, 2140, 2145, 2145, 2147, 2147, 2149, 2150, 2152, 2156, 2171, 2190, 2195, 2206, 2207, 2250, 2250, 2250, 2250, 2253, 2259, 2260, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 2271, 2271, 2271, 2271, 2273, 2273, 2273, 2275, 2275, 2275, 2278, 2278, 2300, 2300, 2300, 2300, 2300, 2300, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2314, 2325, 2328, 2336, 2346, 2346, 2362, 2368, 2368, 2368, 2370, 2371, 2389, 2400, 2401, 2403, 2406, 2407, 3254, 4242, 4242, 4247, 4248, 4250, 4251, 4255, 4257, 4258, 4259, 4264, 4264, 4264, 4264, 4264, 4264, 4278, 4280, 4280, 4280, 4280, 4280, 4280, 4280, 4282, 4288, 4288, 4305, 4305, 4305, 4305, 4306, 4307, 4314, 4319, 4319, 4319, 4319, 4319, 4319, 4319, 4319, 4319, 4319, 4319, 4319, 4321, 4328, 4331, 4331, 4331, 4331, 4349, 4354, 4354, 4354, 4354, 4354, 4354, 4354, 4354, 4354, 4354, 4354, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4357, 4368, 4375, 4376, 4376, 4377, 4377, 4379, 4384, 4388, 4388, 4388, 4388, 4388, 4388, 4388, 4388, 4413, 4434, 4434, 4434, 4434, 4438, 4448, 4448, 4448, 4448, 4448, 4448, 4448, 4448, 4458, 4458, 4474, 4474, 4474, 4474, 4474, 4474, 4474, 4474, 4484, 4484, 4484, 4484, 4484, 4503, 4503, 4503, 4503, 4503, 4509, 4510, 4518, 4523, 4528, 4536, 4536, 4536, 4536, 4536, 4536, 4536, 4536, 4536, 4536, 4536, 4536, 4542, 4542, 4542, 4542, 4542, 4547, 4560, 4563, 4567, 4567, 4567, 4571, 4588, 4588, 4591, 4591, 4591, 4618, 4618, 4618, 4618, 4618, 4653, 4653, 4653, 4653, 4657, 4657, 4657, 4668, 4674, 4674, 4674, 4690, 4690, 4690, 4690, 4690, 4690, 4690, 4690, 4690, 4690, 4690, 4702, 4702, 4702, 4703, 4703, 4703, 4703, 4710, 4718, 4729, 4729, 4729, 4729, 4729, 4730, 4732, 4740, 4740, 4740, 4740, 4740, 4762, 4763, 4763, 4763, 4763, 4763, 4763, 4768, 4777, 4791, 4791, 4792, 4793, 4801, 4805, 4817, 4818, 4825, 4832, 4843, 4846, 4847, 4871, 4871, 4871, 4871, 4900, 4900, 4908, 4913, 4913, 4913, 4922, 4928, 4931, 4932, 4932, 4932, 4932, 4936, 4936, 4936, 4936, 4936, 4936, 4936, 4955, 4955, 4955, 4955, 4955, 4955, 4955, 4955, 4955, 4955, 4955, 4957, 4958, 4968, 4969, 4977, 4989, 4989, 4989, 4989, 4989, 4989, 4989, 4989, 4990, 5001, 5001, 5001, 5001, 5001, 5007, 5007, 5031, 5032, 5033, 5037, 5037, 5037, 5039, 5044, 5050, 5051, 5059, 5062, 5067, 5072, 5073, 5073, 5073, 5073, 5073, 5073, 5073, 5073, 5073, 5073, 5073, 5073, 5092, 5093, 5094, 5095, 5096, 5108, 5116, 5130, 5137, 5138, 5162, 5162, 5162, 5162, 5162, 5162, 5162, 5162, 5162, 5162, 5162, 5162, 5162, 5162, 5162, 5167, 5178, 5178, 5180, 5186, 5186, 5186, 5186, 5186, 5186, 5186, 5186, 5186, 5208, 5208, 5208, 5208, 5208, 5208, 5236, 5237, 5238, 5268, 5272, 5301, 5309, 5320, 5320, 5321, 5328, 5328, 5328, 5331, 5336, 5336, 5336, 5336, 5336, 5336, 5336, 5336, 5341, 5341, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5351, 5355, 5357, 5370, 5370, 5370, 5373, 5376, 5382, 5382, 5382, 5382, 5389, 5389, 5389, 5389, 5389, 5389, 5389, 5389, 5389, 5389, 5389, 5430, 5431, 5436, 5436, 5436, 5438, 5468, 5469, 5471, 5473, 5474, 5478, 5513, 5516, 5523, 5526, 5538, 5547, 5548, 5561, 5561, 5561, 5561, 5561, 5561, 5561, 5561, 5561, 5568, 5568, 5568, 5569, 5569, 5569, 5569, 5570, 5576, 5577, 5586, 5586, 5589, 5606, 5606, 5606, 5611, 5614, 5626, 5626, 5626, 5626, 5629, 5647, 5647, 5647, 5647, 5665, 5675, 5675, 5688, 5688, 5688, 5689, 5689, 5689, 5703, 5709, 5720, 5725, 5725, 5725, 5726, 5726, 5726, 5750, 5757, 5757, 5760, 5760, 5760, 5760, 5760, 5760, 5760, 5760, 5772, 5788, 5790, 5792, 5799, 5799, 5799, 5807, 5813, 5813, 5813, 5813, 5813, 5813, 5813, 5813, 5813, 5813, 5829, 5829, 5836, 5837, 5852, 5860, 5864, 5866, 5870, 5870, 5870, 5870, 5870, 5870, 5870, 5870, 5870, 5870, 5882, 5895, 5895, 5896, 5897, 5899, 5906, 5915, 5918, 5919, 5926, 5929, 5929, 5929, 5930, 5931, 5932, 5934, 5943, 5985, 5985, 5985, 5988, 6000, 6004, 6005, 6007, 6009, 6009, 6009, 6009, 6009, 6009, 6009, 6009, 6009, 6016, 6017, 6019, 6019, 6019, 6025, 6040, 6050, 6053, 6057, 6059, 6077, 6086, 6091, 6092, 6099, 6101, 6112, 6112, 6112, 6121, 6121, 6121, 6121, 6121, 6126, 6129, 6146, 6146, 6146, 6146, 6146, 6146, 6146, 6157, 6188, 6188, 6191, 6191, 6199, 6199, 6199, 6207, 6207, 6213, 6217, 6223, 6223, 6254, 6269, 6269, 6269, 6269, 6280, 6280, 6280, 6281, 6291, 6299, 6306, 6363, 6369, 6386, 6401, 6407, 6429, 6430, 6458, 6470, 6472, 6474, 6474, 6474, 6474, 6474, 6474, 6474, 6501, 6504, 6504, 6510, 6515, 6515, 6533, 6535, 6535, 6535, 6535, 6547, 6547, 6564, 6568, 6569, 6577, 6586, 6591, 6593, 6600, 6602, 6627, 6633, 6633, 6633, 6633, 6633, 6633, 6634, 6671, 6671, 6671, 6671, 6671, 6675, 6675, 6683, 6690, 6694, 6697, 6734, 6734, 6734, 6734, 6734, 6734, 6734, 6734, 6734, 6751, 6812, 6812, 6812, 6812, 6812, 6812, 6812, 6812, 6812, 6812, 6824, 6829, 6830, 6834, 6834, 6834, 6836, 6838, 6854, 6894, 6894, 6894, 6899, 6903, 6943, 6972, 6972, 6972, 6972, 7021, 7025, 7028, 7036, 7054, 7065, 7065, 7069, 7070, 7079, 7082, 7083, 7086, 7086, 7097, 7098, 7099, 7104, 7104, 7110, 7121, 7123, 7127, 7130, 7134, 7140, 7143, 7144, 7159, 7171, 7172, 7188, 7189, 7191, 7206, 7206, 7234, 7245, 7245, 7250, 7288, 7300, 7304, 7304, 7304, 7304, 7304, 7304, 7304, 7304, 7304, 7304, 7306, 7313, 7313, 7335, 7344, 7344, 7351, 7351, 7364, 7366, 7366, 7366, 7366, 7366, 7366, 7366, 7366, 7366, 7368, 7371, 7371, 7374, 7375, 7380, 7380, 7380, 7380, 7380, 7380, 7380, 7383, 7394, 7398, 7403, 7403, 7403, 7403, 7404, 7405, 7406, 7408, 7409, 7409, 7418, 7431, 7436, 7453, 7455, 7457, 7469, 7489, 7655, 7657, 7657, 7660, 7660, 7660, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7672, 7681, 7682, 7683, 7684, 7686, 7688, 7689, 7694, 7702, 7702, 7706, 7708, 7709, 7712, 7713, 7713, 7713, 7715, 7715, 7726, 7726, 7726, 7726, 7726, 7734, 7734, 7734, 7734, 7743, 7744, 7744, 7744, 7744, 7747, 7751, 7751, 7773, 7775, 7775, 7777, 7779, 7779, 7790, 7790, 7791, 7791, 7791, 7791, 7791, 7791, 7792, 7793, 7795, 7795, 7796, 7797, 7797, 7800, 7802, 7808, 7823, 7825, 7834, 7890, 7890, 7890, 7895, 7896, 7928, 7977, 7977, 7977, 7977, 7982, 7982, 7982, 8025, 8025, 8065, 8074, 8088, 8129, 8131, 8163, 8163, 8166, 8182, 8182, 8183, 8183, 8184, 8184, 8261, 8271, 8276, 8368, 8369, 11002, 11002, 11002, 11002, 11162, 11372, 11707, 11707, 11802, 11802, 15320, 15320, 15320, 15320, 15320, 15320, 15320, 15986, 16044, 16054, 16054, 16054, 16054, 16054, 17726, 20116, 41578, 41864, 43571, 44749, 45760, 45760, 45760, 46180, 46188, 54319, 55001, 55610, 55615, 55615, 56116, 56116, 57605, 57605, 58116, 61089, 61169, 67726, 68116, 69116, 69116, 71578, 71864, 71864, 79216, 79772, 146854, 146903, 146904, 153890, 153890, 186416, 411089); foreach ($ids as $key => $id) { $res = TagPeer::retrieveByPk($id); if (!$res) { echo $id . "\n"; } }