diff --git a/llvm/lib/CodeGen/MLRegallocEvictAdvisor.cpp b/llvm/lib/CodeGen/MLRegallocEvictAdvisor.cpp --- a/llvm/lib/CodeGen/MLRegallocEvictAdvisor.cpp +++ b/llvm/lib/CodeGen/MLRegallocEvictAdvisor.cpp @@ -220,6 +220,20 @@ #undef _RESET } +// Per-live interval components that get aggregated into the feature values that +// will be passed to the evaluator. +struct LIFeatureComponents { + double R = 0; + double W = 0; + double RW = 0; + double IndVarUpdates = 0; + double HintWeights = 0.0; + int64_t NrDefsAndUses = 0; + float HottestBlockFreq = 0.0; + bool HasPreferredReg = false; + bool IsRemat = false; +}; + using CandidateRegList = std::array, NumberOfInterferences>; using FeaturesListNormalizer = std::array; @@ -277,6 +291,9 @@ FixedRegisters); } + const LIFeatureComponents + getLIFeatureComponents(const LiveInterval &LI) const; + // Hold on to a default advisor for: // 1) the implementation of canEvictHintInterference, because we didn't learn // that nuance yet; @@ -670,6 +687,51 @@ return Regs[CandidatePos].first; } +const LIFeatureComponents +MLEvictAdvisor::getLIFeatureComponents(const LiveInterval &LI) const { + LIFeatureComponents Ret; + SmallPtrSet Visited; + const TargetRegisterInfo &TRI = *MF.getSubtarget().getRegisterInfo(); + Ret.HasPreferredReg = VRM->hasPreferredPhys(LI.reg()); + + for (MachineRegisterInfo::reg_instr_nodbg_iterator + I = MRI->reg_instr_nodbg_begin(LI.reg()), + E = MRI->reg_instr_nodbg_end(); + I != E;) { + MachineInstr *MI = &*(I++); + + ++Ret.NrDefsAndUses; + if (!Visited.insert(MI).second) + continue; + + if (MI->isIdentityCopy() || MI->isImplicitDef()) + continue; + + bool Reads, Writes; + std::tie(Reads, Writes) = MI->readsWritesVirtualRegister(LI.reg()); + + float Freq = MBFI.getBlockFreqRelativeToEntryBlock(MI->getParent()); + Ret.HottestBlockFreq = std::max(Freq, Ret.HottestBlockFreq); + + Ret.R += (Reads && !Writes) * Freq; + Ret.W += (!Reads && Writes) * Freq; + Ret.RW += (Reads && Writes) * Freq; + + auto *MBB = MI->getParent(); + auto *Loop = Loops.getLoopFor(MBB); + bool IsExiting = Loop ? Loop->isLoopExiting(MBB) : false; + + if (Writes && IsExiting && LIS->isLiveOutOfMBB(LI, MBB)) + Ret.IndVarUpdates += Freq; + + if (MI->isCopy() && VirtRegAuxInfo::copyHint(MI, LI.reg(), TRI, *MRI)) + Ret.HintWeights += Freq; + } + Ret.IsRemat = VirtRegAuxInfo::isRematerializable( + LI, *LIS, *VRM, *MF.getSubtarget().getInstrInfo()); + return Ret; +} + // Overall, this currently mimics what we do for weight calculation, but instead // of accummulating the various features, we keep them separate. void MLEvictAdvisor::extractFeatures( @@ -678,11 +740,11 @@ int64_t IsHint, int64_t LocalIntfsCount, float NrUrgent) const { int64_t NrDefsAndUses = 0; int64_t NrBrokenHints = 0; - float R = 0; - float W = 0; - float RW = 0; - float IndVarUpdates = 0; - float HintWeights = 0.0; + double R = 0.0; + double W = 0.0; + double RW = 0.0; + double IndVarUpdates = 0.0; + double HintWeights = 0.0; float StartBBFreq = 0.0; float EndBBFreq = 0.0; float HottestBlockFreq = 0.0; @@ -709,46 +771,19 @@ if (LI.endIndex() > EndSI) EndSI = LI.endIndex(); + const LIFeatureComponents LIFC = getLIFeatureComponents(LI); + NrBrokenHints += LIFC.HasPreferredReg; - SmallPtrSet Visited; - const TargetRegisterInfo &TRI = *MF.getSubtarget().getRegisterInfo(); - NrBrokenHints += VRM->hasPreferredPhys(LI.reg()); - - for (MachineRegisterInfo::reg_instr_nodbg_iterator - I = MRI->reg_instr_nodbg_begin(LI.reg()), - E = MRI->reg_instr_nodbg_end(); - I != E;) { - MachineInstr *MI = &*(I++); + NrDefsAndUses += LIFC.NrDefsAndUses; + HottestBlockFreq = std::max(HottestBlockFreq, LIFC.HottestBlockFreq); + R += LIFC.R; + W += LIFC.W; + RW += LIFC.RW; - ++NrDefsAndUses; - if (!Visited.insert(MI).second) - continue; + IndVarUpdates += LIFC.IndVarUpdates; - if (MI->isIdentityCopy() || MI->isImplicitDef()) - continue; - - bool Reads, Writes; - std::tie(Reads, Writes) = MI->readsWritesVirtualRegister(LI.reg()); - - float Freq = MBFI.getBlockFreqRelativeToEntryBlock(MI->getParent()); - if (Freq > HottestBlockFreq) - HottestBlockFreq = Freq; - R += (Reads && !Writes) * Freq; - W += (!Reads && Writes) * Freq; - RW += (Reads && Writes) * Freq; - - auto *MBB = MI->getParent(); - auto *Loop = Loops.getLoopFor(MBB); - bool IsExiting = Loop ? Loop->isLoopExiting(MBB) : false; - - if (Writes && IsExiting && LIS->isLiveOutOfMBB(LI, MBB)) - IndVarUpdates += Freq; - - if (MI->isCopy() && VirtRegAuxInfo::copyHint(MI, LI.reg(), TRI, *MRI)) - HintWeights += Freq; - } - NrRematerializable += VirtRegAuxInfo::isRematerializable( - LI, *LIS, *VRM, *MF.getSubtarget().getInstrInfo()); + HintWeights += LIFC.HintWeights; + NrRematerializable += LIFC.IsRemat; } size_t Size = 0; if (!Intervals.empty()) { diff --git a/llvm/test/CodeGen/MLRegalloc/Inputs/reference-log-noml.txt b/llvm/test/CodeGen/MLRegalloc/Inputs/reference-log-noml.txt --- a/llvm/test/CodeGen/MLRegalloc/Inputs/reference-log-noml.txt +++ b/llvm/test/CodeGen/MLRegalloc/Inputs/reference-log-noml.txt @@ -41,17 +41,17 @@ feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.420772523 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.992761 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 } } - feature { float_list { value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.140257508 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333373 } } + feature { float_list { value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.140257493 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333313 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.420772523 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.999999821 value: 0.140257493 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.182143316 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0.877776504 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0410382412 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.479216278 value: 0 value: 0 value: 0.876994908 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0259402078 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.140257493 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.182143345 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0.877776504 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.041038245 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.479216307 value: 0 value: 0 value: 0.876994908 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0259402096 } } feature { float_list { value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.999999821 value: 0.546429932 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0154713513 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.479643375 value: 0 value: 0 value: 0.877776504 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0135803893 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.479643375 value: 0 value: 0 value: 0.877776504 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0135803893 } } } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.54643 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0154713532 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.479643404 value: 0 value: 0 value: 0.877776504 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0135803903 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.479643404 value: 0 value: 0 value: 0.877776504 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0135803903 } } } } feature_list { key: \"hottest_bb_freq_by_max\" value { feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } @@ -530,51 +530,51 @@ feature_list { key: \"weighed_reads_by_max\" value { feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.700275123 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 5.47332839e-11 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.115817033 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.115817033 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 5.47332908e-11 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.115817048 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.115817048 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.213957906 value: 0.213957906 value: 0.224476278 value: 1.93036823e-10 value: 0.408470869 value: 0.408470869 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.190942705 value: 0 value: 0.347451121 value: 0.347451121 value: 0.181995615 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 5.47332839e-11 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0337726921 value: 0.0337726921 value: 0.0354329869 value: 0.473542124 value: 0.0644760504 value: 0.0644760504 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.391873717 value: 0.074825421 value: 1 value: 0 value: 0.136156946 value: 0.0713193 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0453856513 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575646 value: 0.0118109975 value: 0.15784739 value: 1 value: 0.0214920193 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.000982483383 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575646 value: 0.0118109975 value: 0.15784739 value: 1 value: 0.0214920193 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00343869184 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575646 value: 0.0118109975 value: 0.15784739 value: 1 value: 0.0214920193 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0709281564 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.06185624 value: 0.0118109975 value: 0.15784739 value: 1 value: 0 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00716400659 } } - feature { float_list { value: 0.212784484 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575646 value: 0.0118109975 value: 0.15784739 value: 1 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.109056346 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575646 value: 0.0118109975 value: 0.15784739 value: 1 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0709281564 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0118109975 value: 0.15784739 value: 1 value: 0 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0037525217 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.212784484 value: 0.0118109975 value: 0.15784739 value: 1 value: 0.32716912 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0547605269 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.26338315 value: 0 value: 0.15784739 value: 1 value: 0.32716912 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00393699901 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.274917394 value: 0.164281562 value: 0.15784739 value: 1 value: 0.32716912 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00384476036 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.19094272 value: 0 value: 0.34745115 value: 0.34745115 value: 0.18199563 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 5.47332908e-11 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0337726921 value: 0.0337726921 value: 0.0354329906 value: 0.473542154 value: 0.0644760579 value: 0.0644760579 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.391873658 value: 0.074825421 value: 1 value: 0 value: 0.136156946 value: 0.0713193 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0453856513 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575637 value: 0.0118109966 value: 0.157847375 value: 1 value: 0.0214920174 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.000982483267 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575637 value: 0.0118109966 value: 0.157847375 value: 1 value: 0.0214920174 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00343869138 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575637 value: 0.0118109966 value: 0.157847375 value: 1 value: 0.0214920174 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0709281489 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0618562289 value: 0.0118109966 value: 0.157847375 value: 1 value: 0 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00716400566 } } + feature { float_list { value: 0.212784439 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575637 value: 0.0118109966 value: 0.157847375 value: 1 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.109056324 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0112575637 value: 0.0118109966 value: 0.157847375 value: 1 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0709281489 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0118109966 value: 0.157847375 value: 1 value: 0 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00375252124 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.212784439 value: 0.0118109966 value: 0.157847375 value: 1 value: 0.327169 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0547605231 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.26338312 value: 0 value: 0.157847375 value: 1 value: 0.327169 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00393699855 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.274917394 value: 0.164281547 value: 0.157847375 value: 1 value: 0.327169 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00384476 } } feature { float_list { value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.34133026 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.212784484 value: 0.164281562 value: 0.15784739 value: 1 value: 0.32716912 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1.63819121e-12 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.26338315 value: 0.164281562 value: 0.15784739 value: 1 value: 0.32716912 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00294745015 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.26338315 value: 0.164281562 value: 0.15784739 value: 1 value: 0.32716912 value: 0.0112575646 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00294745015 } } } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.212784439 value: 0.164281547 value: 0.157847375 value: 1 value: 0.327169 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1.6381911e-12 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.26338312 value: 0.164281547 value: 0.157847375 value: 1 value: 0.327169 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00294745 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.26338312 value: 0.164281547 value: 0.157847375 value: 1 value: 0.327169 value: 0.0112575637 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.00294745 } } } } feature_list { key: \"weighed_writes_by_max\" value { feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0833333358 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0833333358 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0833333358 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 value: 0.862989366 value: 1 value: 0.333333343 value: 0.333333343 value: 0.333333343 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.111111112 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.75 value: 0 value: 0.25 value: 0.25 value: 0.647242 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0833333358 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 value: 0.862989366 value: 1 value: 0.333333343 value: 0.333333343 value: 0.333333343 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.055555556 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.75 value: 0.25 value: 0 value: 0.25 value: 0.647242 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0833333358 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 value: 1 value: 0.333333343 value: 0.166666672 value: 0.333333343 value: 0.862989366 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.055555556 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 value: 1 value: 0.333333343 value: 0.166666672 value: 0.333333343 value: 0.862989366 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.055555556 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.191130862 value: 0.57339257 value: 0.191130862 value: 0.0955654308 value: 0.191130862 value: 0.494831681 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.75 value: 0.25 value: 0.125 value: 0 value: 0.647242 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0833333358 } } - feature { float_list { value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0637102947 value: 0.191130877 value: 0.0637102947 value: 0.0318551473 value: 0.164943919 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.28623724 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.191130862 value: 0.57339257 value: 0.191130862 value: 0.0955654308 value: 0.494831681 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.333333343 value: 0.166666672 value: 0 value: 0.862989366 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.111111112 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.191130877 value: 0.0637102947 value: 0.0318551473 value: 0.85871166 value: 0.164943919 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.250019193 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 value: 0.862989247 value: 1 value: 0.333333343 value: 0.333333343 value: 0.333333343 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.111111112 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.75 value: 0 value: 0.25 value: 0.25 value: 0.64724195 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0833333358 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 value: 0.862989247 value: 1 value: 0.333333343 value: 0.333333343 value: 0.333333343 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.055555556 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.75 value: 0.25 value: 0 value: 0.25 value: 0.64724195 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0833333358 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 value: 1 value: 0.333333343 value: 0.166666672 value: 0.333333343 value: 0.862989247 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.055555556 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 value: 1 value: 0.333333343 value: 0.166666672 value: 0.333333343 value: 0.862989247 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.055555556 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.191130847 value: 0.57339251 value: 0.191130847 value: 0.0955654234 value: 0.191130847 value: 0.494831592 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.75 value: 0.25 value: 0.125 value: 0 value: 0.64724195 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0833333358 } } + feature { float_list { value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0637102798 value: 0.191130847 value: 0.0637102798 value: 0.0318551399 value: 0.164943874 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.28623718 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.191130847 value: 0.57339251 value: 0.191130847 value: 0.0955654234 value: 0.494831592 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.333333343 value: 0.166666672 value: 0 value: 0.862989247 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.111111112 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.191130847 value: 0.0637102798 value: 0.0318551399 value: 0.858711541 value: 0.164943874 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.250019163 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0 value: 0.0534872264 value: 0.0267436132 value: 0.720921278 value: 0.138476714 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0534872264 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.600418925 value: 0.0509999059 value: 0.025499953 value: 0.687396228 value: 0.132037118 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0169999693 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.600419 value: 0.0509999096 value: 0.0254999548 value: 0.687396288 value: 0.132037118 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0169999711 } } feature { float_list { value: 1 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.333333343 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 } } - feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.750057578 value: 0.0637102947 value: 0.0318551473 value: 0.85871166 value: 0.164943919 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0212367661 } } + feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.750057459 value: 0.0637102798 value: 0.0318551399 value: 0.858711541 value: 0.164943874 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0212367605 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.629702 value: 0.0534872264 value: 0.0267436132 value: 0.720921278 value: 0.138476714 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0178290755 } } feature { float_list { value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 1 value: 0.629702 value: 0.0534872264 value: 0.0267436132 value: 0.720921278 value: 0.138476714 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0 value: 0.0178290755 } } } } } " }