Below is the list of tables from the database along with their columns and datatype. Need to generate an accurate SQL query for the question.
Only use the columns present in the respective table. Only use the columns which are required to generate the SQL query. Only use table joins if required and not otherwise.

### Tables ###
TABLE: CREATE TABLE MODEL_LIST (Model VARCHAR, Maker VARCHAR)
TABLE: CREATE TABLE CAR_MAKERS (Id VARCHAR, FullName VARCHAR)
TABLE: CREATE TABLE CAR_NAMES (Model VARCHAR, MakeId VARCHAR)
TABLE: CREATE TABLE CARS_DATA (Id VARCHAR, weight VARCHAR)

### Question ###
Which distinctive models are produced by maker with the full name General Motors or weighing more than 3500?

### Accurate SQL ###

SELECT DISTINCT T2.Model FROM CAR_NAMES AS T1 JOIN MODEL_LIST AS T2 ON T1.Model = T2.Model JOIN CAR_MAKERS AS T3 ON T2.Maker = T3.Id JOIN CARS_DATA AS T4 ON T1.MakeId = T4.Id WHERE T3.FullName = 'General Motors' OR T4.weight > 3500