Blog News Main Page NEWS FROM 2006-03-25
Blog Entry: 3/25/2006 4:53:01 PM
I'm using ASPimage and have the maximum width set to 320 in the settings. Also using SAFileUP ver. 4.0.
Files upload okay, and the script displays a confirmation that the image was resized to 320, but the actual image uploaded is displaying full size rather than reduced to 320.
Also, the thumbnails are not displayed in the Picture Manager. Would indicated ASPImage is not working or the script is not communicating with it.
Suggestions? lancem38326.9070486111, Lastly, I put there information here to help, but please don't ask me any questions about it.
I am not microsoft SQL server support. If this doesn't work for you simply start troubleshooting and doing google searches like I do. ,
I am trying to protect and ASP page written in Javascript. The first part of the page goes:
<%@LANGUAGE="JAVASCRIPT"%> <!--#include file="../Connections/connWINGAP.asp" -->
When I insert the aspprotect code it looks like this:
<%@LANGUAGE="JAVASCRIPT"%> <!--#INCLUDE VIRTUAL="/GIS/WCGIS/GISProtect/check_user_inc.asp"--> <!--#include file="../Connections/connWINGAP.asp" -->
and I get this error:
Microsoft JScript compilation error '800a03f7'
Unterminated string constant
/GIS/WCGIS/GISProtect/check_user_inc.asp, line 2
I think I understand that your code is written in VBscript and that is why it is not working. If this is the case, how can I switch to VB to execute your stuff then switch back?
Thanks,
Jess , The problem was that I did not have
ConnectionString = "Driver={Microsoft Access Driver (*.mdb)}.... in the connection string.
Thank You.
, Hey CJWSoft,
We're helping out some clients of ours in a server transfer and we
really need some assistance from you guys. We've got everything
transfered and running, except for the ASP.NET banner. Do you
have any directions on how to go about moving the install from one
server to another? We've sent a couple emails through the site
but haven't gotten any responses back.
Please help.
-Tony Valenti
, well, thats a network drive path and in my opinion a very poor way for them to have set things up. It can work as long as permissions get set there and they have the anonymous webserver accounts set up correctly to handle that scenario, but performance isn't the best because your accessing the access database over the network. Access databases are not just not meant to be connected to over the network in a web based scenario. Quality ASP hosting companies do not set up their servers that way and it can often be difficult to get things running as it is a more complex setup on their end. Meaning if they dont synchronize the IUSR_machine accounts correctly you'll have permission issues.
http://www.aspfaq.com/show.asp?id=2168 , When a logged in user with specific group rights tries to look at a
page that has different group membership requirements the Login screen
comes up giving them an opportunity to login with different rights to
view the page. If you log in again with your current user name
the same login screen returns with the added words something to the
effect of "Access Denied, you dont have group rights to this page...".
The only way to get back to the previous page is to hit the back button
on the browser (there is not a back button on the denied page).
I would really rather not even present the "login again" screen to a
user but just have a custom page that says "access denied" of my own
design with a back button on it. Is this an option provided for
in ASPProtect currently? I did not see it in the admin section
settings tab. Is there a separate "login again" asp file that is
being used for this
group access deny message that I could alter, or does it always have to
be the login asp file?
Or would this require me modifying the check_user_inc.asp file around
line 356 to change this behavior (I don't want to screw up any other
stuff though...).
Thanks!!
Oh, PS. just a quick check...it looks like if a user is an
"admin" he automatically gets to see all group pages regardless of
which set of group numbers are assigned in his user account...is that
right?
, My client has a list of 13,000 members that
have already been assigned ID's and passwords with a
homegrown system.
When doing a bulk import, will we be able to retain the userid and password or will a new id be assigned during the bulk load?
Thanks in advance for your help.
, Ok, if the link to the import/export screen does not show up its probably because you never put the import/export path in the admin settings?
go check that for me.
cause running that page without a path for the files could cause a timeout.. thats why the link doesn't show if the path is not entered (so people won't run it)
it looks sorta like this (there will be a field to fill in which wont show here)
Settings below specify the physical directory path of the export directory. This is used by the system when using the import/export feature. The export directory needs modify permissions for the anonymous webserver account. |
ExportDirectory |
| the path must be valid for your file structure and it must have correct permissions (when creating files) , Humm, its hard to explain but I am not sure that is a good way to be testing that. I hear what you are saying but I am not sure that really means anything. Whatever is going on its some sort of client side issue with the browser and the meta refreshing over a very long period of time during which there really is no user doing anything at the site. , I guess i am not being clear as to what i am trying to do. As far as the event thing... lets hold off on that for now. It seems Chris has answered my question and i am on my own for that one...
As far as the log in goes: I went to that site you mentioned;www.CafePress.com to see if they had what i was talking about. and they do. Notice on the bottom of the page it says "sign in to your account"
I want that option on my home page where users can sign in to go to their account. It will either take them to a page where they can update their info, or it will take them to a protected page. Pretty much instead of posting a link on the site to say... click here to go to members.aspx and have it return an "access denied" the user can enter their info from the main page and be automatically re-directed to that members.aspx page.
I know how the viewstate works and i also know what that returnURL thing does..pretty self-explanitory.
Hopefully that makes things easier. I just want a user to log in from the homepage and be redirected to either a protected page or their account page...
(as does that cafepress website) , http://support.cjwsoft.com/code/moreinfo286-2.htm
http://support.cjwsoft.com/code/moreinfo391-1.htm
http://support.cjwsoft.com/code/moreinfo385-1.htm , I did the initial steps of downloading the sql scripts and running it in Query Analyser, tables created fine.
I can login for the first time. I exit from the browser and then I cannot login again. This happens for every user and admin. I noticed that the values in the fields "Login_limit" and "Active" in the ASPP_Users table in the SQL changed to NULL and 0 when login and remained in those values after close the browser.
So iam just struck not able to log in. Pls advice.
, Has this been resolved ?, I am up to speed on how it works. My goal was to not have just a link to a protected page- so that when a user clicks it they get the "access denied" screen and then have to log in. My goal was to avoid that if possible by having them log in and then redirected to the protected page.
So this isnt possible? The only way for it to work is for a user to click a link to the protected page, get the denied screen, then login and be redirected?
Or is there another way..?
I made my point by rebuttling your "cafepress" with agreeing "YES" that is what i want... now you are changing this around on me. I dont think i can be ANY clearer in what i intend to do. It is extremely clear and i am not sure why its becoming more than it should be. I just want the user to be able to log in from ANY PAGE ON THE WEBSITE AND THEN BE REDIRECTED TO THE PROTECTED PAGE IF THE HAVE THE PROPER CREDENTIALS. It would be nice if this software gave an error message when an incorrect username/password was entered instead of simply refreshing the screen. , It seems that if a user attempts to access a page that is not in their access level or they do not have the group permission they are redirected to the login page. Re entering their ID generates an eror and they cannot go back to the pages they are alowed to access. Is there a way for them to simply be blocked and return to the previous page or to a defined page so they can continue using the site?
thankyou , Hi, I am wondering if I can redirect users with "GROUPACCESS"
just like access levelS. I tried to redirect using both "Groups"
and "GROUPACCESS" example below:
<%
If Session("GROUPACCESS") = "1" Then
Response.Redirect("group1.asp")
Else
Response.Redirect("allothers.asp")
End If
%>
I could only get the Access_Level to actually redirect. Is
this something the option pack supports? If so, any words of
advice?
, as far as permissions are concerned I wrote two large articles about permissions that cover everything in detail on how to properly set them
http://support.cjwsoft.com/code/info11.htm
see the windows 2003 and windows xp permission threads
From things you are saying I assume this is your server. My comments about the path looking funny are because very few commercial hosts would use the "c:\inetpub\wwwroot\" directory. If you are using that and that is correct info then that is fine.
as for knowing whether or not the filesystem object is working the best thing to do is to try to write a text file somewhere in your web and see if it works. Testing something under the most basic scenario is the key to troubleshooting asp issues.
http://www.devasp.com/samples/writetofile.asp , [QUOTE=cwilliams]I would like to delete the SQL tables and set them up from scratch using enterprise manager and sql query manager and see what happens
If that is ok with you let me know.
Something is wrong like I said... almost seems like the database is caching old password info from the field.[/QUOTE]
Sure go ahead , Well you can put a link on all your pages that links to the login page?
modify the code in the login page so the return page is members.aspx or
whatever you need and thats it?
I dont see your point? probably because I understand how the program works and your not 100% up to speed on how it works.
, My hosting company uses ASPEMAIL - and I am trying to setup the mailing settings on ASPPROTECT - but cant seem to get it to work. I've tried many different options - here are two that are the closest - but have issues:
1. If I use the settings:
email component: aspemail
Mail remote server: my internal server name
*no smtp authentication
email mail notification - my email address on my internal server
***I get the following results:
I can get get notified when a new user logs in, email a user from aspprotect user screen if they are in my company and have a valid email -- but I can not send to the outside world - I get an relay prohibited error.
2. If i try to change the setting to use the Hosting Website email server - I get the following results: I dont get notified when a new user registers, I cant send to internal company people - but I can send to the outside world.
**any suggestions on what to do? I'm trying to work with the people who manage the mail servers - but since I dont know anything about them - its a bit difficult.
, Awesome -thanks - I'll give it a try , No problem. I get it now.
I added a Session Variable for "Counter". Then wrote an If statement around that. When the user logs on for the first time they see a window pop, after that the normal start page.
Thanks
, SQL Server Datareader Datawriter Permissions..
here is a screenshot that shows how to set datareader and datawriter permissions on a database using "SQL Enterprise Manager"
In this example we are making sure the aspbanneruser has those permissions on the aspbanner database in the SQL Server
 cwilliams38390.5986921296, Has any one used the aspmail function to send emails from within your site? If so what did you use as the AspMail_Host string in the connections database?
