holy crap who decided str was a good default type