type limits
resolve conflict