implemented protect & hoard