The H&H CTO Mr.H. is a very busy and suspicious person. As he is very busy he visits a lot of different places during the day. And as he is suspicious he uses only well-known for him roads between this places. Recently the traffic load on the streets became pretty high. So Mr.H. would like to make sure, that there are at least two different routes he can safely drive between every two places of his interest. Two routes are considered different if they have no common roads (but can have common intermediate places). All roads are bidirectional.
You are given the list of Mr.H.'s places of interest and list of currently safe roads. Your task is to find minimal number of roads to be added to satisfy Mr.H.'s requirements.
Выходные данные
Write in the first line of the output file number of additional roads Q. Write in the following Q lines descriptions of additional vertices — numbers of places the corresponding road connects in any order separated by a space. If there is no solutions, output single integer "-1". After adding new roads every two places should remain connected with not more then one road.