func (ts *TripleStore) optimizeLinksTo(it *iterator.LinksTo) (graph.Iterator, bool) {
	subs := it.GetSubIterators()
	if len(subs) != 1 {
		return it, false
	}
	primary := subs[0]
	if primary.Type() == "fixed" {
		size, _ := primary.Size()
		if size == 1 {
			val, ok := primary.Next()
			if !ok {
				panic("Sizes lie")
			}
			newIt := ts.GetTripleIterator(it.Direction(), val)
			newIt.CopyTagsFrom(it)
			for _, tag := range primary.Tags() {
				newIt.AddFixedTag(tag, val)
			}
			it.Close()
			return newIt, true
		}
	}
	return it, false
}