]> Repositorios git - scryer-prolog.git/log
scryer-prolog.git
2 years agoENHANCED: allow Roman numerals in strings
Markus Triska [Wed, 3 May 2023 19:56:04 +0000 (21:56 +0200)]
ENHANCED: allow Roman numerals in strings

Example:

    ?- X = "ↁ".
       X = "ↁ".

This addresses #1790.

2 years agoFIXED: consistent read/write of further control characters, and non-breaking space
Markus Triska [Wed, 3 May 2023 21:23:53 +0000 (23:23 +0200)]
FIXED: consistent read/write of further control characters, and non-breaking space

Example:

    ?- X = '\xa0\'.
       X = '\xa0\'.

This addresses #1768.

2 years agomake tests compatible
Mark [Fri, 23 Jun 2023 00:50:20 +0000 (18:50 -0600)]
make tests compatible

2 years agobacktrack on emission of unsafe register instructions on internal branches
Mark [Fri, 23 Jun 2023 00:28:10 +0000 (18:28 -0600)]
backtrack on emission of unsafe register instructions on internal branches

2 years agoimplement new disjunction compilation
Mark [Sat, 17 Jun 2023 22:28:56 +0000 (16:28 -0600)]
implement new disjunction compilation

2 years agoremove BuildIf, BuildNot, BuildThen TermIterState variants
Mark Thom [Tue, 31 Jan 2023 06:26:50 +0000 (23:26 -0700)]
remove BuildIf, BuildNot, BuildThen TermIterState variants

2 years agocorrect chunk type labeling
Mark Thom [Sun, 1 Jan 2023 18:04:46 +0000 (11:04 -0700)]
correct chunk type labeling

2 years agoremove GetLevelAndUnify and replace it with GetCutPoint
Mark Thom [Wed, 28 Dec 2022 06:42:35 +0000 (23:42 -0700)]
remove GetLevelAndUnify and replace it with GetCutPoint

2 years agoadd QueryTerm::ChunkTypeBoundary
Mark Thom [Wed, 28 Dec 2022 06:19:18 +0000 (23:19 -0700)]
add QueryTerm::ChunkTypeBoundary

2 years agodelete ChunkedTerm, chunked iteration
Mark Thom [Wed, 28 Dec 2022 04:29:29 +0000 (21:29 -0700)]
delete ChunkedTerm, chunked iteration

2 years agonew TermIterState variants
Mark Thom [Tue, 6 Dec 2022 03:49:23 +0000 (20:49 -0700)]
new TermIterState variants

2 years agovariable classification al a carte
Mark Thom [Sun, 13 Nov 2022 17:13:37 +0000 (10:13 -0700)]
variable classification al a carte

2 years agoadd more variable probing, chunk type labeling
Mark Thom [Wed, 2 Nov 2022 03:10:15 +0000 (21:10 -0600)]
add more variable probing, chunk type labeling

2 years agoadapt code generation
Mark Thom [Tue, 18 Oct 2022 04:56:08 +0000 (22:56 -0600)]
adapt code generation

2 years agoadd classifications and occurrence counting
Mark Thom [Tue, 4 Oct 2022 15:24:37 +0000 (09:24 -0600)]
add classifications and occurrence counting

2 years agomilestone marker for surgery
Mark Thom [Wed, 28 Sep 2022 03:04:52 +0000 (21:04 -0600)]
milestone marker for surgery

2 years agobegin adapting the techniques of "Compiling Large Disjunctions"
Mark Thom [Thu, 1 Sep 2022 23:03:00 +0000 (17:03 -0600)]
begin adapting the techniques of "Compiling Large Disjunctions"

