a little faster, a litte more memory hungry, a little less syntax