thank you , just leave the databse where it is, use the connection string generated for you and most importantly... put in a request with alentus for permissions to be set
tell them "D:\Websites\www.mysite.com\aspprotect\data" and all of its child folders need change permissions (r,w,x,d) set so aspprotect can do its thing
until the permissions are set that connection string can not work
this is all noted in the installation docs... , Now I am having trouble using the log function.
I have checked the box in administration area for UseLogFiles. I have put the expected path for the LogFileDirectory in the box. I have modified the permissions for the anonymous web site user to modify this directory. However the log file does not get updated and there is nothing when I go to view the logs.
thx , The main users screen... the 1st screen you see when you go to the admin area.. where you email an individual user..
The settings I am referring to being the various emailing settings on the settings screen, The settings you showed me.
As for emailing via a remote server over dsl. It may not be working because the ISP's block the port (25) to stop people from running email servers over their dsl.
Your POP3 works because POP3 uses port 110.
If you want to send emails from your local server on your dsl you should probably install the SMTP service of IIS if you have not and send emails using that with CDOSYS. Either that or get a commerical DSL account with a static IP that allows for running email servers. , More info on the groups session variable.
Session("Groups") will contain the ID numbers of whatever groups the user is a part of. It does not store the descriptive name of that group. It will show the same data that is actually stored in the "Groups" field in the database.
for example it might hold a value like this
*2*,*5*,*9*
meaning a user is part of groups 2, 5, and 9
so if you wanted to check to see if a user was part of a particular group you would do something like this
<% If InStr(Session("Groups"),"*9*") Then Response.Write("You are a member of group 9") End If %>
Taking this even further, if you really wanted to get a particular group's name or description you would have to query the database like so. In this case we ask it the name and description for group 9.
Group_ID=9 Set ConnPasswords = Server.CreateObject("ADODB.Connection") ConnPasswords.Open ConnectionString Set cmdTemp = Server.CreateObject("ADODB.Command") Set CmdEditGroup = Server.CreateObject("ADODB.Recordset") cmdTemp.CommandText = "SELECT " & tbl_label_groups & ".* FROM " & tbl_label_groups & " WHERE (Group_ID = " & Group_ID & ")" cmdTemp.CommandType = 1 Set cmdTemp.ActiveConnection = ConnPasswords CmdEditGroup.Open cmdTemp, , 0, 1 Group_Name = CmdEditGroup("Group_Name") Group_Desc = CmdEditGroup("Group_Desc")
, I am using ASPProtect's password program, which has been very successful, for managing over 1,500 military veterans' memberships at http://www.vspa.com. What I am trying to do now is utilize the "Groups" code, as generated by the Admin page, to prevent members with expired accounts (and non-members) from accessing restricted "members only" .ASP pages they may have bookmarked, or found via web search. The code generated and used is as follows:
<%@ LANGUAGE="VBSCRIPT" %> <!-- Begin ASPProtect Code --> <!-- Groups with access to this page. ( * ADMIN * Member Current * Member Life * Officer/Staff * ) --> <% GROUPACCESS = "10,12,14,19" %> <!--#INCLUDE FILE="check_user_inc.asp"--> <!-- End ASPProtect Code -->
The above is placed over the <html><head> statements on the page.
When I am logged in the code works perfectly! When I log off and try the URL again, the page appears in its entirety but with a Login box for Username and Login Password at the top of the page. You may view the problem at: http://www.vspa.com/aspprotect/vspa-password-enter.asp .
What I would like to have happen is expired members and non-members would be sent (or Redirected) to a Login page. I do not want the Login password box to merely be inserted above the page that I am trying to keep them from visiting.
Don Poss, VSPA Webmaster ,
Ok, set up a new web.config in root, with just the suggested code.
that worked to get this....
Configuration Error
Description: An
error occurred during the processing of a configuration file required
to service this request. Please review the specific error details below
and modify your configuration file appropriately.
Parser Error Message: It
is an error to use a section registered as
allowDefinition='MachineToApplication' beyond application level. This
error can be caused by a virtual directory not being configured as an
application in IIS.
Source Error:
Line 409: Line 410: Line 411: <authentication mode="Forms"> Line 412: Line 413: <!-- DO NOT CHANGE UNLESS INSTRUCTED TO DO SO -->
|
Source File: D:\hshome~aspnetprotect\web.config Line: 411
any ideas?
Andy
, 
ASPProtect v7.x runs on Microsoft IIS servers only. That means Windows XP Pro, Windows 2000 server and Windows 2003 server. The web server must have ASP support enabled and support Data Connections. 99% of them do as it's a pretty normal thing, but you should ask and make sure your hosting plan supports it.
Before you even start please read this thread and do what it says. If any errors show up it is important you see the real error instead of a useless HTTP 500 internal server error. http://support.cjwsoft.com/forum/forum_posts.asp?TID=11& PN=1
Once doing that make sure to use Internet Explorer as you follow along with these directions.
Now, unzip your installation zip file that you downloaded from CJWSoft. Use a program like winzip and be sure you have it set up to unzip the directories as well. You can also use windows xp's built in folder compression tools to unzip the archive.
When you unzip the application you should have all of the following folders and files. (more or less, it depends on the version)

