func (r Region) Size() int {
	return r.End() - r.Begin()
}
Returns the size of the region
package text
import (
	"fmt"
)
type (
	Region struct {
		A, B int
	}
)
func (r Region) String() string {
	return fmt.Sprintf("(%d, %d)", r.A, r.B)
}
func (r Region) Begin() int {
	return Min(r.A, r.B)
}
func (r Region) End() int {
	return Max(r.A, r.B)
}
func (r Region) Contains(point int) bool {
	return point >= r.Begin() && point <= r.End()
}
func (r Region) Covers(r2 Region) bool {
	return r.Contains(r2.Begin()) && r2.End() <= r.End()
}
func (r Region) Empty() bool {
	return r.A == r.B
}