sketch of methods