$script = @@
factor_names = ['_BM25F_St_z_meta_title',
 '_BM25F_Lm_z_meta_title',
 '_BM25F_Sy_z_meta_title',
 'factor_3',
 'factor_4',
 'factor_5',
 'STAT_meta_isWiki',
 'STAT_meta_isServices',
 'STAT_meta_isDoc',
 '_BM25F_Sy_z_meta_full_name',
 '_BM25F_Lm_z_meta_keywords',
 '_BM25F_Sy_z_meta_keywords',
 '_BM25F_St_z_meta_full_name',
 '_BM25F_St_z_meta_keywords',
 '_BM25F_Lm_z_meta_full_name',
 '_BM25F_St_z_meta_content',
 '_BM25F_Lm_z_meta_content',
 '_BM25F_Sy_z_meta_content',
 'STAT_meta_isEmpty',
 'STAT_meta_modifiedAt',
 'STAT_meta_pageSerpClicks',
 'factor_21',
 'STAT_meta_isHR',
 'STAT_meta_isUser',
 'STAT_meta_nesting',
 'STAT_meta_isVodstvo',
 'STAT_meta_pageViews',
 '_BM25F_St_z_meta_owner',
 'factor_28',
 'factor_29',
 '_BM25F_Lm_z_meta_subtitle',
 '_BM25F_St_z_meta_minortitle',
 '_BM25F_St_z_meta_cluster_one',
 '_BM25F_Sy_z_meta_subtitle',
 'factor_34',
 '_BM25F_Sy_z_meta_owner',
 '_BM25F_Lm_z_meta_cluster_one',
 '_BM25F_Lm_z_meta_minortitle',
 '_BM25F_Sy_z_meta_minortitle',
 '_BM25F_St_z_meta_breadcrumbs',
 '_BM25F_Sy_z_meta_breadcrumbs',
 '_BM25F_Sy_z_meta_cluster_one',
 '_BM25F_St_z_meta_subtitle',
 '_BM25F_Lm_z_meta_owner',
 '_BM25F_Lm_z_meta_breadcrumbs',
 'STAT_meta_favoritedCount',
 'STAT_meta_descendantsCount',
 'STAT_meta_userCluster',
 'STAT_meta_commentsCount',
 'STAT_meta_filesCount',
 'STAT_meta_modifiersCount',
 'STAT_meta_linkedFromCount',
 'STAT_meta_createdAt',
 '_BM25F_Sy_z_meta_tag_one',
 '_BM25F_St_z_meta_tag_one',
 '_BM25F_Lm_z_meta_tag_one',
 '_BM25F_Sy_z_meta_tickets',
 '_BM25F_Lm_z_meta_tickets',
 '_BM25F_St_z_meta_tickets',
 'STAT_meta_isTrashTitle',
 'STAT_meta_isPrWaves',
 '_BM25F_St_z_meta_links_urls',
 '_BM25F_Lm_z_meta_links_texts',
 '_BM25F_Lm_z_meta_links_urls',
 '_BM25F_Sy_z_meta_links_texts',
 '_BM25F_St_z_meta_links_texts',
 '_BM25F_Sy_z_meta_links_urls',
 '_BM25F_Sy_z_meta_intlinks',
 '_BM25F_St_z_meta_product',
 '_BM25F_Sy_z_meta_extlinks',
 '_BM25F_Lm_z_meta_parents',
 '_BM25F_St_z_meta_parents',
 '_BM25F_Lm_z_meta_intlinks',
 '_BM25F_Lm_z_meta_extlinks',
 '_BM25F_St_z_meta_links',
 '_BM25F_Sy_z_meta_links',
 '_BM25F_Lm_z_meta_product',
 '_BM25F_St_z_meta_intlinks',
 '_BM25F_St_z_meta_extlinks',
 '_BM25F_Sy_z_meta_product',
 '_BM25F_Lm_z_meta_links',
 '_BM25F_Sy_z_meta_parents',
 'STAT_meta_isStartPage',
 'STAT_meta_viewsCount',
 'STAT_meta_isArchive',
 'STAT_meta_isExternal',
 'STAT_meta_extlinksCount',
 'STAT_meta_isWikiDoc',
 'factor_88',
 'factor_89',
 'factor_90',
 'factor_91',
 'factor_92',
 'factor_93',
 'factor_94',
 'factor_95',
 'factor_96',
 'factor_97',
 'factor_98',
 'factor_99',
 'TLen',
 'LongQuery',
 'DocLen',
 'TR',
 'factor_104',
 'factor_105',
 'factor_106',
 'factor_107',
 'factor_108',
 'factor_109',
 'factor_110',
 'factor_111',
 'factor_112',
 'factor_113',
 'factor_114',
 'factor_115',
 'factor_116',
 'factor_117',
 'factor_118',
 'factor_119',
 'factor_120',
 'factor_121',
 'factor_122',
 'factor_123',
 'factor_124',
 'factor_125',
 'factor_126',
 'factor_127',
 'factor_128',
 'factor_129',
 'factor_130',
 'factor_131',
 'factor_132',
 'factor_133',
 'factor_134',
 'factor_135',
 'factor_136',
 'factor_137',
 'factor_138',
 'factor_139',
 'factor_140',
 'factor_141',
 'factor_142',
 'factor_143',
 'factor_144',
 'factor_145',
 'factor_146',
 'factor_147',
 'factor_148',
 'factor_149',
 'factor_150',
 'factor_151',
 'STAT_lego_isCurrent',
 'STAT_lego_isDescription',
 'STAT_lego_libPopularity',
 'STAT_lego_pageViews',
 'factor_156',
 'factor_157',
 'factor_158',
 'factor_159',
 'factor_160',
 'factor_161',
 'factor_162',
 'factor_163',
 'factor_164',
 'factor_165',
 'factor_166',
 'factor_167',
 'factor_168',
 '_BM25F_Lm_z_lego_content',
 'factor_170',
 '_BM25F_Sy_z_lego_content',
 '_BM25F_St_z_lego_block',
 '_BM25F_Sy_z_lego_block',
 '_BM25F_Lm_z_lego_block',
 '_BM25F_Sy_z_lego_title',
 '_BM25F_Lm_z_lego_title',
 '_BM25F_St_z_lego_title',
 '_BM25F_St_z_lego_content',
 'factor_179',
 'factor_180',
 '_BM25F_Sy_z_lego_library',
 '_BM25F_Lm_z_lego_library',
 '_BM25F_St_z_lego_library',
 '_BM25F_Sy_z_meta_abc_service',
 '_BM25F_Lm_z_meta_abc_service',
 '_BM25F_St_z_meta_abc_service',
 'InvWordCount',
 'AbsolutePLM',
 'Bclm',
 'TxtBm25Sy',
 'Bclm2',
 'Tocm',
 'TitleTrigramsTitle',
 'TextBM25_Fm_W1',
 'TxtBm25Ex',
 'TextBM25',
 'TextBM25_Sy_W1',
 'TxtHeadSy',
 'YmwFull2',
 'TxtHeadEx',
 'TxtHead',
 'TxtBreakSy',
 'TxtBreakEx',
 'PrBonus',
 'TRp1',
 'TRp2',
 'TRtitle',
 'TRhr',
 'TRhitw',
 'SubqueryThMatch',
 'TRref',
 'TRboost',
 'TRLRlemma',
 'TRUnmapped',
 'TxtPair',
 'TxtBreak',
 'TxtHiRel',
 'HasNoTR',
 'TxtPairEx',
 'TxtHiRelEx',
 'TxtPairSy',
 'TxtHiRelSy',
 'Megafon',
 'SoftAndOk',
 'HasNoAllWordsTRSy',
 'NumWordsTRSy',
 'HasAllWordsTRSy',
 'TxtInvPair',
 'TxtSkipPair',
 'NumWordsTRFm',
 'HasAllWordsTRFm',
 'ExactWordOrderLen',
 'ExactWordOrderWeight',
 'WordOrderLen',
 'WordOrderWeight',
 'TRp1All',
 'LRp1All',
 'PassageLegacyTR',
 'TxtBM25AttenSyn',
 'TRWithStops',
 'LRWithStops',
 'AuxTextBM25',
 'Has2ExactQueryParts',
 'HasLevensht1QueryFragment',
 'LargestSyInexactGroup',
 'HasTextPos',
 'QSegmentsBM25',
 'QSegmentsWeight',
 'TextMaxForms',
 'TextWeightedForms',
 'TextForms',
 'TR_W1',
 'TxtPair_W1',
 'LanguageCompliance',
 'BM25FdPR_obsolete',
 'FieldLM',
 'TitleTrigramsQuery',
 'QueryWordSequencesTR',
 'DmozThemeMatchAll',
 'DmozThemeMatchBest',
 'Mpsa',
 'BclmLite',
 'AuxCTextBM25',
 'AuxCLinkBM25',
 'QueryWordCohesionTR',
 'IdfVariance',
 'NationalLanguage',
 'FiltrationSegments',
 'LanguageGoodForTurkey',
 'DBM25_2',
 'QueryDOwnerWeightedSumFRCAndBM25FdPRFixed',
 'DBM30Smerch',
 'DBM40',
 'DBMNumbers',
 'DBMGeo',
 'DBMSubstantive',
 'Bocm',
 'FioMatch',
 'BclmMax',
 'DBM15Wares',
 'DBM15Wares2',
 'WeightedSumIsIndexPageBocm',
 'AuxTitleBM25',
 'QueryDocTitleRangesMatchingScore',
 'XfDtShowAllMaxFFieldSet2Bm15FLogK0001',
 'XfDtShowAllMaxFFieldSet3BclmWeightedFLogW0K0001',
 'XfDtShowAllMaxFFieldSetUTBm15FLogW0',
 'XfDtShowAllMaxFTextCosineMatchMaxPrediction',
 'XfDtShowAllSumW2FSumWFieldSetUTBm15FLogW0',
 'XfDtShowAllSumWFSumWBodyMinWindowSize',
 'XfDtShowBagOfWordsFieldSetBagOfWordsOriginalRequestFractionExact',
 'XfDtShowBagOfWordsTitleCosineMaxMatch',
 'XfDtShowTopMinWFFieldSet3BclmWeightedFLogW0K0001',
 'XfDtShowTopSumW2FSumWBodyChain0Wcm',
 'XfDtShowTopSumWFSumWFieldSet3BclmWeightedFLogW0K0001',
 'TitleBm15K01',
 'TitleBocm15K001',
 'TextBm11Norm16384',
 'TextBocm11Norm256',
 'TextCosineMatchMaxPrediction',
 'FieldSet2Bm15FLogK0001',
 'FieldSet3BclmWeightedFLogW0K0001',
 'FieldSetUTBm15FLogW0K00001',
 'BodyChain0Wcm',
 'BodyPairMinProximity',
 'BodyMinWindowSize',
 'DssmLongMiddleShortVsHardClicks',
 'DssmLongVsMiddleShortNoClicks',
 'DssmMiddleVsShortLongHardNoClicks',
 'DssmShortVsMiddleLongHardNoClicks',
 'DssmNOVsShortMiddleLongHardClicks',
 'DssmLongVsShortMiddleHardClicks',
 'DssmMiddleLongVsShortHardClicks',
 'DssmShortMiddleLongVsHardNoClicks',
 'RequestWithRegionNameTextBm11Norm16384',
 'RequestWithRegionNameTextCosineMatchMaxPrediction',
 'RequestWithRegionNameFieldSet2Bm15FLogK0001',
 'RequestWithRegionNameFieldSet3BclmWeightedFLogW0K0001',
 'RequestWithRegionNameBodyChain0Wcm',
 'DssmLogDwellTimeBigrams',
 'XfDtShowTopSumW2FSumWFieldSet5AvgPerTrigramMaxValueAny',
 'DssmLogDwelltimeBigramsL2',
 'DssmBigramsQueryDerivativeMin',
 'DssmBigramsQueryDerivativeMax',
 'DssmBigramsQueryDerivativeMoment2Central',
 'DssmBigramsQueryDerivativeMoment3Central',
 'QfufTopSumWFSumWFieldSet3BclmWeightedFLogW0K0001',
 'QueryToTextAllSumWFSumWBodyMinWindowSize',
 'QueryToTextTopMinWFBodyMinWindowSize',
 'QfufAllMaxFFieldSetUTBm15FLogW0K00001',
 'QfufAllSumWFSumWFieldSet3BclmWeightedFLogW0K0001',
 'QueryToTextAllSumFCountBodyPairMinProximity',
 'QueryToTextAllSumFCountTextBocm11Norm256',
 'QfufAllMaxFTextCosineMatchMaxPrediction',
 'QfufAllMaxFTextBocm11Norm256',
 'QfufTopSumWFSumWFieldSetUTBm15FLogW0K00001',
 'DssmOneClickProbability',
 'DssmQueryDwellTime',
 'AllMatchedWordWeightsSum',
 'StringMatchedWordWeightsSum',
 'AllMatchedWordWeightsSumText',
 'AllMatchedWordWeightsSumLink',
 'StringMatchedWordWeightsSumLink',
 'AllMatchedWordFiltrationModelWeightsSum',
 'StringMatchedWordFiltrationModelWeightsSum',
 'LemmaMatchedWordFiltrationModelWeightsSum',
 'AllMatchedWordFiltrationModelWeightsSumLink',
 'StringMatchedWordFiltrationModelWeightsSumLink',
 'BM25FdPRFixedNoLinks',
 'NoApproxSmallWindowAttenuation',
 'NoApproxSmallWindowAttenuationQ',
 'DssmMainContentKeywords',
 'DssmCtrNoMiner',
 'DssmLogDtBigramsAMHardQueriesNoClicks',
 'XfDtShowKnnAllMaxWFFieldSet3BclmWeightedFLogW0K0001',
 'XfDtShowKnnAllMaxWFFieldSet2Bm15FLogK0001',
 'XfDtShowKnnBagOfWordsFieldSetBagOfWordsOriginalRequestFraction',
 'XfDtShowKnnAllMaxWFSumWQueryDwellTimeMixMatchWeightedValue',
 'XfDtShowKnnAllSumW2FSumWTitleBm15K01',
 'XfDtShowKnnTopMinFFieldSet3BclmWeightedFLogW0K0001',
 'XfDtShowKnnAllSumW2FSumWFieldSet3BclmWeightedFLogW0K0001',
 'XfDtShowKnnAllMaxWFFieldSet1Bm15FLogK0001',
 'XfDtShowKnnAllSumWFSumWFieldSet1Bm15FLogK0001',
 'XfDtShowKnnBagOfWordsLongClickSPAnnotationMatchAvgValue',
 'XfDtShowKnnTopSumW2FSumWFieldSet1Bm15FLogK0001',
 'XfDtShowKnnTopMinWFMaxWFieldSet1Bm15FLogK0001',
 'XfDtShowKnnAllMaxWFSumWBodyPairMinProximity',
 'XfDtShowKnnAllSumW2FSumWFieldSet1Bm15FLogK0001',
 'XfDtShowKnnBagOfWordsSimpleClickAnnotationMatchAvgValue',
 'XfDtShowKnnBagOfWordsTitleCosineMaxMatch',
 'DssmLogDtBigramsAMHardQueriesNoClicksMixed',
 'QueryToTextByXfDtShowKnnAllSumW2FSumWTextBocm11Norm256',
 'QueryToTextByXfDtShowKnnTopSumW2FSumWBodyMinWindowSize',
 'QueryToTextByXfDtShowKnnAllSumW2FSumWBodyMinWindowSize',
 'QueryToTextByXfDtShowKnnTopSumW2FSumWTextBocm11Norm256',
 'QueryToTextByXfDtShowKnnAllMinW',
 'QueryToTextByXfDtShowKnnAllAvgW',
 'QueryToTextByXfDtShowKnnAllTotalW',
 'QueryToTextByXfDtShowKnnBagOfWordsFieldSetBagOfWordsOriginalRequestFraction',
 '_BM25F_Sy_z_meta_queries_relevant',
 '_BM25F_Lm_z_meta_queries_relevant',
 '_BM25F_Lm_z_meta_queries_clicked',
 '_BM25F_Sy_z_meta_queries_clicked',
 '_BM25F_St_z_meta_queries_clicked',
 '_BM25F_Sy_z_meta_queries_vital',
 '_BM25F_St_z_meta_queries_vital',
 '_BM25F_St_z_meta_queries_relevant',
 '_BM25F_Lm_z_meta_queries_vital',
 '_IF_St_z_meta_tag_one',
 '_CZ_St_z_meta_links_urls',
 '_IF_St_z_meta_owner',
 '_CM_Sy_z_meta_breadcrumbs',
 '_CZL_Sy_z_meta_tag_one',
 '_CM_St_z_meta_links_texts',
 '_CZ_Sy_z_meta_cluster_one',
 '_IF_Lm_z_meta_keywords',
 '_IF_St_z_meta_abc_service',
 '_CZ_Sy_z_meta_links_urls',
 '_CM_Lm_z_meta_queries_clicked',
 '_CZ_Sy_z_meta_parents',
 '_CM_Lm_z_meta_queries_vital',
 '_ZL_z_meta_links_texts',
 '_CM_Sy_z_meta_title',
 '_CZL_Lm_z_meta_parents',
 '_CZL_Lm_z_meta_full_name',
 '_CZL_St_z_meta_minortitle',
 '_CZ_Lm_z_meta_product',
 '_CZ_St_z_meta_queries_clicked',
 '_CM_Lm_z_meta_queries_relevant',
 '_IF_Sy_z_meta_queries_vital',
 '_CZL_Lm_z_meta_tag_one',
 '_IF_Lm_z_meta_minortitle',
 '_CZ_Lm_z_meta_links',
 '_CM_St_z_meta_parents',
 '_CM_St_z_meta_tag_one',
 '_CZ_Sy_z_meta_links_texts',
 '_CM_St_z_meta_queries_clicked',
 '_CZ_Sy_z_meta_queries_relevant',
 '_CM_St_z_meta_intlinks',
 '_CM_Sy_z_meta_keywords',
 '_CZ_St_z_meta_minortitle',
 '_CZ_Lm_z_meta_abc_service',
 '_IF_St_z_meta_intlinks',
 '_ZL_z_meta_subtitle',
 '_IF_Lm_z_meta_cluster_one',
 '_CM_Sy_z_meta_links',
 '_CM_Sy_z_meta_parents',
 '_IF_St_z_meta_tickets',
 '_CM_Lm_z_meta_breadcrumbs',
 '_CZ_Lm_z_meta_parents',
 '_CM_Sy_z_meta_abc_service',
 '_IF_Lm_z_meta_parents',
 '_IF_St_z_meta_links',
 '_IF_Lm_z_meta_links_urls',
 '_CZL_St_z_meta_keywords',
 '_ZL_z_meta_tickets',
 '_CM_Sy_z_meta_queries_relevant',
 '_CZ_Lm_z_meta_queries_vital',
 '_CZ_Sy_z_meta_owner',
 '_CZL_St_z_meta_title',
 '_CM_St_z_meta_links',
 '_IF_Lm_z_meta_owner',
 '_CZ_Lm_z_meta_intlinks',
 '_CZ_Lm_z_meta_links_texts',
 '_CM_Sy_z_meta_tag_one',
 '_CZL_Sy_z_meta_extlinks',
 '_ZL_z_meta_links_urls',
 '_ZL_z_meta_tag_one',
 '_CZL_Sy_z_meta_keywords',
 '_IF_St_z_meta_keywords',
 '_CZL_Lm_z_meta_links_urls',
 '_CZL_Sy_z_meta_abc_service',
 '_CZL_Lm_z_meta_subtitle',
 '_CZ_Lm_z_meta_links_urls',
 '_CZL_St_z_meta_intlinks',
 '_CZ_Lm_z_meta_subtitle',
 '_ZL_z_meta_parents',
 '_CZ_St_z_meta_parents',
 '_CZL_St_z_meta_breadcrumbs',
 '_CM_Sy_z_meta_links_urls',
 '_IF_St_z_meta_minortitle',
 '_ZL_z_meta_abc_service',
 '_CZL_Lm_z_meta_content',
 '_ZL_z_meta_links',
 '_CZ_Lm_z_meta_content',
 '_CM_St_z_meta_subtitle',
 '_CM_St_z_meta_owner',
 '_CZL_Lm_z_meta_tickets',
 '_CZL_Lm_z_meta_owner',
 '_ZL_z_meta_breadcrumbs',
 '_CZL_Lm_z_meta_title',
 '_IF_Sy_z_meta_queries_relevant',
 '_IF_Sy_z_meta_links_texts',
 '_CZ_St_z_meta_full_name',
 '_CZL_Lm_z_meta_breadcrumbs',
 '_ZL_z_meta_minortitle',
 '_CZL_Sy_z_meta_links',
 '_CZL_Lm_z_meta_queries_vital',
 '_IF_Sy_z_meta_subtitle',
 '_CZ_Lm_z_meta_extlinks',
 '_IF_Lm_z_meta_subtitle',
 '_CZ_Sy_z_meta_content',
 '_IF_Lm_z_meta_intlinks',
 '_CZ_Sy_z_meta_queries_vital',
 '_CZ_Sy_z_meta_queries_clicked',
 '_CZL_Sy_z_meta_queries_vital',
 '_CM_St_z_meta_cluster_one',
 '_CZ_Sy_z_meta_breadcrumbs',
 '_IF_St_z_meta_breadcrumbs',
 '_CM_Lm_z_meta_links',
 '_CZL_St_z_meta_extlinks',
 '_IF_Lm_z_meta_queries_clicked',
 '_ZL_z_meta_full_name',
 '_CZ_Lm_z_meta_title',
 '_CZ_St_z_meta_intlinks',
 '_CZ_St_z_meta_links_texts',
 '_CZ_Sy_z_meta_full_name',
 '_CZL_Sy_z_meta_links_texts',
 '_CZL_Sy_z_meta_breadcrumbs',
 '_ZL_z_meta_owner',
 '_CZL_St_z_meta_links',
 '_CM_Lm_z_meta_links_urls',
 '_CM_St_z_meta_queries_relevant',
 '_IF_Sy_z_meta_extlinks',
 '_CZ_St_z_meta_links',
 '_IF_Lm_z_meta_links_texts',
 '_CZL_Lm_z_meta_queries_clicked',
 '_CM_Sy_z_meta_extlinks',
 '_CZL_St_z_meta_product',
 '_CZL_St_z_meta_abc_service',
 '_IF_Lm_z_meta_abc_service',
 '_CM_Sy_z_meta_full_name',
 '_CZL_St_z_meta_cluster_one',
 '_CM_Lm_z_meta_minortitle',
 '_CZ_Lm_z_meta_full_name',
 '_IF_Sy_z_meta_cluster_one',
 '_IF_St_z_meta_subtitle',
 '_CZL_St_z_meta_tag_one',
 '_IF_Lm_z_meta_breadcrumbs',
 '_CM_Sy_z_meta_subtitle',
 '_IF_Sy_z_meta_content',
 '_CZ_St_z_meta_queries_vital',
 '_CZL_Sy_z_meta_links_urls',
 '_CM_Lm_z_meta_keywords',
 '_CM_Sy_z_meta_links_texts',
 '_CM_Lm_z_meta_product',
 '_CZL_Sy_z_meta_content',
 '_CZ_Lm_z_meta_minortitle',
 '_CZL_Lm_z_meta_intlinks',
 '_CZL_Lm_z_meta_keywords',
 '_CM_Lm_z_meta_abc_service',
 '_IF_Lm_z_meta_content',
 '_CM_St_z_meta_product',
 '_CM_St_z_meta_tickets',
 '_CM_Lm_z_meta_tickets',
 '_CM_Sy_z_meta_minortitle',
 '_CM_St_z_meta_content',
 '_CM_Lm_z_meta_extlinks',
 '_CZ_Sy_z_meta_abc_service',
 '_ZL_z_meta_queries_relevant',
 '_CM_Sy_z_meta_content',
 '_IF_Sy_z_meta_full_name',
 '_CZ_St_z_meta_title',
 '_CZL_St_z_meta_subtitle',
 '_CM_St_z_meta_breadcrumbs',
 '_CM_Lm_z_meta_owner',
 '_CZ_St_z_meta_abc_service',
 '_ZL_z_meta_product',
 '_IF_Lm_z_meta_product',
 '_CZL_Sy_z_meta_full_name',
 '_CZL_Lm_z_meta_product',
 '_IF_St_z_meta_cluster_one',
 '_IF_St_z_meta_extlinks',
 '_ZL_z_meta_extlinks',
 '_IF_Lm_z_meta_extlinks',
 '_CZL_Sy_z_meta_product',
 '_IF_Sy_z_meta_abc_service',
 '_CZL_Sy_z_meta_parents',
 '_CM_Lm_z_meta_subtitle',
 '_CZ_Sy_z_meta_minortitle',
 '_CZ_Lm_z_meta_owner',
 '_CZ_Sy_z_meta_product',
 '_CZL_St_z_meta_links_urls',
 '_CM_Lm_z_meta_title',
 '_CM_Lm_z_meta_links_texts',
 '_CM_Lm_z_meta_full_name',
 '_CZL_Sy_z_meta_queries_clicked',
 '_CZ_Lm_z_meta_cluster_one',
 '_CZ_St_z_meta_tag_one',
 '_CZ_St_z_meta_content',
 '_ZL_z_meta_queries_vital',
 '_CM_Lm_z_meta_cluster_one',
 '_CZL_Sy_z_meta_minortitle',
 '_CZL_St_z_meta_content',
 '_CZ_St_z_meta_breadcrumbs',
 '_IF_St_z_meta_queries_vital',
 '_CZL_St_z_meta_links_texts',
 '_CZ_St_z_meta_tickets',
 '_CZ_Lm_z_meta_queries_clicked',
 '_CM_St_z_meta_keywords',
 '_CZ_Sy_z_meta_tag_one',
 '_CZL_St_z_meta_full_name',
 '_CZL_Sy_z_meta_title',
 '_CM_Sy_z_meta_intlinks',
 '_CZL_Lm_z_meta_queries_relevant',
 '_IF_St_z_meta_parents',
 '_CZL_St_z_meta_owner',
 '_CM_Sy_z_meta_queries_vital',
 '_IF_St_z_meta_queries_clicked',
 '_CM_Sy_z_meta_tickets',
 '_IF_Lm_z_meta_tag_one',
 '_IF_Lm_z_meta_title',
 '_IF_St_z_meta_links_urls',
 '_CM_St_z_meta_extlinks',
 '_CZL_St_z_meta_queries_vital',
 '_IF_Sy_z_meta_links_urls',
 '_CZ_Sy_z_meta_tickets',
 '_CZL_Lm_z_meta_minortitle',
 '_IF_Lm_z_meta_queries_vital',
 '_CZL_Lm_z_meta_abc_service',
 '_CZ_St_z_meta_queries_relevant',
 '_CZL_Lm_z_meta_extlinks',
 '_CZ_Sy_z_meta_keywords',
 '_IF_Sy_z_meta_links',
 '_IF_Lm_z_meta_links',
 '_ZL_z_meta_cluster_one',
 '_CM_Sy_z_meta_cluster_one',
 '_ZL_z_meta_content',
 '_CZ_St_z_meta_product',
 '_CZ_St_z_meta_extlinks',
 '_CZ_Sy_z_meta_subtitle',
 '_IF_Lm_z_meta_tickets',
 '_IF_St_z_meta_full_name',
 '_CZL_St_z_meta_queries_clicked',
 '_IF_St_z_meta_product',
 '_IF_Sy_z_meta_breadcrumbs',
 '_ZL_z_meta_queries_clicked',
 '_CZ_Lm_z_meta_breadcrumbs',
 '_CZL_Sy_z_meta_cluster_one',
 '_CM_Lm_z_meta_tag_one',
 '_CM_St_z_meta_abc_service',
 '_CZ_Lm_z_meta_tag_one',
 '_CZ_Lm_z_meta_keywords',
 '_CZ_Sy_z_meta_intlinks',
 '_CM_Lm_z_meta_content',
 '_CM_St_z_meta_links_urls',
 '_CM_St_z_meta_minortitle',
 '_CM_Sy_z_meta_owner',
 '_ZL_z_meta_title',
 '_CZ_Sy_z_meta_title',
 '_IF_St_z_meta_links_texts',
 '_CZ_St_z_meta_owner',
 '_IF_Sy_z_meta_queries_clicked',
 '_IF_Lm_z_meta_queries_relevant',
 '_CM_Sy_z_meta_queries_clicked',
 '_CZL_Sy_z_meta_intlinks',
 '_CM_St_z_meta_queries_vital',
 '_CZ_St_z_meta_cluster_one',
 '_CZ_St_z_meta_keywords',
 '_CZL_St_z_meta_parents',
 '_IF_Sy_z_meta_minortitle',
 '_IF_Sy_z_meta_tag_one',
 '_CZL_St_z_meta_queries_relevant',
 '_IF_Sy_z_meta_keywords',
 '_CZL_Sy_z_meta_subtitle',
 '_CZL_Sy_z_meta_tickets',
 '_IF_Sy_z_meta_intlinks',
 '_CZL_Sy_z_meta_queries_relevant',
 '_IF_Sy_z_meta_tickets',
 '_CZL_St_z_meta_tickets',
 '_CZ_Lm_z_meta_queries_relevant',
 '_CM_Lm_z_meta_intlinks',
 '_IF_Sy_z_meta_owner',
 '_CM_St_z_meta_title',
 '_CZ_St_z_meta_subtitle',
 '_CZL_Lm_z_meta_links',
 '_ZL_z_meta_keywords',
 '_CZL_Lm_z_meta_cluster_one',
 '_ZL_z_meta_intlinks',
 '_CM_St_z_meta_full_name',
 '_CZL_Lm_z_meta_links_texts',
 '_CZ_Sy_z_meta_extlinks',
 '_IF_St_z_meta_content',
 '_CM_Lm_z_meta_parents',
 '_CZ_Sy_z_meta_links',
 '_CZ_Lm_z_meta_tickets',
 '_IF_St_z_meta_title',
 '_CM_Sy_z_meta_product',
 '_IF_Lm_z_meta_full_name',
 '_IF_Sy_z_meta_product',
 '_CZL_Sy_z_meta_owner',
 '_IF_Sy_z_meta_parents',
 '_IF_Sy_z_meta_title',
 '_IF_St_z_meta_queries_relevant',
 '_CZL_St_z_lego_content',
 '_CM_Sy_z_lego_content',
 '_CZL_Lm_z_lego_block',
 '_ZL_z_lego_block',
 '_CZL_Sy_z_lego_library',
 '_CZL_Sy_z_lego_content',
 '_IF_Lm_z_lego_block',
 '_CZ_St_z_lego_title',
 '_CZL_Lm_z_lego_title',
 '_CZ_Lm_z_lego_block',
 '_CZ_Sy_z_lego_block',
 '_IF_St_z_lego_library',
 '_CZ_Lm_z_lego_library',
 '_CM_Lm_z_lego_content',
 '_CZL_St_z_lego_title',
 '_CZL_Sy_z_lego_block',
 '_CM_Sy_z_lego_block',
 '_CZ_Lm_z_lego_title',
 '_CM_Lm_z_lego_title',
 '_IF_Sy_z_lego_block',
 '_ZL_z_lego_library',
 '_ZL_z_lego_content',
 '_CZ_St_z_lego_content',
 '_CZL_St_z_lego_library',
 '_CM_Sy_z_lego_title',
 '_CZ_Sy_z_lego_title',
 '_IF_Sy_z_lego_content',
 '_CZL_St_z_lego_block',
 '_IF_Lm_z_lego_title',
 '_ZL_z_lego_title',
 '_IF_Lm_z_lego_content',
 '_IF_Sy_z_lego_library',
 '_CM_St_z_lego_block',
 '_CM_Lm_z_lego_block',
 '_CZ_St_z_lego_block',
 '_CM_St_z_lego_title',
 '_CZ_St_z_lego_library',
 '_CZ_Sy_z_lego_content',
 '_CZ_Sy_z_lego_library',
 '_CZL_Lm_z_lego_content',
 '_CZ_Lm_z_lego_content',
 '_CZL_Sy_z_lego_title',
 '_IF_Lm_z_lego_library',
 '_CM_Sy_z_lego_library',
 '_IF_Sy_z_lego_title',
 '_CM_Lm_z_lego_library',
 '_CM_St_z_lego_content',
 '_IF_St_z_lego_content',
 '_IF_St_z_lego_title',
 '_IF_St_z_lego_block',
 '_CZL_Lm_z_lego_library',
 '_CM_St_z_lego_library',
 '_CZL_Lm_z_meta_comments',
 '_IF_Sy_z_meta_comments',
 '_CZ_St_z_meta_comments',
 '_CZ_Lm_z_meta_comments',
 '_CM_Sy_z_meta_comments',
 '_CZ_Sy_z_meta_comments',
 '_ZL_z_meta_comments',
 '_BM25F_Sy_z_meta_comments',
 '_CM_Lm_z_meta_comments',
 '_IF_Lm_z_meta_comments',
 '_BM25F_St_z_meta_comments',
 '_CZL_St_z_meta_comments',
 '_BM25F_Lm_z_meta_comments',
 '_CM_St_z_meta_comments',
 '_CZL_Sy_z_meta_comments',
 '_IF_St_z_meta_comments',
 'STAT_meta_likesCount',
 'STAT_meta_dislikesCount',
 '_CZ_Sy_z_meta_translated',
 '_BM25F_Lm_z_meta_translated',
 '_ZL_z_meta_translated',
 '_CM_Lm_z_meta_translated',
 '_CZ_Lm_z_meta_translated',
 '_IF_Lm_z_meta_translated',
 '_CZ_St_z_meta_translated',
 '_CZL_St_z_meta_translated',
 '_CZL_Sy_z_meta_translated',
 '_CM_Sy_z_meta_translated',
 '_CM_St_z_meta_translated',
 '_BM25F_St_z_meta_translated',
 '_IF_Sy_z_meta_translated',
 '_IF_St_z_meta_translated',
 '_CZL_Lm_z_meta_translated',
 '_BM25F_Sy_z_meta_translated'
]

not_zero_factor_names = [
'LongQuery',
'InvWordCount',
'TLen',
'AbsolutePLM',
'Bclm',
'TxtBm25Sy',
'DocLen',
'Bclm2',
'Tocm',
'TitleTrigramsTitle',
'TextBM25_Fm_W1',
'TxtBm25Ex',
'TextBM25',
'TextBM25_Sy_W1',
'TxtHeadSy',
'YmwFull2',
'TxtHeadEx',
'TxtHead',
'TxtBreakSy',
'TxtBreakEx'
]
zero_factor_names = []
 
def get_factors(factors):
    result = []
    for name in factor_names:
        if name in zero_factor_names:
            result.append(0)
        else:
            result.append(factors.get(name, 0))
    return '\t'.join(str(s) for s in result)
@@;


$factors_list = Python3::get_factors(Callable<(Dict<String,Float?>)->String>, $script);

INSERT INTO {{output1}}
SELECT 
    r.query as query,
    url,
    rating,
    $factors_list(factors) as factors
FROM {{input1}} as r
LEFT JOIN (
    SELECT 
        query
    FROM {{input1}}
    group by query
    having count_if(rating > 0) = 0
) as not_rated
USING (query)
WHERE not_rated.query is null;