Faits: Faits: A. A._, ressortissant suisse né le 14 juin 1963, a été arrêté et placé en détention préventive le 28 mars 2003 dans le cadre d'une procédure pénale ouverte contre lui des chefs notamment de faux dans les titres, d'escroquerie, d'abus de confiance, de gestion déloyale et de banqueroute frauduleuse. A._ a sollicité à plusieurs reprises sans succès sa libération provisoire auprès de la Chambre d'accusation du canton de Genève (ci-après: la Chambre d'accusation ou la cour cantonale), puis du Tribunal fédéral. Dans un arrêt rendu le 12 février 2004, celui-ci a confirmé l'existence de charges suffisantes à l'encontre du prévenu en relation avec les infractions dénoncées et le maintien de la détention préventive en raison des risques de fuite et de collusion (1P.32/2004). Par ordonnance du 16 novembre 2004, la Chambre d'accusation a autorisé la prolongation de la détention préventive de A._ pour une durée de deux mois en raison des risques de fuite et de collusion. Elle a estimé que le principe du respect de la proportionnalité commençait à se poser et qu'une libération provisoire assortie de mesures propres à écarter le risque de fuite pouvait entrer en considération. Elle a ainsi ordonné la mise en liberté provisoire de A._, moyennant le versement d'une caution de 100'000 fr. en espèces, à charge pour lui de se présenter à tous les actes de la procédure aussitôt qu'il en sera requis. Le Tribunal fédéral a partiellement admis, dans la mesure où il était recevable, le recours formé contre cette décision qu'il a annulée au terme d'un arrêt rendu le 7 décembre 2004 (1P.682/2004). Il a estimé en substance que la motivation retenue ne permettait pas de savoir si la détention préventive était disproportionnée par rapport à la peine prévisible ou par rapport à la conduite de la procédure, auquel cas une libération sous caution était envisageable, pour autant que le montant de celle-ci ne soit pas prohibitif. Statuant à nouveau le 10 décembre 2004, la Chambre d'accusation a prolongé la détention de A._ jusqu'au 16 janvier 2005 en raison d'un risque de fuite très concret résultant des liens du prévenu avec l'Allemagne où résident sa femme et sa fille, dans une maison lui appartenant, et de son absence de véritables attaches en Suisse. Elle a prononcé la mise en liberté provisoire de A._ moyennant le versement en espèces d'une caution de 100'000 fr., à charge pour lui de se présenter à tous les actes de la procédure aussitôt qu'il en sera requis. Au terme d'un arrêt rendu le 26 janvier 2005, le Tribunal fédéral a annulé cette décision, insuffisamment motivée s'agissant du montant de la caution exigée du prévenu pour obtenir sa libération provisoire. Il a renvoyé le dossier de la cause à la cour cantonale à charge pour celle-ci de statuer à nouveau sur ce point dans le respect du droit d'être entendu du prévenu (1P.764/2004). Par ordonnance du 1er février 2005, la Chambre d'accusation a confirmé la prolongation de la détention prononcée le 10 décembre 2004 et ordonné la mise en liberté provisoire de A._ moyennant le versement d'une caution de 20'000 fr. en espèces, à charge pour celui-là de se présenter à tous les actes de la procédure aussitôt qu'il en sera requis. A._ a été remis en liberté provisoire le 7 février 2005 après le dépôt de la somme de 20'000 fr. versée par son épouse. A._ a été remis en liberté provisoire le 7 février 2005 après le dépôt de la somme de 20'000 fr. versée par son épouse. B. Agissant par la voie du recours de droit public, A._ demande au Tribunal fédéral d'annuler cette ordonnance. Invoquant les art. 9 et 29 al. 2 Cst., il reproche à la Chambre d'accusation d'avoir violé son droit d'être entendu et statué arbitrairement en omettant d'indiquer les raisons pour lesquelles elle estimait nécessaire de subordonner sa libération immédiate au versement d'une caution de 20'000 fr. Il requiert l'assistance judiciaire. La Chambre d'accusation conclut au rejet du recours. Le Procureur général du canton de Genève n'a pas déposé d'observations.