### Database Schema:
CREATE TABLE prof (
	prof_id	INTEGER	NULL	PRIMARY KEY,
	gender	TEXT	NULL,
	first_name	TEXT	NULL,
	last_name	TEXT	NULL,
	email	TEXT	NULL,
	popularity	INTEGER	NULL,
	teachingability	INTEGER	NULL,
	graduate_from	TEXT	NULL
);

CREATE TABLE RA (
	student_id	INTEGER	NULL	PRIMARY KEY,
	capability	INTEGER	NULL,
	prof_id	INTEGER	NULL	PRIMARY KEY,
	salary	TEXT	NULL,
	foreign key (student_id) references student (student_id),
	foreign key (prof_id) references prof (prof_id)
);

CREATE TABLE student (
	student_id	INTEGER	NULL	PRIMARY KEY,
	f_name	TEXT	NULL,
	l_name	TEXT	NULL,
	phone_number	TEXT	NULL,
	email	TEXT	NULL,
	intelligence	INTEGER	NULL,
	gpa	REAL	NULL,
	type	TEXT	NULL
);

CREATE TABLE registration (
	course_id	INTEGER	NULL	PRIMARY KEY,
	student_id	INTEGER	NULL	PRIMARY KEY,
	grade	TEXT	NULL,
	sat	INTEGER	NULL,
	foreign key (student_id) references student (student_id),
	foreign key (course_id) references course (course_id)
);

CREATE TABLE course (
	course_id	INTEGER	NULL	PRIMARY KEY,
	name	TEXT	NULL,
	credit	INTEGER	NULL,
	diff	INTEGER	NULL
);

### User's Query:
Please give the name of the course in which most numbers of the students got an A. Also, list the full name of the students who got an A in this course.

### Extra Knowledge:
most number of students got an A refers MAX(COUNT(student_id WHERE grade = 'A')); full name = f_name, l_name; got an A refers to grade = 'A';
SELECT T3.name, T2.f_name, T2.l_name FROM registration AS T1 INNER JOIN student AS T2 ON T1.student_id = T2.student_id INNER JOIN course AS T3 ON T1.course_id = T3.course_id WHERE T1.grade = 'A' GROUP BY T3.name ORDER BY COUNT(T1.student_id) DESC LIMIT 1