first try at cfg supervised learn