split f16 into its own package