using @ instead of * where appropriate