variable size rect