public void assign(Rectangle rect, V value)
        {
            if (!split) {
                values.put(rect, value);
                color = true;
                return;
            }
        
            if (tl.intersects(rect)) {
                tl.assign(rect, value);
            } 
            if (tr.intersects(rect)) {
                tr.assign(rect, value);
            } 
            if (bl.intersects(rect)) {
                bl.assign(rect, value);
            } 
            if (br.intersects(rect)) {
                br.assign(rect, value);
            }
        }