Better f_ structure, bit more modularized