* use prepareView instead of two other methods