shadowing method