sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000004398046517222 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000004398046517222) .
        minus { sn:pers00000004398046517222 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000004398046517222 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000004398046517222 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000032985348841951 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000032985348841951) .
        minus { sn:pers00000032985348841951 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 12, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 1, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000032985348841951 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000032985348841951 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000030786325585469 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000030786325585469) .
        minus { sn:pers00000030786325585469 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 10, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 11, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000030786325585469 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000030786325585469 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000028587302324630 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000028587302324630) .
        minus { sn:pers00000028587302324630 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 12, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 1, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000028587302324630 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000028587302324630 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000005106 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000005106) .
        minus { sn:pers00000000000000005106 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 2, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 3, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000005106 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000005106 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000010995116282920 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000010995116282920) .
        minus { sn:pers00000010995116282920 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000010995116282920 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000010995116282920 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000002199023264901 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000002199023264901) .
        minus { sn:pers00000002199023264901 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000002199023264901 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000002199023264901 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000030786325582626 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000030786325582626) .
        minus { sn:pers00000030786325582626 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 4, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 5, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000030786325582626 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000030786325582626 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000015393162796778 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000015393162796778) .
        minus { sn:pers00000015393162796778 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000015393162796778 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000015393162796778 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000019791209300475 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000019791209300475) .
        minus { sn:pers00000019791209300475 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000019791209300475 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000019791209300475 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000006597069775853 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000006597069775853) .
        minus { sn:pers00000006597069775853 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000006597069775853 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000006597069775853 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000021990232565194 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000021990232565194) .
        minus { sn:pers00000021990232565194 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 1, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 2, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000021990232565194 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000021990232565194 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000032985348834024 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000032985348834024) .
        minus { sn:pers00000032985348834024 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 6, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 7, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000032985348834024 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000032985348834024 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000004398046515491 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000004398046515491) .
        minus { sn:pers00000004398046515491 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 6, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 7, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000004398046515491 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000004398046515491 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000008711 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000008711) .
        minus { sn:pers00000000000000008711 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 4, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 5, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000008711 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000008711 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000010995116286761 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000010995116286761) .
        minus { sn:pers00000010995116286761 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000010995116286761 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000010995116286761 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000015393162792119 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000015393162792119) .
        minus { sn:pers00000015393162792119 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 10, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 11, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000015393162792119 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000015393162792119 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000004398046520109 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000004398046520109) .
        minus { sn:pers00000004398046520109 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 9, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 10, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000004398046520109 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000004398046520109 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000008796093030573 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000008796093030573) .
        minus { sn:pers00000008796093030573 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 6, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 7, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000008796093030573 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000008796093030573 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000015393162792663 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000015393162792663) .
        minus { sn:pers00000015393162792663 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000015393162792663 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000015393162792663 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000017592186048269 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000017592186048269) .
        minus { sn:pers00000017592186048269 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000017592186048269 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000017592186048269 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000028587302329696 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000028587302329696) .
        minus { sn:pers00000028587302329696 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 3, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 4, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000028587302329696 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000028587302329696 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000006597069776813 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000006597069776813) .
        minus { sn:pers00000006597069776813 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 1, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 2, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000006597069776813 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000006597069776813 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000019791209303988 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000019791209303988) .
        minus { sn:pers00000019791209303988 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 4, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 5, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000019791209303988 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000019791209303988 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000008114 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000008114) .
        minus { sn:pers00000000000000008114 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000008114 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000008114 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000024189255818387 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000024189255818387) .
        minus { sn:pers00000024189255818387 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 11, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 12, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000024189255818387 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000024189255818387 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000019791209304650 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000019791209304650) .
        minus { sn:pers00000019791209304650 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 10, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 11, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000019791209304650 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000019791209304650 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000013194139537119 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000013194139537119) .
        minus { sn:pers00000013194139537119 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000013194139537119 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000013194139537119 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000013194139543341 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000013194139543341) .
        minus { sn:pers00000013194139543341 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 12, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 1, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000013194139543341 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000013194139543341 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000004398046517579 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000004398046517579) .
        minus { sn:pers00000004398046517579 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 6, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 7, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000004398046517579 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000004398046517579 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000015393162796832 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000015393162796832) .
        minus { sn:pers00000015393162796832 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 11, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 12, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000015393162796832 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000015393162796832 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000002199023259007 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000002199023259007) .
        minus { sn:pers00000002199023259007 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000002199023259007 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000002199023259007 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000007327 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000007327) .
        minus { sn:pers00000000000000007327 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 9, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 10, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000007327 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000007327 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000008796093022791 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000008796093022791) .
        minus { sn:pers00000008796093022791 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 12, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 1, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000008796093022791 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000008796093022791 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000008796093023741 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000008796093023741) .
        minus { sn:pers00000008796093023741 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 4, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 5, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000008796093023741 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000008796093023741 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000013194139536235 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000013194139536235) .
        minus { sn:pers00000013194139536235 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 3, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 4, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000013194139536235 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000013194139536235 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000006597069773482 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000006597069773482) .
        minus { sn:pers00000006597069773482 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000006597069773482 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000006597069773482 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000015393162793918 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000015393162793918) .
        minus { sn:pers00000015393162793918 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000015393162793918 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000015393162793918 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000015393162792244 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000015393162792244) .
        minus { sn:pers00000015393162792244 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000015393162792244 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000015393162792244 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000019791209307428 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000019791209307428) .
        minus { sn:pers00000019791209307428 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 1, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 2, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000019791209307428 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000019791209307428 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000032985348840782 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000032985348840782) .
        minus { sn:pers00000032985348840782 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000032985348840782 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000032985348840782 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000002199023261363 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000002199023261363) .
        minus { sn:pers00000002199023261363 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 6, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 7, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000002199023261363 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000002199023261363 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000008796093027927 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000008796093027927) .
        minus { sn:pers00000008796093027927 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000008796093027927 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000008796093027927 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000002199023265109 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000002199023265109) .
        minus { sn:pers00000002199023265109 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 11, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 12, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000002199023265109 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000002199023265109 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000002199023258484 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000002199023258484) .
        minus { sn:pers00000002199023258484 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000002199023258484 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000002199023258484 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000006597069767612 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000006597069767612) .
        minus { sn:pers00000006597069767612 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 9, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 10, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000006597069767612 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000006597069767612 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000026388279075441 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000026388279075441) .
        minus { sn:pers00000026388279075441 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 11, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 12, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000026388279075441 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000026388279075441 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000021990232563854 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000021990232563854) .
        minus { sn:pers00000021990232563854 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 9, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 10, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000021990232563854 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000021990232563854 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000002199023264653 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000002199023264653) .
        minus { sn:pers00000002199023264653 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 6, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 7, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000002199023264653 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000002199023264653 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000010995116281758 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000010995116281758) .
        minus { sn:pers00000010995116281758 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 9, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 10, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000010995116281758 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000010995116281758 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000006964 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000006964) .
        minus { sn:pers00000000000000006964 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000006964 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000006964 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000005862 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000005862) .
        minus { sn:pers00000000000000005862 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000005862 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000005862 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000000207 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000000207) .
        minus { sn:pers00000000000000000207 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000000207 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000000207 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000008469 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000008469) .
        minus { sn:pers00000000000000008469 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000008469 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000008469 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000032985348839858 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000032985348839858) .
        minus { sn:pers00000032985348839858 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000032985348839858 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000032985348839858 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000006597069773134 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000006597069773134) .
        minus { sn:pers00000006597069773134 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000006597069773134 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000006597069773134 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000006597069774851 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000006597069774851) .
        minus { sn:pers00000006597069774851 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 12, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 1, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000006597069774851 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000006597069774851 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000006359 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000006359) .
        minus { sn:pers00000000000000006359 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 10, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 11, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000006359 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000006359 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000013194139537081 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000013194139537081) .
        minus { sn:pers00000013194139537081 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 11, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 12, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000013194139537081 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000013194139537081 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000004398046519754 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000004398046519754) .
        minus { sn:pers00000004398046519754 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 10, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 11, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000004398046519754 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000004398046519754 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000008796093029192 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000008796093029192) .
        minus { sn:pers00000008796093029192 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 10, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 11, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000008796093029192 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000008796093029192 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000002199023257543 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000002199023257543) .
        minus { sn:pers00000002199023257543 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000002199023257543 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000002199023257543 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000008796093023136 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000008796093023136) .
        minus { sn:pers00000008796093023136 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000008796093023136 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000008796093023136 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000008796093022736 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000008796093022736) .
        minus { sn:pers00000008796093022736 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 4, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 5, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000008796093022736 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000008796093022736 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000019791209305845 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000019791209305845) .
        minus { sn:pers00000019791209305845 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 9, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 10, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000019791209305845 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000019791209305845 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000024189255815134 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000024189255815134) .
        minus { sn:pers00000024189255815134 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 11, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 12, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000024189255815134 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000024189255815134 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000021990232556520 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000021990232556520) .
        minus { sn:pers00000021990232556520 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000021990232556520 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000021990232556520 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000026388279076739 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000026388279076739) .
        minus { sn:pers00000026388279076739 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 2, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 3, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000026388279076739 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000026388279076739 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000032985348833946 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000032985348833946) .
        minus { sn:pers00000032985348833946 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 10, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 11, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000032985348833946 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000032985348833946 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000010995116282734 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000010995116282734) .
        minus { sn:pers00000010995116282734 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 6, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 7, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000010995116282734 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000010995116282734 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000032985348835827 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000032985348835827) .
        minus { sn:pers00000032985348835827 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 6, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 7, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000032985348835827 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000032985348835827 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000028587302324451 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000028587302324451) .
        minus { sn:pers00000028587302324451 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 1, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 2, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000028587302324451 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000028587302324451 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000000000000005134 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000000000000005134) .
        minus { sn:pers00000000000000005134 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000000000000005134 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000000000000005134 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000019791209305078 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000019791209305078) .
        minus { sn:pers00000019791209305078 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 9, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 10, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000019791209305078 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000019791209305078 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000026388279069277 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000026388279069277) .
        minus { sn:pers00000026388279069277 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 6, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 7, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000026388279069277 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000026388279069277 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000013194139543348 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000013194139543348) .
        minus { sn:pers00000013194139543348 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000013194139543348 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000013194139543348 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000024189255820659 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000024189255820659) .
        minus { sn:pers00000024189255820659 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000024189255820659 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000024189255820659 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000017592186044696 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000017592186044696) .
        minus { sn:pers00000017592186044696 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 1, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 2, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000017592186044696 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000017592186044696 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000032985348841846 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000032985348841846) .
        minus { sn:pers00000032985348841846 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 7, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 8, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000032985348841846 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000032985348841846 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000028587302329583 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000028587302329583) .
        minus { sn:pers00000028587302329583 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 12, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 1, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000028587302329583 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000028587302329583 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000010995116280055 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000010995116280055) .
        minus { sn:pers00000010995116280055 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 9, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 10, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000010995116280055 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000010995116280055 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000032985348838951 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000032985348838951) .
        minus { sn:pers00000032985348838951 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 5, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 6, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000032985348838951 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000032985348838951 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000013194139535876 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000013194139535876) .
        minus { sn:pers00000013194139535876 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 9, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 10, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000013194139535876 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000013194139535876 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000030786325588541 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000030786325588541) .
        minus { sn:pers00000030786325588541 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 8, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 9, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000030786325588541 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000030786325588541 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000004398046515906 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000004398046515906) .
        minus { sn:pers00000004398046515906 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 3, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 4, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000004398046515906 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000004398046515906 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000019791209306235 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000019791209306235) .
        minus { sn:pers00000019791209306235 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 3, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 4, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000019791209306235 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000019791209306235 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000024189255815589 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000024189255815589) .
        minus { sn:pers00000024189255815589 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 11, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 12, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000024189255815589 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000024189255815589 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000032985348842209 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000032985348842209) .
        minus { sn:pers00000032985348842209 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 4, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 5, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000032985348842209 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000032985348842209 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000010995116280392 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000010995116280392) .
        minus { sn:pers00000010995116280392 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 1, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 2, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000010995116280392 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000010995116280392 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;

sparql select ?first ?last ((coalesce(?s1, 0) - coalesce(?s2,0)) as ?score) ?fof ?gender ?locationname #Q10 
where {
   {select distinct ?fof
    where {
        sn:pers00000010995116285713 snvoc:knows ?fr .
        ?fr snvoc:knows ?fof .
        filter (?fof != sn:pers00000010995116285713) .
        minus { sn:pers00000010995116285713 snvoc:knows ?fof } .
    }
   } .
   optional { ?fof snvoc:firstName ?first } .
   optional { ?fof snvoc:lastName ?last } .
   ?fof snvoc:gender ?gender .     ?fof snvoc:birthday ?bday .
   ?fof snvoc:isLocatedIn ?based . ?based foaf:name ?locationname .
   filter (1 = if (month (?bday) = 10, if (day(?bday) >= 21, 1, 0), if (month (?bday) = 11, if (day(?bday) < 22, 1, 0), 0))) .
   optional {
     {select ?fof (count (distinct ?post) as ?s1)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        ?post snvoc:hasTag ?tag .
        sn:pers00000010995116285713 snvoc:hasInterest ?tag
      }
      group by ?fof
     }	    
   }.
   optional {
     {select ?fof (count (distinct ?post) as ?s2)
      where {
        ?post a snvoc:Post .
        ?post snvoc:hasCreator ?fof .
        filter (!exists {sn:pers00000010995116285713 snvoc:hasInterest ?tag. ?post snvoc:hasTag ?tag .})
      }
      group by ?fof
     }
   }.
}
order by desc(?score) ?fof
limit 10
;
