A more efficient client-side methods