Covered a few possible bugs such as null values; set function now updates accordingly