Works. Return type OK.
Still trying to simplify the spaghetti initialization phase.
Include yet not checked.