put VAM first because its most convenient because it supports dependencies