custom front end, part 2