diff --git a/src/main/scala/comb.scala b/src/main/scala/comb.scala
new file mode 100644
index 0000000000000000000000000000000000000000..8819899d39dec47640e0c11c8a3a1fa9f707c72a
--- /dev/null
+++ b/src/main/scala/comb.scala
@@ -0,0 +1,48 @@
+package CombParse
+
+import scala.util.parsing.combinator._
+
+
+class Arith extends JavaTokenParsers {
+  
+  def program : Parser[String] = {
+    def programInOut: Parser[Any] = "(" ~ opt( ident ~ opt(rep("," ~ ident)) ) ~ ")"
+    "program" ~> ident <~  opt(programInOut) ~ ";"
+  }
+  
+  def vars:Parser[List[String]] =
+    "var" ~ ident ~ opt(rep("," ~> ident)) ~ ":"~"integer"~";" ^^
+      {
+        case "var" ~ id ~ optlstId ~ ":" ~ "integer"~";" =>
+          optlstId match {
+            case Some(s) =>
+              id :: s
+            case None =>
+              List(id)
+          }
+      }
+  lazy val page = getpage(i.link)
+    lazy val metadata = i.toMetadata ++  getter.getMetadata(page)
+    lazy val downLink  = metadata.find(_.key == "DownloadLink").get.value
+    lazy val filename  = metadata.find(_.key == "NomeArquivo" ).get.value
+  def param:Parser[String] =
+    ident ~ opt(rep("," ~> ident)) ~ ":"~"integer"~";"
+//  def params:Parser[List[String]] =
+//    opt("(" ~ param ~ opt(rep("," ~ param)) ~ ")")
+//  def procedure:Parser[List[String]] =
+//    "procedure" ~ ident ~ params
+  
+}
+
+object MyParser extends Arith {
+  val input = Seq(
+    "program lala23(adkwopadw23, faw4ea,aduwh28 )   ;",
+    "var a,v,b23,sd :integer;"
+  )
+  
+  def main(args: Array[String]) {
+    println(
+        parseAll(program, input(0)).get
+        )
+  }
+}
\ No newline at end of file