3 years agofix current_predicate/1 (#1761)
Mark [Tue, 25 Apr 2023 05:23:19 +0000 (23:23 -0600)]
fix current_predicate/1 (#1761)

3 years agoMerge pull request #1794 from aarroyoc/uppercase-2
Mark Thom [Sun, 23 Apr 2023 23:08:21 +0000 (17:08 -0600)]
Merge pull request #1794 from aarroyoc/uppercase-2

Fix to_upper/to_lower when string is instantiated

3 years agoFix to_upper/to_lower when string is instantiated
Adrián Arroyo Calle [Sat, 22 Apr 2023 08:54:35 +0000 (10:54 +0200)]
Fix to_upper/to_lower when string is instantiated

3 years agoMerge pull request #1797 from triska/clpb_residuals
Mark Thom [Sun, 23 Apr 2023 16:31:40 +0000 (10:31 -0600)]
Merge pull request #1797 from triska/clpb_residuals

remove residual goal for ground BDD

3 years agoremove residual goal for ground BDD
Markus Triska [Sun, 23 Apr 2023 07:20:46 +0000 (09:20 +0200)]
remove residual goal for ground BDD

Example:

    ?- sat(X).
       X = 1.

3 years agodiscard CodeIndex literals from unfolded control operators in preprocessor (#1791)
Mark [Sat, 22 Apr 2023 23:14:00 +0000 (17:14 -0600)]
discard CodeIndex literals from unfolded control operators in preprocessor (#1791)

3 years agoadd and document inlined_instructions/2 to/in diag.pl (#1791)
Mark [Sat, 22 Apr 2023 23:13:24 +0000 (17:13 -0600)]
add and document inlined_instructions/2 to/in diag.pl (#1791)

3 years agoMerge pull request #1796 from triska/dif_si
Mark Thom [Sat, 22 Apr 2023 23:21:03 +0000 (17:21 -0600)]
Merge pull request #1796 from triska/dif_si

ADDED: dif_si/2

3 years agoADDED: dif_si/2
Markus Triska [Sat, 22 Apr 2023 22:37:03 +0000 (00:37 +0200)]
ADDED: dif_si/2

Source: https://stackoverflow.com/questions/20223390/prolog-a-person-is-a-sibling-of-himself

In Scryer Prolog, this is actually not needed, since Scryer Prolog provides
dif/2 in library(dif). However, it is still useful to provide dif_si/2 for two reasons:

  1) to more easily port code from systems where only dif_si/2 is available
  2) to provide correct disequality in other systems that adopt this library

3 years agoMerge pull request #1795 from infogulch/fix-ci-install
Mark Thom [Sat, 22 Apr 2023 22:03:39 +0000 (16:03 -0600)]
Merge pull request #1795 from infogulch/fix-ci-install

Use --force to install cargo2junit

3 years agoUse --force to install cargo2junit
infogulch [Sat, 22 Apr 2023 20:42:10 +0000 (15:42 -0500)]
Use --force to install cargo2junit

This probably appeared now because it's the first time this tool was cached
from a previous run.

3 years agoMerge pull request #1793 from infogulch/fix-action-ref
Mark Thom [Sat, 22 Apr 2023 17:26:45 +0000 (11:26 -0600)]
Merge pull request #1793 from infogulch/fix-action-ref

Change ref for `publish-unit-test-result-action`

3 years agoChange ref for `publish-unit-test-result-action`
infogulch [Sat, 22 Apr 2023 15:18:10 +0000 (10:18 -0500)]
Change ref for `publish-unit-test-result-action`

3 years agoMerge pull request #1789 from aarroyoc/uppercase
Mark Thom [Thu, 20 Apr 2023 05:17:09 +0000 (07:17 +0200)]
Merge pull request #1789 from aarroyoc/uppercase

library(charsio): add to_upper and to_lower

3 years agolibrary(charsio): add to_upper and to_lower
Adrián Arroyo Calle [Tue, 18 Apr 2023 16:48:59 +0000 (18:48 +0200)]
library(charsio): add to_upper and to_lower

3 years agoMerge pull request #1783 from infogulch/test
Mark Thom [Tue, 18 Apr 2023 06:35:45 +0000 (08:35 +0200)]
Merge pull request #1783 from infogulch/test

Refactor CI Workflow

3 years agoRefactor CI Workflow
infogulch [Thu, 13 Apr 2023 00:15:06 +0000 (19:15 -0500)]
Refactor CI Workflow

* Rename the workflow from Test to CI, since it does more than tests
* Run logtalk tests in a separate job to improve isolation
* Publish all xunit/junit test files as build artifacts to be consumed
  by a separate publishing workflow.
* Add "job summary" feature to show a formatted summary of the test
  results on the job summary status page
* Run the CI job once every Wed to ensure that there are always some
  recent builds on master that haven't expired.

3 years agoMerge pull request #1785 from mthom/dependabot/cargo/h2-0.3.17
Mark Thom [Fri, 14 Apr 2023 04:22:32 +0000 (06:22 +0200)]
Merge pull request #1785 from mthom/dependabot/cargo/h2-0.3.17

Bump h2 from 0.3.15 to 0.3.17

3 years agoMerge pull request #1786 from triska/tuples_in
Mark Thom [Fri, 14 Apr 2023 04:22:18 +0000 (06:22 +0200)]
Merge pull request #1786 from triska/tuples_in

FIXED: propagation for ground tuples

3 years agoFIXED: propagation for ground tuples
Markus Triska [Thu, 13 Apr 2023 21:38:55 +0000 (23:38 +0200)]
FIXED: propagation for ground tuples

Example:

    ?- tuples_in([[A,A]],[[0,1],[2,0]]).
       false.

See https://github.com/triska/clpz/issues/22.

3 years agoBump h2 from 0.3.15 to 0.3.17
dependabot[bot] [Thu, 13 Apr 2023 17:03:50 +0000 (17:03 +0000)]
Bump h2 from 0.3.15 to 0.3.17

Bumps [h2](https://github.com/hyperium/h2) from 0.3.15 to 0.3.17.
- [Release notes](https://github.com/hyperium/h2/releases)
- [Changelog](https://github.com/hyperium/h2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/h2/compare/v0.3.15...v0.3.17)

---
updated-dependencies:
- dependency-name: h2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
3 years agoMerge pull request #1780 from triska/tuples_in
Mark Thom [Wed, 12 Apr 2023 17:10:50 +0000 (19:10 +0200)]
Merge pull request #1780 from triska/tuples_in

Various improvements to tuples_in/2

3 years agoFIXED: enforce equality also for ground elements in tuples
Markus Triska [Tue, 11 Apr 2023 20:31:09 +0000 (22:31 +0200)]
FIXED: enforce equality also for ground elements in tuples

Example:

    ?- tuples_in([[A,B]], [[1,2],[3,4]]),
       tuples_in([[A,B]], [[3,2]]).
       false.

See https://github.com/SWI-Prolog/swipl-devel/issues/1160.

3 years agodo not create attributed variables for ground tuples
Markus Triska [Tue, 11 Apr 2023 19:24:34 +0000 (21:24 +0200)]
do not create attributed variables for ground tuples

3 years agoactually disable and reenable the queue
Markus Triska [Tue, 11 Apr 2023 19:19:10 +0000 (21:19 +0200)]
actually disable and reenable the queue

3 years agoremove no longer needed clpz_relation attributes
Markus Triska [Tue, 11 Apr 2023 19:16:02 +0000 (21:16 +0200)]
remove no longer needed clpz_relation attributes

3 years agodo not leave an attribute when (re-)enabling a queue
Markus Triska [Tue, 11 Apr 2023 19:14:18 +0000 (21:14 +0200)]
do not leave an attribute when (re-)enabling a queue

3 years agoMerge pull request #1776 from infogulch/master
Mark Thom [Fri, 7 Apr 2023 04:09:08 +0000 (06:09 +0200)]
Merge pull request #1776 from infogulch/master

Add iso prolog / logtalk tests to test runner

3 years agoAllow the test suite to fail without failing the build
infogulch [Thu, 6 Apr 2023 14:40:03 +0000 (09:40 -0500)]
Allow the test suite to fail without failing the build

3 years agoAdd logtalk test suite
infogulch [Sun, 2 Apr 2023 20:47:02 +0000 (15:47 -0500)]
Add logtalk test suite

3 years agoTest workflow cleanup; switch to macos-11
infogulch [Sun, 2 Apr 2023 19:47:52 +0000 (14:47 -0500)]
Test workflow cleanup; switch to macos-11

3 years agoMerge pull request #1772 from triska/number_chars
Mark Thom [Sun, 2 Apr 2023 17:24:59 +0000 (19:24 +0200)]
Merge pull request #1772 from triska/number_chars

FIXED: number_chars(N, "0' "), addressing #1580.

3 years agoMerge pull request #1774 from infogulch/master
Mark Thom [Sun, 2 Apr 2023 17:24:36 +0000 (19:24 +0200)]
Merge pull request #1774 from infogulch/master

Optimize Test GH action

3 years agoFIXED: number_chars(N, "0' "), addressing #1580.
Markus Triska [Sat, 1 Apr 2023 18:29:02 +0000 (20:29 +0200)]
FIXED: number_chars(N, "0' "), addressing #1580.

There may be a more elegant way to solve this.

3 years agoAdd cache step to test workflow
infogulch [Sat, 1 Apr 2023 23:11:35 +0000 (18:11 -0500)]
Add cache step to test workflow

3 years agoMerge pull request #1770 from triska/doc
Mark Thom [Sat, 1 Apr 2023 21:28:19 +0000 (23:28 +0200)]
Merge pull request #1770 from triska/doc

Smaller documentation improvements to explain compilation and target directory

3 years agoDOC: link to "Indexing dif/2"
Markus Triska [Sat, 1 Apr 2023 08:42:58 +0000 (10:42 +0200)]
DOC: link to "Indexing dif/2"

3 years agoDOC: explain location of scryer-prolog after compilation
Markus Triska [Sat, 1 Apr 2023 08:42:13 +0000 (10:42 +0200)]
DOC: explain location of scryer-prolog after compilation

This question was recently raised on the #scryer IRC channel.

3 years agouse the release flag so that the instructions can be used verbatim
Markus Triska [Sat, 1 Apr 2023 08:59:32 +0000 (10:59 +0200)]
use the release flag so that the instructions can be used verbatim

Also, the location of the executable depends on this flag.

3 years agochange "run" to "build", since "run" leads to a Scryer prompt which can be unexpected
Markus Triska [Sat, 1 Apr 2023 08:50:32 +0000 (10:50 +0200)]
change "run" to "build", since "run" leads to a Scryer prompt which can be unexpected

3 years agoMerge pull request #1769 from triska/show_pending_constraints
Mark Thom [Fri, 31 Mar 2023 02:51:34 +0000 (04:51 +0200)]
Merge pull request #1769 from triska/show_pending_constraints

ENHANCED: use call_residue_vars/2 to show all pending constraints

3 years agoENHANCED: use call_residue_vars/2 to show all pending constraints
Markus Triska [Thu, 30 Mar 2023 21:29:49 +0000 (23:29 +0200)]
ENHANCED: use call_residue_vars/2 to show all pending constraints

Example:

    ?- freeze(_, false).
       freeze:freeze(_A,false).

This was originally added in 04ba9bc11af31780cd8fa259d78d151262c3c756,
then reverted, and is now restored.

3 years agobroaden the definition of alpha_char! (#1749, #1515, #1591)
Mark Thom [Sat, 25 Mar 2023 23:22:16 +0000 (17:22 -0600)]
broaden the definition of alpha_char! (#1749, #1515, #1591)

3 years agoMerge pull request #1765 from mthom/dependabot/cargo/openssl-0.10.48
Mark Thom [Sat, 25 Mar 2023 05:20:00 +0000 (06:20 +0100)]
Merge pull request #1765 from mthom/dependabot/cargo/openssl-0.10.48

Bump openssl from 0.10.42 to 0.10.48

3 years agoBump openssl from 0.10.42 to 0.10.48
dependabot[bot] [Sat, 25 Mar 2023 01:27:40 +0000 (01:27 +0000)]
Bump openssl from 0.10.42 to 0.10.48

Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.42 to 0.10.48.
- [Release notes](https://github.com/sfackler/rust-openssl/releases)
- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.42...openssl-v0.10.48)

---
updated-dependencies:
- dependency-name: openssl
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
3 years agoadd '$unattributed_var' builtin (#1758)
Mark Thom [Sun, 19 Mar 2023 05:08:09 +0000 (23:08 -0600)]
add '$unattributed_var' builtin (#1758)

3 years agoMerge pull request #1759 from triska/better_queue
Mark Thom [Thu, 16 Mar 2023 03:34:33 +0000 (04:34 +0100)]
Merge pull request #1759 from triska/better_queue

Better queue

3 years agoremove no longer needed queue attributes after propagation
Markus Triska [Wed, 15 Mar 2023 20:17:06 +0000 (21:17 +0100)]
remove no longer needed queue attributes after propagation

3 years agoshow remaining queue/2 attributes as residual goals
Markus Triska [Wed, 15 Mar 2023 18:56:02 +0000 (19:56 +0100)]
show remaining queue/2 attributes as residual goals

This lets us verify that all attributes are correctly removed earlier.

3 years agoRevert "correct call_residue_vars/3 using new copy_term_3 (#1239)"
Mark Thom [Wed, 15 Mar 2023 03:34:49 +0000 (21:34 -0600)]
Revert "correct call_residue_vars/3 using new copy_term_3 (#1239)"

This reverts commit 9b35a316c9a01e7897490b58c222093959a21de4.

3 years agoRevert "use new call_residue_vars/2 in toplevel.pl (#847)"
Mark Thom [Wed, 15 Mar 2023 03:34:48 +0000 (21:34 -0600)]
Revert "use new call_residue_vars/2 in toplevel.pl (#847)"

This reverts commit 04ba9bc11af31780cd8fa259d78d151262c3c756.

3 years agouse new call_residue_vars/2 in toplevel.pl (#847)
Mark Thom [Sun, 12 Mar 2023 22:59:03 +0000 (16:59 -0600)]
use new call_residue_vars/2 in toplevel.pl (#847)

3 years agocorrect call_residue_vars/3 using new copy_term_3 (#1239)
Mark Thom [Sun, 12 Mar 2023 20:14:29 +0000 (14:14 -0600)]
correct call_residue_vars/3 using new copy_term_3 (#1239)

3 years agoMerge pull request #1757 from aarroyoc/fix-docs-1756
Mark Thom [Sun, 12 Mar 2023 17:26:54 +0000 (18:26 +0100)]
Merge pull request #1757 from aarroyoc/fix-docs-1756

DOCS: Fixes #1756

3 years agoFixes #1756
Adrián Arroyo Calle [Sun, 12 Mar 2023 15:47:20 +0000 (16:47 +0100)]
Fixes #1756

3 years agoMerge pull request #1755 from triska/doc
Mark Thom [Fri, 10 Mar 2023 01:40:29 +0000 (02:40 +0100)]
Merge pull request #1755 from triska/doc

various smaller documentation improvements

3 years agouse actual toplevel answers
Markus Triska [Wed, 8 Mar 2023 22:35:11 +0000 (23:35 +0100)]
use actual toplevel answers

3 years agouse string notation as discussed on #scryer IRC
Markus Triska [Wed, 8 Mar 2023 22:32:05 +0000 (23:32 +0100)]
use string notation as discussed on #scryer IRC

3 years agoitems --> elements
Markus Triska [Wed, 8 Mar 2023 22:31:02 +0000 (23:31 +0100)]
items --> elements

This addresses #1740.

3 years agoMerge pull request #1754 from triska/dif
Mark Thom [Wed, 8 Mar 2023 20:48:34 +0000 (21:48 +0100)]
Merge pull request #1754 from triska/dif

ENHANCED: more compact definition of dif/2

3 years agoFIXED: Take all variables into account during goal projection.
Markus Triska [Wed, 8 Mar 2023 20:16:54 +0000 (21:16 +0100)]
FIXED: Take all variables into account during goal projection.

This addresses #1751.

3 years agoENHANCED: more compact definition of dif/2
Markus Triska [Wed, 8 Mar 2023 19:50:33 +0000 (20:50 +0100)]
ENHANCED: more compact definition of dif/2

As outlined in #1753.

3 years agoMerge pull request #1744 from aarroyoc/ffi
Mark Thom [Thu, 2 Mar 2023 20:57:56 +0000 (21:57 +0100)]
Merge pull request #1744 from aarroyoc/ffi

Foreign Function Interface - library(ffi)

3 years agoFill more cases
Adrián Arroyo Calle [Wed, 1 Mar 2023 21:10:26 +0000 (22:10 +0100)]
Fill more cases

3 years agoMerge branch 'master' into ffi
Adrián Arroyo Calle [Tue, 28 Feb 2023 21:10:40 +0000 (22:10 +0100)]
Merge branch 'master' into ffi

3 years agoFFI: Documentation
Adrián Arroyo Calle [Mon, 27 Feb 2023 19:02:21 +0000 (20:02 +0100)]
FFI: Documentation

3 years agoinvoke '$default_attr_list' in project_attributes.pl (#1748)
Mark Thom [Mon, 27 Feb 2023 05:41:38 +0000 (22:41 -0700)]
invoke '$default_attr_list' in project_attributes.pl (#1748)

3 years agothird argument of copy_term should be instantiated as a list (#1747)
Mark Thom [Sun, 26 Feb 2023 23:29:39 +0000 (16:29 -0700)]
third argument of copy_term should be instantiated as a list (#1747)

3 years agoMerge pull request #1746 from triska/type_over_instantiation_error
Mark Thom [Sun, 26 Feb 2023 22:46:23 +0000 (23:46 +0100)]
Merge pull request #1746 from triska/type_over_instantiation_error

ENHANCED: must_be/2: prefer type error over instantiation error

3 years agoENHANCED: must_be/2: prefer type error over instantiation error
Markus Triska [Sun, 26 Feb 2023 21:27:06 +0000 (22:27 +0100)]
ENHANCED: must_be/2: prefer type error over instantiation error

This addresses #1594.

3 years agoFFI: Nested structs
Adrián Arroyo Calle [Sun, 26 Feb 2023 19:48:00 +0000 (20:48 +0100)]
FFI: Nested structs

3 years agoadd, implement and use the Unifier trait
Mark Thom [Sun, 26 Feb 2023 04:52:18 +0000 (21:52 -0700)]
add, implement and use the Unifier trait

3 years agoMacroization of the code
Adrián Arroyo Calle [Sat, 25 Feb 2023 21:27:28 +0000 (22:27 +0100)]
Macroization of the code

3 years agoMerge pull request #1743 from triska/rely_on_indexing
Mark Thom [Sat, 25 Feb 2023 18:23:59 +0000 (19:23 +0100)]
Merge pull request #1743 from triska/rely_on_indexing

rely on first instantiated argument indexing

3 years agorely on first instantiated argument indexing
Markus Triska [Sat, 25 Feb 2023 09:17:55 +0000 (10:17 +0100)]
rely on first instantiated argument indexing

This great improvement to indexing allows much more natural
definitions of virtually all meta-predicates. Many thanks to @notoria!

3 years agoMerge pull request #1741 from triska/clpz_residuals
Mark Thom [Thu, 23 Feb 2023 00:51:22 +0000 (01:51 +0100)]
Merge pull request #1741 from triska/clpz_residuals

in projection of residual goals, mark considered propagators as processed

3 years agoDOC: update residual goals
Markus Triska [Wed, 22 Feb 2023 23:10:26 +0000 (00:10 +0100)]
DOC: update residual goals

3 years agoin projection of residual goals, mark considered propagators as processed
Markus Triska [Wed, 22 Feb 2023 20:05:31 +0000 (21:05 +0100)]
in projection of residual goals, mark considered propagators as processed

This is to avoid duplicated goals with the new projection mechanism.

3 years agoMVP of Foreign Function Interface
Adrián Arroyo Calle [Wed, 22 Feb 2023 22:10:03 +0000 (23:10 +0100)]
MVP of Foreign Function Interface

3 years agoassign responsibility for emitting dif goal to the first variable of the left-hand...
Mark Thom [Wed, 22 Feb 2023 03:53:13 +0000 (20:53 -0700)]
assign responsibility for emitting dif goal to the first variable of the left-hand term (#1739)

3 years agocatch attribute_goals errors in copy_term/3, don't discard variable module qualifiers...
Mark Thom [Tue, 21 Feb 2023 07:50:31 +0000 (00:50 -0700)]
catch attribute_goals errors in copy_term/3, don't discard variable module qualifiers in dcg_body/3 (#1738)

3 years agoMerge pull request #1737 from triska/link_to_homepage
Mark Thom [Mon, 20 Feb 2023 20:10:01 +0000 (21:10 +0100)]
Merge pull request #1737 from triska/link_to_homepage

add link to newly available homepage

3 years agoadd link to newly available homepage
Markus Triska [Mon, 20 Feb 2023 19:09:47 +0000 (20:09 +0100)]
add link to newly available homepage

Many thanks to @aarroyoc for the documentation system, and for hosting the page!