that implementation looks reasonable