complete material logic