struct Resources {
mut:
	hru u64
	sru u64
	cru u64
	mru u64
}

fn (a Resources) < (b &Resources) bool {
	return a.hru < b.hru && a.sru < b.sru && a.cru < b.cru && a.mru < b.mru
}

fn (a &Resources) == (b Resources) bool {
	return a.hru == b.hru
}

fn test_struct_with_reference_operands_for_the_overloaded_operators_do_work() {
	aa := Resources{}
	bb := Resources{}
	assert dump(aa < bb) == false
	assert dump(aa == bb) == true
	assert dump(aa != bb) == false
	assert dump(aa > bb) == false
	assert dump(aa <= bb) == true
	assert dump(aa >= bb) == true
}
