Doc for decoder
Make input factory static