this was hard to get under 500kb