Now, you can copy all of these files into the root of your website or if you like you can make a folder called "aspprotect" and put all of these folders and files in that folder. Either way it really does not matter.
Now, contact your web hosting company and instruct them that you need permissions set on the data folder that you copied into your website. This folder and all of its child folders need modify permissions set on it for the anonymous webserver account. It is very important that they set the permissions correctly and on all the child folders as well.
Here are some threads on exactly how these permissions are set. If you run your own server or are developing locally you can do this yourself. If not most likely you need to put in a request to your hosting company as you CAN NOT set these permissions via Frontpage or FTP.
Windows 2003 Server and permissions http://support.cjwsoft.com/forum/forum_posts.asp?TID=136& ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;PN=1
Windows XP Pro and permissions http://support.cjwsoft.com/forum/forum_posts.asp?TID=56& PN=1
Once permissions are set.. run this page via your web browser
http://www.mysite.com/data/setup_info.asp
Replacing the part in blue with your website info.
When this page is run it will report back a screen like so:

Now, take the connection string info it shows you. Edit the "dataconn_inc.asp" file in the root of the ASPProtect system and use that data connection information. It should be valid for the server.
If you are using MSSQL server instead of Access please see the SQL database creation directions as you will need to create the MSSQL database and use a special connection string for that. http://support.cjwsoft.com/forum/forum_posts.asp?TID=160& ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;PN=1
Now, take the CookieEncryptionKey and PasswordEncryptionKey info that it gives you and enter it into the "config_inc.asp" file in the root of the ASPProtect system. These will be the unique keys that your encryption will be based off of.
Ok...
The files have been copied to your website, the permissions are set on the data folder, and the database connection is ready.
Now.. run this page
http://www.mysite.com/password_admin/get_me_in.asp
Replacing the part in blue with your website info.
This is a special page we use to get into the system for the 1st time.
If you get a nasty error when you run that page similar to this.
Error Type: Active Server Pages, ASP 0131 (0x80004005) The Include file '../dataconn_inc.asp' cannot contain '..' to indicate the parent directory.
Then parent paths are disabled on the webserver and you need to do an extra step to deal with that. Follow this link. http://support.cjwsoft.com/forum/forum_posts.asp?TID=162& ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;PN=1&TPN=1
If you get any other variery of "80004005" error then there is a problem with your data connection. http://support.cjwsoft.com/forum/forum_posts.asp?TID=27& PN=1
Those errors are usualy related to database folder permissions or an imcorrect physical path to the database file specified though they can mean a lot of things.
Once you get the page running you will see a login prompt and one form field
You will need to paste the "PasswordEncryptionKey" value that you used in the "config_inc.asp" file in the form field and hit enter.
If all goes well you will see the admin area of ASPProtect.
Now that you are in the system you need to create an admin account.
Click on "ADD NEW USER".. fill out the info and add a user. You really only need to fill out (first name,last name,email,username,and password)
Now save that user.
You should see a new user listed in the admin area. Click on Edit user to the left of the new account. On the edit screen check the "admin" checkbox and save the user.
You just created an Admin account.
Now click on the "log off" button on the top menu and click yes to log off.
Now close the browser. Then run this URL
http://www.mysite.com/password_admin/default.asp
Replacing the part in blue with your website info.
You should now be able to in to the admin area of the system using the new admin account you created.
You are now ready to go to the settings page so click on the settings tab in the menu. There are a lot of options and paths that need to be set on this page. Every setting is described in detail on this page. You need to go through the page and set things up properly. Anytime the page asks for a path to a url or file the page will auto generate what should be the path to use. (expected path) If your server has parent paths disabled a few of those auto generated paths will not show up. If that is the case run this url from your server and it should tell you the paths to use for those settings.
http://www.mysite.com/data/expected_paths.asp
Replacing the part in blue with your website info.
Once your all done and the system seems to be running fine you should go back and delete the following pages as they are no longer needed and pose a potential security risk.
http://www.mysite.com/data/setup_info.asp http://www.mysite.com/data/expected_paths.asp http://www.mysite.com/password_admin/get_me_in.asp
You should back up the original zip archive you got from CJWSoft in case you ever need those files again.
VERY IMPORTANT: The user passwords from now on will be encrypted using the "PasswordEncryptionKey" you specified in the "config_inc.asp" file.
If you ever change that key all of your passwords will be invalid and you can not get them back unless you know the key and put it back, so plan on never changing that key unless you really know what your doing and know how to decrypt/re-encrypt the passwords using a new key. (something we do not cover at the moment but probably will when we have time to make a tutorial) , I am trying to find out where I can enter the ttle for the application.
There is a variableor field called App_Name into which it would be good to insert a generic name. Can this be edited?
I have searched high and low but cannot find anything to do with it. , No luck...this is the message
Return To Import / Export Screen.
Active Server Pages error 'ASP 0113'
Script timed out
/members/aspprotect/password_admin/upload_post.asp
The maximum amount of time for a script to execute was exceeded. You can change this limit by specifying a new value for the property Server.ScriptTimeout or by changing the value in the IIS administration tools. ,
Flash files cannot track clicks unless you edit the original flash file to link to the aspbanner system redirect URL.. feeding it the correct ID of the banner.
When that link is clicked on it will then track the click and redirect the user to the “link url” specified for that banner.
The system actually generates the necessary ASPBanner URL for you. That link is shown on the banner edit screen.(you must save the banner at least once and come back to that screen to see the link though)
Really the best way to show it is with an example as seen below.

