Block(List(ValDef(Modifiers(), newTermName("bookRegex"), TypeTree(), Select(Apply(Select(Ident(scala.Predef), newTermName("augmentString")), List(Literal(Constant("/api/book/(.+)")))), newTermName("r"))), ValDef(Modifiers(), newTermName("authorRegex"), TypeTree(), Select(Apply(Select(Ident(scala.Predef), newTermName("augmentString")), List(Literal(Constant("/api/author/(.+)")))), newTermName("r"))), ValDef(Modifiers(), newTermName("categoryRegex"), TypeTree(), Select(Apply(Select(Ident(scala.Predef), newTermName("augmentString")), List(Literal(Constant("/api/category/(.+)")))), newTermName("r")))), Match(Ident(newTermName("s")), List(CaseDef(Apply(Ident(newTermName("bookRegex")), List(Bind(newTermName("id"), Ident(nme.WILDCARD)))), EmptyTree, Apply(Select(Ident(scala.Some), newTermName("apply")), List(Apply(Select(Literal(Constant("Book with ID ")), newTermName("$plus")), List(Ident(newTermName("id"))))))), CaseDef(Apply(Ident(newTermName("authorRegex")), List(Bind(newTermName("id"), Ident(nme.WILDCARD)))), EmptyTree, Apply(Select(Ident(scala.Some), newTermName("apply")), List(Apply(Select(Literal(Constant("Author with ID ")), newTermName("$plus")), List(Ident(newTermName("id"))))))), CaseDef(Apply(Ident(newTermName("categoryRegex")), List(Bind(newTermName("id"), Ident(nme.WILDCARD)))), EmptyTree, Apply(Select(Ident(scala.Some), newTermName("apply")), List(Apply(Select(Literal(Constant("Category with ID ")), newTermName("$plus")), List(Ident(newTermName("id"))))))), CaseDef(Ident(nme.WILDCARD), EmptyTree, Ident(scala.None)))))