added lib linear