base types improved