splitting methods