Not perfect but good value for money.