Produces almost the same result but takes in account all the edges instead of only four, which gets rid of the need to select specific edges. Also, added a check to prevent it from destroying boundaries. Differential Revision: https://developer.blender.org/D5763