add type declaration, getting there ...
hacking away ...