[INST] Here is a database schema:
circuits :
circuitId [ INTEGER ] primary_key
circuitRef [ TEXT ]
name [ TEXT ]
location [ TEXT ]
country [ TEXT ]
lat [ REAL ]
lng [ REAL ]
alt [ INTEGER ]
url [ TEXT ]

constructors :
constructorId [ INTEGER ] primary_key
constructorRef [ TEXT ]
name [ TEXT ]
nationality [ TEXT ]
url [ TEXT ]

drivers :
driverId [ INTEGER ] primary_key
driverRef [ TEXT ]
number [ INTEGER ]
code [ TEXT ]
forename [ TEXT ]
surname [ TEXT ]
dob [ DATE ]
nationality [ TEXT ]
url [ TEXT ]

seasons :
year [ INTEGER ] primary_key
url [ TEXT ]

races :
raceId [ INTEGER ] primary_key
year [ INTEGER ] races.year = seasons.year
round [ INTEGER ]
circuitId [ INTEGER ] races.circuitId = circuits.circuitId
name [ TEXT ]
date [ DATE ]
time [ TEXT ]
url [ TEXT ]

constructorResults :
constructorResultsId [ INTEGER ] primary_key
raceId [ INTEGER ] constructorResults.raceId = races.raceId
constructorId [ INTEGER ] constructorResults.constructorId = constructors.constructorId
points [ REAL ]
status [ TEXT ]

constructorStandings :
constructorStandingsId [ INTEGER ] primary_key
raceId [ INTEGER ] constructorStandings.raceId = races.raceId
constructorId [ INTEGER ] constructorStandings.constructorId = constructors.constructorId
points [ REAL ]
position [ INTEGER ]
positionText [ TEXT ]
wins [ INTEGER ]

driverStandings :
driverStandingsId [ INTEGER ] primary_key
raceId [ INTEGER ] driverStandings.raceId = races.raceId
driverId [ INTEGER ] driverStandings.driverId = drivers.driverId
points [ REAL ]
position [ INTEGER ]
positionText [ TEXT ]
wins [ INTEGER ]

lapTimes :
raceId [ INTEGER ] lapTimes.raceId = races.raceId
driverId [ INTEGER ] lapTimes.driverId = drivers.driverId
lap [ INTEGER ]
position [ INTEGER ]
time [ TEXT ]
milliseconds [ INTEGER ]

pitStops :
raceId [ INTEGER ] pitStops.raceId = races.raceId
driverId [ INTEGER ] pitStops.driverId = drivers.driverId
stop [ INTEGER ]
lap [ INTEGER ]
time [ TEXT ]
duration [ TEXT ]
milliseconds [ INTEGER ]

qualifying :
qualifyId [ INTEGER ] primary_key
raceId [ INTEGER ] qualifying.raceId = races.raceId
driverId [ INTEGER ] qualifying.driverId = drivers.driverId
constructorId [ INTEGER ] qualifying.constructorId = constructors.constructorId
number [ INTEGER ]
position [ INTEGER ]
q1 [ TEXT ]
q2 [ TEXT ]
q3 [ TEXT ]

status :
statusId [ INTEGER ] primary_key
status [ TEXT ]

results :
resultId [ INTEGER ] primary_key
raceId [ INTEGER ] results.raceId = races.raceId
driverId [ INTEGER ] results.driverId = drivers.driverId
constructorId [ INTEGER ] results.constructorId = constructors.constructorId
number [ INTEGER ]
grid [ INTEGER ]
position [ INTEGER ]
positionText [ TEXT ]
positionOrder [ INTEGER ]
points [ REAL ]
laps [ INTEGER ]
time [ TEXT ]
milliseconds [ INTEGER ]
fastestLap [ INTEGER ]
rank [ INTEGER ]
fastestLapTime [ TEXT ]
fastestLapSpeed [ TEXT ]
statusId [ INTEGER ] results.statusId = status.statusId

Please write me a SQL statement that answers the following question: Which constructor scored most points from Monaco Grand Prix between 1980 and 2010? List the score, name and nationality of this team. [/INST]
SELECT T2.name FROM constructorResults AS T1 INNER JOIN constructors AS T2 ON T1.constructorId = T2.constructorId INNER JOIN races AS T3 ON T3.raceid = T1.raceid WHERE T3.name = 'Monaco Grand Prix' AND T3.year BETWEEN 1980 AND 2010 GROUP BY T2.name ORDER BY SUM(T1.points) DESC LIMIT 1;