====================
Pragma Any
====================

pragma experimental abiencoderv2;

---

(source_file
  (pragma_directive (any_pragma_token (identifier) (pragma_value))))

====================
Pragma Directive
====================

pragma solidity 0.4.0;

---

(source_file
 (pragma_directive (solidity_pragma_token (solidity_version))))

====================
Multiple Pragma Directives
====================

pragma solidity 0.4.0 0.5.0;

---

(source_file
  (pragma_directive (solidity_pragma_token
			(solidity_version) (solidity_version))))

====================
Equality Pragma Directives
====================

pragma solidity <0.4.0 ^0.5.0 ~0.5;
pragma solidity =0.4;


---

(source_file
  (pragma_directive
    (solidity_pragma_token
      (solidity_version_comparison_operator)
      (solidity_version)
      (solidity_version_comparison_operator)
      (solidity_version)
      (solidity_version_comparison_operator)
      (solidity_version)))
  (pragma_directive
    (solidity_pragma_token
      (solidity_version_comparison_operator)
      (solidity_version))))

