It would be nice to have the script simply do the following:
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[usp_ClientPayers_Get]') AND type in (N'P', N'PC'))
BEGIN
ALTER PROCEDURE [dbo].[usp_ClientPayers_Get]
@filterID int
AS
....
WITHOUT the whole EXEC dbo.sp_executesql stuff...