fixed multiple declaration restrictions