modified to use internal liblinear