多项选择题

下面能够作为买卖合同保证人的项目有( )。

A.具有代为清偿债务能力的企业法人
B.具有代为清偿债务能力的国家机关
C.以公益为目的的学校
D.具有代为清偿债务能力的公民