时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
            空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
             64bit IO Format: %lld
        
     
    题目描述
        
        
    
            
            萌学姐在玩大型手游《futa go》,他现在准备进入作战环节,所以他准备安排自己的队伍。
 队伍配置里,可供玩家选择的作战人物被称作“从者”,玩家可以对每个“从者”可以装备至多1件的“概念礼装”,玩家具有一个cost上限值。详细定义如下:
 1、    每个从者和概念礼装都具有攻击值ATK。
 2、    每个从者和概念礼装都会占据一定的cost值。
 3、    每个从者和概念礼装只能上场一次,不能重复使用。
 4、    概念礼装只能装备在从者上,不能单独存在。
 5、    选择的从者和概念礼装的cost值之和不能超过玩家的cost上限值。
 6、    最多可以选择5名从者(在cost值限制下)。
 现在给出玩家仓库的每个从者和每件概念礼装的ATK值和cost值,问在满足定义的条件下,队伍可以凑出的最大ATK值。
                            输入描述:
                                                    第1行输入三个整数n,m,d,代表玩家仓库的从者数量、概念礼装数量和cost上限值。
第2-n+1行,每行输入两个整数a1,b1,表示第i个从者的ATK值和cost值。
第n+2-n+m+1行,每行输入两个整数a2,b2,表示第i个概念礼装的ATK值和cost值。
数据保证:0<n,m≤300,25≤d≤138,1000≤a1≤15488,500≤a2≤2500,3≤b1,b2≤12
                                                                            输出描述:
                                                    输出一行,一个整数,代表可以凑出的最大ATK值。
                                                                            
                        
                            示例1
                        
                        
                            
                                输入
                                复制
                                
                                
                                    4 2 25
2001 5
2002 5
2003 5
4010 10
2004 10
2005 10
                                 
                             
                            
                                                            
                                    说明
                                    
                                        派上前4名从者,最大ATK值=2001+2002+2003+4010=10016(cost总值为25=玩家cost上限)