caveIn method added