implement topdown controls