added rank2a()