simulating basic types