Basically the flash banner file "powerasp.swf" highlighted in green needs to be edited to link to the banner redirect url which is highlighted in red.... the banner redirect url will then track the click and ultimately send the user to the Link_URL highligthed in blue.
All banners systems work this way when it comes to flash files. It’s the nature of flash and the web browser,
The flash source code must be edited to link to the redirect url in the ASPBanner system. There is no possible way any banner system can track a flash click unless the flash file links to the banner system 1st.... because that click is handled by Flash and the web browser.
In some cases if you do have the original source file for the flash banner then you are out of luck as far as tracking clicks goes.
On a side note... if you create flash banners the way this article says you can actually feed a .swf flash file a link for it to click to. Instead of it being hardcoded.
http://www.macromedia.com/resources/richmedia/tracking/desig ners_guide/index.html
This is really the way everyone should design their flash banners from now on because the url it links to can be easily changed at any time without editing the flash file source code. cwilliams38085.095150463, yes, admins have access to absolutely anything...
as for the other question what you should do is only show links to people logged in that they have access to.. then they wont get logged out when they go to a page they do not have access to
for example if someone doesn't have access to a level 4 page dont give them a link to go there... you can do that by checking the session variables and creating your hyperlink html code accordingly .. using simple if-else logic... you could even make a hyperlink non-clickable and add some text to it like (no access)
it's all about taking the time to intelligently designing the different areas of your web site. It takes a bit of time and work to really make a system flow the way you want it to.
other than that it becomes extremely complicated to not grant them access when they go to a page they dont have access to but also keep them logged in. It is just not designed to flow that way. If someone goes to a page they do have access to they get logged out. It sort of has to be that way because of the ways things flow.
more info on accessing user info after login so you can do that http://support.cjwsoft.com/code/moreinfo198-1.htm
another good thing to check out is the provided examples for mutliple access levels. You can see that if you log into the default page for that that it only shows you links to pages you have access to. Done with simple if-else logic around the html links. It is using groups but you can do the same sort of concept using groups. , Hi,
I am just wondering if anyone else has had this problem. Even though the guestbook is empty, it takes just about 20 to 30 seconds for the guestbook/default.asp lto oad. Is this normal has anyone else has had this problem.
Thanks , It's not working because i guess im copying the viewstate also...and it comes up
Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster. , ok, that does not work but that still is not enough to help me troubleshoot.
I'll probably need to look around in your admin area and check things out in order to figure anything out.
I will also need to see the protection code you put on that page exactly as it appears.
PM (private message) the admin usersname/password to me if that is ok with you and I will check it out
it's really the only way I can help with an issue like this. I have to make sure you didn't do something wrong and then go from there , right..
I had to open up the permissions to get it to work. I now have to go back and uncheck each one for directory listing.. :)
,
Timecard Entry: 3/25/2006 4:53:01 PM
Setting up a couple of machines in Clayton to use the exchange server., Fielded DSL calls, worked on the dsl pricing issues with Tim and Chris, teched calls no issues, BAH in Sacketts, Email/Newsgroups, check voice/email/do timecards, Took general tech calls, watched RADLOG and called expired users, Checked -ask Question and Checked voice mail., *TaskForce - Meet regarding Spider , pauses between calls,
things are slowing down, Reading and responding to voice mails and emails, barter: begin html layout for burlington parks and rec site, To SH High for meeting, IPRS , Call to Heidi of Otsego-Delaware about the status of their site., Note to Nancy Oustad at Cortlandmls.com about changes she wants to Agent inventory., Called users back on RAD, and Expiring accounts. , printed timecards, WWNY, 2000-50__Yachting Operations Services
MAKE REVISIONS TO SITE AS REQUESTED BY CLIENT , working with stone & assoc for xclusivelykids.com and gooddogcharlies, trying to get pitbull switched to us, call backs, continuing to get caught up on emails voicemail and callbacks , email, back to watertown 23 miles, Email/talked to Terri about several billing issues for sites and hotlinks, Chauttaqua County stuff, Morning NOC duty, Having Bell re-test curcuit to make sure it's operational. Ticket #DC062360 or 53280., team meeting, Lunch, Spoke to Laurel at Seacomm- called Steve Bryant at the Christian center, spoketo anthony- potential customer in Carthage, , techsupport supervisor duties, steady tonight, qlight, dial up issues, radlog, ask us a questions, voice mail, callbacks expired users, new user callbacks. Emails and follow ups got things caught up from the week,
|