flow = "composites"
[[input]]
name = "limit"
type = "Number"
[[output]]
name = "composites"
type = "Number"
[[output]]
name = "last"
type = "Number"
[[process]]
alias = "sqrt"
source = "lib://flowstdlib/math/sqrt"
[[connection]]
from = "input/limit"
to = "sqrt"
[[process]]
alias = "divisors"
source = "lib://flowstdlib/math/sequence"
input.start = {once = 2}
input.step = {once = 1}
[[connection]]
from = "sqrt"
to = "divisors/end"
[[process]]
source = "generate_composites"
[[connection]]
from = "divisors/sequence"
to = "generate_composites/start"
[[connection]]
from = "input/limit"
to = "generate_composites/limit"
[[connection]]
from = "generate_composites/composites"
to = "output/composites"
[[process]]
alias = "join"
source = "lib://flowstdlib/control/join"
input.data = { always = 1 }
[[connection]]
from = "generate_composites/subsequence-end"
to = "join/control"
[[process]]
alias = "subsequence-count"
source = "lib://flowstdlib/math/add"
input.i1 = { once = 1 }
[[connection]]
from = "join"
to = "subsequence-count/i2"
[[connection]]
from = "subsequence-count"
to = "subsequence-count/i1"
[[process]]
alias = "compare"
source = "lib://flowstdlib/control/compare_switch"
[[connection]]
from = "divisors/last"
to = "compare/left"
[[connection]]
from = "subsequence-count"
to = "compare/right"
[[connection]]
from = "compare/equal"
to = "output/last"