Updated to no longer require "new" in constructing