(.module: [library [lux "*" [control ["[0]" maybe ("[1]#[0]" functor)]] [data ["[0]" text ["%" format {"+" format}]] [collection ["[0]" list ("[1]#[0]" functor)]]]]] ["[0]" // {"+" Entity Black_List} ["_" term] [// ["$" document]]]) (def: .public entity (-> Entity Text) %.text) (def: .public (black_list black_list) (-> Black_List Text) (let [scope (format "The rights granted under " _.license) effect "shall not be granted to the following entities, or any subsidiary thereof" justification (|> black_list (value@ //.#justification) (maybe#each (|>> (format ", due to "))) (maybe.default "")) entities (|> black_list (value@ //.#entities) (list#each ..entity) (text.interposed text.new_line))] (format scope " " effect justification ":" text.new_line entities)))