def analyze_siblings(self):
        siblings = yield self.client.get_children(self.base_path)
        siblings = [name for name in siblings if sequential_re.match(name)]

        siblings.sort(key=self.sequence_number)

        owned_positions = {}

        for index, path in enumerate(siblings):
            if self.guid in path:
                owned_positions[self.determine_znode_label(path)] = index

        raise gen.Return((owned_positions, siblings))