Yes, you'll need to set up private variables because at the moment you will end up in a loop trying to read the get {}
portion because it references itself.
Set up a private backing variable like this:
private int _bedsTotal;
public int BedsTotal {
get { return (_bedsTotal < 0) ? 0 : _bedsTotal; }
private set { _bedsTotal = value; }
}
Then you can access beds through the private setter