The man who faces terror charges over Monday's bus terminal bombing in New York posted a warning to US President Donald trump just before the attack.
"Trump you failed to protect your nation," it read. The post by Akayed Ullah was revealed in charges filed by federal prosecutors on Tuesday.
They say the 27-year-old Bangladeshi immigrant carried out the bombing in support of the Islamic State group.
He wounded himself and three others in the Monday morning attack.
Mr Ullah is accused of blowing up a crude device strapped to his body in an underpass at Manhattan's Port Authority Bus Terminal during the rush hour.
The New York Police Department (NYPD) tweeted that he was facing state charges including criminal possession of a weapon, supporting an act of terrorism and making a "terroristic threat".
The federal charges, announced later, include providing material support to a foreign terrorist organisation, using a weapon of mass destruction and bombing a public place.
Mr Ullah told investigators he had made the bomb at home using materials that included Christmas lights wire, prosecutors say. The device was affixed to his body with Velcro straps.
He admitted doing "it for the Islamic State" and was motivated by US air strikes on IS targets, according to the federal complaint filed by prosecutors.
The suspect's home in the New York City borough of Brooklyn is being searched. Police believe he acted alone.
Mr Ullah immigrated to the US on a family visa in 2011 from the Chittagong area of Bangladesh.
The Bangladeshi government says he had no criminal record in the country, which he last visited in September. The visit lasted about six weeks, his uncle told the Associated Press news agency.
Mr Ullah's wife did not join him in the US. She and other family members are now being questioned to try to understand how he was radicalised.
US President Donald Trump has said Monday's attack, which followed a terror attack in Manhattan in October that killed eight people, "highlights the urgent need... to enact legislative reforms to protect the American people".
"America must fix its lax immigration system, which allows far too many dangerous, inadequately vetted people to access our country," Mr Trump added.