with changes this looks almost reasonable with no data