local Vehicle = {}
Vehicle.__index = Vehicle
function Vehicle.new(name)
    return setmetatable({ name = name }, Vehicle)
end
function Vehicle:describe()
    print(self.name .. " is a vehicle.")
end

local Car = setmetatable({}, { __index = Vehicle })
Car.__index = Car
function Car.new(name)
    return setmetatable(Vehicle.new(name), Car)
end

function Car:describe()
    print(self.name .. " is a car.")
end
Vehicle.new("Cart"):describe()
Car.new("Beetle"):describe()
