Talk about outgrown… This looks way too complex for what it is supposed to do…