Why hasn't this been implemented yet! Either solution is good.