Week3: initial implementation of Fast