def calc_priority(node, from_targets):
    """
    ノードの優先度を返す
    優先度の計算
        ダミーノード：9999999999999999999999999999(大きい値)
        その他：ソースまたはターゲットの個数
    Args:
        node: 優先度を計算したいノード
        from_targets: ダミーノード以外において、Trueならtargetsから、Falseならsourcesから計算する。
    Return:
        計算結果　int
    """
    if node.is_dummy:
        return 9999999999999999999999999999
    return len(node.targets) if from_targets else len(node.sources)