https://www.lmorched.com/2018/12/format-factory.html