Gilardino out for three weeks