merge with F library from professional project
tests unit are broken, have to fix first !!