To generate materials with optimal adsorption behavior for carbon capture, a combination of the POREMAKE constructor, the NSGA algorithm and machine learning is used. The POREMAKE constructor is used to assemble a MOF from the available building blocks. We start by producing an initial set of about 66 thousand MOFs, by randomly selecting topologies and building blocks compatible with these topologies. To lower the computational cost, structures containing unit cell lengths greater than 60 Å or more than 1500 atoms are excluded from the process, following the protocol of Lee et al. . In Figure we provide information on the distribution of topologies, building blocks, and structural properties within this initial set.