Added the remaining functionality