visiting methods only once