add materialize method